diff --git a/ServerManagerWebApp/.server_manager.pids b/ServerManagerWebApp/.server_manager.pids index 047aa3e..5a4adfe 100644 --- a/ServerManagerWebApp/.server_manager.pids +++ b/ServerManagerWebApp/.server_manager.pids @@ -1,2 +1,3 @@ -10546 -10547 +26015 +26017 +26018 diff --git a/ServerManagerWebApp/backend/app/comics_manager.py b/ServerManagerWebApp/backend/app/comics_manager.py index de26a6d..e38c0a0 100644 --- a/ServerManagerWebApp/backend/app/comics_manager.py +++ b/ServerManagerWebApp/backend/app/comics_manager.py @@ -1,9 +1,15 @@ import os import re -from collections import defaultdict +import shutil +import zipfile +import tempfile import logging +import cloudscraper +import difflib +from bs4 import BeautifulSoup +from collections import defaultdict from .samba_manager import SambaManager -from .config import Settings +from .config import settings from smb.smb_structs import OperationFailure # --- Dedicated logger for ComicsManager --- @@ -11,117 +17,681 @@ comics_logger = logging.getLogger('comics_manager') comics_logger.setLevel(logging.INFO) comics_logger.propagate = False if not comics_logger.handlers: + os.makedirs("logs", exist_ok=True) comics_log_handler = logging.FileHandler("logs/comics_organization.log", mode='a') comics_log_handler.setFormatter(logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')) comics_logger.addHandler(comics_log_handler) comics_logger.addHandler(logging.StreamHandler()) class ComicsManager: + def __init__(self): + # Staging settings (on 'isolation' share) + self.comics_root = "/comics/pendingorganization" + + # Library defaults + self.library_share_default = "isolation" + self.library_path_default = "/comics/manga" + + self.scraper = cloudscraper.create_scraper() - @staticmethod - def _get_series_name(filename): + def _get_series_info(self, filename): base_name, _ = os.path.splitext(filename) - pattern = re.compile(r'[-_\s]*(v(ol)?|c(h)?|chapter|issue|ep|episode)[-_\s]*\d+.*|[-_\s]+\d+$', re.IGNORECASE) - match = pattern.search(base_name) + artist = "Unknown" + doujin_id = None + + id_match = re.search(r'[[\\](](\\d{5,7})[[\\])]', base_name) + if id_match: + doujin_id = id_match.group(1) + + tags = re.findall(r'[[\\](](.*?)[[\\])]', base_name) + tags = [t for t in tags if t != doujin_id] + if tags: + artist = tags[0].strip() + + name = re.sub(r'[[\\](].*?[[\\])]', '', base_name).strip() + pattern = re.compile(r'[-_\\s]*(v(ol)?\\. ?|c(h)?\\. ?|chapter|issue|ep(isode)?)\\s*\\d+.*$', re.IGNORECASE) + match = pattern.search(name) if match: - return base_name[:match.start()].strip('-_ ') - return base_name.strip('-_ ') + name = name[:match.start()] + else: + name = re.sub(r'[-_\\s]+\\d+\\s*$', '', name) - def cleanup_toberead(self, samba_manager: SambaManager): - comics_logger.info("Starting cleanup of 'toberead' directory...") - comics_root = "/comics/toberead" - try: - items_in_toberead = samba_manager.list_path(comics_root) - if "error" in items_in_toberead: - raise Exception(f"Failed to list files in 'toberead': {items_in_toberead['error']}") - - for item in items_in_toberead: - item_path = item["path"] - item_name = item["name"] - if item["is_directory"]: - comics_logger.info(f"Deleting directory '{item_name}' and all its contents.") - try: - samba_manager.delete_directory_recursive(item_path) - comics_logger.info(f"Successfully deleted directory: {item_name}") - except OperationFailure as e: - comics_logger.error(f"Failed to delete directory {item_name}: {e}") - else: - comics_logger.info(f"Deleting file '{item_name}'.") - try: - samba_manager.delete_file(item_path) - comics_logger.info(f"Successfully deleted file: {item_name}") - except OperationFailure as e: - comics_logger.error(f"Failed to delete file {item_name}: {e}") + name = name.strip(' -_') + if not name and tags: + name = tags[0] + elif not name: + name = base_name.strip() - comics_logger.info("Cleanup of 'toberead' finished.") + name = name.replace(' ', '_') + artist = artist.replace(' ', '_') + + return name, artist, doujin_id + def _fetch_metadata_from_url(self, target_url): + try: + comics_logger.info(f"Fetching metadata from: {target_url}") + response = self.scraper.get(target_url) + if response.status_code == 200: + soup = BeautifulSoup(response.content, 'html.parser') + data = {} + title_info = soup.select_one('#info') + if title_info: + data['title'] = title_info.select_one('h1.title').text.strip() if title_info.select_one('h1.title') else "" + data['original_title'] = title_info.select_one('h2.title').text.strip() if title_info.select_one('h2.title') else "" + + tag_containers = soup.select('.tag-container') + for container in tag_containers: + label = container.text.split(':')[0].strip().lower() if ':' in container.text else "" + tags = [t.select_one('.name').text for t in container.select('.tag')] + if 'tags' in label: data['tags'] = tags + elif 'artists' in label: data['artist'] = tags + elif 'groups' in label: data['circle'] = tags + elif 'parodies' in label: data['parody'] = tags + + time_tag = soup.select_one('#info time') + if time_tag and time_tag.get('datetime'): + year_match = re.search(r'(\\d{4})', time_tag['datetime']) + if year_match: data['year'] = year_match.group(1) + + data['url'] = target_url + data['id'] = target_url.split('/g/')[1].strip('/') + return data except Exception as e: - comics_logger.error(f"An error occurred during 'toberead' cleanup: {e}", exc_info=True) + comics_logger.error(f"Error parsing metadata: {e}") + return None + + def _lookup_doujin_metadata(self, title, artist="Unknown", doujin_id=None): + base_url = "https://nhentai.net" + if doujin_id: + return self._fetch_metadata_from_url(f"{base_url}/g/{doujin_id}/") + + clean_title = title.replace('_', ' ').strip() + clean_artist = artist.replace('_', ' ').strip() if artist != "Unknown" else "" + queries = [] + if clean_artist: queries.append(f"{clean_artist} {clean_title}") + queries.append(clean_title) + + for query in queries: + try: + search_url = f"{base_url}/search/?q={query.replace(' ', '+')}" + comics_logger.info(f"Searching metadata for: {query}") + response = self.scraper.get(search_url) + if response.status_code == 200: + soup = BeautifulSoup(response.content, 'html.parser') + results = soup.select('.gallery a.cover') + if results: + target_url = f"{base_url}{results[0]['href']}" + data = self._fetch_metadata_from_url(target_url) + if data: return data + except Exception as e: + comics_logger.error(f"Search failed for query '{query}': {e}") + return None + + def _download_directory(self, samba_manager, remote_path, local_path): + os.makedirs(local_path, exist_ok=True) + items = samba_manager.list_path(remote_path) + if isinstance(items, dict) and "error" in items: raise Exception(items["error"]) + for item in items: + if item['name'] in ['.', '..']: continue + local_item_path = os.path.join(local_path, item['name']) + if item['is_directory']: self._download_directory(samba_manager, item['path'], local_item_path) + else: + with open(local_item_path, 'wb') as f: + samba_manager.download_file(item['path'], f) + + def _extract_archive(self, archive_path, extract_path): + if zipfile.is_zipfile(archive_path): + with zipfile.ZipFile(archive_path, 'r') as zf: + zf.extractall(extract_path) + else: raise Exception("Unsupported archive format") + + def _create_cbz(self, source_folder, output_path): + with zipfile.ZipFile(output_path, 'w', zipfile.ZIP_DEFLATED) as zf: + for root, dirs, files in os.walk(source_folder): + for file in files: + file_path = os.path.join(root, file) + arcname = os.path.relpath(file_path, source_folder) + zf.write(file_path, arcname) + + def _create_metadata_file(self, series_name, author="Unknown", artist="Unknown", api_data=None): + content = f"Title: {series_name}\n" + if api_data: + if api_data.get('title'): content = f"Title: {api_data['title']}\n" + if api_data.get('original_title'): content += f"Original Title: {api_data['original_title']}\n" + artists = ", ".join(api_data.get('artist', [])) or artist + circles = ", ".join(api_data.get('circle', [])) or "Unknown" + parodies = ", ".join(api_data.get('parody', [])) or "Original" + tags = ", ".join(api_data.get('tags', [])) + content += f"Artist: {artists}\nCircle: {circles}\nParody: {parodies}\nTags: {tags}\nURL: {api_data.get('url', 'N/A')}\n" + else: + content += f"Artist: {artist}\nAuthor: {author}\n" + content += f"Processed by: ServerManagerWebApp\n" + return content + + def _lookup_mangadex_metadata(self, title): + """ + Queries Mangadex API. + """ + try: + url = "https://api.mangadex.org/manga" + clean_title = title.replace('_', ' ').strip() + comics_logger.info(f"Searching Mangadex for: {clean_title}") + + # Mangadex requires separate calls for author/artist usually, but we'll start with basic info + params = { + "title": clean_title, + "limit": 1, + "includes[]": ["author", "artist", "cover_art"] + } + + response = self.scraper.get(url, params=params, timeout=10) + if response.status_code == 200: + data = response.json() + if data.get('data'): + manga = data['data'][0] + attr = manga['attributes'] + + # Extract authors/artists + authors = [] + artists = [] + for rel in manga['relationships']: + if rel['type'] == 'author': authors.append(rel.get('attributes', {}).get('name')) + if rel['type'] == 'artist': artists.append(rel.get('attributes', {}).get('name')) + + # Tags + tags = [t['attributes']['name']['en'] for t in attr.get('tags', [])] + + return { + "title": attr['title'].get('en') or list(attr['title'].values())[0], + "original_title": attr.get('altTitles', [{}])[0].get('en', "") if attr.get('altTitles') else "", + "year": attr.get('year'), + "url": f"https://mangadex.org/title/{manga['id']}", + "id": manga['id'], + "tags": tags, + "author": authors, + "artist": artists, + "source": "Mangadex" + } + except Exception as e: + comics_logger.error(f"Mangadex lookup failed: {e}") + return None + + def _lookup_hentai2read_metadata(self, title): + """ + Scrapes Hentai2Read. + """ + try: + base_url = "https://hentai2read.com" + clean_title = title.replace('_', '+').strip() + search_url = f"{base_url}/search/?cmd={clean_title}" + comics_logger.info(f"Searching Hentai2Read for: {clean_title}") + + response = self.scraper.get(search_url) + if response.status_code == 200: + soup = BeautifulSoup(response.content, 'html.parser') + # Hentai2Read search results structure + result_link = soup.select_one('.book-grid-item a') + + if result_link: + target_url = result_link['href'] + comics_logger.info(f"Fetching Hentai2Read details: {target_url}") + + resp = self.scraper.get(target_url) + if resp.status_code == 200: + soup = BeautifulSoup(resp.content, 'html.parser') + data = {"source": "Hentai2Read", "url": target_url} + + # Title + title_tag = soup.select_one('h3.block-title a') + if title_tag: data['title'] = title_tag.text.strip() + + # Info list + info_items = soup.select('ul.list-simple-mini li') + for item in info_items: + text = item.text.strip() + if "Author" in text: + data['author'] = [a.strip() for a in text.replace("Author", "").strip(" :" ).split(',')] + elif "Artist" in text: + data['artist'] = [a.strip() for a in text.replace("Artist", "").strip(" :" ).split(',')] + elif "Parody" in text: + data['parody'] = [a.strip() for a in text.replace("Parody", "").strip(" :" ).split(',')] + elif "Storyline" in text or "Content" in text: # Tags + data['tags'] = [a.text.strip() for a in item.select('a')] + elif "Release" in text: + year_match = re.search(r'\\d{4}', text) + if year_match: data['year'] = year_match.group(0) + + return data + except Exception as e: + comics_logger.error(f"Hentai2Read lookup failed: {e}") + return None + + def _lookup_mangaupdates_metadata(self, title): + """ + Queries MangaUpdates API for metadata (good for Manhwa/Webtoons). + """ + try: + url = "https://api.mangaupdates.com/v1/series/search" + # Replace underscores with spaces for better search + clean_title = title.replace('_', ' ').strip() + comics_logger.info(f"Searching MangaUpdates for: {clean_title}") + + response = self.scraper.post(url, json={"search": clean_title}, timeout=10) + if response.status_code == 200: + data = response.json() + if data.get('results'): + series = data['results'][0]['record'] + return { + "title": series.get('title'), + "year": series.get('year'), + "url": series.get('url'), + "id": series.get('series_id'), + "tags": [g.get('genre') for g in series.get('genres', [])] if series.get('genres') else [], + "source": "MangaUpdates" + } + except Exception as e: + comics_logger.error(f"MangaUpdates lookup failed: {e}") + return None + + def _process_item(self, samba_manager, item, is_archive=False): + item_path = item['path'] + item_name = item['name'] + name_part, artist_part, doujin_id = self._get_series_info(item_name) + + api_data = None + + # 1. Try Mangadex (Standard/Manhwa) + if not api_data: + api_data = self._lookup_mangadex_metadata(name_part) + + # 2. Try nhentai (Doujinshi) + if not api_data: + # Need to re-add "source": "nhentai" to the existing method logic or wrapper + data = self._lookup_doujin_metadata(name_part, artist_part, doujin_id) + if data: + data['source'] = "nhentai" + api_data = data + + # 3. Try Hentai2Read (Fallback Doujin) + if not api_data: + api_data = self._lookup_hentai2read_metadata(name_part) + + # 4. Try MangaUpdates (Final Fallback) + if not api_data: + api_data = self._lookup_mangaupdates_metadata(name_part) + + final_series_name = name_part + if api_data: + if api_data.get('title'): + title_clean = re.sub(r'[<>:"/\\|?*]', '', api_data['title']).strip() + final_series_name = title_clean.replace(' ', '_') + if api_data.get('year'): final_series_name = f"{final_series_name}_({api_data['year']})" + elif api_data.get('id'): final_series_name = f"{final_series_name}_({api_data['id']})" + + final_series_name = final_series_name.replace(' ', '_') + series_folder_path = f"{self.comics_root}/{final_series_name}" + + try: + samba_manager.create_directory(series_folder_path) + except OperationFailure: pass + + if item_name == final_series_name: return + + comics_logger.info(f"Processing: {item_name} -> {final_series_name}") + with tempfile.TemporaryDirectory() as temp_dir: + extraction_path = os.path.join(temp_dir, "extracted") + os.makedirs(extraction_path, exist_ok=True) + if is_archive: + local_archive = os.path.join(temp_dir, item_name) + with open(local_archive, 'wb') as f: samba_manager.download_file(item_path, f) + try: self._extract_archive(local_archive, extraction_path) + except Exception as e: + comics_logger.error(f"Failed to extract {item_name}: {e}") + return + else: self._download_directory(samba_manager, item_path, extraction_path) + + has_images = False + for root, _, files in os.walk(extraction_path): + if any(f.lower().endswith(('.jpg', '.jpeg', '.png', '.webp')) for f in files): + has_images = True + break + + if has_images: + cbz_name = f"{final_series_name}.cbz" + temp_cbz = os.path.join(temp_dir, cbz_name) + self._create_cbz(extraction_path, temp_cbz) + dest_cbz_path = f"{series_folder_path}/{cbz_name}" + + with open(temp_cbz, 'rb') as f: + res = samba_manager.upload_file(dest_cbz_path, f) + if isinstance(res, dict) and "error" in res: raise Exception(f"Upload failed: {res['error']}") + + meta_content = self._create_metadata_file(final_series_name, artist=artist_part, api_data=api_data) + meta_path = f"{series_folder_path}/{final_series_name}_info.txt" + with tempfile.NamedTemporaryFile(mode='w+', delete=False) as tmp_meta: + tmp_meta.write(meta_content) + tmp_meta.flush() + tmp_meta.seek(0) + with open(tmp_meta.name, 'rb') as f: samba_manager.upload_file(meta_path, f) + os.unlink(tmp_meta.name) + + if is_archive: samba_manager.delete_file(item_path) + else: samba_manager.delete_directory_recursive(item_path) + else: comics_logger.warning(f"No images found in {item_name}, skipping.") def organize_comics(self, samba_manager: SambaManager): - comics_logger.info("Starting comics organization process...") - comics_root = "/comics/toberead" - comics_dest_root = "/comics/manga" + comics_logger.info(f"Starting organization in {self.comics_root}...") + self._recursive_scan_and_process(samba_manager, self.comics_root) + + def _recursive_scan_and_process(self, samba_manager, current_path): try: - items_in_toberead = samba_manager.list_path(comics_root) - if "error" in items_in_toberead: - raise Exception(f"Failed to list files in 'toberead': {items_in_toberead['error']}") + items = samba_manager.list_path(current_path) + if isinstance(items, dict) and "error" in items: return + for item in items: + if item['name'] in ['.', '..']: continue + if item['is_directory']: + sub_items = samba_manager.list_path(item['path']) + if any(sub['name'].lower().endswith(('.jpg', '.jpeg', '.png', '.webp')) for sub in sub_items): + self._process_item(samba_manager, item, is_archive=False) + else: self._recursive_scan_and_process(samba_manager, item['path']) + elif item['name'].lower().endswith(('.zip', '.cbz')): + self._process_item(samba_manager, item, is_archive=True) + except Exception as e: comics_logger.error(f"Error scanning {current_path}: {e}") - series_chapters = defaultdict(list) - for item in items_in_toberead: - if not item["is_directory"]: - series_name = self._get_series_name(item["name"]) - series_chapters[series_name].append(item) + def get_pending_comics(self, samba_manager: SambaManager): + try: + items = samba_manager.list_path(self.comics_root) + if isinstance(items, dict) and "error" in items: return [] + return [{"name": i['name'], "path": i['path']} for i in items if i['is_directory'] and i['name'] not in ['.', '..']] + except Exception: return [] + + def move_series(self, src_samba: SambaManager, series_names, dest_share=None, dest_path=None): + """Moves folders from isolation/staging to library share.""" + share = dest_share if dest_share else self.library_share_default + path = dest_path if dest_path else self.library_path_default + + # Connect to destination share + dest_samba = SambaManager(src_samba.server_ip, share, src_samba.username, src_samba.password) + results = {"success": [], "failed": []} + + for series in series_names: + src_folder = f"{self.comics_root}/{series}" + target_folder = f"{path}/{series}" - comics_logger.info(f"Found {len(series_chapters)} series to process.") + try: + # Ensure target directory exists + dest_samba.create_directory(target_folder) + + # List files in source (on isolation share) + items = src_samba.list_path(src_folder) + for item in items: + if item['name'] in ['.', '..']: continue + + # Cross-share move: Download -> Upload -> Delete + with tempfile.TemporaryDirectory() as temp_dir: + local_file = os.path.join(temp_dir, item['name']) + with open(local_file, 'wb') as f: src_samba.download_file(item['path'], f) + with open(local_file, 'rb') as f: dest_samba.upload_file(f"{target_folder}/{item['name']}", f) + src_samba.delete_file(item['path']) + + src_samba.delete_directory(src_folder) + results["success"].append(series) + comics_logger.info(f"Moved {series} to {share}:{target_folder}") + except Exception as e: + results["failed"].append({"name": series, "error": str(e)}) + comics_logger.error(f"Failed to move {series}: {e}") + + dest_samba.close() + return results - for series_name, chapters in series_chapters.items(): - comics_logger.info(f"Processing series: {series_name}") - final_series_folder_path = f"{comics_dest_root}/{series_name}".replace("\\", "/") + def update_existing_metadata(self, samba_manager, target_path="/comics/manga", force=False): + """ + Scans an existing library directory for series folders and updates/creates metadata files. + """ + comics_logger.info(f"Starting metadata update in {target_path} (Force: {force})...") + + try: + items = samba_manager.list_path(target_path) + if isinstance(items, dict) and "error" in items: + comics_logger.error(f"Error listing {target_path}: {items['error']}") + return + + for item in items: + if item['name'] in ['.', '..']: continue + if not item['is_directory']: continue + + series_name = item['name'] + series_path = item['path'] + + # Check for existing metadata + meta_filename = f"{series_name}_info.txt" + meta_path = f"{series_path}/{meta_filename}" + + # Check if meta exists + series_contents = samba_manager.list_path(series_path) + has_meta = False + if isinstance(series_contents, list): + for sub in series_contents: + if sub['name'] == meta_filename: + has_meta = True + break + + if has_meta and not force: + continue + + comics_logger.info(f"Updating metadata for: {series_name}") + + # Parse series info from FOLDER NAME + clean_name = series_name.replace('_', ' ') + clean_name = re.sub(r'\s*\\(\\d+\\)$', '', clean_name).strip() + + artist = "Unknown" + artist_match = re.match(r'^\\[(.*?)\\]', clean_name) + if artist_match: + artist = artist_match.group(1) + clean_name = clean_name[artist_match.end():].strip() + + doujin_id = None + id_match = re.search(r'\\(\\d{5,7}\\)$', series_name) + if id_match: + doujin_id = id_match.group(1) + + # 1. Try Mangadex + api_data = self._lookup_mangadex_metadata(clean_name) + + # 2. Try nhentai + if not api_data: + data = self._lookup_doujin_metadata(clean_name, artist, doujin_id) + if data: + data['source'] = "nhentai" + api_data = data + + # 3. Try Hentai2Read + if not api_data: + api_data = self._lookup_hentai2read_metadata(clean_name) + + # 4. Try MangaUpdates + if not api_data: + api_data = self._lookup_mangaupdates_metadata(clean_name) + + meta_content = self._create_metadata_file(clean_name, artist=artist, api_data=api_data) + + with tempfile.NamedTemporaryFile(mode='w+', delete=False) as tmp_meta: + tmp_meta.write(meta_content) + tmp_meta.flush() + tmp_meta.seek(0) + with open(tmp_meta.name, 'rb') as f: + samba_manager.upload_file(meta_path, f) + os.unlink(tmp_meta.name) + + except Exception as e: + comics_logger.error(f"Error updating metadata in {target_path}: {e}") + + def _collect_all_folders(self, samba_manager, path): + folders = [] + try: + items = samba_manager.list_path(path) + for item in items: + if item['name'] in ['.', '..']: continue + if item['is_directory']: + folders.append({'name': item['name'], 'path': item['path']}) + # Recurse + folders.extend(self._collect_all_folders(samba_manager, item['path'])) + except Exception as e: + comics_logger.error(f"Error listing path {path}: {e}") + return folders + + def find_similar_folders(self, samba_manager: SambaManager, root_path="/comics/manga", threshold=0.9): + """ + Scans for folders with similar names. + """ + comics_logger.info(f"Scanning for duplicate folders in {root_path}...") + all_dirs = self._collect_all_folders(samba_manager, root_path) + comics_logger.info(f"Found {len(all_dirs)} directories. Comparing...") + + groups = [] + processed_indices = set() + + for i in range(len(all_dirs)): + if i in processed_indices: continue + + current_group = [all_dirs[i]] + + for j in range(i + 1, len(all_dirs)): + if j in processed_indices: continue + + name1 = all_dirs[i]['name'].lower().replace('_', ' ') + name2 = all_dirs[j]['name'].lower().replace('_', ' ') + + ratio = difflib.SequenceMatcher(None, name1, name2).ratio() + + if ratio >= threshold: + current_group.append(all_dirs[j]) + processed_indices.add(j) + + if len(current_group) > 1: + groups.append({ + "name": all_dirs[i]['name'], + "folders": current_group + }) + processed_indices.add(i) + + return groups + + def delete_folder(self, samba_manager: SambaManager, folder_path): + """ + Deletes a specific folder. + """ + try: + comics_logger.info(f"Deleting duplicate folder: {folder_path}") + samba_manager.delete_directory_recursive(folder_path) + return {"success": True} + except Exception as e: + comics_logger.error(f"Failed to delete folder {folder_path}: {e}") + return {"error": str(e)} + + def _get_artist_from_info(self, samba_manager, series_path, series_name): + info_filename = f"{series_name}_info.txt" + info_path = f"{series_path}/{info_filename}" + + try: + with tempfile.NamedTemporaryFile(mode='w+b', delete=False) as tmp: + samba_manager.download_file(info_path, tmp) + tmp.seek(0) + content = tmp.read().decode('utf-8', errors='ignore') + + # Parse content + artist = "Unknown" + author = "Unknown" + + for line in content.splitlines(): + if line.startswith("Artist:"): + val = line.split(":", 1)[1].strip() + if val and val.lower() != "unknown": + artist = val.split(',')[0].strip() # Take first artist if multiple + elif line.startswith("Author:"): + val = line.split(":", 1)[1].strip() + if val and val.lower() != "unknown": + author = val.split(',')[0].strip() + + if artist != "Unknown": return artist + if author != "Unknown": return author + + except Exception as e: + # File might not exist or other error + pass + finally: + if 'tmp' in locals() and os.path.exists(tmp.name): + os.unlink(tmp.name) + + return "_Unknown" + + def sort_by_artist(self, samba_manager, root_path="/comics/manga"): + comics_logger.info(f"Sorting by Artist in {root_path}...") + + try: + items = samba_manager.list_path(root_path) + if isinstance(items, dict) and "error" in items: + comics_logger.error(f"Error listing {root_path}: {items['error']}") + return + + for item in items: + if item['name'] in ['.', '..', '_Unknown']: continue + if not item['is_directory']: continue + + series_name = item['name'] + series_path = item['path'] + + # Check if this is a Series Folder + # Criteria: Contains .cbz, .zip, or _info.txt + try: + sub_items = samba_manager.list_path(series_path) + if isinstance(sub_items, dict) and "error" in sub_items: continue + + is_series = False + for sub in sub_items: + if sub['name'].lower().endswith(('.cbz', '.zip', '_info.txt')): + is_series = True + break + + if not is_series: + comics_logger.info(f"Skipping potential Artist folder or empty folder: {series_name}") + continue + except Exception: + continue + + # Attempt to get artist + artist = self._get_artist_from_info(samba_manager, series_path, series_name) + + # Sanitize artist name for folder + clean_artist = re.sub(r'[<>:"/\\|?*]', '', artist).strip().replace(' ', '_') + if not clean_artist: clean_artist = "_Unknown" + + # Target path: /comics/manga/Artist/Series + artist_folder = f"{root_path}/{clean_artist}" + target_path = f"{artist_folder}/{series_name}" + + # Skip if already in place + if series_name == clean_artist: + continue + + # Check if we are moving into itself (e.g. Root/Artist -> Root/Artist/Artist) + # This happens if 'SeriesName' == 'ArtistName' and it was already sorted? + # But we checked is_series. An Artist folder usually doesn't have cbz inside directly. + + comics_logger.info(f"Moving '{series_name}' to Artist folder '{clean_artist}'") try: - samba_manager.create_directory(final_series_folder_path) - except OperationFailure as e: - if "FILE_OBJECT_NAME_COLLISION" not in str(e): - comics_logger.error(f"Could not create directory {final_series_folder_path}: {e}") - - for chapter_item in chapters: - original_path = chapter_item["path"].replace("\\", "/") - original_filename = chapter_item["name"] - - path_to_move = "" - filename_to_move = "" - - if original_filename.lower().endswith('.zip'): - cbz_filename = os.path.splitext(original_filename)[0] + '.cbz' - temp_cbz_path = f"{comics_root}/{cbz_filename}".replace("\\", "/") - - try: - samba_manager.rename_file(original_path, temp_cbz_path) - path_to_move = temp_cbz_path - filename_to_move = cbz_filename - comics_logger.info(f"Renamed {original_filename} to {cbz_filename}") - except OperationFailure as e: - comics_logger.error(f"Failed to rename ZIP {original_filename}: {e}") - continue - - elif original_filename.lower().endswith('.cbz'): - path_to_move = original_path - filename_to_move = original_filename - else: - continue - - final_cbz_path = f"{final_series_folder_path}/{filename_to_move}".replace("\\", "/") - + # Create Artist folder try: - samba_manager.rename_file(path_to_move, final_cbz_path) - comics_logger.info(f"Moved {filename_to_move} to {final_series_folder_path}") - except OperationFailure as e: - comics_logger.error(f"Failed to move {filename_to_move} to {final_series_folder_path}: {e}") + samba_manager.create_directory(artist_folder) + except OperationFailure: pass # Exists + + # Move Series folder + samba_manager.rename_file(series_path, target_path) + + except Exception as e: + comics_logger.error(f"Failed to move {series_name}: {e}") except Exception as e: - comics_logger.error(f"An error occurred during comics organization: {e}", exc_info=True) - - comics_logger.info("Comics organization process finished.") - - return + comics_logger.error(f"Sort by artist failed: {e}") \ No newline at end of file diff --git a/ServerManagerWebApp/backend/app/config.py b/ServerManagerWebApp/backend/app/config.py index 674750c..67379a6 100644 --- a/ServerManagerWebApp/backend/app/config.py +++ b/ServerManagerWebApp/backend/app/config.py @@ -2,6 +2,8 @@ from pydantic_settings import BaseSettings, SettingsConfigDict import subprocess import logging import shutil +import json +import os logger = logging.getLogger(__name__) @@ -14,6 +16,8 @@ logging.basicConfig( ] ) +SETTINGS_FILE = "resources/config/app_settings.json" + def check_gpu_support(): try: logger.debug("Checking ffmpeg for CUDA support...") @@ -29,12 +33,48 @@ def check_gpu_support(): return False class Settings(BaseSettings): - samba_server_ip: str - samba_username: str - samba_password: str + samba_server_ip: str = "127.0.0.1" + samba_username: str = "guest" + samba_password: str = "" + comicvine_api_key: str | None = None + qbittorrent_url: str | None = None + qbittorrent_username: str | None = None + qbittorrent_password: str | None = None gpu_enabled: bool = check_gpu_support() + + # Defaults + default_comics_path: str = "/comics/manga" + default_videos_path: str = "/videos" - model_config = SettingsConfigDict(env_file=".env") + # Stash Integration + stash_enabled: bool = False + stash_db_path: str = "stash.sqlite" + stash_remote_db_path: str = "/appdata/stashapp/config/stash-go.sqlite" + stash_generated_path: str = "/media/stashapp/generated" + stash_remote_base: str = "/media/videos" + stash_container_base: str = "/data" + stash_share: str = "main" + model_config = SettingsConfigDict(env_file=".env", extra="ignore") + + def load_from_json(self): + if os.path.exists(SETTINGS_FILE): + try: + with open(SETTINGS_FILE, 'r') as f: + data = json.load(f) + for key, value in data.items(): + if hasattr(self, key): + setattr(self, key, value) + except Exception as e: + logger.error(f"Failed to load settings: {e}") + + def save_to_json(self): + try: + os.makedirs(os.path.dirname(SETTINGS_FILE), exist_ok=True) + with open(SETTINGS_FILE, 'w') as f: + json.dump(self.model_dump(), f, indent=4) + except Exception as e: + logger.error(f"Failed to save settings: {e}") settings = Settings() +settings.load_from_json() diff --git a/ServerManagerWebApp/backend/app/duplicates_manager.py b/ServerManagerWebApp/backend/app/duplicates_manager.py index 6d97b79..de71756 100644 --- a/ServerManagerWebApp/backend/app/duplicates_manager.py +++ b/ServerManagerWebApp/backend/app/duplicates_manager.py @@ -2,54 +2,96 @@ import logging import os import subprocess import tempfile +import json +import time +import itertools from PIL import Image import imagehash from sqlalchemy.orm import Session from .samba_manager import SambaManager from .config import Settings +from .stash_service import StashService from . import models -import itertools -import logging -import time logger = logging.getLogger(__name__) +class CancellationException(Exception): + pass + +class CancellableWriter: + def __init__(self, file_obj, check_cancel_func): + self.file_obj = file_obj + self.check_cancel_func = check_cancel_func + + def write(self, data): + if self.check_cancel_func(): + raise CancellationException("Scan canceled by user") + return self.file_obj.write(data) + + def close(self): + return self.file_obj.close() + + def flush(self): + return self.file_obj.flush() + + def tell(self): + return self.file_obj.tell() + + def seek(self, offset, whence=0): + return self.file_obj.seek(offset, whence) class DuplicatesManager: def __init__(self, settings: Settings, db: Session): self.settings = settings self.db = db - self.videos_root = "/videos" + self.stash_service = StashService(settings) + self.exclusions_file = "resources/config/exclusions.json" + self._load_exclusions() + + def _load_exclusions(self): + if os.path.exists(self.exclusions_file): + try: + with open(self.exclusions_file, 'r') as f: + self.exclusions = json.load(f) + except: + self.exclusions = [] + else: + self.exclusions = [] + + def _save_exclusions(self): + os.makedirs(os.path.dirname(self.exclusions_file), exist_ok=True) + with open(self.exclusions_file, 'w') as f: + json.dump(self.exclusions, f) + + def add_exclusion(self, path): + if path not in self.exclusions: + self.exclusions.append(path) + self._save_exclusions() + + def remove_exclusion(self, path): + if path in self.exclusions: + self.exclusions.remove(path) + self._save_exclusions() + + def _is_excluded(self, path): + for excl in self.exclusions: + if path.startswith(excl): + return True + return False def _get_video_duration(self, filepath): - logger.debug(f"Running ffprobe for duration of {filepath}") try: command = [ - "ffprobe", - "-v", - "error", - "-show_entries", - "format=duration", - "-of", - "default=noprint_wrappers=1:nokey=1", - filepath, + "ffprobe", "-v", "error", "-show_entries", "format=duration", + "-of", "default=noprint_wrappers=1:nokey=1", filepath ] - logger.debug(f"ffprobe command: {' '.join(command)}") - result = subprocess.run( - command, - capture_output=True, - text=True, - check=True, - ) - logger.debug(f"ffprobe stdout: {result.stdout.strip()}") - logger.debug(f"ffprobe stderr: {result.stderr.strip()}") + result = subprocess.run(command, capture_output=True, text=True, check=True) return float(result.stdout) - except (subprocess.CalledProcessError, FileNotFoundError) as e: + except Exception as e: logger.error(f"ffprobe failed for {filepath}: {e}") return None - def _get_frame_hash(self, filepath): - logger.debug(f"Running ffmpeg for frame hash of {filepath}") + def _get_frame_hash(self, filepath, algorithm='phash'): tmp_frame_path = "" try: with tempfile.NamedTemporaryFile(suffix=".jpg", delete=False) as tmp_frame: @@ -57,264 +99,390 @@ class DuplicatesManager: command = ["ffmpeg"] if self.settings.gpu_enabled: command.extend(["-hwaccel", "cuda"]) - - command.extend([ - "-i", - filepath, - "-ss", - "00:00:10", - "-vframes", - "1", - "-y", - tmp_frame_path, - ]) - logger.debug(f"ffmpeg command: {' '.join(command)}") - result = subprocess.run( - command, - capture_output=True, - check=True, - ) - logger.debug(f"ffmpeg stdout: {result.stdout.strip()}") - logger.debug(f"ffmpeg stderr: {result.stderr.strip()}") + # Extract frame at 10s or 10%? Fixed 10s for now. + command.extend(["-i", filepath, "-ss", "00:00:10", "-vframes", "1", "-y", tmp_frame_path]) + + subprocess.run(command, capture_output=True, check=True) - if os.path.exists(tmp_frame_path): - logger.debug(f"Temporary frame file exists: {tmp_frame_path}, size: {os.path.getsize(tmp_frame_path)} bytes") - phash = imagehash.phash(Image.open(tmp_frame_path)) - return str(phash) - else: - logger.warning(f"Temporary frame file was not created: {tmp_frame_path}") - return None - except (subprocess.CalledProcessError, FileNotFoundError) as e: - logger.error(f"ffmpeg failed for {filepath}: {e}") - return None - except Image.UnidentifiedImageError as e: - logger.error(f"PIL.UnidentifiedImageError for {filepath} with temp file {tmp_frame_path}: {e}") - return None + if os.path.exists(tmp_frame_path) and os.path.getsize(tmp_frame_path) > 0: + img = Image.open(tmp_frame_path) + if algorithm == 'ahash': h = imagehash.average_hash(img) + elif algorithm == 'dhash': h = imagehash.dhash(img) + else: h = imagehash.phash(img) + return str(h) + except Exception as e: + logger.error(f"Hash generation failed for {filepath}: {e}") finally: if os.path.exists(tmp_frame_path): os.remove(tmp_frame_path) + return None - def _is_video_file(self, filename): - video_extensions = ['.mp4', '.mkv', '.avi', '.mov', '.wmv', '.flv', '.webm'] - return any(filename.lower().endswith(ext) for ext in video_extensions) + def generate_contact_sheet(self, video_path): + """ + Generates a 3x3 contact sheet for the video. + Returns (relative_path, phash_str) + """ + try: + duration = self._get_video_duration(video_path) + if not duration or duration < 10: return None, None + + # Extract 9 frames at intervals + interval = duration / 10 + timestamps = [interval * i for i in range(1, 10)] + + # We use a temp dir to store frames, then stitch + # ffmpeg tile filter is good but seeking is faster for sparse frames on large files? + # Actually, `ffmpeg -i ... -vf fps=... tile=...` reads the whole file which is slow over network/SMB. + # Best to seek. + + # Since we have the file locally in tmp_path (downloaded), seeking is fast. + + frames = [] + with tempfile.TemporaryDirectory() as temp_frames_dir: + for idx, ts in enumerate(timestamps): + out_frame = os.path.join(temp_frames_dir, f"frame_{idx}.jpg") + # fast seek + subprocess.run( + ["ffmpeg", "-ss", str(ts), "-i", video_path, "-vframes", "1", "-q:v", "5", "-vf", "scale=320:-1", "-y", out_frame], + stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL, check=False + ) + if os.path.exists(out_frame): + frames.append(Image.open(out_frame)) + + if len(frames) < 4: return None, None # Need at least some frames + + # Stitch 3x3 (or adaptive) + # Create blank image + w, h = frames[0].size + grid_w = w * 3 + grid_h = h * 3 + contact_sheet = Image.new('RGB', (grid_w, grid_h)) + + for idx, frame in enumerate(frames): + if idx >= 9: break + x = (idx % 3) * w + y = (idx // 3) * h + contact_sheet.paste(frame, (x, y)) + + # Save + cache_dir = "resources/cache/thumbnails" + os.makedirs(cache_dir, exist_ok=True) + # Use hash of path to ensure uniqueness/retrievability + filename_hash = imagehash.hex_to_hash(os.path.basename(video_path)) # Just use random or md5 + import hashlib + file_hash = hashlib.md5(video_path.encode()).hexdigest() + out_name = f"{file_hash}.jpg" + out_path = os.path.join(cache_dir, out_name) + + contact_sheet.save(out_path, "JPEG", quality=80) + + # Calculate Hash of the SHEET + sheet_hash = imagehash.phash(contact_sheet) + + return out_name, str(sheet_hash) + + except Exception as e: + logger.error(f"Contact sheet generation failed: {e}") + return None, None + + def _process_video_file(self, samba_manager, filepath, filename, size, algorithm='phash', scan_type='fast', log_func=None, cancel_check_func=None): + if cancel_check_func and cancel_check_func(): return + + if self._is_excluded(filepath): + return - def _process_video_file(self, samba_manager: SambaManager, filepath, filename, size): - logger.info(f"Processing video: {filepath} ({filename})") existing_video = self.db.query(models.VideoFile).filter_by(filepath=filepath).first() + + # If in scene mode, check if we already have the scene data if existing_video: - if existing_video.size == size: - logger.info(f"Skipping already processed and unaltered video: {filepath}") - return + if scan_type == 'scene' and not existing_video.contact_sheet_path: + if log_func: log_func(f"Updating {filename} with contact sheet") + # Continue to processing + elif existing_video.size == size: + return # Skip if unchanged else: - logger.info(f"File {filepath} has altered size ({existing_video.size} -> {size}). Re-processing.") self.db.delete(existing_video) self.db.commit() + existing_video = None + if log_func: log_func(f"Processing: {filename} (Mode: {scan_type})") + + # --- Stash Integration --- + if self.settings.stash_enabled: + if cancel_check_func and cancel_check_func(): return + stash_phash, stash_oshash, scene_id, stash_duration = self.stash_service.get_file_metadata(filepath) + if stash_phash: + if log_func: log_func(f"Found Stash metadata for {filename}") + + sheet_path = None + if scan_type == 'scene' and stash_oshash: + if cancel_check_func and cancel_check_func(): return + remote_sprite = self.stash_service.get_sprite_path(stash_oshash) + local_sheet_name = f"stash_{stash_oshash}.jpg" + local_sheet_path = os.path.join("resources/cache/thumbnails", local_sheet_name) + if not os.path.exists(local_sheet_path): + try: + # Ensure directory exists + os.makedirs(os.path.dirname(local_sheet_path), exist_ok=True) + + # Use stash_share for sprite download + stash_samba = samba_manager + if samba_manager.share_name != self.settings.stash_share: + stash_samba = SambaManager( + self.settings.samba_server_ip, + self.settings.stash_share, + self.settings.samba_username, + self.settings.samba_password + ) + + try: + with open(local_sheet_path, "wb") as f: + stash_samba.download_file(remote_sprite, f) + sheet_path = local_sheet_name + finally: + if stash_samba != samba_manager: + stash_samba.close() + except Exception as e: + if log_func: log_func(f"Failed to download Stash sprite for {filename}: {e}") + else: + sheet_path = local_sheet_name + + # Save to DB + video = models.VideoFile( + filepath=filepath, filename=filename, size=size, + duration=stash_duration or 0, phash=stash_phash, + contact_sheet_path=sheet_path, + scene_phash=None + ) + self.db.add(video) + self.db.commit() + return + # --- End Stash Integration --- + + if cancel_check_func and cancel_check_func(): return + + # Download to temp with tempfile.NamedTemporaryFile(delete=False) as tmp_video: try: - samba_manager.download_file(filepath, tmp_video) + if log_func: log_func(f"Downloading {filename} ({size/1024/1024:.2f} MB)...") + + # Wrap for cancellation during download + writer = tmp_video + if cancel_check_func: + writer = CancellableWriter(tmp_video, cancel_check_func) + + samba_manager.download_file(filepath, writer) + tmp_path = tmp_video.name + except CancellationException: + if log_func: log_func(f"Download aborted for {filename}") + tmp_video.close() + os.remove(tmp_video.name) + return except Exception as e: - logger.error(f"Failed to download {filepath}: {e}") + if log_func: log_func(f"Download failed: {filepath} - {e}") + tmp_video.close() + os.remove(tmp_video.name) return - duration = self._get_video_duration(tmp_video.name) - phash = self._get_frame_hash(tmp_video.name) - - os.remove(tmp_video.name) - - if duration is not None and phash is not None: - video_file = models.VideoFile( - filepath=filepath, - filename=filename, - size=size, - duration=duration, - phash=phash, - ) - self.db.add(video_file) - self.db.commit() - logger.info(f"Processed video: {filepath}") - else: - logger.warning(f"Could not get duration or hash for {filepath}") - - def scan_videos(self, samba_manager: SambaManager): - state_file = "logs/duplicates_scan.state" - progress_file = "logs/duplicates_scan.progress" - pause_file = "logs/duplicates_scan.pause" - - dirs_to_scan = [] - try: - if os.path.exists(progress_file): - with open(progress_file, 'r') as f: - last_processed_dir = f.read().strip() - logger.info(f"Resuming scan from last in-progress directory: {last_processed_dir}") - dirs_to_scan.append(last_processed_dir) - - if os.path.exists(state_file): - with open(state_file, 'r') as f: - dirs_to_scan.extend([line.strip() for line in f if line.strip()]) - logger.info(f"Loaded {len(dirs_to_scan)} directories from state file.") + if cancel_check_func and cancel_check_func(): return - if not dirs_to_scan: - dirs_to_scan = [self.videos_root] + duration = self._get_video_duration(tmp_path) + phash = self._get_frame_hash(tmp_path, algorithm) + + if cancel_check_func and cancel_check_func(): return - logger.info(f"Starting scan for videos in {self.videos_root} on share 'isolation'") + sheet_path = None + scene_hash = None + + if scan_type == 'scene': + sheet_path, scene_hash = self.generate_contact_sheet(tmp_path) + + if duration is not None: # phash might be None if image generation failed + if not existing_video: + video = models.VideoFile( + filepath=filepath, filename=filename, size=size, + duration=duration, phash=phash or "", + contact_sheet_path=sheet_path, + scene_phash=scene_hash + ) + self.db.add(video) + else: + # Update existing + existing_video.duration = duration + existing_video.phash = phash or "" + if sheet_path: existing_video.contact_sheet_path = sheet_path + if scene_hash: existing_video.scene_phash = scene_hash + + self.db.commit() + finally: + if os.path.exists(tmp_path): + try: os.remove(tmp_path) + except: pass + def scan_videos(self, samba_manager, root_paths=["/videos"], algorithm='phash', scan_type='fast'): + state_file = "logs/duplicates_scan.state" + progress_file = "logs/duplicates_scan.json" + cancel_file = "logs/duplicates_scan.cancel" + log_file = "logs/duplicates_scan.log" + + # Helper to log to file and console + def log(msg): + try: + with open(log_file, "a") as f: + f.write(f"{msg}\n") + except: pass + logger.info(msg) + + is_cancelled = False + # Helper to check cancellation + def check_cancel(): + nonlocal is_cancelled + if is_cancelled: return True + + if os.path.exists(cancel_file): + log("Scan canceled by user.") + try: + os.remove(cancel_file) + except OSError: + pass + with open(progress_file, 'w') as f: + json.dump({"status": "canceled", "processed": processed_files}, f) + is_cancelled = True + return True + return False + + # Clear log file + with open(log_file, "w") as f: + f.write("Scan started...\n") + + # Ensure cancel file is gone before starting + if os.path.exists(cancel_file): + try: os.remove(cancel_file) + except OSError: pass + + dirs_to_scan = list(root_paths) + processed_files = 0 + + try: while dirs_to_scan: - while os.path.exists(pause_file): - logger.info("Scan is paused. Waiting for resume signal...") - time.sleep(5) + if check_cancel(): return current_path = dirs_to_scan.pop(0) with open(progress_file, 'w') as f: - f.write(current_path) + json.dump({"status": "scanning", "current": current_path, "processed": processed_files}, f) - logger.info(f"Scanning directory: {current_path}") - files_and_dirs = samba_manager.list_path(current_path) - - if "error" in files_and_dirs: - logger.error(f"Failed to list path {current_path}: {files_and_dirs['error']}") + try: + log(f"Scanning directory: {current_path}") + items = samba_manager.list_path(current_path) + except Exception as e: + log(f"Error listing {current_path}: {e}") continue - subdirs = [] - for item in files_and_dirs: - while os.path.exists(pause_file): - logger.info("Scan is paused. Waiting for resume signal...") - time.sleep(5) + for item in items: + if check_cancel(): return - if item["is_directory"]: - subdirs.append(item["path"]) - elif self._is_video_file(item["name"]): - self._process_video_file(samba_manager, item["path"], item["name"], item["size"]) + if item['name'] in ['.', '..']: continue + + if item['is_directory']: + if not self._is_excluded(item['path']): + dirs_to_scan.append(item['path']) + elif any(item['name'].lower().endswith(ext) for ext in ['.mp4', '.mkv', '.avi', '.mov', '.wmv']): + self._process_video_file( + samba_manager, item['path'], item['name'], item['size'], + algorithm, scan_type, + log_func=log, cancel_check_func=check_cancel + ) + processed_files += 1 + + with open(progress_file, 'w') as f: + json.dump({"status": "scanning", "current": item['path'], "processed": processed_files}, f) + + log("Scan completed.") + with open(progress_file, 'w') as f: + json.dump({"status": "completed", "processed": processed_files}, f) - dirs_to_scan = subdirs + dirs_to_scan - - if os.path.exists(progress_file): - os.remove(progress_file) - - with open(state_file, 'w') as f: - for d in dirs_to_scan: - f.write(d + '\n') - - if os.path.exists(state_file): - os.remove(state_file) - - logger.info("Video scan complete.") - return {"status": "Scan complete"} - except Exception as e: - logger.error(f"An error occurred during video scan: {e}", exc_info=True) - return {"status": "Scan failed", "error": str(e)} + log(f"Scan failed: {e}") + with open(progress_file, 'w') as f: + json.dump({"status": "failed", "error": str(e)}, f) - def _hamming_distance(self, s1, s2): - return sum(c1 != c2 for c1, c2 in zip(s1, s2)) - - def _calculate_similarity(self, file1: models.VideoFile, file2: models.VideoFile): - size_similarity = 1 - (abs(file1.size - file2.size) / max(file1.size, file2.size)) - duration_similarity = 1 - (abs(file1.duration - file2.duration) / max(file1.duration, file2.duration)) - hash_similarity = 1 - (self._hamming_distance(file1.phash, file2.phash) / len(file1.phash)) - return (size_similarity * 0.2) + (duration_similarity * 0.3) + (hash_similarity * 0.5) - - def find_duplicates(self, threshold=0.95): + def find_duplicates(self, threshold=0.95, method='fast'): report = models.DuplicateReport(status="running") self.db.add(report) self.db.commit() videos = self.db.query(models.VideoFile).all() groups = [] - processed_videos = set() + processed_ids = set() - for video1, video2 in itertools.combinations(videos, 2): - if video1.id in processed_videos or video2.id in processed_videos: - continue - - score = self._calculate_similarity(video1, video2) - if score >= threshold: - existing_group = None - for group in groups: - if video1.id in group["video_ids"] or video2.id in group["video_ids"]: - existing_group = group - break + for i in range(len(videos)): + if videos[i].id in processed_ids: continue + + group = [videos[i]] + scores = [] + + for j in range(i + 1, len(videos)): + if videos[j].id in processed_ids: continue - if existing_group: - existing_group["video_ids"].add(video1.id) - existing_group["video_ids"].add(video2.id) - existing_group["scores"].append(score) + v1, v2 = videos[i], videos[j] + + score = 0 + if method == 'scene' and v1.scene_phash and v2.scene_phash: + # Compare Scene Hashes + dist = imagehash.hex_to_hash(v1.scene_phash) - imagehash.hex_to_hash(v2.scene_phash) + score = max(0, 1.0 - (dist / 64.0)) # 64 is typical max distance for 8x8 hash else: - groups.append({"video_ids": {video1.id, video2.id}, "scores": [score]}) + # Standard Comparison + dist = imagehash.hex_to_hash(v1.phash) - imagehash.hex_to_hash(v2.phash) if v1.phash and v2.phash else 64 + hash_sim = max(0, 1.0 - (dist / 64.0)) + dur_sim = 1.0 - (abs(v1.duration - v2.duration) / max(v1.duration, v2.duration)) if max(v1.duration, v2.duration) > 0 else 1.0 + size_sim = 1.0 - (abs(v1.size - v2.size) / max(v1.size, v2.size)) if max(v1.size, v2.size) > 0 else 1.0 + score = (hash_sim * 0.6) + (dur_sim * 0.3) + (size_sim * 0.1) - processed_videos.add(video1.id) - processed_videos.add(video2.id) - - for group_data in groups: - avg_score = sum(group_data["scores"]) / len(group_data["scores"]) - db_group = models.DuplicateFileGroup(report_id=report.id, score=avg_score) - self.db.add(db_group) - self.db.commit() - - for video_id in group_data["video_ids"]: - db_file = models.DuplicateFile(group_id=db_group.id, video_file_id=video_id) - self.db.add(db_file) + if score >= threshold: + group.append(v2) + scores.append(score) + processed_ids.add(v2.id) + + if len(group) > 1: + processed_ids.add(videos[i].id) + avg_score = sum(scores) / len(scores) + + db_group = models.DuplicateFileGroup(report_id=report.id, score=avg_score) + self.db.add(db_group) + self.db.commit() + + for v in group: + db_file = models.DuplicateFile(group_id=db_group.id, video_file_id=v.id) + self.db.add(db_file) report.status = "completed" self.db.commit() - - return {"report_id": report.id, "status": "completed"} + return {"report_id": report.id} def get_reports(self): - return self.db.query(models.DuplicateReport).all() + return self.db.query(models.DuplicateReport).order_by(models.DuplicateReport.created_at.desc()).all() - def get_duplicate_report(self, report_id: int): - report = self.db.query(models.DuplicateReport).filter(models.DuplicateReport.id == report_id).first() - if not report: - return {"error": "Report not found"} - - groups = [] - for group in report.groups: - files = [] - for duplicate_file in group.files: - files.append(duplicate_file.video_file) - groups.append({ - "group_id": group.id, - "score": group.score, - "files": files, - }) + def get_report(self, report_id): + report = self.db.query(models.DuplicateReport).filter_by(id=report_id).first() + if not report: return None - return { - "report_id": report.id, - "created_at": report.created_at, + res = { + "id": report.id, "status": report.status, - "groups": groups, + "date": report.created_at, + "groups": [] } - - def delete_files(self, filepaths: list[str]): - samba_manager = SambaManager( - self.settings.samba_server_ip, - "isolation", # Assuming all duplicates are in the isolation share - self.settings.samba_username, - self.settings.samba_password, - ) - try: - for filepath in filepaths: - # Delete from Samba - samba_manager.delete_file(filepath) - - # Delete from database - video_file = self.db.query(models.VideoFile).filter_by(filepath=filepath).first() - if video_file: - # Delete associations in DuplicateFile - self.db.query(models.DuplicateFile).filter_by(video_file_id=video_file.id).delete() - self.db.delete(video_file) - - self.db.commit() - return {"status": "success"} - except Exception as e: - self.db.rollback() - logger.error(f"Error deleting files: {e}", exc_info=True) - return {"status": "error", "message": str(e)} - finally: - samba_manager.close() - - + for g in report.groups: + files = [{ + "id": f.video_file.id, + "path": f.video_file.filepath, + "size": f.video_file.size, + "duration": f.video_file.duration, + "contact_sheet": f.video_file.contact_sheet_path + } for f in g.files] + res["groups"].append({"id": g.id, "score": g.score, "files": files}) + return res \ No newline at end of file diff --git a/ServerManagerWebApp/backend/app/main.py b/ServerManagerWebApp/backend/app/main.py index 310967d..77e784c 100644 --- a/ServerManagerWebApp/backend/app/main.py +++ b/ServerManagerWebApp/backend/app/main.py @@ -1,20 +1,39 @@ -from fastapi import FastAPI, Depends +import os +import json +from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from sqlalchemy.orm import Session +from contextlib import asynccontextmanager from . import models from .database import SessionLocal, engine, get_db -from .routers import samba, comics, duplicates, downloader +from .routers import samba, comics, duplicates, downloader, qbittorrent, system, tasks, settings, stash, scheduler as scheduler_router +from .scheduler import start_scheduler, scheduler models.Base.metadata.create_all(bind=engine) -app = FastAPI() +def reset_stuck_scans(): + progress_file = "logs/duplicates_scan.json" + if os.path.exists(progress_file): + try: + with open(progress_file, 'r') as f: + data = json.load(f) + if data.get("status") == "scanning": + with open(progress_file, 'w') as f: + json.dump({"status": "failed", "error": "Scan interrupted by server restart"}, f) + except Exception: + pass -origins = [ - "http://localhost:5173", # Assuming frontend runs on this port during development - "http://127.0.0.1:5173", - # Add your production frontend URL(s) here when deploying -] +@asynccontextmanager +async def lifespan(app: FastAPI): + reset_stuck_scans() + start_scheduler() + yield + scheduler.shutdown() + +app = FastAPI(lifespan=lifespan) + +origins = ["*"] app.add_middleware( CORSMiddleware, @@ -28,6 +47,12 @@ app.include_router(samba.router, prefix="/samba", tags=["samba"]) app.include_router(comics.router, prefix="/comics", tags=["comics"]) app.include_router(duplicates.router, prefix="/duplicates", tags=["duplicates"]) app.include_router(downloader.router, prefix="/downloader", tags=["downloader"]) +app.include_router(qbittorrent.router, prefix="/qbittorrent", tags=["qbittorrent"]) +app.include_router(system.router, prefix="/system", tags=["system"]) +app.include_router(tasks.router, prefix="/tasks", tags=["tasks"]) +app.include_router(settings.router, prefix="/settings", tags=["settings"]) +app.include_router(stash.router, prefix="/stash", tags=["stash"]) +app.include_router(scheduler_router.router, prefix="/scheduler", tags=["scheduler"]) diff --git a/ServerManagerWebApp/backend/app/models.py b/ServerManagerWebApp/backend/app/models.py index c81af7c..5dd6bbc 100644 --- a/ServerManagerWebApp/backend/app/models.py +++ b/ServerManagerWebApp/backend/app/models.py @@ -22,6 +22,8 @@ class VideoFile(Base): size = Column(Integer) duration = Column(Float) phash = Column(String) + contact_sheet_path = Column(String, nullable=True) + scene_phash = Column(String, nullable=True) class DuplicateFileGroup(Base): @@ -42,3 +44,15 @@ class DuplicateFile(Base): video_file_id = Column(Integer, ForeignKey("video_files.id")) group = relationship("DuplicateFileGroup", back_populates="files") video_file = relationship("VideoFile") + + +class TaskHistory(Base): + __tablename__ = "task_history" + + id = Column(Integer, primary_key=True, index=True) + task_id = Column(String, index=True) # Huey Task ID + name = Column(String) + status = Column(String) # running, success, failed + start_time = Column(DateTime, default=datetime.datetime.utcnow) + end_time = Column(DateTime, nullable=True) + details = Column(String, nullable=True) diff --git a/ServerManagerWebApp/backend/app/qbittorrent_manager.py b/ServerManagerWebApp/backend/app/qbittorrent_manager.py new file mode 100644 index 0000000..e788f67 --- /dev/null +++ b/ServerManagerWebApp/backend/app/qbittorrent_manager.py @@ -0,0 +1,70 @@ +import qbittorrentapi +import logging +from .config import settings + +logger = logging.getLogger(__name__) + +class QbittorrentManager: + def __init__(self): + self.url = settings.qbittorrent_url + self.username = settings.qbittorrent_username + self.password = settings.qbittorrent_password + self.client = None + + def connect(self): + if not self.url: + raise Exception("qBittorrent URL not configured") + + try: + self.client = qbittorrentapi.Client( + host=self.url, + username=self.username, + password=self.password, + VERIFY_WEBUI_CERTIFICATE=False + ) + self.client.auth_log_in() + except qbittorrentapi.LoginFailed as e: + logger.error(f"qBittorrent Login Failed: {e}") + raise Exception("qBittorrent Login Failed") + except Exception as e: + logger.error(f"qBittorrent Connection Failed: {e}") + raise + + def get_torrents(self): + self.connect() + # Return list of dicts with relevant info + torrents = self.client.torrents_info() + return [ + { + "hash": t.hash, + "name": t.name, + "state": t.state, + "save_path": t.save_path, + "progress": t.progress, + "size": t.size, + "dlspeed": t.dlspeed, + "upspeed": t.upspeed, + "eta": t.eta + } + for t in torrents + ] + + def pause_torrents(self, hashes): + self.connect() + self.client.torrents_pause(torrent_hashes=hashes) + + def resume_torrents(self, hashes): + self.connect() + self.client.torrents_resume(torrent_hashes=hashes) + + def delete_torrents(self, hashes, delete_files=False): + self.connect() + self.client.torrents_delete(torrent_hashes=hashes, delete_files=delete_files) + + def recheck_torrents(self, hashes): + self.connect() + self.client.torrents_recheck(torrent_hashes=hashes) + + def set_location(self, hashes, location): + self.connect() + self.client.torrents_set_location(location=location, torrent_hashes=hashes) diff --git a/ServerManagerWebApp/backend/app/routers/comics.py b/ServerManagerWebApp/backend/app/routers/comics.py index 821af92..8d4f69d 100644 --- a/ServerManagerWebApp/backend/app/routers/comics.py +++ b/ServerManagerWebApp/backend/app/routers/comics.py @@ -1,40 +1,115 @@ -from fastapi import APIRouter, BackgroundTasks +from fastapi import APIRouter, HTTPException, WebSocket, WebSocketDisconnect +from pydantic import BaseModel +from typing import List, Optional +import asyncio +import os from ..comics_manager import ComicsManager from ..config import settings from ..samba_manager import SambaManager +from ..tasks import task_organize_comics, task_move_comics, task_update_metadata, task_sort_by_artist router = APIRouter() -def run_organize_comics_background(): - app_settings = settings - manager = ComicsManager() - samba_manager = SambaManager( - app_settings.samba_server_ip, - "isolation", - app_settings.samba_username, - app_settings.samba_password, +class MoveRequest(BaseModel): + series_names: List[str] + destination_share: Optional[str] = "comics" + destination_path: Optional[str] = "/manga" + +class MetadataUpdateRequest(BaseModel): + target_path: Optional[str] = "/comics/manga" + force_update: Optional[bool] = False + +class FolderScanRequest(BaseModel): + root_path: Optional[str] = "/comics/manga" + threshold: float = 0.9 + +class DeleteFolderRequest(BaseModel): + folder_path: str + +class SortRequest(BaseModel): + root_path: Optional[str] = "/comics/manga" + +def get_samba_manager(share="isolation"): + return SambaManager( + settings.samba_server_ip, + share, + settings.samba_username, + settings.samba_password, ) - manager.organize_comics(samba_manager) - samba_manager.close() @router.post("/organize") -def organize_comics(background_tasks: BackgroundTasks): - background_tasks.add_task(run_organize_comics_background) - return {"message": "Comics organization started in the background."} +def organize_comics(): + task = task_organize_comics() + return {"message": f"Organization queued (Task ID: {task.id}). Check logs."} -def run_cleanup_toberead_background(): - app_settings = settings +@router.get("/pending") +def get_pending_comics(): manager = ComicsManager() - samba_manager = SambaManager( - app_settings.samba_server_ip, - "isolation", - app_settings.samba_username, - app_settings.samba_password, - ) - manager.cleanup_toberead(samba_manager) - samba_manager.close() + samba_manager = get_samba_manager("isolation") + try: + return manager.get_pending_comics(samba_manager) + finally: + samba_manager.close() -@router.delete("/cleanup_toberead") -def cleanup_toberead(background_tasks: BackgroundTasks): - background_tasks.add_task(run_cleanup_toberead_background) - return {"message": "Comics cleanup started in the background."} +@router.post("/move") +def move_comics(request: MoveRequest): + task = task_move_comics(request.series_names, request.destination_share, request.destination_path) + return {"message": f"Move queued (Task ID: {task.id}). Check logs."} + +@router.post("/update_metadata") +def update_metadata(request: MetadataUpdateRequest): + task = task_update_metadata(request.target_path, request.force_update) + return {"message": f"Metadata update queued (Task ID: {task.id}). Check logs."} + +@router.post("/folders/scan") +def scan_folders(request: FolderScanRequest): + # This remains synchronous to return results immediately to UI + manager = ComicsManager() + samba_manager = get_samba_manager("isolation") + try: + groups = manager.find_similar_folders(samba_manager, request.root_path, request.threshold) + return groups + finally: + samba_manager.close() + +@router.post("/folders/delete") +def delete_folder(request: DeleteFolderRequest): + manager = ComicsManager() + samba_manager = get_samba_manager("isolation") + try: + return manager.delete_folder(samba_manager, request.folder_path) + finally: + samba_manager.close() + +@router.post("/sort_by_artist") +def sort_by_artist(request: SortRequest): + task = task_sort_by_artist(request.root_path) + return {"message": f"Sort by Artist queued (Task ID: {task.id}). Check logs."} + +@router.websocket("/ws/logs") +async def websocket_endpoint(websocket: WebSocket): + await websocket.accept() + file_path = "logs/comics_organization.log" + + # Ensure file exists + if not os.path.exists(file_path): + os.makedirs(os.path.dirname(file_path), exist_ok=True) + with open(file_path, "w") as f: f.write("") + + try: + with open(file_path, "r") as f: + # Send last 20 lines for context + lines = f.readlines() + for line in lines[-20:]: + await websocket.send_text(line) + + # Follow the file + f.seek(0, 2) + while True: + line = f.readline() + if line: + await websocket.send_text(line) + else: + await asyncio.sleep(0.1) + except WebSocketDisconnect: + pass diff --git a/ServerManagerWebApp/backend/app/routers/duplicates.py b/ServerManagerWebApp/backend/app/routers/duplicates.py index 951db6d..d353720 100644 --- a/ServerManagerWebApp/backend/app/routers/duplicates.py +++ b/ServerManagerWebApp/backend/app/routers/duplicates.py @@ -1,19 +1,30 @@ -from fastapi import APIRouter, Depends, BackgroundTasks +from fastapi import APIRouter, Depends, BackgroundTasks, HTTPException +from fastapi.responses import FileResponse from sqlalchemy.orm import Session from pydantic import BaseModel from ..duplicates_manager import DuplicatesManager from ..config import settings, Settings from ..database import get_db, SessionLocal from ..samba_manager import SambaManager +from .. import models import os +import json from typing import List router = APIRouter() -class DeleteFilesRequest(BaseModel): - filepaths: List[str] +class ScanConfig(BaseModel): + paths: List[str] = ["/videos"] + algorithm: str = "phash" + scan_type: str = "fast" # fast or scene -def run_scan_videos_background(): +class DeleteRequest(BaseModel): + ids: List[int] + +class ExclusionRequest(BaseModel): + path: str + +def run_scan_videos_background(paths, algorithm, scan_type): db = SessionLocal() app_settings = Settings() manager = DuplicatesManager(app_settings, db) @@ -24,42 +35,72 @@ def run_scan_videos_background(): app_settings.samba_password, ) try: - manager.scan_videos(samba_manager) + manager.scan_videos(samba_manager, paths, algorithm, scan_type) finally: samba_manager.close() db.close() -@router.post("/scan") -def scan_videos(background_tasks: BackgroundTasks): - background_tasks.add_task(run_scan_videos_background) - return {"message": "Video scan started in the background."} +@router.post("/scan/start") +def start_scan(config: ScanConfig, background_tasks: BackgroundTasks): + background_tasks.add_task(run_scan_videos_background, config.paths, config.algorithm, config.scan_type) + return {"message": "Scan started"} -@router.post("/scan/pause") -def pause_scan(): - with open("logs/duplicates_scan.pause", 'w') as f: - pass - return {"message": "Video scan paused."} +@router.post("/scan/cancel") +def cancel_scan(): + try: + os.makedirs("logs", exist_ok=True) + with open("logs/duplicates_scan.cancel", 'w') as f: + f.write("cancel") + except Exception as e: + raise HTTPException(status_code=500, detail=f"Failed to cancel scan: {e}") + return {"message": "Cancellation requested"} -@router.post("/scan/resume") -def resume_scan(): - if os.path.exists("logs/duplicates_scan.pause"): - os.remove("logs/duplicates_scan.pause") - return {"message": "Video scan resumed."} +@router.get("/scan/log") +def get_scan_log(limit: int = 100): + log_file = "logs/duplicates_scan.log" + if not os.path.exists(log_file): + return {"lines": []} + + try: + # Simple read and tail (not efficient for huge files but fine here) + with open(log_file, "r", encoding="utf-8", errors="replace") as f: + lines = f.readlines() + return {"lines": lines[-limit:]} + except Exception as e: + return {"lines": [f"Error reading log: {e}"]} -@router.get("/scan/status") -def get_scan_status(): - if os.path.exists("logs/duplicates_scan.pause"): - return {"status": "Paused"} - if os.path.exists("logs/duplicates_scan.progress") or os.path.exists("logs/duplicates_scan.state"): - return {"status": "Scanning"} - return {"status": "Idle"} +@router.get("/scan/progress") +def get_scan_progress(): + path = "logs/duplicates_scan.json" + if os.path.exists(path): + try: + with open(path, 'r') as f: + return json.load(f) + except: + return {"status": "error", "message": "Read failed"} + return {"status": "idle"} +@router.get("/exclusions") +def get_exclusions(db: Session = Depends(get_db)): + manager = DuplicatesManager(settings, db) + return manager.exclusions + +@router.post("/exclusions") +def add_exclusion(req: ExclusionRequest, db: Session = Depends(get_db)): + manager = DuplicatesManager(settings, db) + manager.add_exclusion(req.path) + return {"message": "Added"} + +@router.delete("/exclusions") +def remove_exclusion(req: ExclusionRequest, db: Session = Depends(get_db)): + manager = DuplicatesManager(settings, db) + manager.remove_exclusion(req.path) + return {"message": "Removed"} @router.post("/find") -def find_duplicates(threshold: float = 0.95, db: Session = Depends(get_db)): +def find_duplicates(threshold: float = 0.95, method: str = "fast", db: Session = Depends(get_db)): manager = DuplicatesManager(settings, db) - result = manager.find_duplicates(threshold) - return result + return manager.find_duplicates(threshold, method) @router.get("/reports") def get_reports(db: Session = Depends(get_db)): @@ -69,9 +110,24 @@ def get_reports(db: Session = Depends(get_db)): @router.get("/report/{report_id}") def get_report(report_id: int, db: Session = Depends(get_db)): manager = DuplicatesManager(settings, db) - return manager.get_duplicate_report(report_id) + res = manager.get_report(report_id) + if not res: raise HTTPException(status_code=404) + return res @router.delete("/files") -def delete_files(request: DeleteFilesRequest, db: Session = Depends(get_db)): +def delete_files(request: DeleteRequest, db: Session = Depends(get_db)): manager = DuplicatesManager(settings, db) - return manager.delete_files(request.filepaths) + deleted = manager.delete_files(request.ids) + return {"deleted_ids": deleted} + +@router.get("/thumbnails/{video_id}") +def get_thumbnail(video_id: int, db: Session = Depends(get_db)): + video = db.query(models.VideoFile).get(video_id) + if not video or not video.contact_sheet_path: + raise HTTPException(status_code=404, detail="Thumbnail not found") + + path = os.path.join("resources/cache/thumbnails", video.contact_sheet_path) + if not os.path.exists(path): + raise HTTPException(status_code=404, detail="Thumbnail file missing") + + return FileResponse(path) diff --git a/ServerManagerWebApp/backend/app/routers/qbittorrent.py b/ServerManagerWebApp/backend/app/routers/qbittorrent.py new file mode 100644 index 0000000..f56b856 --- /dev/null +++ b/ServerManagerWebApp/backend/app/routers/qbittorrent.py @@ -0,0 +1,63 @@ +from fastapi import APIRouter, HTTPException +from pydantic import BaseModel +from typing import List +from ..qbittorrent_manager import QbittorrentManager + +router = APIRouter() +manager = QbittorrentManager() + +class TorrentActionRequest(BaseModel): + hashes: List[str] + +class DeleteRequest(TorrentActionRequest): + delete_files: bool = False + +class LocationRequest(TorrentActionRequest): + location: str + +@router.get("/") +def list_torrents(): + try: + return manager.get_torrents() + except Exception as e: + raise HTTPException(status_code=500, detail=str(e)) + +@router.post("/pause") +def pause_torrents(request: TorrentActionRequest): + try: + manager.pause_torrents(request.hashes) + return {"status": "success"} + except Exception as e: + raise HTTPException(status_code=500, detail=str(e)) + +@router.post("/resume") +def resume_torrents(request: TorrentActionRequest): + try: + manager.resume_torrents(request.hashes) + return {"status": "success"} + except Exception as e: + raise HTTPException(status_code=500, detail=str(e)) + +@router.post("/delete") +def delete_torrents(request: DeleteRequest): + try: + manager.delete_torrents(request.hashes, request.delete_files) + return {"status": "success"} + except Exception as e: + raise HTTPException(status_code=500, detail=str(e)) + +@router.post("/recheck") +def recheck_torrents(request: TorrentActionRequest): + try: + manager.recheck_torrents(request.hashes) + return {"status": "success"} + except Exception as e: + raise HTTPException(status_code=500, detail=str(e)) + +@router.post("/location") +def set_location(request: LocationRequest): + try: + manager.set_location(request.hashes, request.location) + return {"status": "success"} + except Exception as e: + raise HTTPException(status_code=500, detail=str(e)) diff --git a/ServerManagerWebApp/backend/app/routers/samba.py b/ServerManagerWebApp/backend/app/routers/samba.py index a9c86fb..a558bea 100644 --- a/ServerManagerWebApp/backend/app/routers/samba.py +++ b/ServerManagerWebApp/backend/app/routers/samba.py @@ -215,3 +215,16 @@ def rename_file(share_name: str, request: RenameRequest): result = manager.rename_file(request.old_path, request.new_path) manager.close() return result + +@router.get("/search/{share_name}") +def search_files(share_name: str, query: str, path: str = "/"): + manager = SambaManager( + settings.samba_server_ip, + share_name, + username=settings.samba_username, + password=settings.samba_password, + ) + try: + return manager.search_files(query, path) + finally: + manager.close() diff --git a/ServerManagerWebApp/backend/app/routers/scheduler.py b/ServerManagerWebApp/backend/app/routers/scheduler.py new file mode 100644 index 0000000..3531995 --- /dev/null +++ b/ServerManagerWebApp/backend/app/routers/scheduler.py @@ -0,0 +1,34 @@ +from fastapi import APIRouter, HTTPException +from pydantic import BaseModel +from typing import List, Optional, Dict, Any +from ..scheduler import add_job, get_jobs, remove_job + +router = APIRouter() + +class JobCreate(BaseModel): + task_name: str + cron_expression: str + args: Optional[List[Any]] = [] + kwargs: Optional[Dict[str, Any]] = {} + +@router.get("/") +def list_jobs(): + return get_jobs() + +@router.post("/") +def create_job(job: JobCreate): + try: + job_id = add_job(job.task_name, job.cron_expression, job.args, job.kwargs) + return {"id": job_id, "message": "Job scheduled"} + except ValueError as e: + raise HTTPException(status_code=400, detail=str(e)) + except Exception as e: + raise HTTPException(status_code=500, detail=str(e)) + +@router.delete("/{job_id}") +def delete_job(job_id: str): + try: + remove_job(job_id) + return {"message": "Job deleted"} + except Exception: + raise HTTPException(status_code=404, detail="Job not found") diff --git a/ServerManagerWebApp/backend/app/routers/settings.py b/ServerManagerWebApp/backend/app/routers/settings.py new file mode 100644 index 0000000..6012c30 --- /dev/null +++ b/ServerManagerWebApp/backend/app/routers/settings.py @@ -0,0 +1,34 @@ +from fastapi import APIRouter +from pydantic import BaseModel +from typing import Optional +from ..config import settings + +router = APIRouter() + +class SettingsUpdate(BaseModel): + samba_server_ip: str + samba_username: str + samba_password: str + qbittorrent_url: Optional[str] + qbittorrent_username: Optional[str] + qbittorrent_password: Optional[str] + default_comics_path: str + default_videos_path: str + stash_enabled: Optional[bool] + stash_db_path: Optional[str] + stash_generated_path: Optional[str] + stash_remote_base: Optional[str] + stash_container_base: Optional[str] + stash_share: Optional[str] + +@router.get("/") +def get_settings(): + return settings.model_dump() + +@router.post("/") +def update_settings(update: SettingsUpdate): + for key, value in update.model_dump().items(): + if hasattr(settings, key): + setattr(settings, key, value) + settings.save_to_json() + return {"message": "Settings updated"} diff --git a/ServerManagerWebApp/backend/app/routers/stash.py b/ServerManagerWebApp/backend/app/routers/stash.py new file mode 100644 index 0000000..02f6020 --- /dev/null +++ b/ServerManagerWebApp/backend/app/routers/stash.py @@ -0,0 +1,44 @@ +from fastapi import APIRouter, Depends, BackgroundTasks, HTTPException +from sqlalchemy.orm import Session +from ..config import settings, Settings +from ..samba_manager import SambaManager +from ..database import get_db +import os +import logging + +router = APIRouter() +logger = logging.getLogger(__name__) + +def sync_stash_db_task(): + samba_manager = SambaManager( + settings.samba_server_ip, + settings.stash_share, + settings.samba_username, + settings.samba_password, + ) + try: + logger.info(f"Syncing Stash DB from {settings.stash_remote_db_path}") + with open(settings.stash_db_path, "wb") as f: + samba_manager.download_file(settings.stash_remote_db_path, f) + logger.info("Stash DB synced successfully") + except Exception as e: + logger.error(f"Stash DB sync failed: {e}") + finally: + samba_manager.close() + +@router.post("/sync") +def sync_stash(background_tasks: BackgroundTasks): + background_tasks.add_task(sync_stash_db_task) + return {"message": "Stash sync started"} + +@router.get("/status") +def get_stash_status(): + exists = os.path.exists(settings.stash_db_path) + size = os.path.getsize(settings.stash_db_path) if exists else 0 + mtime = os.path.getmtime(settings.stash_db_path) if exists else 0 + return { + "enabled": settings.stash_enabled, + "db_exists": exists, + "db_size": size, + "db_mtime": mtime + } diff --git a/ServerManagerWebApp/backend/app/routers/system.py b/ServerManagerWebApp/backend/app/routers/system.py new file mode 100644 index 0000000..dd01b78 --- /dev/null +++ b/ServerManagerWebApp/backend/app/routers/system.py @@ -0,0 +1,60 @@ +from fastapi import APIRouter +import psutil +import time +import os + +router = APIRouter() + +def get_size(bytes, suffix="B"): + """ + Scale bytes to its proper format + e.g: + 1253656 => '1.20MB' + 1253656678 => '1.17GB' + """ + factor = 1024 + for unit in ["", "K", "M", "G", "T", "P"]: + if bytes < factor: + return f"{bytes:.2f}{unit}{suffix}" + bytes /= factor + +@router.get("/stats") +def get_system_stats(): + # CPU + cpu_usage = psutil.cpu_percent(interval=1) + + # Memory + svmem = psutil.virtual_memory() + memory_stats = { + "total": get_size(svmem.total), + "available": get_size(svmem.available), + "percent": svmem.percent, + "used": get_size(svmem.used) + } + + # Disk (Root) + try: + partition = psutil.disk_usage("/") + disk_stats = { + "total": get_size(partition.total), + "free": get_size(partition.free), + "percent": partition.percent, + "used": get_size(partition.used) + } + except Exception: + disk_stats = {"error": "Unavailable"} + + # Uptime + boot_time = psutil.boot_time() + uptime_seconds = time.time() - boot_time + uptime_string = time.strftime("%H:%M:%S", time.gmtime(uptime_seconds)) + if uptime_seconds > 86400: + days = int(uptime_seconds // 86400) + uptime_string = f"{days} days, " + uptime_string + + return { + "cpu": cpu_usage, + "memory": memory_stats, + "disk": disk_stats, + "uptime": uptime_string + } diff --git a/ServerManagerWebApp/backend/app/routers/tasks.py b/ServerManagerWebApp/backend/app/routers/tasks.py new file mode 100644 index 0000000..fafcaf2 --- /dev/null +++ b/ServerManagerWebApp/backend/app/routers/tasks.py @@ -0,0 +1,10 @@ +from fastapi import APIRouter, Depends +from sqlalchemy.orm import Session +from ..database import get_db +from ..models import TaskHistory + +router = APIRouter() + +@router.get("/") +def get_tasks(limit: int = 50, db: Session = Depends(get_db)): + return db.query(TaskHistory).order_by(TaskHistory.start_time.desc()).limit(limit).all() diff --git a/ServerManagerWebApp/backend/app/samba_manager.py b/ServerManagerWebApp/backend/app/samba_manager.py index c14979b..b4927e7 100644 --- a/ServerManagerWebApp/backend/app/samba_manager.py +++ b/ServerManagerWebApp/backend/app/samba_manager.py @@ -35,13 +35,54 @@ class SambaManager: "name": f.filename, "is_directory": f.isDirectory, "size": f.file_size, - "path": full_item_path + "path": full_item_path, + "last_modified": f.last_write_time }) return items except Exception as e: logger.error(f"Error listing path '{current_dir_path}' on share '{self.share_name}': {e}", exc_info=True) return [] + def search_files(self, query, start_path="/"): + """ + Recursively searches for files matching query (partial, case-insensitive). + """ + matches = [] + try: + stack = [start_path] + while stack: + current_path = stack.pop() + try: + files = self.conn.listPath(self.share_name, current_path) + except Exception: + continue # Skip unreadable dirs + + for f in files: + if f.filename in ['.', '..']: continue + + normalized_current_path = current_path + if normalized_current_path != '/' and not normalized_current_path.endswith('/'): + normalized_current_path += '/' + + full_item_path = f"{normalized_current_path}{f.filename}".replace("\\", "/") + + if query.lower() in f.filename.lower(): + matches.append({ + "name": f.filename, + "is_directory": f.isDirectory, + "size": f.file_size, + "path": full_item_path, + "last_modified": f.last_write_time + }) + + if f.isDirectory: + stack.append(full_item_path) + + except Exception as e: + logger.error(f"Error searching path '{start_path}': {e}") + + return matches + def delete_file(self, path): try: @@ -63,6 +104,8 @@ class SambaManager: self.conn.retrieveFile(self.share_name, path, file_obj) return {"success": True} except Exception as e: + if "Scan canceled by user" in str(e): + raise e return {"error": str(e)} def download_file_range(self, path, file_obj, offset, max_length): diff --git a/ServerManagerWebApp/backend/app/scheduler.py b/ServerManagerWebApp/backend/app/scheduler.py new file mode 100644 index 0000000..0190956 --- /dev/null +++ b/ServerManagerWebApp/backend/app/scheduler.py @@ -0,0 +1,68 @@ +from apscheduler.schedulers.background import BackgroundScheduler +from apscheduler.jobstores.sqlalchemy import SQLAlchemyJobStore +from .database import engine +from .tasks import task_organize_comics, task_update_metadata, task_sort_by_artist +import logging + +logger = logging.getLogger(__name__) + +# Map readable names to Huey task functions +TASK_MAP = { + "organize_comics": task_organize_comics, + "update_metadata": task_update_metadata, + "sort_by_artist": task_sort_by_artist +} + +jobstores = { + 'default': SQLAlchemyJobStore(engine=engine) +} + +scheduler = BackgroundScheduler(jobstores=jobstores) + +def start_scheduler(): + try: + scheduler.start() + logger.info("Scheduler started.") + except Exception as e: + logger.error(f"Failed to start scheduler: {e}") + +def add_job(task_name, cron_str, args=None, kwargs=None): + if task_name not in TASK_MAP: + raise ValueError(f"Unknown task: {task_name}") + + func = TASK_MAP[task_name] + + # Parse cron string (e.g. "* * * * *") -> minute, hour, day, month, day_of_week + # Simple implementation: expect "min hour day month day_of_week" + try: + parts = cron_str.split() + if len(parts) != 5: + raise ValueError("Invalid cron format. Expected 5 fields.") + + trigger_args = { + 'minute': parts[0], + 'hour': parts[1], + 'day': parts[2], + 'month': parts[3], + 'day_of_week': parts[4] + } + + job = scheduler.add_job(func, 'cron', args=args, kwargs=kwargs, **trigger_args) + return job.id + except Exception as e: + logger.error(f"Failed to add job: {e}") + raise e + +def get_jobs(): + jobs = [] + for job in scheduler.get_jobs(): + jobs.append({ + "id": job.id, + "name": job.name, + "next_run": str(job.next_run_time), + "trigger": str(job.trigger) + }) + return jobs + +def remove_job(job_id): + scheduler.remove_job(job_id) diff --git a/ServerManagerWebApp/backend/app/stash_service.py b/ServerManagerWebApp/backend/app/stash_service.py new file mode 100644 index 0000000..cf2c170 --- /dev/null +++ b/ServerManagerWebApp/backend/app/stash_service.py @@ -0,0 +1,88 @@ +import sqlite3 +import os +import logging +from .config import Settings + +logger = logging.getLogger(__name__) + +class StashService: + def __init__(self, settings: Settings): + self.settings = settings + self.db_path = settings.stash_db_path + + def get_db_connection(self): + if not os.path.exists(self.db_path): + logger.warning(f"Stash database not found at {self.db_path}") + return None + return sqlite3.connect(self.db_path) + + def translate_to_stash_path(self, local_path): + """ + Translates a local/SMB path to Stash internal container path. + Example: /media/videos/Girl/Scene.mp4 -> /data/Girl/Scene.mp4 + """ + remote_base = self.settings.stash_remote_base.rstrip('/') + container_base = self.settings.stash_container_base.rstrip('/') + + if local_path.startswith(remote_base): + return local_path.replace(remote_base, container_base, 1) + + # If it doesn't start with remote_base, maybe it's already relative or formatted differently? + # Stash also uses basenames in 'files' table. + return local_path + + def get_file_metadata(self, local_path): + """ + Returns (phash, oshash, scene_id, duration) from Stash DB for a given file. + """ + stash_path = self.translate_to_stash_path(local_path) + conn = self.get_db_connection() + if not conn: + return None, None, None, None + + try: + cursor = conn.cursor() + cursor.execute("SELECT id FROM files WHERE path = ?", (stash_path,)) + row = cursor.fetchone() + if not row: + return None, None, None, None + + file_id = row[0] + + # Get fingerprints + cursor.execute("SELECT type, fingerprint FROM files_fingerprints WHERE file_id = ?", (file_id,)) + fingerprints = cursor.fetchall() + + phash = None + oshash = None + for f_type, f_val in fingerprints: + if f_type == 'phash': + phash = hex(int(f_val) & 0xffffffffffffffff)[2:].zfill(16) + elif f_type == 'oshash': + oshash = f_val + + # Get scene_id + cursor.execute("SELECT scene_id FROM scenes_files WHERE file_id = ?", (file_id,)) + scene_row = cursor.fetchone() + scene_id = scene_row[0] if scene_row else None + + # Get duration + cursor.execute("SELECT duration FROM video_files WHERE file_id = ?", (file_id,)) + dur_row = cursor.fetchone() + duration = dur_row[0] if dur_row else None + + return phash, oshash, scene_id, duration + + except Exception as e: + logger.error(f"Failed to query Stash metadata for {local_path}: {e}") + return None, None, None, None + finally: + conn.close() + + def get_sprite_path(self, oshash): + """ + Returns the remote SMB path for the sprite. + Example: /media/stashapp/generated/vtt/{oshash}_sprite.jpg + """ + if not oshash: return None + return f"{self.settings.stash_generated_path}/vtt/{oshash}_sprite.jpg" diff --git a/ServerManagerWebApp/backend/app/task_tracker.py b/ServerManagerWebApp/backend/app/task_tracker.py new file mode 100644 index 0000000..9362389 --- /dev/null +++ b/ServerManagerWebApp/backend/app/task_tracker.py @@ -0,0 +1,30 @@ +from .database import SessionLocal +from .models import TaskHistory +import datetime + +def record_task_start(task_id, name, details=None): + db = SessionLocal() + try: + task = TaskHistory(task_id=str(task_id), name=name, status="running", details=str(details) if details else None) + db.add(task) + db.commit() + except Exception as e: + print(f"Error recording task start: {e}") + finally: + db.close() + +def record_task_end(task_id, status, details=None): + db = SessionLocal() + try: + task = db.query(TaskHistory).filter_by(task_id=str(task_id)).first() + if task: + task.status = status + task.end_time = datetime.datetime.utcnow() + if details: + # Append details if existing? Or overwrite? Overwrite for now or simpler append + task.details = str(details) + db.commit() + except Exception as e: + print(f"Error recording task end: {e}") + finally: + db.close() diff --git a/ServerManagerWebApp/backend/app/tasks.py b/ServerManagerWebApp/backend/app/tasks.py new file mode 100644 index 0000000..ceea5dd --- /dev/null +++ b/ServerManagerWebApp/backend/app/tasks.py @@ -0,0 +1,83 @@ +from huey import SqliteHuey +import os +import logging +from .comics_manager import ComicsManager +from .samba_manager import SambaManager +from .config import settings +from .task_tracker import record_task_start, record_task_end + +# Ensure dir exists +os.makedirs("resources/config", exist_ok=True) + +# Configure Huey with SQLite backend for persistence +huey = SqliteHuey(filename="resources/config/tasks.db") + +logger = logging.getLogger('huey') + +def get_samba_manager(share="isolation"): + return SambaManager( + settings.samba_server_ip, + share, + settings.samba_username, + settings.samba_password, + ) + +@huey.task(context=True) +def task_organize_comics(task=None): + record_task_start(task.id, "Organize Comics") + logger.info(f"Task {task.id}: Organize Comics started") + manager = ComicsManager() + samba_manager = get_samba_manager("isolation") + try: + manager.organize_comics(samba_manager) + record_task_end(task.id, "success") + except Exception as e: + logger.error(f"Task Organize Comics failed: {e}") + record_task_end(task.id, "failed", str(e)) + finally: + samba_manager.close() + +@huey.task(context=True) +def task_move_comics(series_names, share, path, task=None): + record_task_start(task.id, "Move Comics", f"Count: {len(series_names)} -> {share}:{path}") + logger.info(f"Task {task.id}: Move Comics started") + manager = ComicsManager() + samba_manager = get_samba_manager("isolation") + try: + manager.move_series(samba_manager, series_names, share, path) + record_task_end(task.id, "success") + except Exception as e: + logger.error(f"Task Move Comics failed: {e}") + record_task_end(task.id, "failed", str(e)) + finally: + samba_manager.close() + +@huey.task(context=True) +def task_update_metadata(target_path, force, task=None): + record_task_start(task.id, "Update Metadata", f"Path: {target_path}") + logger.info(f"Task {task.id}: Update Metadata started") + manager = ComicsManager() + samba_manager = get_samba_manager("isolation") + try: + manager.update_existing_metadata(samba_manager, target_path, force) + record_task_end(task.id, "success") + except Exception as e: + logger.error(f"Task Update Metadata failed: {e}") + record_task_end(task.id, "failed", str(e)) + finally: + samba_manager.close() + +@huey.task(context=True) +def task_sort_by_artist(root_path, task=None): + record_task_start(task.id, "Sort by Artist", f"Path: {root_path}") + logger.info(f"Task {task.id}: Sort by Artist started") + manager = ComicsManager() + samba_manager = get_samba_manager("isolation") + try: + manager.sort_by_artist(samba_manager, root_path) + record_task_end(task.id, "success") + except Exception as e: + logger.error(f"Task Sort by Artist failed: {e}") + record_task_end(task.id, "failed", str(e)) + finally: + samba_manager.close() diff --git a/ServerManagerWebApp/backend/logs/comics_organization.log b/ServerManagerWebApp/backend/logs/comics_organization.log index a53fb3c..ab5b6ee 100644 --- a/ServerManagerWebApp/backend/logs/comics_organization.log +++ b/ServerManagerWebApp/backend/logs/comics_organization.log @@ -2259,3 +2259,16052 @@ b'fe534d4240000000000000000600000000000000000000002e00000000000000ed490300a9ca88 2026-01-05 14:50:01,908 - INFO - Starting comics organization process... 2026-01-05 14:50:01,953 - INFO - Found 0 series to process. 2026-01-05 14:50:01,954 - INFO - Comics organization process finished. +2026-01-06 17:05:41,652 - INFO - Starting recursive comics organization in /comics/pendingorganization... +2026-01-06 17:05:41,700 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-06 17:05:42,036 - INFO - Processing: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku.zip -> Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-06 17:05:43,705 - INFO - Starting recursive comics organization in /comics/pendingorganization... +2026-01-06 17:05:43,743 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-06 17:05:44,049 - INFO - Processing: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku.zip -> Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-06 17:05:45,109 - INFO - Uploading Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz to /comics/pendingorganization/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz +2026-01-06 17:05:45,379 - INFO - Deleting original /comics/pendingorganization/Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku.zip +2026-01-06 17:05:45,409 - INFO - Searching metadata for: haunted property chapter +2026-01-06 17:05:45,560 - INFO - Processing: haunted_property_chapter_1.zip -> haunted_property_chapter +2026-01-06 17:05:46,211 - INFO - Uploading haunted_property_chapter.cbz to /comics/pendingorganization/haunted_property_chapter/haunted_property_chapter.cbz +2026-01-06 17:05:46,293 - INFO - Deleting original /comics/pendingorganization/haunted_property_chapter_1.zip +2026-01-06 17:05:46,303 - INFO - Searching metadata for: hitozuma saimin appli chapter +2026-01-06 17:05:46,488 - INFO - Processing: hitozuma_saimin_appli_chapter_1.zip -> hitozuma_saimin_appli_chapter +2026-01-06 17:05:46,516 - INFO - Uploading Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz to /comics/pendingorganization/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz +2026-01-06 17:05:46,927 - INFO - Deleting original /comics/pendingorganization/Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku.zip +2026-01-06 17:05:46,954 - INFO - Searching metadata for: haunted property chapter +2026-01-06 17:05:47,157 - INFO - Processing: haunted_property_chapter_1.zip -> haunted_property_chapter +2026-01-06 17:05:47,158 - ERROR - Failed to extract haunted_property_chapter_1.zip: Unsupported archive format or invalid file +2026-01-06 17:05:47,159 - INFO - Searching metadata for: hitozuma saimin appli chapter +2026-01-06 17:05:47,349 - INFO - Processing: hitozuma_saimin_appli_chapter_1.zip -> hitozuma_saimin_appli_chapter +2026-01-06 17:05:48,293 - INFO - Uploading hitozuma_saimin_appli_chapter.cbz to /comics/pendingorganization/hitozuma_saimin_appli_chapter/hitozuma_saimin_appli_chapter.cbz +2026-01-06 17:05:48,492 - INFO - Deleting original /comics/pendingorganization/hitozuma_saimin_appli_chapter_1.zip +2026-01-06 17:05:48,511 - INFO - Searching metadata for: kayanee and the old man memories chapter +2026-01-06 17:05:48,680 - INFO - Processing: kayanee_and_the_old_man_memories_chapter_1.zip -> kayanee_and_the_old_man_memories_chapter +2026-01-06 17:05:49,054 - INFO - Uploading hitozuma_saimin_appli_chapter.cbz to /comics/pendingorganization/hitozuma_saimin_appli_chapter/hitozuma_saimin_appli_chapter.cbz +2026-01-06 17:05:49,259 - INFO - Deleting original /comics/pendingorganization/hitozuma_saimin_appli_chapter_1.zip +2026-01-06 17:05:49,283 - INFO - Searching metadata for: kayanee and the old man memories chapter +2026-01-06 17:05:49,466 - INFO - Processing: kayanee_and_the_old_man_memories_chapter_1.zip -> kayanee_and_the_old_man_memories_chapter +2026-01-06 17:05:49,878 - INFO - Uploading kayanee_and_the_old_man_memories_chapter.cbz to /comics/pendingorganization/kayanee_and_the_old_man_memories_chapter/kayanee_and_the_old_man_memories_chapter.cbz +2026-01-06 17:05:50,032 - INFO - Deleting original /comics/pendingorganization/kayanee_and_the_old_man_memories_chapter_1.zip +2026-01-06 17:05:50,056 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter +2026-01-06 17:05:50,253 - INFO - Processing: jibakureichan_wa_oppai_ga_yowai_chapter_1.zip -> jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-06 17:05:50,679 - INFO - Uploading kayanee_and_the_old_man_memories_chapter.cbz to /comics/pendingorganization/kayanee_and_the_old_man_memories_chapter/kayanee_and_the_old_man_memories_chapter.cbz +2026-01-06 17:05:50,793 - INFO - Deleting original /comics/pendingorganization/kayanee_and_the_old_man_memories_chapter_1.zip +2026-01-06 17:05:50,803 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter +2026-01-06 17:05:50,949 - INFO - Processing: jibakureichan_wa_oppai_ga_yowai_chapter_1.zip -> jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-06 17:05:51,598 - INFO - Uploading jibakureichan_wa_oppai_ga_yowai_chapter.cbz to /comics/pendingorganization/jibakureichan_wa_oppai_ga_yowai_chapter/jibakureichan_wa_oppai_ga_yowai_chapter.cbz +2026-01-06 17:05:51,641 - INFO - Starting recursive comics organization in /comics/pendingorganization... +2026-01-06 17:05:51,684 - INFO - Searching metadata for: haunted property chapter +2026-01-06 17:05:51,786 - INFO - Deleting original /comics/pendingorganization/jibakureichan_wa_oppai_ga_yowai_chapter_1.zip +2026-01-06 17:05:51,800 - INFO - Searching metadata for: dream mama vs real mother chapter 1b +2026-01-06 17:05:51,885 - INFO - Processing: haunted_property_chapter.cbz -> haunted_property_chapter +2026-01-06 17:05:52,038 - INFO - Processing: dream_mama_vs_real_mother_chapter_1b.zip -> dream_mama_vs_real_mother_chapter_1b +2026-01-06 17:05:52,489 - INFO - Uploading jibakureichan_wa_oppai_ga_yowai_chapter.cbz to /comics/pendingorganization/jibakureichan_wa_oppai_ga_yowai_chapter/jibakureichan_wa_oppai_ga_yowai_chapter.cbz +2026-01-06 17:05:52,669 - INFO - Deleting original /comics/pendingorganization/jibakureichan_wa_oppai_ga_yowai_chapter_1.zip +2026-01-06 17:05:52,686 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-06 17:05:52,736 - INFO - Uploading haunted_property_chapter.cbz to /comics/pendingorganization/haunted_property_chapter/haunted_property_chapter.cbz +2026-01-06 17:05:52,816 - INFO - Deleting original /comics/pendingorganization/haunted_property_chapter/haunted_property_chapter.cbz +2026-01-06 17:05:52,827 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter +2026-01-06 17:05:52,888 - INFO - Processing: Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz -> Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-06 17:05:52,977 - INFO - Processing: jibakureichan_wa_oppai_ga_yowai_chapter_1.zip -> jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-06 17:05:52,979 - ERROR - Failed to extract jibakureichan_wa_oppai_ga_yowai_chapter_1.zip: Unsupported archive format or invalid file +2026-01-06 17:05:52,984 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-06 17:05:53,058 - INFO - Uploading dream_mama_vs_real_mother_chapter_1b.cbz to /comics/pendingorganization/dream_mama_vs_real_mother_chapter_1b/dream_mama_vs_real_mother_chapter_1b.cbz +2026-01-06 17:05:53,183 - INFO - Deleting original /comics/pendingorganization/dream_mama_vs_real_mother_chapter_1b.zip +2026-01-06 17:05:53,194 - INFO - Searching metadata for: imouto to rekawatta oniichan wa chapter +2026-01-06 17:05:53,237 - INFO - Processing: Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz -> Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-06 17:05:53,436 - INFO - Processing: imouto_to_rekawatta_oniichan_wa_chapter_1.zip -> imouto_to_rekawatta_oniichan_wa_chapter +2026-01-06 17:05:54,439 - INFO - Uploading imouto_to_rekawatta_oniichan_wa_chapter.cbz to /comics/pendingorganization/imouto_to_rekawatta_oniichan_wa_chapter/imouto_to_rekawatta_oniichan_wa_chapter.cbz +2026-01-06 17:05:54,540 - INFO - Deleting original /comics/pendingorganization/imouto_to_rekawatta_oniichan_wa_chapter_1.zip +2026-01-06 17:05:54,550 - INFO - Searching metadata for: jukujo sentai paiters chapter +2026-01-06 17:05:54,745 - INFO - Processing: jukujo_sentai_paiters_chapter_1.zip -> jukujo_sentai_paiters_chapter +2026-01-06 17:05:55,544 - INFO - Uploading jukujo_sentai_paiters_chapter.cbz to /comics/pendingorganization/jukujo_sentai_paiters_chapter/jukujo_sentai_paiters_chapter.cbz +2026-01-06 17:05:55,649 - INFO - Deleting original /comics/pendingorganization/jukujo_sentai_paiters_chapter_1.zip +2026-01-06 17:05:55,658 - INFO - Searching metadata for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-06 17:05:55,862 - INFO - Uploading Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz to /comics/pendingorganization/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz +2026-01-06 17:05:56,017 - INFO - Processing: Gachikoi shinai to Derarenai Heya _ The Room You Cant Leave Unless You Fall in True Love.zip -> Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love +2026-01-06 17:05:56,145 - INFO - Uploading Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz to /comics/pendingorganization/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz +2026-01-06 17:05:56,150 - INFO - Deleting original /comics/pendingorganization/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz +2026-01-06 17:05:56,198 - INFO - Searching metadata for: dream mama vs real mother chapter 1b +2026-01-06 17:05:56,284 - INFO - Deleting original /comics/pendingorganization/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz +2026-01-06 17:05:56,307 - INFO - Searching metadata for: dream mama vs real mother chapter 1b +2026-01-06 17:05:56,393 - INFO - Processing: dream_mama_vs_real_mother_chapter_1b.zip -> dream_mama_vs_real_mother_chapter_1b +2026-01-06 17:05:56,394 - ERROR - Failed to extract dream_mama_vs_real_mother_chapter_1b.zip: Unsupported archive format or invalid file +2026-01-06 17:05:56,394 - INFO - Searching metadata for: imouto to rekawatta oniichan wa chapter +2026-01-06 17:05:56,548 - INFO - Processing: dream_mama_vs_real_mother_chapter_1b.zip -> dream_mama_vs_real_mother_chapter_1b +2026-01-06 17:05:56,549 - ERROR - Failed to extract dream_mama_vs_real_mother_chapter_1b.zip: Unsupported archive format or invalid file +2026-01-06 17:05:56,549 - INFO - Searching metadata for: imouto to rekawatta oniichan wa chapter +2026-01-06 17:05:56,614 - INFO - Processing: imouto_to_rekawatta_oniichan_wa_chapter_1.zip -> imouto_to_rekawatta_oniichan_wa_chapter +2026-01-06 17:05:56,615 - ERROR - Failed to extract imouto_to_rekawatta_oniichan_wa_chapter_1.zip: Unsupported archive format or invalid file +2026-01-06 17:05:56,616 - INFO - Searching metadata for: jukujo sentai paiters chapter +2026-01-06 17:05:56,746 - INFO - Processing: imouto_to_rekawatta_oniichan_wa_chapter_1.zip -> imouto_to_rekawatta_oniichan_wa_chapter +2026-01-06 17:05:56,747 - ERROR - Failed to extract imouto_to_rekawatta_oniichan_wa_chapter_1.zip: Unsupported archive format or invalid file +2026-01-06 17:05:56,748 - INFO - Searching metadata for: jukujo sentai paiters chapter +2026-01-06 17:05:56,767 - INFO - Processing: jukujo_sentai_paiters_chapter_1.zip -> jukujo_sentai_paiters_chapter +2026-01-06 17:05:56,769 - ERROR - Failed to extract jukujo_sentai_paiters_chapter_1.zip: Unsupported archive format or invalid file +2026-01-06 17:05:56,769 - INFO - Searching metadata for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-06 17:05:56,892 - INFO - Uploading Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love.cbz to /comics/pendingorganization/Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love/Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love.cbz +2026-01-06 17:05:56,925 - INFO - Processing: jukujo_sentai_paiters_chapter_1.zip -> jukujo_sentai_paiters_chapter +2026-01-06 17:05:56,927 - ERROR - Failed to extract jukujo_sentai_paiters_chapter_1.zip: Unsupported archive format or invalid file +2026-01-06 17:05:56,931 - INFO - Searching metadata for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-06 17:05:57,020 - INFO - Deleting original /comics/pendingorganization/Gachikoi shinai to Derarenai Heya _ The Room You Cant Leave Unless You Fall in True Love.zip +2026-01-06 17:05:57,028 - INFO - Searching metadata for: mrs miho cant stop cheating chapter +2026-01-06 17:05:57,063 - INFO - Processing: Gachikoi shinai to Derarenai Heya _ The Room You Cant Leave Unless You Fall in True Love.zip -> Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love +2026-01-06 17:05:57,065 - ERROR - Failed to extract Gachikoi shinai to Derarenai Heya _ The Room You Cant Leave Unless You Fall in True Love.zip: Unsupported archive format or invalid file +2026-01-06 17:05:57,065 - INFO - Searching metadata for: mrs miho cant stop cheating chapter +2026-01-06 17:05:57,222 - INFO - Processing: mrs_miho_cant_stop_cheating_chapter_1.zip -> mrs_miho_cant_stop_cheating_chapter +2026-01-06 17:05:57,282 - INFO - Processing: Gachikoi shinai to Derarenai Heya _ The Room You Cant Leave Unless You Fall in True Love.zip -> Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love +2026-01-06 17:05:57,283 - INFO - Processing: mrs_miho_cant_stop_cheating_chapter_1.zip -> mrs_miho_cant_stop_cheating_chapter +2026-01-06 17:05:57,285 - ERROR - Failed to extract Gachikoi shinai to Derarenai Heya _ The Room You Cant Leave Unless You Fall in True Love.zip: Unsupported archive format or invalid file +2026-01-06 17:05:57,287 - INFO - Searching metadata for: mrs miho cant stop cheating chapter +2026-01-06 17:05:57,442 - INFO - Processing: mrs_miho_cant_stop_cheating_chapter_1.zip -> mrs_miho_cant_stop_cheating_chapter +2026-01-06 17:05:59,324 - INFO - Uploading mrs_miho_cant_stop_cheating_chapter.cbz to /comics/pendingorganization/mrs_miho_cant_stop_cheating_chapter/mrs_miho_cant_stop_cheating_chapter.cbz +2026-01-06 17:05:59,351 - INFO - Uploading mrs_miho_cant_stop_cheating_chapter.cbz to /comics/pendingorganization/mrs_miho_cant_stop_cheating_chapter/mrs_miho_cant_stop_cheating_chapter.cbz +2026-01-06 17:05:59,355 - INFO - Deleting original /comics/pendingorganization/mrs_miho_cant_stop_cheating_chapter_1.zip +2026-01-06 17:05:59,376 - INFO - Searching metadata for: jitsu wa midara na chounyuu sensei chapter +2026-01-06 17:05:59,401 - INFO - Uploading mrs_miho_cant_stop_cheating_chapter.cbz to /comics/pendingorganization/mrs_miho_cant_stop_cheating_chapter/mrs_miho_cant_stop_cheating_chapter.cbz +2026-01-06 17:05:59,406 - INFO - Deleting original /comics/pendingorganization/mrs_miho_cant_stop_cheating_chapter_1.zip +2026-01-06 17:05:59,423 - INFO - Searching metadata for: jitsu wa midara na chounyuu sensei chapter +2026-01-06 17:05:59,524 - INFO - Deleting original /comics/pendingorganization/mrs_miho_cant_stop_cheating_chapter_1.zip +2026-01-06 17:05:59,539 - INFO - Searching metadata for: jitsu wa midara na chounyuu sensei chapter +2026-01-06 17:05:59,650 - INFO - Processing: jitsu_wa_midara_na_chounyuu_sensei_chapter_1.zip -> jitsu_wa_midara_na_chounyuu_sensei_chapter +2026-01-06 17:05:59,696 - INFO - Processing: jitsu_wa_midara_na_chounyuu_sensei_chapter_1.zip -> jitsu_wa_midara_na_chounyuu_sensei_chapter +2026-01-06 17:05:59,877 - INFO - Processing: jitsu_wa_midara_na_chounyuu_sensei_chapter_1.zip -> jitsu_wa_midara_na_chounyuu_sensei_chapter +2026-01-06 17:06:00,198 - INFO - Uploading jitsu_wa_midara_na_chounyuu_sensei_chapter.cbz to /comics/pendingorganization/jitsu_wa_midara_na_chounyuu_sensei_chapter/jitsu_wa_midara_na_chounyuu_sensei_chapter.cbz +2026-01-06 17:06:00,206 - INFO - Uploading jitsu_wa_midara_na_chounyuu_sensei_chapter.cbz to /comics/pendingorganization/jitsu_wa_midara_na_chounyuu_sensei_chapter/jitsu_wa_midara_na_chounyuu_sensei_chapter.cbz +2026-01-06 17:06:00,211 - INFO - Deleting original /comics/pendingorganization/jitsu_wa_midara_na_chounyuu_sensei_chapter_1.zip +2026-01-06 17:06:00,220 - INFO - Searching metadata for: from now on you are my livestock chapter +2026-01-06 17:06:00,261 - INFO - Deleting original /comics/pendingorganization/jitsu_wa_midara_na_chounyuu_sensei_chapter_1.zip +2026-01-06 17:06:00,268 - INFO - Searching metadata for: from now on you are my livestock chapter +2026-01-06 17:06:00,350 - INFO - Uploading jitsu_wa_midara_na_chounyuu_sensei_chapter.cbz to /comics/pendingorganization/jitsu_wa_midara_na_chounyuu_sensei_chapter/jitsu_wa_midara_na_chounyuu_sensei_chapter.cbz +2026-01-06 17:06:00,413 - INFO - Deleting original /comics/pendingorganization/jitsu_wa_midara_na_chounyuu_sensei_chapter_1.zip +2026-01-06 17:06:00,419 - INFO - Searching metadata for: from now on you are my livestock chapter +2026-01-06 17:06:00,486 - INFO - Processing: from_now_on_you_are_my_livestock_chapter_1.zip -> from_now_on_you_are_my_livestock_chapter +2026-01-06 17:06:00,521 - INFO - Processing: from_now_on_you_are_my_livestock_chapter_1.zip -> from_now_on_you_are_my_livestock_chapter +2026-01-06 17:06:00,706 - INFO - Processing: from_now_on_you_are_my_livestock_chapter_1.zip -> from_now_on_you_are_my_livestock_chapter +2026-01-06 17:06:01,671 - INFO - Uploading from_now_on_you_are_my_livestock_chapter.cbz to /comics/pendingorganization/from_now_on_you_are_my_livestock_chapter/from_now_on_you_are_my_livestock_chapter.cbz +2026-01-06 17:06:01,738 - INFO - Uploading from_now_on_you_are_my_livestock_chapter.cbz to /comics/pendingorganization/from_now_on_you_are_my_livestock_chapter/from_now_on_you_are_my_livestock_chapter.cbz +2026-01-06 17:06:01,743 - INFO - Deleting original /comics/pendingorganization/from_now_on_you_are_my_livestock_chapter_1.zip +2026-01-06 17:06:01,763 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter +2026-01-06 17:06:01,783 - INFO - Uploading from_now_on_you_are_my_livestock_chapter.cbz to /comics/pendingorganization/from_now_on_you_are_my_livestock_chapter/from_now_on_you_are_my_livestock_chapter.cbz +2026-01-06 17:06:01,788 - INFO - Deleting original /comics/pendingorganization/from_now_on_you_are_my_livestock_chapter_1.zip +2026-01-06 17:06:01,800 - INFO - Searching metadata for: family plan toono suika chapter +2026-01-06 17:06:01,806 - INFO - Deleting original /comics/pendingorganization/from_now_on_you_are_my_livestock_chapter_1.zip +2026-01-06 17:06:01,817 - INFO - Searching metadata for: family plan toono suika chapter +2026-01-06 17:06:01,919 - INFO - Processing: jibakureichan_wa_oppai_ga_yowai_chapter.cbz -> jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-06 17:06:01,989 - INFO - Processing: family_plan_toono_suika_chapter_1.zip -> family_plan_toono_suika_chapter +2026-01-06 17:06:02,017 - INFO - Processing: family_plan_toono_suika_chapter_1.zip -> family_plan_toono_suika_chapter +2026-01-06 17:06:02,676 - INFO - Uploading family_plan_toono_suika_chapter.cbz to /comics/pendingorganization/family_plan_toono_suika_chapter/family_plan_toono_suika_chapter.cbz +2026-01-06 17:06:02,710 - INFO - Uploading family_plan_toono_suika_chapter.cbz to /comics/pendingorganization/family_plan_toono_suika_chapter/family_plan_toono_suika_chapter.cbz +2026-01-06 17:06:02,716 - INFO - Deleting original /comics/pendingorganization/family_plan_toono_suika_chapter_1.zip +2026-01-06 17:06:02,725 - INFO - Searching metadata for: crossdressing hero and dancer priestess chapter +2026-01-06 17:06:02,749 - INFO - Deleting original /comics/pendingorganization/family_plan_toono_suika_chapter_1.zip +2026-01-06 17:06:02,755 - INFO - Searching metadata for: crossdressing hero and dancer priestess chapter +2026-01-06 17:06:02,910 - INFO - Processing: crossdressing_hero_and_dancer_priestess_chapter_1.zip -> crossdressing_hero_and_dancer_priestess_chapter +2026-01-06 17:06:02,928 - INFO - Processing: crossdressing_hero_and_dancer_priestess_chapter_1.zip -> crossdressing_hero_and_dancer_priestess_chapter +2026-01-06 17:06:03,649 - INFO - Uploading jibakureichan_wa_oppai_ga_yowai_chapter.cbz to /comics/pendingorganization/jibakureichan_wa_oppai_ga_yowai_chapter/jibakureichan_wa_oppai_ga_yowai_chapter.cbz +2026-01-06 17:06:03,820 - INFO - Deleting original /comics/pendingorganization/jibakureichan_wa_oppai_ga_yowai_chapter/jibakureichan_wa_oppai_ga_yowai_chapter.cbz +2026-01-06 17:06:03,833 - INFO - Searching metadata for: family plan toono suika chapter +2026-01-06 17:06:03,881 - INFO - Uploading crossdressing_hero_and_dancer_priestess_chapter.cbz to /comics/pendingorganization/crossdressing_hero_and_dancer_priestess_chapter/crossdressing_hero_and_dancer_priestess_chapter.cbz +2026-01-06 17:06:03,915 - INFO - Uploading crossdressing_hero_and_dancer_priestess_chapter.cbz to /comics/pendingorganization/crossdressing_hero_and_dancer_priestess_chapter/crossdressing_hero_and_dancer_priestess_chapter.cbz +2026-01-06 17:06:03,923 - INFO - Deleting original /comics/pendingorganization/crossdressing_hero_and_dancer_priestess_chapter_1.zip +2026-01-06 17:06:03,935 - INFO - Searching metadata for: im being sex educated by my overprotective mother chapter +2026-01-06 17:06:03,998 - INFO - Processing: family_plan_toono_suika_chapter_1.zip -> family_plan_toono_suika_chapter +2026-01-06 17:06:04,002 - ERROR - Failed to extract family_plan_toono_suika_chapter_1.zip: Unsupported archive format or invalid file +2026-01-06 17:06:04,012 - INFO - Searching metadata for: kayanee and the old man memories chapter +2026-01-06 17:06:04,050 - INFO - Deleting original /comics/pendingorganization/crossdressing_hero_and_dancer_priestess_chapter_1.zip +2026-01-06 17:06:04,060 - INFO - Searching metadata for: im being sex educated by my overprotective mother chapter +2026-01-06 17:06:04,170 - INFO - Processing: kayanee_and_the_old_man_memories_chapter.cbz -> kayanee_and_the_old_man_memories_chapter +2026-01-06 17:06:04,181 - INFO - Processing: im_being_sex_educated_by_my_overprotective_mother_chapter_1.zip -> im_being_sex_educated_by_my_overprotective_mother_chapter +2026-01-06 17:06:04,309 - INFO - Processing: im_being_sex_educated_by_my_overprotective_mother_chapter_1.zip -> im_being_sex_educated_by_my_overprotective_mother_chapter +2026-01-06 17:06:05,635 - INFO - Uploading im_being_sex_educated_by_my_overprotective_mother_chapter.cbz to /comics/pendingorganization/im_being_sex_educated_by_my_overprotective_mother_chapter/im_being_sex_educated_by_my_overprotective_mother_chapter.cbz +2026-01-06 17:06:05,663 - INFO - Uploading kayanee_and_the_old_man_memories_chapter.cbz to /comics/pendingorganization/kayanee_and_the_old_man_memories_chapter/kayanee_and_the_old_man_memories_chapter.cbz +2026-01-06 17:06:05,708 - INFO - Uploading im_being_sex_educated_by_my_overprotective_mother_chapter.cbz to /comics/pendingorganization/im_being_sex_educated_by_my_overprotective_mother_chapter/im_being_sex_educated_by_my_overprotective_mother_chapter.cbz +2026-01-06 17:06:05,714 - INFO - Deleting original /comics/pendingorganization/im_being_sex_educated_by_my_overprotective_mother_chapter_1.zip +2026-01-06 17:06:05,742 - INFO - Searching metadata for: i matched with my friends mom chapter +2026-01-06 17:06:05,822 - INFO - Deleting original /comics/pendingorganization/im_being_sex_educated_by_my_overprotective_mother_chapter_1.zip +2026-01-06 17:06:05,834 - INFO - Searching metadata for: i matched with my friends mom chapter +2026-01-06 17:06:05,852 - INFO - Deleting original /comics/pendingorganization/kayanee_and_the_old_man_memories_chapter/kayanee_and_the_old_man_memories_chapter.cbz +2026-01-06 17:06:05,861 - INFO - Searching metadata for: crossdressing hero and dancer priestess chapter +2026-01-06 17:06:05,998 - INFO - Processing: i_matched_with_my_friends_mom_chapter_1.zip -> i_matched_with_my_friends_mom_chapter +2026-01-06 17:06:06,055 - INFO - Processing: crossdressing_hero_and_dancer_priestess_chapter_1.zip -> crossdressing_hero_and_dancer_priestess_chapter +2026-01-06 17:06:06,057 - ERROR - Failed to extract crossdressing_hero_and_dancer_priestess_chapter_1.zip: Unsupported archive format or invalid file +2026-01-06 17:06:06,058 - INFO - Searching metadata for: im being sex educated by my overprotective mother chapter +2026-01-06 17:06:06,131 - INFO - Processing: i_matched_with_my_friends_mom_chapter_1.zip -> i_matched_with_my_friends_mom_chapter +2026-01-06 17:06:06,289 - INFO - Processing: im_being_sex_educated_by_my_overprotective_mother_chapter_1.zip -> im_being_sex_educated_by_my_overprotective_mother_chapter +2026-01-06 17:06:06,292 - ERROR - Failed to extract im_being_sex_educated_by_my_overprotective_mother_chapter_1.zip: Unsupported archive format or invalid file +2026-01-06 17:06:06,294 - INFO - Searching metadata for: i matched with my friends mom chapter +2026-01-06 17:06:06,577 - INFO - Processing: i_matched_with_my_friends_mom_chapter_1.zip -> i_matched_with_my_friends_mom_chapter +2026-01-06 17:06:07,487 - INFO - Uploading i_matched_with_my_friends_mom_chapter.cbz to /comics/pendingorganization/i_matched_with_my_friends_mom_chapter/i_matched_with_my_friends_mom_chapter.cbz +2026-01-06 17:06:07,605 - INFO - Uploading i_matched_with_my_friends_mom_chapter.cbz to /comics/pendingorganization/i_matched_with_my_friends_mom_chapter/i_matched_with_my_friends_mom_chapter.cbz +2026-01-06 17:06:07,612 - INFO - Deleting original /comics/pendingorganization/i_matched_with_my_friends_mom_chapter_1.zip +2026-01-06 17:06:07,629 - INFO - Searching metadata for: karinsans hidden side and her naughty videos chapter +2026-01-06 17:06:07,659 - INFO - Deleting original /comics/pendingorganization/i_matched_with_my_friends_mom_chapter_1.zip +2026-01-06 17:06:07,673 - INFO - Searching metadata for: karinsans hidden side and her naughty videos chapter +2026-01-06 17:06:07,786 - INFO - Processing: karinsans_hidden_side_and_her_naughty_videos_chapter_1.zip -> karinsans_hidden_side_and_her_naughty_videos_chapter +2026-01-06 17:06:07,829 - INFO - Processing: karinsans_hidden_side_and_her_naughty_videos_chapter_1.zip -> karinsans_hidden_side_and_her_naughty_videos_chapter +2026-01-06 17:06:07,875 - INFO - Uploading i_matched_with_my_friends_mom_chapter.cbz to /comics/pendingorganization/i_matched_with_my_friends_mom_chapter/i_matched_with_my_friends_mom_chapter.cbz +2026-01-06 17:06:08,131 - INFO - Deleting original /comics/pendingorganization/i_matched_with_my_friends_mom_chapter_1.zip +2026-01-06 17:06:08,155 - INFO - Searching metadata for: karinsans hidden side and her naughty videos chapter +2026-01-06 17:06:08,313 - INFO - Processing: karinsans_hidden_side_and_her_naughty_videos_chapter_1.zip -> karinsans_hidden_side_and_her_naughty_videos_chapter +2026-01-06 17:06:08,412 - INFO - Uploading karinsans_hidden_side_and_her_naughty_videos_chapter.cbz to /comics/pendingorganization/karinsans_hidden_side_and_her_naughty_videos_chapter/karinsans_hidden_side_and_her_naughty_videos_chapter.cbz +2026-01-06 17:06:08,471 - INFO - Uploading karinsans_hidden_side_and_her_naughty_videos_chapter.cbz to /comics/pendingorganization/karinsans_hidden_side_and_her_naughty_videos_chapter/karinsans_hidden_side_and_her_naughty_videos_chapter.cbz +2026-01-06 17:06:08,477 - INFO - Deleting original /comics/pendingorganization/karinsans_hidden_side_and_her_naughty_videos_chapter_1.zip +2026-01-06 17:06:08,487 - INFO - Searching metadata for: imouto ookiindamon chapter +2026-01-06 17:06:08,494 - INFO - Deleting original /comics/pendingorganization/karinsans_hidden_side_and_her_naughty_videos_chapter_1.zip +2026-01-06 17:06:08,500 - INFO - Searching metadata for: imouto ookiindamon chapter +2026-01-06 17:06:08,691 - INFO - Processing: imouto_ookiindamon_chapter_1.zip -> imouto_ookiindamon_chapter +2026-01-06 17:06:08,801 - INFO - Uploading karinsans_hidden_side_and_her_naughty_videos_chapter.cbz to /comics/pendingorganization/karinsans_hidden_side_and_her_naughty_videos_chapter/karinsans_hidden_side_and_her_naughty_videos_chapter.cbz +2026-01-06 17:06:08,845 - INFO - Deleting original /comics/pendingorganization/karinsans_hidden_side_and_her_naughty_videos_chapter_1.zip +2026-01-06 17:06:08,850 - INFO - Searching metadata for: imouto ookiindamon chapter +2026-01-06 17:06:08,913 - INFO - Processing: imouto_ookiindamon_chapter_1.zip -> imouto_ookiindamon_chapter +2026-01-06 17:06:09,015 - INFO - Processing: imouto_ookiindamon_chapter_1.zip -> imouto_ookiindamon_chapter +2026-01-06 17:06:09,330 - INFO - Uploading imouto_ookiindamon_chapter.cbz to /comics/pendingorganization/imouto_ookiindamon_chapter/imouto_ookiindamon_chapter.cbz +2026-01-06 17:06:09,412 - INFO - Deleting original /comics/pendingorganization/imouto_ookiindamon_chapter_1.zip +2026-01-06 17:06:09,428 - INFO - Searching metadata for: the romantic ritual with fox goddess yuukosan chapter +2026-01-06 17:06:09,563 - INFO - Uploading imouto_ookiindamon_chapter.cbz to /comics/pendingorganization/imouto_ookiindamon_chapter/imouto_ookiindamon_chapter.cbz +2026-01-06 17:06:09,618 - INFO - Deleting original /comics/pendingorganization/imouto_ookiindamon_chapter_1.zip +2026-01-06 17:06:09,624 - INFO - Searching metadata for: the romantic ritual with fox goddess yuukosan chapter +2026-01-06 17:06:09,660 - INFO - Uploading imouto_ookiindamon_chapter.cbz to /comics/pendingorganization/imouto_ookiindamon_chapter/imouto_ookiindamon_chapter.cbz +2026-01-06 17:06:09,724 - INFO - Processing: the_romantic_ritual_with_fox_goddess_yuukosan_chapter_1.zip -> the_romantic_ritual_with_fox_goddess_yuukosan_chapter +2026-01-06 17:06:09,784 - INFO - Deleting original /comics/pendingorganization/imouto_ookiindamon_chapter_1.zip +2026-01-06 17:06:09,791 - INFO - Searching metadata for: the romantic ritual with fox goddess yuukosan chapter +2026-01-06 17:06:09,854 - INFO - Processing: the_romantic_ritual_with_fox_goddess_yuukosan_chapter_1.zip -> the_romantic_ritual_with_fox_goddess_yuukosan_chapter +2026-01-06 17:06:09,987 - INFO - Processing: the_romantic_ritual_with_fox_goddess_yuukosan_chapter_1.zip -> the_romantic_ritual_with_fox_goddess_yuukosan_chapter +2026-01-06 17:06:10,506 - INFO - Uploading the_romantic_ritual_with_fox_goddess_yuukosan_chapter.cbz to /comics/pendingorganization/the_romantic_ritual_with_fox_goddess_yuukosan_chapter/the_romantic_ritual_with_fox_goddess_yuukosan_chapter.cbz +2026-01-06 17:06:10,560 - INFO - Uploading the_romantic_ritual_with_fox_goddess_yuukosan_chapter.cbz to /comics/pendingorganization/the_romantic_ritual_with_fox_goddess_yuukosan_chapter/the_romantic_ritual_with_fox_goddess_yuukosan_chapter.cbz +2026-01-06 17:06:10,569 - INFO - Deleting original /comics/pendingorganization/the_romantic_ritual_with_fox_goddess_yuukosan_chapter_1.zip +2026-01-06 17:06:10,596 - INFO - Deleting original /comics/pendingorganization/the_romantic_ritual_with_fox_goddess_yuukosan_chapter_1.zip +2026-01-06 17:06:10,734 - INFO - Uploading the_romantic_ritual_with_fox_goddess_yuukosan_chapter.cbz to /comics/pendingorganization/the_romantic_ritual_with_fox_goddess_yuukosan_chapter/the_romantic_ritual_with_fox_goddess_yuukosan_chapter.cbz +2026-01-06 17:06:10,829 - INFO - Deleting original /comics/pendingorganization/the_romantic_ritual_with_fox_goddess_yuukosan_chapter_1.zip +2026-01-06 17:06:10,845 - INFO - Searching metadata for: hitozuma saimin appli chapter +2026-01-06 17:06:11,002 - INFO - Processing: hitozuma_saimin_appli_chapter.cbz -> hitozuma_saimin_appli_chapter +2026-01-06 17:06:12,541 - INFO - Uploading hitozuma_saimin_appli_chapter.cbz to /comics/pendingorganization/hitozuma_saimin_appli_chapter/hitozuma_saimin_appli_chapter.cbz +2026-01-06 17:06:12,751 - INFO - Deleting original /comics/pendingorganization/hitozuma_saimin_appli_chapter/hitozuma_saimin_appli_chapter.cbz +2026-01-06 17:06:54,172 - INFO - Moved series jukujo_sentai_paiters_chapter to /comics/manga/jukujo_sentai_paiters_chapter +2026-01-06 17:06:54,178 - INFO - Moved series haunted_property_chapter to /comics/manga/haunted_property_chapter +2026-01-06 17:06:54,182 - INFO - Moved series jitsu_wa_midara_na_chounyuu_sensei_chapter to /comics/manga/jitsu_wa_midara_na_chounyuu_sensei_chapter +2026-01-06 17:06:54,187 - INFO - Moved series imouto_ookiindamon_chapter to /comics/manga/imouto_ookiindamon_chapter +2026-01-06 17:06:54,191 - INFO - Moved series i_matched_with_my_friends_mom_chapter to /comics/manga/i_matched_with_my_friends_mom_chapter +2026-01-06 17:06:54,196 - INFO - Moved series Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku to /comics/manga/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-06 17:06:54,201 - INFO - Moved series from_now_on_you_are_my_livestock_chapter to /comics/manga/from_now_on_you_are_my_livestock_chapter +2026-01-06 17:06:54,207 - INFO - Moved series crossdressing_hero_and_dancer_priestess_chapter to /comics/manga/crossdressing_hero_and_dancer_priestess_chapter +2026-01-06 17:06:54,212 - INFO - Moved series imouto_to_rekawatta_oniichan_wa_chapter to /comics/manga/imouto_to_rekawatta_oniichan_wa_chapter +2026-01-06 17:06:54,218 - INFO - Moved series Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love to /comics/manga/Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love +2026-01-06 17:06:54,224 - INFO - Moved series mrs_miho_cant_stop_cheating_chapter to /comics/manga/mrs_miho_cant_stop_cheating_chapter +2026-01-06 17:06:54,230 - INFO - Moved series jibakureichan_wa_oppai_ga_yowai_chapter to /comics/manga/jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-06 17:06:54,238 - INFO - Moved series kayanee_and_the_old_man_memories_chapter to /comics/manga/kayanee_and_the_old_man_memories_chapter +2026-01-06 17:06:54,245 - INFO - Moved series dream_mama_vs_real_mother_chapter_1b to /comics/manga/dream_mama_vs_real_mother_chapter_1b +2026-01-06 17:06:54,251 - INFO - Moved series family_plan_toono_suika_chapter to /comics/manga/family_plan_toono_suika_chapter +2026-01-06 17:06:54,255 - INFO - Moved series im_being_sex_educated_by_my_overprotective_mother_chapter to /comics/manga/im_being_sex_educated_by_my_overprotective_mother_chapter +2026-01-06 17:06:54,261 - INFO - Moved series karinsans_hidden_side_and_her_naughty_videos_chapter to /comics/manga/karinsans_hidden_side_and_her_naughty_videos_chapter +2026-01-06 17:06:54,265 - INFO - Moved series the_romantic_ritual_with_fox_goddess_yuukosan_chapter to /comics/manga/the_romantic_ritual_with_fox_goddess_yuukosan_chapter +2026-01-06 17:06:54,270 - INFO - Moved series hitozuma_saimin_appli_chapter to /comics/manga/hitozuma_saimin_appli_chapter +2026-01-06 18:03:15,958 - INFO - Starting recursive comics organization in /comics/pendingorganization... +2026-01-06 18:03:15,992 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-06 18:03:16,310 - INFO - Processing: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku.zip -> Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-06 18:03:18,678 - INFO - Uploading Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz to /comics/pendingorganization/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz +2026-01-06 18:03:19,036 - INFO - Deleting original /comics/pendingorganization/Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku.zip +2026-01-06 18:03:19,064 - INFO - Searching metadata for: haunted property chapter +2026-01-06 18:03:19,230 - INFO - Processing: haunted_property_chapter_1.zip -> haunted_property_chapter +2026-01-06 18:03:19,870 - INFO - Uploading haunted_property_chapter.cbz to /comics/pendingorganization/haunted_property_chapter/haunted_property_chapter.cbz +2026-01-06 18:03:19,942 - INFO - Deleting original /comics/pendingorganization/haunted_property_chapter_1.zip +2026-01-06 18:03:19,953 - INFO - Searching metadata for: hitozuma saimin appli chapter +2026-01-06 18:03:20,131 - INFO - Processing: hitozuma_saimin_appli_chapter_1.zip -> hitozuma_saimin_appli_chapter +2026-01-06 18:03:21,615 - INFO - Uploading hitozuma_saimin_appli_chapter.cbz to /comics/pendingorganization/hitozuma_saimin_appli_chapter/hitozuma_saimin_appli_chapter.cbz +2026-01-06 18:03:21,810 - INFO - Deleting original /comics/pendingorganization/hitozuma_saimin_appli_chapter_1.zip +2026-01-06 18:03:21,829 - INFO - Searching metadata for: kayanee and the old man memories chapter +2026-01-06 18:03:21,993 - INFO - Processing: kayanee_and_the_old_man_memories_chapter_1.zip -> kayanee_and_the_old_man_memories_chapter +2026-01-06 18:03:23,128 - INFO - Uploading kayanee_and_the_old_man_memories_chapter.cbz to /comics/pendingorganization/kayanee_and_the_old_man_memories_chapter/kayanee_and_the_old_man_memories_chapter.cbz +2026-01-06 18:03:23,315 - INFO - Deleting original /comics/pendingorganization/kayanee_and_the_old_man_memories_chapter_1.zip +2026-01-06 18:03:23,327 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter +2026-01-06 18:03:23,498 - INFO - Processing: jibakureichan_wa_oppai_ga_yowai_chapter_1.zip -> jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-06 18:03:24,678 - INFO - Uploading jibakureichan_wa_oppai_ga_yowai_chapter.cbz to /comics/pendingorganization/jibakureichan_wa_oppai_ga_yowai_chapter/jibakureichan_wa_oppai_ga_yowai_chapter.cbz +2026-01-06 18:03:24,809 - INFO - Deleting original /comics/pendingorganization/jibakureichan_wa_oppai_ga_yowai_chapter_1.zip +2026-01-06 18:03:24,822 - INFO - Searching metadata for: dream mama vs real mother chapter 1b +2026-01-06 18:03:25,037 - INFO - Processing: dream_mama_vs_real_mother_chapter_1b.zip -> dream_mama_vs_real_mother_chapter_1b +2026-01-06 18:03:25,808 - INFO - Uploading dream_mama_vs_real_mother_chapter_1b.cbz to /comics/pendingorganization/dream_mama_vs_real_mother_chapter_1b/dream_mama_vs_real_mother_chapter_1b.cbz +2026-01-06 18:03:25,933 - INFO - Deleting original /comics/pendingorganization/dream_mama_vs_real_mother_chapter_1b.zip +2026-01-06 18:03:25,954 - INFO - Searching metadata for: imouto to rekawatta oniichan wa chapter +2026-01-06 18:03:26,184 - INFO - Processing: imouto_to_rekawatta_oniichan_wa_chapter_1.zip -> imouto_to_rekawatta_oniichan_wa_chapter +2026-01-06 18:03:26,871 - INFO - Uploading imouto_to_rekawatta_oniichan_wa_chapter.cbz to /comics/pendingorganization/imouto_to_rekawatta_oniichan_wa_chapter/imouto_to_rekawatta_oniichan_wa_chapter.cbz +2026-01-06 18:03:27,012 - INFO - Deleting original /comics/pendingorganization/imouto_to_rekawatta_oniichan_wa_chapter_1.zip +2026-01-06 18:03:27,024 - INFO - Searching metadata for: jukujo sentai paiters chapter +2026-01-06 18:03:27,182 - INFO - Processing: jukujo_sentai_paiters_chapter_1.zip -> jukujo_sentai_paiters_chapter +2026-01-06 18:03:28,094 - INFO - Uploading jukujo_sentai_paiters_chapter.cbz to /comics/pendingorganization/jukujo_sentai_paiters_chapter/jukujo_sentai_paiters_chapter.cbz +2026-01-06 18:03:28,242 - INFO - Deleting original /comics/pendingorganization/jukujo_sentai_paiters_chapter_1.zip +2026-01-06 18:03:28,259 - INFO - Searching metadata for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-06 18:03:29,062 - INFO - Processing: Gachikoi shinai to Derarenai Heya _ The Room You Cant Leave Unless You Fall in True Love.zip -> Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love +2026-01-06 18:03:30,112 - INFO - Uploading Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love.cbz to /comics/pendingorganization/Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love/Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love.cbz +2026-01-06 18:03:30,178 - INFO - Deleting original /comics/pendingorganization/Gachikoi shinai to Derarenai Heya _ The Room You Cant Leave Unless You Fall in True Love.zip +2026-01-06 18:03:30,188 - INFO - Searching metadata for: mrs miho cant stop cheating chapter +2026-01-06 18:03:30,388 - INFO - Processing: mrs_miho_cant_stop_cheating_chapter_1.zip -> mrs_miho_cant_stop_cheating_chapter +2026-01-06 18:03:31,929 - INFO - Uploading mrs_miho_cant_stop_cheating_chapter.cbz to /comics/pendingorganization/mrs_miho_cant_stop_cheating_chapter/mrs_miho_cant_stop_cheating_chapter.cbz +2026-01-06 18:03:32,129 - INFO - Deleting original /comics/pendingorganization/mrs_miho_cant_stop_cheating_chapter_1.zip +2026-01-06 18:03:32,149 - INFO - Searching metadata for: jitsu wa midara na chounyuu sensei chapter +2026-01-06 18:03:32,437 - INFO - Processing: jitsu_wa_midara_na_chounyuu_sensei_chapter_1.zip -> jitsu_wa_midara_na_chounyuu_sensei_chapter +2026-01-06 18:03:32,988 - INFO - Uploading jitsu_wa_midara_na_chounyuu_sensei_chapter.cbz to /comics/pendingorganization/jitsu_wa_midara_na_chounyuu_sensei_chapter/jitsu_wa_midara_na_chounyuu_sensei_chapter.cbz +2026-01-06 18:03:33,036 - INFO - Deleting original /comics/pendingorganization/jitsu_wa_midara_na_chounyuu_sensei_chapter_1.zip +2026-01-06 18:03:33,043 - INFO - Searching metadata for: from now on you are my livestock chapter +2026-01-06 18:03:33,337 - INFO - Processing: from_now_on_you_are_my_livestock_chapter_1.zip -> from_now_on_you_are_my_livestock_chapter +2026-01-06 18:03:34,332 - INFO - Uploading from_now_on_you_are_my_livestock_chapter.cbz to /comics/pendingorganization/from_now_on_you_are_my_livestock_chapter/from_now_on_you_are_my_livestock_chapter.cbz +2026-01-06 18:03:34,477 - INFO - Deleting original /comics/pendingorganization/from_now_on_you_are_my_livestock_chapter_1.zip +2026-01-06 18:03:34,489 - INFO - Searching metadata for: family plan toono suika chapter +2026-01-06 18:03:34,655 - INFO - Processing: family_plan_toono_suika_chapter_1.zip -> family_plan_toono_suika_chapter +2026-01-06 18:03:35,175 - INFO - Uploading family_plan_toono_suika_chapter.cbz to /comics/pendingorganization/family_plan_toono_suika_chapter/family_plan_toono_suika_chapter.cbz +2026-01-06 18:03:35,251 - INFO - Deleting original /comics/pendingorganization/family_plan_toono_suika_chapter_1.zip +2026-01-06 18:03:35,259 - INFO - Searching metadata for: crossdressing hero and dancer priestess chapter +2026-01-06 18:03:35,445 - INFO - Processing: crossdressing_hero_and_dancer_priestess_chapter_1.zip -> crossdressing_hero_and_dancer_priestess_chapter +2026-01-06 18:03:36,354 - INFO - Uploading crossdressing_hero_and_dancer_priestess_chapter.cbz to /comics/pendingorganization/crossdressing_hero_and_dancer_priestess_chapter/crossdressing_hero_and_dancer_priestess_chapter.cbz +2026-01-06 18:03:36,460 - INFO - Deleting original /comics/pendingorganization/crossdressing_hero_and_dancer_priestess_chapter_1.zip +2026-01-06 18:03:36,474 - INFO - Searching metadata for: im being sex educated by my overprotective mother chapter +2026-01-06 18:03:36,711 - INFO - Processing: im_being_sex_educated_by_my_overprotective_mother_chapter_1.zip -> im_being_sex_educated_by_my_overprotective_mother_chapter +2026-01-06 18:03:37,723 - INFO - Uploading im_being_sex_educated_by_my_overprotective_mother_chapter.cbz to /comics/pendingorganization/im_being_sex_educated_by_my_overprotective_mother_chapter/im_being_sex_educated_by_my_overprotective_mother_chapter.cbz +2026-01-06 18:03:37,900 - INFO - Deleting original /comics/pendingorganization/im_being_sex_educated_by_my_overprotective_mother_chapter_1.zip +2026-01-06 18:03:37,915 - INFO - Searching metadata for: i matched with my friends mom chapter +2026-01-06 18:03:38,354 - INFO - Processing: i_matched_with_my_friends_mom_chapter_1.zip -> i_matched_with_my_friends_mom_chapter +2026-01-06 18:03:39,578 - INFO - Uploading i_matched_with_my_friends_mom_chapter.cbz to /comics/pendingorganization/i_matched_with_my_friends_mom_chapter/i_matched_with_my_friends_mom_chapter.cbz +2026-01-06 18:03:39,720 - INFO - Deleting original /comics/pendingorganization/i_matched_with_my_friends_mom_chapter_1.zip +2026-01-06 18:03:39,732 - INFO - Searching metadata for: karinsans hidden side and her naughty videos chapter +2026-01-06 18:03:39,911 - INFO - Processing: karinsans_hidden_side_and_her_naughty_videos_chapter_1.zip -> karinsans_hidden_side_and_her_naughty_videos_chapter +2026-01-06 18:03:40,326 - INFO - Uploading karinsans_hidden_side_and_her_naughty_videos_chapter.cbz to /comics/pendingorganization/karinsans_hidden_side_and_her_naughty_videos_chapter/karinsans_hidden_side_and_her_naughty_videos_chapter.cbz +2026-01-06 18:03:40,388 - INFO - Deleting original /comics/pendingorganization/karinsans_hidden_side_and_her_naughty_videos_chapter_1.zip +2026-01-06 18:03:40,400 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-06 18:03:40,573 - INFO - Processing: dirty_lessons_improving_your_manhood_chapter_1 -> dirty_lessons_improving_your_manhood_chapter +2026-01-06 18:03:41,164 - INFO - Uploading dirty_lessons_improving_your_manhood_chapter.cbz to /comics/pendingorganization/dirty_lessons_improving_your_manhood_chapter/dirty_lessons_improving_your_manhood_chapter.cbz +2026-01-06 18:03:41,258 - INFO - Deleting original /comics/pendingorganization/dirty_lessons_improving_your_manhood_chapter_1 +2026-01-06 18:03:41,324 - INFO - Searching metadata for: imouto ookiindamon chapter +2026-01-06 18:03:41,491 - INFO - Processing: imouto_ookiindamon_chapter_1.zip -> imouto_ookiindamon_chapter +2026-01-06 18:03:42,038 - INFO - Uploading imouto_ookiindamon_chapter.cbz to /comics/pendingorganization/imouto_ookiindamon_chapter/imouto_ookiindamon_chapter.cbz +2026-01-06 18:03:42,092 - INFO - Deleting original /comics/pendingorganization/imouto_ookiindamon_chapter_1.zip +2026-01-06 18:03:42,098 - INFO - Searching metadata for: the romantic ritual with fox goddess yuukosan chapter +2026-01-06 18:03:42,439 - INFO - Processing: the_romantic_ritual_with_fox_goddess_yuukosan_chapter_1.zip -> the_romantic_ritual_with_fox_goddess_yuukosan_chapter +2026-01-06 18:03:43,008 - INFO - Uploading the_romantic_ritual_with_fox_goddess_yuukosan_chapter.cbz to /comics/pendingorganization/the_romantic_ritual_with_fox_goddess_yuukosan_chapter/the_romantic_ritual_with_fox_goddess_yuukosan_chapter.cbz +2026-01-06 18:03:43,077 - INFO - Deleting original /comics/pendingorganization/the_romantic_ritual_with_fox_goddess_yuukosan_chapter_1.zip +2026-01-06 19:14:42,250 - INFO - Moved jukujo_sentai_paiters_chapter to comics:/manga/jukujo_sentai_paiters_chapter +2026-01-06 19:15:14,668 - INFO - Moved haunted_property_chapter to isolation:/comics/manga/haunted_property_chapter +2026-01-06 19:38:01,338 - INFO - Starting organization in /comics/pendingorganization... +2026-01-06 19:38:01,375 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-06 19:38:01,626 - INFO - Processing: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku.zip -> Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-06 19:38:04,562 - INFO - Searching metadata for: haunted property chapter +2026-01-06 19:38:04,718 - INFO - Processing: haunted_property_chapter_1.zip -> haunted_property_chapter +2026-01-06 19:38:05,552 - INFO - Searching metadata for: hitozuma saimin appli chapter +2026-01-06 19:38:05,695 - INFO - Processing: hitozuma_saimin_appli_chapter_1.zip -> hitozuma_saimin_appli_chapter +2026-01-06 19:38:07,660 - INFO - Searching metadata for: kayanee and the old man memories chapter +2026-01-06 19:38:07,800 - INFO - Processing: kayanee_and_the_old_man_memories_chapter_1.zip -> kayanee_and_the_old_man_memories_chapter +2026-01-06 19:38:09,183 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter +2026-01-06 19:38:09,320 - INFO - Processing: jibakureichan_wa_oppai_ga_yowai_chapter_1.zip -> jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-06 19:38:11,211 - INFO - Searching metadata for: dream mama vs real mother chapter 1b +2026-01-06 19:38:11,382 - INFO - Processing: dream_mama_vs_real_mother_chapter_1b.zip -> dream_mama_vs_real_mother_chapter_1b +2026-01-06 19:38:12,608 - INFO - Searching metadata for: imouto to rekawatta oniichan wa chapter +2026-01-06 19:38:12,807 - INFO - Processing: imouto_to_rekawatta_oniichan_wa_chapter_1.zip -> imouto_to_rekawatta_oniichan_wa_chapter +2026-01-06 19:38:13,906 - INFO - Searching metadata for: jukujo sentai paiters chapter +2026-01-06 19:38:14,036 - INFO - Processing: jukujo_sentai_paiters_chapter_1.zip -> jukujo_sentai_paiters_chapter +2026-01-06 19:38:15,049 - INFO - Searching metadata for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-06 19:38:15,251 - INFO - Processing: Gachikoi shinai to Derarenai Heya _ The Room You Cant Leave Unless You Fall in True Love.zip -> Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love +2026-01-06 19:38:16,193 - INFO - Searching metadata for: mrs miho cant stop cheating chapter +2026-01-06 19:38:16,342 - INFO - Processing: mrs_miho_cant_stop_cheating_chapter_1.zip -> mrs_miho_cant_stop_cheating_chapter +2026-01-06 19:38:18,560 - INFO - Searching metadata for: jitsu wa midara na chounyuu sensei chapter +2026-01-06 19:38:18,806 - INFO - Processing: jitsu_wa_midara_na_chounyuu_sensei_chapter_1.zip -> jitsu_wa_midara_na_chounyuu_sensei_chapter +2026-01-06 19:38:19,624 - INFO - Searching metadata for: from now on you are my livestock chapter +2026-01-06 19:38:19,890 - INFO - Processing: from_now_on_you_are_my_livestock_chapter_1.zip -> from_now_on_you_are_my_livestock_chapter +2026-01-06 19:38:21,182 - INFO - Searching metadata for: family plan toono suika chapter +2026-01-06 19:38:21,367 - INFO - Processing: family_plan_toono_suika_chapter_1.zip -> family_plan_toono_suika_chapter +2026-01-06 19:38:22,074 - INFO - Searching metadata for: crossdressing hero and dancer priestess chapter +2026-01-06 19:38:22,271 - INFO - Processing: crossdressing_hero_and_dancer_priestess_chapter_1.zip -> crossdressing_hero_and_dancer_priestess_chapter +2026-01-06 19:38:23,493 - INFO - Searching metadata for: im being sex educated by my overprotective mother chapter +2026-01-06 19:38:23,723 - INFO - Processing: im_being_sex_educated_by_my_overprotective_mother_chapter_1.zip -> im_being_sex_educated_by_my_overprotective_mother_chapter +2026-01-06 19:38:25,200 - INFO - Searching metadata for: i matched with my friends mom chapter +2026-01-06 19:38:25,491 - INFO - Processing: i_matched_with_my_friends_mom_chapter_1.zip -> i_matched_with_my_friends_mom_chapter +2026-01-06 19:38:26,993 - INFO - Searching metadata for: karinsans hidden side and her naughty videos chapter +2026-01-06 19:38:27,132 - INFO - Processing: karinsans_hidden_side_and_her_naughty_videos_chapter_1.zip -> karinsans_hidden_side_and_her_naughty_videos_chapter +2026-01-06 19:38:27,651 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-06 19:38:27,788 - INFO - Processing: dirty_lessons_improving_your_manhood_chapter_1 -> dirty_lessons_improving_your_manhood_chapter +2026-01-06 19:38:31,507 - INFO - Searching metadata for: imouto ookiindamon chapter +2026-01-06 19:38:31,650 - INFO - Processing: imouto_ookiindamon_chapter_1.zip -> imouto_ookiindamon_chapter +2026-01-06 19:38:32,360 - INFO - Searching metadata for: the romantic ritual with fox goddess yuukosan chapter +2026-01-06 19:38:32,510 - INFO - Processing: the_romantic_ritual_with_fox_goddess_yuukosan_chapter_1.zip -> the_romantic_ritual_with_fox_goddess_yuukosan_chapter +2026-01-06 19:52:25,675 - INFO - Starting metadata update in /comics/manga (Force: False)... +2026-01-06 19:52:25,744 - INFO - Updating metadata for: catch_you_at_the_indoor_beach +2026-01-06 19:52:25,745 - INFO - Searching metadata for: catch you at the indoor beach +2026-01-06 19:52:26,020 - INFO - Searching MangaUpdates for: catch you at the indoor beach +2026-01-06 19:52:27,064 - INFO - Updating metadata for: [Omapuu] Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-06 19:52:27,064 - INFO - Searching metadata for: Omapuu Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-06 19:52:27,294 - INFO - Fetching metadata from: https://nhentai.net/g/602806/ +2026-01-06 19:52:27,471 - INFO - Updating metadata for: [Kazuhiro] Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-06 19:52:27,471 - INFO - Searching metadata for: Kazuhiro Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-06 19:52:27,633 - INFO - Fetching metadata from: https://nhentai.net/g/268292/ +2026-01-06 19:52:27,881 - INFO - Updating metadata for: [Itaba Hiroshi] Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-06 19:52:27,881 - INFO - Searching metadata for: Itaba Hiroshi Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-06 19:52:28,036 - INFO - Searching metadata for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-06 19:52:28,183 - INFO - Searching MangaUpdates for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-06 19:52:29,519 - INFO - Updating metadata for: shounen_ga_otona_ni_natta_natsu +2026-01-06 19:52:29,519 - INFO - Searching metadata for: shounen ga otona ni natta natsu +2026-01-06 19:52:29,861 - INFO - Fetching metadata from: https://nhentai.net/g/571244/ +2026-01-06 19:52:30,135 - INFO - Updating metadata for: i_have_no_choice_but_to_have_sex_with_my_mother_chapter +2026-01-06 19:52:30,135 - INFO - Searching metadata for: i have no choice but to have sex with my mother chapter +2026-01-06 19:52:30,469 - INFO - Searching MangaUpdates for: i have no choice but to have sex with my mother chapter +2026-01-06 19:52:31,721 - INFO - Updating metadata for: [Airandou] Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-06 19:52:31,721 - INFO - Searching metadata for: Airandou Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-06 19:52:32,289 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-06 19:52:32,514 - INFO - Updating metadata for: on_a_stormy_night +2026-01-06 19:52:32,514 - INFO - Searching metadata for: on a stormy night +2026-01-06 19:52:32,779 - INFO - Fetching metadata from: https://nhentai.net/g/616543/ +2026-01-06 19:52:32,957 - INFO - Updating metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-06 19:52:32,957 - INFO - Searching metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-06 19:52:33,129 - INFO - Searching MangaUpdates for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-06 19:52:34,377 - INFO - Updating metadata for: last_day_of_summer_vacation_sex_sex_sex +2026-01-06 19:52:34,377 - INFO - Searching metadata for: last day of summer vacation sex sex sex +2026-01-06 19:52:34,561 - INFO - Searching MangaUpdates for: last day of summer vacation sex sex sex +2026-01-06 19:52:35,039 - INFO - Updating metadata for: SEX Shinai to Derarenai Heya desu. _ The Room You Can't Leave Until You Have Sex +2026-01-06 19:52:35,039 - INFO - Searching metadata for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-06 19:52:35,346 - INFO - Searching MangaUpdates for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-06 19:52:36,273 - INFO - Updating metadata for: [Utsutsu Minoru] Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-06 19:52:36,273 - INFO - Searching metadata for: Utsutsu Minoru Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-06 19:52:36,450 - INFO - Fetching metadata from: https://nhentai.net/g/268598/ +2026-01-06 19:52:36,617 - INFO - Updating metadata for: [Yue] Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-06 19:52:36,617 - INFO - Searching metadata for: Yue Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-06 19:52:36,894 - INFO - Fetching metadata from: https://nhentai.net/g/571461/ +2026-01-06 19:52:37,096 - INFO - Updating metadata for: mama_nge +2026-01-06 19:52:37,096 - INFO - Searching metadata for: mama nge +2026-01-06 19:52:37,259 - INFO - Fetching metadata from: https://nhentai.net/g/375142/ +2026-01-06 19:52:37,432 - INFO - Updating metadata for: a_story_about_getting_trained_by_my_older_sister +2026-01-06 19:52:37,432 - INFO - Searching metadata for: a story about getting trained by my older sister +2026-01-06 19:52:37,675 - INFO - Fetching metadata from: https://nhentai.net/g/491013/ +2026-01-06 19:52:37,852 - INFO - Updating metadata for: shake_hip +2026-01-06 19:52:37,852 - INFO - Searching metadata for: shake hip +2026-01-06 19:52:38,003 - INFO - Fetching metadata from: https://nhentai.net/g/111922/ +2026-01-06 19:52:38,173 - INFO - Updating metadata for: [Hannya san] Mom son +2026-01-06 19:52:38,174 - INFO - Searching metadata for: Hannya san Mom son +2026-01-06 19:52:38,386 - INFO - Fetching metadata from: https://nhentai.net/g/606383/ +2026-01-06 19:52:38,596 - INFO - Updating metadata for: Frustrated Share House Residents +2026-01-06 19:52:38,596 - INFO - Searching metadata for: Frustrated Share House Residents +2026-01-06 19:52:38,740 - INFO - Fetching metadata from: https://nhentai.net/g/539658/ +2026-01-06 19:52:38,919 - INFO - Updating metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-06 19:52:38,919 - INFO - Searching metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-06 19:52:39,252 - INFO - Fetching metadata from: https://nhentai.net/g/571333/ +2026-01-06 19:52:39,475 - INFO - Updating metadata for: oni_no_kyouiku_mama_ga_musuko_to_amaama_sex_made +2026-01-06 19:52:39,476 - INFO - Searching metadata for: oni no kyouiku mama ga musuko to amaama sex made +2026-01-06 19:52:39,788 - INFO - Fetching metadata from: https://nhentai.net/g/605131/ +2026-01-06 19:52:39,993 - INFO - Updating metadata for: immoral_relationship +2026-01-06 19:52:39,993 - INFO - Searching metadata for: immoral relationship +2026-01-06 19:52:40,143 - INFO - Fetching metadata from: https://nhentai.net/g/578989/ +2026-01-06 19:52:40,335 - INFO - Updating metadata for: quick_return_home +2026-01-06 19:52:40,335 - INFO - Searching metadata for: quick return home +2026-01-06 19:52:40,625 - INFO - Fetching metadata from: https://nhentai.net/g/285865/ +2026-01-06 19:52:40,792 - INFO - Updating metadata for: sister_succubus +2026-01-06 19:52:40,792 - INFO - Searching metadata for: sister succubus +2026-01-06 19:52:40,973 - INFO - Fetching metadata from: https://nhentai.net/g/619320/ +2026-01-06 19:52:41,358 - INFO - Updating metadata for: i_fell_for_a_female_ghost +2026-01-06 19:52:41,358 - INFO - Searching metadata for: i fell for a female ghost +2026-01-06 19:52:41,651 - INFO - Fetching metadata from: https://nhentai.net/g/545216/ +2026-01-06 19:52:41,849 - INFO - Updating metadata for: [Mata Ashita (Oohira Sunset)] Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun_tl] [Digital] +2026-01-06 19:52:41,849 - INFO - Searching metadata for: Mata Ashita (Oohira Sunset) Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-06 19:52:42,241 - INFO - Searching metadata for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-06 19:52:42,714 - INFO - Searching MangaUpdates for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-06 19:52:44,656 - INFO - Updating metadata for: shrine_maidens_of_injin +2026-01-06 19:52:44,657 - INFO - Searching metadata for: shrine maidens of injin +2026-01-06 19:52:44,812 - INFO - Fetching metadata from: https://nhentai.net/g/574337/ +2026-01-06 19:52:45,019 - INFO - Updating metadata for: the_daily_lives_of_an_older_brother_x_four_younger_sister +2026-01-06 19:52:45,019 - INFO - Searching metadata for: the daily lives of an older brother x four younger sister +2026-01-06 19:52:45,241 - INFO - Searching MangaUpdates for: the daily lives of an older brother x four younger sister +2026-01-06 19:52:45,892 - INFO - Updating metadata for: all_eyes_on_me +2026-01-06 19:52:45,892 - INFO - Searching metadata for: all eyes on me +2026-01-06 19:52:46,148 - INFO - Fetching metadata from: https://nhentai.net/g/311059/ +2026-01-06 19:52:46,346 - INFO - Updating metadata for: sister_was_thinking_about_her_younger_brothers_sexual_desire_chapter +2026-01-06 19:52:46,347 - INFO - Searching metadata for: sister was thinking about her younger brothers sexual desire chapter +2026-01-06 19:52:46,551 - INFO - Searching MangaUpdates for: sister was thinking about her younger brothers sexual desire chapter +2026-01-06 19:52:47,511 - INFO - Updating metadata for: two_big_tit_gals_find_a_bored_boy +2026-01-06 19:52:47,514 - INFO - Searching metadata for: two big tit gals find a bored boy +2026-01-06 19:52:47,729 - INFO - Fetching metadata from: https://nhentai.net/g/309103/ +2026-01-06 19:52:47,899 - INFO - Updating metadata for: a_sulky_older_sister_who_wants_to_concentrate_on_her_studies +2026-01-06 19:52:47,900 - INFO - Searching metadata for: a sulky older sister who wants to concentrate on her studies +2026-01-06 19:52:48,119 - INFO - Fetching metadata from: https://nhentai.net/g/530432/ +2026-01-06 19:52:48,433 - INFO - Updating metadata for: asekaki_nee_no_neteiru_aida_ni +2026-01-06 19:52:48,433 - INFO - Searching metadata for: asekaki nee no neteiru aida ni +2026-01-06 19:52:48,614 - INFO - Fetching metadata from: https://nhentai.net/g/589040/ +2026-01-06 19:52:48,778 - INFO - Updating metadata for: siblings_matchup_secret_mating_sex_life +2026-01-06 19:52:48,778 - INFO - Searching metadata for: siblings matchup secret mating sex life +2026-01-06 19:52:48,931 - INFO - Fetching metadata from: https://nhentai.net/g/497386/ +2026-01-06 19:52:49,104 - INFO - Updating metadata for: Siblings having sex in the living room like it's normal +2026-01-06 19:52:49,105 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal +2026-01-06 19:52:49,371 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal +2026-01-06 19:52:50,386 - INFO - Updating metadata for: enveloped_by_a_ghost +2026-01-06 19:52:50,386 - INFO - Searching metadata for: enveloped by a ghost +2026-01-06 19:52:50,556 - INFO - Fetching metadata from: https://nhentai.net/g/543084/ +2026-01-06 19:52:50,763 - INFO - Updating metadata for: papa_is_a_loser +2026-01-06 19:52:50,764 - INFO - Searching metadata for: papa is a loser +2026-01-06 19:52:51,015 - INFO - Fetching metadata from: https://nhentai.net/g/543091/ +2026-01-06 19:52:51,203 - INFO - Updating metadata for: hari_x2_honey +2026-01-06 19:52:51,203 - INFO - Searching metadata for: hari x2 honey +2026-01-06 19:52:51,379 - INFO - Searching MangaUpdates for: hari x2 honey +2026-01-06 19:52:51,706 - INFO - Updating metadata for: first_sperm_loving_succubus_dinner_of_cowgirl_and_creampie_sex +2026-01-06 19:52:51,706 - INFO - Searching metadata for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-06 19:52:51,893 - INFO - Searching MangaUpdates for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-06 19:52:52,400 - INFO - Updating metadata for: i_want_it_nurse_me +2026-01-06 19:52:52,401 - INFO - Searching metadata for: i want it nurse me +2026-01-06 19:52:52,691 - INFO - Fetching metadata from: https://nhentai.net/g/308512/ +2026-01-06 19:52:52,890 - INFO - Updating metadata for: fairy_feature_the_mayors_secret +2026-01-06 19:52:52,890 - INFO - Searching metadata for: fairy feature the mayors secret +2026-01-06 19:52:53,027 - INFO - Searching MangaUpdates for: fairy feature the mayors secret +2026-01-06 19:52:53,511 - INFO - Updating metadata for: starting_today_im +2026-01-06 19:52:53,512 - INFO - Searching metadata for: starting today im +2026-01-06 19:52:53,678 - INFO - Searching MangaUpdates for: starting today im +2026-01-06 19:52:53,982 - INFO - Updating metadata for: naive_little_sister_chapter +2026-01-06 19:52:53,983 - INFO - Searching metadata for: naive little sister chapter +2026-01-06 19:52:54,182 - INFO - Searching MangaUpdates for: naive little sister chapter +2026-01-06 19:52:54,593 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite +2026-01-06 19:52:54,593 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite +2026-01-06 19:52:54,866 - INFO - Fetching metadata from: https://nhentai.net/g/596920/ +2026-01-06 19:52:55,037 - INFO - Updating metadata for: autumn_lovers +2026-01-06 19:52:55,037 - INFO - Searching metadata for: autumn lovers +2026-01-06 19:52:55,180 - INFO - Fetching metadata from: https://nhentai.net/g/320576/ +2026-01-06 19:52:55,364 - INFO - Updating metadata for: training_the_older_sister_momomadoka +2026-01-06 19:52:55,364 - INFO - Searching metadata for: training the older sister momomadoka +2026-01-06 19:52:55,524 - INFO - Fetching metadata from: https://nhentai.net/g/546382/ +2026-01-06 19:52:55,738 - INFO - Updating metadata for: doukyuusei_gal_3_ningumi_to +2026-01-06 19:52:55,738 - INFO - Searching metadata for: doukyuusei gal 3 ningumi to +2026-01-06 19:52:55,912 - INFO - Searching MangaUpdates for: doukyuusei gal 3 ningumi to +2026-01-06 19:52:56,714 - INFO - Updating metadata for: Hitoduma Ane _ Married Sister +2026-01-06 19:52:56,714 - INFO - Searching metadata for: Hitoduma Ane Married Sister +2026-01-06 19:52:56,865 - INFO - Searching MangaUpdates for: Hitoduma Ane Married Sister +2026-01-06 19:52:57,817 - INFO - Updating metadata for: winter_omake_bon +2026-01-06 19:52:57,817 - INFO - Searching metadata for: winter omake bon +2026-01-06 19:52:57,986 - INFO - Fetching metadata from: https://nhentai.net/g/527207/ +2026-01-06 19:52:58,167 - INFO - Updating metadata for: perverted_hypnosis_experiment +2026-01-06 19:52:58,167 - INFO - Searching metadata for: perverted hypnosis experiment +2026-01-06 19:52:58,323 - INFO - Fetching metadata from: https://nhentai.net/g/521144/ +2026-01-06 19:52:58,501 - INFO - Updating metadata for: kyoudai_no_naka +2026-01-06 19:52:58,501 - INFO - Searching metadata for: kyoudai no naka +2026-01-06 19:52:58,750 - INFO - Fetching metadata from: https://nhentai.net/g/618441/ +2026-01-06 19:52:58,946 - INFO - Updating metadata for: sometimes_i_draw_manga +2026-01-06 19:52:58,946 - INFO - Searching metadata for: sometimes i draw manga +2026-01-06 19:52:59,123 - INFO - Fetching metadata from: https://nhentai.net/g/519608/ +2026-01-06 19:52:59,325 - INFO - Updating metadata for: apron +2026-01-06 19:52:59,325 - INFO - Searching metadata for: apron +2026-01-06 19:52:59,506 - INFO - Fetching metadata from: https://nhentai.net/g/621140/ +2026-01-06 19:52:59,665 - INFO - Updating metadata for: namaiki_na_hahaoya_o_honnin_ni_mo_kizukarezu_ni_minkan_suru_houhou +2026-01-06 19:52:59,665 - INFO - Searching metadata for: namaiki na hahaoya o honnin ni mo kizukarezu ni minkan suru houhou +2026-01-06 19:52:59,881 - INFO - Fetching metadata from: https://nhentai.net/g/298780/ +2026-01-06 19:53:00,081 - INFO - Updating metadata for: haha_ga_saikon_shitara_gikei_ga_chou_kuzu +2026-01-06 19:53:00,081 - INFO - Searching metadata for: haha ga saikon shitara gikei ga chou kuzu +2026-01-06 19:53:00,285 - INFO - Fetching metadata from: https://nhentai.net/g/532104/ +2026-01-06 19:53:00,454 - INFO - Updating metadata for: lets_do_it +2026-01-06 19:53:00,455 - INFO - Searching metadata for: lets do it +2026-01-06 19:53:00,662 - INFO - Fetching metadata from: https://nhentai.net/g/588286/ +2026-01-06 19:53:00,941 - INFO - Updating metadata for: naomi san wa ore no sefri ch 1 +2026-01-06 19:53:00,942 - INFO - Searching metadata for: naomi san wa ore no sefri ch 1 +2026-01-06 19:53:01,314 - INFO - Fetching metadata from: https://nhentai.net/g/601989/ +2026-01-06 19:53:01,555 - INFO - Updating metadata for: namaiki_sanshimai +2026-01-06 19:53:01,555 - INFO - Searching metadata for: namaiki sanshimai +2026-01-06 19:53:01,718 - INFO - Fetching metadata from: https://nhentai.net/g/560751/ +2026-01-06 19:53:01,972 - INFO - Updating metadata for: a_story_about_my_little_sister_giving_me_titjobs +2026-01-06 19:53:01,972 - INFO - Searching metadata for: a story about my little sister giving me titjobs +2026-01-06 19:53:02,288 - INFO - Fetching metadata from: https://nhentai.net/g/524952/ +2026-01-06 19:53:02,524 - INFO - Updating metadata for: fuyu_yui +2026-01-06 19:53:02,524 - INFO - Searching metadata for: fuyu yui +2026-01-06 19:53:02,713 - INFO - Fetching metadata from: https://nhentai.net/g/589928/ +2026-01-06 19:53:02,951 - INFO - Updating metadata for: love_wheel +2026-01-06 19:53:02,952 - INFO - Searching metadata for: love wheel +2026-01-06 19:53:03,153 - INFO - Fetching metadata from: https://nhentai.net/g/599889/ +2026-01-06 19:53:03,343 - INFO - Updating metadata for: [Heart Manju Mania (Akata Izuki)] Cocoro Controller 2 [English] +2026-01-06 19:53:03,343 - INFO - Searching metadata for: Heart Manju Mania (Akata Izuki) Cocoro Controller 2 [English] +2026-01-06 19:53:03,514 - INFO - Fetching metadata from: https://nhentai.net/g/599509/ +2026-01-06 19:53:03,721 - INFO - Updating metadata for: the_sex_life_of_andy_and_leyley +2026-01-06 19:53:03,722 - INFO - Searching metadata for: the sex life of andy and leyley +2026-01-06 19:53:03,959 - INFO - Fetching metadata from: https://nhentai.net/g/570099/ +2026-01-06 19:53:04,127 - INFO - Updating metadata for: mozzarella_the_new_slutty_pussy +2026-01-06 19:53:04,128 - INFO - Searching metadata for: mozzarella the new slutty pussy +2026-01-06 19:53:04,278 - INFO - Searching MangaUpdates for: mozzarella the new slutty pussy +2026-01-06 19:53:04,820 - INFO - Updating metadata for: [ABBB] How to make a family using hypnosis app [English] [Decensored] +2026-01-06 19:53:04,820 - INFO - Searching metadata for: ABBB How to make a family using hypnosis app [English] [Decensored] +2026-01-06 19:53:05,113 - INFO - Fetching metadata from: https://nhentai.net/g/431170/ +2026-01-06 19:53:05,275 - INFO - Updating metadata for: wife_pickle +2026-01-06 19:53:05,276 - INFO - Searching metadata for: wife pickle +2026-01-06 19:53:05,414 - INFO - Fetching metadata from: https://nhentai.net/g/592704/ +2026-01-06 19:53:05,586 - INFO - Updating metadata for: [MN] My Big Breast Sister +2026-01-06 19:53:05,586 - INFO - Searching metadata for: MN My Big Breast Sister +2026-01-06 19:53:05,770 - INFO - Fetching metadata from: https://nhentai.net/g/609562/ +2026-01-06 19:53:05,949 - INFO - Updating metadata for: you_must_breed_your_sisters_to_leave_this_village +2026-01-06 19:53:05,949 - INFO - Searching metadata for: you must breed your sisters to leave this village +2026-01-06 19:53:06,235 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-06 19:53:06,434 - INFO - Updating metadata for: mother_and_son_and_father_and_daughter_tonight_is_incest_night +2026-01-06 19:53:06,435 - INFO - Searching metadata for: mother and son and father and daughter tonight is incest night +2026-01-06 19:53:06,674 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-06 19:53:06,853 - INFO - Updating metadata for: [Takashima] FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-06 19:53:06,853 - INFO - Searching metadata for: Takashima FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-06 19:53:07,063 - INFO - Fetching metadata from: https://nhentai.net/g/515808/ +2026-01-06 19:53:07,239 - INFO - Updating metadata for: teasing_big_sis +2026-01-06 19:53:07,239 - INFO - Searching metadata for: teasing big sis +2026-01-06 19:53:07,390 - INFO - Fetching metadata from: https://nhentai.net/g/591734/ +2026-01-06 19:53:07,561 - INFO - Updating metadata for: forward +2026-01-06 19:53:07,562 - INFO - Searching metadata for: forward +2026-01-06 19:53:07,704 - INFO - Fetching metadata from: https://nhentai.net/g/583038/ +2026-01-06 19:53:07,889 - INFO - Updating metadata for: my_sister_doesnt_laugh +2026-01-06 19:53:07,890 - INFO - Searching metadata for: my sister doesnt laugh +2026-01-06 19:53:08,041 - INFO - Searching MangaUpdates for: my sister doesnt laugh +2026-01-06 19:53:08,324 - INFO - Updating metadata for: big_sis_wants_to_convince_her_lil_bro +2026-01-06 19:53:08,324 - INFO - Searching metadata for: big sis wants to convince her lil bro +2026-01-06 19:53:08,537 - INFO - Fetching metadata from: https://nhentai.net/g/310401/ +2026-01-06 19:53:08,700 - INFO - Updating metadata for: misato_x_shinji_baby_making +2026-01-06 19:53:08,700 - INFO - Searching metadata for: misato x shinji baby making +2026-01-06 19:53:08,870 - INFO - Searching MangaUpdates for: misato x shinji baby making +2026-01-06 19:53:09,774 - INFO - Updating metadata for: my_wife_left_me_because_i_was +2026-01-06 19:53:09,774 - INFO - Searching metadata for: my wife left me because i was +2026-01-06 19:53:10,020 - INFO - Fetching metadata from: https://nhentai.net/g/593456/ +2026-01-06 19:53:10,347 - INFO - Updating metadata for: human_manipulating_remote_control +2026-01-06 19:53:10,347 - INFO - Searching metadata for: human manipulating remote control +2026-01-06 19:53:10,493 - INFO - Fetching metadata from: https://nhentai.net/g/598745/ +2026-01-06 19:53:10,722 - INFO - Updating metadata for: bitch_na_inanesama +2026-01-06 19:53:10,722 - INFO - Searching metadata for: bitch na inanesama +2026-01-06 19:53:10,901 - INFO - Searching MangaUpdates for: bitch na inanesama +2026-01-06 19:53:11,817 - INFO - Updating metadata for: family_mischief_lewd +2026-01-06 19:53:11,818 - INFO - Searching metadata for: family mischief lewd +2026-01-06 19:53:11,971 - INFO - Fetching metadata from: https://nhentai.net/g/427171/ +2026-01-06 19:53:12,230 - INFO - Updating metadata for: [Poriuretan] Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-06 19:53:12,231 - INFO - Searching metadata for: Poriuretan Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-06 19:53:12,466 - INFO - Fetching metadata from: https://nhentai.net/g/588809/ +2026-01-06 19:53:12,632 - INFO - Updating metadata for: my_daily_life_taking_care_of_sexual_urges_with_my_naughty_sister +2026-01-06 19:53:12,632 - INFO - Searching metadata for: my daily life taking care of sexual urges with my naughty sister +2026-01-06 19:53:12,793 - INFO - Searching MangaUpdates for: my daily life taking care of sexual urges with my naughty sister +2026-01-06 19:53:14,298 - INFO - Updating metadata for: a_history_of_no_boyfriends_equal_me_at_my_age +2026-01-06 19:53:14,298 - INFO - Searching metadata for: a history of no boyfriends equal me at my age +2026-01-06 19:53:14,558 - INFO - Searching MangaUpdates for: a history of no boyfriends equal me at my age +2026-01-06 19:53:15,601 - INFO - Updating metadata for: one_familys_plan_to_save_electricty +2026-01-06 19:53:15,601 - INFO - Searching metadata for: one familys plan to save electricty +2026-01-06 19:53:15,813 - INFO - Searching MangaUpdates for: one familys plan to save electricty +2026-01-06 19:53:16,276 - INFO - Updating metadata for: what_we_have_is_strictly_business +2026-01-06 19:53:16,277 - INFO - Searching metadata for: what we have is strictly business +2026-01-06 19:53:16,497 - INFO - Fetching metadata from: https://nhentai.net/g/596884/ +2026-01-06 19:53:16,723 - INFO - Updating metadata for: [Juna Juna Juice] Pokemon Series (Pokemon) [English] +2026-01-06 19:53:16,723 - INFO - Searching metadata for: Juna Juna Juice Pokemon Series (Pokemon) [English] +2026-01-06 19:53:16,895 - INFO - Fetching metadata from: https://nhentai.net/g/595886/ +2026-01-06 19:53:17,072 - INFO - Updating metadata for: bitch_dirty_sister +2026-01-06 19:53:17,072 - INFO - Searching metadata for: bitch dirty sister +2026-01-06 19:53:17,221 - INFO - Fetching metadata from: https://nhentai.net/g/317791/ +2026-01-06 19:53:17,425 - INFO - Updating metadata for: momojiri_ocean +2026-01-06 19:53:17,425 - INFO - Searching metadata for: momojiri ocean +2026-01-06 19:53:17,579 - INFO - Fetching metadata from: https://nhentai.net/g/164037/ +2026-01-06 19:53:17,797 - INFO - Updating metadata for: daily_life_with_my_sexy_stepmom +2026-01-06 19:53:17,797 - INFO - Searching metadata for: daily life with my sexy stepmom +2026-01-06 19:53:18,028 - INFO - Fetching metadata from: https://nhentai.net/g/519708/ +2026-01-06 19:53:18,202 - INFO - Updating metadata for: older_stepsister_teaches_her_cheeky_little_stepbrother +2026-01-06 19:53:18,203 - INFO - Searching metadata for: older stepsister teaches her cheeky little stepbrother +2026-01-06 19:53:18,349 - INFO - Searching MangaUpdates for: older stepsister teaches her cheeky little stepbrother +2026-01-06 19:53:19,232 - INFO - Updating metadata for: falling_in_love_at_the_brothel.5 +2026-01-06 19:53:19,236 - INFO - Searching metadata for: falling in love at the brothel.5 +2026-01-06 19:53:19,496 - INFO - Fetching metadata from: https://nhentai.net/g/574610/ +2026-01-06 19:53:19,686 - INFO - Updating metadata for: okaasan_to_naisho +2026-01-06 19:53:19,686 - INFO - Searching metadata for: okaasan to naisho +2026-01-06 19:53:19,864 - INFO - Fetching metadata from: https://nhentai.net/g/59216/ +2026-01-06 19:53:20,050 - INFO - Updating metadata for: punishment_for_the_feral_hound_in_heat +2026-01-06 19:53:20,050 - INFO - Searching metadata for: punishment for the feral hound in heat +2026-01-06 19:53:20,305 - INFO - Fetching metadata from: https://nhentai.net/g/528611/ +2026-01-06 19:53:20,477 - INFO - Updating metadata for: my_little_sister_has_a_big_body_and_a_big_heart +2026-01-06 19:53:20,477 - INFO - Searching metadata for: my little sister has a big body and a big heart +2026-01-06 19:53:20,803 - INFO - Fetching metadata from: https://nhentai.net/g/548775/ +2026-01-06 19:53:21,011 - INFO - Updating metadata for: [Emori Uki] Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-06 19:53:21,012 - INFO - Searching metadata for: Emori Uki Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-06 19:53:21,415 - INFO - Searching metadata for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-06 19:53:21,741 - INFO - Searching MangaUpdates for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-06 19:53:23,298 - INFO - Updating metadata for: [Kazuhiro] Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-06 19:53:23,298 - INFO - Searching metadata for: Kazuhiro Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-06 19:53:23,526 - INFO - Fetching metadata from: https://nhentai.net/g/340438/ +2026-01-06 19:53:23,763 - INFO - Updating metadata for: [Fence14] Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-06 19:53:23,763 - INFO - Searching metadata for: Fence14 Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-06 19:53:24,011 - INFO - Fetching metadata from: https://nhentai.net/g/595742/ +2026-01-06 19:53:24,245 - INFO - Updating metadata for: sakusei_shuki_shuki_sisters +2026-01-06 19:53:24,245 - INFO - Searching metadata for: sakusei shuki shuki sisters +2026-01-06 19:53:24,388 - INFO - Fetching metadata from: https://nhentai.net/g/555633/ +2026-01-06 19:53:24,625 - INFO - Updating metadata for: dosukebe_saimin_revenge +2026-01-06 19:53:24,625 - INFO - Searching metadata for: dosukebe saimin revenge +2026-01-06 19:53:24,778 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-06 19:53:25,100 - INFO - Updating metadata for: A Son's Choice +2026-01-06 19:53:25,100 - INFO - Searching metadata for: A Son's Choice +2026-01-06 19:53:25,336 - INFO - Searching MangaUpdates for: A Son's Choice +2026-01-06 19:53:26,394 - INFO - Updating metadata for: [Kawamori Mizaki] Mainichi uwakidzuma {English] +2026-01-06 19:53:26,395 - INFO - Searching metadata for: Kawamori Mizaki Mainichi uwakidzuma {English] +2026-01-06 19:53:26,538 - INFO - Fetching metadata from: https://nhentai.net/g/604700/ +2026-01-06 19:53:26,760 - INFO - Updating metadata for: skin_tight_sticky_intercourse +2026-01-06 19:53:26,760 - INFO - Searching metadata for: skin tight sticky intercourse +2026-01-06 19:53:26,904 - INFO - Fetching metadata from: https://nhentai.net/g/598517/ +2026-01-06 19:53:27,133 - INFO - Updating metadata for: [Tokyo Ereki Studio (Azuma Ryo)] JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-06 19:53:27,134 - INFO - Searching metadata for: Tokyo Ereki Studio (Azuma Ryo) JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-06 19:53:27,388 - INFO - Fetching metadata from: https://nhentai.net/g/618553/ +2026-01-06 19:53:27,573 - INFO - Updating metadata for: supplementary_sex_education +2026-01-06 19:53:27,573 - INFO - Searching metadata for: supplementary sex education +2026-01-06 19:53:27,719 - INFO - Searching MangaUpdates for: supplementary sex education +2026-01-06 19:53:29,060 - INFO - Updating metadata for: taimanin_shinobu_series +2026-01-06 19:53:29,060 - INFO - Searching metadata for: taimanin shinobu series +2026-01-06 19:53:29,191 - INFO - Searching MangaUpdates for: taimanin shinobu series +2026-01-06 19:53:30,017 - INFO - Updating metadata for: [Sakai Hamachi] Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-06 19:53:30,017 - INFO - Searching metadata for: Sakai Hamachi Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-06 19:53:30,342 - INFO - Fetching metadata from: https://nhentai.net/g/602876/ +2026-01-06 19:53:30,529 - INFO - Updating metadata for: a_molester_took_everything_from_me_chapter_ +2026-01-06 19:53:30,529 - INFO - Searching metadata for: a molester took everything from me chapter +2026-01-06 19:53:30,763 - INFO - Searching MangaUpdates for: a molester took everything from me chapter +2026-01-06 19:53:31,695 - INFO - Updating metadata for: a_loner_makes_the_right_choices_and_goes_out_with_a_seiso_girl_of_course_theres_sex_as_well +2026-01-06 19:53:31,697 - INFO - Searching metadata for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-06 19:53:31,990 - INFO - Searching MangaUpdates for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-06 19:53:32,610 - INFO - Updating metadata for: maho_shojo_ointo_seba_mazu_haha_o_iyo +2026-01-06 19:53:32,610 - INFO - Searching metadata for: maho shojo ointo seba mazu haha o iyo +2026-01-06 19:53:32,796 - INFO - Fetching metadata from: https://nhentai.net/g/587203/ +2026-01-06 19:53:32,973 - INFO - Updating metadata for: paiotsu_kaede_live +2026-01-06 19:53:32,973 - INFO - Searching metadata for: paiotsu kaede live +2026-01-06 19:53:33,119 - INFO - Searching MangaUpdates for: paiotsu kaede live +2026-01-06 19:53:33,362 - INFO - Updating metadata for: otakuhime_and_the_lovey_dovey_bath +2026-01-06 19:53:33,363 - INFO - Searching metadata for: otakuhime and the lovey dovey bath +2026-01-06 19:53:33,538 - INFO - Fetching metadata from: https://nhentai.net/g/317091/ +2026-01-06 19:53:33,835 - INFO - Updating metadata for: airandou +2026-01-06 19:53:33,835 - INFO - Searching metadata for: airandou +2026-01-06 19:53:34,015 - INFO - Fetching metadata from: https://nhentai.net/g/620480/ +2026-01-06 19:53:34,218 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 19:53:34,219 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 19:53:34,426 - INFO - Fetching metadata from: https://nhentai.net/g/560447/ +2026-01-06 19:53:34,612 - INFO - Updating metadata for: virginity_prohibition_act_mandatory_baby_making +2026-01-06 19:53:34,613 - INFO - Searching metadata for: virginity prohibition act mandatory baby making +2026-01-06 19:53:34,760 - INFO - Searching MangaUpdates for: virginity prohibition act mandatory baby making +2026-01-06 19:53:35,058 - INFO - Updating metadata for: [Juna Juna Juice] Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-06 19:53:35,058 - INFO - Searching metadata for: Juna Juna Juice Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-06 19:53:35,463 - INFO - Fetching metadata from: https://nhentai.net/g/473301/ +2026-01-06 19:53:35,671 - INFO - Updating metadata for: the_lazy_and_naughty_achan_is_inviting_me +2026-01-06 19:53:35,672 - INFO - Searching metadata for: the lazy and naughty achan is inviting me +2026-01-06 19:53:35,895 - INFO - Searching MangaUpdates for: the lazy and naughty achan is inviting me +2026-01-06 19:53:36,224 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-06 19:53:36,224 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-06 19:53:36,462 - INFO - Fetching metadata from: https://nhentai.net/g/342844/ +2026-01-06 19:53:36,647 - INFO - Updating metadata for: [Nedoko de Nidone (Nashio )] Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-06 19:53:36,647 - INFO - Searching metadata for: Nedoko de Nidone (Nashio ) Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-06 19:53:36,897 - INFO - Fetching metadata from: https://nhentai.net/g/584286/ +2026-01-06 19:53:37,083 - INFO - Updating metadata for: from_nipple_bumps_to_erotic_play_with_my_sister +2026-01-06 19:53:37,083 - INFO - Searching metadata for: from nipple bumps to erotic play with my sister +2026-01-06 19:53:37,327 - INFO - Fetching metadata from: https://nhentai.net/g/587709/ +2026-01-06 19:53:37,510 - INFO - Updating metadata for: heart_mark_oome +2026-01-06 19:53:37,510 - INFO - Searching metadata for: heart mark oome +2026-01-06 19:53:37,683 - INFO - Fetching metadata from: https://nhentai.net/g/585795/ +2026-01-06 19:53:37,958 - INFO - Updating metadata for: [Airandou] Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-06 19:53:37,958 - INFO - Searching metadata for: Airandou Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-06 19:53:38,137 - INFO - Searching metadata for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-06 19:53:38,320 - INFO - Searching MangaUpdates for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-06 19:53:38,819 - INFO - Updating metadata for: everyday_conversations_with_my_big_sister +2026-01-06 19:53:38,819 - INFO - Searching metadata for: everyday conversations with my big sister +2026-01-06 19:53:38,948 - INFO - Searching MangaUpdates for: everyday conversations with my big sister +2026-01-06 19:53:39,291 - INFO - Updating metadata for: [R Koubou (Ruzi)] Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-06 19:53:39,291 - INFO - Searching metadata for: R Koubou (Ruzi) Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-06 19:53:39,560 - INFO - Searching metadata for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-06 19:53:39,836 - INFO - Searching MangaUpdates for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-06 19:53:40,509 - INFO - Updating metadata for: aneoto +2026-01-06 19:53:40,509 - INFO - Searching metadata for: aneoto +2026-01-06 19:53:40,661 - INFO - Fetching metadata from: https://nhentai.net/g/578213/ +2026-01-06 19:53:40,837 - INFO - Updating metadata for: the_making_of_a_cultt_leader +2026-01-06 19:53:40,837 - INFO - Searching metadata for: the making of a cultt leader +2026-01-06 19:53:41,033 - INFO - Searching MangaUpdates for: the making of a cultt leader +2026-01-06 19:53:41,387 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-06 19:53:41,387 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-06 19:53:41,696 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-06 19:53:41,950 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-06 19:53:43,141 - INFO - Updating metadata for: watashi_de_sukkiri_saasechaina_hatsukoi_aite_ni_tsurareru_ore +2026-01-06 19:53:43,142 - INFO - Searching metadata for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-06 19:53:43,329 - INFO - Searching MangaUpdates for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-06 19:53:43,830 - INFO - Updating metadata for: perverted_body_tight_mama_monster +2026-01-06 19:53:43,830 - INFO - Searching metadata for: perverted body tight mama monster +2026-01-06 19:53:44,019 - INFO - Fetching metadata from: https://nhentai.net/g/544653/ +2026-01-06 19:53:44,192 - INFO - Updating metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-06 19:53:44,193 - INFO - Searching metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-06 19:53:44,403 - INFO - Fetching metadata from: https://nhentai.net/g/496743/ +2026-01-06 19:53:44,637 - INFO - Updating metadata for: gishi_ni_shiborareru_hanashi +2026-01-06 19:53:44,637 - INFO - Searching metadata for: gishi ni shiborareru hanashi +2026-01-06 19:53:44,825 - INFO - Fetching metadata from: https://nhentai.net/g/588299/ +2026-01-06 19:53:44,992 - INFO - Updating metadata for: [Nishikawa Kou] Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-06 19:53:44,993 - INFO - Searching metadata for: Nishikawa Kou Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-06 19:53:45,421 - INFO - Searching metadata for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-06 19:53:45,744 - INFO - Searching MangaUpdates for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-06 19:53:46,274 - INFO - Updating metadata for: call_me_a_slut +2026-01-06 19:53:46,274 - INFO - Searching metadata for: call me a slut +2026-01-06 19:53:46,562 - INFO - Fetching metadata from: https://nhentai.net/g/532748/ +2026-01-06 19:53:46,759 - INFO - Updating metadata for: rental_mama_rental_mom +2026-01-06 19:53:46,759 - INFO - Searching metadata for: rental mama rental mom +2026-01-06 19:53:46,957 - INFO - Fetching metadata from: https://nhentai.net/g/593813/ +2026-01-06 19:53:47,149 - INFO - Updating metadata for: oshi_to_ecchina_koto_nante_muri_muri_muri +2026-01-06 19:53:47,149 - INFO - Searching metadata for: oshi to ecchina koto nante muri muri muri +2026-01-06 19:53:47,377 - INFO - Searching MangaUpdates for: oshi to ecchina koto nante muri muri muri +2026-01-06 19:53:47,691 - INFO - Updating metadata for: Kateinai Henai +2026-01-06 19:53:47,691 - INFO - Searching metadata for: Kateinai Henai +2026-01-06 19:53:47,833 - INFO - Fetching metadata from: https://nhentai.net/g/603393/ +2026-01-06 19:53:48,073 - INFO - Updating metadata for: devi_navi +2026-01-06 19:53:48,073 - INFO - Searching metadata for: devi navi +2026-01-06 19:53:48,243 - INFO - Fetching metadata from: https://nhentai.net/g/596339/ +2026-01-06 19:53:48,542 - INFO - Updating metadata for: [Chiguchi Miri] Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-06 19:53:48,543 - INFO - Searching metadata for: Chiguchi Miri Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-06 19:53:48,741 - INFO - Searching metadata for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-06 19:53:48,953 - INFO - Searching MangaUpdates for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-06 19:53:49,954 - INFO - Updating metadata for: [Muufa] One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-06 19:53:49,955 - INFO - Searching metadata for: Muufa One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-06 19:53:50,127 - INFO - Searching metadata for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-06 19:53:50,281 - INFO - Searching MangaUpdates for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-06 19:53:50,889 - INFO - Updating metadata for: leave_me_alone +2026-01-06 19:53:50,889 - INFO - Searching metadata for: leave me alone +2026-01-06 19:53:51,085 - INFO - Fetching metadata from: https://nhentai.net/g/557684/ +2026-01-06 19:53:51,252 - INFO - Updating metadata for: the_day_the_youngest_son_lost_his_virginity_thanks_to_his_mother_in_a_swimsuit +2026-01-06 19:53:51,253 - INFO - Searching metadata for: the day the youngest son lost his virginity thanks to his mother in a swimsuit +2026-01-06 19:53:51,530 - INFO - Fetching metadata from: https://nhentai.net/g/550368/ +2026-01-06 19:53:51,710 - INFO - Updating metadata for: misaesan_no_shiri_ass +2026-01-06 19:53:51,710 - INFO - Searching metadata for: misaesan no shiri ass +2026-01-06 19:53:51,871 - INFO - Searching MangaUpdates for: misaesan no shiri ass +2026-01-06 19:53:52,206 - INFO - Updating metadata for: and_then_i_will_be_a_mom +2026-01-06 19:53:52,206 - INFO - Searching metadata for: and then i will be a mom +2026-01-06 19:53:52,507 - INFO - Searching MangaUpdates for: and then i will be a mom +2026-01-06 19:53:52,832 - INFO - Updating metadata for: a_molester_took_everything_from_me +2026-01-06 19:53:52,832 - INFO - Searching metadata for: a molester took everything from me +2026-01-06 19:53:53,061 - INFO - Fetching metadata from: https://nhentai.net/g/602000/ +2026-01-06 19:53:53,238 - INFO - Updating metadata for: will_you_help_me +2026-01-06 19:53:53,238 - INFO - Searching metadata for: will you help me +2026-01-06 19:53:53,467 - INFO - Fetching metadata from: https://nhentai.net/g/277925/ +2026-01-06 19:53:53,651 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-06 19:53:53,651 - INFO - Searching metadata for: Manbou Shoten Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-06 19:53:53,851 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-06 19:53:54,028 - INFO - Updating metadata for: katamichi_catchball +2026-01-06 19:53:54,028 - INFO - Searching metadata for: katamichi catchball +2026-01-06 19:53:54,177 - INFO - Fetching metadata from: https://nhentai.net/g/528903/ +2026-01-06 19:53:54,344 - INFO - Updating metadata for: bareback_sex_life_with_da_vinci +2026-01-06 19:53:54,345 - INFO - Searching metadata for: bareback sex life with da vinci +2026-01-06 19:53:54,537 - INFO - Fetching metadata from: https://nhentai.net/g/250741/ +2026-01-06 19:53:54,699 - INFO - Updating metadata for: my_defenseless_mothers +2026-01-06 19:53:54,699 - INFO - Searching metadata for: my defenseless mothers +2026-01-06 19:53:54,845 - INFO - Searching MangaUpdates for: my defenseless mothers +2026-01-06 19:53:55,168 - INFO - Updating metadata for: a_day_for_incest +2026-01-06 19:53:55,169 - INFO - Searching metadata for: a day for incest +2026-01-06 19:53:55,416 - INFO - Fetching metadata from: https://nhentai.net/g/497650/ +2026-01-06 19:53:55,634 - INFO - Updating metadata for: jagan_no_saimin_inryoku_de_seitokai_les_joshitachi +2026-01-06 19:53:55,634 - INFO - Searching metadata for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-06 19:53:55,841 - INFO - Searching MangaUpdates for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-06 19:53:56,199 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite_chapter_ +2026-01-06 19:53:56,200 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-06 19:53:56,462 - INFO - Searching MangaUpdates for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-06 19:53:56,917 - INFO - Updating metadata for: making_a_bet_with_a_competitive_niece +2026-01-06 19:53:56,919 - INFO - Searching metadata for: making a bet with a competitive niece +2026-01-06 19:53:57,114 - INFO - Searching MangaUpdates for: making a bet with a competitive niece +2026-01-06 19:53:57,751 - INFO - Updating metadata for: [k8on] It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-06 19:53:57,751 - INFO - Searching metadata for: k8on It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-06 19:53:58,038 - INFO - Searching metadata for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-06 19:53:58,345 - INFO - Searching MangaUpdates for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-06 19:53:59,019 - INFO - Updating metadata for: the_twins_next_door_were_former_super_sentai +2026-01-06 19:53:59,019 - INFO - Searching metadata for: the twins next door were former super sentai +2026-01-06 19:53:59,219 - INFO - Fetching metadata from: https://nhentai.net/g/589945/ +2026-01-06 19:53:59,433 - INFO - Updating metadata for: nureane_batsuichi_no_ane_to_sex_o_shita_natsu_no_yoru +2026-01-06 19:53:59,434 - INFO - Searching metadata for: nureane batsuichi no ane to sex o shita natsu no yoru +2026-01-06 19:53:59,771 - INFO - Fetching metadata from: https://nhentai.net/g/413708/ +2026-01-06 19:53:59,975 - INFO - Updating metadata for: [Juna Juna Juice] Supergirl From The JJJ Universe (The Flash) [English] +2026-01-06 19:53:59,975 - INFO - Searching metadata for: Juna Juna Juice Supergirl From The JJJ Universe (The Flash) [English] +2026-01-06 19:54:00,150 - INFO - Fetching metadata from: https://nhentai.net/g/462209/ +2026-01-06 19:54:00,319 - INFO - Updating metadata for: shes_always_obstinate +2026-01-06 19:54:00,319 - INFO - Searching metadata for: shes always obstinate +2026-01-06 19:54:00,447 - INFO - Searching MangaUpdates for: shes always obstinate +2026-01-06 19:54:00,708 - INFO - Updating metadata for: mikamikuns_incestuous_situation +2026-01-06 19:54:00,708 - INFO - Searching metadata for: mikamikuns incestuous situation +2026-01-06 19:54:01,001 - INFO - Searching MangaUpdates for: mikamikuns incestuous situation +2026-01-06 19:54:01,375 - INFO - Updating metadata for: [Yue] Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-06 19:54:01,375 - INFO - Searching metadata for: Yue Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-06 19:54:01,634 - INFO - Fetching metadata from: https://nhentai.net/g/588579/ +2026-01-06 19:54:01,808 - INFO - Updating metadata for: [Pentacle(Shimipan)] I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-06 19:54:01,809 - INFO - Searching metadata for: Pentacle(Shimipan) I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-06 19:54:02,292 - INFO - Fetching metadata from: https://nhentai.net/g/603112/ +2026-01-06 19:54:02,528 - INFO - Updating metadata for: my_big_little_sister +2026-01-06 19:54:02,529 - INFO - Searching metadata for: my big little sister +2026-01-06 19:54:02,742 - INFO - Fetching metadata from: https://nhentai.net/g/619667/ +2026-01-06 19:54:02,903 - INFO - Updating metadata for: [Zandoro] A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-06 19:54:02,903 - INFO - Searching metadata for: Zandoro A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-06 19:54:03,147 - INFO - Fetching metadata from: https://nhentai.net/g/582285/ +2026-01-06 19:54:03,346 - INFO - Updating metadata for: awakening_of_the_female_instinct +2026-01-06 19:54:03,346 - INFO - Searching metadata for: awakening of the female instinct +2026-01-06 19:54:03,508 - INFO - Fetching metadata from: https://nhentai.net/g/592099/ +2026-01-06 19:54:03,830 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-06 19:54:03,830 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-06 19:54:04,061 - INFO - Fetching metadata from: https://nhentai.net/g/339531/ +2026-01-06 19:54:04,264 - INFO - Updating metadata for: friendly_brother_and_sister +2026-01-06 19:54:04,264 - INFO - Searching metadata for: friendly brother and sister +2026-01-06 19:54:04,414 - INFO - Fetching metadata from: https://nhentai.net/g/531957/ +2026-01-06 19:54:04,583 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Mechakucha Sex suru Ohanashi +2026-01-06 19:54:04,583 - INFO - Searching metadata for: Manbou Shoten Shitei ga Mechakucha Sex suru Ohanashi +2026-01-06 19:54:04,763 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-06 19:54:04,965 - INFO - Updating metadata for: you_must_breed_your_sister_to_leave_this_island +2026-01-06 19:54:04,965 - INFO - Searching metadata for: you must breed your sister to leave this island +2026-01-06 19:54:05,182 - INFO - Fetching metadata from: https://nhentai.net/g/617218/ +2026-01-06 19:54:05,340 - INFO - Updating metadata for: fence14 +2026-01-06 19:54:05,341 - INFO - Searching metadata for: fence14 +2026-01-06 19:54:05,504 - INFO - Fetching metadata from: https://nhentai.net/g/619305/ +2026-01-06 19:54:05,699 - INFO - Updating metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ _ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-06 19:54:05,700 - INFO - Searching metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-06 19:54:05,961 - INFO - Fetching metadata from: https://nhentai.net/g/400327/ +2026-01-06 19:54:06,175 - INFO - Updating metadata for: elder_sis_cosplay +2026-01-06 19:54:06,175 - INFO - Searching metadata for: elder sis cosplay +2026-01-06 19:54:06,340 - INFO - Fetching metadata from: https://nhentai.net/g/147261/ +2026-01-06 19:54:06,537 - INFO - Updating metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-06 19:54:06,537 - INFO - Searching metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-06 19:54:06,891 - INFO - Searching MangaUpdates for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-06 19:54:07,425 - INFO - Updating metadata for: maiyasans_money_issues +2026-01-06 19:54:07,425 - INFO - Searching metadata for: maiyasans money issues +2026-01-06 19:54:07,553 - INFO - Searching MangaUpdates for: maiyasans money issues +2026-01-06 19:54:07,878 - INFO - Updating metadata for: mama_cos +2026-01-06 19:54:07,878 - INFO - Searching metadata for: mama cos +2026-01-06 19:54:08,081 - INFO - Fetching metadata from: https://nhentai.net/g/618775/ +2026-01-06 19:54:08,254 - INFO - Updating metadata for: [Shirono Mahiro] Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-06 19:54:08,255 - INFO - Searching metadata for: Shirono Mahiro Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-06 19:54:08,607 - INFO - Fetching metadata from: https://nhentai.net/g/332054/ +2026-01-06 19:54:08,858 - INFO - Updating metadata for: my_dear_sister_is_mine +2026-01-06 19:54:08,858 - INFO - Searching metadata for: my dear sister is mine +2026-01-06 19:54:09,076 - INFO - Fetching metadata from: https://nhentai.net/g/567113/ +2026-01-06 19:54:09,275 - INFO - Updating metadata for: [Qdou Kei] Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-06 19:54:09,275 - INFO - Searching metadata for: Qdou Kei Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-06 19:54:09,551 - INFO - Fetching metadata from: https://nhentai.net/g/246334/ +2026-01-06 19:54:09,744 - INFO - Updating metadata for: [nounanka (Abubu)] Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-06 19:54:09,744 - INFO - Searching metadata for: nounanka (Abubu) Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-06 19:54:10,036 - INFO - Fetching metadata from: https://nhentai.net/g/601119/ +2026-01-06 19:54:10,250 - INFO - Updating metadata for: story_about_how_i_fucked_cucked_and_brought_to_bliss_some_languid_wives +2026-01-06 19:54:10,250 - INFO - Searching metadata for: story about how i fucked cucked and brought to bliss some languid wives +2026-01-06 19:54:10,507 - INFO - Fetching metadata from: https://nhentai.net/g/578155/ +2026-01-06 19:54:10,710 - INFO - Updating metadata for: [Shiki] Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-06 19:54:10,711 - INFO - Searching metadata for: Shiki Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-06 19:54:10,956 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-06 19:54:11,318 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-06 19:54:12,014 - INFO - Updating metadata for: uchi_ni_kaettara_mama_ga_zenra_de_hatsujou_shiteta_ken +2026-01-06 19:54:12,015 - INFO - Searching metadata for: uchi ni kaettara mama ga zenra de hatsujou shiteta ken +2026-01-06 19:54:12,323 - INFO - Fetching metadata from: https://nhentai.net/g/329704/ +2026-01-06 19:54:12,510 - INFO - Updating metadata for: [Teoi] Youmu-chan hypnosis sex +2026-01-06 19:54:12,510 - INFO - Searching metadata for: Teoi Youmu-chan hypnosis sex +2026-01-06 19:54:12,668 - INFO - Searching metadata for: Youmu-chan hypnosis sex +2026-01-06 19:54:12,837 - INFO - Searching MangaUpdates for: Youmu-chan hypnosis sex +2026-01-06 19:54:13,094 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-06 19:54:13,094 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-06 19:54:13,400 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-06 19:54:13,678 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-06 19:54:14,028 - INFO - Updating metadata for: similar_siblings +2026-01-06 19:54:14,029 - INFO - Searching metadata for: similar siblings +2026-01-06 19:54:14,153 - INFO - Searching MangaUpdates for: similar siblings +2026-01-06 19:54:14,410 - INFO - Updating metadata for: kiyoshiros_last_hours +2026-01-06 19:54:14,411 - INFO - Searching metadata for: kiyoshiros last hours +2026-01-06 19:54:14,545 - INFO - Searching MangaUpdates for: kiyoshiros last hours +2026-01-06 19:54:14,809 - INFO - Updating metadata for: otaku_ni_rikai_aru_gal_yome_ga_otashop +2026-01-06 19:54:14,809 - INFO - Searching metadata for: otaku ni rikai aru gal yome ga otashop +2026-01-06 19:54:15,086 - INFO - Searching MangaUpdates for: otaku ni rikai aru gal yome ga otashop +2026-01-06 19:54:15,430 - INFO - Updating metadata for: [CHOMA] Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-06 19:54:15,430 - INFO - Searching metadata for: CHOMA Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-06 19:54:15,622 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-06 19:54:15,803 - INFO - Updating metadata for: muchi_niku_jokyoushi_tomomi_mama +2026-01-06 19:54:15,804 - INFO - Searching metadata for: muchi niku jokyoushi tomomi mama +2026-01-06 19:54:15,992 - INFO - Searching MangaUpdates for: muchi niku jokyoushi tomomi mama +2026-01-06 19:54:16,319 - INFO - Updating metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru _ Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-06 19:54:16,320 - INFO - Searching metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-06 19:54:16,756 - INFO - Fetching metadata from: https://nhentai.net/g/483349/ +2026-01-06 19:54:16,932 - INFO - Updating metadata for: michelle_to_icha_love +2026-01-06 19:54:16,932 - INFO - Searching metadata for: michelle to icha love +2026-01-06 19:54:17,160 - INFO - Fetching metadata from: https://nhentai.net/g/597558/ +2026-01-06 19:54:17,362 - INFO - Updating metadata for: toshi_densetsu_bitch_joshikai +2026-01-06 19:54:17,363 - INFO - Searching metadata for: toshi densetsu bitch joshikai +2026-01-06 19:54:17,558 - INFO - Fetching metadata from: https://nhentai.net/g/558829/ +2026-01-06 19:54:17,801 - INFO - Updating metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-06 19:54:17,801 - INFO - Searching metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-06 19:54:18,171 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-06 19:54:18,371 - INFO - Updating metadata for: after_a_mouth +2026-01-06 19:54:18,372 - INFO - Searching metadata for: after a mouth +2026-01-06 19:54:18,583 - INFO - Fetching metadata from: https://nhentai.net/g/602572/ +2026-01-06 19:54:18,898 - INFO - Updating metadata for: incestism +2026-01-06 19:54:18,898 - INFO - Searching metadata for: incestism +2026-01-06 19:54:19,053 - INFO - Fetching metadata from: https://nhentai.net/g/600637/ +2026-01-06 19:54:19,246 - INFO - Updating metadata for: life_of_passionate_pleasures +2026-01-06 19:54:19,246 - INFO - Searching metadata for: life of passionate pleasures +2026-01-06 19:54:19,397 - INFO - Fetching metadata from: https://nhentai.net/g/530801/ +2026-01-06 19:54:19,575 - INFO - Updating metadata for: carnal_siblings +2026-01-06 19:54:19,575 - INFO - Searching metadata for: carnal siblings +2026-01-06 19:54:19,711 - INFO - Fetching metadata from: https://nhentai.net/g/505982/ +2026-01-06 19:54:19,920 - INFO - Updating metadata for: naughty_bunny_and_doctor +2026-01-06 19:54:19,920 - INFO - Searching metadata for: naughty bunny and doctor +2026-01-06 19:54:20,085 - INFO - Fetching metadata from: https://nhentai.net/g/577393/ +2026-01-06 19:54:20,262 - INFO - Updating metadata for: hiyake_rikujoubu_oneechan_ni_neteiru_toku_ni_itazura_suru_ecchi_manga +2026-01-06 19:54:20,262 - INFO - Searching metadata for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-06 19:54:20,474 - INFO - Searching MangaUpdates for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-06 19:54:28,719 - INFO - Updating metadata for: reiwas_penis_growth_training_chapter_1 +2026-01-06 19:54:28,719 - INFO - Searching metadata for: reiwas penis growth training chapter 1 +2026-01-06 19:54:28,847 - INFO - Searching MangaUpdates for: reiwas penis growth training chapter 1 +2026-01-06 19:54:30,709 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-06 19:54:30,710 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-06 19:54:30,977 - INFO - Searching metadata for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-06 19:54:31,225 - INFO - Searching MangaUpdates for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-06 19:54:32,322 - INFO - Updating metadata for: ninshin_wa_kinshin_de_to_iu_hou_ga_dekita_node_haha_to_imouto_to_oba_mainichi_ore_no_chi_po_o_neratte_kuru +2026-01-06 19:54:32,323 - INFO - Searching metadata for: ninshin wa kinshin de to iu hou ga dekita node haha to imouto to oba mainichi ore no chi po o neratte kuru +2026-01-06 19:54:32,720 - INFO - Fetching metadata from: https://nhentai.net/g/400868/ +2026-01-06 19:54:32,927 - INFO - Updating metadata for: ani_no_kimoi_gendou_ni_honki +2026-01-06 19:54:32,927 - INFO - Searching metadata for: ani no kimoi gendou ni honki +2026-01-06 19:54:33,194 - INFO - Fetching metadata from: https://nhentai.net/g/511424/ +2026-01-06 19:54:33,365 - INFO - Updating metadata for: gal_bitch_supremacy +2026-01-06 19:54:33,365 - INFO - Searching metadata for: gal bitch supremacy +2026-01-06 19:54:33,520 - INFO - Fetching metadata from: https://nhentai.net/g/521758/ +2026-01-06 19:54:33,820 - INFO - Updating metadata for: ane_de_shikoru_otouto_to_onaritai +2026-01-06 19:54:33,820 - INFO - Searching metadata for: ane de shikoru otouto to onaritai +2026-01-06 19:54:34,078 - INFO - Fetching metadata from: https://nhentai.net/g/505892/ +2026-01-06 19:54:34,272 - INFO - Updating metadata for: video_memories +2026-01-06 19:54:34,272 - INFO - Searching metadata for: video memories +2026-01-06 19:54:34,414 - INFO - Fetching metadata from: https://nhentai.net/g/506956/ +2026-01-06 19:54:34,712 - INFO - Updating metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-06 19:54:34,713 - INFO - Searching metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-06 19:54:34,944 - INFO - Fetching metadata from: https://nhentai.net/g/614968/ +2026-01-06 19:54:35,152 - INFO - Updating metadata for: [Niramikko Koujou] Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-06 19:54:35,152 - INFO - Searching metadata for: Niramikko Koujou Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-06 19:54:35,549 - INFO - Fetching metadata from: https://nhentai.net/g/557335/ +2026-01-06 19:54:35,803 - INFO - Updating metadata for: kanojo_no_ane_wa_gal_de_bitch_de_yariman_de +2026-01-06 19:54:35,803 - INFO - Searching metadata for: kanojo no ane wa gal de bitch de yariman de +2026-01-06 19:54:36,107 - INFO - Fetching metadata from: https://nhentai.net/g/578979/ +2026-01-06 19:54:36,283 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-06 19:54:36,284 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-06 19:54:36,507 - INFO - Fetching metadata from: https://nhentai.net/g/604729/ +2026-01-06 19:54:36,795 - INFO - Updating metadata for: musclehead_girl_cant_resist_orgasm_chapter +2026-01-06 19:54:36,795 - INFO - Searching metadata for: musclehead girl cant resist orgasm chapter +2026-01-06 19:54:36,932 - INFO - Searching MangaUpdates for: musclehead girl cant resist orgasm chapter +2026-01-06 19:54:37,475 - INFO - Updating metadata for: oneechan_wa_sore_o_yurusanai +2026-01-06 19:54:37,475 - INFO - Searching metadata for: oneechan wa sore o yurusanai +2026-01-06 19:54:37,714 - INFO - Searching MangaUpdates for: oneechan wa sore o yurusanai +2026-01-06 19:54:38,029 - INFO - Updating metadata for: pet_mimamori_camera_ni_ane_to_otouto_no_sex_ga_utsutteta +2026-01-06 19:54:38,030 - INFO - Searching metadata for: pet mimamori camera ni ane to otouto no sex ga utsutteta +2026-01-06 19:54:38,402 - INFO - Fetching metadata from: https://nhentai.net/g/312775/ +2026-01-06 19:54:38,678 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-06 19:54:38,678 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-06 19:54:38,893 - INFO - Fetching metadata from: https://nhentai.net/g/544873/ +2026-01-06 19:54:39,108 - INFO - Updating metadata for: sisters_after_mozu +2026-01-06 19:54:39,109 - INFO - Searching metadata for: sisters after mozu +2026-01-06 19:54:39,256 - INFO - Searching MangaUpdates for: sisters after mozu +2026-01-06 19:54:39,496 - INFO - Updating metadata for: otaku_hime_ga_kita_heya +2026-01-06 19:54:39,497 - INFO - Searching metadata for: otaku hime ga kita heya +2026-01-06 19:54:39,742 - INFO - Fetching metadata from: https://nhentai.net/g/347531/ +2026-01-06 19:54:39,908 - INFO - Updating metadata for: day_only_for_two +2026-01-06 19:54:39,908 - INFO - Searching metadata for: day only for two +2026-01-06 19:54:40,099 - INFO - Fetching metadata from: https://nhentai.net/g/167284/ +2026-01-06 19:54:40,262 - INFO - Updating metadata for: [Tohzai] Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-06 19:54:40,263 - INFO - Searching metadata for: Tohzai Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-06 19:54:40,469 - INFO - Fetching metadata from: https://nhentai.net/g/141024/ +2026-01-06 19:54:40,640 - INFO - Updating metadata for: whats_a_bond +2026-01-06 19:54:40,641 - INFO - Searching metadata for: whats a bond +2026-01-06 19:54:40,800 - INFO - Fetching metadata from: https://nhentai.net/g/126340/ +2026-01-06 19:54:40,975 - INFO - Updating metadata for: [Kira Hiroyoshi] Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-06 19:54:40,975 - INFO - Searching metadata for: Kira Hiroyoshi Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-06 19:54:41,289 - INFO - Searching metadata for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-06 19:54:41,596 - INFO - Searching MangaUpdates for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-06 19:54:41,969 - INFO - Updating metadata for: ore_ga_daiteru_onna_wa_imouto_kamo_shirenai +2026-01-06 19:54:41,970 - INFO - Searching metadata for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-06 19:54:42,157 - INFO - Searching MangaUpdates for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-06 19:54:42,751 - INFO - Updating metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-06 19:54:42,752 - INFO - Searching metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-06 19:54:43,072 - INFO - Fetching metadata from: https://nhentai.net/g/285698/ +2026-01-06 19:54:43,306 - INFO - Updating metadata for: lethargic_sister_tolerates_her_brothers_pranks +2026-01-06 19:54:43,307 - INFO - Searching metadata for: lethargic sister tolerates her brothers pranks +2026-01-06 19:54:43,455 - INFO - Fetching metadata from: https://nhentai.net/g/518733/ +2026-01-06 19:54:43,642 - INFO - Updating metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-06 19:54:43,642 - INFO - Searching metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-06 19:54:43,965 - INFO - Fetching metadata from: https://nhentai.net/g/579037/ +2026-01-06 19:54:44,141 - INFO - Updating metadata for: bitch_mamas_depraved_adultery +2026-01-06 19:54:44,142 - INFO - Searching metadata for: bitch mamas depraved adultery +2026-01-06 19:54:44,275 - INFO - Searching MangaUpdates for: bitch mamas depraved adultery +2026-01-06 19:54:44,528 - INFO - Updating metadata for: [Fence 14] Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-06 19:54:44,528 - INFO - Searching metadata for: Fence 14 Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-06 19:54:44,725 - INFO - Searching metadata for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-06 19:54:44,895 - INFO - Searching MangaUpdates for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-06 19:54:45,179 - INFO - Updating metadata for: onee_sama_likes_anal +2026-01-06 19:54:45,182 - INFO - Searching metadata for: onee sama likes anal +2026-01-06 19:54:45,341 - INFO - Fetching metadata from: https://nhentai.net/g/110837/ +2026-01-06 19:54:45,516 - INFO - Updating metadata for: camellia_the_first +2026-01-06 19:54:45,517 - INFO - Searching metadata for: camellia the first +2026-01-06 19:54:45,679 - INFO - Fetching metadata from: https://nhentai.net/g/521474/ +2026-01-06 19:54:45,873 - INFO - Updating metadata for: sudou_siblings_sexual_circumstances +2026-01-06 19:54:45,874 - INFO - Searching metadata for: sudou siblings sexual circumstances +2026-01-06 19:54:46,066 - INFO - Fetching metadata from: https://nhentai.net/g/326122/ +2026-01-06 19:54:46,241 - INFO - Updating metadata for: mama_and_john +2026-01-06 19:54:46,242 - INFO - Searching metadata for: mama and john +2026-01-06 19:54:46,412 - INFO - Searching MangaUpdates for: mama and john +2026-01-06 19:54:46,703 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-06 19:54:46,703 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-06 19:54:47,044 - INFO - Searching metadata for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-06 19:54:47,342 - INFO - Searching MangaUpdates for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-06 19:54:48,041 - INFO - Updating metadata for: bakunyuu_bijukujo_wa_soku_hame_koubiana +2026-01-06 19:54:48,041 - INFO - Searching metadata for: bakunyuu bijukujo wa soku hame koubiana +2026-01-06 19:54:48,243 - INFO - Fetching metadata from: https://nhentai.net/g/529021/ +2026-01-06 19:54:48,543 - INFO - Updating metadata for: joshi_seito_o_suki_houdai_ni_hame_botebara_ni_shite_ok_na_sekai +2026-01-06 19:54:48,544 - INFO - Searching metadata for: joshi seito o suki houdai ni hame botebara ni shite ok na sekai +2026-01-06 19:54:48,889 - INFO - Fetching metadata from: https://nhentai.net/g/268826/ +2026-01-06 19:54:49,106 - INFO - Updating metadata for: [Puranpuman] A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-06 19:54:49,106 - INFO - Searching metadata for: Puranpuman A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-06 19:54:49,419 - INFO - Fetching metadata from: https://nhentai.net/g/617868/ +2026-01-06 19:54:49,610 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-06 19:54:49,611 - INFO - Searching metadata for: Mustard Teikoku (Europia) A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-06 19:54:50,041 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-06 19:54:50,238 - INFO - Updating metadata for: dagashi_wa_sake_ni_au +2026-01-06 19:54:50,239 - INFO - Searching metadata for: dagashi wa sake ni au +2026-01-06 19:54:50,509 - INFO - Fetching metadata from: https://nhentai.net/g/404156/ +2026-01-06 19:54:50,753 - INFO - Updating metadata for: the_night_my_sister_disappeared_i_made_love_to_my_mother +2026-01-06 19:54:50,753 - INFO - Searching metadata for: the night my sister disappeared i made love to my mother +2026-01-06 19:54:51,045 - INFO - Fetching metadata from: https://nhentai.net/g/497835/ +2026-01-06 19:54:51,222 - INFO - Updating metadata for: tsubaki_democracy +2026-01-06 19:54:51,222 - INFO - Searching metadata for: tsubaki democracy +2026-01-06 19:54:51,375 - INFO - Fetching metadata from: https://nhentai.net/g/269196/ +2026-01-06 19:54:51,546 - INFO - Updating metadata for: this_teacher_in_her_fourtys_is_acting_like_a_young_girl_in_the_prime_if_her_life +2026-01-06 19:54:51,547 - INFO - Searching metadata for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-06 19:54:51,736 - INFO - Searching MangaUpdates for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-06 19:54:52,208 - INFO - Updating metadata for: the_story_of_a_single_career_woman_in_hers_getting_addicted_to_a_relationship +2026-01-06 19:54:52,208 - INFO - Searching metadata for: the story of a single career woman in hers getting addicted to a relationship +2026-01-06 19:54:52,529 - INFO - Searching MangaUpdates for: the story of a single career woman in hers getting addicted to a relationship +2026-01-06 19:54:53,161 - INFO - Updating metadata for: [Kouda Tomohiro] Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-06 19:54:53,161 - INFO - Searching metadata for: Kouda Tomohiro Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-06 19:54:53,338 - INFO - Fetching metadata from: https://nhentai.net/g/604149/ +2026-01-06 19:54:53,505 - INFO - Updating metadata for: [Hikagemon (Tenpiboshi)] Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-06 19:54:53,506 - INFO - Searching metadata for: Hikagemon (Tenpiboshi) Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-06 19:54:53,747 - INFO - Fetching metadata from: https://nhentai.net/g/593437/ +2026-01-06 19:54:53,916 - INFO - Updating metadata for: rural_stories +2026-01-06 19:54:53,916 - INFO - Searching metadata for: rural stories +2026-01-06 19:54:54,068 - INFO - Fetching metadata from: https://nhentai.net/g/565283/ +2026-01-06 19:54:54,260 - INFO - Updating metadata for: [Sunagawa Tara] Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-06 19:54:54,260 - INFO - Searching metadata for: Sunagawa Tara Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-06 19:54:54,714 - INFO - Fetching metadata from: https://nhentai.net/g/601543/ +2026-01-06 19:54:54,895 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-06 19:54:54,895 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-06 19:54:55,224 - INFO - Fetching metadata from: https://nhentai.net/g/573974/ +2026-01-06 19:54:55,427 - INFO - Updating metadata for: my_daily_life_as_a_streamer +2026-01-06 19:54:55,428 - INFO - Searching metadata for: my daily life as a streamer +2026-01-06 19:54:55,686 - INFO - Fetching metadata from: https://nhentai.net/g/550192/ +2026-01-06 19:54:55,866 - INFO - Updating metadata for: possessed_and_thrusting +2026-01-06 19:54:55,866 - INFO - Searching metadata for: possessed and thrusting +2026-01-06 19:54:56,019 - INFO - Fetching metadata from: https://nhentai.net/g/584236/ +2026-01-06 19:54:56,187 - INFO - Updating metadata for: a_story_about_an_oneesan_being_impregnated_by_an_incubus +2026-01-06 19:54:56,187 - INFO - Searching metadata for: a story about an oneesan being impregnated by an incubus +2026-01-06 19:54:56,430 - INFO - Searching MangaUpdates for: a story about an oneesan being impregnated by an incubus +2026-01-06 19:54:56,773 - INFO - Updating metadata for: wrung_dry_by_my_sister_every_night_under_the_sheets +2026-01-06 19:54:56,773 - INFO - Searching metadata for: wrung dry by my sister every night under the sheets +2026-01-06 19:54:56,973 - INFO - Fetching metadata from: https://nhentai.net/g/548542/ +2026-01-06 19:54:57,134 - INFO - Updating metadata for: [Yue] Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-06 19:54:57,135 - INFO - Searching metadata for: Yue Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-06 19:54:57,313 - INFO - Fetching metadata from: https://nhentai.net/g/580266/ +2026-01-06 19:54:57,495 - INFO - Updating metadata for: a_country_mother_who_makes_her_son_horny +2026-01-06 19:54:57,495 - INFO - Searching metadata for: a country mother who makes her son horny +2026-01-06 19:54:57,736 - INFO - Fetching metadata from: https://nhentai.net/g/558745/ +2026-01-06 19:54:57,915 - INFO - Updating metadata for: sister_complex +2026-01-06 19:54:57,915 - INFO - Searching metadata for: sister complex +2026-01-06 19:54:58,099 - INFO - Fetching metadata from: https://nhentai.net/g/600775/ +2026-01-06 19:54:58,296 - INFO - Updating metadata for: nao_hanpatsu_zokusei +2026-01-06 19:54:58,296 - INFO - Searching metadata for: nao hanpatsu zokusei +2026-01-06 19:54:58,452 - INFO - Searching MangaUpdates for: nao hanpatsu zokusei +2026-01-06 19:54:58,712 - INFO - Updating metadata for: [NCP (big g)] A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-06 19:54:58,712 - INFO - Searching metadata for: NCP (big g) A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-06 19:54:59,144 - INFO - Fetching metadata from: https://nhentai.net/g/514753/ +2026-01-06 19:54:59,331 - INFO - Updating metadata for: masochist_little_brothers_training +2026-01-06 19:54:59,332 - INFO - Searching metadata for: masochist little brothers training +2026-01-06 19:54:59,465 - INFO - Searching MangaUpdates for: masochist little brothers training +2026-01-06 19:54:59,857 - INFO - Updating metadata for: SISUANA - sister hole +2026-01-06 19:54:59,857 - INFO - Searching metadata for: SISUANA - sister hole +2026-01-06 19:55:00,030 - INFO - Fetching metadata from: https://nhentai.net/g/521114/ +2026-01-06 19:55:00,214 - INFO - Updating metadata for: my_neet_older_sister +2026-01-06 19:55:00,214 - INFO - Searching metadata for: my neet older sister +2026-01-06 19:55:00,390 - INFO - Fetching metadata from: https://nhentai.net/g/541946/ +2026-01-06 19:55:00,574 - INFO - Updating metadata for: narmaya_attack +2026-01-06 19:55:00,574 - INFO - Searching metadata for: narmaya attack +2026-01-06 19:55:00,713 - INFO - Fetching metadata from: https://nhentai.net/g/322620/ +2026-01-06 19:55:00,882 - INFO - Updating metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-06 19:55:00,883 - INFO - Searching metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-06 19:55:01,025 - INFO - Searching MangaUpdates for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-06 19:55:01,449 - INFO - Updating metadata for: the_country_little_sister_and_the_tempation_of_innocence +2026-01-06 19:55:01,449 - INFO - Searching metadata for: the country little sister and the tempation of innocence +2026-01-06 19:55:01,623 - INFO - Searching MangaUpdates for: the country little sister and the tempation of innocence +2026-01-06 19:55:02,246 - INFO - Updating metadata for: blood_lunch +2026-01-06 19:55:02,246 - INFO - Searching metadata for: blood lunch +2026-01-06 19:55:02,493 - INFO - Fetching metadata from: https://nhentai.net/g/578369/ +2026-01-06 19:55:02,680 - INFO - Updating metadata for: toppatsusei_bokki_shoukougun_jii_fuzen_o_soete +2026-01-06 19:55:02,682 - INFO - Searching metadata for: toppatsusei bokki shoukougun jii fuzen o soete +2026-01-06 19:55:02,850 - INFO - Fetching metadata from: https://nhentai.net/g/425210/ +2026-01-06 19:55:03,124 - INFO - Updating metadata for: Between Heave and Hell +2026-01-06 19:55:03,125 - INFO - Searching metadata for: Between Heave and Hell +2026-01-06 19:55:03,304 - INFO - Fetching metadata from: https://nhentai.net/g/125398/ +2026-01-06 19:55:03,506 - INFO - Updating metadata for: is_my_sister_seriously_ill +2026-01-06 19:55:03,506 - INFO - Searching metadata for: is my sister seriously ill +2026-01-06 19:55:03,708 - INFO - Fetching metadata from: https://nhentai.net/g/600832/ +2026-01-06 19:55:03,884 - INFO - Updating metadata for: mucchiri_megaton +2026-01-06 19:55:03,884 - INFO - Searching metadata for: mucchiri megaton +2026-01-06 19:55:04,021 - INFO - Fetching metadata from: https://nhentai.net/g/495948/ +2026-01-06 19:55:04,262 - INFO - Updating metadata for: [Kikunosukemaru] Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-06 19:55:04,262 - INFO - Searching metadata for: Kikunosukemaru Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-06 19:55:04,466 - INFO - Fetching metadata from: https://nhentai.net/g/166499/ +2026-01-06 19:55:04,660 - INFO - Updating metadata for: the_sex_life_of_the_tachibanas +2026-01-06 19:55:04,661 - INFO - Searching metadata for: the sex life of the tachibanas +2026-01-06 19:55:04,806 - INFO - Searching MangaUpdates for: the sex life of the tachibanas +2026-01-06 19:55:05,182 - INFO - Updating metadata for: [K8ON] Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-06 19:55:05,182 - INFO - Searching metadata for: K8ON Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-06 19:55:05,362 - INFO - Searching metadata for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-06 19:55:05,685 - INFO - Searching MangaUpdates for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-06 19:55:06,296 - INFO - Updating metadata for: gumi_chocolate_pine_koma_mangashuu +2026-01-06 19:55:06,297 - INFO - Searching metadata for: gumi chocolate pine koma mangashuu +2026-01-06 19:55:06,472 - INFO - Fetching metadata from: https://nhentai.net/g/541484/ +2026-01-06 19:55:06,647 - INFO - Updating metadata for: temptation_downtime +2026-01-06 19:55:06,647 - INFO - Searching metadata for: temptation downtime +2026-01-06 19:55:06,797 - INFO - Fetching metadata from: https://nhentai.net/g/238204/ +2026-01-06 19:55:06,959 - INFO - Updating metadata for: welcome_to_greenwood +2026-01-06 19:55:06,960 - INFO - Searching metadata for: welcome to greenwood +2026-01-06 19:55:07,159 - INFO - Fetching metadata from: https://nhentai.net/g/55621/ +2026-01-06 19:55:07,373 - INFO - Updating metadata for: passionate_coriander +2026-01-06 19:55:07,374 - INFO - Searching metadata for: passionate coriander +2026-01-06 19:55:07,521 - INFO - Fetching metadata from: https://nhentai.net/g/504728/ +2026-01-06 19:55:07,713 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-06 19:55:07,713 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-06 19:55:08,197 - INFO - Fetching metadata from: https://nhentai.net/g/497921/ +2026-01-06 19:55:08,405 - INFO - Updating metadata for: big_sister_with_drooping_tits_wants_to_fuck_her_little_brother +2026-01-06 19:55:08,406 - INFO - Searching metadata for: big sister with drooping tits wants to fuck her little brother +2026-01-06 19:55:08,606 - INFO - Fetching metadata from: https://nhentai.net/g/502879/ +2026-01-06 19:55:08,782 - INFO - Updating metadata for: sister_control +2026-01-06 19:55:08,782 - INFO - Searching metadata for: sister control +2026-01-06 19:55:08,969 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-06 19:55:09,226 - INFO - Updating metadata for: a_book_about_using_hypno_to_fuck_my_little_sister +2026-01-06 19:55:09,226 - INFO - Searching metadata for: a book about using hypno to fuck my little sister +2026-01-06 19:55:09,619 - INFO - Fetching metadata from: https://nhentai.net/g/545892/ +2026-01-06 19:55:09,792 - INFO - Updating metadata for: moms_body_is_mine_mother_and_son_incest_sex_behind_dads_back +2026-01-06 19:55:09,792 - INFO - Searching metadata for: moms body is mine mother and son incest sex behind dads back +2026-01-06 19:55:09,986 - INFO - Searching MangaUpdates for: moms body is mine mother and son incest sex behind dads back +2026-01-06 19:55:10,772 - INFO - Updating metadata for: dysfunctional_family +2026-01-06 19:55:10,772 - INFO - Searching metadata for: dysfunctional family +2026-01-06 19:55:10,911 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-06 19:55:11,171 - INFO - Updating metadata for: pldk +2026-01-06 19:55:11,171 - INFO - Searching metadata for: pldk +2026-01-06 19:55:11,311 - INFO - Searching MangaUpdates for: pldk +2026-01-06 19:55:11,539 - INFO - Updating metadata for: a_sticky_harem_full_of_mother_and_sisters_milk +2026-01-06 19:55:11,540 - INFO - Searching metadata for: a sticky harem full of mother and sisters milk +2026-01-06 19:55:11,754 - INFO - Searching MangaUpdates for: a sticky harem full of mother and sisters milk +2026-01-06 19:55:12,091 - INFO - Updating metadata for: [Kazuhiro] InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-06 19:55:12,091 - INFO - Searching metadata for: Kazuhiro InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-06 19:55:12,389 - INFO - Searching metadata for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-06 19:55:12,778 - INFO - Searching MangaUpdates for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-06 19:55:13,407 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge +2026-01-06 19:55:13,407 - INFO - Searching metadata for: big boobs shadowy character takes revenge +2026-01-06 19:55:13,552 - INFO - Fetching metadata from: https://nhentai.net/g/600439/ +2026-01-06 19:55:13,764 - INFO - Updating metadata for: [Shiraishi Nagisa] Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-06 19:55:13,764 - INFO - Searching metadata for: Shiraishi Nagisa Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-06 19:55:13,925 - INFO - Fetching metadata from: https://nhentai.net/g/485428/ +2026-01-06 19:55:14,090 - INFO - Updating metadata for: [Juna Juna Juice] Starting tonight Baby bear will become [English] +2026-01-06 19:55:14,090 - INFO - Searching metadata for: Juna Juna Juice Starting tonight Baby bear will become [English] +2026-01-06 19:55:14,251 - INFO - Fetching metadata from: https://nhentai.net/g/594307/ +2026-01-06 19:55:14,434 - INFO - Updating metadata for: 20_years_from_now_you_make_me_a_little_nervous_chapter_1 +2026-01-06 19:55:14,435 - INFO - Searching metadata for: 20 years from now you make me a little nervous chapter 1 +2026-01-06 19:55:14,751 - INFO - Searching MangaUpdates for: 20 years from now you make me a little nervous chapter 1 +2026-01-06 19:55:15,185 - INFO - Updating metadata for: neteiru_okaasan_o_yaritai_houdai +2026-01-06 19:55:15,185 - INFO - Searching metadata for: neteiru okaasan o yaritai houdai +2026-01-06 19:55:15,338 - INFO - Searching MangaUpdates for: neteiru okaasan o yaritai houdai +2026-01-06 19:55:15,712 - INFO - Updating metadata for: [Mizu] Jumble Family [English] (Decensored) +2026-01-06 19:55:15,712 - INFO - Searching metadata for: Mizu Jumble Family [English] (Decensored) +2026-01-06 19:55:15,913 - INFO - Fetching metadata from: https://nhentai.net/g/259903/ +2026-01-06 19:55:16,107 - INFO - Updating metadata for: Ebony Family mating practices (english) +2026-01-06 19:55:16,107 - INFO - Searching metadata for: Ebony Family mating practices (english) +2026-01-06 19:55:16,249 - INFO - Fetching metadata from: https://nhentai.net/g/600824/ +2026-01-06 19:55:16,492 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 19:55:16,492 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 19:55:16,698 - INFO - Fetching metadata from: https://nhentai.net/g/537310/ +2026-01-06 19:55:16,873 - INFO - Updating metadata for: Kosmos ga Saita Hi ni Ch +2026-01-06 19:55:16,873 - INFO - Searching metadata for: Kosmos ga Saita Hi ni Ch +2026-01-06 19:55:17,141 - INFO - Fetching metadata from: https://nhentai.net/g/603988/ +2026-01-06 19:55:17,316 - INFO - Updating metadata for: [Airandou] Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-06 19:55:17,316 - INFO - Searching metadata for: Airandou Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-06 19:55:17,546 - INFO - Fetching metadata from: https://nhentai.net/g/590457/ +2026-01-06 19:55:17,755 - INFO - Updating metadata for: oni_no_musume_datte_konkatsu_shitai +2026-01-06 19:55:17,755 - INFO - Searching metadata for: oni no musume datte konkatsu shitai +2026-01-06 19:55:17,957 - INFO - Fetching metadata from: https://nhentai.net/g/342762/ +2026-01-06 19:55:18,122 - INFO - Updating metadata for: answer_checking +2026-01-06 19:55:18,123 - INFO - Searching metadata for: answer checking +2026-01-06 19:55:18,290 - INFO - Fetching metadata from: https://nhentai.net/g/535244/ +2026-01-06 19:55:18,454 - INFO - Updating metadata for: big_sis_masturbation_life_my_masturbation_right_belongs_to_my_older_step_sisters +2026-01-06 19:55:18,454 - INFO - Searching metadata for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-06 19:55:18,667 - INFO - Searching MangaUpdates for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-06 19:55:19,404 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-06 19:55:19,404 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-06 19:55:19,704 - INFO - Searching metadata for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-06 19:55:20,006 - INFO - Searching MangaUpdates for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-06 19:55:20,742 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 19:55:20,742 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 19:55:21,010 - INFO - Fetching metadata from: https://nhentai.net/g/492943/ +2026-01-06 19:55:21,190 - INFO - Updating metadata for: maid_slave_collection +2026-01-06 19:55:21,190 - INFO - Searching metadata for: maid slave collection +2026-01-06 19:55:21,350 - INFO - Fetching metadata from: https://nhentai.net/g/601115/ +2026-01-06 19:55:21,661 - INFO - Updating metadata for: lemon_honeymoon +2026-01-06 19:55:21,662 - INFO - Searching metadata for: lemon honeymoon +2026-01-06 19:55:21,804 - INFO - Fetching metadata from: https://nhentai.net/g/524298/ +2026-01-06 19:55:21,968 - INFO - Updating metadata for: shall_i_get_it_out_for_you_mom +2026-01-06 19:55:21,968 - INFO - Searching metadata for: shall i get it out for you mom +2026-01-06 19:55:22,339 - INFO - Fetching metadata from: https://nhentai.net/g/537397/ +2026-01-06 19:55:22,538 - INFO - Updating metadata for: temptation_of_big_tits_elder_sister +2026-01-06 19:55:22,538 - INFO - Searching metadata for: temptation of big tits elder sister +2026-01-06 19:55:22,723 - INFO - Fetching metadata from: https://nhentai.net/g/512343/ +2026-01-06 19:55:22,920 - INFO - Updating metadata for: musuko_no_tomodachi_incubus_ni_miryou_sareta_yanmama_wa_mesu_ni_naru +2026-01-06 19:55:22,920 - INFO - Searching metadata for: musuko no tomodachi incubus ni miryou sareta yanmama wa mesu ni naru +2026-01-06 19:55:23,325 - INFO - Fetching metadata from: https://nhentai.net/g/521491/ +2026-01-06 19:55:23,520 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-06 19:55:23,520 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-06 19:55:23,717 - INFO - Searching metadata for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-06 19:55:23,979 - INFO - Searching MangaUpdates for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-06 19:55:25,055 - INFO - Updating metadata for: ane_to_kanojo_to_hamedori_3p_shitemita +2026-01-06 19:55:25,056 - INFO - Searching metadata for: ane to kanojo to hamedori 3p shitemita +2026-01-06 19:55:25,255 - INFO - Searching MangaUpdates for: ane to kanojo to hamedori 3p shitemita +2026-01-06 19:55:25,940 - INFO - Updating metadata for: ogre_girl_tades_favorite_things +2026-01-06 19:55:25,940 - INFO - Searching metadata for: ogre girl tades favorite things +2026-01-06 19:55:26,090 - INFO - Searching MangaUpdates for: ogre girl tades favorite things +2026-01-06 19:55:26,455 - INFO - Updating metadata for: [Izayoi no Kiki] Incest Room [English] [Tigoris Translates] +2026-01-06 19:55:26,455 - INFO - Searching metadata for: Izayoi no Kiki Incest Room [English] [Tigoris Translates] +2026-01-06 19:55:26,648 - INFO - Fetching metadata from: https://nhentai.net/g/615902/ +2026-01-06 19:55:26,987 - INFO - Updating metadata for: trap_shiki_hunting +2026-01-06 19:55:26,987 - INFO - Searching metadata for: trap shiki hunting +2026-01-06 19:55:27,147 - INFO - Searching MangaUpdates for: trap shiki hunting +2026-01-06 19:55:27,497 - INFO - Updating metadata for: hetappi_whiteday +2026-01-06 19:55:27,498 - INFO - Searching metadata for: hetappi whiteday +2026-01-06 19:55:27,625 - INFO - Searching MangaUpdates for: hetappi whiteday +2026-01-06 19:55:27,942 - INFO - Updating metadata for: family_control +2026-01-06 19:55:27,943 - INFO - Searching metadata for: family control +2026-01-06 19:55:28,118 - INFO - Fetching metadata from: https://nhentai.net/g/619340/ +2026-01-06 19:55:28,297 - INFO - Updating metadata for: a_story_of_my_oneesan_who_loves_me_too_much +2026-01-06 19:55:28,297 - INFO - Searching metadata for: a story of my oneesan who loves me too much +2026-01-06 19:55:28,591 - INFO - Searching MangaUpdates for: a story of my oneesan who loves me too much +2026-01-06 19:55:29,213 - INFO - Updating metadata for: anemone_yuusuke_chapter_1x +2026-01-06 19:55:29,213 - INFO - Searching metadata for: anemone yuusuke chapter 1x +2026-01-06 19:55:29,349 - INFO - Searching MangaUpdates for: anemone yuusuke chapter 1x +2026-01-06 19:55:29,760 - INFO - Updating metadata for: [Shirono Mahiro] Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-06 19:55:29,760 - INFO - Searching metadata for: Shirono Mahiro Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-06 19:55:30,042 - INFO - Fetching metadata from: https://nhentai.net/g/254693/ +2026-01-06 19:55:30,298 - INFO - Updating metadata for: [Itaba Hiroshi] Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-06 19:55:30,299 - INFO - Searching metadata for: Itaba Hiroshi Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-06 19:55:30,451 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-06 19:55:30,648 - INFO - Updating metadata for: [Shirono Mahiro] Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-06 19:55:30,649 - INFO - Searching metadata for: Shirono Mahiro Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-06 19:55:30,802 - INFO - Searching metadata for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-06 19:55:30,969 - INFO - Searching MangaUpdates for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-06 19:55:31,452 - INFO - Updating metadata for: twentyfour_seven_sex_with_my_stepsister +2026-01-06 19:55:31,452 - INFO - Searching metadata for: twentyfour seven sex with my stepsister +2026-01-06 19:55:31,591 - INFO - Searching MangaUpdates for: twentyfour seven sex with my stepsister +2026-01-06 19:55:31,973 - INFO - Updating metadata for: summer_stay_in +2026-01-06 19:55:31,973 - INFO - Searching metadata for: summer stay in +2026-01-06 19:55:32,259 - INFO - Fetching metadata from: https://nhentai.net/g/549172/ +2026-01-06 19:55:32,435 - INFO - Updating metadata for: ookii_gimai +2026-01-06 19:55:32,435 - INFO - Searching metadata for: ookii gimai +2026-01-06 19:55:32,581 - INFO - Fetching metadata from: https://nhentai.net/g/555115/ +2026-01-06 19:55:32,782 - INFO - Updating metadata for: sleepwalk_sex_with_your_crazy_stepbrother +2026-01-06 19:55:32,782 - INFO - Searching metadata for: sleepwalk sex with your crazy stepbrother +2026-01-06 19:55:32,958 - INFO - Fetching metadata from: https://nhentai.net/g/545786/ +2026-01-06 19:55:33,147 - INFO - Updating metadata for: [Shirono Mahiro] Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-06 19:55:33,147 - INFO - Searching metadata for: Shirono Mahiro Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-06 19:55:33,407 - INFO - Searching metadata for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-06 19:55:33,569 - INFO - Searching MangaUpdates for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-06 19:55:33,910 - INFO - Updating metadata for: selfish_boyfriend_and_the_gentle_girlfriend +2026-01-06 19:55:33,913 - INFO - Searching metadata for: selfish boyfriend and the gentle girlfriend +2026-01-06 19:55:34,106 - INFO - Fetching metadata from: https://nhentai.net/g/257734/ +2026-01-06 19:55:34,284 - INFO - Updating metadata for: [NT Labo (NT Robo)] Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-06 19:55:34,285 - INFO - Searching metadata for: NT Labo (NT Robo) Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-06 19:55:34,541 - INFO - Fetching metadata from: https://nhentai.net/g/261648/ +2026-01-06 19:55:34,782 - INFO - Updating metadata for: until_my_mother_in_law_is_pregnant +2026-01-06 19:55:34,782 - INFO - Searching metadata for: until my mother in law is pregnant +2026-01-06 19:55:35,148 - INFO - Fetching metadata from: https://nhentai.net/g/329242/ +2026-01-06 19:55:35,399 - INFO - Updating metadata for: grand_discovery_of_kink +2026-01-06 19:55:35,400 - INFO - Searching metadata for: grand discovery of kink +2026-01-06 19:55:35,554 - INFO - Searching MangaUpdates for: grand discovery of kink +2026-01-06 19:55:35,797 - INFO - Updating metadata for: happy_life_amagami +2026-01-06 19:55:35,798 - INFO - Searching metadata for: happy life amagami +2026-01-06 19:55:35,936 - INFO - Searching MangaUpdates for: happy life amagami +2026-01-06 19:55:36,210 - INFO - Updating metadata for: one_shot_a_summer +2026-01-06 19:55:36,212 - INFO - Searching metadata for: one shot a summer +2026-01-06 19:55:36,421 - INFO - Fetching metadata from: https://nhentai.net/g/500042/ +2026-01-06 19:55:36,611 - INFO - Updating metadata for: bath_time_with_big_sis +2026-01-06 19:55:36,611 - INFO - Searching metadata for: bath time with big sis +2026-01-06 19:55:36,845 - INFO - Fetching metadata from: https://nhentai.net/g/596905/ +2026-01-06 19:55:37,039 - INFO - Updating metadata for: family_x +2026-01-06 19:55:37,039 - INFO - Searching metadata for: family x +2026-01-06 19:55:37,238 - INFO - Fetching metadata from: https://nhentai.net/g/620563/ +2026-01-06 19:55:37,416 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-06 19:55:37,417 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-06 19:55:37,613 - INFO - Fetching metadata from: https://nhentai.net/g/460957/ +2026-01-06 19:55:37,806 - INFO - Updating metadata for: [Chotto B-sen] A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-06 19:55:37,807 - INFO - Searching metadata for: Chotto B-sen A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-06 19:55:38,145 - INFO - Fetching metadata from: https://nhentai.net/g/473274/ +2026-01-06 19:55:38,390 - INFO - Updating metadata for: imouto_aoba +2026-01-06 19:55:38,392 - INFO - Searching metadata for: imouto aoba +2026-01-06 19:55:38,531 - INFO - Searching MangaUpdates for: imouto aoba +2026-01-06 19:55:38,796 - INFO - Updating metadata for: onehundred_my_older_sister_who_is_sick_after_illness +2026-01-06 19:55:38,797 - INFO - Searching metadata for: onehundred my older sister who is sick after illness +2026-01-06 19:55:38,937 - INFO - Searching MangaUpdates for: onehundred my older sister who is sick after illness +2026-01-06 19:55:39,319 - INFO - Updating metadata for: that_person_and_my_queen_special_edition +2026-01-06 19:55:39,319 - INFO - Searching metadata for: that person and my queen special edition +2026-01-06 19:55:39,501 - INFO - Fetching metadata from: https://nhentai.net/g/600892/ +2026-01-06 19:55:39,692 - INFO - Updating metadata for: delima +2026-01-06 19:55:39,693 - INFO - Searching metadata for: delima +2026-01-06 19:55:39,843 - INFO - Fetching metadata from: https://nhentai.net/g/426364/ +2026-01-06 19:55:40,160 - INFO - Updating metadata for: that_bitchy_boss_is_my_fuck_buddy +2026-01-06 19:55:40,160 - INFO - Searching metadata for: that bitchy boss is my fuck buddy +2026-01-06 19:55:40,352 - INFO - Fetching metadata from: https://nhentai.net/g/577154/ +2026-01-06 19:55:40,521 - INFO - Updating metadata for: Niku Benki Kanojo no Usui-san _ 육변기 여친의 우스이 양 +2026-01-06 19:55:40,521 - INFO - Searching metadata for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-06 19:55:40,739 - INFO - Searching MangaUpdates for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-06 19:55:41,190 - INFO - Updating metadata for: a_slutty_old_lady_will_tell_how_to_make_her_slutty_daughter_fall_for_you +2026-01-06 19:55:41,190 - INFO - Searching metadata for: a slutty old lady will tell how to make her slutty daughter fall for you +2026-01-06 19:55:41,590 - INFO - Fetching metadata from: https://nhentai.net/g/393878/ +2026-01-06 19:55:41,842 - INFO - Updating metadata for: erotic_teacher_desperately +2026-01-06 19:55:41,842 - INFO - Searching metadata for: erotic teacher desperately +2026-01-06 19:55:42,020 - INFO - Fetching metadata from: https://nhentai.net/g/170003/ +2026-01-06 19:55:42,200 - INFO - Updating metadata for: [36p] Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-06 19:55:42,200 - INFO - Searching metadata for: 36p Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-06 19:55:42,358 - INFO - Fetching metadata from: https://nhentai.net/g/596901/ +2026-01-06 19:55:42,541 - INFO - Updating metadata for: the_housewives_of_the_luxury_apartment_are_to_dissatisfied_with_their_desires +2026-01-06 19:55:42,541 - INFO - Searching metadata for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-06 19:55:42,710 - INFO - Searching MangaUpdates for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-06 19:55:43,328 - INFO - Updating metadata for: surrogacy_the_case_of_yuka_shirakawa +2026-01-06 19:55:43,329 - INFO - Searching metadata for: surrogacy the case of yuka shirakawa +2026-01-06 19:55:43,490 - INFO - Fetching metadata from: https://nhentai.net/g/549276/ +2026-01-06 19:55:43,723 - INFO - Updating metadata for: [Yue] Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-06 19:55:43,723 - INFO - Searching metadata for: Yue Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-06 19:55:44,127 - INFO - Searching metadata for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-06 19:55:44,781 - INFO - Searching MangaUpdates for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-06 19:55:45,563 - INFO - Updating metadata for: my_relationship_with_my_sister +2026-01-06 19:55:45,563 - INFO - Searching metadata for: my relationship with my sister +2026-01-06 19:55:45,773 - INFO - Fetching metadata from: https://nhentai.net/g/584304/ +2026-01-06 19:55:45,997 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-06 19:55:45,998 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-06 19:55:46,321 - INFO - Fetching metadata from: https://nhentai.net/g/419645/ +2026-01-06 19:55:46,505 - INFO - Updating metadata for: living_together_with_the_buxom_female_bully +2026-01-06 19:55:46,505 - INFO - Searching metadata for: living together with the buxom female bully +2026-01-06 19:55:46,714 - INFO - Fetching metadata from: https://nhentai.net/g/610208/ +2026-01-06 19:55:46,875 - INFO - Updating metadata for: how_to_build_cock +2026-01-06 19:55:46,875 - INFO - Searching metadata for: how to build cock +2026-01-06 19:55:47,086 - INFO - Fetching metadata from: https://nhentai.net/g/381583/ +2026-01-06 19:55:47,295 - INFO - Updating metadata for: [BNO (Utagawa Yosiero)] My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-06 19:55:47,295 - INFO - Searching metadata for: BNO (Utagawa Yosiero) My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-06 19:55:47,706 - INFO - Fetching metadata from: https://nhentai.net/g/599069/ +2026-01-06 19:55:47,876 - INFO - Updating metadata for: my_oyakodon +2026-01-06 19:55:47,876 - INFO - Searching metadata for: my oyakodon +2026-01-06 19:55:48,071 - INFO - Fetching metadata from: https://nhentai.net/g/618832/ +2026-01-06 19:55:48,324 - INFO - Updating metadata for: daisuki_na_classmate_ni_shikottemorautame +2026-01-06 19:55:48,325 - INFO - Searching metadata for: daisuki na classmate ni shikottemorautame +2026-01-06 19:55:48,572 - INFO - Searching MangaUpdates for: daisuki na classmate ni shikottemorautame +2026-01-06 19:55:49,646 - INFO - Updating metadata for: enji_ni_somaru +2026-01-06 19:55:49,647 - INFO - Searching metadata for: enji ni somaru +2026-01-06 19:55:49,905 - INFO - Fetching metadata from: https://nhentai.net/g/608666/ +2026-01-06 19:55:50,251 - INFO - Updating metadata for: daily_life_with_my_sister_who_i_dont +2026-01-06 19:55:50,251 - INFO - Searching metadata for: daily life with my sister who i dont +2026-01-06 19:55:50,495 - INFO - Searching MangaUpdates for: daily life with my sister who i dont +2026-01-06 19:55:51,417 - INFO - Updating metadata for: better_than_sex +2026-01-06 19:55:51,417 - INFO - Searching metadata for: better than sex +2026-01-06 19:55:51,606 - INFO - Fetching metadata from: https://nhentai.net/g/580485/ +2026-01-06 19:55:51,834 - INFO - Updating metadata for: do_you_like_an_untidy_older_sister +2026-01-06 19:55:51,834 - INFO - Searching metadata for: do you like an untidy older sister +2026-01-06 19:55:52,072 - INFO - Searching MangaUpdates for: do you like an untidy older sister +2026-01-06 19:55:52,385 - INFO - Updating metadata for: [R Koubou (Ruzi)] Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-06 19:55:52,385 - INFO - Searching metadata for: R Koubou (Ruzi) Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-06 19:55:52,759 - INFO - Searching metadata for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-06 19:55:53,149 - INFO - Searching MangaUpdates for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-06 19:55:54,374 - INFO - Updating metadata for: sibling_with_sister +2026-01-06 19:55:54,374 - INFO - Searching metadata for: sibling with sister +2026-01-06 19:55:54,520 - INFO - Fetching metadata from: https://nhentai.net/g/501918/ +2026-01-06 19:55:54,690 - INFO - Updating metadata for: gikei_ni_netorare_ochita_tsubaki +2026-01-06 19:55:54,691 - INFO - Searching metadata for: gikei ni netorare ochita tsubaki +2026-01-06 19:55:54,879 - INFO - Searching MangaUpdates for: gikei ni netorare ochita tsubaki +2026-01-06 19:55:56,421 - INFO - Updating metadata for: the_festival_of_summers_lustful_traditions +2026-01-06 19:55:56,421 - INFO - Searching metadata for: the festival of summers lustful traditions +2026-01-06 19:55:56,600 - INFO - Searching MangaUpdates for: the festival of summers lustful traditions +2026-01-06 19:55:56,886 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-06 19:55:56,886 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-06 19:55:57,137 - INFO - Fetching metadata from: https://nhentai.net/g/502051/ +2026-01-06 19:55:57,340 - INFO - Updating metadata for: can_you_really_use_this_app_to_fuck_different_species +2026-01-06 19:55:57,342 - INFO - Searching metadata for: can you really use this app to fuck different species +2026-01-06 19:55:57,562 - INFO - Fetching metadata from: https://nhentai.net/g/517152/ +2026-01-06 19:55:57,824 - INFO - Updating metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-06 19:55:57,825 - INFO - Searching metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-06 19:55:58,304 - INFO - Fetching metadata from: https://nhentai.net/g/526048/ +2026-01-06 19:55:58,496 - INFO - Updating metadata for: boku_no_misatan +2026-01-06 19:55:58,498 - INFO - Searching metadata for: boku no misatan +2026-01-06 19:55:58,685 - INFO - Searching MangaUpdates for: boku no misatan +2026-01-06 19:55:58,968 - INFO - Updating metadata for: [Wakamatsu] Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-06 19:55:58,969 - INFO - Searching metadata for: Wakamatsu Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-06 19:55:59,282 - INFO - Fetching metadata from: https://nhentai.net/g/571054/ +2026-01-06 19:55:59,444 - INFO - Updating metadata for: thats_my_girl +2026-01-06 19:55:59,444 - INFO - Searching metadata for: thats my girl +2026-01-06 19:55:59,570 - INFO - Searching MangaUpdates for: thats my girl +2026-01-06 19:56:00,011 - INFO - Updating metadata for: [Juna Juna Juice] Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-06 19:56:00,012 - INFO - Searching metadata for: Juna Juna Juice Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-06 19:56:00,167 - INFO - Fetching metadata from: https://nhentai.net/g/594305/ +2026-01-06 19:56:00,347 - INFO - Updating metadata for: when_i_confessed_to_the_girl_im_interested_in_i_wasnt_allowed_to_go_out_with_her_but_was_given_the_ok_for_childmaking +2026-01-06 19:56:00,347 - INFO - Searching metadata for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-06 19:56:00,625 - INFO - Searching MangaUpdates for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-06 19:56:02,011 - INFO - Updating metadata for: the_mother_of_the_oba_household +2026-01-06 19:56:02,011 - INFO - Searching metadata for: the mother of the oba household +2026-01-06 19:56:02,217 - INFO - Fetching metadata from: https://nhentai.net/g/543837/ +2026-01-06 19:56:02,428 - INFO - Updating metadata for: [UC] Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-06 19:56:02,428 - INFO - Searching metadata for: UC Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-06 19:56:02,783 - INFO - Fetching metadata from: https://nhentai.net/g/399461/ +2026-01-06 19:56:02,975 - INFO - Updating metadata for: [Kudamono Monogatari (Kuroishi Ringo)] Puraibe to Joousama - Private Queen [Eng] +2026-01-06 19:56:02,975 - INFO - Searching metadata for: Kudamono Monogatari (Kuroishi Ringo) Puraibe to Joousama - Private Queen [Eng] +2026-01-06 19:56:03,160 - INFO - Fetching metadata from: https://nhentai.net/g/602699/ +2026-01-06 19:56:03,379 - INFO - Updating metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-06 19:56:03,379 - INFO - Searching metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-06 19:56:03,620 - INFO - Searching MangaUpdates for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-06 19:56:04,631 - INFO - Updating metadata for: [Hakukoukai (Shiramizu Mizuchi)] Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-06 19:56:04,632 - INFO - Searching metadata for: Hakukoukai (Shiramizu Mizuchi) Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-06 19:56:04,814 - INFO - Searching metadata for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-06 19:56:05,041 - INFO - Searching MangaUpdates for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-06 19:56:05,756 - INFO - Updating metadata for: [Sakai Hamachi] Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-06 19:56:05,756 - INFO - Searching metadata for: Sakai Hamachi Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-06 19:56:05,957 - INFO - Fetching metadata from: https://nhentai.net/g/600615/ +2026-01-06 19:56:06,150 - INFO - Updating metadata for: cock_that_makes_tomboy_sisters_tap_out +2026-01-06 19:56:06,151 - INFO - Searching metadata for: cock that makes tomboy sisters tap out +2026-01-06 19:56:06,312 - INFO - Fetching metadata from: https://nhentai.net/g/585217/ +2026-01-06 19:56:06,571 - INFO - Updating metadata for: big_sis_ayaka +2026-01-06 19:56:06,571 - INFO - Searching metadata for: big sis ayaka +2026-01-06 19:56:06,744 - INFO - Fetching metadata from: https://nhentai.net/g/608897/ +2026-01-06 19:56:07,094 - INFO - Updating metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-06 19:56:07,095 - INFO - Searching metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-06 19:56:07,319 - INFO - Fetching metadata from: https://nhentai.net/g/36404/ +2026-01-06 19:56:07,489 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge_chapter_ +2026-01-06 19:56:07,491 - INFO - Searching metadata for: big boobs shadowy character takes revenge chapter +2026-01-06 19:56:07,632 - INFO - Searching MangaUpdates for: big boobs shadowy character takes revenge chapter +2026-01-06 19:56:08,405 - INFO - Updating metadata for: [Shirono Mahiro] Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-06 19:56:08,405 - INFO - Searching metadata for: Shirono Mahiro Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-06 19:56:08,623 - INFO - Fetching metadata from: https://nhentai.net/g/184288/ +2026-01-06 19:56:08,804 - INFO - Updating metadata for: [Nacchuushou (Amazon)] Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-06 19:56:08,804 - INFO - Searching metadata for: Nacchuushou (Amazon) Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-06 19:56:09,199 - INFO - Fetching metadata from: https://nhentai.net/g/604264/ +2026-01-06 19:56:09,374 - INFO - Updating metadata for: im_his_little_sister_slave +2026-01-06 19:56:09,375 - INFO - Searching metadata for: im his little sister slave +2026-01-06 19:56:09,565 - INFO - Searching MangaUpdates for: im his little sister slave +2026-01-06 19:56:10,483 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-06 19:56:10,483 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-06 19:56:10,692 - INFO - Fetching metadata from: https://nhentai.net/g/572070/ +2026-01-06 19:56:10,884 - INFO - Updating metadata for: Sunday Funday [AI GENERATED] +2026-01-06 19:56:10,884 - INFO - Searching metadata for: Sunday Funday [AI GENERATED] +2026-01-06 19:56:11,035 - INFO - Fetching metadata from: https://nhentai.net/g/603171/ +2026-01-06 19:56:11,201 - INFO - Updating metadata for: succubus_pearl_bonus_book +2026-01-06 19:56:11,201 - INFO - Searching metadata for: succubus pearl bonus book +2026-01-06 19:56:11,356 - INFO - Fetching metadata from: https://nhentai.net/g/346344/ +2026-01-06 19:56:11,519 - INFO - Updating metadata for: sibling_switch +2026-01-06 19:56:11,519 - INFO - Searching metadata for: sibling switch +2026-01-06 19:56:11,671 - INFO - Fetching metadata from: https://nhentai.net/g/469099/ +2026-01-06 19:56:11,851 - INFO - Updating metadata for: pantsu_o_haita_dake_nanoni +2026-01-06 19:56:11,851 - INFO - Searching metadata for: pantsu o haita dake nanoni +2026-01-06 19:56:12,050 - INFO - Fetching metadata from: https://nhentai.net/g/548841/ +2026-01-06 19:56:12,263 - INFO - Updating metadata for: [Shiraishi Nagisa] Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-06 19:56:12,263 - INFO - Searching metadata for: Shiraishi Nagisa Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-06 19:56:12,492 - INFO - Fetching metadata from: https://nhentai.net/g/407654/ +2026-01-06 19:56:12,651 - INFO - Updating metadata for: gyan_colle +2026-01-06 19:56:12,651 - INFO - Searching metadata for: gyan colle +2026-01-06 19:56:12,790 - INFO - Fetching metadata from: https://nhentai.net/g/611983/ +2026-01-06 19:56:13,093 - INFO - Updating metadata for: didnt_you_know +2026-01-06 19:56:13,094 - INFO - Searching metadata for: didnt you know +2026-01-06 19:56:13,224 - INFO - Searching MangaUpdates for: didnt you know +2026-01-06 19:56:14,211 - INFO - Updating metadata for: [Yue] Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-06 19:56:14,212 - INFO - Searching metadata for: Yue Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-06 19:56:14,556 - INFO - Fetching metadata from: https://nhentai.net/g/603962/ +2026-01-06 19:56:14,742 - INFO - Updating metadata for: [Kakinotanehitotsubu (Kakino Nashiko)] Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-06 19:56:14,743 - INFO - Searching metadata for: Kakinotanehitotsubu (Kakino Nashiko) Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-06 19:56:15,037 - INFO - Fetching metadata from: https://nhentai.net/g/484501/ +2026-01-06 19:56:15,324 - INFO - Updating metadata for: steamed_bun_kiss +2026-01-06 19:56:15,324 - INFO - Searching metadata for: steamed bun kiss +2026-01-06 19:56:15,477 - INFO - Fetching metadata from: https://nhentai.net/g/166671/ +2026-01-06 19:56:15,665 - INFO - Updating metadata for: [Pipasuta (Pipa)] Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-06 19:56:15,666 - INFO - Searching metadata for: Pipasuta (Pipa) Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-06 19:56:15,914 - INFO - Fetching metadata from: https://nhentai.net/g/572821/ +2026-01-06 19:56:16,095 - INFO - Updating metadata for: madam_complex +2026-01-06 19:56:16,095 - INFO - Searching metadata for: madam complex +2026-01-06 19:56:16,238 - INFO - Fetching metadata from: https://nhentai.net/g/595613/ +2026-01-06 19:56:16,400 - INFO - Updating metadata for: [Puppukupu (Kawaisaw)] Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-06 19:56:16,400 - INFO - Searching metadata for: Puppukupu (Kawaisaw) Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-06 19:56:16,573 - INFO - Searching metadata for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-06 19:56:16,789 - INFO - Searching MangaUpdates for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-06 19:56:17,376 - INFO - Updating metadata for: aggressive_mama +2026-01-06 19:56:17,376 - INFO - Searching metadata for: aggressive mama +2026-01-06 19:56:17,518 - INFO - Fetching metadata from: https://nhentai.net/g/467578/ +2026-01-06 19:56:17,709 - INFO - Updating metadata for: [Natsuzo] The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-06 19:56:17,709 - INFO - Searching metadata for: Natsuzo The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-06 19:56:17,923 - INFO - Fetching metadata from: https://nhentai.net/g/604150/ +2026-01-06 19:56:18,086 - INFO - Updating metadata for: in_a_room_where_you_cant_leave_unless_you_have_sex +2026-01-06 19:56:18,087 - INFO - Searching metadata for: in a room where you cant leave unless you have sex +2026-01-06 19:56:18,357 - INFO - Searching MangaUpdates for: in a room where you cant leave unless you have sex +2026-01-06 19:56:19,218 - INFO - Updating metadata for: cattle_sister +2026-01-06 19:56:19,218 - INFO - Searching metadata for: cattle sister +2026-01-06 19:56:19,385 - INFO - Fetching metadata from: https://nhentai.net/g/614951/ +2026-01-06 19:56:19,579 - INFO - Updating metadata for: we_went_overboard_with_our_home_work_this_evening +2026-01-06 19:56:19,579 - INFO - Searching metadata for: we went overboard with our home work this evening +2026-01-06 19:56:19,741 - INFO - Fetching metadata from: https://nhentai.net/g/533599/ +2026-01-06 19:56:19,907 - INFO - Updating metadata for: Untitled Folder +2026-01-06 19:56:19,908 - INFO - Searching metadata for: Untitled Folder +2026-01-06 19:56:20,034 - INFO - Searching MangaUpdates for: Untitled Folder +2026-01-06 19:56:20,684 - INFO - Updating metadata for: nozo_nico_don +2026-01-06 19:56:20,687 - INFO - Searching metadata for: nozo nico don +2026-01-06 19:56:20,871 - INFO - Fetching metadata from: https://nhentai.net/g/251101/ +2026-01-06 19:56:21,040 - INFO - Updating metadata for: tonari_no_elf_mama +2026-01-06 19:56:21,041 - INFO - Searching metadata for: tonari no elf mama +2026-01-06 19:56:21,256 - INFO - Fetching metadata from: https://nhentai.net/g/614016/ +2026-01-06 19:56:21,429 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 _ Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-06 19:56:21,430 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-06 19:56:21,722 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-06 19:56:22,682 - INFO - Updating metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-06 19:56:22,682 - INFO - Searching metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-06 19:56:22,855 - INFO - Searching MangaUpdates for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-06 19:56:24,136 - INFO - Updating metadata for: boshi_syndrome +2026-01-06 19:56:24,137 - INFO - Searching metadata for: boshi syndrome +2026-01-06 19:56:24,291 - INFO - Fetching metadata from: https://nhentai.net/g/586173/ +2026-01-06 19:56:24,464 - INFO - Updating metadata for: a_trip_back_home +2026-01-06 19:56:24,464 - INFO - Searching metadata for: a trip back home +2026-01-06 19:56:24,680 - INFO - Fetching metadata from: https://nhentai.net/g/241562/ +2026-01-06 19:56:24,850 - INFO - Updating metadata for: obaman_aneman_harem +2026-01-06 19:56:24,850 - INFO - Searching metadata for: obaman aneman harem +2026-01-06 19:56:25,004 - INFO - Fetching metadata from: https://nhentai.net/g/588648/ +2026-01-06 19:56:25,297 - INFO - Updating metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-06 19:56:25,297 - INFO - Searching metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-06 19:56:25,512 - INFO - Searching MangaUpdates for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-06 19:56:26,263 - INFO - Updating metadata for: Take a break from working to fuck +2026-01-06 19:56:26,264 - INFO - Searching metadata for: Take a break from working to fuck +2026-01-06 19:56:26,511 - INFO - Searching MangaUpdates for: Take a break from working to fuck +2026-01-06 19:56:27,002 - INFO - Updating metadata for: paipai_mashimashi_gal_bitch +2026-01-06 19:56:27,010 - INFO - Searching metadata for: paipai mashimashi gal bitch +2026-01-06 19:56:27,172 - INFO - Fetching metadata from: https://nhentai.net/g/555058/ +2026-01-06 19:56:27,347 - INFO - Updating metadata for: [Okashi Koujou] That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-06 19:56:27,348 - INFO - Searching metadata for: Okashi Koujou That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-06 19:56:27,838 - INFO - Fetching metadata from: https://nhentai.net/g/603202/ +2026-01-06 19:56:28,050 - INFO - Updating metadata for: gal_ga_saimin_kakeyou_to_shitara_kaeriuchi_saremashita +2026-01-06 19:56:28,050 - INFO - Searching metadata for: gal ga saimin kakeyou to shitara kaeriuchi saremashita +2026-01-06 19:56:28,302 - INFO - Fetching metadata from: https://nhentai.net/g/575485/ +2026-01-06 19:56:28,483 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-06 19:56:28,483 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-06 19:56:28,723 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-06 19:56:28,936 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-06 19:56:29,560 - INFO - Updating metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san _ Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-06 19:56:29,561 - INFO - Searching metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-06 19:56:29,772 - INFO - Fetching metadata from: https://nhentai.net/g/467602/ +2026-01-06 19:56:29,997 - INFO - Updating metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-06 19:56:30,000 - INFO - Searching metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-06 19:56:30,203 - INFO - Fetching metadata from: https://nhentai.net/g/599736/ +2026-01-06 19:56:30,385 - INFO - Updating metadata for: the_succubus_army_invasion +2026-01-06 19:56:30,385 - INFO - Searching metadata for: the succubus army invasion +2026-01-06 19:56:30,545 - INFO - Fetching metadata from: https://nhentai.net/g/581332/ +2026-01-06 19:56:30,728 - INFO - Updating metadata for: boku_no_misatan_chapter_ +2026-01-06 19:56:30,728 - INFO - Searching metadata for: boku no misatan chapter +2026-01-06 19:56:30,901 - INFO - Searching MangaUpdates for: boku no misatan chapter +2026-01-06 19:56:31,234 - INFO - Updating metadata for: my_tall_and_busty_step_sister_gives +2026-01-06 19:56:31,235 - INFO - Searching metadata for: my tall and busty step sister gives +2026-01-06 19:56:31,424 - INFO - Fetching metadata from: https://nhentai.net/g/591571/ +2026-01-06 19:56:31,620 - INFO - Updating metadata for: about_sadako_being_stuck_on_the_computer_screen +2026-01-06 19:56:31,621 - INFO - Searching metadata for: about sadako being stuck on the computer screen +2026-01-06 19:56:31,799 - INFO - Searching MangaUpdates for: about sadako being stuck on the computer screen +2026-01-06 19:56:32,747 - INFO - Updating metadata for: when_i_lost_the_use_of_my_arms_my_brother_started +2026-01-06 19:56:32,747 - INFO - Searching metadata for: when i lost the use of my arms my brother started +2026-01-06 19:56:32,971 - INFO - Fetching metadata from: https://nhentai.net/g/546227/ +2026-01-06 19:56:33,176 - INFO - Updating metadata for: sister_ss_short_story +2026-01-06 19:56:33,176 - INFO - Searching metadata for: sister ss short story +2026-01-06 19:56:33,331 - INFO - Fetching metadata from: https://nhentai.net/g/589411/ +2026-01-06 19:56:33,572 - INFO - Updating metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC_TRANSLATIONS) +2026-01-06 19:56:33,572 - INFO - Searching metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-06 19:56:33,867 - INFO - Searching MangaUpdates for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-06 19:56:34,987 - INFO - Updating metadata for: motherly_love +2026-01-06 19:56:34,987 - INFO - Searching metadata for: motherly love +2026-01-06 19:56:35,152 - INFO - Fetching metadata from: https://nhentai.net/g/406015/ +2026-01-06 19:56:35,325 - INFO - Updating metadata for: [Satsuki Imonet] Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-06 19:56:35,325 - INFO - Searching metadata for: Satsuki Imonet Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-06 19:56:35,652 - INFO - Searching metadata for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-06 19:56:35,956 - INFO - Searching MangaUpdates for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-06 19:56:37,341 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-06 19:56:37,341 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-06 19:56:37,577 - INFO - Fetching metadata from: https://nhentai.net/g/412142/ +2026-01-06 19:56:37,785 - INFO - Updating metadata for: Suki Kirai Daisuki. Bangaihen _ Love • Hate • Really Love +2026-01-06 19:56:37,786 - INFO - Searching metadata for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-06 19:56:37,966 - INFO - Searching MangaUpdates for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-06 19:56:38,960 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-06 19:56:38,960 - INFO - Searching metadata for: Ginshio Honpo (Ginen) My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-06 19:56:39,256 - INFO - Fetching metadata from: https://nhentai.net/g/563890/ +2026-01-06 19:56:39,432 - INFO - Updating metadata for: playing_the_kings_game_with_a_tanned_jk_oneesan +2026-01-06 19:56:39,433 - INFO - Searching metadata for: playing the kings game with a tanned jk oneesan +2026-01-06 19:56:39,657 - INFO - Searching MangaUpdates for: playing the kings game with a tanned jk oneesan +2026-01-06 19:56:40,843 - INFO - Updating metadata for: 7days_toono_esuke +2026-01-06 19:56:40,844 - INFO - Searching metadata for: 7days toono esuke +2026-01-06 19:56:41,007 - INFO - Fetching metadata from: https://nhentai.net/g/575052/ +2026-01-06 19:56:41,217 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-06 19:56:41,217 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-06 19:56:41,463 - INFO - Fetching metadata from: https://nhentai.net/g/603877/ +2026-01-06 19:56:41,679 - INFO - Updating metadata for: [Kurogane Kenn] Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-06 19:56:41,679 - INFO - Searching metadata for: Kurogane Kenn Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-06 19:56:42,020 - INFO - Fetching metadata from: https://nhentai.net/g/598681/ +2026-01-06 19:56:42,193 - INFO - Updating metadata for: oneechans_toy +2026-01-06 19:56:42,193 - INFO - Searching metadata for: oneechans toy +2026-01-06 19:56:42,325 - INFO - Searching MangaUpdates for: oneechans toy +2026-01-06 19:56:42,819 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-06 19:56:42,820 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-06 19:56:43,040 - INFO - Fetching metadata from: https://nhentai.net/g/519770/ +2026-01-06 19:56:43,210 - INFO - Updating metadata for: when_dad_and_mom_arent_home +2026-01-06 19:56:43,210 - INFO - Searching metadata for: when dad and mom arent home +2026-01-06 19:56:43,390 - INFO - Searching MangaUpdates for: when dad and mom arent home +2026-01-06 19:56:44,001 - INFO - Updating metadata for: succubus_kingdom +2026-01-06 19:56:44,002 - INFO - Searching metadata for: succubus kingdom +2026-01-06 19:56:44,160 - INFO - Fetching metadata from: https://nhentai.net/g/614436/ +2026-01-06 19:56:44,435 - INFO - Updating metadata for: liko_the_mommy_pokemon +2026-01-06 19:56:44,436 - INFO - Searching metadata for: liko the mommy pokemon +2026-01-06 19:56:44,588 - INFO - Searching MangaUpdates for: liko the mommy pokemon +2026-01-06 19:56:45,232 - INFO - Updating metadata for: FireShot +2026-01-06 19:56:45,234 - INFO - Searching metadata for: FireShot +2026-01-06 19:56:45,363 - INFO - Searching MangaUpdates for: FireShot +2026-01-06 19:56:45,679 - INFO - Updating metadata for: getting_along_well_with_my_sister +2026-01-06 19:56:45,679 - INFO - Searching metadata for: getting along well with my sister +2026-01-06 19:56:45,850 - INFO - Fetching metadata from: https://nhentai.net/g/567863/ +2026-01-06 19:56:46,028 - INFO - Updating metadata for: hypnosis_satisfaction +2026-01-06 19:56:46,028 - INFO - Searching metadata for: hypnosis satisfaction +2026-01-06 19:56:46,153 - INFO - Searching MangaUpdates for: hypnosis satisfaction +2026-01-06 19:56:46,728 - INFO - Updating metadata for: otto_no_tame_no_ranshi_o_tanin_no_seishi +2026-01-06 19:56:46,728 - INFO - Searching metadata for: otto no tame no ranshi o tanin no seishi +2026-01-06 19:56:46,964 - INFO - Fetching metadata from: https://nhentai.net/g/551507/ +2026-01-06 19:56:47,147 - INFO - Updating metadata for: [Milkdou Shoukai (Milk Koubou)] Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-06 19:56:47,148 - INFO - Searching metadata for: Milkdou Shoukai (Milk Koubou) Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-06 19:56:47,547 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-06 19:56:47,713 - INFO - Updating metadata for: hikki_mother_fucker +2026-01-06 19:56:47,714 - INFO - Searching metadata for: hikki mother fucker +2026-01-06 19:56:47,858 - INFO - Fetching metadata from: https://nhentai.net/g/287208/ +2026-01-06 19:56:48,031 - INFO - Updating metadata for: meaty_minxes +2026-01-06 19:56:48,032 - INFO - Searching metadata for: meaty minxes +2026-01-06 19:56:48,169 - INFO - Searching MangaUpdates for: meaty minxes +2026-01-06 19:56:48,707 - INFO - Updating metadata for: [Zero no Mono] Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-06 19:56:48,708 - INFO - Searching metadata for: Zero no Mono Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-06 19:56:48,970 - INFO - Fetching metadata from: https://nhentai.net/g/342164/ +2026-01-06 19:56:49,139 - INFO - Updating metadata for: mob_reipu +2026-01-06 19:56:49,139 - INFO - Searching metadata for: mob reipu +2026-01-06 19:56:49,295 - INFO - Fetching metadata from: https://nhentai.net/g/311650/ +2026-01-06 19:56:49,476 - INFO - Updating metadata for: dosukebe_youkai_midaraga_no_goshujinsama +2026-01-06 19:56:49,476 - INFO - Searching metadata for: dosukebe youkai midaraga no goshujinsama +2026-01-06 19:56:49,642 - INFO - Searching MangaUpdates for: dosukebe youkai midaraga no goshujinsama +2026-01-06 19:56:50,502 - INFO - Updating metadata for: [Tobe] Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-06 19:56:50,502 - INFO - Searching metadata for: Tobe Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-06 19:56:50,686 - INFO - Fetching metadata from: https://nhentai.net/g/603385/ +2026-01-06 19:56:50,857 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-06 19:56:50,857 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-06 19:56:51,108 - INFO - Fetching metadata from: https://nhentai.net/g/600993/ +2026-01-06 19:56:51,365 - INFO - Updating metadata for: thermometer_boy_measuring_beast +2026-01-06 19:56:51,365 - INFO - Searching metadata for: thermometer boy measuring beast +2026-01-06 19:56:51,499 - INFO - Searching MangaUpdates for: thermometer boy measuring beast +2026-01-06 19:56:52,285 - INFO - Updating metadata for: broconflict +2026-01-06 19:56:52,285 - INFO - Searching metadata for: broconflict +2026-01-06 19:56:52,429 - INFO - Searching MangaUpdates for: broconflict +2026-01-06 19:56:52,757 - INFO - Updating metadata for: my_little_sisters_are_slutty_orcs +2026-01-06 19:56:52,757 - INFO - Searching metadata for: my little sisters are slutty orcs +2026-01-06 19:56:52,946 - INFO - Fetching metadata from: https://nhentai.net/g/475987/ +2026-01-06 19:56:53,122 - INFO - Updating metadata for: [Merenge Tenmondai (Kugurofu)] D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-06 19:56:53,123 - INFO - Searching metadata for: Merenge Tenmondai (Kugurofu) D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-06 19:56:53,431 - INFO - Fetching metadata from: https://nhentai.net/g/620725/ +2026-01-06 19:56:53,606 - INFO - Updating metadata for: [Nishikawa Kou] Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-06 19:56:53,607 - INFO - Searching metadata for: Nishikawa Kou Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-06 19:56:53,888 - INFO - Fetching metadata from: https://nhentai.net/g/600838/ +2026-01-06 19:56:54,063 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-06 19:56:54,063 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-06 19:56:54,248 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-06 19:56:54,422 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-06 19:56:55,435 - INFO - Updating metadata for: my_sister_uses_my_trash_as_masturbation_material +2026-01-06 19:56:55,436 - INFO - Searching metadata for: my sister uses my trash as masturbation material +2026-01-06 19:56:55,674 - INFO - Fetching metadata from: https://nhentai.net/g/520519/ +2026-01-06 19:56:55,860 - INFO - Updating metadata for: [Pino] Boin [English] +2026-01-06 19:56:55,861 - INFO - Searching metadata for: Pino Boin [English] +2026-01-06 19:56:56,001 - INFO - Fetching metadata from: https://nhentai.net/g/595922/ +2026-01-06 19:56:56,201 - INFO - Updating metadata for: future_detective +2026-01-06 19:56:56,201 - INFO - Searching metadata for: future detective +2026-01-06 19:56:56,343 - INFO - Fetching metadata from: https://nhentai.net/g/170580/ +2026-01-06 19:56:56,526 - INFO - Updating metadata for: what_the_mother_does_for_the_sake_of_the_son +2026-01-06 19:56:56,526 - INFO - Searching metadata for: what the mother does for the sake of the son +2026-01-06 19:56:56,741 - INFO - Fetching metadata from: https://nhentai.net/g/532249/ +2026-01-06 19:56:56,910 - INFO - Updating metadata for: [Tawara Hiryuu] Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-06 19:56:56,910 - INFO - Searching metadata for: Tawara Hiryuu Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-06 19:56:57,158 - INFO - Searching metadata for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-06 19:56:57,465 - INFO - Searching MangaUpdates for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-06 19:56:59,781 - INFO - Updating metadata for: gifu_to_shimai_no_kizuna +2026-01-06 19:56:59,781 - INFO - Searching metadata for: gifu to shimai no kizuna +2026-01-06 19:57:00,051 - INFO - Fetching metadata from: https://nhentai.net/g/97406/ +2026-01-06 19:57:00,227 - INFO - Updating metadata for: omae_no_you_na_maou_ga_iru_kai +2026-01-06 19:57:00,227 - INFO - Searching metadata for: omae no you na maou ga iru kai +2026-01-06 19:57:00,528 - INFO - Searching MangaUpdates for: omae no you na maou ga iru kai +2026-01-06 19:57:01,750 - INFO - Updating metadata for: if_seems_like_everyone_except_me_has_lost_their_concept_of_eroticism +2026-01-06 19:57:01,751 - INFO - Searching metadata for: if seems like everyone except me has lost their concept of eroticism +2026-01-06 19:57:01,984 - INFO - Searching MangaUpdates for: if seems like everyone except me has lost their concept of eroticism +2026-01-06 19:57:03,499 - INFO - Updating metadata for: oneechan_no_dokusho_jijou +2026-01-06 19:57:03,500 - INFO - Searching metadata for: oneechan no dokusho jijou +2026-01-06 19:57:03,665 - INFO - Searching MangaUpdates for: oneechan no dokusho jijou +2026-01-06 19:57:05,094 - INFO - Updating metadata for: what_friend_do +2026-01-06 19:57:05,097 - INFO - Searching metadata for: what friend do +2026-01-06 19:57:05,294 - INFO - Fetching metadata from: https://nhentai.net/g/601381/ +2026-01-06 19:57:05,458 - INFO - Updating metadata for: kinyoku_ake_no_kyoudai_kankei +2026-01-06 19:57:05,459 - INFO - Searching metadata for: kinyoku ake no kyoudai kankei +2026-01-06 19:57:05,642 - INFO - Searching MangaUpdates for: kinyoku ake no kyoudai kankei +2026-01-06 19:57:07,062 - INFO - Updating metadata for: aniyome_milk_elder_sisterinlaws_milk +2026-01-06 19:57:07,062 - INFO - Searching metadata for: aniyome milk elder sisterinlaws milk +2026-01-06 19:57:07,198 - INFO - Searching MangaUpdates for: aniyome milk elder sisterinlaws milk +2026-01-06 19:57:07,726 - INFO - Updating metadata for: idiopathic_erectile_syndrome_when_masturbation_fails +2026-01-06 19:57:07,727 - INFO - Searching metadata for: idiopathic erectile syndrome when masturbation fails +2026-01-06 19:57:07,873 - INFO - Fetching metadata from: https://nhentai.net/g/271977/ +2026-01-06 19:57:08,075 - INFO - Updating metadata for: sluttification_virus_anywhere_anytime_lets_fuck_already +2026-01-06 19:57:08,075 - INFO - Searching metadata for: sluttification virus anywhere anytime lets fuck already +2026-01-06 19:57:08,210 - INFO - Searching MangaUpdates for: sluttification virus anywhere anytime lets fuck already +2026-01-06 19:57:08,689 - INFO - Updating metadata for: [UC] Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-06 19:57:08,689 - INFO - Searching metadata for: UC Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-06 19:57:08,975 - INFO - Fetching metadata from: https://nhentai.net/g/603830/ +2026-01-06 19:57:09,146 - INFO - Updating metadata for: absurd_mother_and_son_incest +2026-01-06 19:57:09,147 - INFO - Searching metadata for: absurd mother and son incest +2026-01-06 19:57:09,328 - INFO - Fetching metadata from: https://nhentai.net/g/359070/ +2026-01-06 19:57:09,496 - INFO - Updating metadata for: [Ringoya (Alp)] Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-06 19:57:09,496 - INFO - Searching metadata for: Ringoya (Alp) Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-06 19:57:09,854 - INFO - Fetching metadata from: https://nhentai.net/g/620273/ +2026-01-06 19:57:10,129 - INFO - Updating metadata for: idol_wa_fan_no_semen_tank_ninshinderella_girls +2026-01-06 19:57:10,129 - INFO - Searching metadata for: idol wa fan no semen tank ninshinderella girls +2026-01-06 19:57:10,374 - INFO - Searching MangaUpdates for: idol wa fan no semen tank ninshinderella girls +2026-01-06 19:57:11,720 - INFO - Updating metadata for: [Tawawa Delivery] Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-06 19:57:11,720 - INFO - Searching metadata for: Tawawa Delivery Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-06 19:57:11,862 - INFO - Searching metadata for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-06 19:57:12,002 - INFO - Searching MangaUpdates for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-06 19:57:13,157 - INFO - Updating metadata for: incha_otouto_ga_nangoku_beach_de_kinpatsu +2026-01-06 19:57:13,157 - INFO - Searching metadata for: incha otouto ga nangoku beach de kinpatsu +2026-01-06 19:57:13,350 - INFO - Searching MangaUpdates for: incha otouto ga nangoku beach de kinpatsu +2026-01-06 19:57:14,561 - INFO - Updating metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-06 19:57:14,562 - INFO - Searching metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-06 19:57:14,737 - INFO - Searching MangaUpdates for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-06 19:57:15,099 - INFO - Updating metadata for: akira_nii_chan_who_ive_always_admired +2026-01-06 19:57:15,099 - INFO - Searching metadata for: akira nii chan who ive always admired +2026-01-06 19:57:15,275 - INFO - Searching MangaUpdates for: akira nii chan who ive always admired +2026-01-06 19:57:15,810 - INFO - Updating metadata for: [NesZ] My farmer aunt is having a problem [English] +2026-01-06 19:57:15,811 - INFO - Searching metadata for: NesZ My farmer aunt is having a problem [English] +2026-01-06 19:57:16,026 - INFO - Fetching metadata from: https://nhentai.net/g/607421/ +2026-01-06 19:57:16,193 - INFO - Updating metadata for: my_ar_glasses_can_see_various_stats_about_my_foster_sister +2026-01-06 19:57:16,193 - INFO - Searching metadata for: my ar glasses can see various stats about my foster sister +2026-01-06 19:57:16,428 - INFO - Fetching metadata from: https://nhentai.net/g/589010/ +2026-01-06 19:57:16,667 - INFO - Updating metadata for: dirty_lessons_improving_your_manhood_chapter_ +2026-01-06 19:57:16,667 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-06 19:57:16,810 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter +2026-01-06 19:57:17,308 - INFO - Updating metadata for: the_story_about_how_i_found_my_soulmate_when +2026-01-06 19:57:17,308 - INFO - Searching metadata for: the story about how i found my soulmate when +2026-01-06 19:57:17,662 - INFO - Fetching metadata from: https://nhentai.net/g/521364/ +2026-01-06 19:57:17,845 - INFO - Updating metadata for: [Hannya san] Forbidden lust +2026-01-06 19:57:17,845 - INFO - Searching metadata for: Hannya san Forbidden lust +2026-01-06 19:57:18,024 - INFO - Fetching metadata from: https://nhentai.net/g/600751/ +2026-01-06 19:57:18,209 - INFO - Updating metadata for: shojo_ane_kangaeru +2026-01-06 19:57:18,210 - INFO - Searching metadata for: shojo ane kangaeru +2026-01-06 19:57:18,363 - INFO - Fetching metadata from: https://nhentai.net/g/447249/ +2026-01-06 19:57:18,530 - INFO - Updating metadata for: neechan_to_sei_shori_shiteru +2026-01-06 19:57:18,531 - INFO - Searching metadata for: neechan to sei shori shiteru +2026-01-06 19:57:18,709 - INFO - Searching MangaUpdates for: neechan to sei shori shiteru +2026-01-06 19:57:19,261 - INFO - Updating metadata for: [moNmomo] Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-06 19:57:19,262 - INFO - Searching metadata for: moNmomo Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-06 19:57:19,423 - INFO - Fetching metadata from: https://nhentai.net/g/618662/ +2026-01-06 19:57:19,585 - INFO - Updating metadata for: fushoku_tensei_tamashii_kawattara_honki_dasu +2026-01-06 19:57:19,585 - INFO - Searching metadata for: fushoku tensei tamashii kawattara honki dasu +2026-01-06 19:57:19,742 - INFO - Fetching metadata from: https://nhentai.net/g/574276/ +2026-01-06 19:57:20,025 - INFO - Updating metadata for: [Mochi-ya (Karoti)] Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-06 19:57:20,026 - INFO - Searching metadata for: Mochi-ya (Karoti) Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-06 19:57:20,314 - INFO - Fetching metadata from: https://nhentai.net/g/620624/ +2026-01-06 19:57:20,527 - INFO - Updating metadata for: i_woke_up_to_my_naked_apron_sister_and_tried_fucking_her +2026-01-06 19:57:20,528 - INFO - Searching metadata for: i woke up to my naked apron sister and tried fucking her +2026-01-06 19:57:20,911 - INFO - Fetching metadata from: https://nhentai.net/g/602663/ +2026-01-06 19:57:21,304 - INFO - Updating metadata for: little_sister_paradise +2026-01-06 19:57:21,304 - INFO - Searching metadata for: little sister paradise +2026-01-06 19:57:21,456 - INFO - Fetching metadata from: https://nhentai.net/g/567713/ +2026-01-06 19:57:21,624 - INFO - Updating metadata for: my_mature_older_sister_the_crazy_convenient_relationship_of_an_older_sister_and_younger_brother_in_their_thirtys +2026-01-06 19:57:21,624 - INFO - Searching metadata for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-06 19:57:21,904 - INFO - Searching MangaUpdates for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-06 19:57:22,584 - INFO - Updating metadata for: sex_season +2026-01-06 19:57:22,584 - INFO - Searching metadata for: sex season +2026-01-06 19:57:22,761 - INFO - Fetching metadata from: https://nhentai.net/g/618390/ +2026-01-06 19:57:22,956 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite _ Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-06 19:57:22,957 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-06 19:57:23,224 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-06 19:57:23,710 - INFO - Updating metadata for: that_pov_sex_thing +2026-01-06 19:57:23,710 - INFO - Searching metadata for: that pov sex thing +2026-01-06 19:57:23,854 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-06 19:57:24,047 - INFO - Updating metadata for: hot_teacher +2026-01-06 19:57:24,047 - INFO - Searching metadata for: hot teacher +2026-01-06 19:57:24,241 - INFO - Fetching metadata from: https://nhentai.net/g/620990/ +2026-01-06 19:57:24,397 - INFO - Updating metadata for: two_siblings_fela_pure +2026-01-06 19:57:24,397 - INFO - Searching metadata for: two siblings fela pure +2026-01-06 19:57:24,549 - INFO - Fetching metadata from: https://nhentai.net/g/65576/ +2026-01-06 19:57:24,715 - INFO - Updating metadata for: on_the_night_of_the_ceremony +2026-01-06 19:57:24,715 - INFO - Searching metadata for: on the night of the ceremony +2026-01-06 19:57:24,928 - INFO - Fetching metadata from: https://nhentai.net/g/530970/ +2026-01-06 19:57:25,109 - INFO - Updating metadata for: [Takasugi Kou] Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-06 19:57:25,109 - INFO - Searching metadata for: Takasugi Kou Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-06 19:57:25,302 - INFO - Fetching metadata from: https://nhentai.net/g/599358/ +2026-01-06 19:57:25,456 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-06 19:57:25,457 - INFO - Searching metadata for: Mustard Teikoku (Europia) Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-06 19:57:25,814 - INFO - Searching metadata for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-06 19:57:26,326 - INFO - Searching MangaUpdates for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-06 19:57:27,069 - INFO - Updating metadata for: father_stop_it +2026-01-06 19:57:27,070 - INFO - Searching metadata for: father stop it +2026-01-06 19:57:27,234 - INFO - Fetching metadata from: https://nhentai.net/g/549536/ +2026-01-06 19:57:27,416 - INFO - Updating metadata for: organize +2026-01-06 19:57:27,417 - INFO - Searching metadata for: organize +2026-01-06 19:57:27,559 - INFO - Fetching metadata from: https://nhentai.net/g/215772/ +2026-01-06 19:57:27,726 - INFO - Updating metadata for: seventy_two +2026-01-06 19:57:27,726 - INFO - Searching metadata for: seventy two +2026-01-06 19:57:27,868 - INFO - Fetching metadata from: https://nhentai.net/g/110977/ +2026-01-06 19:57:28,036 - INFO - Updating metadata for: a_sister_who_wants_to_watch_siblings +2026-01-06 19:57:28,037 - INFO - Searching metadata for: a sister who wants to watch siblings +2026-01-06 19:57:28,282 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-06 19:57:28,455 - INFO - Updating metadata for: a_room_you_cant_leave_after_having_sex +2026-01-06 19:57:28,455 - INFO - Searching metadata for: a room you cant leave after having sex +2026-01-06 19:57:28,684 - INFO - Searching MangaUpdates for: a room you cant leave after having sex +2026-01-06 19:57:29,599 - INFO - Updating metadata for: narikawari_chapter_1 +2026-01-06 19:57:29,599 - INFO - Searching metadata for: narikawari chapter 1 +2026-01-06 19:57:29,743 - INFO - Searching MangaUpdates for: narikawari chapter 1 +2026-01-06 19:57:30,320 - INFO - Updating metadata for: [Ookami Shoujo Dan (Mukoujima Tenro)] Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-06 19:57:30,320 - INFO - Searching metadata for: Ookami Shoujo Dan (Mukoujima Tenro) Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-06 19:57:30,625 - INFO - Fetching metadata from: https://nhentai.net/g/617181/ +2026-01-06 19:57:30,824 - INFO - Updating metadata for: welcome_to_the_brothel_school_festival +2026-01-06 19:57:30,825 - INFO - Searching metadata for: welcome to the brothel school festival +2026-01-06 19:57:31,058 - INFO - Fetching metadata from: https://nhentai.net/g/601119/ +2026-01-06 19:57:31,240 - INFO - Updating metadata for: [Oroshi Ponzu] A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-06 19:57:31,240 - INFO - Searching metadata for: Oroshi Ponzu A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-06 19:57:31,779 - INFO - Searching metadata for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-06 19:57:32,094 - INFO - Searching MangaUpdates for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-06 19:57:33,201 - INFO - Updating metadata for: step_child_swapping_satsuki_imonet +2026-01-06 19:57:33,201 - INFO - Searching metadata for: step child swapping satsuki imonet +2026-01-06 19:57:33,345 - INFO - Searching MangaUpdates for: step child swapping satsuki imonet +2026-01-06 19:57:33,819 - INFO - Updating metadata for: the_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother_in_laws_countryside_where_there_is_an_h_custom +2026-01-06 19:57:33,819 - INFO - Searching metadata for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-06 19:57:34,307 - INFO - Searching MangaUpdates for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-06 19:57:36,339 - INFO - Updating metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-06 19:57:36,340 - INFO - Searching metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-06 19:57:36,854 - INFO - Searching MangaUpdates for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-06 19:57:37,951 - INFO - Updating metadata for: friends_forever +2026-01-06 19:57:37,952 - INFO - Searching metadata for: friends forever +2026-01-06 19:57:38,094 - INFO - Fetching metadata from: https://nhentai.net/g/588356/ +2026-01-06 19:57:38,269 - INFO - Updating metadata for: were_siblings_but_lets_tie_the_knot +2026-01-06 19:57:38,270 - INFO - Searching metadata for: were siblings but lets tie the knot +2026-01-06 19:57:38,443 - INFO - Searching MangaUpdates for: were siblings but lets tie the knot +2026-01-06 19:57:38,898 - INFO - Updating metadata for: takebe_saorichan_to_iu_kanojo +2026-01-06 19:57:38,899 - INFO - Searching metadata for: takebe saorichan to iu kanojo +2026-01-06 19:57:39,028 - INFO - Searching MangaUpdates for: takebe saorichan to iu kanojo +2026-01-06 19:57:39,979 - INFO - Updating metadata for: mega_milk +2026-01-06 19:57:39,979 - INFO - Searching metadata for: mega milk +2026-01-06 19:57:40,195 - INFO - Fetching metadata from: https://nhentai.net/g/616449/ +2026-01-06 19:57:40,370 - INFO - Updating metadata for: [Gomikasu Tarou] Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-06 19:57:40,370 - INFO - Searching metadata for: Gomikasu Tarou Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-06 19:57:40,789 - INFO - Searching metadata for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-06 19:57:41,580 - INFO - Searching MangaUpdates for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-06 19:57:44,289 - INFO - Updating metadata for: a_gentle_mommy_who_secret_makes +2026-01-06 19:57:44,290 - INFO - Searching metadata for: a gentle mommy who secret makes +2026-01-06 19:57:44,475 - INFO - Fetching metadata from: https://nhentai.net/g/546176/ +2026-01-06 19:57:44,653 - INFO - Updating metadata for: i_got_an_elf_little_sister +2026-01-06 19:57:44,653 - INFO - Searching metadata for: i got an elf little sister +2026-01-06 19:57:45,057 - INFO - Fetching metadata from: https://nhentai.net/g/544668/ +2026-01-06 19:57:45,276 - INFO - Updating metadata for: [Yue] Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-06 19:57:45,276 - INFO - Searching metadata for: Yue Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-06 19:57:45,541 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-06 19:57:45,808 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-06 19:57:46,799 - INFO - Updating metadata for: i_became_kirarachans_manager +2026-01-06 19:57:46,800 - INFO - Searching metadata for: i became kirarachans manager +2026-01-06 19:57:47,021 - INFO - Searching MangaUpdates for: i became kirarachans manager +2026-01-06 19:57:47,962 - INFO - Updating metadata for: i_am_to_record_a_video_with_two_sadistic_women +2026-01-06 19:57:47,962 - INFO - Searching metadata for: i am to record a video with two sadistic women +2026-01-06 19:57:48,270 - INFO - Fetching metadata from: https://nhentai.net/g/551074/ +2026-01-06 19:57:48,461 - INFO - Updating metadata for: kusabi +2026-01-06 19:57:48,461 - INFO - Searching metadata for: kusabi +2026-01-06 19:57:48,629 - INFO - Fetching metadata from: https://nhentai.net/g/577169/ +2026-01-06 19:57:48,813 - INFO - Updating metadata for: [OVing (Obui)] Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-06 19:57:48,813 - INFO - Searching metadata for: OVing (Obui) Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-06 19:57:49,017 - INFO - Fetching metadata from: https://nhentai.net/g/556035/ +2026-01-06 19:57:49,210 - INFO - Updating metadata for: the_imprisoned_flower +2026-01-06 19:57:49,210 - INFO - Searching metadata for: the imprisoned flower +2026-01-06 19:57:49,386 - INFO - Fetching metadata from: https://nhentai.net/g/567049/ +2026-01-06 19:57:49,557 - INFO - Updating metadata for: semi_pro_racing_stars +2026-01-06 19:57:49,558 - INFO - Searching metadata for: semi pro racing stars +2026-01-06 19:57:49,738 - INFO - Fetching metadata from: https://nhentai.net/g/380272/ +2026-01-06 19:57:49,964 - INFO - Updating metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-06 19:57:49,964 - INFO - Searching metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-06 19:57:50,272 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-06 19:57:50,441 - INFO - Updating metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-06 19:57:50,442 - INFO - Searching metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-06 19:57:50,699 - INFO - Fetching metadata from: https://nhentai.net/g/583039/ +2026-01-06 19:57:50,893 - INFO - Updating metadata for: [Nyuu Koubou Koromotake] Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-06 19:57:50,894 - INFO - Searching metadata for: Nyuu Koubou Koromotake Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-06 19:57:51,148 - INFO - Fetching metadata from: https://nhentai.net/g/603798/ +2026-01-06 19:57:51,342 - INFO - Updating metadata for: tsugumonotachi_hachi_hen +2026-01-06 19:57:51,343 - INFO - Searching metadata for: tsugumonotachi hachi hen +2026-01-06 19:57:51,478 - INFO - Searching MangaUpdates for: tsugumonotachi hachi hen +2026-01-06 19:57:52,448 - INFO - Updating metadata for: leave_it_all_to_me_little_brother +2026-01-06 19:57:52,448 - INFO - Searching metadata for: leave it all to me little brother +2026-01-06 19:57:52,762 - INFO - Fetching metadata from: https://nhentai.net/g/548496/ +2026-01-06 19:57:52,945 - INFO - Updating metadata for: the_demon_lords_bride +2026-01-06 19:57:52,946 - INFO - Searching metadata for: the demon lords bride +2026-01-06 19:57:53,111 - INFO - Searching MangaUpdates for: the demon lords bride +2026-01-06 19:57:54,148 - INFO - Updating metadata for: [satsukiimonet (Satsuki Imonet)] HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-06 19:57:54,148 - INFO - Searching metadata for: satsukiimonet (Satsuki Imonet) HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-06 19:57:54,345 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-06 19:57:54,522 - INFO - Updating metadata for: special_tit_envoy +2026-01-06 19:57:54,522 - INFO - Searching metadata for: special tit envoy +2026-01-06 19:57:54,677 - INFO - Fetching metadata from: https://nhentai.net/g/354686/ +2026-01-06 19:57:54,847 - INFO - Updating metadata for: hot_spring_sex_with_mama_raikou +2026-01-06 19:57:54,847 - INFO - Searching metadata for: hot spring sex with mama raikou +2026-01-06 19:57:55,034 - INFO - Fetching metadata from: https://nhentai.net/g/329703/ +2026-01-06 19:57:55,238 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Succubus Shoukan [English][Fan trad] +2026-01-06 19:57:55,238 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Succubus Shoukan [English][Fan trad] +2026-01-06 19:57:55,385 - INFO - Searching metadata for: Succubus Shoukan [English][Fan trad] +2026-01-06 19:57:55,568 - INFO - Searching MangaUpdates for: Succubus Shoukan [English][Fan trad] +2026-01-06 19:57:56,431 - INFO - Updating metadata for: nanjamo_no_botebaraive_nanjamo_vs_metamonjamo +2026-01-06 19:57:56,431 - INFO - Searching metadata for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-06 19:57:56,678 - INFO - Searching MangaUpdates for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-06 19:57:57,490 - INFO - Updating metadata for: akos_and_nozomis_discussion_of_masturbation_addictions +2026-01-06 19:57:57,491 - INFO - Searching metadata for: akos and nozomis discussion of masturbation addictions +2026-01-06 19:57:57,677 - INFO - Searching MangaUpdates for: akos and nozomis discussion of masturbation addictions +2026-01-06 19:57:59,250 - INFO - Updating metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-06 19:57:59,251 - INFO - Searching metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-06 19:57:59,448 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-06 19:57:59,630 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-06 19:57:59,630 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-06 19:57:59,888 - INFO - Searching metadata for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-06 19:58:00,132 - INFO - Searching MangaUpdates for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-06 19:58:01,461 - INFO - Updating metadata for: my_cool_friend +2026-01-06 19:58:01,462 - INFO - Searching metadata for: my cool friend +2026-01-06 19:58:01,633 - INFO - Fetching metadata from: https://nhentai.net/g/588146/ +2026-01-06 19:58:01,819 - INFO - Updating metadata for: non_stop_fucking_with_my_friends_mom +2026-01-06 19:58:01,819 - INFO - Searching metadata for: non stop fucking with my friends mom +2026-01-06 19:58:02,031 - INFO - Searching MangaUpdates for: non stop fucking with my friends mom +2026-01-06 19:58:02,461 - INFO - Updating metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-06 19:58:02,464 - INFO - Searching metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-06 19:58:02,685 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-06 19:58:02,870 - INFO - Updating metadata for: I will make a single mother my wife +2026-01-06 19:58:02,870 - INFO - Searching metadata for: I will make a single mother my wife +2026-01-06 19:58:03,147 - INFO - Fetching metadata from: https://nhentai.net/g/595981/ +2026-01-06 19:58:03,345 - INFO - Updating metadata for: barenai_you_ni +2026-01-06 19:58:03,346 - INFO - Searching metadata for: barenai you ni +2026-01-06 19:58:03,578 - INFO - Fetching metadata from: https://nhentai.net/g/591233/ +2026-01-06 19:58:03,763 - INFO - Updating metadata for: adolescent_calculation +2026-01-06 19:58:03,764 - INFO - Searching metadata for: adolescent calculation +2026-01-06 19:58:03,904 - INFO - Fetching metadata from: https://nhentai.net/g/183099/ +2026-01-06 19:58:04,082 - INFO - Updating metadata for: moto_incha_no_kyonyuu_yariman_imouto_ga_erosugite_oniichan_wa_mou +2026-01-06 19:58:04,082 - INFO - Searching metadata for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-06 19:58:04,335 - INFO - Searching MangaUpdates for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-06 19:58:07,152 - INFO - Starting organization in /comics/pendingorganization... +2026-01-06 19:58:07,218 - INFO - Searching metadata for: jukujo sentai paiters chapter +2026-01-06 19:58:07,428 - INFO - Searching MangaUpdates for: jukujo sentai paiters chapter +2026-01-06 19:58:08,226 - INFO - Processing: jukujo_sentai_paiters_chapter.cbz -> Furachina_Jukujo_(2021) +2026-01-06 19:58:09,134 - INFO - Searching metadata for: haunted property chapter +2026-01-06 19:58:09,292 - INFO - Searching MangaUpdates for: haunted property chapter +2026-01-06 19:58:09,865 - INFO - Processing: haunted_property_chapter.cbz -> Stigmatized_Property_(2019) +2026-01-06 19:58:10,648 - INFO - Searching metadata for: jitsu wa midara na chounyuu sensei chapter +2026-01-06 19:58:10,962 - INFO - Searching MangaUpdates for: jitsu wa midara na chounyuu sensei chapter +2026-01-06 19:58:12,341 - INFO - Processing: jitsu_wa_midara_na_chounyuu_sensei_chapter.cbz -> Sensei_wa_Ore_no_Dorei_Danshikou_wa_Midara_na_Kangoku_(2014) +2026-01-06 19:58:12,902 - INFO - Searching metadata for: imouto ookiindamon chapter +2026-01-06 19:58:13,048 - INFO - Searching MangaUpdates for: imouto ookiindamon chapter +2026-01-06 19:58:14,313 - INFO - Processing: imouto_ookiindamon_chapter.cbz -> Otouto_Imouto_(2007) +2026-01-06 19:58:14,869 - INFO - Searching metadata for: i matched with my friends mom chapter +2026-01-06 19:58:15,092 - INFO - Searching MangaUpdates for: i matched with my friends mom chapter +2026-01-06 19:58:15,779 - INFO - Processing: i_matched_with_my_friends_mom_chapter.cbz -> Akogare_no_Tomo_Mama_to_Matching_Shita_Kudan_(2024) +2026-01-06 19:58:17,218 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-06 19:58:17,499 - INFO - Searching MangaUpdates for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-06 19:58:18,493 - INFO - Processing: Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku.cbz -> Kanojo_ni_Naritai_Kimi_to_Boku_(2018) +2026-01-06 19:58:21,142 - INFO - Searching metadata for: from now on you are my livestock chapter +2026-01-06 19:58:21,405 - INFO - Searching MangaUpdates for: from now on you are my livestock chapter +2026-01-06 19:58:22,119 - INFO - Processing: from_now_on_you_are_my_livestock_chapter.cbz -> Oretachi,_Kore_Kara_(2024) +2026-01-06 19:58:23,371 - INFO - Searching metadata for: crossdressing hero and dancer priestess chapter +2026-01-06 19:58:23,574 - INFO - Searching MangaUpdates for: crossdressing hero and dancer priestess chapter +2026-01-06 19:58:23,898 - INFO - Processing: crossdressing_hero_and_dancer_priestess_chapter.cbz -> Watashi_no_Kawaii_Mochizuki-kun_(2020) +2026-01-06 19:58:24,922 - INFO - Searching metadata for: imouto to rekawatta oniichan wa chapter +2026-01-06 19:58:25,139 - INFO - Searching MangaUpdates for: imouto to rekawatta oniichan wa chapter +2026-01-06 19:58:26,335 - INFO - Processing: imouto_to_rekawatta_oniichan_wa_chapter.cbz -> Imouto_wa_minna_Oniichan_ga_Suki!_(2010) +2026-01-06 19:58:27,317 - INFO - Searching metadata for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-06 19:58:27,536 - INFO - Searching MangaUpdates for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-06 19:58:28,783 - INFO - Processing: Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love.cbz -> Jujutsu_Kaisen_dj_-_○○○_Shinai_to_Derarenai_Heya_√A_(2021) +2026-01-06 19:58:29,615 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-06 19:58:29,789 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter +2026-01-06 19:58:30,256 - INFO - Processing: dirty_lessons_improving_your_manhood_chapter.cbz -> Hoken_Shitsu_no_Aisare_Sensei_(2020) +2026-01-06 19:58:30,928 - INFO - Searching metadata for: mrs miho cant stop cheating chapter +2026-01-06 19:58:31,093 - INFO - Searching MangaUpdates for: mrs miho cant stop cheating chapter +2026-01-06 19:58:31,349 - INFO - Processing: mrs_miho_cant_stop_cheating_chapter.cbz -> Hitozuma,_Uwaki,_Danchi_Nite._-37-Sai_Miho-_(2025) +2026-01-06 19:58:33,432 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter +2026-01-06 19:58:33,583 - INFO - Searching MangaUpdates for: jibakureichan wa oppai ga yowai chapter +2026-01-06 19:58:33,934 - INFO - Processing: jibakureichan_wa_oppai_ga_yowai_chapter.cbz -> Ai_ga_Ippai_Ero_wa_Oppai_(2010) +2026-01-06 19:58:35,644 - INFO - Searching metadata for: kayanee and the old man memories chapter +2026-01-06 19:58:35,906 - INFO - Searching MangaUpdates for: kayanee and the old man memories chapter +2026-01-06 19:58:36,680 - INFO - Processing: kayanee_and_the_old_man_memories_chapter.cbz -> Roujin_to_Neko_(2024) +2026-01-06 19:58:38,016 - INFO - Searching metadata for: dream mama vs real mother chapter 1b +2026-01-06 19:58:38,221 - INFO - Searching MangaUpdates for: dream mama vs real mother chapter 1b +2026-01-06 19:58:38,526 - INFO - Processing: dream_mama_vs_real_mother_chapter_1b.cbz -> Sex_With_Many_Mamas_(2016) +2026-01-06 19:58:39,592 - INFO - Searching metadata for: family plan toono suika chapter +2026-01-06 19:58:39,757 - INFO - Searching MangaUpdates for: family plan toono suika chapter +2026-01-06 19:58:40,462 - INFO - Processing: family_plan_toono_suika_chapter.cbz -> Family_Plan_(2024) +2026-01-06 19:58:41,186 - INFO - Searching metadata for: im being sex educated by my overprotective mother chapter +2026-01-06 19:58:41,441 - INFO - Searching MangaUpdates for: im being sex educated by my overprotective mother chapter +2026-01-06 19:58:42,031 - INFO - Processing: im_being_sex_educated_by_my_overprotective_mother_chapter.cbz -> Injoku_no_Kizuna_(2006) +2026-01-06 19:58:43,534 - INFO - Searching metadata for: karinsans hidden side and her naughty videos chapter +2026-01-06 19:58:43,707 - INFO - Searching MangaUpdates for: karinsans hidden side and her naughty videos chapter +2026-01-06 19:58:44,372 - INFO - Processing: karinsans_hidden_side_and_her_naughty_videos_chapter.cbz -> Kumiko_to_Warui_Musuko_(2015) +2026-01-06 19:58:44,861 - INFO - Searching metadata for: the romantic ritual with fox goddess yuukosan chapter +2026-01-06 19:58:45,038 - INFO - Searching MangaUpdates for: the romantic ritual with fox goddess yuukosan chapter +2026-01-06 19:58:46,020 - INFO - Processing: the_romantic_ritual_with_fox_goddess_yuukosan_chapter.cbz -> Koyoi,_Gishiki_de_Hatemashou_(2019) +2026-01-06 19:58:46,698 - INFO - Searching metadata for: hitozuma saimin appli chapter +2026-01-06 19:58:46,894 - INFO - Searching MangaUpdates for: hitozuma saimin appli chapter +2026-01-06 19:58:47,271 - INFO - Processing: hitozuma_saimin_appli_chapter.cbz -> Saimin_Appli_(Yuma)_(2024) +2026-01-06 20:01:59,390 - INFO - Starting metadata update in /comics/manga (Force: True)... +2026-01-06 20:01:59,458 - INFO - Updating metadata for: catch_you_at_the_indoor_beach +2026-01-06 20:01:59,459 - INFO - Searching metadata for: catch you at the indoor beach +2026-01-06 20:01:59,696 - INFO - Searching MangaUpdates for: catch you at the indoor beach +2026-01-06 20:02:00,763 - INFO - Updating metadata for: [Omapuu] Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-06 20:02:00,764 - INFO - Searching metadata for: Omapuu Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-06 20:02:01,031 - INFO - Fetching metadata from: https://nhentai.net/g/602806/ +2026-01-06 20:02:01,227 - INFO - Updating metadata for: [Kazuhiro] Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-06 20:02:01,227 - INFO - Searching metadata for: Kazuhiro Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-06 20:02:01,425 - INFO - Fetching metadata from: https://nhentai.net/g/268292/ +2026-01-06 20:02:01,685 - INFO - Updating metadata for: [Itaba Hiroshi] Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-06 20:02:01,686 - INFO - Searching metadata for: Itaba Hiroshi Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-06 20:02:01,852 - INFO - Searching metadata for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-06 20:02:02,015 - INFO - Searching MangaUpdates for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-06 20:02:02,955 - INFO - Updating metadata for: shounen_ga_otona_ni_natta_natsu +2026-01-06 20:02:02,955 - INFO - Searching metadata for: shounen ga otona ni natta natsu +2026-01-06 20:02:03,244 - INFO - Fetching metadata from: https://nhentai.net/g/571244/ +2026-01-06 20:02:03,509 - INFO - Updating metadata for: i_have_no_choice_but_to_have_sex_with_my_mother_chapter +2026-01-06 20:02:03,510 - INFO - Searching metadata for: i have no choice but to have sex with my mother chapter +2026-01-06 20:02:03,850 - INFO - Searching MangaUpdates for: i have no choice but to have sex with my mother chapter +2026-01-06 20:02:04,852 - INFO - Updating metadata for: [Airandou] Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-06 20:02:04,852 - INFO - Searching metadata for: Airandou Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-06 20:02:05,165 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-06 20:02:05,368 - INFO - Updating metadata for: on_a_stormy_night +2026-01-06 20:02:05,368 - INFO - Searching metadata for: on a stormy night +2026-01-06 20:02:05,626 - INFO - Fetching metadata from: https://nhentai.net/g/616543/ +2026-01-06 20:02:05,864 - INFO - Updating metadata for: jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-06 20:02:05,864 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter +2026-01-06 20:02:06,014 - INFO - Searching MangaUpdates for: jibakureichan wa oppai ga yowai chapter +2026-01-06 20:02:06,439 - INFO - Updating metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-06 20:02:06,439 - INFO - Searching metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-06 20:02:06,620 - INFO - Searching MangaUpdates for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-06 20:02:07,679 - INFO - Updating metadata for: last_day_of_summer_vacation_sex_sex_sex +2026-01-06 20:02:07,679 - INFO - Searching metadata for: last day of summer vacation sex sex sex +2026-01-06 20:02:07,874 - INFO - Searching MangaUpdates for: last day of summer vacation sex sex sex +2026-01-06 20:02:08,778 - INFO - Updating metadata for: SEX Shinai to Derarenai Heya desu. _ The Room You Can't Leave Until You Have Sex +2026-01-06 20:02:08,778 - INFO - Searching metadata for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-06 20:02:09,238 - INFO - Searching MangaUpdates for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-06 20:02:09,870 - INFO - Updating metadata for: [Utsutsu Minoru] Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-06 20:02:09,871 - INFO - Searching metadata for: Utsutsu Minoru Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-06 20:02:10,053 - INFO - Fetching metadata from: https://nhentai.net/g/268598/ +2026-01-06 20:02:10,257 - INFO - Updating metadata for: [Yue] Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-06 20:02:10,257 - INFO - Searching metadata for: Yue Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-06 20:02:10,532 - INFO - Fetching metadata from: https://nhentai.net/g/571461/ +2026-01-06 20:02:10,726 - INFO - Updating metadata for: mama_nge +2026-01-06 20:02:10,726 - INFO - Searching metadata for: mama nge +2026-01-06 20:02:10,897 - INFO - Fetching metadata from: https://nhentai.net/g/375142/ +2026-01-06 20:02:11,100 - INFO - Updating metadata for: a_story_about_getting_trained_by_my_older_sister +2026-01-06 20:02:11,100 - INFO - Searching metadata for: a story about getting trained by my older sister +2026-01-06 20:02:11,421 - INFO - Fetching metadata from: https://nhentai.net/g/491013/ +2026-01-06 20:02:11,702 - INFO - Updating metadata for: shake_hip +2026-01-06 20:02:11,703 - INFO - Searching metadata for: shake hip +2026-01-06 20:02:11,881 - INFO - Fetching metadata from: https://nhentai.net/g/111922/ +2026-01-06 20:02:12,126 - INFO - Updating metadata for: [Hannya san] Mom son +2026-01-06 20:02:12,127 - INFO - Searching metadata for: Hannya san Mom son +2026-01-06 20:02:12,374 - INFO - Fetching metadata from: https://nhentai.net/g/606383/ +2026-01-06 20:02:12,558 - INFO - Updating metadata for: Frustrated Share House Residents +2026-01-06 20:02:12,559 - INFO - Searching metadata for: Frustrated Share House Residents +2026-01-06 20:02:12,717 - INFO - Fetching metadata from: https://nhentai.net/g/539658/ +2026-01-06 20:02:12,914 - INFO - Updating metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-06 20:02:12,914 - INFO - Searching metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-06 20:02:13,243 - INFO - Fetching metadata from: https://nhentai.net/g/571333/ +2026-01-06 20:02:13,467 - INFO - Updating metadata for: oni_no_kyouiku_mama_ga_musuko_to_amaama_sex_made +2026-01-06 20:02:13,467 - INFO - Searching metadata for: oni no kyouiku mama ga musuko to amaama sex made +2026-01-06 20:02:13,901 - INFO - Fetching metadata from: https://nhentai.net/g/605131/ +2026-01-06 20:02:14,130 - INFO - Updating metadata for: immoral_relationship +2026-01-06 20:02:14,130 - INFO - Searching metadata for: immoral relationship +2026-01-06 20:02:14,296 - INFO - Fetching metadata from: https://nhentai.net/g/578989/ +2026-01-06 20:02:14,488 - INFO - Updating metadata for: quick_return_home +2026-01-06 20:02:14,488 - INFO - Searching metadata for: quick return home +2026-01-06 20:02:14,654 - INFO - Fetching metadata from: https://nhentai.net/g/285865/ +2026-01-06 20:02:14,860 - INFO - Updating metadata for: sister_succubus +2026-01-06 20:02:14,860 - INFO - Searching metadata for: sister succubus +2026-01-06 20:02:15,062 - INFO - Fetching metadata from: https://nhentai.net/g/619320/ +2026-01-06 20:02:15,430 - INFO - Updating metadata for: i_fell_for_a_female_ghost +2026-01-06 20:02:15,431 - INFO - Searching metadata for: i fell for a female ghost +2026-01-06 20:02:15,713 - INFO - Fetching metadata from: https://nhentai.net/g/545216/ +2026-01-06 20:02:15,919 - INFO - Updating metadata for: [Mata Ashita (Oohira Sunset)] Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun_tl] [Digital] +2026-01-06 20:02:15,919 - INFO - Searching metadata for: Mata Ashita (Oohira Sunset) Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-06 20:02:16,360 - INFO - Searching metadata for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-06 20:02:16,865 - INFO - Searching MangaUpdates for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-06 20:02:18,299 - INFO - Updating metadata for: shrine_maidens_of_injin +2026-01-06 20:02:18,299 - INFO - Searching metadata for: shrine maidens of injin +2026-01-06 20:02:18,499 - INFO - Fetching metadata from: https://nhentai.net/g/574337/ +2026-01-06 20:02:18,792 - INFO - Updating metadata for: the_daily_lives_of_an_older_brother_x_four_younger_sister +2026-01-06 20:02:18,792 - INFO - Searching metadata for: the daily lives of an older brother x four younger sister +2026-01-06 20:02:19,051 - INFO - Searching MangaUpdates for: the daily lives of an older brother x four younger sister +2026-01-06 20:02:19,610 - INFO - Updating metadata for: all_eyes_on_me +2026-01-06 20:02:19,610 - INFO - Searching metadata for: all eyes on me +2026-01-06 20:02:19,852 - INFO - Fetching metadata from: https://nhentai.net/g/311059/ +2026-01-06 20:02:20,074 - INFO - Updating metadata for: sister_was_thinking_about_her_younger_brothers_sexual_desire_chapter +2026-01-06 20:02:20,075 - INFO - Searching metadata for: sister was thinking about her younger brothers sexual desire chapter +2026-01-06 20:02:20,246 - INFO - Searching MangaUpdates for: sister was thinking about her younger brothers sexual desire chapter +2026-01-06 20:02:20,979 - INFO - Updating metadata for: two_big_tit_gals_find_a_bored_boy +2026-01-06 20:02:20,979 - INFO - Searching metadata for: two big tit gals find a bored boy +2026-01-06 20:02:21,217 - INFO - Fetching metadata from: https://nhentai.net/g/309103/ +2026-01-06 20:02:21,422 - INFO - Updating metadata for: a_sulky_older_sister_who_wants_to_concentrate_on_her_studies +2026-01-06 20:02:21,422 - INFO - Searching metadata for: a sulky older sister who wants to concentrate on her studies +2026-01-06 20:02:21,656 - INFO - Fetching metadata from: https://nhentai.net/g/530432/ +2026-01-06 20:02:21,841 - INFO - Updating metadata for: asekaki_nee_no_neteiru_aida_ni +2026-01-06 20:02:21,841 - INFO - Searching metadata for: asekaki nee no neteiru aida ni +2026-01-06 20:02:22,053 - INFO - Fetching metadata from: https://nhentai.net/g/589040/ +2026-01-06 20:02:22,231 - INFO - Updating metadata for: siblings_matchup_secret_mating_sex_life +2026-01-06 20:02:22,231 - INFO - Searching metadata for: siblings matchup secret mating sex life +2026-01-06 20:02:22,406 - INFO - Fetching metadata from: https://nhentai.net/g/497386/ +2026-01-06 20:02:22,608 - INFO - Updating metadata for: Siblings having sex in the living room like it's normal +2026-01-06 20:02:22,609 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal +2026-01-06 20:02:22,881 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal +2026-01-06 20:02:23,414 - INFO - Updating metadata for: enveloped_by_a_ghost +2026-01-06 20:02:23,414 - INFO - Searching metadata for: enveloped by a ghost +2026-01-06 20:02:23,599 - INFO - Fetching metadata from: https://nhentai.net/g/543084/ +2026-01-06 20:02:23,845 - INFO - Updating metadata for: papa_is_a_loser +2026-01-06 20:02:23,845 - INFO - Searching metadata for: papa is a loser +2026-01-06 20:02:24,148 - INFO - Fetching metadata from: https://nhentai.net/g/543091/ +2026-01-06 20:02:24,367 - INFO - Updating metadata for: hari_x2_honey +2026-01-06 20:02:24,367 - INFO - Searching metadata for: hari x2 honey +2026-01-06 20:02:24,547 - INFO - Searching MangaUpdates for: hari x2 honey +2026-01-06 20:02:24,947 - INFO - Updating metadata for: first_sperm_loving_succubus_dinner_of_cowgirl_and_creampie_sex +2026-01-06 20:02:24,947 - INFO - Searching metadata for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-06 20:02:25,122 - INFO - Searching MangaUpdates for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-06 20:02:25,902 - INFO - Updating metadata for: i_want_it_nurse_me +2026-01-06 20:02:25,902 - INFO - Searching metadata for: i want it nurse me +2026-01-06 20:02:26,249 - INFO - Fetching metadata from: https://nhentai.net/g/308512/ +2026-01-06 20:02:26,456 - INFO - Updating metadata for: fairy_feature_the_mayors_secret +2026-01-06 20:02:26,456 - INFO - Searching metadata for: fairy feature the mayors secret +2026-01-06 20:02:26,611 - INFO - Searching MangaUpdates for: fairy feature the mayors secret +2026-01-06 20:02:27,809 - INFO - Updating metadata for: starting_today_im +2026-01-06 20:02:27,809 - INFO - Searching metadata for: starting today im +2026-01-06 20:02:27,991 - INFO - Searching MangaUpdates for: starting today im +2026-01-06 20:02:29,495 - INFO - Updating metadata for: naive_little_sister_chapter +2026-01-06 20:02:29,496 - INFO - Searching metadata for: naive little sister chapter +2026-01-06 20:02:29,664 - INFO - Searching MangaUpdates for: naive little sister chapter +2026-01-06 20:02:30,188 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite +2026-01-06 20:02:30,188 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite +2026-01-06 20:02:30,501 - INFO - Fetching metadata from: https://nhentai.net/g/596920/ +2026-01-06 20:02:30,699 - INFO - Updating metadata for: autumn_lovers +2026-01-06 20:02:30,699 - INFO - Searching metadata for: autumn lovers +2026-01-06 20:02:30,853 - INFO - Fetching metadata from: https://nhentai.net/g/320576/ +2026-01-06 20:02:31,039 - INFO - Updating metadata for: training_the_older_sister_momomadoka +2026-01-06 20:02:31,039 - INFO - Searching metadata for: training the older sister momomadoka +2026-01-06 20:02:31,215 - INFO - Fetching metadata from: https://nhentai.net/g/546382/ +2026-01-06 20:02:31,421 - INFO - Updating metadata for: doukyuusei_gal_3_ningumi_to +2026-01-06 20:02:31,422 - INFO - Searching metadata for: doukyuusei gal 3 ningumi to +2026-01-06 20:02:31,694 - INFO - Searching MangaUpdates for: doukyuusei gal 3 ningumi to +2026-01-06 20:02:32,061 - INFO - Updating metadata for: Hitoduma Ane _ Married Sister +2026-01-06 20:02:32,062 - INFO - Searching metadata for: Hitoduma Ane Married Sister +2026-01-06 20:02:32,248 - INFO - Searching MangaUpdates for: Hitoduma Ane Married Sister +2026-01-06 20:02:32,949 - INFO - Updating metadata for: winter_omake_bon +2026-01-06 20:02:32,950 - INFO - Searching metadata for: winter omake bon +2026-01-06 20:02:33,125 - INFO - Fetching metadata from: https://nhentai.net/g/527207/ +2026-01-06 20:02:33,320 - INFO - Updating metadata for: perverted_hypnosis_experiment +2026-01-06 20:02:33,321 - INFO - Searching metadata for: perverted hypnosis experiment +2026-01-06 20:02:33,488 - INFO - Fetching metadata from: https://nhentai.net/g/521144/ +2026-01-06 20:02:33,688 - INFO - Updating metadata for: kyoudai_no_naka +2026-01-06 20:02:33,689 - INFO - Searching metadata for: kyoudai no naka +2026-01-06 20:02:33,996 - INFO - Fetching metadata from: https://nhentai.net/g/618441/ +2026-01-06 20:02:34,250 - INFO - Updating metadata for: sometimes_i_draw_manga +2026-01-06 20:02:34,250 - INFO - Searching metadata for: sometimes i draw manga +2026-01-06 20:02:34,443 - INFO - Fetching metadata from: https://nhentai.net/g/519608/ +2026-01-06 20:02:34,620 - INFO - Updating metadata for: apron +2026-01-06 20:02:34,620 - INFO - Searching metadata for: apron +2026-01-06 20:02:34,846 - INFO - Fetching metadata from: https://nhentai.net/g/621140/ +2026-01-06 20:02:35,019 - INFO - Updating metadata for: namaiki_na_hahaoya_o_honnin_ni_mo_kizukarezu_ni_minkan_suru_houhou +2026-01-06 20:02:35,019 - INFO - Searching metadata for: namaiki na hahaoya o honnin ni mo kizukarezu ni minkan suru houhou +2026-01-06 20:02:35,324 - INFO - Fetching metadata from: https://nhentai.net/g/298780/ +2026-01-06 20:02:35,513 - INFO - Updating metadata for: haha_ga_saikon_shitara_gikei_ga_chou_kuzu +2026-01-06 20:02:35,514 - INFO - Searching metadata for: haha ga saikon shitara gikei ga chou kuzu +2026-01-06 20:02:35,767 - INFO - Fetching metadata from: https://nhentai.net/g/532104/ +2026-01-06 20:02:36,070 - INFO - Updating metadata for: lets_do_it +2026-01-06 20:02:36,071 - INFO - Searching metadata for: lets do it +2026-01-06 20:02:36,313 - INFO - Fetching metadata from: https://nhentai.net/g/588286/ +2026-01-06 20:02:36,509 - INFO - Updating metadata for: naomi san wa ore no sefri ch 1 +2026-01-06 20:02:36,510 - INFO - Searching metadata for: naomi san wa ore no sefri ch 1 +2026-01-06 20:02:36,868 - INFO - Fetching metadata from: https://nhentai.net/g/601989/ +2026-01-06 20:02:37,094 - INFO - Updating metadata for: namaiki_sanshimai +2026-01-06 20:02:37,094 - INFO - Searching metadata for: namaiki sanshimai +2026-01-06 20:02:37,261 - INFO - Fetching metadata from: https://nhentai.net/g/560751/ +2026-01-06 20:02:37,502 - INFO - Updating metadata for: a_story_about_my_little_sister_giving_me_titjobs +2026-01-06 20:02:37,503 - INFO - Searching metadata for: a story about my little sister giving me titjobs +2026-01-06 20:02:37,840 - INFO - Fetching metadata from: https://nhentai.net/g/524952/ +2026-01-06 20:02:38,059 - INFO - Updating metadata for: fuyu_yui +2026-01-06 20:02:38,059 - INFO - Searching metadata for: fuyu yui +2026-01-06 20:02:38,286 - INFO - Fetching metadata from: https://nhentai.net/g/589928/ +2026-01-06 20:02:38,471 - INFO - Updating metadata for: i_matched_with_my_friends_mom_chapter +2026-01-06 20:02:38,471 - INFO - Searching metadata for: i matched with my friends mom chapter +2026-01-06 20:02:38,709 - INFO - Searching MangaUpdates for: i matched with my friends mom chapter +2026-01-06 20:02:39,427 - INFO - Updating metadata for: love_wheel +2026-01-06 20:02:39,428 - INFO - Searching metadata for: love wheel +2026-01-06 20:02:39,616 - INFO - Fetching metadata from: https://nhentai.net/g/599889/ +2026-01-06 20:02:39,844 - INFO - Updating metadata for: [Heart Manju Mania (Akata Izuki)] Cocoro Controller 2 [English] +2026-01-06 20:02:39,844 - INFO - Searching metadata for: Heart Manju Mania (Akata Izuki) Cocoro Controller 2 [English] +2026-01-06 20:02:40,028 - INFO - Fetching metadata from: https://nhentai.net/g/599509/ +2026-01-06 20:02:40,255 - INFO - Updating metadata for: the_sex_life_of_andy_and_leyley +2026-01-06 20:02:40,256 - INFO - Searching metadata for: the sex life of andy and leyley +2026-01-06 20:02:40,459 - INFO - Fetching metadata from: https://nhentai.net/g/570099/ +2026-01-06 20:02:40,634 - INFO - Updating metadata for: mozzarella_the_new_slutty_pussy +2026-01-06 20:02:40,634 - INFO - Searching metadata for: mozzarella the new slutty pussy +2026-01-06 20:02:40,801 - INFO - Searching MangaUpdates for: mozzarella the new slutty pussy +2026-01-06 20:02:42,511 - INFO - Updating metadata for: [ABBB] How to make a family using hypnosis app [English] [Decensored] +2026-01-06 20:02:42,511 - INFO - Searching metadata for: ABBB How to make a family using hypnosis app [English] [Decensored] +2026-01-06 20:02:42,785 - INFO - Fetching metadata from: https://nhentai.net/g/431170/ +2026-01-06 20:02:43,001 - INFO - Updating metadata for: wife_pickle +2026-01-06 20:02:43,002 - INFO - Searching metadata for: wife pickle +2026-01-06 20:02:43,178 - INFO - Fetching metadata from: https://nhentai.net/g/592704/ +2026-01-06 20:02:43,361 - INFO - Updating metadata for: [MN] My Big Breast Sister +2026-01-06 20:02:43,361 - INFO - Searching metadata for: MN My Big Breast Sister +2026-01-06 20:02:43,546 - INFO - Fetching metadata from: https://nhentai.net/g/609562/ +2026-01-06 20:02:43,742 - INFO - Updating metadata for: you_must_breed_your_sisters_to_leave_this_village +2026-01-06 20:02:43,742 - INFO - Searching metadata for: you must breed your sisters to leave this village +2026-01-06 20:02:44,010 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-06 20:02:44,219 - INFO - Updating metadata for: mother_and_son_and_father_and_daughter_tonight_is_incest_night +2026-01-06 20:02:44,220 - INFO - Searching metadata for: mother and son and father and daughter tonight is incest night +2026-01-06 20:02:44,446 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-06 20:02:44,631 - INFO - Updating metadata for: [Takashima] FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-06 20:02:44,632 - INFO - Searching metadata for: Takashima FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-06 20:02:44,902 - INFO - Fetching metadata from: https://nhentai.net/g/515808/ +2026-01-06 20:02:45,105 - INFO - Updating metadata for: teasing_big_sis +2026-01-06 20:02:45,105 - INFO - Searching metadata for: teasing big sis +2026-01-06 20:02:45,283 - INFO - Fetching metadata from: https://nhentai.net/g/591734/ +2026-01-06 20:02:45,486 - INFO - Updating metadata for: forward +2026-01-06 20:02:45,487 - INFO - Searching metadata for: forward +2026-01-06 20:02:45,654 - INFO - Fetching metadata from: https://nhentai.net/g/583038/ +2026-01-06 20:02:45,846 - INFO - Updating metadata for: my_sister_doesnt_laugh +2026-01-06 20:02:45,846 - INFO - Searching metadata for: my sister doesnt laugh +2026-01-06 20:02:46,011 - INFO - Searching MangaUpdates for: my sister doesnt laugh +2026-01-06 20:02:46,761 - INFO - Updating metadata for: big_sis_wants_to_convince_her_lil_bro +2026-01-06 20:02:46,761 - INFO - Searching metadata for: big sis wants to convince her lil bro +2026-01-06 20:02:46,999 - INFO - Fetching metadata from: https://nhentai.net/g/310401/ +2026-01-06 20:02:47,184 - INFO - Updating metadata for: misato_x_shinji_baby_making +2026-01-06 20:02:47,185 - INFO - Searching metadata for: misato x shinji baby making +2026-01-06 20:02:47,353 - INFO - Searching MangaUpdates for: misato x shinji baby making +2026-01-06 20:02:47,717 - INFO - Updating metadata for: my_wife_left_me_because_i_was +2026-01-06 20:02:47,718 - INFO - Searching metadata for: my wife left me because i was +2026-01-06 20:02:48,015 - INFO - Fetching metadata from: https://nhentai.net/g/593456/ +2026-01-06 20:02:48,276 - INFO - Updating metadata for: human_manipulating_remote_control +2026-01-06 20:02:48,276 - INFO - Searching metadata for: human manipulating remote control +2026-01-06 20:02:48,452 - INFO - Fetching metadata from: https://nhentai.net/g/598745/ +2026-01-06 20:02:48,685 - INFO - Updating metadata for: bitch_na_inanesama +2026-01-06 20:02:48,685 - INFO - Searching metadata for: bitch na inanesama +2026-01-06 20:02:48,866 - INFO - Searching MangaUpdates for: bitch na inanesama +2026-01-06 20:02:49,066 - INFO - Updating metadata for: family_mischief_lewd +2026-01-06 20:02:49,066 - INFO - Searching metadata for: family mischief lewd +2026-01-06 20:02:49,295 - INFO - Fetching metadata from: https://nhentai.net/g/427171/ +2026-01-06 20:02:49,490 - INFO - Updating metadata for: [Poriuretan] Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-06 20:02:49,491 - INFO - Searching metadata for: Poriuretan Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-06 20:02:49,754 - INFO - Fetching metadata from: https://nhentai.net/g/588809/ +2026-01-06 20:02:49,948 - INFO - Updating metadata for: my_daily_life_taking_care_of_sexual_urges_with_my_naughty_sister +2026-01-06 20:02:49,948 - INFO - Searching metadata for: my daily life taking care of sexual urges with my naughty sister +2026-01-06 20:02:50,169 - INFO - Searching MangaUpdates for: my daily life taking care of sexual urges with my naughty sister +2026-01-06 20:02:50,810 - INFO - Updating metadata for: a_history_of_no_boyfriends_equal_me_at_my_age +2026-01-06 20:02:50,811 - INFO - Searching metadata for: a history of no boyfriends equal me at my age +2026-01-06 20:02:51,084 - INFO - Searching MangaUpdates for: a history of no boyfriends equal me at my age +2026-01-06 20:02:51,782 - INFO - Updating metadata for: one_familys_plan_to_save_electricty +2026-01-06 20:02:51,783 - INFO - Searching metadata for: one familys plan to save electricty +2026-01-06 20:02:51,992 - INFO - Searching MangaUpdates for: one familys plan to save electricty +2026-01-06 20:02:52,287 - INFO - Updating metadata for: what_we_have_is_strictly_business +2026-01-06 20:02:52,288 - INFO - Searching metadata for: what we have is strictly business +2026-01-06 20:02:52,513 - INFO - Fetching metadata from: https://nhentai.net/g/596884/ +2026-01-06 20:02:52,753 - INFO - Updating metadata for: [Juna Juna Juice] Pokemon Series (Pokemon) [English] +2026-01-06 20:02:52,753 - INFO - Searching metadata for: Juna Juna Juice Pokemon Series (Pokemon) [English] +2026-01-06 20:02:52,924 - INFO - Fetching metadata from: https://nhentai.net/g/595886/ +2026-01-06 20:02:53,126 - INFO - Updating metadata for: bitch_dirty_sister +2026-01-06 20:02:53,126 - INFO - Searching metadata for: bitch dirty sister +2026-01-06 20:02:53,293 - INFO - Fetching metadata from: https://nhentai.net/g/317791/ +2026-01-06 20:02:53,548 - INFO - Updating metadata for: kayanee_and_the_old_man_memories_chapter +2026-01-06 20:02:53,548 - INFO - Searching metadata for: kayanee and the old man memories chapter +2026-01-06 20:02:53,707 - INFO - Searching MangaUpdates for: kayanee and the old man memories chapter +2026-01-06 20:02:54,510 - INFO - Updating metadata for: momojiri_ocean +2026-01-06 20:02:54,511 - INFO - Searching metadata for: momojiri ocean +2026-01-06 20:02:54,669 - INFO - Fetching metadata from: https://nhentai.net/g/164037/ +2026-01-06 20:02:54,853 - INFO - Updating metadata for: daily_life_with_my_sexy_stepmom +2026-01-06 20:02:54,853 - INFO - Searching metadata for: daily life with my sexy stepmom +2026-01-06 20:02:55,079 - INFO - Fetching metadata from: https://nhentai.net/g/519708/ +2026-01-06 20:02:55,289 - INFO - Updating metadata for: older_stepsister_teaches_her_cheeky_little_stepbrother +2026-01-06 20:02:55,289 - INFO - Searching metadata for: older stepsister teaches her cheeky little stepbrother +2026-01-06 20:02:55,465 - INFO - Searching MangaUpdates for: older stepsister teaches her cheeky little stepbrother +2026-01-06 20:02:56,916 - INFO - Updating metadata for: falling_in_love_at_the_brothel.5 +2026-01-06 20:02:56,916 - INFO - Searching metadata for: falling in love at the brothel.5 +2026-01-06 20:02:57,186 - INFO - Fetching metadata from: https://nhentai.net/g/574610/ +2026-01-06 20:02:57,381 - INFO - Updating metadata for: okaasan_to_naisho +2026-01-06 20:02:57,381 - INFO - Searching metadata for: okaasan to naisho +2026-01-06 20:02:57,586 - INFO - Fetching metadata from: https://nhentai.net/g/59216/ +2026-01-06 20:02:57,783 - INFO - Updating metadata for: punishment_for_the_feral_hound_in_heat +2026-01-06 20:02:57,784 - INFO - Searching metadata for: punishment for the feral hound in heat +2026-01-06 20:02:57,992 - INFO - Fetching metadata from: https://nhentai.net/g/528611/ +2026-01-06 20:02:58,187 - INFO - Updating metadata for: my_little_sister_has_a_big_body_and_a_big_heart +2026-01-06 20:02:58,187 - INFO - Searching metadata for: my little sister has a big body and a big heart +2026-01-06 20:02:58,546 - INFO - Fetching metadata from: https://nhentai.net/g/548775/ +2026-01-06 20:02:58,753 - INFO - Updating metadata for: [Emori Uki] Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-06 20:02:58,754 - INFO - Searching metadata for: Emori Uki Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-06 20:02:59,132 - INFO - Searching metadata for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-06 20:02:59,534 - INFO - Searching MangaUpdates for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-06 20:03:00,690 - INFO - Updating metadata for: [Kazuhiro] Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-06 20:03:00,691 - INFO - Searching metadata for: Kazuhiro Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-06 20:03:00,973 - INFO - Fetching metadata from: https://nhentai.net/g/340438/ +2026-01-06 20:03:01,163 - INFO - Updating metadata for: [Fence14] Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-06 20:03:01,163 - INFO - Searching metadata for: Fence14 Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-06 20:03:01,405 - INFO - Fetching metadata from: https://nhentai.net/g/595742/ +2026-01-06 20:03:01,682 - INFO - Updating metadata for: sakusei_shuki_shuki_sisters +2026-01-06 20:03:01,683 - INFO - Searching metadata for: sakusei shuki shuki sisters +2026-01-06 20:03:01,853 - INFO - Fetching metadata from: https://nhentai.net/g/555633/ +2026-01-06 20:03:02,098 - INFO - Updating metadata for: dosukebe_saimin_revenge +2026-01-06 20:03:02,098 - INFO - Searching metadata for: dosukebe saimin revenge +2026-01-06 20:03:02,278 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-06 20:03:02,560 - INFO - Updating metadata for: A Son's Choice +2026-01-06 20:03:02,560 - INFO - Searching metadata for: A Son's Choice +2026-01-06 20:03:02,872 - INFO - Searching MangaUpdates for: A Son's Choice +2026-01-06 20:03:03,615 - INFO - Updating metadata for: [Kawamori Mizaki] Mainichi uwakidzuma {English] +2026-01-06 20:03:03,615 - INFO - Searching metadata for: Kawamori Mizaki Mainichi uwakidzuma {English] +2026-01-06 20:03:03,786 - INFO - Fetching metadata from: https://nhentai.net/g/604700/ +2026-01-06 20:03:03,972 - INFO - Updating metadata for: skin_tight_sticky_intercourse +2026-01-06 20:03:03,972 - INFO - Searching metadata for: skin tight sticky intercourse +2026-01-06 20:03:04,147 - INFO - Fetching metadata from: https://nhentai.net/g/598517/ +2026-01-06 20:03:04,424 - INFO - Updating metadata for: [Tokyo Ereki Studio (Azuma Ryo)] JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-06 20:03:04,424 - INFO - Searching metadata for: Tokyo Ereki Studio (Azuma Ryo) JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-06 20:03:04,777 - INFO - Fetching metadata from: https://nhentai.net/g/618553/ +2026-01-06 20:03:04,972 - INFO - Updating metadata for: supplementary_sex_education +2026-01-06 20:03:04,972 - INFO - Searching metadata for: supplementary sex education +2026-01-06 20:03:05,145 - INFO - Searching MangaUpdates for: supplementary sex education +2026-01-06 20:03:05,640 - INFO - Updating metadata for: taimanin_shinobu_series +2026-01-06 20:03:05,640 - INFO - Searching metadata for: taimanin shinobu series +2026-01-06 20:03:05,789 - INFO - Searching MangaUpdates for: taimanin shinobu series +2026-01-06 20:03:06,165 - INFO - Updating metadata for: [Sakai Hamachi] Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-06 20:03:06,165 - INFO - Searching metadata for: Sakai Hamachi Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-06 20:03:06,415 - INFO - Fetching metadata from: https://nhentai.net/g/602876/ +2026-01-06 20:03:06,634 - INFO - Updating metadata for: a_molester_took_everything_from_me_chapter_ +2026-01-06 20:03:06,635 - INFO - Searching metadata for: a molester took everything from me chapter +2026-01-06 20:03:06,848 - INFO - Searching MangaUpdates for: a molester took everything from me chapter +2026-01-06 20:03:07,617 - INFO - Updating metadata for: a_loner_makes_the_right_choices_and_goes_out_with_a_seiso_girl_of_course_theres_sex_as_well +2026-01-06 20:03:07,618 - INFO - Searching metadata for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-06 20:03:07,952 - INFO - Searching MangaUpdates for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-06 20:03:08,689 - INFO - Updating metadata for: maho_shojo_ointo_seba_mazu_haha_o_iyo +2026-01-06 20:03:08,690 - INFO - Searching metadata for: maho shojo ointo seba mazu haha o iyo +2026-01-06 20:03:08,899 - INFO - Fetching metadata from: https://nhentai.net/g/587203/ +2026-01-06 20:03:09,104 - INFO - Updating metadata for: paiotsu_kaede_live +2026-01-06 20:03:09,104 - INFO - Searching metadata for: paiotsu kaede live +2026-01-06 20:03:09,280 - INFO - Searching MangaUpdates for: paiotsu kaede live +2026-01-06 20:03:09,520 - INFO - Updating metadata for: otakuhime_and_the_lovey_dovey_bath +2026-01-06 20:03:09,520 - INFO - Searching metadata for: otakuhime and the lovey dovey bath +2026-01-06 20:03:09,713 - INFO - Fetching metadata from: https://nhentai.net/g/317091/ +2026-01-06 20:03:10,053 - INFO - Updating metadata for: airandou +2026-01-06 20:03:10,053 - INFO - Searching metadata for: airandou +2026-01-06 20:03:10,256 - INFO - Fetching metadata from: https://nhentai.net/g/620480/ +2026-01-06 20:03:10,480 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 20:03:10,481 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 20:03:10,686 - INFO - Fetching metadata from: https://nhentai.net/g/560447/ +2026-01-06 20:03:10,871 - INFO - Updating metadata for: virginity_prohibition_act_mandatory_baby_making +2026-01-06 20:03:10,871 - INFO - Searching metadata for: virginity prohibition act mandatory baby making +2026-01-06 20:03:11,022 - INFO - Searching MangaUpdates for: virginity prohibition act mandatory baby making +2026-01-06 20:03:12,107 - INFO - Updating metadata for: [Juna Juna Juice] Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-06 20:03:12,107 - INFO - Searching metadata for: Juna Juna Juice Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-06 20:03:12,457 - INFO - Fetching metadata from: https://nhentai.net/g/473301/ +2026-01-06 20:03:12,678 - INFO - Updating metadata for: the_lazy_and_naughty_achan_is_inviting_me +2026-01-06 20:03:12,678 - INFO - Searching metadata for: the lazy and naughty achan is inviting me +2026-01-06 20:03:12,933 - INFO - Searching MangaUpdates for: the lazy and naughty achan is inviting me +2026-01-06 20:03:14,332 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-06 20:03:14,333 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-06 20:03:14,580 - INFO - Fetching metadata from: https://nhentai.net/g/342844/ +2026-01-06 20:03:14,826 - INFO - Updating metadata for: [Nedoko de Nidone (Nashio )] Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-06 20:03:14,826 - INFO - Searching metadata for: Nedoko de Nidone (Nashio ) Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-06 20:03:15,101 - INFO - Fetching metadata from: https://nhentai.net/g/584286/ +2026-01-06 20:03:15,312 - INFO - Updating metadata for: from_nipple_bumps_to_erotic_play_with_my_sister +2026-01-06 20:03:15,313 - INFO - Searching metadata for: from nipple bumps to erotic play with my sister +2026-01-06 20:03:15,604 - INFO - Fetching metadata from: https://nhentai.net/g/587709/ +2026-01-06 20:03:15,812 - INFO - Updating metadata for: heart_mark_oome +2026-01-06 20:03:15,812 - INFO - Searching metadata for: heart mark oome +2026-01-06 20:03:15,988 - INFO - Fetching metadata from: https://nhentai.net/g/585795/ +2026-01-06 20:03:16,272 - INFO - Updating metadata for: [Airandou] Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-06 20:03:16,272 - INFO - Searching metadata for: Airandou Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-06 20:03:16,574 - INFO - Searching metadata for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-06 20:03:16,766 - INFO - Searching MangaUpdates for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-06 20:03:17,653 - INFO - Updating metadata for: everyday_conversations_with_my_big_sister +2026-01-06 20:03:17,654 - INFO - Searching metadata for: everyday conversations with my big sister +2026-01-06 20:03:17,815 - INFO - Searching MangaUpdates for: everyday conversations with my big sister +2026-01-06 20:03:18,368 - INFO - Updating metadata for: [R Koubou (Ruzi)] Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-06 20:03:18,369 - INFO - Searching metadata for: R Koubou (Ruzi) Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-06 20:03:18,728 - INFO - Searching metadata for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-06 20:03:19,018 - INFO - Searching MangaUpdates for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-06 20:03:20,233 - INFO - Updating metadata for: aneoto +2026-01-06 20:03:20,233 - INFO - Searching metadata for: aneoto +2026-01-06 20:03:20,402 - INFO - Fetching metadata from: https://nhentai.net/g/578213/ +2026-01-06 20:03:20,593 - INFO - Updating metadata for: the_making_of_a_cultt_leader +2026-01-06 20:03:20,594 - INFO - Searching metadata for: the making of a cultt leader +2026-01-06 20:03:20,884 - INFO - Searching MangaUpdates for: the making of a cultt leader +2026-01-06 20:03:21,576 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-06 20:03:21,577 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-06 20:03:21,857 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-06 20:03:22,140 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-06 20:03:23,676 - INFO - Updating metadata for: watashi_de_sukkiri_saasechaina_hatsukoi_aite_ni_tsurareru_ore +2026-01-06 20:03:23,677 - INFO - Searching metadata for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-06 20:03:23,916 - INFO - Searching MangaUpdates for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-06 20:03:25,081 - INFO - Updating metadata for: perverted_body_tight_mama_monster +2026-01-06 20:03:25,084 - INFO - Searching metadata for: perverted body tight mama monster +2026-01-06 20:03:25,314 - INFO - Fetching metadata from: https://nhentai.net/g/544653/ +2026-01-06 20:03:25,530 - INFO - Updating metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-06 20:03:25,530 - INFO - Searching metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-06 20:03:25,748 - INFO - Fetching metadata from: https://nhentai.net/g/496743/ +2026-01-06 20:03:25,976 - INFO - Updating metadata for: gishi_ni_shiborareru_hanashi +2026-01-06 20:03:25,977 - INFO - Searching metadata for: gishi ni shiborareru hanashi +2026-01-06 20:03:26,181 - INFO - Fetching metadata from: https://nhentai.net/g/588299/ +2026-01-06 20:03:26,365 - INFO - Updating metadata for: [Nishikawa Kou] Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-06 20:03:26,366 - INFO - Searching metadata for: Nishikawa Kou Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-06 20:03:26,669 - INFO - Searching metadata for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-06 20:03:27,013 - INFO - Searching MangaUpdates for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-06 20:03:28,429 - INFO - Updating metadata for: call_me_a_slut +2026-01-06 20:03:28,429 - INFO - Searching metadata for: call me a slut +2026-01-06 20:03:28,683 - INFO - Fetching metadata from: https://nhentai.net/g/532748/ +2026-01-06 20:03:28,860 - INFO - Updating metadata for: rental_mama_rental_mom +2026-01-06 20:03:28,860 - INFO - Searching metadata for: rental mama rental mom +2026-01-06 20:03:29,044 - INFO - Fetching metadata from: https://nhentai.net/g/593813/ +2026-01-06 20:03:29,258 - INFO - Updating metadata for: oshi_to_ecchina_koto_nante_muri_muri_muri +2026-01-06 20:03:29,258 - INFO - Searching metadata for: oshi to ecchina koto nante muri muri muri +2026-01-06 20:03:29,492 - INFO - Searching MangaUpdates for: oshi to ecchina koto nante muri muri muri +2026-01-06 20:03:29,932 - INFO - Updating metadata for: Kateinai Henai +2026-01-06 20:03:29,932 - INFO - Searching metadata for: Kateinai Henai +2026-01-06 20:03:30,100 - INFO - Fetching metadata from: https://nhentai.net/g/603393/ +2026-01-06 20:03:30,367 - INFO - Updating metadata for: devi_navi +2026-01-06 20:03:30,367 - INFO - Searching metadata for: devi navi +2026-01-06 20:03:30,553 - INFO - Fetching metadata from: https://nhentai.net/g/596339/ +2026-01-06 20:03:30,843 - INFO - Updating metadata for: [Chiguchi Miri] Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-06 20:03:30,843 - INFO - Searching metadata for: Chiguchi Miri Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-06 20:03:31,160 - INFO - Searching metadata for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-06 20:03:31,549 - INFO - Searching MangaUpdates for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-06 20:03:32,812 - INFO - Updating metadata for: [Muufa] One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-06 20:03:32,814 - INFO - Searching metadata for: Muufa One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-06 20:03:33,000 - INFO - Searching metadata for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-06 20:03:33,191 - INFO - Searching MangaUpdates for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-06 20:03:34,242 - INFO - Updating metadata for: leave_me_alone +2026-01-06 20:03:34,242 - INFO - Searching metadata for: leave me alone +2026-01-06 20:03:34,458 - INFO - Fetching metadata from: https://nhentai.net/g/557684/ +2026-01-06 20:03:34,652 - INFO - Updating metadata for: the_day_the_youngest_son_lost_his_virginity_thanks_to_his_mother_in_a_swimsuit +2026-01-06 20:03:34,652 - INFO - Searching metadata for: the day the youngest son lost his virginity thanks to his mother in a swimsuit +2026-01-06 20:03:34,955 - INFO - Fetching metadata from: https://nhentai.net/g/550368/ +2026-01-06 20:03:35,161 - INFO - Updating metadata for: misaesan_no_shiri_ass +2026-01-06 20:03:35,161 - INFO - Searching metadata for: misaesan no shiri ass +2026-01-06 20:03:35,306 - INFO - Searching MangaUpdates for: misaesan no shiri ass +2026-01-06 20:03:35,730 - INFO - Updating metadata for: and_then_i_will_be_a_mom +2026-01-06 20:03:35,730 - INFO - Searching metadata for: and then i will be a mom +2026-01-06 20:03:36,110 - INFO - Searching MangaUpdates for: and then i will be a mom +2026-01-06 20:03:36,980 - INFO - Updating metadata for: a_molester_took_everything_from_me +2026-01-06 20:03:36,981 - INFO - Searching metadata for: a molester took everything from me +2026-01-06 20:03:37,221 - INFO - Fetching metadata from: https://nhentai.net/g/602000/ +2026-01-06 20:03:37,436 - INFO - Updating metadata for: will_you_help_me +2026-01-06 20:03:37,437 - INFO - Searching metadata for: will you help me +2026-01-06 20:03:37,648 - INFO - Fetching metadata from: https://nhentai.net/g/277925/ +2026-01-06 20:03:37,842 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-06 20:03:37,842 - INFO - Searching metadata for: Manbou Shoten Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-06 20:03:38,052 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-06 20:03:38,260 - INFO - Updating metadata for: katamichi_catchball +2026-01-06 20:03:38,260 - INFO - Searching metadata for: katamichi catchball +2026-01-06 20:03:38,532 - INFO - Fetching metadata from: https://nhentai.net/g/528903/ +2026-01-06 20:03:38,744 - INFO - Updating metadata for: bareback_sex_life_with_da_vinci +2026-01-06 20:03:38,745 - INFO - Searching metadata for: bareback sex life with da vinci +2026-01-06 20:03:38,986 - INFO - Fetching metadata from: https://nhentai.net/g/250741/ +2026-01-06 20:03:39,223 - INFO - Updating metadata for: my_defenseless_mothers +2026-01-06 20:03:39,224 - INFO - Searching metadata for: my defenseless mothers +2026-01-06 20:03:39,430 - INFO - Searching MangaUpdates for: my defenseless mothers +2026-01-06 20:03:39,857 - INFO - Updating metadata for: a_day_for_incest +2026-01-06 20:03:39,857 - INFO - Searching metadata for: a day for incest +2026-01-06 20:03:40,090 - INFO - Fetching metadata from: https://nhentai.net/g/497650/ +2026-01-06 20:03:40,345 - INFO - Updating metadata for: jagan_no_saimin_inryoku_de_seitokai_les_joshitachi +2026-01-06 20:03:40,346 - INFO - Searching metadata for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-06 20:03:40,528 - INFO - Searching MangaUpdates for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-06 20:03:43,456 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite_chapter_ +2026-01-06 20:03:43,456 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-06 20:03:43,804 - INFO - Searching MangaUpdates for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-06 20:03:44,948 - INFO - Updating metadata for: making_a_bet_with_a_competitive_niece +2026-01-06 20:03:44,949 - INFO - Searching metadata for: making a bet with a competitive niece +2026-01-06 20:03:45,156 - INFO - Searching MangaUpdates for: making a bet with a competitive niece +2026-01-06 20:03:45,720 - INFO - Updating metadata for: [k8on] It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-06 20:03:45,721 - INFO - Searching metadata for: k8on It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-06 20:03:46,176 - INFO - Searching metadata for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-06 20:03:46,694 - INFO - Searching MangaUpdates for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-06 20:03:47,535 - INFO - Updating metadata for: the_twins_next_door_were_former_super_sentai +2026-01-06 20:03:47,535 - INFO - Searching metadata for: the twins next door were former super sentai +2026-01-06 20:03:47,753 - INFO - Fetching metadata from: https://nhentai.net/g/589945/ +2026-01-06 20:03:47,948 - INFO - Updating metadata for: nureane_batsuichi_no_ane_to_sex_o_shita_natsu_no_yoru +2026-01-06 20:03:47,949 - INFO - Searching metadata for: nureane batsuichi no ane to sex o shita natsu no yoru +2026-01-06 20:03:48,291 - INFO - Fetching metadata from: https://nhentai.net/g/413708/ +2026-01-06 20:03:48,513 - INFO - Updating metadata for: [Juna Juna Juice] Supergirl From The JJJ Universe (The Flash) [English] +2026-01-06 20:03:48,513 - INFO - Searching metadata for: Juna Juna Juice Supergirl From The JJJ Universe (The Flash) [English] +2026-01-06 20:03:48,701 - INFO - Fetching metadata from: https://nhentai.net/g/462209/ +2026-01-06 20:03:48,880 - INFO - Updating metadata for: shes_always_obstinate +2026-01-06 20:03:48,880 - INFO - Searching metadata for: shes always obstinate +2026-01-06 20:03:49,025 - INFO - Searching MangaUpdates for: shes always obstinate +2026-01-06 20:03:49,803 - INFO - Updating metadata for: mikamikuns_incestuous_situation +2026-01-06 20:03:49,803 - INFO - Searching metadata for: mikamikuns incestuous situation +2026-01-06 20:03:49,951 - INFO - Searching MangaUpdates for: mikamikuns incestuous situation +2026-01-06 20:03:50,594 - INFO - Updating metadata for: [Yue] Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-06 20:03:50,594 - INFO - Searching metadata for: Yue Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-06 20:03:50,879 - INFO - Fetching metadata from: https://nhentai.net/g/588579/ +2026-01-06 20:03:51,051 - INFO - Updating metadata for: [Pentacle(Shimipan)] I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-06 20:03:51,052 - INFO - Searching metadata for: Pentacle(Shimipan) I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-06 20:03:51,544 - INFO - Fetching metadata from: https://nhentai.net/g/603112/ +2026-01-06 20:03:51,824 - INFO - Updating metadata for: my_big_little_sister +2026-01-06 20:03:51,824 - INFO - Searching metadata for: my big little sister +2026-01-06 20:03:52,057 - INFO - Fetching metadata from: https://nhentai.net/g/619667/ +2026-01-06 20:03:52,254 - INFO - Updating metadata for: [Zandoro] A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-06 20:03:52,254 - INFO - Searching metadata for: Zandoro A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-06 20:03:52,520 - INFO - Fetching metadata from: https://nhentai.net/g/582285/ +2026-01-06 20:03:52,698 - INFO - Updating metadata for: awakening_of_the_female_instinct +2026-01-06 20:03:52,699 - INFO - Searching metadata for: awakening of the female instinct +2026-01-06 20:03:52,894 - INFO - Fetching metadata from: https://nhentai.net/g/592099/ +2026-01-06 20:03:53,233 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-06 20:03:53,233 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-06 20:03:53,506 - INFO - Fetching metadata from: https://nhentai.net/g/339531/ +2026-01-06 20:03:53,747 - INFO - Updating metadata for: friendly_brother_and_sister +2026-01-06 20:03:53,747 - INFO - Searching metadata for: friendly brother and sister +2026-01-06 20:03:53,920 - INFO - Fetching metadata from: https://nhentai.net/g/531957/ +2026-01-06 20:03:54,120 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Mechakucha Sex suru Ohanashi +2026-01-06 20:03:54,121 - INFO - Searching metadata for: Manbou Shoten Shitei ga Mechakucha Sex suru Ohanashi +2026-01-06 20:03:54,430 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-06 20:03:54,746 - INFO - Updating metadata for: you_must_breed_your_sister_to_leave_this_island +2026-01-06 20:03:54,746 - INFO - Searching metadata for: you must breed your sister to leave this island +2026-01-06 20:03:54,988 - INFO - Fetching metadata from: https://nhentai.net/g/617218/ +2026-01-06 20:03:55,174 - INFO - Updating metadata for: fence14 +2026-01-06 20:03:55,174 - INFO - Searching metadata for: fence14 +2026-01-06 20:03:55,356 - INFO - Fetching metadata from: https://nhentai.net/g/619305/ +2026-01-06 20:03:55,547 - INFO - Updating metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ _ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-06 20:03:55,547 - INFO - Searching metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-06 20:03:55,829 - INFO - Fetching metadata from: https://nhentai.net/g/400327/ +2026-01-06 20:03:56,072 - INFO - Updating metadata for: elder_sis_cosplay +2026-01-06 20:03:56,072 - INFO - Searching metadata for: elder sis cosplay +2026-01-06 20:03:56,255 - INFO - Fetching metadata from: https://nhentai.net/g/147261/ +2026-01-06 20:03:56,477 - INFO - Updating metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-06 20:03:56,477 - INFO - Searching metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-06 20:03:56,826 - INFO - Searching MangaUpdates for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-06 20:03:58,119 - INFO - Updating metadata for: maiyasans_money_issues +2026-01-06 20:03:58,119 - INFO - Searching metadata for: maiyasans money issues +2026-01-06 20:03:58,273 - INFO - Searching MangaUpdates for: maiyasans money issues +2026-01-06 20:03:59,337 - INFO - Updating metadata for: mama_cos +2026-01-06 20:03:59,339 - INFO - Searching metadata for: mama cos +2026-01-06 20:03:59,567 - INFO - Fetching metadata from: https://nhentai.net/g/618775/ +2026-01-06 20:03:59,765 - INFO - Updating metadata for: [Shirono Mahiro] Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-06 20:03:59,765 - INFO - Searching metadata for: Shirono Mahiro Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-06 20:04:00,063 - INFO - Fetching metadata from: https://nhentai.net/g/332054/ +2026-01-06 20:04:00,368 - INFO - Updating metadata for: im_being_sex_educated_by_my_overprotective_mother_chapter +2026-01-06 20:04:00,368 - INFO - Searching metadata for: im being sex educated by my overprotective mother chapter +2026-01-06 20:04:00,572 - INFO - Searching MangaUpdates for: im being sex educated by my overprotective mother chapter +2026-01-06 20:04:01,449 - INFO - Updating metadata for: imouto_ookiindamon_chapter +2026-01-06 20:04:01,449 - INFO - Searching metadata for: imouto ookiindamon chapter +2026-01-06 20:04:01,598 - INFO - Searching MangaUpdates for: imouto ookiindamon chapter +2026-01-06 20:04:02,476 - INFO - Updating metadata for: my_dear_sister_is_mine +2026-01-06 20:04:02,477 - INFO - Searching metadata for: my dear sister is mine +2026-01-06 20:04:02,744 - INFO - Fetching metadata from: https://nhentai.net/g/567113/ +2026-01-06 20:04:02,982 - INFO - Updating metadata for: [Qdou Kei] Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-06 20:04:02,983 - INFO - Searching metadata for: Qdou Kei Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-06 20:04:03,263 - INFO - Fetching metadata from: https://nhentai.net/g/246334/ +2026-01-06 20:04:03,511 - INFO - Updating metadata for: [nounanka (Abubu)] Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-06 20:04:03,512 - INFO - Searching metadata for: nounanka (Abubu) Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-06 20:04:03,812 - INFO - Fetching metadata from: https://nhentai.net/g/601119/ +2026-01-06 20:04:04,043 - INFO - Updating metadata for: story_about_how_i_fucked_cucked_and_brought_to_bliss_some_languid_wives +2026-01-06 20:04:04,043 - INFO - Searching metadata for: story about how i fucked cucked and brought to bliss some languid wives +2026-01-06 20:04:04,318 - INFO - Fetching metadata from: https://nhentai.net/g/578155/ +2026-01-06 20:04:04,521 - INFO - Updating metadata for: [Shiki] Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-06 20:04:04,522 - INFO - Searching metadata for: Shiki Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-06 20:04:04,992 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-06 20:04:05,413 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-06 20:04:06,212 - INFO - Updating metadata for: uchi_ni_kaettara_mama_ga_zenra_de_hatsujou_shiteta_ken +2026-01-06 20:04:06,212 - INFO - Searching metadata for: uchi ni kaettara mama ga zenra de hatsujou shiteta ken +2026-01-06 20:04:06,649 - INFO - Fetching metadata from: https://nhentai.net/g/329704/ +2026-01-06 20:04:06,841 - INFO - Updating metadata for: [Teoi] Youmu-chan hypnosis sex +2026-01-06 20:04:06,842 - INFO - Searching metadata for: Teoi Youmu-chan hypnosis sex +2026-01-06 20:04:07,003 - INFO - Searching metadata for: Youmu-chan hypnosis sex +2026-01-06 20:04:07,204 - INFO - Searching MangaUpdates for: Youmu-chan hypnosis sex +2026-01-06 20:04:07,657 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-06 20:04:07,657 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-06 20:04:07,981 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-06 20:04:08,301 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-06 20:04:09,519 - INFO - Updating metadata for: similar_siblings +2026-01-06 20:04:09,520 - INFO - Searching metadata for: similar siblings +2026-01-06 20:04:09,718 - INFO - Searching MangaUpdates for: similar siblings +2026-01-06 20:04:10,534 - INFO - Updating metadata for: kiyoshiros_last_hours +2026-01-06 20:04:10,534 - INFO - Searching metadata for: kiyoshiros last hours +2026-01-06 20:04:10,677 - INFO - Searching MangaUpdates for: kiyoshiros last hours +2026-01-06 20:04:11,438 - INFO - Updating metadata for: otaku_ni_rikai_aru_gal_yome_ga_otashop +2026-01-06 20:04:11,439 - INFO - Searching metadata for: otaku ni rikai aru gal yome ga otashop +2026-01-06 20:04:11,650 - INFO - Searching MangaUpdates for: otaku ni rikai aru gal yome ga otashop +2026-01-06 20:04:13,017 - INFO - Updating metadata for: [CHOMA] Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-06 20:04:13,017 - INFO - Searching metadata for: CHOMA Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-06 20:04:13,227 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-06 20:04:13,410 - INFO - Updating metadata for: muchi_niku_jokyoushi_tomomi_mama +2026-01-06 20:04:13,410 - INFO - Searching metadata for: muchi niku jokyoushi tomomi mama +2026-01-06 20:04:13,590 - INFO - Searching MangaUpdates for: muchi niku jokyoushi tomomi mama +2026-01-06 20:04:14,399 - INFO - Updating metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru _ Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-06 20:04:14,399 - INFO - Searching metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-06 20:04:14,778 - INFO - Fetching metadata from: https://nhentai.net/g/483349/ +2026-01-06 20:04:14,976 - INFO - Updating metadata for: michelle_to_icha_love +2026-01-06 20:04:14,976 - INFO - Searching metadata for: michelle to icha love +2026-01-06 20:04:15,187 - INFO - Fetching metadata from: https://nhentai.net/g/597558/ +2026-01-06 20:04:15,403 - INFO - Updating metadata for: toshi_densetsu_bitch_joshikai +2026-01-06 20:04:15,403 - INFO - Searching metadata for: toshi densetsu bitch joshikai +2026-01-06 20:04:15,589 - INFO - Fetching metadata from: https://nhentai.net/g/558829/ +2026-01-06 20:04:15,826 - INFO - Updating metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-06 20:04:15,826 - INFO - Searching metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-06 20:04:16,284 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-06 20:04:16,487 - INFO - Updating metadata for: after_a_mouth +2026-01-06 20:04:16,487 - INFO - Searching metadata for: after a mouth +2026-01-06 20:04:16,713 - INFO - Fetching metadata from: https://nhentai.net/g/602572/ +2026-01-06 20:04:17,012 - INFO - Updating metadata for: incestism +2026-01-06 20:04:17,012 - INFO - Searching metadata for: incestism +2026-01-06 20:04:17,182 - INFO - Fetching metadata from: https://nhentai.net/g/600637/ +2026-01-06 20:04:17,360 - INFO - Updating metadata for: life_of_passionate_pleasures +2026-01-06 20:04:17,360 - INFO - Searching metadata for: life of passionate pleasures +2026-01-06 20:04:17,525 - INFO - Fetching metadata from: https://nhentai.net/g/530801/ +2026-01-06 20:04:17,745 - INFO - Updating metadata for: carnal_siblings +2026-01-06 20:04:17,745 - INFO - Searching metadata for: carnal siblings +2026-01-06 20:04:17,902 - INFO - Fetching metadata from: https://nhentai.net/g/505982/ +2026-01-06 20:04:18,125 - INFO - Updating metadata for: naughty_bunny_and_doctor +2026-01-06 20:04:18,125 - INFO - Searching metadata for: naughty bunny and doctor +2026-01-06 20:04:18,315 - INFO - Fetching metadata from: https://nhentai.net/g/577393/ +2026-01-06 20:04:18,623 - INFO - Updating metadata for: hiyake_rikujoubu_oneechan_ni_neteiru_toku_ni_itazura_suru_ecchi_manga +2026-01-06 20:04:18,624 - INFO - Searching metadata for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-06 20:04:18,842 - INFO - Searching MangaUpdates for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-06 20:04:19,876 - INFO - Updating metadata for: reiwas_penis_growth_training_chapter_1 +2026-01-06 20:04:19,876 - INFO - Searching metadata for: reiwas penis growth training chapter 1 +2026-01-06 20:04:20,022 - INFO - Searching MangaUpdates for: reiwas penis growth training chapter 1 +2026-01-06 20:04:21,018 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-06 20:04:21,018 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-06 20:04:21,246 - INFO - Searching metadata for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-06 20:04:21,507 - INFO - Searching MangaUpdates for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-06 20:04:22,997 - INFO - Updating metadata for: ninshin_wa_kinshin_de_to_iu_hou_ga_dekita_node_haha_to_imouto_to_oba_mainichi_ore_no_chi_po_o_neratte_kuru +2026-01-06 20:04:22,997 - INFO - Searching metadata for: ninshin wa kinshin de to iu hou ga dekita node haha to imouto to oba mainichi ore no chi po o neratte kuru +2026-01-06 20:04:23,497 - INFO - Fetching metadata from: https://nhentai.net/g/400868/ +2026-01-06 20:04:23,741 - INFO - Updating metadata for: ani_no_kimoi_gendou_ni_honki +2026-01-06 20:04:23,741 - INFO - Searching metadata for: ani no kimoi gendou ni honki +2026-01-06 20:04:24,036 - INFO - Fetching metadata from: https://nhentai.net/g/511424/ +2026-01-06 20:04:24,228 - INFO - Updating metadata for: gal_bitch_supremacy +2026-01-06 20:04:24,228 - INFO - Searching metadata for: gal bitch supremacy +2026-01-06 20:04:24,421 - INFO - Fetching metadata from: https://nhentai.net/g/521758/ +2026-01-06 20:04:24,657 - INFO - Updating metadata for: ane_de_shikoru_otouto_to_onaritai +2026-01-06 20:04:24,657 - INFO - Searching metadata for: ane de shikoru otouto to onaritai +2026-01-06 20:04:24,903 - INFO - Fetching metadata from: https://nhentai.net/g/505892/ +2026-01-06 20:04:25,079 - INFO - Updating metadata for: video_memories +2026-01-06 20:04:25,079 - INFO - Searching metadata for: video memories +2026-01-06 20:04:25,274 - INFO - Fetching metadata from: https://nhentai.net/g/506956/ +2026-01-06 20:04:25,490 - INFO - Updating metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-06 20:04:25,491 - INFO - Searching metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-06 20:04:25,727 - INFO - Fetching metadata from: https://nhentai.net/g/614968/ +2026-01-06 20:04:25,951 - INFO - Updating metadata for: [Niramikko Koujou] Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-06 20:04:25,951 - INFO - Searching metadata for: Niramikko Koujou Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-06 20:04:26,311 - INFO - Fetching metadata from: https://nhentai.net/g/557335/ +2026-01-06 20:04:26,506 - INFO - Updating metadata for: kanojo_no_ane_wa_gal_de_bitch_de_yariman_de +2026-01-06 20:04:26,507 - INFO - Searching metadata for: kanojo no ane wa gal de bitch de yariman de +2026-01-06 20:04:26,845 - INFO - Fetching metadata from: https://nhentai.net/g/578979/ +2026-01-06 20:04:27,028 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-06 20:04:27,028 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-06 20:04:27,241 - INFO - Fetching metadata from: https://nhentai.net/g/604729/ +2026-01-06 20:04:27,504 - INFO - Updating metadata for: musclehead_girl_cant_resist_orgasm_chapter +2026-01-06 20:04:27,505 - INFO - Searching metadata for: musclehead girl cant resist orgasm chapter +2026-01-06 20:04:27,650 - INFO - Searching MangaUpdates for: musclehead girl cant resist orgasm chapter +2026-01-06 20:04:28,572 - INFO - Updating metadata for: oneechan_wa_sore_o_yurusanai +2026-01-06 20:04:28,572 - INFO - Searching metadata for: oneechan wa sore o yurusanai +2026-01-06 20:04:28,796 - INFO - Searching MangaUpdates for: oneechan wa sore o yurusanai +2026-01-06 20:04:29,832 - INFO - Updating metadata for: pet_mimamori_camera_ni_ane_to_otouto_no_sex_ga_utsutteta +2026-01-06 20:04:29,832 - INFO - Searching metadata for: pet mimamori camera ni ane to otouto no sex ga utsutteta +2026-01-06 20:04:30,312 - INFO - Fetching metadata from: https://nhentai.net/g/312775/ +2026-01-06 20:04:30,603 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-06 20:04:30,604 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-06 20:04:30,837 - INFO - Fetching metadata from: https://nhentai.net/g/544873/ +2026-01-06 20:04:31,048 - INFO - Updating metadata for: sisters_after_mozu +2026-01-06 20:04:31,048 - INFO - Searching metadata for: sisters after mozu +2026-01-06 20:04:31,210 - INFO - Searching MangaUpdates for: sisters after mozu +2026-01-06 20:04:31,943 - INFO - Updating metadata for: otaku_hime_ga_kita_heya +2026-01-06 20:04:31,943 - INFO - Searching metadata for: otaku hime ga kita heya +2026-01-06 20:04:32,173 - INFO - Fetching metadata from: https://nhentai.net/g/347531/ +2026-01-06 20:04:32,360 - INFO - Updating metadata for: dream_mama_vs_real_mother_chapter_1b +2026-01-06 20:04:32,360 - INFO - Searching metadata for: dream mama vs real mother chapter 1b +2026-01-06 20:04:32,574 - INFO - Searching MangaUpdates for: dream mama vs real mother chapter 1b +2026-01-06 20:04:32,896 - INFO - Updating metadata for: day_only_for_two +2026-01-06 20:04:32,896 - INFO - Searching metadata for: day only for two +2026-01-06 20:04:33,069 - INFO - Fetching metadata from: https://nhentai.net/g/167284/ +2026-01-06 20:04:33,268 - INFO - Updating metadata for: [Tohzai] Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-06 20:04:33,269 - INFO - Searching metadata for: Tohzai Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-06 20:04:33,483 - INFO - Fetching metadata from: https://nhentai.net/g/141024/ +2026-01-06 20:04:33,664 - INFO - Updating metadata for: whats_a_bond +2026-01-06 20:04:33,665 - INFO - Searching metadata for: whats a bond +2026-01-06 20:04:33,850 - INFO - Fetching metadata from: https://nhentai.net/g/126340/ +2026-01-06 20:04:34,070 - INFO - Updating metadata for: [Kira Hiroyoshi] Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-06 20:04:34,070 - INFO - Searching metadata for: Kira Hiroyoshi Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-06 20:04:34,498 - INFO - Searching metadata for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-06 20:04:34,867 - INFO - Searching MangaUpdates for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-06 20:04:35,707 - INFO - Updating metadata for: ore_ga_daiteru_onna_wa_imouto_kamo_shirenai +2026-01-06 20:04:35,707 - INFO - Searching metadata for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-06 20:04:35,930 - INFO - Searching MangaUpdates for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-06 20:04:36,937 - INFO - Updating metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-06 20:04:36,937 - INFO - Searching metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-06 20:04:37,247 - INFO - Fetching metadata from: https://nhentai.net/g/285698/ +2026-01-06 20:04:37,466 - INFO - Updating metadata for: lethargic_sister_tolerates_her_brothers_pranks +2026-01-06 20:04:37,466 - INFO - Searching metadata for: lethargic sister tolerates her brothers pranks +2026-01-06 20:04:37,642 - INFO - Fetching metadata from: https://nhentai.net/g/518733/ +2026-01-06 20:04:37,878 - INFO - Updating metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-06 20:04:37,879 - INFO - Searching metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-06 20:04:38,244 - INFO - Fetching metadata from: https://nhentai.net/g/579037/ +2026-01-06 20:04:38,427 - INFO - Updating metadata for: bitch_mamas_depraved_adultery +2026-01-06 20:04:38,427 - INFO - Searching metadata for: bitch mamas depraved adultery +2026-01-06 20:04:38,578 - INFO - Searching MangaUpdates for: bitch mamas depraved adultery +2026-01-06 20:04:39,272 - INFO - Updating metadata for: [Fence 14] Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-06 20:04:39,272 - INFO - Searching metadata for: Fence 14 Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-06 20:04:39,488 - INFO - Searching metadata for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-06 20:04:39,692 - INFO - Searching MangaUpdates for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-06 20:04:40,732 - INFO - Updating metadata for: onee_sama_likes_anal +2026-01-06 20:04:40,733 - INFO - Searching metadata for: onee sama likes anal +2026-01-06 20:04:40,909 - INFO - Fetching metadata from: https://nhentai.net/g/110837/ +2026-01-06 20:04:41,086 - INFO - Updating metadata for: camellia_the_first +2026-01-06 20:04:41,086 - INFO - Searching metadata for: camellia the first +2026-01-06 20:04:41,283 - INFO - Fetching metadata from: https://nhentai.net/g/521474/ +2026-01-06 20:04:41,483 - INFO - Updating metadata for: sudou_siblings_sexual_circumstances +2026-01-06 20:04:41,483 - INFO - Searching metadata for: sudou siblings sexual circumstances +2026-01-06 20:04:41,640 - INFO - Fetching metadata from: https://nhentai.net/g/326122/ +2026-01-06 20:04:41,820 - INFO - Updating metadata for: mama_and_john +2026-01-06 20:04:41,820 - INFO - Searching metadata for: mama and john +2026-01-06 20:04:42,003 - INFO - Searching MangaUpdates for: mama and john +2026-01-06 20:04:42,856 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-06 20:04:42,856 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-06 20:04:43,187 - INFO - Searching metadata for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-06 20:04:43,489 - INFO - Searching MangaUpdates for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-06 20:04:44,594 - INFO - Updating metadata for: bakunyuu_bijukujo_wa_soku_hame_koubiana +2026-01-06 20:04:44,594 - INFO - Searching metadata for: bakunyuu bijukujo wa soku hame koubiana +2026-01-06 20:04:44,804 - INFO - Fetching metadata from: https://nhentai.net/g/529021/ +2026-01-06 20:04:45,069 - INFO - Updating metadata for: joshi_seito_o_suki_houdai_ni_hame_botebara_ni_shite_ok_na_sekai +2026-01-06 20:04:45,069 - INFO - Searching metadata for: joshi seito o suki houdai ni hame botebara ni shite ok na sekai +2026-01-06 20:04:45,606 - INFO - Fetching metadata from: https://nhentai.net/g/268826/ +2026-01-06 20:04:45,839 - INFO - Updating metadata for: [Puranpuman] A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-06 20:04:45,839 - INFO - Searching metadata for: Puranpuman A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-06 20:04:46,209 - INFO - Fetching metadata from: https://nhentai.net/g/617868/ +2026-01-06 20:04:46,411 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-06 20:04:46,411 - INFO - Searching metadata for: Mustard Teikoku (Europia) A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-06 20:04:46,765 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-06 20:04:46,996 - INFO - Updating metadata for: hitozuma_saimin_appli_chapter +2026-01-06 20:04:46,996 - INFO - Searching metadata for: hitozuma saimin appli chapter +2026-01-06 20:04:47,607 - INFO - Searching MangaUpdates for: hitozuma saimin appli chapter +2026-01-06 20:04:48,173 - INFO - Updating metadata for: dagashi_wa_sake_ni_au +2026-01-06 20:04:48,173 - INFO - Searching metadata for: dagashi wa sake ni au +2026-01-06 20:04:48,423 - INFO - Fetching metadata from: https://nhentai.net/g/404156/ +2026-01-06 20:04:48,613 - INFO - Updating metadata for: the_night_my_sister_disappeared_i_made_love_to_my_mother +2026-01-06 20:04:48,613 - INFO - Searching metadata for: the night my sister disappeared i made love to my mother +2026-01-06 20:04:48,928 - INFO - Fetching metadata from: https://nhentai.net/g/497835/ +2026-01-06 20:04:49,168 - INFO - Updating metadata for: tsubaki_democracy +2026-01-06 20:04:49,168 - INFO - Searching metadata for: tsubaki democracy +2026-01-06 20:04:49,338 - INFO - Fetching metadata from: https://nhentai.net/g/269196/ +2026-01-06 20:04:49,543 - INFO - Updating metadata for: this_teacher_in_her_fourtys_is_acting_like_a_young_girl_in_the_prime_if_her_life +2026-01-06 20:04:49,544 - INFO - Searching metadata for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-06 20:04:49,864 - INFO - Searching MangaUpdates for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-06 20:04:59,877 - ERROR - MangaUpdates lookup failed: HTTPSConnectionPool(host='api.mangaupdates.com', port=443): Read timed out. (read timeout=10) +2026-01-06 20:04:59,889 - INFO - Updating metadata for: the_story_of_a_single_career_woman_in_hers_getting_addicted_to_a_relationship +2026-01-06 20:04:59,889 - INFO - Searching metadata for: the story of a single career woman in hers getting addicted to a relationship +2026-01-06 20:05:00,235 - INFO - Searching MangaUpdates for: the story of a single career woman in hers getting addicted to a relationship +2026-01-06 20:05:03,963 - INFO - Updating metadata for: [Kouda Tomohiro] Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-06 20:05:03,963 - INFO - Searching metadata for: Kouda Tomohiro Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-06 20:05:04,187 - INFO - Fetching metadata from: https://nhentai.net/g/604149/ +2026-01-06 20:05:04,424 - INFO - Updating metadata for: [Hikagemon (Tenpiboshi)] Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-06 20:05:04,424 - INFO - Searching metadata for: Hikagemon (Tenpiboshi) Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-06 20:05:04,676 - INFO - Fetching metadata from: https://nhentai.net/g/593437/ +2026-01-06 20:05:04,937 - INFO - Updating metadata for: rural_stories +2026-01-06 20:05:04,938 - INFO - Searching metadata for: rural stories +2026-01-06 20:05:05,091 - INFO - Fetching metadata from: https://nhentai.net/g/565283/ +2026-01-06 20:05:05,295 - INFO - Updating metadata for: [Sunagawa Tara] Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-06 20:05:05,295 - INFO - Searching metadata for: Sunagawa Tara Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-06 20:05:05,683 - INFO - Fetching metadata from: https://nhentai.net/g/601543/ +2026-01-06 20:05:05,928 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-06 20:05:05,928 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-06 20:05:06,319 - INFO - Fetching metadata from: https://nhentai.net/g/573974/ +2026-01-06 20:05:06,554 - INFO - Updating metadata for: my_daily_life_as_a_streamer +2026-01-06 20:05:06,554 - INFO - Searching metadata for: my daily life as a streamer +2026-01-06 20:05:06,886 - INFO - Fetching metadata from: https://nhentai.net/g/550192/ +2026-01-06 20:05:07,105 - INFO - Updating metadata for: possessed_and_thrusting +2026-01-06 20:05:07,105 - INFO - Searching metadata for: possessed and thrusting +2026-01-06 20:05:07,265 - INFO - Fetching metadata from: https://nhentai.net/g/584236/ +2026-01-06 20:05:07,488 - INFO - Updating metadata for: mrs_miho_cant_stop_cheating_chapter +2026-01-06 20:05:07,488 - INFO - Searching metadata for: mrs miho cant stop cheating chapter +2026-01-06 20:05:07,693 - INFO - Searching MangaUpdates for: mrs miho cant stop cheating chapter +2026-01-06 20:05:08,000 - INFO - Updating metadata for: a_story_about_an_oneesan_being_impregnated_by_an_incubus +2026-01-06 20:05:08,000 - INFO - Searching metadata for: a story about an oneesan being impregnated by an incubus +2026-01-06 20:05:08,311 - INFO - Searching MangaUpdates for: a story about an oneesan being impregnated by an incubus +2026-01-06 20:05:08,721 - INFO - Updating metadata for: wrung_dry_by_my_sister_every_night_under_the_sheets +2026-01-06 20:05:08,722 - INFO - Searching metadata for: wrung dry by my sister every night under the sheets +2026-01-06 20:05:08,957 - INFO - Fetching metadata from: https://nhentai.net/g/548542/ +2026-01-06 20:05:09,187 - INFO - Updating metadata for: [Yue] Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-06 20:05:09,187 - INFO - Searching metadata for: Yue Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-06 20:05:09,409 - INFO - Fetching metadata from: https://nhentai.net/g/580266/ +2026-01-06 20:05:09,762 - INFO - Updating metadata for: a_country_mother_who_makes_her_son_horny +2026-01-06 20:05:09,763 - INFO - Searching metadata for: a country mother who makes her son horny +2026-01-06 20:05:10,101 - INFO - Fetching metadata from: https://nhentai.net/g/558745/ +2026-01-06 20:05:10,355 - INFO - Updating metadata for: sister_complex +2026-01-06 20:05:10,355 - INFO - Searching metadata for: sister complex +2026-01-06 20:05:10,588 - INFO - Fetching metadata from: https://nhentai.net/g/600775/ +2026-01-06 20:05:10,793 - INFO - Updating metadata for: nao_hanpatsu_zokusei +2026-01-06 20:05:10,793 - INFO - Searching metadata for: nao hanpatsu zokusei +2026-01-06 20:05:11,020 - INFO - Searching MangaUpdates for: nao hanpatsu zokusei +2026-01-06 20:05:11,390 - INFO - Updating metadata for: [NCP (big g)] A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-06 20:05:11,391 - INFO - Searching metadata for: NCP (big g) A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-06 20:05:11,680 - INFO - Fetching metadata from: https://nhentai.net/g/514753/ +2026-01-06 20:05:12,058 - INFO - Updating metadata for: masochist_little_brothers_training +2026-01-06 20:05:12,058 - INFO - Searching metadata for: masochist little brothers training +2026-01-06 20:05:12,267 - INFO - Searching MangaUpdates for: masochist little brothers training +2026-01-06 20:05:12,824 - INFO - Updating metadata for: SISUANA - sister hole +2026-01-06 20:05:12,824 - INFO - Searching metadata for: SISUANA - sister hole +2026-01-06 20:05:13,022 - INFO - Fetching metadata from: https://nhentai.net/g/521114/ +2026-01-06 20:05:13,206 - INFO - Updating metadata for: my_neet_older_sister +2026-01-06 20:05:13,206 - INFO - Searching metadata for: my neet older sister +2026-01-06 20:05:13,382 - INFO - Fetching metadata from: https://nhentai.net/g/541946/ +2026-01-06 20:05:13,572 - INFO - Updating metadata for: narmaya_attack +2026-01-06 20:05:13,573 - INFO - Searching metadata for: narmaya attack +2026-01-06 20:05:13,733 - INFO - Fetching metadata from: https://nhentai.net/g/322620/ +2026-01-06 20:05:13,921 - INFO - Updating metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-06 20:05:13,922 - INFO - Searching metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-06 20:05:14,080 - INFO - Searching MangaUpdates for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-06 20:05:14,405 - INFO - Updating metadata for: the_country_little_sister_and_the_tempation_of_innocence +2026-01-06 20:05:14,405 - INFO - Searching metadata for: the country little sister and the tempation of innocence +2026-01-06 20:05:14,760 - INFO - Searching MangaUpdates for: the country little sister and the tempation of innocence +2026-01-06 20:05:15,168 - INFO - Updating metadata for: blood_lunch +2026-01-06 20:05:15,168 - INFO - Searching metadata for: blood lunch +2026-01-06 20:05:15,374 - INFO - Fetching metadata from: https://nhentai.net/g/578369/ +2026-01-06 20:05:15,647 - INFO - Updating metadata for: toppatsusei_bokki_shoukougun_jii_fuzen_o_soete +2026-01-06 20:05:15,647 - INFO - Searching metadata for: toppatsusei bokki shoukougun jii fuzen o soete +2026-01-06 20:05:15,839 - INFO - Fetching metadata from: https://nhentai.net/g/425210/ +2026-01-06 20:05:16,152 - INFO - Updating metadata for: Between Heave and Hell +2026-01-06 20:05:16,152 - INFO - Searching metadata for: Between Heave and Hell +2026-01-06 20:05:16,371 - INFO - Fetching metadata from: https://nhentai.net/g/125398/ +2026-01-06 20:05:16,548 - INFO - Updating metadata for: is_my_sister_seriously_ill +2026-01-06 20:05:16,549 - INFO - Searching metadata for: is my sister seriously ill +2026-01-06 20:05:16,904 - INFO - Fetching metadata from: https://nhentai.net/g/600832/ +2026-01-06 20:05:17,133 - INFO - Updating metadata for: mucchiri_megaton +2026-01-06 20:05:17,133 - INFO - Searching metadata for: mucchiri megaton +2026-01-06 20:05:17,290 - INFO - Fetching metadata from: https://nhentai.net/g/495948/ +2026-01-06 20:05:17,588 - INFO - Updating metadata for: [Kikunosukemaru] Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-06 20:05:17,588 - INFO - Searching metadata for: Kikunosukemaru Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-06 20:05:17,848 - INFO - Fetching metadata from: https://nhentai.net/g/166499/ +2026-01-06 20:05:18,039 - INFO - Updating metadata for: the_sex_life_of_the_tachibanas +2026-01-06 20:05:18,040 - INFO - Searching metadata for: the sex life of the tachibanas +2026-01-06 20:05:18,267 - INFO - Searching MangaUpdates for: the sex life of the tachibanas +2026-01-06 20:05:18,566 - INFO - Updating metadata for: jitsu_wa_midara_na_chounyuu_sensei_chapter +2026-01-06 20:05:18,566 - INFO - Searching metadata for: jitsu wa midara na chounyuu sensei chapter +2026-01-06 20:05:18,896 - INFO - Searching MangaUpdates for: jitsu wa midara na chounyuu sensei chapter +2026-01-06 20:05:19,251 - INFO - Updating metadata for: [K8ON] Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-06 20:05:19,252 - INFO - Searching metadata for: K8ON Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-06 20:05:19,613 - INFO - Searching metadata for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-06 20:05:19,963 - INFO - Searching MangaUpdates for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-06 20:05:20,574 - INFO - Updating metadata for: gumi_chocolate_pine_koma_mangashuu +2026-01-06 20:05:20,574 - INFO - Searching metadata for: gumi chocolate pine koma mangashuu +2026-01-06 20:05:20,810 - INFO - Fetching metadata from: https://nhentai.net/g/541484/ +2026-01-06 20:05:21,045 - INFO - Updating metadata for: temptation_downtime +2026-01-06 20:05:21,045 - INFO - Searching metadata for: temptation downtime +2026-01-06 20:05:21,204 - INFO - Fetching metadata from: https://nhentai.net/g/238204/ +2026-01-06 20:05:21,436 - INFO - Updating metadata for: welcome_to_greenwood +2026-01-06 20:05:21,436 - INFO - Searching metadata for: welcome to greenwood +2026-01-06 20:05:21,697 - INFO - Fetching metadata from: https://nhentai.net/g/55621/ +2026-01-06 20:05:21,931 - INFO - Updating metadata for: passionate_coriander +2026-01-06 20:05:21,932 - INFO - Searching metadata for: passionate coriander +2026-01-06 20:05:22,135 - INFO - Fetching metadata from: https://nhentai.net/g/504728/ +2026-01-06 20:05:22,376 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-06 20:05:22,376 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-06 20:05:22,880 - INFO - Fetching metadata from: https://nhentai.net/g/497921/ +2026-01-06 20:05:23,088 - INFO - Updating metadata for: big_sister_with_drooping_tits_wants_to_fuck_her_little_brother +2026-01-06 20:05:23,089 - INFO - Searching metadata for: big sister with drooping tits wants to fuck her little brother +2026-01-06 20:05:23,297 - INFO - Fetching metadata from: https://nhentai.net/g/502879/ +2026-01-06 20:05:23,488 - INFO - Updating metadata for: sister_control +2026-01-06 20:05:23,489 - INFO - Searching metadata for: sister control +2026-01-06 20:05:23,754 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-06 20:05:24,062 - INFO - Updating metadata for: a_book_about_using_hypno_to_fuck_my_little_sister +2026-01-06 20:05:24,062 - INFO - Searching metadata for: a book about using hypno to fuck my little sister +2026-01-06 20:05:24,357 - INFO - Fetching metadata from: https://nhentai.net/g/545892/ +2026-01-06 20:05:24,553 - INFO - Updating metadata for: moms_body_is_mine_mother_and_son_incest_sex_behind_dads_back +2026-01-06 20:05:24,553 - INFO - Searching metadata for: moms body is mine mother and son incest sex behind dads back +2026-01-06 20:05:24,808 - INFO - Searching MangaUpdates for: moms body is mine mother and son incest sex behind dads back +2026-01-06 20:05:25,270 - INFO - Updating metadata for: dysfunctional_family +2026-01-06 20:05:25,270 - INFO - Searching metadata for: dysfunctional family +2026-01-06 20:05:25,499 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-06 20:05:25,771 - INFO - Updating metadata for: pldk +2026-01-06 20:05:25,771 - INFO - Searching metadata for: pldk +2026-01-06 20:05:25,959 - INFO - Searching MangaUpdates for: pldk +2026-01-06 20:05:26,459 - INFO - Updating metadata for: a_sticky_harem_full_of_mother_and_sisters_milk +2026-01-06 20:05:26,459 - INFO - Searching metadata for: a sticky harem full of mother and sisters milk +2026-01-06 20:05:26,691 - INFO - Searching MangaUpdates for: a sticky harem full of mother and sisters milk +2026-01-06 20:05:26,990 - INFO - Updating metadata for: [Kazuhiro] InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-06 20:05:26,990 - INFO - Searching metadata for: Kazuhiro InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-06 20:05:27,330 - INFO - Searching metadata for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-06 20:05:27,742 - INFO - Searching MangaUpdates for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-06 20:05:28,757 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge +2026-01-06 20:05:28,757 - INFO - Searching metadata for: big boobs shadowy character takes revenge +2026-01-06 20:05:28,965 - INFO - Fetching metadata from: https://nhentai.net/g/600439/ +2026-01-06 20:05:29,206 - INFO - Updating metadata for: [Shiraishi Nagisa] Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-06 20:05:29,207 - INFO - Searching metadata for: Shiraishi Nagisa Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-06 20:05:29,419 - INFO - Fetching metadata from: https://nhentai.net/g/485428/ +2026-01-06 20:05:29,644 - INFO - Updating metadata for: [Juna Juna Juice] Starting tonight Baby bear will become [English] +2026-01-06 20:05:29,644 - INFO - Searching metadata for: Juna Juna Juice Starting tonight Baby bear will become [English] +2026-01-06 20:05:29,833 - INFO - Fetching metadata from: https://nhentai.net/g/594307/ +2026-01-06 20:05:30,063 - INFO - Updating metadata for: 20_years_from_now_you_make_me_a_little_nervous_chapter_1 +2026-01-06 20:05:30,064 - INFO - Searching metadata for: 20 years from now you make me a little nervous chapter 1 +2026-01-06 20:05:30,446 - INFO - Searching MangaUpdates for: 20 years from now you make me a little nervous chapter 1 +2026-01-06 20:05:30,832 - INFO - Updating metadata for: neteiru_okaasan_o_yaritai_houdai +2026-01-06 20:05:30,832 - INFO - Searching metadata for: neteiru okaasan o yaritai houdai +2026-01-06 20:05:31,016 - INFO - Searching MangaUpdates for: neteiru okaasan o yaritai houdai +2026-01-06 20:05:31,329 - INFO - Updating metadata for: [Mizu] Jumble Family [English] (Decensored) +2026-01-06 20:05:31,329 - INFO - Searching metadata for: Mizu Jumble Family [English] (Decensored) +2026-01-06 20:05:31,570 - INFO - Fetching metadata from: https://nhentai.net/g/259903/ +2026-01-06 20:05:31,798 - INFO - Updating metadata for: Ebony Family mating practices (english) +2026-01-06 20:05:31,799 - INFO - Searching metadata for: Ebony Family mating practices (english) +2026-01-06 20:05:31,998 - INFO - Fetching metadata from: https://nhentai.net/g/600824/ +2026-01-06 20:05:32,206 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 20:05:32,206 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 20:05:32,418 - INFO - Fetching metadata from: https://nhentai.net/g/537310/ +2026-01-06 20:05:32,598 - INFO - Updating metadata for: Kosmos ga Saita Hi ni Ch +2026-01-06 20:05:32,598 - INFO - Searching metadata for: Kosmos ga Saita Hi ni Ch +2026-01-06 20:05:33,008 - INFO - Fetching metadata from: https://nhentai.net/g/603988/ +2026-01-06 20:05:33,367 - INFO - Updating metadata for: [Airandou] Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-06 20:05:33,368 - INFO - Searching metadata for: Airandou Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-06 20:05:33,659 - INFO - Fetching metadata from: https://nhentai.net/g/590457/ +2026-01-06 20:05:33,912 - INFO - Updating metadata for: oni_no_musume_datte_konkatsu_shitai +2026-01-06 20:05:33,912 - INFO - Searching metadata for: oni no musume datte konkatsu shitai +2026-01-06 20:05:34,182 - INFO - Fetching metadata from: https://nhentai.net/g/342762/ +2026-01-06 20:05:34,508 - INFO - Updating metadata for: answer_checking +2026-01-06 20:05:34,508 - INFO - Searching metadata for: answer checking +2026-01-06 20:05:34,661 - INFO - Fetching metadata from: https://nhentai.net/g/535244/ +2026-01-06 20:05:34,883 - INFO - Updating metadata for: big_sis_masturbation_life_my_masturbation_right_belongs_to_my_older_step_sisters +2026-01-06 20:05:34,883 - INFO - Searching metadata for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-06 20:05:35,181 - INFO - Searching MangaUpdates for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-06 20:05:35,527 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-06 20:05:35,527 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-06 20:05:35,978 - INFO - Searching metadata for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-06 20:05:36,355 - INFO - Searching MangaUpdates for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-06 20:05:36,756 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 20:05:36,757 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 20:05:37,033 - INFO - Fetching metadata from: https://nhentai.net/g/492943/ +2026-01-06 20:05:37,226 - INFO - Updating metadata for: maid_slave_collection +2026-01-06 20:05:37,226 - INFO - Searching metadata for: maid slave collection +2026-01-06 20:05:37,390 - INFO - Fetching metadata from: https://nhentai.net/g/601115/ +2026-01-06 20:05:37,848 - INFO - Updating metadata for: lemon_honeymoon +2026-01-06 20:05:37,849 - INFO - Searching metadata for: lemon honeymoon +2026-01-06 20:05:38,061 - INFO - Fetching metadata from: https://nhentai.net/g/524298/ +2026-01-06 20:05:38,259 - INFO - Updating metadata for: shall_i_get_it_out_for_you_mom +2026-01-06 20:05:38,260 - INFO - Searching metadata for: shall i get it out for you mom +2026-01-06 20:05:38,612 - INFO - Fetching metadata from: https://nhentai.net/g/537397/ +2026-01-06 20:05:38,859 - INFO - Updating metadata for: family_plan_toono_suika_chapter +2026-01-06 20:05:38,860 - INFO - Searching metadata for: family plan toono suika chapter +2026-01-06 20:05:39,022 - INFO - Searching MangaUpdates for: family plan toono suika chapter +2026-01-06 20:05:39,237 - INFO - Updating metadata for: temptation_of_big_tits_elder_sister +2026-01-06 20:05:39,237 - INFO - Searching metadata for: temptation of big tits elder sister +2026-01-06 20:05:39,481 - INFO - Fetching metadata from: https://nhentai.net/g/512343/ +2026-01-06 20:05:39,710 - INFO - Updating metadata for: musuko_no_tomodachi_incubus_ni_miryou_sareta_yanmama_wa_mesu_ni_naru +2026-01-06 20:05:39,710 - INFO - Searching metadata for: musuko no tomodachi incubus ni miryou sareta yanmama wa mesu ni naru +2026-01-06 20:05:40,018 - INFO - Fetching metadata from: https://nhentai.net/g/521491/ +2026-01-06 20:05:40,344 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-06 20:05:40,344 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-06 20:05:40,603 - INFO - Searching metadata for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-06 20:05:40,922 - INFO - Searching MangaUpdates for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-06 20:05:41,400 - INFO - Updating metadata for: jukujo_sentai_paiters_chapter +2026-01-06 20:05:41,401 - INFO - Searching metadata for: jukujo sentai paiters chapter +2026-01-06 20:05:41,546 - INFO - Searching MangaUpdates for: jukujo sentai paiters chapter +2026-01-06 20:05:41,872 - INFO - Updating metadata for: ane_to_kanojo_to_hamedori_3p_shitemita +2026-01-06 20:05:41,872 - INFO - Searching metadata for: ane to kanojo to hamedori 3p shitemita +2026-01-06 20:05:42,141 - INFO - Searching MangaUpdates for: ane to kanojo to hamedori 3p shitemita +2026-01-06 20:05:42,502 - INFO - Updating metadata for: ogre_girl_tades_favorite_things +2026-01-06 20:05:42,503 - INFO - Searching metadata for: ogre girl tades favorite things +2026-01-06 20:05:42,698 - INFO - Searching MangaUpdates for: ogre girl tades favorite things +2026-01-06 20:05:43,048 - INFO - Updating metadata for: [Izayoi no Kiki] Incest Room [English] [Tigoris Translates] +2026-01-06 20:05:43,049 - INFO - Searching metadata for: Izayoi no Kiki Incest Room [English] [Tigoris Translates] +2026-01-06 20:05:43,252 - INFO - Fetching metadata from: https://nhentai.net/g/615902/ +2026-01-06 20:05:43,526 - INFO - Updating metadata for: trap_shiki_hunting +2026-01-06 20:05:43,527 - INFO - Searching metadata for: trap shiki hunting +2026-01-06 20:05:43,797 - INFO - Searching MangaUpdates for: trap shiki hunting +2026-01-06 20:05:44,126 - INFO - Updating metadata for: hetappi_whiteday +2026-01-06 20:05:44,126 - INFO - Searching metadata for: hetappi whiteday +2026-01-06 20:05:44,313 - INFO - Searching MangaUpdates for: hetappi whiteday +2026-01-06 20:05:44,533 - INFO - Updating metadata for: family_control +2026-01-06 20:05:44,533 - INFO - Searching metadata for: family control +2026-01-06 20:05:44,775 - INFO - Fetching metadata from: https://nhentai.net/g/619340/ +2026-01-06 20:05:44,984 - INFO - Updating metadata for: a_story_of_my_oneesan_who_loves_me_too_much +2026-01-06 20:05:44,985 - INFO - Searching metadata for: a story of my oneesan who loves me too much +2026-01-06 20:05:45,325 - INFO - Searching MangaUpdates for: a story of my oneesan who loves me too much +2026-01-06 20:05:46,079 - INFO - Updating metadata for: anemone_yuusuke_chapter_1x +2026-01-06 20:05:46,079 - INFO - Searching metadata for: anemone yuusuke chapter 1x +2026-01-06 20:05:46,230 - INFO - Searching MangaUpdates for: anemone yuusuke chapter 1x +2026-01-06 20:05:46,475 - INFO - Updating metadata for: [Shirono Mahiro] Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-06 20:05:46,476 - INFO - Searching metadata for: Shirono Mahiro Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-06 20:05:46,850 - INFO - Fetching metadata from: https://nhentai.net/g/254693/ +2026-01-06 20:05:47,119 - INFO - Updating metadata for: [Itaba Hiroshi] Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-06 20:05:47,120 - INFO - Searching metadata for: Itaba Hiroshi Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-06 20:05:47,342 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-06 20:05:47,654 - INFO - Updating metadata for: [Shirono Mahiro] Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-06 20:05:47,654 - INFO - Searching metadata for: Shirono Mahiro Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-06 20:05:47,886 - INFO - Searching metadata for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-06 20:05:48,120 - INFO - Searching MangaUpdates for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-06 20:05:48,358 - INFO - Updating metadata for: twentyfour_seven_sex_with_my_stepsister +2026-01-06 20:05:48,359 - INFO - Searching metadata for: twentyfour seven sex with my stepsister +2026-01-06 20:05:48,597 - INFO - Searching MangaUpdates for: twentyfour seven sex with my stepsister +2026-01-06 20:05:48,868 - INFO - Updating metadata for: summer_stay_in +2026-01-06 20:05:48,869 - INFO - Searching metadata for: summer stay in +2026-01-06 20:05:49,089 - INFO - Fetching metadata from: https://nhentai.net/g/549172/ +2026-01-06 20:05:49,310 - INFO - Updating metadata for: the_romantic_ritual_with_fox_goddess_yuukosan_chapter +2026-01-06 20:05:49,311 - INFO - Searching metadata for: the romantic ritual with fox goddess yuukosan chapter +2026-01-06 20:05:49,544 - INFO - Searching MangaUpdates for: the romantic ritual with fox goddess yuukosan chapter +2026-01-06 20:05:49,884 - INFO - Updating metadata for: ookii_gimai +2026-01-06 20:05:49,884 - INFO - Searching metadata for: ookii gimai +2026-01-06 20:05:50,080 - INFO - Fetching metadata from: https://nhentai.net/g/555115/ +2026-01-06 20:05:50,337 - INFO - Updating metadata for: sleepwalk_sex_with_your_crazy_stepbrother +2026-01-06 20:05:50,337 - INFO - Searching metadata for: sleepwalk sex with your crazy stepbrother +2026-01-06 20:05:50,565 - INFO - Fetching metadata from: https://nhentai.net/g/545786/ +2026-01-06 20:05:50,834 - INFO - Updating metadata for: [Shirono Mahiro] Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-06 20:05:50,836 - INFO - Searching metadata for: Shirono Mahiro Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-06 20:05:51,021 - INFO - Searching metadata for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-06 20:05:51,202 - INFO - Searching MangaUpdates for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-06 20:05:51,555 - INFO - Updating metadata for: selfish_boyfriend_and_the_gentle_girlfriend +2026-01-06 20:05:51,562 - INFO - Searching metadata for: selfish boyfriend and the gentle girlfriend +2026-01-06 20:05:51,769 - INFO - Fetching metadata from: https://nhentai.net/g/257734/ +2026-01-06 20:05:51,963 - INFO - Updating metadata for: [NT Labo (NT Robo)] Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-06 20:05:51,963 - INFO - Searching metadata for: NT Labo (NT Robo) Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-06 20:05:52,200 - INFO - Fetching metadata from: https://nhentai.net/g/261648/ +2026-01-06 20:05:52,386 - INFO - Updating metadata for: until_my_mother_in_law_is_pregnant +2026-01-06 20:05:52,387 - INFO - Searching metadata for: until my mother in law is pregnant +2026-01-06 20:05:52,644 - INFO - Fetching metadata from: https://nhentai.net/g/329242/ +2026-01-06 20:05:52,906 - INFO - Updating metadata for: grand_discovery_of_kink +2026-01-06 20:05:52,907 - INFO - Searching metadata for: grand discovery of kink +2026-01-06 20:05:53,112 - INFO - Searching MangaUpdates for: grand discovery of kink +2026-01-06 20:05:53,335 - INFO - Updating metadata for: happy_life_amagami +2026-01-06 20:05:53,335 - INFO - Searching metadata for: happy life amagami +2026-01-06 20:05:53,526 - INFO - Searching MangaUpdates for: happy life amagami +2026-01-06 20:05:53,734 - INFO - Updating metadata for: one_shot_a_summer +2026-01-06 20:05:53,735 - INFO - Searching metadata for: one shot a summer +2026-01-06 20:05:53,982 - INFO - Fetching metadata from: https://nhentai.net/g/500042/ +2026-01-06 20:05:54,217 - INFO - Updating metadata for: bath_time_with_big_sis +2026-01-06 20:05:54,217 - INFO - Searching metadata for: bath time with big sis +2026-01-06 20:05:54,442 - INFO - Fetching metadata from: https://nhentai.net/g/596905/ +2026-01-06 20:05:54,789 - INFO - Updating metadata for: family_x +2026-01-06 20:05:54,789 - INFO - Searching metadata for: family x +2026-01-06 20:05:55,033 - INFO - Fetching metadata from: https://nhentai.net/g/620563/ +2026-01-06 20:05:55,269 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-06 20:05:55,269 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-06 20:05:55,524 - INFO - Fetching metadata from: https://nhentai.net/g/460957/ +2026-01-06 20:05:55,764 - INFO - Updating metadata for: [Chotto B-sen] A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-06 20:05:55,765 - INFO - Searching metadata for: Chotto B-sen A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-06 20:05:56,184 - INFO - Fetching metadata from: https://nhentai.net/g/473274/ +2026-01-06 20:05:56,411 - INFO - Updating metadata for: haunted_property_chapter +2026-01-06 20:05:56,411 - INFO - Searching metadata for: haunted property chapter +2026-01-06 20:05:56,625 - INFO - Searching MangaUpdates for: haunted property chapter +2026-01-06 20:05:56,844 - INFO - Updating metadata for: imouto_aoba +2026-01-06 20:05:56,844 - INFO - Searching metadata for: imouto aoba +2026-01-06 20:05:57,004 - INFO - Searching MangaUpdates for: imouto aoba +2026-01-06 20:05:57,216 - INFO - Updating metadata for: onehundred_my_older_sister_who_is_sick_after_illness +2026-01-06 20:05:57,216 - INFO - Searching metadata for: onehundred my older sister who is sick after illness +2026-01-06 20:05:57,411 - INFO - Searching MangaUpdates for: onehundred my older sister who is sick after illness +2026-01-06 20:05:57,790 - INFO - Updating metadata for: that_person_and_my_queen_special_edition +2026-01-06 20:05:57,790 - INFO - Searching metadata for: that person and my queen special edition +2026-01-06 20:05:57,980 - INFO - Fetching metadata from: https://nhentai.net/g/600892/ +2026-01-06 20:05:58,232 - INFO - Updating metadata for: delima +2026-01-06 20:05:58,232 - INFO - Searching metadata for: delima +2026-01-06 20:05:58,441 - INFO - Fetching metadata from: https://nhentai.net/g/426364/ +2026-01-06 20:05:58,732 - INFO - Updating metadata for: that_bitchy_boss_is_my_fuck_buddy +2026-01-06 20:05:58,732 - INFO - Searching metadata for: that bitchy boss is my fuck buddy +2026-01-06 20:05:58,979 - INFO - Fetching metadata from: https://nhentai.net/g/577154/ +2026-01-06 20:05:59,237 - INFO - Updating metadata for: Niku Benki Kanojo no Usui-san _ 육변기 여친의 우스이 양 +2026-01-06 20:05:59,237 - INFO - Searching metadata for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-06 20:05:59,430 - INFO - Searching MangaUpdates for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-06 20:05:59,710 - INFO - Updating metadata for: a_slutty_old_lady_will_tell_how_to_make_her_slutty_daughter_fall_for_you +2026-01-06 20:05:59,710 - INFO - Searching metadata for: a slutty old lady will tell how to make her slutty daughter fall for you +2026-01-06 20:06:00,123 - INFO - Fetching metadata from: https://nhentai.net/g/393878/ +2026-01-06 20:06:00,333 - INFO - Updating metadata for: erotic_teacher_desperately +2026-01-06 20:06:00,334 - INFO - Searching metadata for: erotic teacher desperately +2026-01-06 20:06:00,538 - INFO - Fetching metadata from: https://nhentai.net/g/170003/ +2026-01-06 20:06:00,850 - INFO - Updating metadata for: [36p] Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-06 20:06:00,851 - INFO - Searching metadata for: 36p Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-06 20:06:01,091 - INFO - Fetching metadata from: https://nhentai.net/g/596901/ +2026-01-06 20:06:01,407 - INFO - Updating metadata for: the_housewives_of_the_luxury_apartment_are_to_dissatisfied_with_their_desires +2026-01-06 20:06:01,407 - INFO - Searching metadata for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-06 20:06:01,637 - INFO - Searching MangaUpdates for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-06 20:06:02,431 - INFO - Updating metadata for: surrogacy_the_case_of_yuka_shirakawa +2026-01-06 20:06:02,431 - INFO - Searching metadata for: surrogacy the case of yuka shirakawa +2026-01-06 20:06:02,686 - INFO - Fetching metadata from: https://nhentai.net/g/549276/ +2026-01-06 20:06:02,919 - INFO - Updating metadata for: [Yue] Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-06 20:06:02,919 - INFO - Searching metadata for: Yue Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-06 20:06:03,447 - INFO - Searching metadata for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-06 20:06:04,435 - INFO - Searching MangaUpdates for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-06 20:06:05,140 - INFO - Updating metadata for: my_relationship_with_my_sister +2026-01-06 20:06:05,140 - INFO - Searching metadata for: my relationship with my sister +2026-01-06 20:06:05,370 - INFO - Fetching metadata from: https://nhentai.net/g/584304/ +2026-01-06 20:06:05,587 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-06 20:06:05,588 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-06 20:06:06,027 - INFO - Fetching metadata from: https://nhentai.net/g/419645/ +2026-01-06 20:06:06,267 - INFO - Updating metadata for: living_together_with_the_buxom_female_bully +2026-01-06 20:06:06,268 - INFO - Searching metadata for: living together with the buxom female bully +2026-01-06 20:06:06,523 - INFO - Fetching metadata from: https://nhentai.net/g/610208/ +2026-01-06 20:06:06,751 - INFO - Updating metadata for: how_to_build_cock +2026-01-06 20:06:06,751 - INFO - Searching metadata for: how to build cock +2026-01-06 20:06:06,962 - INFO - Fetching metadata from: https://nhentai.net/g/381583/ +2026-01-06 20:06:07,192 - INFO - Updating metadata for: [BNO (Utagawa Yosiero)] My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-06 20:06:07,193 - INFO - Searching metadata for: BNO (Utagawa Yosiero) My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-06 20:06:07,590 - INFO - Fetching metadata from: https://nhentai.net/g/599069/ +2026-01-06 20:06:07,788 - INFO - Updating metadata for: my_oyakodon +2026-01-06 20:06:07,789 - INFO - Searching metadata for: my oyakodon +2026-01-06 20:06:07,984 - INFO - Fetching metadata from: https://nhentai.net/g/618832/ +2026-01-06 20:06:08,189 - INFO - Updating metadata for: daisuki_na_classmate_ni_shikottemorautame +2026-01-06 20:06:08,190 - INFO - Searching metadata for: daisuki na classmate ni shikottemorautame +2026-01-06 20:06:08,463 - INFO - Searching MangaUpdates for: daisuki na classmate ni shikottemorautame +2026-01-06 20:06:08,884 - INFO - Updating metadata for: enji_ni_somaru +2026-01-06 20:06:08,884 - INFO - Searching metadata for: enji ni somaru +2026-01-06 20:06:09,164 - INFO - Fetching metadata from: https://nhentai.net/g/608666/ +2026-01-06 20:06:09,511 - INFO - Updating metadata for: daily_life_with_my_sister_who_i_dont +2026-01-06 20:06:09,512 - INFO - Searching metadata for: daily life with my sister who i dont +2026-01-06 20:06:09,799 - INFO - Searching MangaUpdates for: daily life with my sister who i dont +2026-01-06 20:06:10,243 - INFO - Updating metadata for: better_than_sex +2026-01-06 20:06:10,244 - INFO - Searching metadata for: better than sex +2026-01-06 20:06:10,480 - INFO - Fetching metadata from: https://nhentai.net/g/580485/ +2026-01-06 20:06:10,813 - INFO - Updating metadata for: do_you_like_an_untidy_older_sister +2026-01-06 20:06:10,813 - INFO - Searching metadata for: do you like an untidy older sister +2026-01-06 20:06:11,130 - INFO - Searching MangaUpdates for: do you like an untidy older sister +2026-01-06 20:06:11,419 - INFO - Updating metadata for: [R Koubou (Ruzi)] Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-06 20:06:11,419 - INFO - Searching metadata for: R Koubou (Ruzi) Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-06 20:06:11,831 - INFO - Searching metadata for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-06 20:06:12,229 - INFO - Searching MangaUpdates for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-06 20:06:13,248 - INFO - Updating metadata for: sibling_with_sister +2026-01-06 20:06:13,249 - INFO - Searching metadata for: sibling with sister +2026-01-06 20:06:13,465 - INFO - Fetching metadata from: https://nhentai.net/g/501918/ +2026-01-06 20:06:13,688 - INFO - Updating metadata for: gikei_ni_netorare_ochita_tsubaki +2026-01-06 20:06:13,688 - INFO - Searching metadata for: gikei ni netorare ochita tsubaki +2026-01-06 20:06:13,929 - INFO - Searching MangaUpdates for: gikei ni netorare ochita tsubaki +2026-01-06 20:06:14,178 - INFO - Updating metadata for: the_festival_of_summers_lustful_traditions +2026-01-06 20:06:14,178 - INFO - Searching metadata for: the festival of summers lustful traditions +2026-01-06 20:06:14,439 - INFO - Searching MangaUpdates for: the festival of summers lustful traditions +2026-01-06 20:06:14,714 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-06 20:06:14,714 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-06 20:06:15,010 - INFO - Fetching metadata from: https://nhentai.net/g/502051/ +2026-01-06 20:06:15,300 - INFO - Updating metadata for: can_you_really_use_this_app_to_fuck_different_species +2026-01-06 20:06:15,300 - INFO - Searching metadata for: can you really use this app to fuck different species +2026-01-06 20:06:15,622 - INFO - Fetching metadata from: https://nhentai.net/g/517152/ +2026-01-06 20:06:16,016 - INFO - Updating metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-06 20:06:16,017 - INFO - Searching metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-06 20:06:16,513 - INFO - Fetching metadata from: https://nhentai.net/g/526048/ +2026-01-06 20:06:16,752 - INFO - Updating metadata for: boku_no_misatan +2026-01-06 20:06:16,752 - INFO - Searching metadata for: boku no misatan +2026-01-06 20:06:17,020 - INFO - Searching MangaUpdates for: boku no misatan +2026-01-06 20:06:17,261 - INFO - Updating metadata for: [Wakamatsu] Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-06 20:06:17,262 - INFO - Searching metadata for: Wakamatsu Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-06 20:06:17,596 - INFO - Fetching metadata from: https://nhentai.net/g/571054/ +2026-01-06 20:06:17,838 - INFO - Updating metadata for: thats_my_girl +2026-01-06 20:06:17,838 - INFO - Searching metadata for: thats my girl +2026-01-06 20:06:18,037 - INFO - Searching MangaUpdates for: thats my girl +2026-01-06 20:06:18,209 - INFO - Updating metadata for: [Juna Juna Juice] Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-06 20:06:18,210 - INFO - Searching metadata for: Juna Juna Juice Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-06 20:06:18,435 - INFO - Fetching metadata from: https://nhentai.net/g/594305/ +2026-01-06 20:06:18,689 - INFO - Updating metadata for: when_i_confessed_to_the_girl_im_interested_in_i_wasnt_allowed_to_go_out_with_her_but_was_given_the_ok_for_childmaking +2026-01-06 20:06:18,689 - INFO - Searching metadata for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-06 20:06:19,094 - INFO - Searching MangaUpdates for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-06 20:06:19,577 - INFO - Updating metadata for: the_mother_of_the_oba_household +2026-01-06 20:06:19,577 - INFO - Searching metadata for: the mother of the oba household +2026-01-06 20:06:19,814 - INFO - Fetching metadata from: https://nhentai.net/g/543837/ +2026-01-06 20:06:20,075 - INFO - Updating metadata for: [UC] Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-06 20:06:20,076 - INFO - Searching metadata for: UC Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-06 20:06:20,617 - INFO - Fetching metadata from: https://nhentai.net/g/399461/ +2026-01-06 20:06:20,845 - INFO - Updating metadata for: [Kudamono Monogatari (Kuroishi Ringo)] Puraibe to Joousama - Private Queen [Eng] +2026-01-06 20:06:20,846 - INFO - Searching metadata for: Kudamono Monogatari (Kuroishi Ringo) Puraibe to Joousama - Private Queen [Eng] +2026-01-06 20:06:21,058 - INFO - Fetching metadata from: https://nhentai.net/g/602699/ +2026-01-06 20:06:21,253 - INFO - Updating metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-06 20:06:21,253 - INFO - Searching metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-06 20:06:21,523 - INFO - Searching MangaUpdates for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-06 20:06:22,108 - INFO - Updating metadata for: [Hakukoukai (Shiramizu Mizuchi)] Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-06 20:06:22,108 - INFO - Searching metadata for: Hakukoukai (Shiramizu Mizuchi) Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-06 20:06:22,331 - INFO - Searching metadata for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-06 20:06:22,593 - INFO - Searching MangaUpdates for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-06 20:06:23,025 - INFO - Updating metadata for: [Sakai Hamachi] Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-06 20:06:23,025 - INFO - Searching metadata for: Sakai Hamachi Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-06 20:06:23,210 - INFO - Fetching metadata from: https://nhentai.net/g/600615/ +2026-01-06 20:06:23,437 - INFO - Updating metadata for: cock_that_makes_tomboy_sisters_tap_out +2026-01-06 20:06:23,437 - INFO - Searching metadata for: cock that makes tomboy sisters tap out +2026-01-06 20:06:23,651 - INFO - Fetching metadata from: https://nhentai.net/g/585217/ +2026-01-06 20:06:23,879 - INFO - Updating metadata for: big_sis_ayaka +2026-01-06 20:06:23,879 - INFO - Searching metadata for: big sis ayaka +2026-01-06 20:06:24,121 - INFO - Fetching metadata from: https://nhentai.net/g/608897/ +2026-01-06 20:06:24,618 - INFO - Updating metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-06 20:06:24,618 - INFO - Searching metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-06 20:06:24,892 - INFO - Fetching metadata from: https://nhentai.net/g/36404/ +2026-01-06 20:06:25,130 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge_chapter_ +2026-01-06 20:06:25,131 - INFO - Searching metadata for: big boobs shadowy character takes revenge chapter +2026-01-06 20:06:25,341 - INFO - Searching MangaUpdates for: big boobs shadowy character takes revenge chapter +2026-01-06 20:06:25,671 - INFO - Updating metadata for: [Shirono Mahiro] Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-06 20:06:25,671 - INFO - Searching metadata for: Shirono Mahiro Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-06 20:06:25,882 - INFO - Fetching metadata from: https://nhentai.net/g/184288/ +2026-01-06 20:06:26,128 - INFO - Updating metadata for: [Nacchuushou (Amazon)] Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-06 20:06:26,128 - INFO - Searching metadata for: Nacchuushou (Amazon) Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-06 20:06:26,632 - INFO - Fetching metadata from: https://nhentai.net/g/604264/ +2026-01-06 20:06:26,884 - INFO - Updating metadata for: im_his_little_sister_slave +2026-01-06 20:06:26,884 - INFO - Searching metadata for: im his little sister slave +2026-01-06 20:06:27,195 - INFO - Searching MangaUpdates for: im his little sister slave +2026-01-06 20:06:27,450 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-06 20:06:27,451 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-06 20:06:27,732 - INFO - Fetching metadata from: https://nhentai.net/g/572070/ +2026-01-06 20:06:27,990 - INFO - Updating metadata for: Sunday Funday [AI GENERATED] +2026-01-06 20:06:27,990 - INFO - Searching metadata for: Sunday Funday [AI GENERATED] +2026-01-06 20:06:28,233 - INFO - Fetching metadata from: https://nhentai.net/g/603171/ +2026-01-06 20:06:28,412 - INFO - Updating metadata for: succubus_pearl_bonus_book +2026-01-06 20:06:28,412 - INFO - Searching metadata for: succubus pearl bonus book +2026-01-06 20:06:28,574 - INFO - Fetching metadata from: https://nhentai.net/g/346344/ +2026-01-06 20:06:28,808 - INFO - Updating metadata for: sibling_switch +2026-01-06 20:06:28,808 - INFO - Searching metadata for: sibling switch +2026-01-06 20:06:29,020 - INFO - Fetching metadata from: https://nhentai.net/g/469099/ +2026-01-06 20:06:29,270 - INFO - Updating metadata for: pantsu_o_haita_dake_nanoni +2026-01-06 20:06:29,270 - INFO - Searching metadata for: pantsu o haita dake nanoni +2026-01-06 20:06:29,470 - INFO - Fetching metadata from: https://nhentai.net/g/548841/ +2026-01-06 20:06:29,696 - INFO - Updating metadata for: [Shiraishi Nagisa] Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-06 20:06:29,696 - INFO - Searching metadata for: Shiraishi Nagisa Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-06 20:06:29,964 - INFO - Fetching metadata from: https://nhentai.net/g/407654/ +2026-01-06 20:06:30,187 - INFO - Updating metadata for: gyan_colle +2026-01-06 20:06:30,187 - INFO - Searching metadata for: gyan colle +2026-01-06 20:06:30,391 - INFO - Fetching metadata from: https://nhentai.net/g/611983/ +2026-01-06 20:06:30,636 - INFO - Updating metadata for: didnt_you_know +2026-01-06 20:06:30,637 - INFO - Searching metadata for: didnt you know +2026-01-06 20:06:30,774 - INFO - Searching MangaUpdates for: didnt you know +2026-01-06 20:06:30,952 - INFO - Updating metadata for: [Yue] Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-06 20:06:30,952 - INFO - Searching metadata for: Yue Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-06 20:06:31,381 - INFO - Fetching metadata from: https://nhentai.net/g/603962/ +2026-01-06 20:06:31,731 - INFO - Updating metadata for: [Kakinotanehitotsubu (Kakino Nashiko)] Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-06 20:06:31,731 - INFO - Searching metadata for: Kakinotanehitotsubu (Kakino Nashiko) Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-06 20:06:32,066 - INFO - Fetching metadata from: https://nhentai.net/g/484501/ +2026-01-06 20:06:32,296 - INFO - Updating metadata for: steamed_bun_kiss +2026-01-06 20:06:32,297 - INFO - Searching metadata for: steamed bun kiss +2026-01-06 20:06:32,465 - INFO - Fetching metadata from: https://nhentai.net/g/166671/ +2026-01-06 20:06:32,647 - INFO - Updating metadata for: [Pipasuta (Pipa)] Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-06 20:06:32,647 - INFO - Searching metadata for: Pipasuta (Pipa) Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-06 20:06:32,954 - INFO - Fetching metadata from: https://nhentai.net/g/572821/ +2026-01-06 20:06:33,188 - INFO - Updating metadata for: madam_complex +2026-01-06 20:06:33,189 - INFO - Searching metadata for: madam complex +2026-01-06 20:06:33,387 - INFO - Fetching metadata from: https://nhentai.net/g/595613/ +2026-01-06 20:06:33,614 - INFO - Updating metadata for: [Puppukupu (Kawaisaw)] Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-06 20:06:33,614 - INFO - Searching metadata for: Puppukupu (Kawaisaw) Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-06 20:06:33,907 - INFO - Searching metadata for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-06 20:06:34,125 - INFO - Searching MangaUpdates for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-06 20:06:34,431 - INFO - Updating metadata for: aggressive_mama +2026-01-06 20:06:34,431 - INFO - Searching metadata for: aggressive mama +2026-01-06 20:06:34,635 - INFO - Fetching metadata from: https://nhentai.net/g/467578/ +2026-01-06 20:06:34,926 - INFO - Updating metadata for: [Natsuzo] The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-06 20:06:34,927 - INFO - Searching metadata for: Natsuzo The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-06 20:06:35,233 - INFO - Fetching metadata from: https://nhentai.net/g/604150/ +2026-01-06 20:06:35,423 - INFO - Updating metadata for: in_a_room_where_you_cant_leave_unless_you_have_sex +2026-01-06 20:06:35,423 - INFO - Searching metadata for: in a room where you cant leave unless you have sex +2026-01-06 20:06:35,719 - INFO - Searching MangaUpdates for: in a room where you cant leave unless you have sex +2026-01-06 20:06:36,069 - INFO - Updating metadata for: cattle_sister +2026-01-06 20:06:36,069 - INFO - Searching metadata for: cattle sister +2026-01-06 20:06:36,255 - INFO - Fetching metadata from: https://nhentai.net/g/614951/ +2026-01-06 20:06:36,473 - INFO - Updating metadata for: we_went_overboard_with_our_home_work_this_evening +2026-01-06 20:06:36,474 - INFO - Searching metadata for: we went overboard with our home work this evening +2026-01-06 20:06:36,672 - INFO - Fetching metadata from: https://nhentai.net/g/533599/ +2026-01-06 20:06:36,871 - INFO - Updating metadata for: Untitled Folder +2026-01-06 20:06:36,871 - INFO - Searching metadata for: Untitled Folder +2026-01-06 20:06:37,077 - INFO - Searching MangaUpdates for: Untitled Folder +2026-01-06 20:06:37,268 - INFO - Updating metadata for: nozo_nico_don +2026-01-06 20:06:37,268 - INFO - Searching metadata for: nozo nico don +2026-01-06 20:06:37,624 - INFO - Fetching metadata from: https://nhentai.net/g/251101/ +2026-01-06 20:06:37,896 - INFO - Updating metadata for: tonari_no_elf_mama +2026-01-06 20:06:37,896 - INFO - Searching metadata for: tonari no elf mama +2026-01-06 20:06:38,179 - INFO - Fetching metadata from: https://nhentai.net/g/614016/ +2026-01-06 20:06:38,406 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 _ Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-06 20:06:38,406 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-06 20:06:38,755 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-06 20:06:39,265 - INFO - Updating metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-06 20:06:39,266 - INFO - Searching metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-06 20:06:39,515 - INFO - Searching MangaUpdates for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-06 20:06:39,969 - INFO - Updating metadata for: boshi_syndrome +2026-01-06 20:06:39,969 - INFO - Searching metadata for: boshi syndrome +2026-01-06 20:06:40,177 - INFO - Fetching metadata from: https://nhentai.net/g/586173/ +2026-01-06 20:06:40,430 - INFO - Updating metadata for: a_trip_back_home +2026-01-06 20:06:40,430 - INFO - Searching metadata for: a trip back home +2026-01-06 20:06:40,715 - INFO - Fetching metadata from: https://nhentai.net/g/241562/ +2026-01-06 20:06:40,941 - INFO - Updating metadata for: obaman_aneman_harem +2026-01-06 20:06:40,942 - INFO - Searching metadata for: obaman aneman harem +2026-01-06 20:06:41,157 - INFO - Fetching metadata from: https://nhentai.net/g/588648/ +2026-01-06 20:06:41,507 - INFO - Updating metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-06 20:06:41,507 - INFO - Searching metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-06 20:06:41,815 - INFO - Searching MangaUpdates for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-06 20:06:42,249 - INFO - Updating metadata for: Take a break from working to fuck +2026-01-06 20:06:42,249 - INFO - Searching metadata for: Take a break from working to fuck +2026-01-06 20:06:42,639 - INFO - Searching MangaUpdates for: Take a break from working to fuck +2026-01-06 20:06:43,133 - INFO - Updating metadata for: paipai_mashimashi_gal_bitch +2026-01-06 20:06:43,133 - INFO - Searching metadata for: paipai mashimashi gal bitch +2026-01-06 20:06:43,362 - INFO - Fetching metadata from: https://nhentai.net/g/555058/ +2026-01-06 20:06:43,595 - INFO - Updating metadata for: [Okashi Koujou] That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-06 20:06:43,595 - INFO - Searching metadata for: Okashi Koujou That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-06 20:06:44,068 - INFO - Fetching metadata from: https://nhentai.net/g/603202/ +2026-01-06 20:06:44,433 - INFO - Updating metadata for: gal_ga_saimin_kakeyou_to_shitara_kaeriuchi_saremashita +2026-01-06 20:06:44,433 - INFO - Searching metadata for: gal ga saimin kakeyou to shitara kaeriuchi saremashita +2026-01-06 20:06:44,706 - INFO - Fetching metadata from: https://nhentai.net/g/575485/ +2026-01-06 20:06:44,953 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-06 20:06:44,953 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-06 20:06:45,246 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-06 20:06:45,634 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-06 20:06:45,935 - INFO - Updating metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san _ Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-06 20:06:45,935 - INFO - Searching metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-06 20:06:46,183 - INFO - Fetching metadata from: https://nhentai.net/g/467602/ +2026-01-06 20:06:46,414 - INFO - Updating metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-06 20:06:46,414 - INFO - Searching metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-06 20:06:46,658 - INFO - Fetching metadata from: https://nhentai.net/g/599736/ +2026-01-06 20:06:46,906 - INFO - Updating metadata for: the_succubus_army_invasion +2026-01-06 20:06:46,906 - INFO - Searching metadata for: the succubus army invasion +2026-01-06 20:06:47,161 - INFO - Fetching metadata from: https://nhentai.net/g/581332/ +2026-01-06 20:06:47,439 - INFO - Updating metadata for: boku_no_misatan_chapter_ +2026-01-06 20:06:47,440 - INFO - Searching metadata for: boku no misatan chapter +2026-01-06 20:06:47,720 - INFO - Searching MangaUpdates for: boku no misatan chapter +2026-01-06 20:06:48,022 - INFO - Updating metadata for: Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-06 20:06:48,023 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-06 20:06:48,231 - INFO - Searching MangaUpdates for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-06 20:06:48,672 - INFO - Updating metadata for: my_tall_and_busty_step_sister_gives +2026-01-06 20:06:48,673 - INFO - Searching metadata for: my tall and busty step sister gives +2026-01-06 20:06:48,938 - INFO - Fetching metadata from: https://nhentai.net/g/591571/ +2026-01-06 20:06:49,167 - INFO - Updating metadata for: about_sadako_being_stuck_on_the_computer_screen +2026-01-06 20:06:49,167 - INFO - Searching metadata for: about sadako being stuck on the computer screen +2026-01-06 20:06:49,447 - INFO - Searching MangaUpdates for: about sadako being stuck on the computer screen +2026-01-06 20:06:50,252 - INFO - Updating metadata for: when_i_lost_the_use_of_my_arms_my_brother_started +2026-01-06 20:06:50,253 - INFO - Searching metadata for: when i lost the use of my arms my brother started +2026-01-06 20:06:50,557 - INFO - Fetching metadata from: https://nhentai.net/g/546227/ +2026-01-06 20:06:50,772 - INFO - Updating metadata for: sister_ss_short_story +2026-01-06 20:06:50,772 - INFO - Searching metadata for: sister ss short story +2026-01-06 20:06:50,944 - INFO - Fetching metadata from: https://nhentai.net/g/589411/ +2026-01-06 20:06:51,153 - INFO - Updating metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC_TRANSLATIONS) +2026-01-06 20:06:51,153 - INFO - Searching metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-06 20:06:51,532 - INFO - Searching MangaUpdates for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-06 20:06:52,371 - INFO - Updating metadata for: motherly_love +2026-01-06 20:06:52,371 - INFO - Searching metadata for: motherly love +2026-01-06 20:06:52,541 - INFO - Fetching metadata from: https://nhentai.net/g/406015/ +2026-01-06 20:06:52,762 - INFO - Updating metadata for: [Satsuki Imonet] Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-06 20:06:52,762 - INFO - Searching metadata for: Satsuki Imonet Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-06 20:06:53,223 - INFO - Searching metadata for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-06 20:06:53,643 - INFO - Searching MangaUpdates for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-06 20:06:54,284 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-06 20:06:54,284 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-06 20:06:54,672 - INFO - Fetching metadata from: https://nhentai.net/g/412142/ +2026-01-06 20:06:54,922 - INFO - Updating metadata for: Suki Kirai Daisuki. Bangaihen _ Love • Hate • Really Love +2026-01-06 20:06:54,922 - INFO - Searching metadata for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-06 20:06:55,160 - INFO - Searching MangaUpdates for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-06 20:06:55,603 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-06 20:06:55,605 - INFO - Searching metadata for: Ginshio Honpo (Ginen) My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-06 20:06:56,112 - INFO - Fetching metadata from: https://nhentai.net/g/563890/ +2026-01-06 20:06:56,313 - INFO - Updating metadata for: playing_the_kings_game_with_a_tanned_jk_oneesan +2026-01-06 20:06:56,313 - INFO - Searching metadata for: playing the kings game with a tanned jk oneesan +2026-01-06 20:06:56,527 - INFO - Searching MangaUpdates for: playing the kings game with a tanned jk oneesan +2026-01-06 20:06:57,414 - INFO - Updating metadata for: 7days_toono_esuke +2026-01-06 20:06:57,414 - INFO - Searching metadata for: 7days toono esuke +2026-01-06 20:06:57,621 - INFO - Fetching metadata from: https://nhentai.net/g/575052/ +2026-01-06 20:06:57,869 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-06 20:06:57,870 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-06 20:06:58,292 - INFO - Fetching metadata from: https://nhentai.net/g/603877/ +2026-01-06 20:06:58,544 - INFO - Updating metadata for: [Kurogane Kenn] Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-06 20:06:58,544 - INFO - Searching metadata for: Kurogane Kenn Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-06 20:06:58,914 - INFO - Fetching metadata from: https://nhentai.net/g/598681/ +2026-01-06 20:06:59,136 - INFO - Updating metadata for: oneechans_toy +2026-01-06 20:06:59,136 - INFO - Searching metadata for: oneechans toy +2026-01-06 20:06:59,276 - INFO - Searching MangaUpdates for: oneechans toy +2026-01-06 20:06:59,596 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-06 20:06:59,597 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-06 20:06:59,905 - INFO - Fetching metadata from: https://nhentai.net/g/519770/ +2026-01-06 20:07:00,158 - INFO - Updating metadata for: when_dad_and_mom_arent_home +2026-01-06 20:07:00,158 - INFO - Searching metadata for: when dad and mom arent home +2026-01-06 20:07:00,339 - INFO - Searching MangaUpdates for: when dad and mom arent home +2026-01-06 20:07:00,599 - INFO - Updating metadata for: succubus_kingdom +2026-01-06 20:07:00,599 - INFO - Searching metadata for: succubus kingdom +2026-01-06 20:07:00,880 - INFO - Fetching metadata from: https://nhentai.net/g/614436/ +2026-01-06 20:07:01,219 - INFO - Updating metadata for: liko_the_mommy_pokemon +2026-01-06 20:07:01,219 - INFO - Searching metadata for: liko the mommy pokemon +2026-01-06 20:07:01,391 - INFO - Searching MangaUpdates for: liko the mommy pokemon +2026-01-06 20:07:01,630 - INFO - Updating metadata for: FireShot +2026-01-06 20:07:01,631 - INFO - Searching metadata for: FireShot +2026-01-06 20:07:01,828 - INFO - Searching MangaUpdates for: FireShot +2026-01-06 20:07:01,982 - INFO - Updating metadata for: getting_along_well_with_my_sister +2026-01-06 20:07:01,982 - INFO - Searching metadata for: getting along well with my sister +2026-01-06 20:07:02,156 - INFO - Fetching metadata from: https://nhentai.net/g/567863/ +2026-01-06 20:07:02,435 - INFO - Updating metadata for: hypnosis_satisfaction +2026-01-06 20:07:02,435 - INFO - Searching metadata for: hypnosis satisfaction +2026-01-06 20:07:02,647 - INFO - Searching MangaUpdates for: hypnosis satisfaction +2026-01-06 20:07:02,957 - INFO - Updating metadata for: otto_no_tame_no_ranshi_o_tanin_no_seishi +2026-01-06 20:07:02,957 - INFO - Searching metadata for: otto no tame no ranshi o tanin no seishi +2026-01-06 20:07:03,356 - INFO - Fetching metadata from: https://nhentai.net/g/551507/ +2026-01-06 20:07:03,613 - INFO - Updating metadata for: [Milkdou Shoukai (Milk Koubou)] Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-06 20:07:03,614 - INFO - Searching metadata for: Milkdou Shoukai (Milk Koubou) Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-06 20:07:04,003 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-06 20:07:04,241 - INFO - Updating metadata for: hikki_mother_fucker +2026-01-06 20:07:04,242 - INFO - Searching metadata for: hikki mother fucker +2026-01-06 20:07:04,492 - INFO - Fetching metadata from: https://nhentai.net/g/287208/ +2026-01-06 20:07:04,728 - INFO - Updating metadata for: meaty_minxes +2026-01-06 20:07:04,728 - INFO - Searching metadata for: meaty minxes +2026-01-06 20:07:04,916 - INFO - Searching MangaUpdates for: meaty minxes +2026-01-06 20:07:05,101 - INFO - Updating metadata for: [Zero no Mono] Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-06 20:07:05,101 - INFO - Searching metadata for: Zero no Mono Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-06 20:07:05,518 - INFO - Fetching metadata from: https://nhentai.net/g/342164/ +2026-01-06 20:07:05,755 - INFO - Updating metadata for: mob_reipu +2026-01-06 20:07:05,755 - INFO - Searching metadata for: mob reipu +2026-01-06 20:07:05,962 - INFO - Fetching metadata from: https://nhentai.net/g/311650/ +2026-01-06 20:07:06,154 - INFO - Updating metadata for: dosukebe_youkai_midaraga_no_goshujinsama +2026-01-06 20:07:06,154 - INFO - Searching metadata for: dosukebe youkai midaraga no goshujinsama +2026-01-06 20:07:06,355 - INFO - Searching MangaUpdates for: dosukebe youkai midaraga no goshujinsama +2026-01-06 20:07:06,623 - INFO - Updating metadata for: [Tobe] Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-06 20:07:06,623 - INFO - Searching metadata for: Tobe Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-06 20:07:06,851 - INFO - Fetching metadata from: https://nhentai.net/g/603385/ +2026-01-06 20:07:07,053 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-06 20:07:07,053 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-06 20:07:07,341 - INFO - Fetching metadata from: https://nhentai.net/g/600993/ +2026-01-06 20:07:07,664 - INFO - Updating metadata for: thermometer_boy_measuring_beast +2026-01-06 20:07:07,664 - INFO - Searching metadata for: thermometer boy measuring beast +2026-01-06 20:07:07,850 - INFO - Searching MangaUpdates for: thermometer boy measuring beast +2026-01-06 20:07:08,065 - INFO - Updating metadata for: broconflict +2026-01-06 20:07:08,065 - INFO - Searching metadata for: broconflict +2026-01-06 20:07:08,246 - INFO - Searching MangaUpdates for: broconflict +2026-01-06 20:07:08,365 - INFO - Updating metadata for: my_little_sisters_are_slutty_orcs +2026-01-06 20:07:08,366 - INFO - Searching metadata for: my little sisters are slutty orcs +2026-01-06 20:07:08,556 - INFO - Fetching metadata from: https://nhentai.net/g/475987/ +2026-01-06 20:07:08,792 - INFO - Updating metadata for: [Merenge Tenmondai (Kugurofu)] D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-06 20:07:08,792 - INFO - Searching metadata for: Merenge Tenmondai (Kugurofu) D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-06 20:07:09,131 - INFO - Fetching metadata from: https://nhentai.net/g/620725/ +2026-01-06 20:07:09,379 - INFO - Updating metadata for: [Nishikawa Kou] Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-06 20:07:09,379 - INFO - Searching metadata for: Nishikawa Kou Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-06 20:07:09,767 - INFO - Fetching metadata from: https://nhentai.net/g/600838/ +2026-01-06 20:07:09,995 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-06 20:07:09,996 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-06 20:07:10,216 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-06 20:07:10,430 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-06 20:07:11,043 - INFO - Updating metadata for: Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love +2026-01-06 20:07:11,051 - INFO - Searching metadata for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-06 20:07:11,364 - INFO - Searching MangaUpdates for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-06 20:07:11,748 - INFO - Updating metadata for: my_sister_uses_my_trash_as_masturbation_material +2026-01-06 20:07:11,748 - INFO - Searching metadata for: my sister uses my trash as masturbation material +2026-01-06 20:07:11,982 - INFO - Fetching metadata from: https://nhentai.net/g/520519/ +2026-01-06 20:07:12,215 - INFO - Updating metadata for: [Pino] Boin [English] +2026-01-06 20:07:12,215 - INFO - Searching metadata for: Pino Boin [English] +2026-01-06 20:07:12,412 - INFO - Fetching metadata from: https://nhentai.net/g/595922/ +2026-01-06 20:07:12,617 - INFO - Updating metadata for: future_detective +2026-01-06 20:07:12,617 - INFO - Searching metadata for: future detective +2026-01-06 20:07:12,769 - INFO - Fetching metadata from: https://nhentai.net/g/170580/ +2026-01-06 20:07:13,010 - INFO - Updating metadata for: what_the_mother_does_for_the_sake_of_the_son +2026-01-06 20:07:13,011 - INFO - Searching metadata for: what the mother does for the sake of the son +2026-01-06 20:07:13,315 - INFO - Fetching metadata from: https://nhentai.net/g/532249/ +2026-01-06 20:07:13,570 - INFO - Updating metadata for: [Tawara Hiryuu] Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-06 20:07:13,570 - INFO - Searching metadata for: Tawara Hiryuu Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-06 20:07:13,809 - INFO - Searching metadata for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-06 20:07:14,154 - INFO - Searching MangaUpdates for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-06 20:07:14,643 - INFO - Updating metadata for: gifu_to_shimai_no_kizuna +2026-01-06 20:07:14,644 - INFO - Searching metadata for: gifu to shimai no kizuna +2026-01-06 20:07:14,942 - INFO - Fetching metadata from: https://nhentai.net/g/97406/ +2026-01-06 20:07:15,162 - INFO - Updating metadata for: omae_no_you_na_maou_ga_iru_kai +2026-01-06 20:07:15,162 - INFO - Searching metadata for: omae no you na maou ga iru kai +2026-01-06 20:07:15,511 - INFO - Searching MangaUpdates for: omae no you na maou ga iru kai +2026-01-06 20:07:15,791 - INFO - Updating metadata for: if_seems_like_everyone_except_me_has_lost_their_concept_of_eroticism +2026-01-06 20:07:15,791 - INFO - Searching metadata for: if seems like everyone except me has lost their concept of eroticism +2026-01-06 20:07:16,144 - INFO - Searching MangaUpdates for: if seems like everyone except me has lost their concept of eroticism +2026-01-06 20:07:16,564 - INFO - Updating metadata for: oneechan_no_dokusho_jijou +2026-01-06 20:07:16,565 - INFO - Searching metadata for: oneechan no dokusho jijou +2026-01-06 20:07:16,789 - INFO - Searching MangaUpdates for: oneechan no dokusho jijou +2026-01-06 20:07:17,075 - INFO - Updating metadata for: what_friend_do +2026-01-06 20:07:17,075 - INFO - Searching metadata for: what friend do +2026-01-06 20:07:17,326 - INFO - Fetching metadata from: https://nhentai.net/g/601381/ +2026-01-06 20:07:17,505 - INFO - Updating metadata for: kinyoku_ake_no_kyoudai_kankei +2026-01-06 20:07:17,505 - INFO - Searching metadata for: kinyoku ake no kyoudai kankei +2026-01-06 20:07:17,735 - INFO - Searching MangaUpdates for: kinyoku ake no kyoudai kankei +2026-01-06 20:07:18,083 - INFO - Updating metadata for: aniyome_milk_elder_sisterinlaws_milk +2026-01-06 20:07:18,083 - INFO - Searching metadata for: aniyome milk elder sisterinlaws milk +2026-01-06 20:07:18,306 - INFO - Searching MangaUpdates for: aniyome milk elder sisterinlaws milk +2026-01-06 20:07:18,518 - INFO - Updating metadata for: idiopathic_erectile_syndrome_when_masturbation_fails +2026-01-06 20:07:18,518 - INFO - Searching metadata for: idiopathic erectile syndrome when masturbation fails +2026-01-06 20:07:18,669 - INFO - Fetching metadata from: https://nhentai.net/g/271977/ +2026-01-06 20:07:18,886 - INFO - Updating metadata for: sluttification_virus_anywhere_anytime_lets_fuck_already +2026-01-06 20:07:18,887 - INFO - Searching metadata for: sluttification virus anywhere anytime lets fuck already +2026-01-06 20:07:19,035 - INFO - Searching MangaUpdates for: sluttification virus anywhere anytime lets fuck already +2026-01-06 20:07:19,397 - INFO - Updating metadata for: [UC] Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-06 20:07:19,397 - INFO - Searching metadata for: UC Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-06 20:07:19,739 - INFO - Fetching metadata from: https://nhentai.net/g/603830/ +2026-01-06 20:07:20,011 - INFO - Updating metadata for: absurd_mother_and_son_incest +2026-01-06 20:07:20,011 - INFO - Searching metadata for: absurd mother and son incest +2026-01-06 20:07:20,182 - INFO - Fetching metadata from: https://nhentai.net/g/359070/ +2026-01-06 20:07:20,373 - INFO - Updating metadata for: [Ringoya (Alp)] Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-06 20:07:20,373 - INFO - Searching metadata for: Ringoya (Alp) Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-06 20:07:20,864 - INFO - Fetching metadata from: https://nhentai.net/g/620273/ +2026-01-06 20:07:21,144 - INFO - Updating metadata for: idol_wa_fan_no_semen_tank_ninshinderella_girls +2026-01-06 20:07:21,144 - INFO - Searching metadata for: idol wa fan no semen tank ninshinderella girls +2026-01-06 20:07:21,399 - INFO - Searching MangaUpdates for: idol wa fan no semen tank ninshinderella girls +2026-01-06 20:07:21,707 - INFO - Updating metadata for: [Tawawa Delivery] Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-06 20:07:21,707 - INFO - Searching metadata for: Tawawa Delivery Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-06 20:07:21,876 - INFO - Searching metadata for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-06 20:07:22,043 - INFO - Searching MangaUpdates for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-06 20:07:22,367 - INFO - Updating metadata for: incha_otouto_ga_nangoku_beach_de_kinpatsu +2026-01-06 20:07:22,367 - INFO - Searching metadata for: incha otouto ga nangoku beach de kinpatsu +2026-01-06 20:07:22,629 - INFO - Searching MangaUpdates for: incha otouto ga nangoku beach de kinpatsu +2026-01-06 20:07:23,023 - INFO - Updating metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-06 20:07:23,023 - INFO - Searching metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-06 20:07:23,233 - INFO - Searching MangaUpdates for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-06 20:07:23,560 - INFO - Updating metadata for: akira_nii_chan_who_ive_always_admired +2026-01-06 20:07:23,561 - INFO - Searching metadata for: akira nii chan who ive always admired +2026-01-06 20:07:23,742 - INFO - Searching MangaUpdates for: akira nii chan who ive always admired +2026-01-06 20:07:24,085 - INFO - Updating metadata for: [NesZ] My farmer aunt is having a problem [English] +2026-01-06 20:07:24,087 - INFO - Searching metadata for: NesZ My farmer aunt is having a problem [English] +2026-01-06 20:07:24,343 - INFO - Fetching metadata from: https://nhentai.net/g/607421/ +2026-01-06 20:07:24,575 - INFO - Updating metadata for: my_ar_glasses_can_see_various_stats_about_my_foster_sister +2026-01-06 20:07:24,575 - INFO - Searching metadata for: my ar glasses can see various stats about my foster sister +2026-01-06 20:07:24,796 - INFO - Fetching metadata from: https://nhentai.net/g/589010/ +2026-01-06 20:07:25,309 - INFO - Updating metadata for: dirty_lessons_improving_your_manhood_chapter_ +2026-01-06 20:07:25,309 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-06 20:07:25,501 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter +2026-01-06 20:07:25,792 - INFO - Updating metadata for: the_story_about_how_i_found_my_soulmate_when +2026-01-06 20:07:25,792 - INFO - Searching metadata for: the story about how i found my soulmate when +2026-01-06 20:07:26,216 - INFO - Fetching metadata from: https://nhentai.net/g/521364/ +2026-01-06 20:07:26,449 - INFO - Updating metadata for: [Hannya san] Forbidden lust +2026-01-06 20:07:26,451 - INFO - Searching metadata for: Hannya san Forbidden lust +2026-01-06 20:07:26,670 - INFO - Fetching metadata from: https://nhentai.net/g/600751/ +2026-01-06 20:07:26,901 - INFO - Updating metadata for: shojo_ane_kangaeru +2026-01-06 20:07:26,901 - INFO - Searching metadata for: shojo ane kangaeru +2026-01-06 20:07:27,064 - INFO - Fetching metadata from: https://nhentai.net/g/447249/ +2026-01-06 20:07:27,305 - INFO - Updating metadata for: neechan_to_sei_shori_shiteru +2026-01-06 20:07:27,305 - INFO - Searching metadata for: neechan to sei shori shiteru +2026-01-06 20:07:27,520 - INFO - Searching MangaUpdates for: neechan to sei shori shiteru +2026-01-06 20:07:27,872 - INFO - Updating metadata for: [moNmomo] Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-06 20:07:27,872 - INFO - Searching metadata for: moNmomo Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-06 20:07:28,123 - INFO - Fetching metadata from: https://nhentai.net/g/618662/ +2026-01-06 20:07:28,315 - INFO - Updating metadata for: fushoku_tensei_tamashii_kawattara_honki_dasu +2026-01-06 20:07:28,316 - INFO - Searching metadata for: fushoku tensei tamashii kawattara honki dasu +2026-01-06 20:07:28,499 - INFO - Fetching metadata from: https://nhentai.net/g/574276/ +2026-01-06 20:07:28,709 - INFO - Updating metadata for: [Mochi-ya (Karoti)] Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-06 20:07:28,710 - INFO - Searching metadata for: Mochi-ya (Karoti) Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-06 20:07:28,977 - INFO - Fetching metadata from: https://nhentai.net/g/620624/ +2026-01-06 20:07:29,174 - INFO - Updating metadata for: i_woke_up_to_my_naked_apron_sister_and_tried_fucking_her +2026-01-06 20:07:29,174 - INFO - Searching metadata for: i woke up to my naked apron sister and tried fucking her +2026-01-06 20:07:29,512 - INFO - Fetching metadata from: https://nhentai.net/g/602663/ +2026-01-06 20:07:29,845 - INFO - Updating metadata for: little_sister_paradise +2026-01-06 20:07:29,845 - INFO - Searching metadata for: little sister paradise +2026-01-06 20:07:30,014 - INFO - Fetching metadata from: https://nhentai.net/g/567713/ +2026-01-06 20:07:30,205 - INFO - Updating metadata for: my_mature_older_sister_the_crazy_convenient_relationship_of_an_older_sister_and_younger_brother_in_their_thirtys +2026-01-06 20:07:30,205 - INFO - Searching metadata for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-06 20:07:30,490 - INFO - Searching MangaUpdates for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-06 20:07:30,898 - INFO - Updating metadata for: sex_season +2026-01-06 20:07:30,899 - INFO - Searching metadata for: sex season +2026-01-06 20:07:31,149 - INFO - Fetching metadata from: https://nhentai.net/g/618390/ +2026-01-06 20:07:31,520 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite _ Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-06 20:07:31,520 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-06 20:07:31,936 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-06 20:07:32,357 - INFO - Updating metadata for: that_pov_sex_thing +2026-01-06 20:07:32,358 - INFO - Searching metadata for: that pov sex thing +2026-01-06 20:07:32,571 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-06 20:07:32,826 - INFO - Updating metadata for: hot_teacher +2026-01-06 20:07:32,828 - INFO - Searching metadata for: hot teacher +2026-01-06 20:07:33,145 - INFO - Fetching metadata from: https://nhentai.net/g/620990/ +2026-01-06 20:07:33,329 - INFO - Updating metadata for: two_siblings_fela_pure +2026-01-06 20:07:33,329 - INFO - Searching metadata for: two siblings fela pure +2026-01-06 20:07:33,548 - INFO - Fetching metadata from: https://nhentai.net/g/65576/ +2026-01-06 20:07:33,819 - INFO - Updating metadata for: on_the_night_of_the_ceremony +2026-01-06 20:07:33,819 - INFO - Searching metadata for: on the night of the ceremony +2026-01-06 20:07:34,049 - INFO - Fetching metadata from: https://nhentai.net/g/530970/ +2026-01-06 20:07:34,408 - INFO - Updating metadata for: [Takasugi Kou] Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-06 20:07:34,409 - INFO - Searching metadata for: Takasugi Kou Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-06 20:07:34,686 - INFO - Fetching metadata from: https://nhentai.net/g/599358/ +2026-01-06 20:07:34,924 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-06 20:07:34,924 - INFO - Searching metadata for: Mustard Teikoku (Europia) Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-06 20:07:35,434 - INFO - Searching metadata for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-06 20:07:35,861 - INFO - Searching MangaUpdates for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-06 20:07:36,462 - INFO - Updating metadata for: father_stop_it +2026-01-06 20:07:36,463 - INFO - Searching metadata for: father stop it +2026-01-06 20:07:36,696 - INFO - Fetching metadata from: https://nhentai.net/g/549536/ +2026-01-06 20:07:36,941 - INFO - Updating metadata for: organize +2026-01-06 20:07:36,942 - INFO - Searching metadata for: organize +2026-01-06 20:07:37,171 - INFO - Fetching metadata from: https://nhentai.net/g/215772/ +2026-01-06 20:07:37,409 - INFO - Updating metadata for: seventy_two +2026-01-06 20:07:37,410 - INFO - Searching metadata for: seventy two +2026-01-06 20:07:37,604 - INFO - Fetching metadata from: https://nhentai.net/g/110977/ +2026-01-06 20:07:37,836 - INFO - Updating metadata for: a_sister_who_wants_to_watch_siblings +2026-01-06 20:07:37,837 - INFO - Searching metadata for: a sister who wants to watch siblings +2026-01-06 20:07:38,181 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-06 20:07:38,404 - INFO - Updating metadata for: from_now_on_you_are_my_livestock_chapter +2026-01-06 20:07:38,404 - INFO - Searching metadata for: from now on you are my livestock chapter +2026-01-06 20:07:38,688 - INFO - Searching MangaUpdates for: from now on you are my livestock chapter +2026-01-06 20:07:39,024 - INFO - Updating metadata for: a_room_you_cant_leave_after_having_sex +2026-01-06 20:07:39,024 - INFO - Searching metadata for: a room you cant leave after having sex +2026-01-06 20:07:39,335 - INFO - Searching MangaUpdates for: a room you cant leave after having sex +2026-01-06 20:07:39,798 - INFO - Updating metadata for: narikawari_chapter_1 +2026-01-06 20:07:39,798 - INFO - Searching metadata for: narikawari chapter 1 +2026-01-06 20:07:40,036 - INFO - Searching MangaUpdates for: narikawari chapter 1 +2026-01-06 20:07:40,290 - INFO - Updating metadata for: [Ookami Shoujo Dan (Mukoujima Tenro)] Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-06 20:07:40,295 - INFO - Searching metadata for: Ookami Shoujo Dan (Mukoujima Tenro) Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-06 20:07:40,661 - INFO - Fetching metadata from: https://nhentai.net/g/617181/ +2026-01-06 20:07:40,962 - INFO - Updating metadata for: welcome_to_the_brothel_school_festival +2026-01-06 20:07:40,963 - INFO - Searching metadata for: welcome to the brothel school festival +2026-01-06 20:07:41,276 - INFO - Fetching metadata from: https://nhentai.net/g/601119/ +2026-01-06 20:07:41,523 - INFO - Updating metadata for: [Oroshi Ponzu] A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-06 20:07:41,523 - INFO - Searching metadata for: Oroshi Ponzu A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-06 20:07:41,882 - INFO - Searching metadata for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-06 20:07:42,378 - INFO - Searching MangaUpdates for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-06 20:07:43,206 - INFO - Updating metadata for: step_child_swapping_satsuki_imonet +2026-01-06 20:07:43,207 - INFO - Searching metadata for: step child swapping satsuki imonet +2026-01-06 20:07:43,414 - INFO - Searching MangaUpdates for: step child swapping satsuki imonet +2026-01-06 20:07:43,620 - INFO - Updating metadata for: the_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother_in_laws_countryside_where_there_is_an_h_custom +2026-01-06 20:07:43,620 - INFO - Searching metadata for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-06 20:07:44,041 - INFO - Searching MangaUpdates for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-06 20:07:44,546 - INFO - Updating metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-06 20:07:44,546 - INFO - Searching metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-06 20:07:45,112 - INFO - Searching MangaUpdates for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-06 20:07:45,890 - INFO - Updating metadata for: friends_forever +2026-01-06 20:07:45,890 - INFO - Searching metadata for: friends forever +2026-01-06 20:07:46,095 - INFO - Fetching metadata from: https://nhentai.net/g/588356/ +2026-01-06 20:07:46,267 - INFO - Updating metadata for: were_siblings_but_lets_tie_the_knot +2026-01-06 20:07:46,267 - INFO - Searching metadata for: were siblings but lets tie the knot +2026-01-06 20:07:46,442 - INFO - Searching MangaUpdates for: were siblings but lets tie the knot +2026-01-06 20:07:46,678 - INFO - Updating metadata for: takebe_saorichan_to_iu_kanojo +2026-01-06 20:07:46,678 - INFO - Searching metadata for: takebe saorichan to iu kanojo +2026-01-06 20:07:46,916 - INFO - Searching MangaUpdates for: takebe saorichan to iu kanojo +2026-01-06 20:07:47,169 - INFO - Updating metadata for: mega_milk +2026-01-06 20:07:47,169 - INFO - Searching metadata for: mega milk +2026-01-06 20:07:47,396 - INFO - Fetching metadata from: https://nhentai.net/g/616449/ +2026-01-06 20:07:47,688 - INFO - Updating metadata for: [Gomikasu Tarou] Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-06 20:07:47,688 - INFO - Searching metadata for: Gomikasu Tarou Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-06 20:07:48,123 - INFO - Searching metadata for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-06 20:07:48,866 - INFO - Searching MangaUpdates for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-06 20:07:49,638 - INFO - Updating metadata for: a_gentle_mommy_who_secret_makes +2026-01-06 20:07:49,638 - INFO - Searching metadata for: a gentle mommy who secret makes +2026-01-06 20:07:49,911 - INFO - Fetching metadata from: https://nhentai.net/g/546176/ +2026-01-06 20:07:50,152 - INFO - Updating metadata for: i_got_an_elf_little_sister +2026-01-06 20:07:50,152 - INFO - Searching metadata for: i got an elf little sister +2026-01-06 20:07:50,463 - INFO - Fetching metadata from: https://nhentai.net/g/544668/ +2026-01-06 20:07:50,713 - INFO - Updating metadata for: [Yue] Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-06 20:07:50,713 - INFO - Searching metadata for: Yue Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-06 20:07:51,120 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-06 20:07:51,489 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-06 20:07:51,928 - INFO - Updating metadata for: i_became_kirarachans_manager +2026-01-06 20:07:51,928 - INFO - Searching metadata for: i became kirarachans manager +2026-01-06 20:07:52,165 - INFO - Searching MangaUpdates for: i became kirarachans manager +2026-01-06 20:07:52,462 - INFO - Updating metadata for: i_am_to_record_a_video_with_two_sadistic_women +2026-01-06 20:07:52,462 - INFO - Searching metadata for: i am to record a video with two sadistic women +2026-01-06 20:07:52,845 - INFO - Fetching metadata from: https://nhentai.net/g/551074/ +2026-01-06 20:07:53,100 - INFO - Updating metadata for: kusabi +2026-01-06 20:07:53,101 - INFO - Searching metadata for: kusabi +2026-01-06 20:07:53,285 - INFO - Fetching metadata from: https://nhentai.net/g/577169/ +2026-01-06 20:07:53,545 - INFO - Updating metadata for: [OVing (Obui)] Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-06 20:07:53,545 - INFO - Searching metadata for: OVing (Obui) Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-06 20:07:53,769 - INFO - Fetching metadata from: https://nhentai.net/g/556035/ +2026-01-06 20:07:54,014 - INFO - Updating metadata for: the_imprisoned_flower +2026-01-06 20:07:54,015 - INFO - Searching metadata for: the imprisoned flower +2026-01-06 20:07:54,200 - INFO - Fetching metadata from: https://nhentai.net/g/567049/ +2026-01-06 20:07:54,490 - INFO - Updating metadata for: semi_pro_racing_stars +2026-01-06 20:07:54,490 - INFO - Searching metadata for: semi pro racing stars +2026-01-06 20:07:54,713 - INFO - Fetching metadata from: https://nhentai.net/g/380272/ +2026-01-06 20:07:54,893 - INFO - Updating metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-06 20:07:54,893 - INFO - Searching metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-06 20:07:55,232 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-06 20:07:55,521 - INFO - Updating metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-06 20:07:55,522 - INFO - Searching metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-06 20:07:55,810 - INFO - Fetching metadata from: https://nhentai.net/g/583039/ +2026-01-06 20:07:56,020 - INFO - Updating metadata for: [Nyuu Koubou Koromotake] Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-06 20:07:56,021 - INFO - Searching metadata for: Nyuu Koubou Koromotake Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-06 20:07:56,299 - INFO - Fetching metadata from: https://nhentai.net/g/603798/ +2026-01-06 20:07:56,489 - INFO - Updating metadata for: crossdressing_hero_and_dancer_priestess_chapter +2026-01-06 20:07:56,489 - INFO - Searching metadata for: crossdressing hero and dancer priestess chapter +2026-01-06 20:07:56,651 - INFO - Searching MangaUpdates for: crossdressing hero and dancer priestess chapter +2026-01-06 20:07:56,978 - INFO - Updating metadata for: tsugumonotachi_hachi_hen +2026-01-06 20:07:56,979 - INFO - Searching metadata for: tsugumonotachi hachi hen +2026-01-06 20:07:57,117 - INFO - Searching MangaUpdates for: tsugumonotachi hachi hen +2026-01-06 20:07:57,445 - INFO - Updating metadata for: leave_it_all_to_me_little_brother +2026-01-06 20:07:57,445 - INFO - Searching metadata for: leave it all to me little brother +2026-01-06 20:07:57,759 - INFO - Fetching metadata from: https://nhentai.net/g/548496/ +2026-01-06 20:07:57,984 - INFO - Updating metadata for: imouto_to_rekawatta_oniichan_wa_chapter +2026-01-06 20:07:57,984 - INFO - Searching metadata for: imouto to rekawatta oniichan wa chapter +2026-01-06 20:07:58,214 - INFO - Searching MangaUpdates for: imouto to rekawatta oniichan wa chapter +2026-01-06 20:07:58,574 - INFO - Updating metadata for: the_demon_lords_bride +2026-01-06 20:07:58,574 - INFO - Searching metadata for: the demon lords bride +2026-01-06 20:07:58,783 - INFO - Searching MangaUpdates for: the demon lords bride +2026-01-06 20:07:59,027 - INFO - Updating metadata for: [satsukiimonet (Satsuki Imonet)] HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-06 20:07:59,027 - INFO - Searching metadata for: satsukiimonet (Satsuki Imonet) HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-06 20:07:59,263 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-06 20:07:59,506 - INFO - Updating metadata for: special_tit_envoy +2026-01-06 20:07:59,506 - INFO - Searching metadata for: special tit envoy +2026-01-06 20:07:59,713 - INFO - Fetching metadata from: https://nhentai.net/g/354686/ +2026-01-06 20:07:59,957 - INFO - Updating metadata for: hot_spring_sex_with_mama_raikou +2026-01-06 20:07:59,957 - INFO - Searching metadata for: hot spring sex with mama raikou +2026-01-06 20:08:00,144 - INFO - Fetching metadata from: https://nhentai.net/g/329703/ +2026-01-06 20:08:00,394 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Succubus Shoukan [English][Fan trad] +2026-01-06 20:08:00,394 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Succubus Shoukan [English][Fan trad] +2026-01-06 20:08:00,616 - INFO - Searching metadata for: Succubus Shoukan [English][Fan trad] +2026-01-06 20:08:00,797 - INFO - Searching MangaUpdates for: Succubus Shoukan [English][Fan trad] +2026-01-06 20:08:01,030 - INFO - Updating metadata for: nanjamo_no_botebaraive_nanjamo_vs_metamonjamo +2026-01-06 20:08:01,030 - INFO - Searching metadata for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-06 20:08:01,256 - INFO - Searching MangaUpdates for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-06 20:08:01,576 - INFO - Updating metadata for: akos_and_nozomis_discussion_of_masturbation_addictions +2026-01-06 20:08:01,576 - INFO - Searching metadata for: akos and nozomis discussion of masturbation addictions +2026-01-06 20:08:01,823 - INFO - Searching MangaUpdates for: akos and nozomis discussion of masturbation addictions +2026-01-06 20:08:02,136 - INFO - Updating metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-06 20:08:02,136 - INFO - Searching metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-06 20:08:02,448 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-06 20:08:02,679 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-06 20:08:02,679 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-06 20:08:03,082 - INFO - Searching metadata for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-06 20:08:03,519 - INFO - Searching MangaUpdates for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-06 20:08:04,151 - INFO - Updating metadata for: my_cool_friend +2026-01-06 20:08:04,152 - INFO - Searching metadata for: my cool friend +2026-01-06 20:08:04,405 - INFO - Fetching metadata from: https://nhentai.net/g/588146/ +2026-01-06 20:08:04,644 - INFO - Updating metadata for: non_stop_fucking_with_my_friends_mom +2026-01-06 20:08:04,644 - INFO - Searching metadata for: non stop fucking with my friends mom +2026-01-06 20:08:04,870 - INFO - Searching MangaUpdates for: non stop fucking with my friends mom +2026-01-06 20:08:05,321 - INFO - Updating metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-06 20:08:05,321 - INFO - Searching metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-06 20:08:05,587 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-06 20:08:05,815 - INFO - Updating metadata for: I will make a single mother my wife +2026-01-06 20:08:05,815 - INFO - Searching metadata for: I will make a single mother my wife +2026-01-06 20:08:06,141 - INFO - Fetching metadata from: https://nhentai.net/g/595981/ +2026-01-06 20:08:06,346 - INFO - Updating metadata for: barenai_you_ni +2026-01-06 20:08:06,347 - INFO - Searching metadata for: barenai you ni +2026-01-06 20:08:06,602 - INFO - Fetching metadata from: https://nhentai.net/g/591233/ +2026-01-06 20:08:06,849 - INFO - Updating metadata for: adolescent_calculation +2026-01-06 20:08:06,850 - INFO - Searching metadata for: adolescent calculation +2026-01-06 20:08:07,068 - INFO - Fetching metadata from: https://nhentai.net/g/183099/ +2026-01-06 20:08:07,319 - INFO - Updating metadata for: moto_incha_no_kyonyuu_yariman_imouto_ga_erosugite_oniichan_wa_mou +2026-01-06 20:08:07,320 - INFO - Searching metadata for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-06 20:08:07,730 - INFO - Searching MangaUpdates for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-06 20:08:08,225 - INFO - Updating metadata for: karinsans_hidden_side_and_her_naughty_videos_chapter +2026-01-06 20:08:08,225 - INFO - Searching metadata for: karinsans hidden side and her naughty videos chapter +2026-01-06 20:08:08,416 - INFO - Searching MangaUpdates for: karinsans hidden side and her naughty videos chapter +2026-01-06 20:39:39,489 - INFO - Moved Koyoi,_Gishiki_de_Hatemashou_(2019) to isolation:/comics/manga/Koyoi,_Gishiki_de_Hatemashou_(2019) +2026-01-06 20:39:39,498 - INFO - Moved jukujo_sentai_paiters_chapter to isolation:/comics/manga/jukujo_sentai_paiters_chapter +2026-01-06 20:39:39,510 - INFO - Moved haunted_property_chapter to isolation:/comics/manga/haunted_property_chapter +2026-01-06 20:39:39,796 - INFO - Moved Stigmatized_Property_(2019) to isolation:/comics/manga/Stigmatized_Property_(2019) +2026-01-06 20:39:39,945 - INFO - Moved Sensei_wa_Ore_no_Dorei_Danshikou_wa_Midara_na_Kangoku_(2014) to isolation:/comics/manga/Sensei_wa_Ore_no_Dorei_Danshikou_wa_Midara_na_Kangoku_(2014) +2026-01-06 20:39:39,959 - INFO - Moved jitsu_wa_midara_na_chounyuu_sensei_chapter to isolation:/comics/manga/jitsu_wa_midara_na_chounyuu_sensei_chapter +2026-01-06 20:39:40,392 - INFO - Moved Roujin_to_Neko_(2024) to isolation:/comics/manga/Roujin_to_Neko_(2024) +2026-01-06 20:39:40,762 - INFO - Moved Akogare_no_Tomo_Mama_to_Matching_Shita_Kudan_(2024) to isolation:/comics/manga/Akogare_no_Tomo_Mama_to_Matching_Shita_Kudan_(2024) +2026-01-06 20:39:41,141 - INFO - Moved Jujutsu_Kaisen_dj_-_○○○_Shinai_to_Derarenai_Heya_√A_(2021) to isolation:/comics/manga/Jujutsu_Kaisen_dj_-_○○○_Shinai_to_Derarenai_Heya_√A_(2021) +2026-01-06 20:39:41,152 - INFO - Moved imouto_ookiindamon_chapter to isolation:/comics/manga/imouto_ookiindamon_chapter +2026-01-06 20:39:41,171 - INFO - Moved i_matched_with_my_friends_mom_chapter to isolation:/comics/manga/i_matched_with_my_friends_mom_chapter +2026-01-06 20:39:41,186 - INFO - Moved Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku to isolation:/comics/manga/Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-06 20:39:41,202 - INFO - Moved from_now_on_you_are_my_livestock_chapter to isolation:/comics/manga/from_now_on_you_are_my_livestock_chapter +2026-01-06 20:39:41,749 - INFO - Moved Ai_ga_Ippai_Ero_wa_Oppai_(2010) to isolation:/comics/manga/Ai_ga_Ippai_Ero_wa_Oppai_(2010) +2026-01-06 20:39:41,773 - INFO - Moved crossdressing_hero_and_dancer_priestess_chapter to isolation:/comics/manga/crossdressing_hero_and_dancer_priestess_chapter +2026-01-06 20:39:41,798 - INFO - Moved imouto_to_rekawatta_oniichan_wa_chapter to isolation:/comics/manga/imouto_to_rekawatta_oniichan_wa_chapter +2026-01-06 20:39:42,100 - INFO - Moved Furachina_Jukujo_(2021) to isolation:/comics/manga/Furachina_Jukujo_(2021) +2026-01-06 20:39:42,114 - INFO - Moved Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love to isolation:/comics/manga/Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love +2026-01-06 20:39:42,135 - INFO - Moved dirty_lessons_improving_your_manhood_chapter to isolation:/comics/manga/dirty_lessons_improving_your_manhood_chapter +2026-01-06 20:39:42,153 - INFO - Moved mrs_miho_cant_stop_cheating_chapter to isolation:/comics/manga/mrs_miho_cant_stop_cheating_chapter +2026-01-06 20:39:42,172 - INFO - Moved jibakureichan_wa_oppai_ga_yowai_chapter to isolation:/comics/manga/jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-06 20:39:42,197 - INFO - Moved kayanee_and_the_old_man_memories_chapter to isolation:/comics/manga/kayanee_and_the_old_man_memories_chapter +2026-01-06 20:39:43,235 - INFO - Moved Kanojo_ni_Naritai_Kimi_to_Boku_(2018) to isolation:/comics/manga/Kanojo_ni_Naritai_Kimi_to_Boku_(2018) +2026-01-06 20:39:43,526 - INFO - Moved Imouto_wa_minna_Oniichan_ga_Suki!_(2010) to isolation:/comics/manga/Imouto_wa_minna_Oniichan_ga_Suki!_(2010) +2026-01-06 20:39:43,542 - INFO - Moved dream_mama_vs_real_mother_chapter_1b to isolation:/comics/manga/dream_mama_vs_real_mother_chapter_1b +2026-01-06 20:39:44,026 - INFO - Moved Oretachi,_Kore_Kara_(2024) to isolation:/comics/manga/Oretachi,_Kore_Kara_(2024) +2026-01-06 20:39:44,807 - INFO - Moved Hitozuma,_Uwaki,_Danchi_Nite._-37-Sai_Miho-_(2025) to isolation:/comics/manga/Hitozuma,_Uwaki,_Danchi_Nite._-37-Sai_Miho-_(2025) +2026-01-06 20:39:45,041 - INFO - Moved Sex_With_Many_Mamas_(2016) to isolation:/comics/manga/Sex_With_Many_Mamas_(2016) +2026-01-06 20:39:45,054 - INFO - Moved family_plan_toono_suika_chapter to isolation:/comics/manga/family_plan_toono_suika_chapter +2026-01-06 20:39:45,068 - INFO - Moved im_being_sex_educated_by_my_overprotective_mother_chapter to isolation:/comics/manga/im_being_sex_educated_by_my_overprotective_mother_chapter +2026-01-06 20:39:45,308 - INFO - Moved Hoken_Shitsu_no_Aisare_Sensei_(2020) to isolation:/comics/manga/Hoken_Shitsu_no_Aisare_Sensei_(2020) +2026-01-06 20:39:45,315 - INFO - Moved karinsans_hidden_side_and_her_naughty_videos_chapter to isolation:/comics/manga/karinsans_hidden_side_and_her_naughty_videos_chapter +2026-01-06 20:39:45,576 - INFO - Moved Family_Plan_(2024) to isolation:/comics/manga/Family_Plan_(2024) +2026-01-06 20:39:45,766 - INFO - Moved Otouto_Imouto_(2007) to isolation:/comics/manga/Otouto_Imouto_(2007) +2026-01-06 20:39:45,786 - INFO - Moved the_romantic_ritual_with_fox_goddess_yuukosan_chapter to isolation:/comics/manga/the_romantic_ritual_with_fox_goddess_yuukosan_chapter +2026-01-06 20:39:46,080 - INFO - Moved Watashi_no_Kawaii_Mochizuki-kun_(2020) to isolation:/comics/manga/Watashi_no_Kawaii_Mochizuki-kun_(2020) +2026-01-06 20:39:46,090 - INFO - Moved hitozuma_saimin_appli_chapter to isolation:/comics/manga/hitozuma_saimin_appli_chapter +2026-01-06 20:39:46,718 - INFO - Moved Saimin_Appli_(Yuma)_(2024) to isolation:/comics/manga/Saimin_Appli_(Yuma)_(2024) +2026-01-06 20:39:46,876 - INFO - Moved Kumiko_to_Warui_Musuko_(2015) to isolation:/comics/manga/Kumiko_to_Warui_Musuko_(2015) +2026-01-06 20:39:47,416 - INFO - Moved Injoku_no_Kizuna_(2006) to isolation:/comics/manga/Injoku_no_Kizuna_(2006) +2026-01-06 20:39:56,415 - INFO - Starting metadata update in /comics/manga (Force: True)... +2026-01-06 20:39:56,484 - INFO - Updating metadata for: catch_you_at_the_indoor_beach +2026-01-06 20:39:56,485 - INFO - Searching metadata for: catch you at the indoor beach +2026-01-06 20:39:56,909 - INFO - Searching MangaUpdates for: catch you at the indoor beach +2026-01-06 20:39:57,729 - INFO - Updating metadata for: [Omapuu] Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-06 20:39:57,730 - INFO - Searching metadata for: Omapuu Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-06 20:39:57,999 - INFO - Fetching metadata from: https://nhentai.net/g/602806/ +2026-01-06 20:39:58,265 - INFO - Updating metadata for: [Kazuhiro] Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-06 20:39:58,265 - INFO - Searching metadata for: Kazuhiro Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-06 20:39:58,493 - INFO - Fetching metadata from: https://nhentai.net/g/268292/ +2026-01-06 20:39:58,853 - INFO - Updating metadata for: Injoku_no_Kizuna_(2006) +2026-01-06 20:39:58,853 - INFO - Searching metadata for: Injoku no Kizuna +2026-01-06 20:39:59,080 - INFO - Searching MangaUpdates for: Injoku no Kizuna +2026-01-06 20:39:59,342 - INFO - Updating metadata for: [Itaba Hiroshi] Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-06 20:39:59,343 - INFO - Searching metadata for: Itaba Hiroshi Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-06 20:39:59,605 - INFO - Searching metadata for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-06 20:39:59,791 - INFO - Searching MangaUpdates for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-06 20:40:00,300 - INFO - Updating metadata for: shounen_ga_otona_ni_natta_natsu +2026-01-06 20:40:00,301 - INFO - Searching metadata for: shounen ga otona ni natta natsu +2026-01-06 20:40:00,705 - INFO - Fetching metadata from: https://nhentai.net/g/571244/ +2026-01-06 20:40:01,030 - INFO - Updating metadata for: i_have_no_choice_but_to_have_sex_with_my_mother_chapter +2026-01-06 20:40:01,030 - INFO - Searching metadata for: i have no choice but to have sex with my mother chapter +2026-01-06 20:40:01,460 - INFO - Searching MangaUpdates for: i have no choice but to have sex with my mother chapter +2026-01-06 20:40:02,343 - INFO - Updating metadata for: [Airandou] Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-06 20:40:02,343 - INFO - Searching metadata for: Airandou Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-06 20:40:02,694 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-06 20:40:03,008 - INFO - Updating metadata for: on_a_stormy_night +2026-01-06 20:40:03,008 - INFO - Searching metadata for: on a stormy night +2026-01-06 20:40:03,282 - INFO - Fetching metadata from: https://nhentai.net/g/616543/ +2026-01-06 20:40:03,552 - INFO - Updating metadata for: jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-06 20:40:03,552 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter +2026-01-06 20:40:03,770 - INFO - Searching MangaUpdates for: jibakureichan wa oppai ga yowai chapter +2026-01-06 20:40:04,102 - INFO - Updating metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-06 20:40:04,102 - INFO - Searching metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-06 20:40:04,343 - INFO - Searching MangaUpdates for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-06 20:40:04,918 - INFO - Updating metadata for: last_day_of_summer_vacation_sex_sex_sex +2026-01-06 20:40:04,918 - INFO - Searching metadata for: last day of summer vacation sex sex sex +2026-01-06 20:40:05,101 - INFO - Searching MangaUpdates for: last day of summer vacation sex sex sex +2026-01-06 20:40:05,379 - INFO - Updating metadata for: SEX Shinai to Derarenai Heya desu. _ The Room You Can't Leave Until You Have Sex +2026-01-06 20:40:05,380 - INFO - Searching metadata for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-06 20:40:05,782 - INFO - Searching MangaUpdates for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-06 20:40:06,170 - INFO - Updating metadata for: [Utsutsu Minoru] Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-06 20:40:06,170 - INFO - Searching metadata for: Utsutsu Minoru Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-06 20:40:06,427 - INFO - Fetching metadata from: https://nhentai.net/g/268598/ +2026-01-06 20:40:06,662 - INFO - Updating metadata for: [Yue] Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-06 20:40:06,662 - INFO - Searching metadata for: Yue Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-06 20:40:07,053 - INFO - Fetching metadata from: https://nhentai.net/g/571461/ +2026-01-06 20:40:07,286 - INFO - Updating metadata for: mama_nge +2026-01-06 20:40:07,286 - INFO - Searching metadata for: mama nge +2026-01-06 20:40:07,490 - INFO - Fetching metadata from: https://nhentai.net/g/375142/ +2026-01-06 20:40:07,763 - INFO - Updating metadata for: a_story_about_getting_trained_by_my_older_sister +2026-01-06 20:40:07,763 - INFO - Searching metadata for: a story about getting trained by my older sister +2026-01-06 20:40:08,045 - INFO - Fetching metadata from: https://nhentai.net/g/491013/ +2026-01-06 20:40:08,305 - INFO - Updating metadata for: shake_hip +2026-01-06 20:40:08,306 - INFO - Searching metadata for: shake hip +2026-01-06 20:40:08,539 - INFO - Fetching metadata from: https://nhentai.net/g/111922/ +2026-01-06 20:40:08,774 - INFO - Updating metadata for: [Hannya san] Mom son +2026-01-06 20:40:08,774 - INFO - Searching metadata for: Hannya san Mom son +2026-01-06 20:40:09,054 - INFO - Fetching metadata from: https://nhentai.net/g/606383/ +2026-01-06 20:40:09,317 - INFO - Updating metadata for: Frustrated Share House Residents +2026-01-06 20:40:09,318 - INFO - Searching metadata for: Frustrated Share House Residents +2026-01-06 20:40:09,525 - INFO - Fetching metadata from: https://nhentai.net/g/539658/ +2026-01-06 20:40:09,808 - INFO - Updating metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-06 20:40:09,809 - INFO - Searching metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-06 20:40:10,192 - INFO - Fetching metadata from: https://nhentai.net/g/571333/ +2026-01-06 20:40:10,564 - INFO - Updating metadata for: oni_no_kyouiku_mama_ga_musuko_to_amaama_sex_made +2026-01-06 20:40:10,564 - INFO - Searching metadata for: oni no kyouiku mama ga musuko to amaama sex made +2026-01-06 20:40:11,043 - INFO - Fetching metadata from: https://nhentai.net/g/605131/ +2026-01-06 20:40:11,313 - INFO - Updating metadata for: immoral_relationship +2026-01-06 20:40:11,313 - INFO - Searching metadata for: immoral relationship +2026-01-06 20:40:11,534 - INFO - Fetching metadata from: https://nhentai.net/g/578989/ +2026-01-06 20:40:11,764 - INFO - Updating metadata for: quick_return_home +2026-01-06 20:40:11,765 - INFO - Searching metadata for: quick return home +2026-01-06 20:40:11,983 - INFO - Fetching metadata from: https://nhentai.net/g/285865/ +2026-01-06 20:40:12,305 - INFO - Updating metadata for: sister_succubus +2026-01-06 20:40:12,306 - INFO - Searching metadata for: sister succubus +2026-01-06 20:40:12,655 - INFO - Fetching metadata from: https://nhentai.net/g/619320/ +2026-01-06 20:40:13,038 - INFO - Updating metadata for: i_fell_for_a_female_ghost +2026-01-06 20:40:13,038 - INFO - Searching metadata for: i fell for a female ghost +2026-01-06 20:40:13,353 - INFO - Fetching metadata from: https://nhentai.net/g/545216/ +2026-01-06 20:40:13,616 - INFO - Updating metadata for: [Mata Ashita (Oohira Sunset)] Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun_tl] [Digital] +2026-01-06 20:40:13,617 - INFO - Searching metadata for: Mata Ashita (Oohira Sunset) Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-06 20:40:14,043 - INFO - Searching metadata for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-06 20:40:14,547 - INFO - Searching MangaUpdates for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-06 20:40:15,256 - INFO - Updating metadata for: shrine_maidens_of_injin +2026-01-06 20:40:15,257 - INFO - Searching metadata for: shrine maidens of injin +2026-01-06 20:40:15,443 - INFO - Fetching metadata from: https://nhentai.net/g/574337/ +2026-01-06 20:40:15,691 - INFO - Updating metadata for: the_daily_lives_of_an_older_brother_x_four_younger_sister +2026-01-06 20:40:15,692 - INFO - Searching metadata for: the daily lives of an older brother x four younger sister +2026-01-06 20:40:16,000 - INFO - Searching MangaUpdates for: the daily lives of an older brother x four younger sister +2026-01-06 20:40:16,353 - INFO - Updating metadata for: all_eyes_on_me +2026-01-06 20:40:16,353 - INFO - Searching metadata for: all eyes on me +2026-01-06 20:40:16,653 - INFO - Fetching metadata from: https://nhentai.net/g/311059/ +2026-01-06 20:40:16,860 - INFO - Updating metadata for: sister_was_thinking_about_her_younger_brothers_sexual_desire_chapter +2026-01-06 20:40:16,861 - INFO - Searching metadata for: sister was thinking about her younger brothers sexual desire chapter +2026-01-06 20:40:17,100 - INFO - Searching MangaUpdates for: sister was thinking about her younger brothers sexual desire chapter +2026-01-06 20:40:17,598 - INFO - Updating metadata for: two_big_tit_gals_find_a_bored_boy +2026-01-06 20:40:17,599 - INFO - Searching metadata for: two big tit gals find a bored boy +2026-01-06 20:40:17,834 - INFO - Fetching metadata from: https://nhentai.net/g/309103/ +2026-01-06 20:40:18,043 - INFO - Updating metadata for: a_sulky_older_sister_who_wants_to_concentrate_on_her_studies +2026-01-06 20:40:18,043 - INFO - Searching metadata for: a sulky older sister who wants to concentrate on her studies +2026-01-06 20:40:18,340 - INFO - Fetching metadata from: https://nhentai.net/g/530432/ +2026-01-06 20:40:18,569 - INFO - Updating metadata for: asekaki_nee_no_neteiru_aida_ni +2026-01-06 20:40:18,569 - INFO - Searching metadata for: asekaki nee no neteiru aida ni +2026-01-06 20:40:18,787 - INFO - Fetching metadata from: https://nhentai.net/g/589040/ +2026-01-06 20:40:19,036 - INFO - Updating metadata for: siblings_matchup_secret_mating_sex_life +2026-01-06 20:40:19,037 - INFO - Searching metadata for: siblings matchup secret mating sex life +2026-01-06 20:40:19,221 - INFO - Fetching metadata from: https://nhentai.net/g/497386/ +2026-01-06 20:40:19,574 - INFO - Updating metadata for: Siblings having sex in the living room like it's normal +2026-01-06 20:40:19,575 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal +2026-01-06 20:40:19,923 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal +2026-01-06 20:40:20,449 - INFO - Updating metadata for: enveloped_by_a_ghost +2026-01-06 20:40:20,450 - INFO - Searching metadata for: enveloped by a ghost +2026-01-06 20:40:20,677 - INFO - Fetching metadata from: https://nhentai.net/g/543084/ +2026-01-06 20:40:20,898 - INFO - Updating metadata for: papa_is_a_loser +2026-01-06 20:40:20,899 - INFO - Searching metadata for: papa is a loser +2026-01-06 20:40:21,150 - INFO - Fetching metadata from: https://nhentai.net/g/543091/ +2026-01-06 20:40:21,411 - INFO - Updating metadata for: hari_x2_honey +2026-01-06 20:40:21,412 - INFO - Searching metadata for: hari x2 honey +2026-01-06 20:40:21,601 - INFO - Searching MangaUpdates for: hari x2 honey +2026-01-06 20:40:21,888 - INFO - Updating metadata for: first_sperm_loving_succubus_dinner_of_cowgirl_and_creampie_sex +2026-01-06 20:40:21,889 - INFO - Searching metadata for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-06 20:40:22,126 - INFO - Searching MangaUpdates for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-06 20:40:22,495 - INFO - Updating metadata for: i_want_it_nurse_me +2026-01-06 20:40:22,496 - INFO - Searching metadata for: i want it nurse me +2026-01-06 20:40:22,773 - INFO - Fetching metadata from: https://nhentai.net/g/308512/ +2026-01-06 20:40:23,000 - INFO - Updating metadata for: fairy_feature_the_mayors_secret +2026-01-06 20:40:23,001 - INFO - Searching metadata for: fairy feature the mayors secret +2026-01-06 20:40:23,166 - INFO - Searching MangaUpdates for: fairy feature the mayors secret +2026-01-06 20:40:23,514 - INFO - Updating metadata for: starting_today_im +2026-01-06 20:40:23,514 - INFO - Searching metadata for: starting today im +2026-01-06 20:40:23,764 - INFO - Searching MangaUpdates for: starting today im +2026-01-06 20:40:24,068 - INFO - Updating metadata for: naive_little_sister_chapter +2026-01-06 20:40:24,069 - INFO - Searching metadata for: naive little sister chapter +2026-01-06 20:40:24,236 - INFO - Searching MangaUpdates for: naive little sister chapter +2026-01-06 20:40:24,526 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite +2026-01-06 20:40:24,526 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite +2026-01-06 20:40:24,933 - INFO - Fetching metadata from: https://nhentai.net/g/596920/ +2026-01-06 20:40:25,152 - INFO - Updating metadata for: autumn_lovers +2026-01-06 20:40:25,152 - INFO - Searching metadata for: autumn lovers +2026-01-06 20:40:25,353 - INFO - Fetching metadata from: https://nhentai.net/g/320576/ +2026-01-06 20:40:25,573 - INFO - Updating metadata for: training_the_older_sister_momomadoka +2026-01-06 20:40:25,573 - INFO - Searching metadata for: training the older sister momomadoka +2026-01-06 20:40:25,805 - INFO - Fetching metadata from: https://nhentai.net/g/546382/ +2026-01-06 20:40:26,023 - INFO - Updating metadata for: doukyuusei_gal_3_ningumi_to +2026-01-06 20:40:26,024 - INFO - Searching metadata for: doukyuusei gal 3 ningumi to +2026-01-06 20:40:26,254 - INFO - Searching MangaUpdates for: doukyuusei gal 3 ningumi to +2026-01-06 20:40:26,533 - INFO - Updating metadata for: Hitoduma Ane _ Married Sister +2026-01-06 20:40:26,533 - INFO - Searching metadata for: Hitoduma Ane Married Sister +2026-01-06 20:40:26,713 - INFO - Searching MangaUpdates for: Hitoduma Ane Married Sister +2026-01-06 20:40:26,916 - INFO - Updating metadata for: winter_omake_bon +2026-01-06 20:40:26,917 - INFO - Searching metadata for: winter omake bon +2026-01-06 20:40:27,117 - INFO - Fetching metadata from: https://nhentai.net/g/527207/ +2026-01-06 20:40:27,450 - INFO - Updating metadata for: perverted_hypnosis_experiment +2026-01-06 20:40:27,450 - INFO - Searching metadata for: perverted hypnosis experiment +2026-01-06 20:40:27,665 - INFO - Fetching metadata from: https://nhentai.net/g/521144/ +2026-01-06 20:40:27,914 - INFO - Updating metadata for: kyoudai_no_naka +2026-01-06 20:40:27,914 - INFO - Searching metadata for: kyoudai no naka +2026-01-06 20:40:28,227 - INFO - Fetching metadata from: https://nhentai.net/g/618441/ +2026-01-06 20:40:28,493 - INFO - Updating metadata for: sometimes_i_draw_manga +2026-01-06 20:40:28,493 - INFO - Searching metadata for: sometimes i draw manga +2026-01-06 20:40:28,705 - INFO - Fetching metadata from: https://nhentai.net/g/519608/ +2026-01-06 20:40:28,963 - INFO - Updating metadata for: Stigmatized_Property_(2019) +2026-01-06 20:40:28,964 - INFO - Searching metadata for: Stigmatized Property +2026-01-06 20:40:29,135 - INFO - Searching MangaUpdates for: Stigmatized Property +2026-01-06 20:40:29,351 - INFO - Updating metadata for: apron +2026-01-06 20:40:29,351 - INFO - Searching metadata for: apron +2026-01-06 20:40:29,601 - INFO - Fetching metadata from: https://nhentai.net/g/621140/ +2026-01-06 20:40:29,839 - INFO - Updating metadata for: namaiki_na_hahaoya_o_honnin_ni_mo_kizukarezu_ni_minkan_suru_houhou +2026-01-06 20:40:29,839 - INFO - Searching metadata for: namaiki na hahaoya o honnin ni mo kizukarezu ni minkan suru houhou +2026-01-06 20:40:30,264 - INFO - Fetching metadata from: https://nhentai.net/g/298780/ +2026-01-06 20:40:30,501 - INFO - Updating metadata for: haha_ga_saikon_shitara_gikei_ga_chou_kuzu +2026-01-06 20:40:30,502 - INFO - Searching metadata for: haha ga saikon shitara gikei ga chou kuzu +2026-01-06 20:40:30,787 - INFO - Fetching metadata from: https://nhentai.net/g/532104/ +2026-01-06 20:40:31,035 - INFO - Updating metadata for: lets_do_it +2026-01-06 20:40:31,036 - INFO - Searching metadata for: lets do it +2026-01-06 20:40:31,322 - INFO - Fetching metadata from: https://nhentai.net/g/588286/ +2026-01-06 20:40:31,536 - INFO - Updating metadata for: naomi san wa ore no sefri ch 1 +2026-01-06 20:40:31,536 - INFO - Searching metadata for: naomi san wa ore no sefri ch 1 +2026-01-06 20:40:31,964 - INFO - Fetching metadata from: https://nhentai.net/g/601989/ +2026-01-06 20:40:32,224 - INFO - Updating metadata for: namaiki_sanshimai +2026-01-06 20:40:32,224 - INFO - Searching metadata for: namaiki sanshimai +2026-01-06 20:40:32,446 - INFO - Fetching metadata from: https://nhentai.net/g/560751/ +2026-01-06 20:40:32,710 - INFO - Updating metadata for: a_story_about_my_little_sister_giving_me_titjobs +2026-01-06 20:40:32,710 - INFO - Searching metadata for: a story about my little sister giving me titjobs +2026-01-06 20:40:33,052 - INFO - Fetching metadata from: https://nhentai.net/g/524952/ +2026-01-06 20:40:33,257 - INFO - Updating metadata for: fuyu_yui +2026-01-06 20:40:33,257 - INFO - Searching metadata for: fuyu yui +2026-01-06 20:40:33,535 - INFO - Fetching metadata from: https://nhentai.net/g/589928/ +2026-01-06 20:40:33,758 - INFO - Updating metadata for: Imouto_wa_minna_Oniichan_ga_Suki!_(2010) +2026-01-06 20:40:33,759 - INFO - Searching metadata for: Imouto wa minna Oniichan ga Suki! +2026-01-06 20:40:34,032 - INFO - Searching MangaUpdates for: Imouto wa minna Oniichan ga Suki! +2026-01-06 20:40:34,362 - INFO - Updating metadata for: i_matched_with_my_friends_mom_chapter +2026-01-06 20:40:34,362 - INFO - Searching metadata for: i matched with my friends mom chapter +2026-01-06 20:40:34,656 - INFO - Searching MangaUpdates for: i matched with my friends mom chapter +2026-01-06 20:40:34,964 - INFO - Updating metadata for: love_wheel +2026-01-06 20:40:34,965 - INFO - Searching metadata for: love wheel +2026-01-06 20:40:35,185 - INFO - Fetching metadata from: https://nhentai.net/g/599889/ +2026-01-06 20:40:35,381 - INFO - Updating metadata for: [Heart Manju Mania (Akata Izuki)] Cocoro Controller 2 [English] +2026-01-06 20:40:35,382 - INFO - Searching metadata for: Heart Manju Mania (Akata Izuki) Cocoro Controller 2 [English] +2026-01-06 20:40:35,620 - INFO - Fetching metadata from: https://nhentai.net/g/599509/ +2026-01-06 20:40:35,867 - INFO - Updating metadata for: the_sex_life_of_andy_and_leyley +2026-01-06 20:40:35,867 - INFO - Searching metadata for: the sex life of andy and leyley +2026-01-06 20:40:36,146 - INFO - Fetching metadata from: https://nhentai.net/g/570099/ +2026-01-06 20:40:36,417 - INFO - Updating metadata for: mozzarella_the_new_slutty_pussy +2026-01-06 20:40:36,418 - INFO - Searching metadata for: mozzarella the new slutty pussy +2026-01-06 20:40:36,617 - INFO - Searching MangaUpdates for: mozzarella the new slutty pussy +2026-01-06 20:40:36,856 - INFO - Updating metadata for: [ABBB] How to make a family using hypnosis app [English] [Decensored] +2026-01-06 20:40:36,857 - INFO - Searching metadata for: ABBB How to make a family using hypnosis app [English] [Decensored] +2026-01-06 20:40:37,145 - INFO - Fetching metadata from: https://nhentai.net/g/431170/ +2026-01-06 20:40:37,411 - INFO - Updating metadata for: wife_pickle +2026-01-06 20:40:37,411 - INFO - Searching metadata for: wife pickle +2026-01-06 20:40:37,591 - INFO - Fetching metadata from: https://nhentai.net/g/592704/ +2026-01-06 20:40:37,864 - INFO - Updating metadata for: [MN] My Big Breast Sister +2026-01-06 20:40:37,864 - INFO - Searching metadata for: MN My Big Breast Sister +2026-01-06 20:40:38,076 - INFO - Fetching metadata from: https://nhentai.net/g/609562/ +2026-01-06 20:40:38,313 - INFO - Updating metadata for: you_must_breed_your_sisters_to_leave_this_village +2026-01-06 20:40:38,313 - INFO - Searching metadata for: you must breed your sisters to leave this village +2026-01-06 20:40:38,625 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-06 20:40:38,851 - INFO - Updating metadata for: mother_and_son_and_father_and_daughter_tonight_is_incest_night +2026-01-06 20:40:38,851 - INFO - Searching metadata for: mother and son and father and daughter tonight is incest night +2026-01-06 20:40:39,126 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-06 20:40:39,350 - INFO - Updating metadata for: [Takashima] FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-06 20:40:39,351 - INFO - Searching metadata for: Takashima FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-06 20:40:39,650 - INFO - Fetching metadata from: https://nhentai.net/g/515808/ +2026-01-06 20:40:39,857 - INFO - Updating metadata for: teasing_big_sis +2026-01-06 20:40:39,858 - INFO - Searching metadata for: teasing big sis +2026-01-06 20:40:40,086 - INFO - Fetching metadata from: https://nhentai.net/g/591734/ +2026-01-06 20:40:40,364 - INFO - Updating metadata for: forward +2026-01-06 20:40:40,365 - INFO - Searching metadata for: forward +2026-01-06 20:40:40,582 - INFO - Fetching metadata from: https://nhentai.net/g/583038/ +2026-01-06 20:40:40,828 - INFO - Updating metadata for: my_sister_doesnt_laugh +2026-01-06 20:40:40,829 - INFO - Searching metadata for: my sister doesnt laugh +2026-01-06 20:40:41,026 - INFO - Searching MangaUpdates for: my sister doesnt laugh +2026-01-06 20:40:41,390 - INFO - Updating metadata for: big_sis_wants_to_convince_her_lil_bro +2026-01-06 20:40:41,390 - INFO - Searching metadata for: big sis wants to convince her lil bro +2026-01-06 20:40:41,646 - INFO - Fetching metadata from: https://nhentai.net/g/310401/ +2026-01-06 20:40:41,857 - INFO - Updating metadata for: misato_x_shinji_baby_making +2026-01-06 20:40:41,857 - INFO - Searching metadata for: misato x shinji baby making +2026-01-06 20:40:42,073 - INFO - Searching MangaUpdates for: misato x shinji baby making +2026-01-06 20:40:42,437 - INFO - Updating metadata for: my_wife_left_me_because_i_was +2026-01-06 20:40:42,437 - INFO - Searching metadata for: my wife left me because i was +2026-01-06 20:40:42,741 - INFO - Fetching metadata from: https://nhentai.net/g/593456/ +2026-01-06 20:40:43,059 - INFO - Updating metadata for: human_manipulating_remote_control +2026-01-06 20:40:43,059 - INFO - Searching metadata for: human manipulating remote control +2026-01-06 20:40:43,261 - INFO - Fetching metadata from: https://nhentai.net/g/598745/ +2026-01-06 20:40:43,506 - INFO - Updating metadata for: bitch_na_inanesama +2026-01-06 20:40:43,506 - INFO - Searching metadata for: bitch na inanesama +2026-01-06 20:40:43,745 - INFO - Searching MangaUpdates for: bitch na inanesama +2026-01-06 20:40:43,936 - INFO - Updating metadata for: family_mischief_lewd +2026-01-06 20:40:43,937 - INFO - Searching metadata for: family mischief lewd +2026-01-06 20:40:44,112 - INFO - Fetching metadata from: https://nhentai.net/g/427171/ +2026-01-06 20:40:44,350 - INFO - Updating metadata for: [Poriuretan] Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-06 20:40:44,351 - INFO - Searching metadata for: Poriuretan Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-06 20:40:44,615 - INFO - Fetching metadata from: https://nhentai.net/g/588809/ +2026-01-06 20:40:44,849 - INFO - Updating metadata for: my_daily_life_taking_care_of_sexual_urges_with_my_naughty_sister +2026-01-06 20:40:44,849 - INFO - Searching metadata for: my daily life taking care of sexual urges with my naughty sister +2026-01-06 20:40:45,049 - INFO - Searching MangaUpdates for: my daily life taking care of sexual urges with my naughty sister +2026-01-06 20:40:45,430 - INFO - Updating metadata for: a_history_of_no_boyfriends_equal_me_at_my_age +2026-01-06 20:40:45,431 - INFO - Searching metadata for: a history of no boyfriends equal me at my age +2026-01-06 20:40:45,862 - INFO - Searching MangaUpdates for: a history of no boyfriends equal me at my age +2026-01-06 20:40:46,345 - INFO - Updating metadata for: one_familys_plan_to_save_electricty +2026-01-06 20:40:46,345 - INFO - Searching metadata for: one familys plan to save electricty +2026-01-06 20:40:46,551 - INFO - Searching MangaUpdates for: one familys plan to save electricty +2026-01-06 20:40:46,890 - INFO - Updating metadata for: what_we_have_is_strictly_business +2026-01-06 20:40:46,890 - INFO - Searching metadata for: what we have is strictly business +2026-01-06 20:40:47,166 - INFO - Fetching metadata from: https://nhentai.net/g/596884/ +2026-01-06 20:40:47,455 - INFO - Updating metadata for: [Juna Juna Juice] Pokemon Series (Pokemon) [English] +2026-01-06 20:40:47,455 - INFO - Searching metadata for: Juna Juna Juice Pokemon Series (Pokemon) [English] +2026-01-06 20:40:47,633 - INFO - Fetching metadata from: https://nhentai.net/g/595886/ +2026-01-06 20:40:47,848 - INFO - Updating metadata for: bitch_dirty_sister +2026-01-06 20:40:47,848 - INFO - Searching metadata for: bitch dirty sister +2026-01-06 20:40:48,057 - INFO - Fetching metadata from: https://nhentai.net/g/317791/ +2026-01-06 20:40:48,290 - INFO - Updating metadata for: kayanee_and_the_old_man_memories_chapter +2026-01-06 20:40:48,291 - INFO - Searching metadata for: kayanee and the old man memories chapter +2026-01-06 20:40:48,451 - INFO - Searching MangaUpdates for: kayanee and the old man memories chapter +2026-01-06 20:40:48,820 - INFO - Updating metadata for: momojiri_ocean +2026-01-06 20:40:48,820 - INFO - Searching metadata for: momojiri ocean +2026-01-06 20:40:48,989 - INFO - Fetching metadata from: https://nhentai.net/g/164037/ +2026-01-06 20:40:49,221 - INFO - Updating metadata for: daily_life_with_my_sexy_stepmom +2026-01-06 20:40:49,222 - INFO - Searching metadata for: daily life with my sexy stepmom +2026-01-06 20:40:49,459 - INFO - Fetching metadata from: https://nhentai.net/g/519708/ +2026-01-06 20:40:49,674 - INFO - Updating metadata for: older_stepsister_teaches_her_cheeky_little_stepbrother +2026-01-06 20:40:49,674 - INFO - Searching metadata for: older stepsister teaches her cheeky little stepbrother +2026-01-06 20:40:49,885 - INFO - Searching MangaUpdates for: older stepsister teaches her cheeky little stepbrother +2026-01-06 20:40:50,165 - INFO - Updating metadata for: falling_in_love_at_the_brothel.5 +2026-01-06 20:40:50,165 - INFO - Searching metadata for: falling in love at the brothel.5 +2026-01-06 20:40:50,467 - INFO - Fetching metadata from: https://nhentai.net/g/574610/ +2026-01-06 20:40:50,750 - INFO - Updating metadata for: okaasan_to_naisho +2026-01-06 20:40:50,750 - INFO - Searching metadata for: okaasan to naisho +2026-01-06 20:40:50,991 - INFO - Fetching metadata from: https://nhentai.net/g/59216/ +2026-01-06 20:40:51,266 - INFO - Updating metadata for: punishment_for_the_feral_hound_in_heat +2026-01-06 20:40:51,266 - INFO - Searching metadata for: punishment for the feral hound in heat +2026-01-06 20:40:51,544 - INFO - Fetching metadata from: https://nhentai.net/g/528611/ +2026-01-06 20:40:51,822 - INFO - Updating metadata for: my_little_sister_has_a_big_body_and_a_big_heart +2026-01-06 20:40:51,822 - INFO - Searching metadata for: my little sister has a big body and a big heart +2026-01-06 20:40:52,183 - INFO - Fetching metadata from: https://nhentai.net/g/548775/ +2026-01-06 20:40:52,434 - INFO - Updating metadata for: [Emori Uki] Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-06 20:40:52,434 - INFO - Searching metadata for: Emori Uki Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-06 20:40:52,924 - INFO - Searching metadata for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-06 20:40:53,338 - INFO - Searching MangaUpdates for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-06 20:40:54,073 - INFO - Updating metadata for: [Kazuhiro] Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-06 20:40:54,073 - INFO - Searching metadata for: Kazuhiro Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-06 20:40:54,404 - INFO - Fetching metadata from: https://nhentai.net/g/340438/ +2026-01-06 20:40:54,633 - INFO - Updating metadata for: [Fence14] Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-06 20:40:54,633 - INFO - Searching metadata for: Fence14 Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-06 20:40:54,991 - INFO - Fetching metadata from: https://nhentai.net/g/595742/ +2026-01-06 20:40:55,279 - INFO - Updating metadata for: sakusei_shuki_shuki_sisters +2026-01-06 20:40:55,279 - INFO - Searching metadata for: sakusei shuki shuki sisters +2026-01-06 20:40:55,464 - INFO - Fetching metadata from: https://nhentai.net/g/555633/ +2026-01-06 20:40:55,810 - INFO - Updating metadata for: dosukebe_saimin_revenge +2026-01-06 20:40:55,810 - INFO - Searching metadata for: dosukebe saimin revenge +2026-01-06 20:40:56,034 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-06 20:40:56,400 - INFO - Updating metadata for: A Son's Choice +2026-01-06 20:40:56,401 - INFO - Searching metadata for: A Son's Choice +2026-01-06 20:40:56,704 - INFO - Searching MangaUpdates for: A Son's Choice +2026-01-06 20:40:56,942 - INFO - Updating metadata for: [Kawamori Mizaki] Mainichi uwakidzuma {English] +2026-01-06 20:40:56,946 - INFO - Searching metadata for: Kawamori Mizaki Mainichi uwakidzuma {English] +2026-01-06 20:40:57,153 - INFO - Fetching metadata from: https://nhentai.net/g/604700/ +2026-01-06 20:40:57,351 - INFO - Updating metadata for: skin_tight_sticky_intercourse +2026-01-06 20:40:57,352 - INFO - Searching metadata for: skin tight sticky intercourse +2026-01-06 20:40:57,562 - INFO - Fetching metadata from: https://nhentai.net/g/598517/ +2026-01-06 20:40:57,933 - INFO - Updating metadata for: [Tokyo Ereki Studio (Azuma Ryo)] JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-06 20:40:57,933 - INFO - Searching metadata for: Tokyo Ereki Studio (Azuma Ryo) JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-06 20:40:58,308 - INFO - Fetching metadata from: https://nhentai.net/g/618553/ +2026-01-06 20:40:58,599 - INFO - Updating metadata for: Ai_ga_Ippai_Ero_wa_Oppai_(2010) +2026-01-06 20:40:58,600 - INFO - Searching metadata for: Ai ga Ippai Ero wa Oppai +2026-01-06 20:40:59,049 - INFO - Fetching metadata from: https://nhentai.net/g/215924/ +2026-01-06 20:40:59,400 - INFO - Updating metadata for: supplementary_sex_education +2026-01-06 20:40:59,401 - INFO - Searching metadata for: supplementary sex education +2026-01-06 20:40:59,573 - INFO - Searching MangaUpdates for: supplementary sex education +2026-01-06 20:40:59,821 - INFO - Updating metadata for: taimanin_shinobu_series +2026-01-06 20:40:59,822 - INFO - Searching metadata for: taimanin shinobu series +2026-01-06 20:41:00,019 - INFO - Searching MangaUpdates for: taimanin shinobu series +2026-01-06 20:41:00,255 - INFO - Updating metadata for: [Sakai Hamachi] Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-06 20:41:00,256 - INFO - Searching metadata for: Sakai Hamachi Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-06 20:41:00,528 - INFO - Fetching metadata from: https://nhentai.net/g/602876/ +2026-01-06 20:41:00,764 - INFO - Updating metadata for: a_molester_took_everything_from_me_chapter_ +2026-01-06 20:41:00,764 - INFO - Searching metadata for: a molester took everything from me chapter +2026-01-06 20:41:01,040 - INFO - Searching MangaUpdates for: a molester took everything from me chapter +2026-01-06 20:41:01,470 - INFO - Updating metadata for: Hoken_Shitsu_no_Aisare_Sensei_(2020) +2026-01-06 20:41:01,470 - INFO - Searching metadata for: Hoken Shitsu no Aisare Sensei +2026-01-06 20:41:01,698 - INFO - Searching MangaUpdates for: Hoken Shitsu no Aisare Sensei +2026-01-06 20:41:02,096 - INFO - Updating metadata for: a_loner_makes_the_right_choices_and_goes_out_with_a_seiso_girl_of_course_theres_sex_as_well +2026-01-06 20:41:02,096 - INFO - Searching metadata for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-06 20:41:02,464 - INFO - Searching MangaUpdates for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-06 20:41:03,408 - INFO - Updating metadata for: maho_shojo_ointo_seba_mazu_haha_o_iyo +2026-01-06 20:41:03,409 - INFO - Searching metadata for: maho shojo ointo seba mazu haha o iyo +2026-01-06 20:41:03,676 - INFO - Fetching metadata from: https://nhentai.net/g/587203/ +2026-01-06 20:41:03,918 - INFO - Updating metadata for: paiotsu_kaede_live +2026-01-06 20:41:03,919 - INFO - Searching metadata for: paiotsu kaede live +2026-01-06 20:41:04,085 - INFO - Searching MangaUpdates for: paiotsu kaede live +2026-01-06 20:41:04,357 - INFO - Updating metadata for: otakuhime_and_the_lovey_dovey_bath +2026-01-06 20:41:04,358 - INFO - Searching metadata for: otakuhime and the lovey dovey bath +2026-01-06 20:41:04,678 - INFO - Fetching metadata from: https://nhentai.net/g/317091/ +2026-01-06 20:41:04,900 - INFO - Updating metadata for: airandou +2026-01-06 20:41:04,900 - INFO - Searching metadata for: airandou +2026-01-06 20:41:05,139 - INFO - Fetching metadata from: https://nhentai.net/g/620480/ +2026-01-06 20:41:05,408 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 20:41:05,408 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 20:41:05,651 - INFO - Fetching metadata from: https://nhentai.net/g/560447/ +2026-01-06 20:41:05,865 - INFO - Updating metadata for: virginity_prohibition_act_mandatory_baby_making +2026-01-06 20:41:05,865 - INFO - Searching metadata for: virginity prohibition act mandatory baby making +2026-01-06 20:41:06,038 - INFO - Searching MangaUpdates for: virginity prohibition act mandatory baby making +2026-01-06 20:41:06,697 - INFO - Updating metadata for: [Juna Juna Juice] Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-06 20:41:06,697 - INFO - Searching metadata for: Juna Juna Juice Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-06 20:41:07,058 - INFO - Fetching metadata from: https://nhentai.net/g/473301/ +2026-01-06 20:41:07,336 - INFO - Updating metadata for: the_lazy_and_naughty_achan_is_inviting_me +2026-01-06 20:41:07,336 - INFO - Searching metadata for: the lazy and naughty achan is inviting me +2026-01-06 20:41:07,631 - INFO - Searching MangaUpdates for: the lazy and naughty achan is inviting me +2026-01-06 20:41:08,108 - INFO - Updating metadata for: Watashi_no_Kawaii_Mochizuki-kun_(2020) +2026-01-06 20:41:08,110 - INFO - Searching metadata for: Watashi no Kawaii Mochizuki-kun +2026-01-06 20:41:08,351 - INFO - Searching MangaUpdates for: Watashi no Kawaii Mochizuki-kun +2026-01-06 20:41:08,722 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-06 20:41:08,723 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-06 20:41:09,041 - INFO - Fetching metadata from: https://nhentai.net/g/342844/ +2026-01-06 20:41:09,430 - INFO - Updating metadata for: [Nedoko de Nidone (Nashio )] Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-06 20:41:09,430 - INFO - Searching metadata for: Nedoko de Nidone (Nashio ) Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-06 20:41:09,656 - INFO - Fetching metadata from: https://nhentai.net/g/584286/ +2026-01-06 20:41:09,921 - INFO - Updating metadata for: from_nipple_bumps_to_erotic_play_with_my_sister +2026-01-06 20:41:09,921 - INFO - Searching metadata for: from nipple bumps to erotic play with my sister +2026-01-06 20:41:10,169 - INFO - Fetching metadata from: https://nhentai.net/g/587709/ +2026-01-06 20:41:10,418 - INFO - Updating metadata for: heart_mark_oome +2026-01-06 20:41:10,418 - INFO - Searching metadata for: heart mark oome +2026-01-06 20:41:10,603 - INFO - Fetching metadata from: https://nhentai.net/g/585795/ +2026-01-06 20:41:10,907 - INFO - Updating metadata for: [Airandou] Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-06 20:41:10,908 - INFO - Searching metadata for: Airandou Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-06 20:41:11,152 - INFO - Searching metadata for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-06 20:41:11,359 - INFO - Searching MangaUpdates for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-06 20:41:11,898 - INFO - Updating metadata for: everyday_conversations_with_my_big_sister +2026-01-06 20:41:11,899 - INFO - Searching metadata for: everyday conversations with my big sister +2026-01-06 20:41:12,063 - INFO - Searching MangaUpdates for: everyday conversations with my big sister +2026-01-06 20:41:12,413 - INFO - Updating metadata for: [R Koubou (Ruzi)] Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-06 20:41:12,414 - INFO - Searching metadata for: R Koubou (Ruzi) Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-06 20:41:12,762 - INFO - Searching metadata for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-06 20:41:13,046 - INFO - Searching MangaUpdates for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-06 20:41:13,528 - INFO - Updating metadata for: aneoto +2026-01-06 20:41:13,529 - INFO - Searching metadata for: aneoto +2026-01-06 20:41:13,755 - INFO - Fetching metadata from: https://nhentai.net/g/578213/ +2026-01-06 20:41:13,972 - INFO - Updating metadata for: the_making_of_a_cultt_leader +2026-01-06 20:41:13,972 - INFO - Searching metadata for: the making of a cultt leader +2026-01-06 20:41:14,220 - INFO - Searching MangaUpdates for: the making of a cultt leader +2026-01-06 20:41:14,554 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-06 20:41:14,555 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-06 20:41:15,000 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-06 20:41:15,343 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-06 20:41:16,185 - INFO - Updating metadata for: watashi_de_sukkiri_saasechaina_hatsukoi_aite_ni_tsurareru_ore +2026-01-06 20:41:16,186 - INFO - Searching metadata for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-06 20:41:16,407 - INFO - Searching MangaUpdates for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-06 20:41:16,768 - INFO - Updating metadata for: perverted_body_tight_mama_monster +2026-01-06 20:41:16,768 - INFO - Searching metadata for: perverted body tight mama monster +2026-01-06 20:41:16,965 - INFO - Fetching metadata from: https://nhentai.net/g/544653/ +2026-01-06 20:41:17,232 - INFO - Updating metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-06 20:41:17,232 - INFO - Searching metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-06 20:41:17,485 - INFO - Fetching metadata from: https://nhentai.net/g/496743/ +2026-01-06 20:41:17,723 - INFO - Updating metadata for: gishi_ni_shiborareru_hanashi +2026-01-06 20:41:17,723 - INFO - Searching metadata for: gishi ni shiborareru hanashi +2026-01-06 20:41:17,963 - INFO - Fetching metadata from: https://nhentai.net/g/588299/ +2026-01-06 20:41:18,189 - INFO - Updating metadata for: [Nishikawa Kou] Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-06 20:41:18,189 - INFO - Searching metadata for: Nishikawa Kou Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-06 20:41:18,487 - INFO - Searching metadata for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-06 20:41:18,794 - INFO - Searching MangaUpdates for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-06 20:41:19,369 - INFO - Updating metadata for: call_me_a_slut +2026-01-06 20:41:19,369 - INFO - Searching metadata for: call me a slut +2026-01-06 20:41:19,690 - INFO - Fetching metadata from: https://nhentai.net/g/532748/ +2026-01-06 20:41:19,884 - INFO - Updating metadata for: rental_mama_rental_mom +2026-01-06 20:41:19,884 - INFO - Searching metadata for: rental mama rental mom +2026-01-06 20:41:20,125 - INFO - Fetching metadata from: https://nhentai.net/g/593813/ +2026-01-06 20:41:20,372 - INFO - Updating metadata for: oshi_to_ecchina_koto_nante_muri_muri_muri +2026-01-06 20:41:20,372 - INFO - Searching metadata for: oshi to ecchina koto nante muri muri muri +2026-01-06 20:41:20,632 - INFO - Searching MangaUpdates for: oshi to ecchina koto nante muri muri muri +2026-01-06 20:41:21,174 - INFO - Updating metadata for: Kateinai Henai +2026-01-06 20:41:21,175 - INFO - Searching metadata for: Kateinai Henai +2026-01-06 20:41:21,381 - INFO - Fetching metadata from: https://nhentai.net/g/603393/ +2026-01-06 20:41:21,662 - INFO - Updating metadata for: devi_navi +2026-01-06 20:41:21,662 - INFO - Searching metadata for: devi navi +2026-01-06 20:41:21,869 - INFO - Fetching metadata from: https://nhentai.net/g/596339/ +2026-01-06 20:41:22,186 - INFO - Updating metadata for: [Chiguchi Miri] Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-06 20:41:22,186 - INFO - Searching metadata for: Chiguchi Miri Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-06 20:41:22,501 - INFO - Searching metadata for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-06 20:41:22,881 - INFO - Searching MangaUpdates for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-06 20:41:23,394 - INFO - Updating metadata for: [Muufa] One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-06 20:41:23,394 - INFO - Searching metadata for: Muufa One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-06 20:41:23,633 - INFO - Searching metadata for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-06 20:41:23,846 - INFO - Searching MangaUpdates for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-06 20:41:24,345 - INFO - Updating metadata for: leave_me_alone +2026-01-06 20:41:24,346 - INFO - Searching metadata for: leave me alone +2026-01-06 20:41:24,587 - INFO - Fetching metadata from: https://nhentai.net/g/557684/ +2026-01-06 20:41:24,814 - INFO - Updating metadata for: the_day_the_youngest_son_lost_his_virginity_thanks_to_his_mother_in_a_swimsuit +2026-01-06 20:41:24,815 - INFO - Searching metadata for: the day the youngest son lost his virginity thanks to his mother in a swimsuit +2026-01-06 20:41:25,213 - INFO - Fetching metadata from: https://nhentai.net/g/550368/ +2026-01-06 20:41:25,464 - INFO - Updating metadata for: misaesan_no_shiri_ass +2026-01-06 20:41:25,464 - INFO - Searching metadata for: misaesan no shiri ass +2026-01-06 20:41:25,660 - INFO - Searching MangaUpdates for: misaesan no shiri ass +2026-01-06 20:41:25,932 - INFO - Updating metadata for: and_then_i_will_be_a_mom +2026-01-06 20:41:25,932 - INFO - Searching metadata for: and then i will be a mom +2026-01-06 20:41:26,324 - INFO - Searching MangaUpdates for: and then i will be a mom +2026-01-06 20:41:26,672 - INFO - Updating metadata for: a_molester_took_everything_from_me +2026-01-06 20:41:26,673 - INFO - Searching metadata for: a molester took everything from me +2026-01-06 20:41:26,972 - INFO - Fetching metadata from: https://nhentai.net/g/602000/ +2026-01-06 20:41:27,267 - INFO - Updating metadata for: will_you_help_me +2026-01-06 20:41:27,267 - INFO - Searching metadata for: will you help me +2026-01-06 20:41:27,545 - INFO - Fetching metadata from: https://nhentai.net/g/277925/ +2026-01-06 20:41:27,830 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-06 20:41:27,830 - INFO - Searching metadata for: Manbou Shoten Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-06 20:41:28,112 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-06 20:41:28,370 - INFO - Updating metadata for: katamichi_catchball +2026-01-06 20:41:28,370 - INFO - Searching metadata for: katamichi catchball +2026-01-06 20:41:28,573 - INFO - Fetching metadata from: https://nhentai.net/g/528903/ +2026-01-06 20:41:28,819 - INFO - Updating metadata for: bareback_sex_life_with_da_vinci +2026-01-06 20:41:28,820 - INFO - Searching metadata for: bareback sex life with da vinci +2026-01-06 20:41:29,067 - INFO - Fetching metadata from: https://nhentai.net/g/250741/ +2026-01-06 20:41:29,315 - INFO - Updating metadata for: my_defenseless_mothers +2026-01-06 20:41:29,316 - INFO - Searching metadata for: my defenseless mothers +2026-01-06 20:41:29,529 - INFO - Searching MangaUpdates for: my defenseless mothers +2026-01-06 20:41:29,748 - INFO - Updating metadata for: a_day_for_incest +2026-01-06 20:41:29,749 - INFO - Searching metadata for: a day for incest +2026-01-06 20:41:30,106 - INFO - Fetching metadata from: https://nhentai.net/g/497650/ +2026-01-06 20:41:30,374 - INFO - Updating metadata for: jagan_no_saimin_inryoku_de_seitokai_les_joshitachi +2026-01-06 20:41:30,375 - INFO - Searching metadata for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-06 20:41:30,615 - INFO - Searching MangaUpdates for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-06 20:41:30,994 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite_chapter_ +2026-01-06 20:41:30,994 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-06 20:41:31,308 - INFO - Searching MangaUpdates for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-06 20:41:31,714 - INFO - Updating metadata for: making_a_bet_with_a_competitive_niece +2026-01-06 20:41:31,715 - INFO - Searching metadata for: making a bet with a competitive niece +2026-01-06 20:41:31,961 - INFO - Searching MangaUpdates for: making a bet with a competitive niece +2026-01-06 20:41:32,285 - INFO - Updating metadata for: [k8on] It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-06 20:41:32,287 - INFO - Searching metadata for: k8on It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-06 20:41:32,674 - INFO - Searching metadata for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-06 20:41:33,038 - INFO - Searching MangaUpdates for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-06 20:41:33,730 - INFO - Updating metadata for: the_twins_next_door_were_former_super_sentai +2026-01-06 20:41:33,730 - INFO - Searching metadata for: the twins next door were former super sentai +2026-01-06 20:41:33,986 - INFO - Fetching metadata from: https://nhentai.net/g/589945/ +2026-01-06 20:41:34,241 - INFO - Updating metadata for: nureane_batsuichi_no_ane_to_sex_o_shita_natsu_no_yoru +2026-01-06 20:41:34,241 - INFO - Searching metadata for: nureane batsuichi no ane to sex o shita natsu no yoru +2026-01-06 20:41:34,629 - INFO - Fetching metadata from: https://nhentai.net/g/413708/ +2026-01-06 20:41:34,912 - INFO - Updating metadata for: [Juna Juna Juice] Supergirl From The JJJ Universe (The Flash) [English] +2026-01-06 20:41:34,913 - INFO - Searching metadata for: Juna Juna Juice Supergirl From The JJJ Universe (The Flash) [English] +2026-01-06 20:41:35,155 - INFO - Fetching metadata from: https://nhentai.net/g/462209/ +2026-01-06 20:41:35,377 - INFO - Updating metadata for: shes_always_obstinate +2026-01-06 20:41:35,378 - INFO - Searching metadata for: shes always obstinate +2026-01-06 20:41:35,571 - INFO - Searching MangaUpdates for: shes always obstinate +2026-01-06 20:41:35,752 - INFO - Updating metadata for: mikamikuns_incestuous_situation +2026-01-06 20:41:35,753 - INFO - Searching metadata for: mikamikuns incestuous situation +2026-01-06 20:41:35,944 - INFO - Searching MangaUpdates for: mikamikuns incestuous situation +2026-01-06 20:41:36,158 - INFO - Updating metadata for: [Yue] Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-06 20:41:36,158 - INFO - Searching metadata for: Yue Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-06 20:41:36,465 - INFO - Fetching metadata from: https://nhentai.net/g/588579/ +2026-01-06 20:41:36,738 - INFO - Updating metadata for: Jujutsu_Kaisen_dj_-_○○○_Shinai_to_Derarenai_Heya_√A_(2021) +2026-01-06 20:41:36,738 - INFO - Searching metadata for: Jujutsu Kaisen dj - ○○○ Shinai to Derarenai Heya √A +2026-01-06 20:41:36,932 - INFO - Searching MangaUpdates for: Jujutsu Kaisen dj - ○○○ Shinai to Derarenai Heya √A +2026-01-06 20:41:37,331 - INFO - Updating metadata for: [Pentacle(Shimipan)] I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-06 20:41:37,332 - INFO - Searching metadata for: Pentacle(Shimipan) I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-06 20:41:37,785 - INFO - Fetching metadata from: https://nhentai.net/g/603112/ +2026-01-06 20:41:38,264 - INFO - Updating metadata for: my_big_little_sister +2026-01-06 20:41:38,264 - INFO - Searching metadata for: my big little sister +2026-01-06 20:41:38,610 - INFO - Fetching metadata from: https://nhentai.net/g/619667/ +2026-01-06 20:41:38,853 - INFO - Updating metadata for: [Zandoro] A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-06 20:41:38,853 - INFO - Searching metadata for: Zandoro A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-06 20:41:39,162 - INFO - Fetching metadata from: https://nhentai.net/g/582285/ +2026-01-06 20:41:39,397 - INFO - Updating metadata for: awakening_of_the_female_instinct +2026-01-06 20:41:39,398 - INFO - Searching metadata for: awakening of the female instinct +2026-01-06 20:41:39,655 - INFO - Fetching metadata from: https://nhentai.net/g/592099/ +2026-01-06 20:41:39,953 - INFO - Updating metadata for: Hitozuma,_Uwaki,_Danchi_Nite._-37-Sai_Miho-_(2025) +2026-01-06 20:41:39,953 - INFO - Searching metadata for: Hitozuma, Uwaki, Danchi Nite. -37-Sai Miho- +2026-01-06 20:41:40,191 - INFO - Searching MangaUpdates for: Hitozuma, Uwaki, Danchi Nite. -37-Sai Miho- +2026-01-06 20:41:40,683 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-06 20:41:40,683 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-06 20:41:41,055 - INFO - Fetching metadata from: https://nhentai.net/g/339531/ +2026-01-06 20:41:41,303 - INFO - Updating metadata for: friendly_brother_and_sister +2026-01-06 20:41:41,303 - INFO - Searching metadata for: friendly brother and sister +2026-01-06 20:41:41,529 - INFO - Fetching metadata from: https://nhentai.net/g/531957/ +2026-01-06 20:41:41,763 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Mechakucha Sex suru Ohanashi +2026-01-06 20:41:41,763 - INFO - Searching metadata for: Manbou Shoten Shitei ga Mechakucha Sex suru Ohanashi +2026-01-06 20:41:42,022 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-06 20:41:42,308 - INFO - Updating metadata for: Family_Plan_(2024) +2026-01-06 20:41:42,309 - INFO - Searching metadata for: Family Plan +2026-01-06 20:41:42,561 - INFO - Fetching metadata from: https://nhentai.net/g/602426/ +2026-01-06 20:41:43,106 - INFO - Updating metadata for: you_must_breed_your_sister_to_leave_this_island +2026-01-06 20:41:43,106 - INFO - Searching metadata for: you must breed your sister to leave this island +2026-01-06 20:41:43,405 - INFO - Fetching metadata from: https://nhentai.net/g/617218/ +2026-01-06 20:41:43,620 - INFO - Updating metadata for: fence14 +2026-01-06 20:41:43,620 - INFO - Searching metadata for: fence14 +2026-01-06 20:41:43,845 - INFO - Fetching metadata from: https://nhentai.net/g/619305/ +2026-01-06 20:41:44,101 - INFO - Updating metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ _ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-06 20:41:44,101 - INFO - Searching metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-06 20:41:44,360 - INFO - Fetching metadata from: https://nhentai.net/g/400327/ +2026-01-06 20:41:44,593 - INFO - Updating metadata for: elder_sis_cosplay +2026-01-06 20:41:44,594 - INFO - Searching metadata for: elder sis cosplay +2026-01-06 20:41:44,762 - INFO - Fetching metadata from: https://nhentai.net/g/147261/ +2026-01-06 20:41:44,983 - INFO - Updating metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-06 20:41:44,983 - INFO - Searching metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-06 20:41:45,361 - INFO - Searching MangaUpdates for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-06 20:41:45,779 - INFO - Updating metadata for: maiyasans_money_issues +2026-01-06 20:41:45,780 - INFO - Searching metadata for: maiyasans money issues +2026-01-06 20:41:45,939 - INFO - Searching MangaUpdates for: maiyasans money issues +2026-01-06 20:41:46,141 - INFO - Updating metadata for: mama_cos +2026-01-06 20:41:46,142 - INFO - Searching metadata for: mama cos +2026-01-06 20:41:46,370 - INFO - Fetching metadata from: https://nhentai.net/g/618775/ +2026-01-06 20:41:46,570 - INFO - Updating metadata for: [Shirono Mahiro] Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-06 20:41:46,570 - INFO - Searching metadata for: Shirono Mahiro Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-06 20:41:46,964 - INFO - Fetching metadata from: https://nhentai.net/g/332054/ +2026-01-06 20:41:47,177 - INFO - Updating metadata for: im_being_sex_educated_by_my_overprotective_mother_chapter +2026-01-06 20:41:47,177 - INFO - Searching metadata for: im being sex educated by my overprotective mother chapter +2026-01-06 20:41:47,387 - INFO - Searching MangaUpdates for: im being sex educated by my overprotective mother chapter +2026-01-06 20:41:47,722 - INFO - Updating metadata for: imouto_ookiindamon_chapter +2026-01-06 20:41:47,722 - INFO - Searching metadata for: imouto ookiindamon chapter +2026-01-06 20:41:47,872 - INFO - Searching MangaUpdates for: imouto ookiindamon chapter +2026-01-06 20:41:48,106 - INFO - Updating metadata for: my_dear_sister_is_mine +2026-01-06 20:41:48,106 - INFO - Searching metadata for: my dear sister is mine +2026-01-06 20:41:48,399 - INFO - Fetching metadata from: https://nhentai.net/g/567113/ +2026-01-06 20:41:48,589 - INFO - Updating metadata for: [Qdou Kei] Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-06 20:41:48,589 - INFO - Searching metadata for: Qdou Kei Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-06 20:41:48,989 - INFO - Fetching metadata from: https://nhentai.net/g/246334/ +2026-01-06 20:41:49,243 - INFO - Updating metadata for: [nounanka (Abubu)] Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-06 20:41:49,243 - INFO - Searching metadata for: nounanka (Abubu) Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-06 20:41:49,596 - INFO - Fetching metadata from: https://nhentai.net/g/601119/ +2026-01-06 20:41:49,845 - INFO - Updating metadata for: story_about_how_i_fucked_cucked_and_brought_to_bliss_some_languid_wives +2026-01-06 20:41:49,845 - INFO - Searching metadata for: story about how i fucked cucked and brought to bliss some languid wives +2026-01-06 20:41:50,096 - INFO - Fetching metadata from: https://nhentai.net/g/578155/ +2026-01-06 20:41:50,297 - INFO - Updating metadata for: [Shiki] Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-06 20:41:50,298 - INFO - Searching metadata for: Shiki Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-06 20:41:50,561 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-06 20:41:50,965 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-06 20:41:51,601 - INFO - Updating metadata for: uchi_ni_kaettara_mama_ga_zenra_de_hatsujou_shiteta_ken +2026-01-06 20:41:51,602 - INFO - Searching metadata for: uchi ni kaettara mama ga zenra de hatsujou shiteta ken +2026-01-06 20:41:51,903 - INFO - Fetching metadata from: https://nhentai.net/g/329704/ +2026-01-06 20:41:52,100 - INFO - Updating metadata for: [Teoi] Youmu-chan hypnosis sex +2026-01-06 20:41:52,100 - INFO - Searching metadata for: Teoi Youmu-chan hypnosis sex +2026-01-06 20:41:52,260 - INFO - Searching metadata for: Youmu-chan hypnosis sex +2026-01-06 20:41:52,451 - INFO - Searching MangaUpdates for: Youmu-chan hypnosis sex +2026-01-06 20:41:52,634 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-06 20:41:52,634 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-06 20:41:52,971 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-06 20:41:53,272 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-06 20:41:53,604 - INFO - Updating metadata for: similar_siblings +2026-01-06 20:41:53,604 - INFO - Searching metadata for: similar siblings +2026-01-06 20:41:53,747 - INFO - Searching MangaUpdates for: similar siblings +2026-01-06 20:41:54,051 - INFO - Updating metadata for: kiyoshiros_last_hours +2026-01-06 20:41:54,051 - INFO - Searching metadata for: kiyoshiros last hours +2026-01-06 20:41:54,200 - INFO - Searching MangaUpdates for: kiyoshiros last hours +2026-01-06 20:41:54,421 - INFO - Updating metadata for: otaku_ni_rikai_aru_gal_yome_ga_otashop +2026-01-06 20:41:54,421 - INFO - Searching metadata for: otaku ni rikai aru gal yome ga otashop +2026-01-06 20:41:54,665 - INFO - Searching MangaUpdates for: otaku ni rikai aru gal yome ga otashop +2026-01-06 20:41:55,381 - INFO - Updating metadata for: [CHOMA] Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-06 20:41:55,381 - INFO - Searching metadata for: CHOMA Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-06 20:41:55,588 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-06 20:41:55,830 - INFO - Updating metadata for: muchi_niku_jokyoushi_tomomi_mama +2026-01-06 20:41:55,831 - INFO - Searching metadata for: muchi niku jokyoushi tomomi mama +2026-01-06 20:41:56,018 - INFO - Searching MangaUpdates for: muchi niku jokyoushi tomomi mama +2026-01-06 20:41:56,356 - INFO - Updating metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru _ Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-06 20:41:56,357 - INFO - Searching metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-06 20:41:56,990 - INFO - Fetching metadata from: https://nhentai.net/g/483349/ +2026-01-06 20:41:57,272 - INFO - Updating metadata for: michelle_to_icha_love +2026-01-06 20:41:57,276 - INFO - Searching metadata for: michelle to icha love +2026-01-06 20:41:57,486 - INFO - Fetching metadata from: https://nhentai.net/g/597558/ +2026-01-06 20:41:57,783 - INFO - Updating metadata for: toshi_densetsu_bitch_joshikai +2026-01-06 20:41:57,784 - INFO - Searching metadata for: toshi densetsu bitch joshikai +2026-01-06 20:41:57,993 - INFO - Fetching metadata from: https://nhentai.net/g/558829/ +2026-01-06 20:41:58,346 - INFO - Updating metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-06 20:41:58,347 - INFO - Searching metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-06 20:41:58,776 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-06 20:41:58,981 - INFO - Updating metadata for: after_a_mouth +2026-01-06 20:41:58,982 - INFO - Searching metadata for: after a mouth +2026-01-06 20:41:59,210 - INFO - Fetching metadata from: https://nhentai.net/g/602572/ +2026-01-06 20:41:59,586 - INFO - Updating metadata for: incestism +2026-01-06 20:41:59,586 - INFO - Searching metadata for: incestism +2026-01-06 20:41:59,788 - INFO - Fetching metadata from: https://nhentai.net/g/600637/ +2026-01-06 20:41:59,990 - INFO - Updating metadata for: life_of_passionate_pleasures +2026-01-06 20:41:59,990 - INFO - Searching metadata for: life of passionate pleasures +2026-01-06 20:42:00,167 - INFO - Fetching metadata from: https://nhentai.net/g/530801/ +2026-01-06 20:42:00,374 - INFO - Updating metadata for: carnal_siblings +2026-01-06 20:42:00,375 - INFO - Searching metadata for: carnal siblings +2026-01-06 20:42:00,547 - INFO - Fetching metadata from: https://nhentai.net/g/505982/ +2026-01-06 20:42:00,765 - INFO - Updating metadata for: naughty_bunny_and_doctor +2026-01-06 20:42:00,766 - INFO - Searching metadata for: naughty bunny and doctor +2026-01-06 20:42:00,951 - INFO - Fetching metadata from: https://nhentai.net/g/577393/ +2026-01-06 20:42:01,161 - INFO - Updating metadata for: hiyake_rikujoubu_oneechan_ni_neteiru_toku_ni_itazura_suru_ecchi_manga +2026-01-06 20:42:01,162 - INFO - Searching metadata for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-06 20:42:01,413 - INFO - Searching MangaUpdates for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-06 20:42:02,046 - INFO - Updating metadata for: reiwas_penis_growth_training_chapter_1 +2026-01-06 20:42:02,047 - INFO - Searching metadata for: reiwas penis growth training chapter 1 +2026-01-06 20:42:02,204 - INFO - Searching MangaUpdates for: reiwas penis growth training chapter 1 +2026-01-06 20:42:02,510 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-06 20:42:02,511 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-06 20:42:02,789 - INFO - Searching metadata for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-06 20:42:03,034 - INFO - Searching MangaUpdates for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-06 20:42:03,712 - INFO - Updating metadata for: ninshin_wa_kinshin_de_to_iu_hou_ga_dekita_node_haha_to_imouto_to_oba_mainichi_ore_no_chi_po_o_neratte_kuru +2026-01-06 20:42:03,712 - INFO - Searching metadata for: ninshin wa kinshin de to iu hou ga dekita node haha to imouto to oba mainichi ore no chi po o neratte kuru +2026-01-06 20:42:04,195 - INFO - Fetching metadata from: https://nhentai.net/g/400868/ +2026-01-06 20:42:04,447 - INFO - Updating metadata for: ani_no_kimoi_gendou_ni_honki +2026-01-06 20:42:04,447 - INFO - Searching metadata for: ani no kimoi gendou ni honki +2026-01-06 20:42:04,729 - INFO - Fetching metadata from: https://nhentai.net/g/511424/ +2026-01-06 20:42:04,925 - INFO - Updating metadata for: Roujin_to_Neko_(2024) +2026-01-06 20:42:04,925 - INFO - Searching metadata for: Roujin to Neko +2026-01-06 20:42:05,102 - INFO - Searching MangaUpdates for: Roujin to Neko +2026-01-06 20:42:05,736 - INFO - Updating metadata for: gal_bitch_supremacy +2026-01-06 20:42:05,737 - INFO - Searching metadata for: gal bitch supremacy +2026-01-06 20:42:05,934 - INFO - Fetching metadata from: https://nhentai.net/g/521758/ +2026-01-06 20:42:06,172 - INFO - Updating metadata for: ane_de_shikoru_otouto_to_onaritai +2026-01-06 20:42:06,172 - INFO - Searching metadata for: ane de shikoru otouto to onaritai +2026-01-06 20:42:06,458 - INFO - Fetching metadata from: https://nhentai.net/g/505892/ +2026-01-06 20:42:06,672 - INFO - Updating metadata for: video_memories +2026-01-06 20:42:06,673 - INFO - Searching metadata for: video memories +2026-01-06 20:42:06,842 - INFO - Fetching metadata from: https://nhentai.net/g/506956/ +2026-01-06 20:42:07,082 - INFO - Updating metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-06 20:42:07,083 - INFO - Searching metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-06 20:42:07,382 - INFO - Fetching metadata from: https://nhentai.net/g/614968/ +2026-01-06 20:42:07,583 - INFO - Updating metadata for: [Niramikko Koujou] Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-06 20:42:07,584 - INFO - Searching metadata for: Niramikko Koujou Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-06 20:42:08,020 - INFO - Fetching metadata from: https://nhentai.net/g/557335/ +2026-01-06 20:42:08,242 - INFO - Updating metadata for: kanojo_no_ane_wa_gal_de_bitch_de_yariman_de +2026-01-06 20:42:08,242 - INFO - Searching metadata for: kanojo no ane wa gal de bitch de yariman de +2026-01-06 20:42:08,614 - INFO - Fetching metadata from: https://nhentai.net/g/578979/ +2026-01-06 20:42:08,812 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-06 20:42:08,812 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-06 20:42:09,059 - INFO - Fetching metadata from: https://nhentai.net/g/604729/ +2026-01-06 20:42:09,402 - INFO - Updating metadata for: musclehead_girl_cant_resist_orgasm_chapter +2026-01-06 20:42:09,402 - INFO - Searching metadata for: musclehead girl cant resist orgasm chapter +2026-01-06 20:42:09,551 - INFO - Searching MangaUpdates for: musclehead girl cant resist orgasm chapter +2026-01-06 20:42:09,925 - INFO - Updating metadata for: oneechan_wa_sore_o_yurusanai +2026-01-06 20:42:09,925 - INFO - Searching metadata for: oneechan wa sore o yurusanai +2026-01-06 20:42:10,177 - INFO - Searching MangaUpdates for: oneechan wa sore o yurusanai +2026-01-06 20:42:10,645 - INFO - Updating metadata for: pet_mimamori_camera_ni_ane_to_otouto_no_sex_ga_utsutteta +2026-01-06 20:42:10,645 - INFO - Searching metadata for: pet mimamori camera ni ane to otouto no sex ga utsutteta +2026-01-06 20:42:11,000 - INFO - Fetching metadata from: https://nhentai.net/g/312775/ +2026-01-06 20:42:11,198 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-06 20:42:11,199 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-06 20:42:11,431 - INFO - Fetching metadata from: https://nhentai.net/g/544873/ +2026-01-06 20:42:11,681 - INFO - Updating metadata for: sisters_after_mozu +2026-01-06 20:42:11,682 - INFO - Searching metadata for: sisters after mozu +2026-01-06 20:42:11,843 - INFO - Searching MangaUpdates for: sisters after mozu +2026-01-06 20:42:12,100 - INFO - Updating metadata for: otaku_hime_ga_kita_heya +2026-01-06 20:42:12,101 - INFO - Searching metadata for: otaku hime ga kita heya +2026-01-06 20:42:12,363 - INFO - Fetching metadata from: https://nhentai.net/g/347531/ +2026-01-06 20:42:12,549 - INFO - Updating metadata for: dream_mama_vs_real_mother_chapter_1b +2026-01-06 20:42:12,550 - INFO - Searching metadata for: dream mama vs real mother chapter 1b +2026-01-06 20:42:12,749 - INFO - Searching MangaUpdates for: dream mama vs real mother chapter 1b +2026-01-06 20:42:13,072 - INFO - Updating metadata for: day_only_for_two +2026-01-06 20:42:13,073 - INFO - Searching metadata for: day only for two +2026-01-06 20:42:13,277 - INFO - Fetching metadata from: https://nhentai.net/g/167284/ +2026-01-06 20:42:13,725 - INFO - Updating metadata for: [Tohzai] Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-06 20:42:13,726 - INFO - Searching metadata for: Tohzai Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-06 20:42:14,047 - INFO - Fetching metadata from: https://nhentai.net/g/141024/ +2026-01-06 20:42:14,269 - INFO - Updating metadata for: whats_a_bond +2026-01-06 20:42:14,270 - INFO - Searching metadata for: whats a bond +2026-01-06 20:42:14,456 - INFO - Fetching metadata from: https://nhentai.net/g/126340/ +2026-01-06 20:42:14,785 - INFO - Updating metadata for: [Kira Hiroyoshi] Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-06 20:42:14,785 - INFO - Searching metadata for: Kira Hiroyoshi Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-06 20:42:15,159 - INFO - Searching metadata for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-06 20:42:15,524 - INFO - Searching MangaUpdates for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-06 20:42:15,962 - INFO - Updating metadata for: ore_ga_daiteru_onna_wa_imouto_kamo_shirenai +2026-01-06 20:42:15,963 - INFO - Searching metadata for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-06 20:42:16,170 - INFO - Searching MangaUpdates for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-06 20:42:16,495 - INFO - Updating metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-06 20:42:16,495 - INFO - Searching metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-06 20:42:16,820 - INFO - Fetching metadata from: https://nhentai.net/g/285698/ +2026-01-06 20:42:17,018 - INFO - Updating metadata for: lethargic_sister_tolerates_her_brothers_pranks +2026-01-06 20:42:17,019 - INFO - Searching metadata for: lethargic sister tolerates her brothers pranks +2026-01-06 20:42:17,196 - INFO - Fetching metadata from: https://nhentai.net/g/518733/ +2026-01-06 20:42:17,418 - INFO - Updating metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-06 20:42:17,419 - INFO - Searching metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-06 20:42:17,722 - INFO - Fetching metadata from: https://nhentai.net/g/579037/ +2026-01-06 20:42:17,938 - INFO - Updating metadata for: bitch_mamas_depraved_adultery +2026-01-06 20:42:17,940 - INFO - Searching metadata for: bitch mamas depraved adultery +2026-01-06 20:42:18,112 - INFO - Searching MangaUpdates for: bitch mamas depraved adultery +2026-01-06 20:42:18,365 - INFO - Updating metadata for: [Fence 14] Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-06 20:42:18,365 - INFO - Searching metadata for: Fence 14 Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-06 20:42:18,622 - INFO - Searching metadata for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-06 20:42:18,848 - INFO - Searching MangaUpdates for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-06 20:42:19,111 - INFO - Updating metadata for: onee_sama_likes_anal +2026-01-06 20:42:19,111 - INFO - Searching metadata for: onee sama likes anal +2026-01-06 20:42:19,294 - INFO - Fetching metadata from: https://nhentai.net/g/110837/ +2026-01-06 20:42:19,508 - INFO - Updating metadata for: camellia_the_first +2026-01-06 20:42:19,508 - INFO - Searching metadata for: camellia the first +2026-01-06 20:42:19,709 - INFO - Fetching metadata from: https://nhentai.net/g/521474/ +2026-01-06 20:42:19,943 - INFO - Updating metadata for: sudou_siblings_sexual_circumstances +2026-01-06 20:42:19,944 - INFO - Searching metadata for: sudou siblings sexual circumstances +2026-01-06 20:42:20,138 - INFO - Fetching metadata from: https://nhentai.net/g/326122/ +2026-01-06 20:42:20,365 - INFO - Updating metadata for: mama_and_john +2026-01-06 20:42:20,366 - INFO - Searching metadata for: mama and john +2026-01-06 20:42:20,572 - INFO - Searching MangaUpdates for: mama and john +2026-01-06 20:42:20,805 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-06 20:42:20,806 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-06 20:42:21,213 - INFO - Searching metadata for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-06 20:42:21,634 - INFO - Searching MangaUpdates for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-06 20:42:22,443 - INFO - Updating metadata for: bakunyuu_bijukujo_wa_soku_hame_koubiana +2026-01-06 20:42:22,443 - INFO - Searching metadata for: bakunyuu bijukujo wa soku hame koubiana +2026-01-06 20:42:22,680 - INFO - Fetching metadata from: https://nhentai.net/g/529021/ +2026-01-06 20:42:22,967 - INFO - Updating metadata for: joshi_seito_o_suki_houdai_ni_hame_botebara_ni_shite_ok_na_sekai +2026-01-06 20:42:22,967 - INFO - Searching metadata for: joshi seito o suki houdai ni hame botebara ni shite ok na sekai +2026-01-06 20:42:23,405 - INFO - Fetching metadata from: https://nhentai.net/g/268826/ +2026-01-06 20:42:23,624 - INFO - Updating metadata for: [Puranpuman] A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-06 20:42:23,624 - INFO - Searching metadata for: Puranpuman A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-06 20:42:24,016 - INFO - Fetching metadata from: https://nhentai.net/g/617868/ +2026-01-06 20:42:24,260 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-06 20:42:24,260 - INFO - Searching metadata for: Mustard Teikoku (Europia) A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-06 20:42:24,692 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-06 20:42:24,994 - INFO - Updating metadata for: hitozuma_saimin_appli_chapter +2026-01-06 20:42:24,995 - INFO - Searching metadata for: hitozuma saimin appli chapter +2026-01-06 20:42:25,168 - INFO - Searching MangaUpdates for: hitozuma saimin appli chapter +2026-01-06 20:42:25,434 - INFO - Updating metadata for: dagashi_wa_sake_ni_au +2026-01-06 20:42:25,434 - INFO - Searching metadata for: dagashi wa sake ni au +2026-01-06 20:42:25,693 - INFO - Fetching metadata from: https://nhentai.net/g/404156/ +2026-01-06 20:42:25,899 - INFO - Updating metadata for: the_night_my_sister_disappeared_i_made_love_to_my_mother +2026-01-06 20:42:25,900 - INFO - Searching metadata for: the night my sister disappeared i made love to my mother +2026-01-06 20:42:26,158 - INFO - Fetching metadata from: https://nhentai.net/g/497835/ +2026-01-06 20:42:26,360 - INFO - Updating metadata for: tsubaki_democracy +2026-01-06 20:42:26,360 - INFO - Searching metadata for: tsubaki democracy +2026-01-06 20:42:26,550 - INFO - Fetching metadata from: https://nhentai.net/g/269196/ +2026-01-06 20:42:26,753 - INFO - Updating metadata for: Kumiko_to_Warui_Musuko_(2015) +2026-01-06 20:42:26,754 - INFO - Searching metadata for: Kumiko to Warui Musuko +2026-01-06 20:42:26,953 - INFO - Fetching metadata from: https://nhentai.net/g/190492/ +2026-01-06 20:42:27,143 - INFO - Updating metadata for: this_teacher_in_her_fourtys_is_acting_like_a_young_girl_in_the_prime_if_her_life +2026-01-06 20:42:27,144 - INFO - Searching metadata for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-06 20:42:27,415 - INFO - Searching MangaUpdates for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-06 20:42:28,134 - INFO - Updating metadata for: the_story_of_a_single_career_woman_in_hers_getting_addicted_to_a_relationship +2026-01-06 20:42:28,134 - INFO - Searching metadata for: the story of a single career woman in hers getting addicted to a relationship +2026-01-06 20:42:28,412 - INFO - Searching MangaUpdates for: the story of a single career woman in hers getting addicted to a relationship +2026-01-06 20:42:29,211 - INFO - Updating metadata for: [Kouda Tomohiro] Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-06 20:42:29,211 - INFO - Searching metadata for: Kouda Tomohiro Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-06 20:42:29,410 - INFO - Fetching metadata from: https://nhentai.net/g/604149/ +2026-01-06 20:42:29,624 - INFO - Updating metadata for: [Hikagemon (Tenpiboshi)] Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-06 20:42:29,625 - INFO - Searching metadata for: Hikagemon (Tenpiboshi) Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-06 20:42:29,858 - INFO - Fetching metadata from: https://nhentai.net/g/593437/ +2026-01-06 20:42:30,106 - INFO - Updating metadata for: rural_stories +2026-01-06 20:42:30,107 - INFO - Searching metadata for: rural stories +2026-01-06 20:42:30,278 - INFO - Fetching metadata from: https://nhentai.net/g/565283/ +2026-01-06 20:42:30,511 - INFO - Updating metadata for: [Sunagawa Tara] Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-06 20:42:30,512 - INFO - Searching metadata for: Sunagawa Tara Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-06 20:42:31,026 - INFO - Fetching metadata from: https://nhentai.net/g/601543/ +2026-01-06 20:42:31,249 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-06 20:42:31,250 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-06 20:42:31,591 - INFO - Fetching metadata from: https://nhentai.net/g/573974/ +2026-01-06 20:42:31,800 - INFO - Updating metadata for: my_daily_life_as_a_streamer +2026-01-06 20:42:31,801 - INFO - Searching metadata for: my daily life as a streamer +2026-01-06 20:42:32,105 - INFO - Fetching metadata from: https://nhentai.net/g/550192/ +2026-01-06 20:42:32,316 - INFO - Updating metadata for: possessed_and_thrusting +2026-01-06 20:42:32,316 - INFO - Searching metadata for: possessed and thrusting +2026-01-06 20:42:32,499 - INFO - Fetching metadata from: https://nhentai.net/g/584236/ +2026-01-06 20:42:32,797 - INFO - Updating metadata for: mrs_miho_cant_stop_cheating_chapter +2026-01-06 20:42:32,797 - INFO - Searching metadata for: mrs miho cant stop cheating chapter +2026-01-06 20:42:32,965 - INFO - Searching MangaUpdates for: mrs miho cant stop cheating chapter +2026-01-06 20:42:33,267 - INFO - Updating metadata for: a_story_about_an_oneesan_being_impregnated_by_an_incubus +2026-01-06 20:42:33,268 - INFO - Searching metadata for: a story about an oneesan being impregnated by an incubus +2026-01-06 20:42:33,563 - INFO - Searching MangaUpdates for: a story about an oneesan being impregnated by an incubus +2026-01-06 20:42:33,953 - INFO - Updating metadata for: wrung_dry_by_my_sister_every_night_under_the_sheets +2026-01-06 20:42:33,954 - INFO - Searching metadata for: wrung dry by my sister every night under the sheets +2026-01-06 20:42:34,170 - INFO - Fetching metadata from: https://nhentai.net/g/548542/ +2026-01-06 20:42:34,368 - INFO - Updating metadata for: [Yue] Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-06 20:42:34,368 - INFO - Searching metadata for: Yue Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-06 20:42:34,701 - INFO - Fetching metadata from: https://nhentai.net/g/580266/ +2026-01-06 20:42:34,896 - INFO - Updating metadata for: a_country_mother_who_makes_her_son_horny +2026-01-06 20:42:34,897 - INFO - Searching metadata for: a country mother who makes her son horny +2026-01-06 20:42:35,207 - INFO - Fetching metadata from: https://nhentai.net/g/558745/ +2026-01-06 20:42:35,436 - INFO - Updating metadata for: sister_complex +2026-01-06 20:42:35,436 - INFO - Searching metadata for: sister complex +2026-01-06 20:42:35,647 - INFO - Fetching metadata from: https://nhentai.net/g/600775/ +2026-01-06 20:42:35,850 - INFO - Updating metadata for: nao_hanpatsu_zokusei +2026-01-06 20:42:35,850 - INFO - Searching metadata for: nao hanpatsu zokusei +2026-01-06 20:42:36,038 - INFO - Searching MangaUpdates for: nao hanpatsu zokusei +2026-01-06 20:42:36,325 - INFO - Updating metadata for: [NCP (big g)] A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-06 20:42:36,326 - INFO - Searching metadata for: NCP (big g) A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-06 20:42:36,644 - INFO - Fetching metadata from: https://nhentai.net/g/514753/ +2026-01-06 20:42:36,847 - INFO - Updating metadata for: masochist_little_brothers_training +2026-01-06 20:42:36,848 - INFO - Searching metadata for: masochist little brothers training +2026-01-06 20:42:37,007 - INFO - Searching MangaUpdates for: masochist little brothers training +2026-01-06 20:42:37,306 - INFO - Updating metadata for: SISUANA - sister hole +2026-01-06 20:42:37,307 - INFO - Searching metadata for: SISUANA - sister hole +2026-01-06 20:42:37,513 - INFO - Fetching metadata from: https://nhentai.net/g/521114/ +2026-01-06 20:42:37,714 - INFO - Updating metadata for: my_neet_older_sister +2026-01-06 20:42:37,715 - INFO - Searching metadata for: my neet older sister +2026-01-06 20:42:37,915 - INFO - Fetching metadata from: https://nhentai.net/g/541946/ +2026-01-06 20:42:38,199 - INFO - Updating metadata for: narmaya_attack +2026-01-06 20:42:38,200 - INFO - Searching metadata for: narmaya attack +2026-01-06 20:42:38,411 - INFO - Fetching metadata from: https://nhentai.net/g/322620/ +2026-01-06 20:42:38,643 - INFO - Updating metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-06 20:42:38,644 - INFO - Searching metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-06 20:42:38,816 - INFO - Searching MangaUpdates for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-06 20:42:39,196 - INFO - Updating metadata for: the_country_little_sister_and_the_tempation_of_innocence +2026-01-06 20:42:39,196 - INFO - Searching metadata for: the country little sister and the tempation of innocence +2026-01-06 20:42:39,468 - INFO - Searching MangaUpdates for: the country little sister and the tempation of innocence +2026-01-06 20:42:39,937 - INFO - Updating metadata for: blood_lunch +2026-01-06 20:42:39,937 - INFO - Searching metadata for: blood lunch +2026-01-06 20:42:40,163 - INFO - Fetching metadata from: https://nhentai.net/g/578369/ +2026-01-06 20:42:40,388 - INFO - Updating metadata for: toppatsusei_bokki_shoukougun_jii_fuzen_o_soete +2026-01-06 20:42:40,389 - INFO - Searching metadata for: toppatsusei bokki shoukougun jii fuzen o soete +2026-01-06 20:42:40,608 - INFO - Fetching metadata from: https://nhentai.net/g/425210/ +2026-01-06 20:42:40,946 - INFO - Updating metadata for: Between Heave and Hell +2026-01-06 20:42:40,947 - INFO - Searching metadata for: Between Heave and Hell +2026-01-06 20:42:41,153 - INFO - Fetching metadata from: https://nhentai.net/g/125398/ +2026-01-06 20:42:41,362 - INFO - Updating metadata for: is_my_sister_seriously_ill +2026-01-06 20:42:41,362 - INFO - Searching metadata for: is my sister seriously ill +2026-01-06 20:42:41,578 - INFO - Fetching metadata from: https://nhentai.net/g/600832/ +2026-01-06 20:42:41,779 - INFO - Updating metadata for: mucchiri_megaton +2026-01-06 20:42:41,779 - INFO - Searching metadata for: mucchiri megaton +2026-01-06 20:42:42,016 - INFO - Fetching metadata from: https://nhentai.net/g/495948/ +2026-01-06 20:42:42,314 - INFO - Updating metadata for: [Kikunosukemaru] Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-06 20:42:42,314 - INFO - Searching metadata for: Kikunosukemaru Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-06 20:42:42,575 - INFO - Fetching metadata from: https://nhentai.net/g/166499/ +2026-01-06 20:42:42,803 - INFO - Updating metadata for: the_sex_life_of_the_tachibanas +2026-01-06 20:42:42,803 - INFO - Searching metadata for: the sex life of the tachibanas +2026-01-06 20:42:42,982 - INFO - Searching MangaUpdates for: the sex life of the tachibanas +2026-01-06 20:42:43,438 - INFO - Updating metadata for: jitsu_wa_midara_na_chounyuu_sensei_chapter +2026-01-06 20:42:43,438 - INFO - Searching metadata for: jitsu wa midara na chounyuu sensei chapter +2026-01-06 20:42:43,675 - INFO - Searching MangaUpdates for: jitsu wa midara na chounyuu sensei chapter +2026-01-06 20:42:44,165 - INFO - Updating metadata for: [K8ON] Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-06 20:42:44,165 - INFO - Searching metadata for: K8ON Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-06 20:42:44,375 - INFO - Searching metadata for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-06 20:42:44,640 - INFO - Searching MangaUpdates for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-06 20:42:45,325 - INFO - Updating metadata for: gumi_chocolate_pine_koma_mangashuu +2026-01-06 20:42:45,325 - INFO - Searching metadata for: gumi chocolate pine koma mangashuu +2026-01-06 20:42:45,513 - INFO - Fetching metadata from: https://nhentai.net/g/541484/ +2026-01-06 20:42:45,713 - INFO - Updating metadata for: temptation_downtime +2026-01-06 20:42:45,714 - INFO - Searching metadata for: temptation downtime +2026-01-06 20:42:45,900 - INFO - Fetching metadata from: https://nhentai.net/g/238204/ +2026-01-06 20:42:46,120 - INFO - Updating metadata for: welcome_to_greenwood +2026-01-06 20:42:46,120 - INFO - Searching metadata for: welcome to greenwood +2026-01-06 20:42:46,346 - INFO - Fetching metadata from: https://nhentai.net/g/55621/ +2026-01-06 20:42:46,533 - INFO - Updating metadata for: passionate_coriander +2026-01-06 20:42:46,533 - INFO - Searching metadata for: passionate coriander +2026-01-06 20:42:46,714 - INFO - Fetching metadata from: https://nhentai.net/g/504728/ +2026-01-06 20:42:46,916 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-06 20:42:46,916 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-06 20:42:47,325 - INFO - Fetching metadata from: https://nhentai.net/g/497921/ +2026-01-06 20:42:47,568 - INFO - Updating metadata for: big_sister_with_drooping_tits_wants_to_fuck_her_little_brother +2026-01-06 20:42:47,568 - INFO - Searching metadata for: big sister with drooping tits wants to fuck her little brother +2026-01-06 20:42:47,813 - INFO - Fetching metadata from: https://nhentai.net/g/502879/ +2026-01-06 20:42:48,018 - INFO - Updating metadata for: sister_control +2026-01-06 20:42:48,018 - INFO - Searching metadata for: sister control +2026-01-06 20:42:48,344 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-06 20:42:48,692 - INFO - Updating metadata for: a_book_about_using_hypno_to_fuck_my_little_sister +2026-01-06 20:42:48,693 - INFO - Searching metadata for: a book about using hypno to fuck my little sister +2026-01-06 20:42:49,004 - INFO - Fetching metadata from: https://nhentai.net/g/545892/ +2026-01-06 20:42:49,209 - INFO - Updating metadata for: moms_body_is_mine_mother_and_son_incest_sex_behind_dads_back +2026-01-06 20:42:49,209 - INFO - Searching metadata for: moms body is mine mother and son incest sex behind dads back +2026-01-06 20:42:49,441 - INFO - Searching MangaUpdates for: moms body is mine mother and son incest sex behind dads back +2026-01-06 20:42:49,752 - INFO - Updating metadata for: dysfunctional_family +2026-01-06 20:42:49,753 - INFO - Searching metadata for: dysfunctional family +2026-01-06 20:42:49,930 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-06 20:42:50,247 - INFO - Updating metadata for: pldk +2026-01-06 20:42:50,247 - INFO - Searching metadata for: pldk +2026-01-06 20:42:50,394 - INFO - Searching MangaUpdates for: pldk +2026-01-06 20:42:50,600 - INFO - Updating metadata for: a_sticky_harem_full_of_mother_and_sisters_milk +2026-01-06 20:42:50,600 - INFO - Searching metadata for: a sticky harem full of mother and sisters milk +2026-01-06 20:42:50,839 - INFO - Searching MangaUpdates for: a sticky harem full of mother and sisters milk +2026-01-06 20:42:51,299 - INFO - Updating metadata for: [Kazuhiro] InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-06 20:42:51,299 - INFO - Searching metadata for: Kazuhiro InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-06 20:42:51,684 - INFO - Searching metadata for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-06 20:42:52,098 - INFO - Searching MangaUpdates for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-06 20:42:52,568 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge +2026-01-06 20:42:52,568 - INFO - Searching metadata for: big boobs shadowy character takes revenge +2026-01-06 20:42:52,753 - INFO - Fetching metadata from: https://nhentai.net/g/600439/ +2026-01-06 20:42:53,031 - INFO - Updating metadata for: [Shiraishi Nagisa] Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-06 20:42:53,032 - INFO - Searching metadata for: Shiraishi Nagisa Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-06 20:42:53,222 - INFO - Fetching metadata from: https://nhentai.net/g/485428/ +2026-01-06 20:42:53,415 - INFO - Updating metadata for: [Juna Juna Juice] Starting tonight Baby bear will become [English] +2026-01-06 20:42:53,415 - INFO - Searching metadata for: Juna Juna Juice Starting tonight Baby bear will become [English] +2026-01-06 20:42:53,605 - INFO - Fetching metadata from: https://nhentai.net/g/594307/ +2026-01-06 20:42:53,810 - INFO - Updating metadata for: 20_years_from_now_you_make_me_a_little_nervous_chapter_1 +2026-01-06 20:42:53,810 - INFO - Searching metadata for: 20 years from now you make me a little nervous chapter 1 +2026-01-06 20:42:54,167 - INFO - Searching MangaUpdates for: 20 years from now you make me a little nervous chapter 1 +2026-01-06 20:42:54,752 - INFO - Updating metadata for: neteiru_okaasan_o_yaritai_houdai +2026-01-06 20:42:54,753 - INFO - Searching metadata for: neteiru okaasan o yaritai houdai +2026-01-06 20:42:54,946 - INFO - Searching MangaUpdates for: neteiru okaasan o yaritai houdai +2026-01-06 20:42:55,339 - INFO - Updating metadata for: [Mizu] Jumble Family [English] (Decensored) +2026-01-06 20:42:55,339 - INFO - Searching metadata for: Mizu Jumble Family [English] (Decensored) +2026-01-06 20:42:55,536 - INFO - Fetching metadata from: https://nhentai.net/g/259903/ +2026-01-06 20:42:55,750 - INFO - Updating metadata for: Ebony Family mating practices (english) +2026-01-06 20:42:55,750 - INFO - Searching metadata for: Ebony Family mating practices (english) +2026-01-06 20:42:55,934 - INFO - Fetching metadata from: https://nhentai.net/g/600824/ +2026-01-06 20:42:56,154 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 20:42:56,155 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 20:42:56,394 - INFO - Fetching metadata from: https://nhentai.net/g/537310/ +2026-01-06 20:42:56,599 - INFO - Updating metadata for: Furachina_Jukujo_(2021) +2026-01-06 20:42:56,599 - INFO - Searching metadata for: Furachina Jukujo +2026-01-06 20:42:56,756 - INFO - Searching MangaUpdates for: Furachina Jukujo +2026-01-06 20:42:57,076 - INFO - Updating metadata for: Kosmos ga Saita Hi ni Ch +2026-01-06 20:42:57,076 - INFO - Searching metadata for: Kosmos ga Saita Hi ni Ch +2026-01-06 20:42:57,381 - INFO - Fetching metadata from: https://nhentai.net/g/603988/ +2026-01-06 20:42:57,607 - INFO - Updating metadata for: [Airandou] Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-06 20:42:57,607 - INFO - Searching metadata for: Airandou Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-06 20:42:57,867 - INFO - Fetching metadata from: https://nhentai.net/g/590457/ +2026-01-06 20:42:58,102 - INFO - Updating metadata for: oni_no_musume_datte_konkatsu_shitai +2026-01-06 20:42:58,102 - INFO - Searching metadata for: oni no musume datte konkatsu shitai +2026-01-06 20:42:58,358 - INFO - Fetching metadata from: https://nhentai.net/g/342762/ +2026-01-06 20:42:58,553 - INFO - Updating metadata for: answer_checking +2026-01-06 20:42:58,553 - INFO - Searching metadata for: answer checking +2026-01-06 20:42:58,705 - INFO - Fetching metadata from: https://nhentai.net/g/535244/ +2026-01-06 20:42:58,890 - INFO - Updating metadata for: big_sis_masturbation_life_my_masturbation_right_belongs_to_my_older_step_sisters +2026-01-06 20:42:58,891 - INFO - Searching metadata for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-06 20:42:59,123 - INFO - Searching MangaUpdates for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-06 20:42:59,563 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-06 20:42:59,564 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-06 20:42:59,870 - INFO - Searching metadata for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-06 20:43:00,194 - INFO - Searching MangaUpdates for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-06 20:43:00,667 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 20:43:00,668 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-06 20:43:00,997 - INFO - Fetching metadata from: https://nhentai.net/g/492943/ +2026-01-06 20:43:01,251 - INFO - Updating metadata for: maid_slave_collection +2026-01-06 20:43:01,252 - INFO - Searching metadata for: maid slave collection +2026-01-06 20:43:01,454 - INFO - Fetching metadata from: https://nhentai.net/g/601115/ +2026-01-06 20:43:01,861 - INFO - Updating metadata for: lemon_honeymoon +2026-01-06 20:43:01,862 - INFO - Searching metadata for: lemon honeymoon +2026-01-06 20:43:02,059 - INFO - Fetching metadata from: https://nhentai.net/g/524298/ +2026-01-06 20:43:02,245 - INFO - Updating metadata for: shall_i_get_it_out_for_you_mom +2026-01-06 20:43:02,245 - INFO - Searching metadata for: shall i get it out for you mom +2026-01-06 20:43:02,536 - INFO - Fetching metadata from: https://nhentai.net/g/537397/ +2026-01-06 20:43:02,743 - INFO - Updating metadata for: family_plan_toono_suika_chapter +2026-01-06 20:43:02,744 - INFO - Searching metadata for: family plan toono suika chapter +2026-01-06 20:43:02,915 - INFO - Searching MangaUpdates for: family plan toono suika chapter +2026-01-06 20:43:03,181 - INFO - Updating metadata for: temptation_of_big_tits_elder_sister +2026-01-06 20:43:03,181 - INFO - Searching metadata for: temptation of big tits elder sister +2026-01-06 20:43:03,376 - INFO - Fetching metadata from: https://nhentai.net/g/512343/ +2026-01-06 20:43:03,567 - INFO - Updating metadata for: musuko_no_tomodachi_incubus_ni_miryou_sareta_yanmama_wa_mesu_ni_naru +2026-01-06 20:43:03,569 - INFO - Searching metadata for: musuko no tomodachi incubus ni miryou sareta yanmama wa mesu ni naru +2026-01-06 20:43:03,913 - INFO - Fetching metadata from: https://nhentai.net/g/521491/ +2026-01-06 20:43:04,138 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-06 20:43:04,138 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-06 20:43:04,400 - INFO - Searching metadata for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-06 20:43:04,637 - INFO - Searching MangaUpdates for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-06 20:43:05,228 - INFO - Updating metadata for: jukujo_sentai_paiters_chapter +2026-01-06 20:43:05,228 - INFO - Searching metadata for: jukujo sentai paiters chapter +2026-01-06 20:43:05,388 - INFO - Searching MangaUpdates for: jukujo sentai paiters chapter +2026-01-06 20:43:05,703 - INFO - Updating metadata for: ane_to_kanojo_to_hamedori_3p_shitemita +2026-01-06 20:43:05,704 - INFO - Searching metadata for: ane to kanojo to hamedori 3p shitemita +2026-01-06 20:43:05,928 - INFO - Searching MangaUpdates for: ane to kanojo to hamedori 3p shitemita +2026-01-06 20:43:06,274 - INFO - Updating metadata for: ogre_girl_tades_favorite_things +2026-01-06 20:43:06,274 - INFO - Searching metadata for: ogre girl tades favorite things +2026-01-06 20:43:06,424 - INFO - Searching MangaUpdates for: ogre girl tades favorite things +2026-01-06 20:43:07,038 - INFO - Updating metadata for: [Izayoi no Kiki] Incest Room [English] [Tigoris Translates] +2026-01-06 20:43:07,039 - INFO - Searching metadata for: Izayoi no Kiki Incest Room [English] [Tigoris Translates] +2026-01-06 20:43:07,272 - INFO - Fetching metadata from: https://nhentai.net/g/615902/ +2026-01-06 20:43:07,552 - INFO - Updating metadata for: trap_shiki_hunting +2026-01-06 20:43:07,552 - INFO - Searching metadata for: trap shiki hunting +2026-01-06 20:43:07,745 - INFO - Searching MangaUpdates for: trap shiki hunting +2026-01-06 20:43:07,963 - INFO - Updating metadata for: hetappi_whiteday +2026-01-06 20:43:07,964 - INFO - Searching metadata for: hetappi whiteday +2026-01-06 20:43:08,113 - INFO - Searching MangaUpdates for: hetappi whiteday +2026-01-06 20:43:08,321 - INFO - Updating metadata for: family_control +2026-01-06 20:43:08,321 - INFO - Searching metadata for: family control +2026-01-06 20:43:08,598 - INFO - Fetching metadata from: https://nhentai.net/g/619340/ +2026-01-06 20:43:08,818 - INFO - Updating metadata for: a_story_of_my_oneesan_who_loves_me_too_much +2026-01-06 20:43:08,818 - INFO - Searching metadata for: a story of my oneesan who loves me too much +2026-01-06 20:43:09,103 - INFO - Searching MangaUpdates for: a story of my oneesan who loves me too much +2026-01-06 20:43:09,605 - INFO - Updating metadata for: anemone_yuusuke_chapter_1x +2026-01-06 20:43:09,605 - INFO - Searching metadata for: anemone yuusuke chapter 1x +2026-01-06 20:43:09,767 - INFO - Searching MangaUpdates for: anemone yuusuke chapter 1x +2026-01-06 20:43:10,382 - INFO - Updating metadata for: [Shirono Mahiro] Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-06 20:43:10,382 - INFO - Searching metadata for: Shirono Mahiro Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-06 20:43:10,644 - INFO - Fetching metadata from: https://nhentai.net/g/254693/ +2026-01-06 20:43:10,943 - INFO - Updating metadata for: [Itaba Hiroshi] Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-06 20:43:10,944 - INFO - Searching metadata for: Itaba Hiroshi Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-06 20:43:11,123 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-06 20:43:11,435 - INFO - Updating metadata for: [Shirono Mahiro] Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-06 20:43:11,435 - INFO - Searching metadata for: Shirono Mahiro Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-06 20:43:11,620 - INFO - Searching metadata for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-06 20:43:11,802 - INFO - Searching MangaUpdates for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-06 20:43:12,074 - INFO - Updating metadata for: twentyfour_seven_sex_with_my_stepsister +2026-01-06 20:43:12,075 - INFO - Searching metadata for: twentyfour seven sex with my stepsister +2026-01-06 20:43:12,228 - INFO - Searching MangaUpdates for: twentyfour seven sex with my stepsister +2026-01-06 20:43:12,576 - INFO - Updating metadata for: summer_stay_in +2026-01-06 20:43:12,577 - INFO - Searching metadata for: summer stay in +2026-01-06 20:43:12,784 - INFO - Fetching metadata from: https://nhentai.net/g/549172/ +2026-01-06 20:43:13,016 - INFO - Updating metadata for: the_romantic_ritual_with_fox_goddess_yuukosan_chapter +2026-01-06 20:43:13,017 - INFO - Searching metadata for: the romantic ritual with fox goddess yuukosan chapter +2026-01-06 20:43:13,209 - INFO - Searching MangaUpdates for: the romantic ritual with fox goddess yuukosan chapter +2026-01-06 20:43:13,636 - INFO - Updating metadata for: ookii_gimai +2026-01-06 20:43:13,637 - INFO - Searching metadata for: ookii gimai +2026-01-06 20:43:13,808 - INFO - Fetching metadata from: https://nhentai.net/g/555115/ +2026-01-06 20:43:14,026 - INFO - Updating metadata for: sleepwalk_sex_with_your_crazy_stepbrother +2026-01-06 20:43:14,026 - INFO - Searching metadata for: sleepwalk sex with your crazy stepbrother +2026-01-06 20:43:14,202 - INFO - Fetching metadata from: https://nhentai.net/g/545786/ +2026-01-06 20:43:14,486 - INFO - Updating metadata for: [Shirono Mahiro] Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-06 20:43:14,486 - INFO - Searching metadata for: Shirono Mahiro Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-06 20:43:14,728 - INFO - Searching metadata for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-06 20:43:14,934 - INFO - Searching MangaUpdates for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-06 20:43:15,300 - INFO - Updating metadata for: selfish_boyfriend_and_the_gentle_girlfriend +2026-01-06 20:43:15,300 - INFO - Searching metadata for: selfish boyfriend and the gentle girlfriend +2026-01-06 20:43:15,502 - INFO - Fetching metadata from: https://nhentai.net/g/257734/ +2026-01-06 20:43:15,698 - INFO - Updating metadata for: [NT Labo (NT Robo)] Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-06 20:43:15,698 - INFO - Searching metadata for: NT Labo (NT Robo) Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-06 20:43:15,981 - INFO - Fetching metadata from: https://nhentai.net/g/261648/ +2026-01-06 20:43:16,213 - INFO - Updating metadata for: until_my_mother_in_law_is_pregnant +2026-01-06 20:43:16,213 - INFO - Searching metadata for: until my mother in law is pregnant +2026-01-06 20:43:16,508 - INFO - Fetching metadata from: https://nhentai.net/g/329242/ +2026-01-06 20:43:16,736 - INFO - Updating metadata for: grand_discovery_of_kink +2026-01-06 20:43:16,737 - INFO - Searching metadata for: grand discovery of kink +2026-01-06 20:43:16,906 - INFO - Searching MangaUpdates for: grand discovery of kink +2026-01-06 20:43:17,125 - INFO - Updating metadata for: happy_life_amagami +2026-01-06 20:43:17,126 - INFO - Searching metadata for: happy life amagami +2026-01-06 20:43:17,309 - INFO - Searching MangaUpdates for: happy life amagami +2026-01-06 20:43:17,516 - INFO - Updating metadata for: one_shot_a_summer +2026-01-06 20:43:17,516 - INFO - Searching metadata for: one shot a summer +2026-01-06 20:43:17,806 - INFO - Fetching metadata from: https://nhentai.net/g/500042/ +2026-01-06 20:43:18,030 - INFO - Updating metadata for: bath_time_with_big_sis +2026-01-06 20:43:18,031 - INFO - Searching metadata for: bath time with big sis +2026-01-06 20:43:18,233 - INFO - Fetching metadata from: https://nhentai.net/g/596905/ +2026-01-06 20:43:18,465 - INFO - Updating metadata for: family_x +2026-01-06 20:43:18,466 - INFO - Searching metadata for: family x +2026-01-06 20:43:18,691 - INFO - Fetching metadata from: https://nhentai.net/g/620563/ +2026-01-06 20:43:18,894 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-06 20:43:18,894 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-06 20:43:19,112 - INFO - Fetching metadata from: https://nhentai.net/g/460957/ +2026-01-06 20:43:19,307 - INFO - Updating metadata for: [Chotto B-sen] A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-06 20:43:19,308 - INFO - Searching metadata for: Chotto B-sen A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-06 20:43:19,773 - INFO - Fetching metadata from: https://nhentai.net/g/473274/ +2026-01-06 20:43:19,963 - INFO - Updating metadata for: haunted_property_chapter +2026-01-06 20:43:19,963 - INFO - Searching metadata for: haunted property chapter +2026-01-06 20:43:20,120 - INFO - Searching MangaUpdates for: haunted property chapter +2026-01-06 20:43:20,376 - INFO - Updating metadata for: imouto_aoba +2026-01-06 20:43:20,377 - INFO - Searching metadata for: imouto aoba +2026-01-06 20:43:20,532 - INFO - Searching MangaUpdates for: imouto aoba +2026-01-06 20:43:20,706 - INFO - Updating metadata for: onehundred_my_older_sister_who_is_sick_after_illness +2026-01-06 20:43:20,706 - INFO - Searching metadata for: onehundred my older sister who is sick after illness +2026-01-06 20:43:20,871 - INFO - Searching MangaUpdates for: onehundred my older sister who is sick after illness +2026-01-06 20:43:21,207 - INFO - Updating metadata for: that_person_and_my_queen_special_edition +2026-01-06 20:43:21,207 - INFO - Searching metadata for: that person and my queen special edition +2026-01-06 20:43:21,424 - INFO - Fetching metadata from: https://nhentai.net/g/600892/ +2026-01-06 20:43:21,628 - INFO - Updating metadata for: delima +2026-01-06 20:43:21,629 - INFO - Searching metadata for: delima +2026-01-06 20:43:21,845 - INFO - Fetching metadata from: https://nhentai.net/g/426364/ +2026-01-06 20:43:22,106 - INFO - Updating metadata for: that_bitchy_boss_is_my_fuck_buddy +2026-01-06 20:43:22,107 - INFO - Searching metadata for: that bitchy boss is my fuck buddy +2026-01-06 20:43:22,345 - INFO - Fetching metadata from: https://nhentai.net/g/577154/ +2026-01-06 20:43:22,638 - INFO - Updating metadata for: Niku Benki Kanojo no Usui-san _ 육변기 여친의 우스이 양 +2026-01-06 20:43:22,639 - INFO - Searching metadata for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-06 20:43:22,876 - INFO - Searching MangaUpdates for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-06 20:43:23,222 - INFO - Updating metadata for: a_slutty_old_lady_will_tell_how_to_make_her_slutty_daughter_fall_for_you +2026-01-06 20:43:23,222 - INFO - Searching metadata for: a slutty old lady will tell how to make her slutty daughter fall for you +2026-01-06 20:43:23,593 - INFO - Fetching metadata from: https://nhentai.net/g/393878/ +2026-01-06 20:43:23,826 - INFO - Updating metadata for: erotic_teacher_desperately +2026-01-06 20:43:23,826 - INFO - Searching metadata for: erotic teacher desperately +2026-01-06 20:43:24,040 - INFO - Fetching metadata from: https://nhentai.net/g/170003/ +2026-01-06 20:43:24,248 - INFO - Updating metadata for: [36p] Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-06 20:43:24,248 - INFO - Searching metadata for: 36p Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-06 20:43:24,448 - INFO - Fetching metadata from: https://nhentai.net/g/596901/ +2026-01-06 20:43:24,686 - INFO - Updating metadata for: the_housewives_of_the_luxury_apartment_are_to_dissatisfied_with_their_desires +2026-01-06 20:43:24,686 - INFO - Searching metadata for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-06 20:43:24,882 - INFO - Searching MangaUpdates for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-06 20:43:25,645 - INFO - Updating metadata for: surrogacy_the_case_of_yuka_shirakawa +2026-01-06 20:43:25,645 - INFO - Searching metadata for: surrogacy the case of yuka shirakawa +2026-01-06 20:43:25,836 - INFO - Fetching metadata from: https://nhentai.net/g/549276/ +2026-01-06 20:43:26,101 - INFO - Updating metadata for: [Yue] Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-06 20:43:26,102 - INFO - Searching metadata for: Yue Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-06 20:43:26,604 - INFO - Searching metadata for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-06 20:43:27,206 - INFO - Searching MangaUpdates for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-06 20:43:28,146 - INFO - Updating metadata for: my_relationship_with_my_sister +2026-01-06 20:43:28,147 - INFO - Searching metadata for: my relationship with my sister +2026-01-06 20:43:28,331 - INFO - Fetching metadata from: https://nhentai.net/g/584304/ +2026-01-06 20:43:28,519 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-06 20:43:28,519 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-06 20:43:28,856 - INFO - Fetching metadata from: https://nhentai.net/g/419645/ +2026-01-06 20:43:29,063 - INFO - Updating metadata for: living_together_with_the_buxom_female_bully +2026-01-06 20:43:29,064 - INFO - Searching metadata for: living together with the buxom female bully +2026-01-06 20:43:29,272 - INFO - Fetching metadata from: https://nhentai.net/g/610208/ +2026-01-06 20:43:29,462 - INFO - Updating metadata for: how_to_build_cock +2026-01-06 20:43:29,462 - INFO - Searching metadata for: how to build cock +2026-01-06 20:43:29,739 - INFO - Fetching metadata from: https://nhentai.net/g/381583/ +2026-01-06 20:43:29,969 - INFO - Updating metadata for: [BNO (Utagawa Yosiero)] My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-06 20:43:29,970 - INFO - Searching metadata for: BNO (Utagawa Yosiero) My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-06 20:43:30,253 - INFO - Fetching metadata from: https://nhentai.net/g/599069/ +2026-01-06 20:43:30,478 - INFO - Updating metadata for: my_oyakodon +2026-01-06 20:43:30,478 - INFO - Searching metadata for: my oyakodon +2026-01-06 20:43:30,746 - INFO - Fetching metadata from: https://nhentai.net/g/618832/ +2026-01-06 20:43:30,943 - INFO - Updating metadata for: daisuki_na_classmate_ni_shikottemorautame +2026-01-06 20:43:30,943 - INFO - Searching metadata for: daisuki na classmate ni shikottemorautame +2026-01-06 20:43:31,187 - INFO - Searching MangaUpdates for: daisuki na classmate ni shikottemorautame +2026-01-06 20:43:31,560 - INFO - Updating metadata for: enji_ni_somaru +2026-01-06 20:43:31,560 - INFO - Searching metadata for: enji ni somaru +2026-01-06 20:43:31,775 - INFO - Fetching metadata from: https://nhentai.net/g/608666/ +2026-01-06 20:43:32,052 - INFO - Updating metadata for: daily_life_with_my_sister_who_i_dont +2026-01-06 20:43:32,052 - INFO - Searching metadata for: daily life with my sister who i dont +2026-01-06 20:43:32,275 - INFO - Searching MangaUpdates for: daily life with my sister who i dont +2026-01-06 20:43:32,614 - INFO - Updating metadata for: better_than_sex +2026-01-06 20:43:32,614 - INFO - Searching metadata for: better than sex +2026-01-06 20:43:32,858 - INFO - Fetching metadata from: https://nhentai.net/g/580485/ +2026-01-06 20:43:33,151 - INFO - Updating metadata for: do_you_like_an_untidy_older_sister +2026-01-06 20:43:33,151 - INFO - Searching metadata for: do you like an untidy older sister +2026-01-06 20:43:33,861 - INFO - Searching MangaUpdates for: do you like an untidy older sister +2026-01-06 20:43:34,161 - INFO - Updating metadata for: [R Koubou (Ruzi)] Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-06 20:43:34,161 - INFO - Searching metadata for: R Koubou (Ruzi) Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-06 20:43:34,624 - INFO - Searching metadata for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-06 20:43:35,050 - INFO - Searching MangaUpdates for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-06 20:43:35,789 - INFO - Updating metadata for: sibling_with_sister +2026-01-06 20:43:35,789 - INFO - Searching metadata for: sibling with sister +2026-01-06 20:43:35,969 - INFO - Fetching metadata from: https://nhentai.net/g/501918/ +2026-01-06 20:43:36,171 - INFO - Updating metadata for: gikei_ni_netorare_ochita_tsubaki +2026-01-06 20:43:36,172 - INFO - Searching metadata for: gikei ni netorare ochita tsubaki +2026-01-06 20:43:36,400 - INFO - Searching MangaUpdates for: gikei ni netorare ochita tsubaki +2026-01-06 20:43:36,701 - INFO - Updating metadata for: the_festival_of_summers_lustful_traditions +2026-01-06 20:43:36,701 - INFO - Searching metadata for: the festival of summers lustful traditions +2026-01-06 20:43:36,895 - INFO - Searching MangaUpdates for: the festival of summers lustful traditions +2026-01-06 20:43:37,218 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-06 20:43:37,218 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-06 20:43:37,537 - INFO - Fetching metadata from: https://nhentai.net/g/502051/ +2026-01-06 20:43:37,756 - INFO - Updating metadata for: can_you_really_use_this_app_to_fuck_different_species +2026-01-06 20:43:37,756 - INFO - Searching metadata for: can you really use this app to fuck different species +2026-01-06 20:43:38,043 - INFO - Fetching metadata from: https://nhentai.net/g/517152/ +2026-01-06 20:43:38,397 - INFO - Updating metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-06 20:43:38,397 - INFO - Searching metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-06 20:43:38,851 - INFO - Fetching metadata from: https://nhentai.net/g/526048/ +2026-01-06 20:43:39,164 - INFO - Updating metadata for: boku_no_misatan +2026-01-06 20:43:39,164 - INFO - Searching metadata for: boku no misatan +2026-01-06 20:43:39,368 - INFO - Searching MangaUpdates for: boku no misatan +2026-01-06 20:43:39,581 - INFO - Updating metadata for: [Wakamatsu] Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-06 20:43:39,581 - INFO - Searching metadata for: Wakamatsu Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-06 20:43:39,904 - INFO - Fetching metadata from: https://nhentai.net/g/571054/ +2026-01-06 20:43:40,093 - INFO - Updating metadata for: thats_my_girl +2026-01-06 20:43:40,093 - INFO - Searching metadata for: thats my girl +2026-01-06 20:43:40,259 - INFO - Searching MangaUpdates for: thats my girl +2026-01-06 20:43:40,522 - INFO - Updating metadata for: [Juna Juna Juice] Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-06 20:43:40,523 - INFO - Searching metadata for: Juna Juna Juice Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-06 20:43:40,701 - INFO - Fetching metadata from: https://nhentai.net/g/594305/ +2026-01-06 20:43:40,911 - INFO - Updating metadata for: when_i_confessed_to_the_girl_im_interested_in_i_wasnt_allowed_to_go_out_with_her_but_was_given_the_ok_for_childmaking +2026-01-06 20:43:40,912 - INFO - Searching metadata for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-06 20:43:41,268 - INFO - Searching MangaUpdates for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-06 20:43:41,860 - INFO - Updating metadata for: the_mother_of_the_oba_household +2026-01-06 20:43:41,860 - INFO - Searching metadata for: the mother of the oba household +2026-01-06 20:43:42,115 - INFO - Fetching metadata from: https://nhentai.net/g/543837/ +2026-01-06 20:43:42,434 - INFO - Updating metadata for: [UC] Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-06 20:43:42,435 - INFO - Searching metadata for: UC Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-06 20:43:42,842 - INFO - Fetching metadata from: https://nhentai.net/g/399461/ +2026-01-06 20:43:43,140 - INFO - Updating metadata for: [Kudamono Monogatari (Kuroishi Ringo)] Puraibe to Joousama - Private Queen [Eng] +2026-01-06 20:43:43,140 - INFO - Searching metadata for: Kudamono Monogatari (Kuroishi Ringo) Puraibe to Joousama - Private Queen [Eng] +2026-01-06 20:43:43,346 - INFO - Fetching metadata from: https://nhentai.net/g/602699/ +2026-01-06 20:43:43,592 - INFO - Updating metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-06 20:43:43,592 - INFO - Searching metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-06 20:43:43,806 - INFO - Searching MangaUpdates for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-06 20:43:44,473 - INFO - Updating metadata for: [Hakukoukai (Shiramizu Mizuchi)] Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-06 20:43:44,473 - INFO - Searching metadata for: Hakukoukai (Shiramizu Mizuchi) Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-06 20:43:44,651 - INFO - Searching metadata for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-06 20:43:44,854 - INFO - Searching MangaUpdates for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-06 20:43:45,478 - INFO - Updating metadata for: [Sakai Hamachi] Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-06 20:43:45,478 - INFO - Searching metadata for: Sakai Hamachi Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-06 20:43:45,705 - INFO - Fetching metadata from: https://nhentai.net/g/600615/ +2026-01-06 20:43:46,009 - INFO - Updating metadata for: cock_that_makes_tomboy_sisters_tap_out +2026-01-06 20:43:46,009 - INFO - Searching metadata for: cock that makes tomboy sisters tap out +2026-01-06 20:43:46,202 - INFO - Fetching metadata from: https://nhentai.net/g/585217/ +2026-01-06 20:43:46,398 - INFO - Updating metadata for: big_sis_ayaka +2026-01-06 20:43:46,399 - INFO - Searching metadata for: big sis ayaka +2026-01-06 20:43:46,600 - INFO - Fetching metadata from: https://nhentai.net/g/608897/ +2026-01-06 20:43:46,953 - INFO - Updating metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-06 20:43:46,953 - INFO - Searching metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-06 20:43:47,196 - INFO - Fetching metadata from: https://nhentai.net/g/36404/ +2026-01-06 20:43:47,379 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge_chapter_ +2026-01-06 20:43:47,379 - INFO - Searching metadata for: big boobs shadowy character takes revenge chapter +2026-01-06 20:43:47,530 - INFO - Searching MangaUpdates for: big boobs shadowy character takes revenge chapter +2026-01-06 20:43:47,879 - INFO - Updating metadata for: [Shirono Mahiro] Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-06 20:43:47,879 - INFO - Searching metadata for: Shirono Mahiro Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-06 20:43:48,081 - INFO - Fetching metadata from: https://nhentai.net/g/184288/ +2026-01-06 20:43:48,288 - INFO - Updating metadata for: [Nacchuushou (Amazon)] Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-06 20:43:48,288 - INFO - Searching metadata for: Nacchuushou (Amazon) Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-06 20:43:48,797 - INFO - Fetching metadata from: https://nhentai.net/g/604264/ +2026-01-06 20:43:49,007 - INFO - Updating metadata for: im_his_little_sister_slave +2026-01-06 20:43:49,007 - INFO - Searching metadata for: im his little sister slave +2026-01-06 20:43:49,204 - INFO - Searching MangaUpdates for: im his little sister slave +2026-01-06 20:43:49,504 - INFO - Updating metadata for: Oretachi,_Kore_Kara_(2024) +2026-01-06 20:43:49,505 - INFO - Searching metadata for: Oretachi, Kore Kara +2026-01-06 20:43:49,673 - INFO - Searching MangaUpdates for: Oretachi, Kore Kara +2026-01-06 20:43:50,236 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-06 20:43:50,237 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-06 20:43:50,486 - INFO - Fetching metadata from: https://nhentai.net/g/572070/ +2026-01-06 20:43:50,800 - INFO - Updating metadata for: Sunday Funday [AI GENERATED] +2026-01-06 20:43:50,800 - INFO - Searching metadata for: Sunday Funday [AI GENERATED] +2026-01-06 20:43:50,977 - INFO - Fetching metadata from: https://nhentai.net/g/603171/ +2026-01-06 20:43:51,169 - INFO - Updating metadata for: succubus_pearl_bonus_book +2026-01-06 20:43:51,170 - INFO - Searching metadata for: succubus pearl bonus book +2026-01-06 20:43:51,349 - INFO - Fetching metadata from: https://nhentai.net/g/346344/ +2026-01-06 20:43:51,556 - INFO - Updating metadata for: sibling_switch +2026-01-06 20:43:51,557 - INFO - Searching metadata for: sibling switch +2026-01-06 20:43:51,772 - INFO - Fetching metadata from: https://nhentai.net/g/469099/ +2026-01-06 20:43:52,005 - INFO - Updating metadata for: pantsu_o_haita_dake_nanoni +2026-01-06 20:43:52,005 - INFO - Searching metadata for: pantsu o haita dake nanoni +2026-01-06 20:43:52,212 - INFO - Fetching metadata from: https://nhentai.net/g/548841/ +2026-01-06 20:43:52,412 - INFO - Updating metadata for: [Shiraishi Nagisa] Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-06 20:43:52,413 - INFO - Searching metadata for: Shiraishi Nagisa Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-06 20:43:52,713 - INFO - Fetching metadata from: https://nhentai.net/g/407654/ +2026-01-06 20:43:52,911 - INFO - Updating metadata for: gyan_colle +2026-01-06 20:43:52,911 - INFO - Searching metadata for: gyan colle +2026-01-06 20:43:53,074 - INFO - Fetching metadata from: https://nhentai.net/g/611983/ +2026-01-06 20:43:53,317 - INFO - Updating metadata for: didnt_you_know +2026-01-06 20:43:53,317 - INFO - Searching metadata for: didnt you know +2026-01-06 20:43:53,473 - INFO - Searching MangaUpdates for: didnt you know +2026-01-06 20:43:53,748 - INFO - Updating metadata for: [Yue] Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-06 20:43:53,749 - INFO - Searching metadata for: Yue Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-06 20:43:54,047 - INFO - Fetching metadata from: https://nhentai.net/g/603962/ +2026-01-06 20:43:54,247 - INFO - Updating metadata for: [Kakinotanehitotsubu (Kakino Nashiko)] Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-06 20:43:54,248 - INFO - Searching metadata for: Kakinotanehitotsubu (Kakino Nashiko) Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-06 20:43:54,530 - INFO - Fetching metadata from: https://nhentai.net/g/484501/ +2026-01-06 20:43:54,717 - INFO - Updating metadata for: steamed_bun_kiss +2026-01-06 20:43:54,717 - INFO - Searching metadata for: steamed bun kiss +2026-01-06 20:43:54,887 - INFO - Fetching metadata from: https://nhentai.net/g/166671/ +2026-01-06 20:43:55,116 - INFO - Updating metadata for: [Pipasuta (Pipa)] Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-06 20:43:55,116 - INFO - Searching metadata for: Pipasuta (Pipa) Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-06 20:43:55,364 - INFO - Fetching metadata from: https://nhentai.net/g/572821/ +2026-01-06 20:43:55,618 - INFO - Updating metadata for: madam_complex +2026-01-06 20:43:55,618 - INFO - Searching metadata for: madam complex +2026-01-06 20:43:55,802 - INFO - Fetching metadata from: https://nhentai.net/g/595613/ +2026-01-06 20:43:56,019 - INFO - Updating metadata for: [Puppukupu (Kawaisaw)] Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-06 20:43:56,021 - INFO - Searching metadata for: Puppukupu (Kawaisaw) Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-06 20:43:56,232 - INFO - Searching metadata for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-06 20:43:56,439 - INFO - Searching MangaUpdates for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-06 20:43:56,835 - INFO - Updating metadata for: aggressive_mama +2026-01-06 20:43:56,835 - INFO - Searching metadata for: aggressive mama +2026-01-06 20:43:57,023 - INFO - Fetching metadata from: https://nhentai.net/g/467578/ +2026-01-06 20:43:57,226 - INFO - Updating metadata for: [Natsuzo] The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-06 20:43:57,226 - INFO - Searching metadata for: Natsuzo The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-06 20:43:57,504 - INFO - Fetching metadata from: https://nhentai.net/g/604150/ +2026-01-06 20:43:57,690 - INFO - Updating metadata for: in_a_room_where_you_cant_leave_unless_you_have_sex +2026-01-06 20:43:57,690 - INFO - Searching metadata for: in a room where you cant leave unless you have sex +2026-01-06 20:43:57,966 - INFO - Searching MangaUpdates for: in a room where you cant leave unless you have sex +2026-01-06 20:43:58,447 - INFO - Updating metadata for: cattle_sister +2026-01-06 20:43:58,448 - INFO - Searching metadata for: cattle sister +2026-01-06 20:43:58,651 - INFO - Fetching metadata from: https://nhentai.net/g/614951/ +2026-01-06 20:43:58,862 - INFO - Updating metadata for: we_went_overboard_with_our_home_work_this_evening +2026-01-06 20:43:58,862 - INFO - Searching metadata for: we went overboard with our home work this evening +2026-01-06 20:43:59,050 - INFO - Fetching metadata from: https://nhentai.net/g/533599/ +2026-01-06 20:43:59,710 - INFO - Updating metadata for: Untitled Folder +2026-01-06 20:43:59,710 - INFO - Searching metadata for: Untitled Folder +2026-01-06 20:43:59,865 - INFO - Searching MangaUpdates for: Untitled Folder +2026-01-06 20:44:00,135 - INFO - Updating metadata for: nozo_nico_don +2026-01-06 20:44:00,135 - INFO - Searching metadata for: nozo nico don +2026-01-06 20:44:00,385 - INFO - Fetching metadata from: https://nhentai.net/g/251101/ +2026-01-06 20:44:00,601 - INFO - Updating metadata for: tonari_no_elf_mama +2026-01-06 20:44:00,601 - INFO - Searching metadata for: tonari no elf mama +2026-01-06 20:44:00,863 - INFO - Fetching metadata from: https://nhentai.net/g/614016/ +2026-01-06 20:44:01,131 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 _ Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-06 20:44:01,131 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-06 20:44:01,462 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-06 20:44:02,037 - INFO - Updating metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-06 20:44:02,038 - INFO - Searching metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-06 20:44:02,251 - INFO - Searching MangaUpdates for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-06 20:44:02,899 - INFO - Updating metadata for: boshi_syndrome +2026-01-06 20:44:02,899 - INFO - Searching metadata for: boshi syndrome +2026-01-06 20:44:03,066 - INFO - Fetching metadata from: https://nhentai.net/g/586173/ +2026-01-06 20:44:03,290 - INFO - Updating metadata for: a_trip_back_home +2026-01-06 20:44:03,291 - INFO - Searching metadata for: a trip back home +2026-01-06 20:44:03,558 - INFO - Fetching metadata from: https://nhentai.net/g/241562/ +2026-01-06 20:44:03,764 - INFO - Updating metadata for: obaman_aneman_harem +2026-01-06 20:44:03,765 - INFO - Searching metadata for: obaman aneman harem +2026-01-06 20:44:04,018 - INFO - Fetching metadata from: https://nhentai.net/g/588648/ +2026-01-06 20:44:04,382 - INFO - Updating metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-06 20:44:04,382 - INFO - Searching metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-06 20:44:04,607 - INFO - Searching MangaUpdates for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-06 20:44:05,307 - INFO - Updating metadata for: Take a break from working to fuck +2026-01-06 20:44:05,308 - INFO - Searching metadata for: Take a break from working to fuck +2026-01-06 20:44:05,703 - INFO - Searching MangaUpdates for: Take a break from working to fuck +2026-01-06 20:44:06,076 - INFO - Updating metadata for: paipai_mashimashi_gal_bitch +2026-01-06 20:44:06,077 - INFO - Searching metadata for: paipai mashimashi gal bitch +2026-01-06 20:44:06,277 - INFO - Fetching metadata from: https://nhentai.net/g/555058/ +2026-01-06 20:44:06,487 - INFO - Updating metadata for: [Okashi Koujou] That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-06 20:44:06,488 - INFO - Searching metadata for: Okashi Koujou That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-06 20:44:06,902 - INFO - Fetching metadata from: https://nhentai.net/g/603202/ +2026-01-06 20:44:07,103 - INFO - Updating metadata for: gal_ga_saimin_kakeyou_to_shitara_kaeriuchi_saremashita +2026-01-06 20:44:07,104 - INFO - Searching metadata for: gal ga saimin kakeyou to shitara kaeriuchi saremashita +2026-01-06 20:44:07,395 - INFO - Fetching metadata from: https://nhentai.net/g/575485/ +2026-01-06 20:44:07,605 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-06 20:44:07,606 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-06 20:44:07,902 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-06 20:44:08,199 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-06 20:44:08,552 - INFO - Updating metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san _ Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-06 20:44:08,553 - INFO - Searching metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-06 20:44:08,888 - INFO - Fetching metadata from: https://nhentai.net/g/467602/ +2026-01-06 20:44:09,105 - INFO - Updating metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-06 20:44:09,106 - INFO - Searching metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-06 20:44:09,350 - INFO - Fetching metadata from: https://nhentai.net/g/599736/ +2026-01-06 20:44:09,568 - INFO - Updating metadata for: the_succubus_army_invasion +2026-01-06 20:44:09,568 - INFO - Searching metadata for: the succubus army invasion +2026-01-06 20:44:09,787 - INFO - Fetching metadata from: https://nhentai.net/g/581332/ +2026-01-06 20:44:10,056 - INFO - Updating metadata for: boku_no_misatan_chapter_ +2026-01-06 20:44:10,056 - INFO - Searching metadata for: boku no misatan chapter +2026-01-06 20:44:10,262 - INFO - Searching MangaUpdates for: boku no misatan chapter +2026-01-06 20:44:10,523 - INFO - Updating metadata for: Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-06 20:44:10,523 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-06 20:44:10,743 - INFO - Searching MangaUpdates for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-06 20:44:11,212 - INFO - Updating metadata for: my_tall_and_busty_step_sister_gives +2026-01-06 20:44:11,212 - INFO - Searching metadata for: my tall and busty step sister gives +2026-01-06 20:44:11,416 - INFO - Fetching metadata from: https://nhentai.net/g/591571/ +2026-01-06 20:44:11,636 - INFO - Updating metadata for: about_sadako_being_stuck_on_the_computer_screen +2026-01-06 20:44:11,636 - INFO - Searching metadata for: about sadako being stuck on the computer screen +2026-01-06 20:44:11,852 - INFO - Searching MangaUpdates for: about sadako being stuck on the computer screen +2026-01-06 20:44:12,186 - INFO - Updating metadata for: when_i_lost_the_use_of_my_arms_my_brother_started +2026-01-06 20:44:12,187 - INFO - Searching metadata for: when i lost the use of my arms my brother started +2026-01-06 20:44:12,455 - INFO - Fetching metadata from: https://nhentai.net/g/546227/ +2026-01-06 20:44:12,711 - INFO - Updating metadata for: sister_ss_short_story +2026-01-06 20:44:12,712 - INFO - Searching metadata for: sister ss short story +2026-01-06 20:44:12,901 - INFO - Fetching metadata from: https://nhentai.net/g/589411/ +2026-01-06 20:44:13,155 - INFO - Updating metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC_TRANSLATIONS) +2026-01-06 20:44:13,156 - INFO - Searching metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-06 20:44:13,414 - INFO - Searching MangaUpdates for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-06 20:44:13,983 - INFO - Updating metadata for: motherly_love +2026-01-06 20:44:13,983 - INFO - Searching metadata for: motherly love +2026-01-06 20:44:14,162 - INFO - Fetching metadata from: https://nhentai.net/g/406015/ +2026-01-06 20:44:14,346 - INFO - Updating metadata for: [Satsuki Imonet] Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-06 20:44:14,346 - INFO - Searching metadata for: Satsuki Imonet Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-06 20:44:14,776 - INFO - Searching metadata for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-06 20:44:15,138 - INFO - Searching MangaUpdates for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-06 20:44:15,785 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-06 20:44:15,785 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-06 20:44:16,077 - INFO - Fetching metadata from: https://nhentai.net/g/412142/ +2026-01-06 20:44:16,356 - INFO - Updating metadata for: Suki Kirai Daisuki. Bangaihen _ Love • Hate • Really Love +2026-01-06 20:44:16,357 - INFO - Searching metadata for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-06 20:44:16,543 - INFO - Searching MangaUpdates for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-06 20:44:16,850 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-06 20:44:16,851 - INFO - Searching metadata for: Ginshio Honpo (Ginen) My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-06 20:44:17,265 - INFO - Fetching metadata from: https://nhentai.net/g/563890/ +2026-01-06 20:44:17,494 - INFO - Updating metadata for: playing_the_kings_game_with_a_tanned_jk_oneesan +2026-01-06 20:44:17,494 - INFO - Searching metadata for: playing the kings game with a tanned jk oneesan +2026-01-06 20:44:17,740 - INFO - Searching MangaUpdates for: playing the kings game with a tanned jk oneesan +2026-01-06 20:44:18,085 - INFO - Updating metadata for: 7days_toono_esuke +2026-01-06 20:44:18,085 - INFO - Searching metadata for: 7days toono esuke +2026-01-06 20:44:18,251 - INFO - Fetching metadata from: https://nhentai.net/g/575052/ +2026-01-06 20:44:18,452 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-06 20:44:18,453 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-06 20:44:18,764 - INFO - Fetching metadata from: https://nhentai.net/g/603877/ +2026-01-06 20:44:18,974 - INFO - Updating metadata for: Sex_With_Many_Mamas_(2016) +2026-01-06 20:44:18,975 - INFO - Searching metadata for: Sex With Many Mamas +2026-01-06 20:44:19,130 - INFO - Searching MangaUpdates for: Sex With Many Mamas +2026-01-06 20:44:19,394 - INFO - Updating metadata for: [Kurogane Kenn] Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-06 20:44:19,394 - INFO - Searching metadata for: Kurogane Kenn Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-06 20:44:19,844 - INFO - Fetching metadata from: https://nhentai.net/g/598681/ +2026-01-06 20:44:20,068 - INFO - Updating metadata for: oneechans_toy +2026-01-06 20:44:20,068 - INFO - Searching metadata for: oneechans toy +2026-01-06 20:44:20,217 - INFO - Searching MangaUpdates for: oneechans toy +2026-01-06 20:44:20,605 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-06 20:44:20,606 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-06 20:44:20,864 - INFO - Fetching metadata from: https://nhentai.net/g/519770/ +2026-01-06 20:44:21,078 - INFO - Updating metadata for: when_dad_and_mom_arent_home +2026-01-06 20:44:21,078 - INFO - Searching metadata for: when dad and mom arent home +2026-01-06 20:44:21,297 - INFO - Searching MangaUpdates for: when dad and mom arent home +2026-01-06 20:44:21,523 - INFO - Updating metadata for: succubus_kingdom +2026-01-06 20:44:21,524 - INFO - Searching metadata for: succubus kingdom +2026-01-06 20:44:21,727 - INFO - Fetching metadata from: https://nhentai.net/g/614436/ +2026-01-06 20:44:22,039 - INFO - Updating metadata for: liko_the_mommy_pokemon +2026-01-06 20:44:22,039 - INFO - Searching metadata for: liko the mommy pokemon +2026-01-06 20:44:22,224 - INFO - Searching MangaUpdates for: liko the mommy pokemon +2026-01-06 20:44:22,516 - INFO - Updating metadata for: FireShot +2026-01-06 20:44:22,516 - INFO - Searching metadata for: FireShot +2026-01-06 20:44:22,669 - INFO - Searching MangaUpdates for: FireShot +2026-01-06 20:44:22,839 - INFO - Updating metadata for: getting_along_well_with_my_sister +2026-01-06 20:44:22,839 - INFO - Searching metadata for: getting along well with my sister +2026-01-06 20:44:23,026 - INFO - Fetching metadata from: https://nhentai.net/g/567863/ +2026-01-06 20:44:23,259 - INFO - Updating metadata for: hypnosis_satisfaction +2026-01-06 20:44:23,259 - INFO - Searching metadata for: hypnosis satisfaction +2026-01-06 20:44:23,422 - INFO - Searching MangaUpdates for: hypnosis satisfaction +2026-01-06 20:44:23,710 - INFO - Updating metadata for: otto_no_tame_no_ranshi_o_tanin_no_seishi +2026-01-06 20:44:23,711 - INFO - Searching metadata for: otto no tame no ranshi o tanin no seishi +2026-01-06 20:44:23,969 - INFO - Fetching metadata from: https://nhentai.net/g/551507/ +2026-01-06 20:44:24,176 - INFO - Updating metadata for: [Milkdou Shoukai (Milk Koubou)] Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-06 20:44:24,177 - INFO - Searching metadata for: Milkdou Shoukai (Milk Koubou) Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-06 20:44:24,637 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-06 20:44:24,837 - INFO - Updating metadata for: hikki_mother_fucker +2026-01-06 20:44:24,837 - INFO - Searching metadata for: hikki mother fucker +2026-01-06 20:44:25,018 - INFO - Fetching metadata from: https://nhentai.net/g/287208/ +2026-01-06 20:44:25,215 - INFO - Updating metadata for: meaty_minxes +2026-01-06 20:44:25,216 - INFO - Searching metadata for: meaty minxes +2026-01-06 20:44:25,369 - INFO - Searching MangaUpdates for: meaty minxes +2026-01-06 20:44:25,771 - INFO - Updating metadata for: [Zero no Mono] Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-06 20:44:25,771 - INFO - Searching metadata for: Zero no Mono Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-06 20:44:26,025 - INFO - Fetching metadata from: https://nhentai.net/g/342164/ +2026-01-06 20:44:26,233 - INFO - Updating metadata for: mob_reipu +2026-01-06 20:44:26,233 - INFO - Searching metadata for: mob reipu +2026-01-06 20:44:26,406 - INFO - Fetching metadata from: https://nhentai.net/g/311650/ +2026-01-06 20:44:26,634 - INFO - Updating metadata for: dosukebe_youkai_midaraga_no_goshujinsama +2026-01-06 20:44:26,634 - INFO - Searching metadata for: dosukebe youkai midaraga no goshujinsama +2026-01-06 20:44:26,816 - INFO - Searching MangaUpdates for: dosukebe youkai midaraga no goshujinsama +2026-01-06 20:44:27,112 - INFO - Updating metadata for: [Tobe] Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-06 20:44:27,113 - INFO - Searching metadata for: Tobe Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-06 20:44:27,344 - INFO - Fetching metadata from: https://nhentai.net/g/603385/ +2026-01-06 20:44:27,642 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-06 20:44:27,642 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-06 20:44:27,891 - INFO - Fetching metadata from: https://nhentai.net/g/600993/ +2026-01-06 20:44:28,163 - INFO - Updating metadata for: thermometer_boy_measuring_beast +2026-01-06 20:44:28,163 - INFO - Searching metadata for: thermometer boy measuring beast +2026-01-06 20:44:28,302 - INFO - Searching MangaUpdates for: thermometer boy measuring beast +2026-01-06 20:44:28,588 - INFO - Updating metadata for: broconflict +2026-01-06 20:44:28,589 - INFO - Searching metadata for: broconflict +2026-01-06 20:44:28,735 - INFO - Searching MangaUpdates for: broconflict +2026-01-06 20:44:28,855 - INFO - Updating metadata for: my_little_sisters_are_slutty_orcs +2026-01-06 20:44:28,856 - INFO - Searching metadata for: my little sisters are slutty orcs +2026-01-06 20:44:29,108 - INFO - Fetching metadata from: https://nhentai.net/g/475987/ +2026-01-06 20:44:29,321 - INFO - Updating metadata for: [Merenge Tenmondai (Kugurofu)] D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-06 20:44:29,321 - INFO - Searching metadata for: Merenge Tenmondai (Kugurofu) D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-06 20:44:29,655 - INFO - Fetching metadata from: https://nhentai.net/g/620725/ +2026-01-06 20:44:29,848 - INFO - Updating metadata for: [Nishikawa Kou] Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-06 20:44:29,849 - INFO - Searching metadata for: Nishikawa Kou Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-06 20:44:30,195 - INFO - Fetching metadata from: https://nhentai.net/g/600838/ +2026-01-06 20:44:30,392 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-06 20:44:30,392 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-06 20:44:30,601 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-06 20:44:30,822 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-06 20:44:31,354 - INFO - Updating metadata for: Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love +2026-01-06 20:44:31,354 - INFO - Searching metadata for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-06 20:44:31,861 - INFO - Searching MangaUpdates for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-06 20:44:32,383 - INFO - Updating metadata for: my_sister_uses_my_trash_as_masturbation_material +2026-01-06 20:44:32,384 - INFO - Searching metadata for: my sister uses my trash as masturbation material +2026-01-06 20:44:32,632 - INFO - Fetching metadata from: https://nhentai.net/g/520519/ +2026-01-06 20:44:32,845 - INFO - Updating metadata for: [Pino] Boin [English] +2026-01-06 20:44:32,845 - INFO - Searching metadata for: Pino Boin [English] +2026-01-06 20:44:33,011 - INFO - Fetching metadata from: https://nhentai.net/g/595922/ +2026-01-06 20:44:33,239 - INFO - Updating metadata for: future_detective +2026-01-06 20:44:33,239 - INFO - Searching metadata for: future detective +2026-01-06 20:44:33,416 - INFO - Fetching metadata from: https://nhentai.net/g/170580/ +2026-01-06 20:44:33,705 - INFO - Updating metadata for: what_the_mother_does_for_the_sake_of_the_son +2026-01-06 20:44:33,706 - INFO - Searching metadata for: what the mother does for the sake of the son +2026-01-06 20:44:33,938 - INFO - Fetching metadata from: https://nhentai.net/g/532249/ +2026-01-06 20:44:34,160 - INFO - Updating metadata for: [Tawara Hiryuu] Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-06 20:44:34,160 - INFO - Searching metadata for: Tawara Hiryuu Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-06 20:44:34,423 - INFO - Searching metadata for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-06 20:44:34,661 - INFO - Searching MangaUpdates for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-06 20:44:35,167 - INFO - Updating metadata for: gifu_to_shimai_no_kizuna +2026-01-06 20:44:35,167 - INFO - Searching metadata for: gifu to shimai no kizuna +2026-01-06 20:44:35,462 - INFO - Fetching metadata from: https://nhentai.net/g/97406/ +2026-01-06 20:44:35,694 - INFO - Updating metadata for: omae_no_you_na_maou_ga_iru_kai +2026-01-06 20:44:35,695 - INFO - Searching metadata for: omae no you na maou ga iru kai +2026-01-06 20:44:36,005 - INFO - Searching MangaUpdates for: omae no you na maou ga iru kai +2026-01-06 20:44:36,383 - INFO - Updating metadata for: if_seems_like_everyone_except_me_has_lost_their_concept_of_eroticism +2026-01-06 20:44:36,383 - INFO - Searching metadata for: if seems like everyone except me has lost their concept of eroticism +2026-01-06 20:44:36,580 - INFO - Searching MangaUpdates for: if seems like everyone except me has lost their concept of eroticism +2026-01-06 20:44:37,473 - INFO - Updating metadata for: oneechan_no_dokusho_jijou +2026-01-06 20:44:37,473 - INFO - Searching metadata for: oneechan no dokusho jijou +2026-01-06 20:44:37,680 - INFO - Searching MangaUpdates for: oneechan no dokusho jijou +2026-01-06 20:44:37,996 - INFO - Updating metadata for: what_friend_do +2026-01-06 20:44:37,997 - INFO - Searching metadata for: what friend do +2026-01-06 20:44:38,220 - INFO - Fetching metadata from: https://nhentai.net/g/601381/ +2026-01-06 20:44:38,427 - INFO - Updating metadata for: kinyoku_ake_no_kyoudai_kankei +2026-01-06 20:44:38,427 - INFO - Searching metadata for: kinyoku ake no kyoudai kankei +2026-01-06 20:44:38,641 - INFO - Searching MangaUpdates for: kinyoku ake no kyoudai kankei +2026-01-06 20:44:39,026 - INFO - Updating metadata for: aniyome_milk_elder_sisterinlaws_milk +2026-01-06 20:44:39,026 - INFO - Searching metadata for: aniyome milk elder sisterinlaws milk +2026-01-06 20:44:39,180 - INFO - Searching MangaUpdates for: aniyome milk elder sisterinlaws milk +2026-01-06 20:44:39,426 - INFO - Updating metadata for: Otouto_Imouto_(2007) +2026-01-06 20:44:39,426 - INFO - Searching metadata for: Otouto Imouto +2026-01-06 20:44:39,637 - INFO - Fetching metadata from: https://nhentai.net/g/617219/ +2026-01-06 20:44:39,869 - INFO - Updating metadata for: idiopathic_erectile_syndrome_when_masturbation_fails +2026-01-06 20:44:39,869 - INFO - Searching metadata for: idiopathic erectile syndrome when masturbation fails +2026-01-06 20:44:40,048 - INFO - Fetching metadata from: https://nhentai.net/g/271977/ +2026-01-06 20:44:40,368 - INFO - Updating metadata for: sluttification_virus_anywhere_anytime_lets_fuck_already +2026-01-06 20:44:40,368 - INFO - Searching metadata for: sluttification virus anywhere anytime lets fuck already +2026-01-06 20:44:40,541 - INFO - Searching MangaUpdates for: sluttification virus anywhere anytime lets fuck already +2026-01-06 20:44:40,943 - INFO - Updating metadata for: [UC] Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-06 20:44:40,943 - INFO - Searching metadata for: UC Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-06 20:44:41,226 - INFO - Fetching metadata from: https://nhentai.net/g/603830/ +2026-01-06 20:44:41,439 - INFO - Updating metadata for: absurd_mother_and_son_incest +2026-01-06 20:44:41,440 - INFO - Searching metadata for: absurd mother and son incest +2026-01-06 20:44:41,626 - INFO - Fetching metadata from: https://nhentai.net/g/359070/ +2026-01-06 20:44:41,826 - INFO - Updating metadata for: [Ringoya (Alp)] Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-06 20:44:41,827 - INFO - Searching metadata for: Ringoya (Alp) Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-06 20:44:42,278 - INFO - Fetching metadata from: https://nhentai.net/g/620273/ +2026-01-06 20:44:42,614 - INFO - Updating metadata for: idol_wa_fan_no_semen_tank_ninshinderella_girls +2026-01-06 20:44:42,614 - INFO - Searching metadata for: idol wa fan no semen tank ninshinderella girls +2026-01-06 20:44:42,866 - INFO - Searching MangaUpdates for: idol wa fan no semen tank ninshinderella girls +2026-01-06 20:44:44,041 - INFO - Updating metadata for: [Tawawa Delivery] Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-06 20:44:44,041 - INFO - Searching metadata for: Tawawa Delivery Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-06 20:44:44,213 - INFO - Searching metadata for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-06 20:44:44,395 - INFO - Searching MangaUpdates for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-06 20:44:44,766 - INFO - Updating metadata for: incha_otouto_ga_nangoku_beach_de_kinpatsu +2026-01-06 20:44:44,767 - INFO - Searching metadata for: incha otouto ga nangoku beach de kinpatsu +2026-01-06 20:44:44,989 - INFO - Searching MangaUpdates for: incha otouto ga nangoku beach de kinpatsu +2026-01-06 20:44:45,421 - INFO - Updating metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-06 20:44:45,421 - INFO - Searching metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-06 20:44:45,604 - INFO - Searching MangaUpdates for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-06 20:44:45,865 - INFO - Updating metadata for: akira_nii_chan_who_ive_always_admired +2026-01-06 20:44:45,865 - INFO - Searching metadata for: akira nii chan who ive always admired +2026-01-06 20:44:46,052 - INFO - Searching MangaUpdates for: akira nii chan who ive always admired +2026-01-06 20:44:46,318 - INFO - Updating metadata for: [NesZ] My farmer aunt is having a problem [English] +2026-01-06 20:44:46,319 - INFO - Searching metadata for: NesZ My farmer aunt is having a problem [English] +2026-01-06 20:44:46,585 - INFO - Fetching metadata from: https://nhentai.net/g/607421/ +2026-01-06 20:44:46,840 - INFO - Updating metadata for: my_ar_glasses_can_see_various_stats_about_my_foster_sister +2026-01-06 20:44:46,840 - INFO - Searching metadata for: my ar glasses can see various stats about my foster sister +2026-01-06 20:44:47,148 - INFO - Fetching metadata from: https://nhentai.net/g/589010/ +2026-01-06 20:44:47,476 - INFO - Updating metadata for: dirty_lessons_improving_your_manhood_chapter_ +2026-01-06 20:44:47,477 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-06 20:44:47,642 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter +2026-01-06 20:44:48,021 - INFO - Updating metadata for: the_story_about_how_i_found_my_soulmate_when +2026-01-06 20:44:48,021 - INFO - Searching metadata for: the story about how i found my soulmate when +2026-01-06 20:44:48,288 - INFO - Fetching metadata from: https://nhentai.net/g/521364/ +2026-01-06 20:44:48,484 - INFO - Updating metadata for: [Hannya san] Forbidden lust +2026-01-06 20:44:48,484 - INFO - Searching metadata for: Hannya san Forbidden lust +2026-01-06 20:44:48,660 - INFO - Fetching metadata from: https://nhentai.net/g/600751/ +2026-01-06 20:44:48,893 - INFO - Updating metadata for: shojo_ane_kangaeru +2026-01-06 20:44:48,893 - INFO - Searching metadata for: shojo ane kangaeru +2026-01-06 20:44:49,090 - INFO - Fetching metadata from: https://nhentai.net/g/447249/ +2026-01-06 20:44:49,327 - INFO - Updating metadata for: neechan_to_sei_shori_shiteru +2026-01-06 20:44:49,327 - INFO - Searching metadata for: neechan to sei shori shiteru +2026-01-06 20:44:49,557 - INFO - Searching MangaUpdates for: neechan to sei shori shiteru +2026-01-06 20:44:49,862 - INFO - Updating metadata for: [moNmomo] Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-06 20:44:49,862 - INFO - Searching metadata for: moNmomo Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-06 20:44:50,083 - INFO - Fetching metadata from: https://nhentai.net/g/618662/ +2026-01-06 20:44:50,296 - INFO - Updating metadata for: fushoku_tensei_tamashii_kawattara_honki_dasu +2026-01-06 20:44:50,296 - INFO - Searching metadata for: fushoku tensei tamashii kawattara honki dasu +2026-01-06 20:44:50,483 - INFO - Fetching metadata from: https://nhentai.net/g/574276/ +2026-01-06 20:44:50,768 - INFO - Updating metadata for: [Mochi-ya (Karoti)] Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-06 20:44:50,768 - INFO - Searching metadata for: Mochi-ya (Karoti) Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-06 20:44:51,078 - INFO - Fetching metadata from: https://nhentai.net/g/620624/ +2026-01-06 20:44:51,299 - INFO - Updating metadata for: i_woke_up_to_my_naked_apron_sister_and_tried_fucking_her +2026-01-06 20:44:51,300 - INFO - Searching metadata for: i woke up to my naked apron sister and tried fucking her +2026-01-06 20:44:51,609 - INFO - Fetching metadata from: https://nhentai.net/g/602663/ +2026-01-06 20:44:51,944 - INFO - Updating metadata for: little_sister_paradise +2026-01-06 20:44:51,944 - INFO - Searching metadata for: little sister paradise +2026-01-06 20:44:52,123 - INFO - Fetching metadata from: https://nhentai.net/g/567713/ +2026-01-06 20:44:52,327 - INFO - Updating metadata for: my_mature_older_sister_the_crazy_convenient_relationship_of_an_older_sister_and_younger_brother_in_their_thirtys +2026-01-06 20:44:52,327 - INFO - Searching metadata for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-06 20:44:52,731 - INFO - Searching MangaUpdates for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-06 20:44:53,178 - INFO - Updating metadata for: sex_season +2026-01-06 20:44:53,178 - INFO - Searching metadata for: sex season +2026-01-06 20:44:53,394 - INFO - Fetching metadata from: https://nhentai.net/g/618390/ +2026-01-06 20:44:53,629 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite _ Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-06 20:44:53,630 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-06 20:44:53,924 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-06 20:44:54,363 - INFO - Updating metadata for: that_pov_sex_thing +2026-01-06 20:44:54,363 - INFO - Searching metadata for: that pov sex thing +2026-01-06 20:44:54,537 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-06 20:44:54,845 - INFO - Updating metadata for: hot_teacher +2026-01-06 20:44:54,846 - INFO - Searching metadata for: hot teacher +2026-01-06 20:44:55,059 - INFO - Fetching metadata from: https://nhentai.net/g/620990/ +2026-01-06 20:44:55,249 - INFO - Updating metadata for: two_siblings_fela_pure +2026-01-06 20:44:55,251 - INFO - Searching metadata for: two siblings fela pure +2026-01-06 20:44:55,423 - INFO - Fetching metadata from: https://nhentai.net/g/65576/ +2026-01-06 20:44:55,633 - INFO - Updating metadata for: on_the_night_of_the_ceremony +2026-01-06 20:44:55,634 - INFO - Searching metadata for: on the night of the ceremony +2026-01-06 20:44:55,862 - INFO - Fetching metadata from: https://nhentai.net/g/530970/ +2026-01-06 20:44:56,078 - INFO - Updating metadata for: [Takasugi Kou] Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-06 20:44:56,079 - INFO - Searching metadata for: Takasugi Kou Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-06 20:44:56,352 - INFO - Fetching metadata from: https://nhentai.net/g/599358/ +2026-01-06 20:44:56,609 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-06 20:44:56,609 - INFO - Searching metadata for: Mustard Teikoku (Europia) Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-06 20:44:56,934 - INFO - Searching metadata for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-06 20:44:57,388 - INFO - Searching MangaUpdates for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-06 20:44:58,403 - INFO - Updating metadata for: father_stop_it +2026-01-06 20:44:58,404 - INFO - Searching metadata for: father stop it +2026-01-06 20:44:58,609 - INFO - Fetching metadata from: https://nhentai.net/g/549536/ +2026-01-06 20:44:58,800 - INFO - Updating metadata for: organize +2026-01-06 20:44:58,800 - INFO - Searching metadata for: organize +2026-01-06 20:44:58,959 - INFO - Fetching metadata from: https://nhentai.net/g/215772/ +2026-01-06 20:44:59,274 - INFO - Updating metadata for: seventy_two +2026-01-06 20:44:59,274 - INFO - Searching metadata for: seventy two +2026-01-06 20:44:59,449 - INFO - Fetching metadata from: https://nhentai.net/g/110977/ +2026-01-06 20:44:59,656 - INFO - Updating metadata for: a_sister_who_wants_to_watch_siblings +2026-01-06 20:44:59,656 - INFO - Searching metadata for: a sister who wants to watch siblings +2026-01-06 20:44:59,943 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-06 20:45:00,142 - INFO - Updating metadata for: dirty_lessons_improving_your_manhood_chapter +2026-01-06 20:45:00,142 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-06 20:45:00,307 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter +2026-01-06 20:45:00,765 - INFO - Updating metadata for: from_now_on_you_are_my_livestock_chapter +2026-01-06 20:45:00,765 - INFO - Searching metadata for: from now on you are my livestock chapter +2026-01-06 20:45:00,997 - INFO - Searching MangaUpdates for: from now on you are my livestock chapter +2026-01-06 20:45:01,305 - INFO - Updating metadata for: a_room_you_cant_leave_after_having_sex +2026-01-06 20:45:01,305 - INFO - Searching metadata for: a room you cant leave after having sex +2026-01-06 20:45:01,549 - INFO - Searching MangaUpdates for: a room you cant leave after having sex +2026-01-06 20:45:01,978 - INFO - Updating metadata for: narikawari_chapter_1 +2026-01-06 20:45:01,979 - INFO - Searching metadata for: narikawari chapter 1 +2026-01-06 20:45:02,167 - INFO - Searching MangaUpdates for: narikawari chapter 1 +2026-01-06 20:45:02,535 - INFO - Updating metadata for: [Ookami Shoujo Dan (Mukoujima Tenro)] Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-06 20:45:02,536 - INFO - Searching metadata for: Ookami Shoujo Dan (Mukoujima Tenro) Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-06 20:45:02,858 - INFO - Fetching metadata from: https://nhentai.net/g/617181/ +2026-01-06 20:45:03,066 - INFO - Updating metadata for: welcome_to_the_brothel_school_festival +2026-01-06 20:45:03,066 - INFO - Searching metadata for: welcome to the brothel school festival +2026-01-06 20:45:03,313 - INFO - Fetching metadata from: https://nhentai.net/g/601119/ +2026-01-06 20:45:03,594 - INFO - Updating metadata for: [Oroshi Ponzu] A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-06 20:45:03,595 - INFO - Searching metadata for: Oroshi Ponzu A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-06 20:45:04,121 - INFO - Searching metadata for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-06 20:45:04,735 - INFO - Searching MangaUpdates for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-06 20:45:05,555 - INFO - Updating metadata for: step_child_swapping_satsuki_imonet +2026-01-06 20:45:05,555 - INFO - Searching metadata for: step child swapping satsuki imonet +2026-01-06 20:45:05,753 - INFO - Searching MangaUpdates for: step child swapping satsuki imonet +2026-01-06 20:45:05,985 - INFO - Updating metadata for: the_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother_in_laws_countryside_where_there_is_an_h_custom +2026-01-06 20:45:05,985 - INFO - Searching metadata for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-06 20:45:06,509 - INFO - Searching MangaUpdates for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-06 20:45:07,236 - INFO - Updating metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-06 20:45:07,237 - INFO - Searching metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-06 20:45:07,817 - INFO - Searching MangaUpdates for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-06 20:45:08,381 - INFO - Updating metadata for: friends_forever +2026-01-06 20:45:08,382 - INFO - Searching metadata for: friends forever +2026-01-06 20:45:08,626 - INFO - Fetching metadata from: https://nhentai.net/g/588356/ +2026-01-06 20:45:08,842 - INFO - Updating metadata for: were_siblings_but_lets_tie_the_knot +2026-01-06 20:45:08,842 - INFO - Searching metadata for: were siblings but lets tie the knot +2026-01-06 20:45:09,041 - INFO - Searching MangaUpdates for: were siblings but lets tie the knot +2026-01-06 20:45:09,528 - INFO - Updating metadata for: takebe_saorichan_to_iu_kanojo +2026-01-06 20:45:09,529 - INFO - Searching metadata for: takebe saorichan to iu kanojo +2026-01-06 20:45:09,676 - INFO - Searching MangaUpdates for: takebe saorichan to iu kanojo +2026-01-06 20:45:10,083 - INFO - Updating metadata for: mega_milk +2026-01-06 20:45:10,083 - INFO - Searching metadata for: mega milk +2026-01-06 20:45:10,346 - INFO - Fetching metadata from: https://nhentai.net/g/616449/ +2026-01-06 20:45:10,557 - INFO - Updating metadata for: [Gomikasu Tarou] Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-06 20:45:10,557 - INFO - Searching metadata for: Gomikasu Tarou Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-06 20:45:10,974 - INFO - Searching metadata for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-06 20:45:11,534 - INFO - Searching MangaUpdates for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-06 20:45:12,053 - INFO - Updating metadata for: a_gentle_mommy_who_secret_makes +2026-01-06 20:45:12,054 - INFO - Searching metadata for: a gentle mommy who secret makes +2026-01-06 20:45:12,310 - INFO - Fetching metadata from: https://nhentai.net/g/546176/ +2026-01-06 20:45:12,567 - INFO - Updating metadata for: i_got_an_elf_little_sister +2026-01-06 20:45:12,567 - INFO - Searching metadata for: i got an elf little sister +2026-01-06 20:45:12,872 - INFO - Fetching metadata from: https://nhentai.net/g/544668/ +2026-01-06 20:45:13,097 - INFO - Updating metadata for: [Yue] Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-06 20:45:13,097 - INFO - Searching metadata for: Yue Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-06 20:45:13,482 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-06 20:45:13,850 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-06 20:45:14,347 - INFO - Updating metadata for: i_became_kirarachans_manager +2026-01-06 20:45:14,347 - INFO - Searching metadata for: i became kirarachans manager +2026-01-06 20:45:14,555 - INFO - Searching MangaUpdates for: i became kirarachans manager +2026-01-06 20:45:14,870 - INFO - Updating metadata for: Sensei_wa_Ore_no_Dorei_Danshikou_wa_Midara_na_Kangoku_(2014) +2026-01-06 20:45:14,871 - INFO - Searching metadata for: Sensei wa Ore no Dorei Danshikou wa Midara na Kangoku +2026-01-06 20:45:15,171 - INFO - Searching MangaUpdates for: Sensei wa Ore no Dorei Danshikou wa Midara na Kangoku +2026-01-06 20:45:15,559 - INFO - Updating metadata for: i_am_to_record_a_video_with_two_sadistic_women +2026-01-06 20:45:15,559 - INFO - Searching metadata for: i am to record a video with two sadistic women +2026-01-06 20:45:16,000 - INFO - Fetching metadata from: https://nhentai.net/g/551074/ +2026-01-06 20:45:16,224 - INFO - Updating metadata for: kusabi +2026-01-06 20:45:16,224 - INFO - Searching metadata for: kusabi +2026-01-06 20:45:16,419 - INFO - Fetching metadata from: https://nhentai.net/g/577169/ +2026-01-06 20:45:16,629 - INFO - Updating metadata for: [OVing (Obui)] Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-06 20:45:16,629 - INFO - Searching metadata for: OVing (Obui) Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-06 20:45:16,814 - INFO - Fetching metadata from: https://nhentai.net/g/556035/ +2026-01-06 20:45:17,098 - INFO - Updating metadata for: the_imprisoned_flower +2026-01-06 20:45:17,098 - INFO - Searching metadata for: the imprisoned flower +2026-01-06 20:45:17,295 - INFO - Fetching metadata from: https://nhentai.net/g/567049/ +2026-01-06 20:45:17,558 - INFO - Updating metadata for: semi_pro_racing_stars +2026-01-06 20:45:17,559 - INFO - Searching metadata for: semi pro racing stars +2026-01-06 20:45:17,778 - INFO - Fetching metadata from: https://nhentai.net/g/380272/ +2026-01-06 20:45:18,010 - INFO - Updating metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-06 20:45:18,010 - INFO - Searching metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-06 20:45:18,293 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-06 20:45:18,486 - INFO - Updating metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-06 20:45:18,486 - INFO - Searching metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-06 20:45:18,720 - INFO - Fetching metadata from: https://nhentai.net/g/583039/ +2026-01-06 20:45:18,913 - INFO - Updating metadata for: [Nyuu Koubou Koromotake] Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-06 20:45:18,913 - INFO - Searching metadata for: Nyuu Koubou Koromotake Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-06 20:45:19,260 - INFO - Fetching metadata from: https://nhentai.net/g/603798/ +2026-01-06 20:45:19,478 - INFO - Updating metadata for: crossdressing_hero_and_dancer_priestess_chapter +2026-01-06 20:45:19,479 - INFO - Searching metadata for: crossdressing hero and dancer priestess chapter +2026-01-06 20:45:19,652 - INFO - Searching MangaUpdates for: crossdressing hero and dancer priestess chapter +2026-01-06 20:45:19,939 - INFO - Updating metadata for: tsugumonotachi_hachi_hen +2026-01-06 20:45:19,939 - INFO - Searching metadata for: tsugumonotachi hachi hen +2026-01-06 20:45:20,089 - INFO - Searching MangaUpdates for: tsugumonotachi hachi hen +2026-01-06 20:45:20,298 - INFO - Updating metadata for: leave_it_all_to_me_little_brother +2026-01-06 20:45:20,299 - INFO - Searching metadata for: leave it all to me little brother +2026-01-06 20:45:20,720 - INFO - Fetching metadata from: https://nhentai.net/g/548496/ +2026-01-06 20:45:20,918 - INFO - Updating metadata for: imouto_to_rekawatta_oniichan_wa_chapter +2026-01-06 20:45:20,918 - INFO - Searching metadata for: imouto to rekawatta oniichan wa chapter +2026-01-06 20:45:21,115 - INFO - Searching MangaUpdates for: imouto to rekawatta oniichan wa chapter +2026-01-06 20:45:21,612 - INFO - Updating metadata for: Kanojo_ni_Naritai_Kimi_to_Boku_(2018) +2026-01-06 20:45:21,612 - INFO - Searching metadata for: Kanojo ni Naritai Kimi to Boku +2026-01-06 20:45:21,976 - INFO - Searching MangaUpdates for: Kanojo ni Naritai Kimi to Boku +2026-01-06 20:45:22,314 - INFO - Updating metadata for: Saimin_Appli_(Yuma)_(2024) +2026-01-06 20:45:22,314 - INFO - Searching metadata for: Saimin Appli (Yuma) +2026-01-06 20:45:22,482 - INFO - Searching MangaUpdates for: Saimin Appli (Yuma) +2026-01-06 20:45:22,730 - INFO - Updating metadata for: the_demon_lords_bride +2026-01-06 20:45:22,730 - INFO - Searching metadata for: the demon lords bride +2026-01-06 20:45:22,948 - INFO - Searching MangaUpdates for: the demon lords bride +2026-01-06 20:45:23,185 - INFO - Updating metadata for: [satsukiimonet (Satsuki Imonet)] HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-06 20:45:23,185 - INFO - Searching metadata for: satsukiimonet (Satsuki Imonet) HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-06 20:45:23,415 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-06 20:45:23,635 - INFO - Updating metadata for: special_tit_envoy +2026-01-06 20:45:23,636 - INFO - Searching metadata for: special tit envoy +2026-01-06 20:45:23,846 - INFO - Fetching metadata from: https://nhentai.net/g/354686/ +2026-01-06 20:45:24,049 - INFO - Updating metadata for: hot_spring_sex_with_mama_raikou +2026-01-06 20:45:24,050 - INFO - Searching metadata for: hot spring sex with mama raikou +2026-01-06 20:45:24,275 - INFO - Fetching metadata from: https://nhentai.net/g/329703/ +2026-01-06 20:45:24,465 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Succubus Shoukan [English][Fan trad] +2026-01-06 20:45:24,465 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Succubus Shoukan [English][Fan trad] +2026-01-06 20:45:24,637 - INFO - Searching metadata for: Succubus Shoukan [English][Fan trad] +2026-01-06 20:45:24,815 - INFO - Searching MangaUpdates for: Succubus Shoukan [English][Fan trad] +2026-01-06 20:45:25,349 - INFO - Updating metadata for: nanjamo_no_botebaraive_nanjamo_vs_metamonjamo +2026-01-06 20:45:25,350 - INFO - Searching metadata for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-06 20:45:25,554 - INFO - Searching MangaUpdates for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-06 20:45:26,092 - INFO - Updating metadata for: akos_and_nozomis_discussion_of_masturbation_addictions +2026-01-06 20:45:26,093 - INFO - Searching metadata for: akos and nozomis discussion of masturbation addictions +2026-01-06 20:45:26,260 - INFO - Searching MangaUpdates for: akos and nozomis discussion of masturbation addictions +2026-01-06 20:45:26,689 - INFO - Updating metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-06 20:45:26,689 - INFO - Searching metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-06 20:45:26,950 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-06 20:45:27,165 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-06 20:45:27,165 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-06 20:45:27,401 - INFO - Searching metadata for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-06 20:45:27,826 - INFO - Searching MangaUpdates for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-06 20:45:28,914 - INFO - Updating metadata for: my_cool_friend +2026-01-06 20:45:28,915 - INFO - Searching metadata for: my cool friend +2026-01-06 20:45:29,119 - INFO - Fetching metadata from: https://nhentai.net/g/588146/ +2026-01-06 20:45:29,327 - INFO - Updating metadata for: Akogare_no_Tomo_Mama_to_Matching_Shita_Kudan_(2024) +2026-01-06 20:45:29,328 - INFO - Searching metadata for: Akogare no Tomo Mama to Matching Shita Kudan +2026-01-06 20:45:29,634 - INFO - Searching MangaUpdates for: Akogare no Tomo Mama to Matching Shita Kudan +2026-01-06 20:45:30,465 - INFO - Updating metadata for: non_stop_fucking_with_my_friends_mom +2026-01-06 20:45:30,465 - INFO - Searching metadata for: non stop fucking with my friends mom +2026-01-06 20:45:30,757 - INFO - Searching MangaUpdates for: non stop fucking with my friends mom +2026-01-06 20:45:31,048 - INFO - Updating metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-06 20:45:31,049 - INFO - Searching metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-06 20:45:31,257 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-06 20:45:31,459 - INFO - Updating metadata for: Koyoi,_Gishiki_de_Hatemashou_(2019) +2026-01-06 20:45:31,459 - INFO - Searching metadata for: Koyoi, Gishiki de Hatemashou +2026-01-06 20:45:31,640 - INFO - Searching MangaUpdates for: Koyoi, Gishiki de Hatemashou +2026-01-06 20:45:31,958 - INFO - Updating metadata for: I will make a single mother my wife +2026-01-06 20:45:31,959 - INFO - Searching metadata for: I will make a single mother my wife +2026-01-06 20:45:32,259 - INFO - Fetching metadata from: https://nhentai.net/g/595981/ +2026-01-06 20:45:32,479 - INFO - Updating metadata for: barenai_you_ni +2026-01-06 20:45:32,479 - INFO - Searching metadata for: barenai you ni +2026-01-06 20:45:32,698 - INFO - Fetching metadata from: https://nhentai.net/g/591233/ +2026-01-06 20:45:32,913 - INFO - Updating metadata for: adolescent_calculation +2026-01-06 20:45:32,913 - INFO - Searching metadata for: adolescent calculation +2026-01-06 20:45:33,132 - INFO - Fetching metadata from: https://nhentai.net/g/183099/ +2026-01-06 20:45:33,328 - INFO - Updating metadata for: moto_incha_no_kyonyuu_yariman_imouto_ga_erosugite_oniichan_wa_mou +2026-01-06 20:45:33,328 - INFO - Searching metadata for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-06 20:45:33,626 - INFO - Searching MangaUpdates for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-06 20:45:34,390 - INFO - Updating metadata for: karinsans_hidden_side_and_her_naughty_videos_chapter +2026-01-06 20:45:34,390 - INFO - Searching metadata for: karinsans hidden side and her naughty videos chapter +2026-01-06 20:45:34,645 - INFO - Searching MangaUpdates for: karinsans hidden side and her naughty videos chapter +2026-01-06 20:59:47,317 - INFO - Scanning for duplicate folders in /comics/manga... +2026-01-06 20:59:48,809 - INFO - Found 578 directories. Comparing... +2026-01-06 21:24:12,190 - INFO - Scanning for duplicate folders in /comics/manga... +2026-01-06 21:24:13,403 - INFO - Found 578 directories. Comparing... +2026-01-07 00:25:26,252 - INFO - Starting metadata update in /comics/manga (Force: True)... +2026-01-07 00:25:26,328 - INFO - Updating metadata for: catch_you_at_the_indoor_beach +2026-01-07 00:25:26,329 - INFO - Searching metadata for: catch you at the indoor beach +2026-01-07 00:25:26,642 - INFO - Searching MangaUpdates for: catch you at the indoor beach +2026-01-07 00:25:27,183 - INFO - Updating metadata for: [Omapuu] Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-07 00:25:27,184 - INFO - Searching metadata for: Omapuu Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-07 00:25:27,389 - INFO - Fetching metadata from: https://nhentai.net/g/602806/ +2026-01-07 00:25:27,638 - INFO - Updating metadata for: [Kazuhiro] Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-07 00:25:27,639 - INFO - Searching metadata for: Kazuhiro Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-07 00:25:27,815 - INFO - Fetching metadata from: https://nhentai.net/g/268292/ +2026-01-07 00:25:28,117 - INFO - Updating metadata for: Injoku_no_Kizuna_(2006) +2026-01-07 00:25:28,117 - INFO - Searching metadata for: Injoku no Kizuna +2026-01-07 00:25:28,283 - INFO - Searching MangaUpdates for: Injoku no Kizuna +2026-01-07 00:25:28,585 - INFO - Updating metadata for: [Itaba Hiroshi] Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 00:25:28,585 - INFO - Searching metadata for: Itaba Hiroshi Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 00:25:28,740 - INFO - Searching metadata for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 00:25:28,909 - INFO - Searching MangaUpdates for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 00:25:29,365 - INFO - Updating metadata for: shounen_ga_otona_ni_natta_natsu +2026-01-07 00:25:29,365 - INFO - Searching metadata for: shounen ga otona ni natta natsu +2026-01-07 00:25:29,690 - INFO - Fetching metadata from: https://nhentai.net/g/571244/ +2026-01-07 00:25:29,982 - INFO - Updating metadata for: i_have_no_choice_but_to_have_sex_with_my_mother_chapter +2026-01-07 00:25:29,982 - INFO - Searching metadata for: i have no choice but to have sex with my mother chapter +2026-01-07 00:25:30,320 - INFO - Searching MangaUpdates for: i have no choice but to have sex with my mother chapter +2026-01-07 00:25:30,805 - INFO - Updating metadata for: [Airandou] Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-07 00:25:30,805 - INFO - Searching metadata for: Airandou Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-07 00:25:31,115 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-07 00:25:31,360 - INFO - Updating metadata for: on_a_stormy_night +2026-01-07 00:25:31,360 - INFO - Searching metadata for: on a stormy night +2026-01-07 00:25:31,603 - INFO - Fetching metadata from: https://nhentai.net/g/616543/ +2026-01-07 00:25:31,818 - INFO - Updating metadata for: jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-07 00:25:31,818 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter +2026-01-07 00:25:31,963 - INFO - Searching MangaUpdates for: jibakureichan wa oppai ga yowai chapter +2026-01-07 00:25:32,380 - INFO - Updating metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-07 00:25:32,381 - INFO - Searching metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-07 00:25:32,566 - INFO - Searching MangaUpdates for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-07 00:25:33,258 - INFO - Updating metadata for: last_day_of_summer_vacation_sex_sex_sex +2026-01-07 00:25:33,258 - INFO - Searching metadata for: last day of summer vacation sex sex sex +2026-01-07 00:25:33,445 - INFO - Searching MangaUpdates for: last day of summer vacation sex sex sex +2026-01-07 00:25:33,749 - INFO - Updating metadata for: SEX Shinai to Derarenai Heya desu. _ The Room You Can't Leave Until You Have Sex +2026-01-07 00:25:33,749 - INFO - Searching metadata for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-07 00:25:34,145 - INFO - Searching MangaUpdates for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-07 00:25:34,726 - INFO - Updating metadata for: [Utsutsu Minoru] Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-07 00:25:34,726 - INFO - Searching metadata for: Utsutsu Minoru Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-07 00:25:34,915 - INFO - Fetching metadata from: https://nhentai.net/g/268598/ +2026-01-07 00:25:35,117 - INFO - Updating metadata for: [Yue] Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-07 00:25:35,117 - INFO - Searching metadata for: Yue Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-07 00:25:35,334 - INFO - Fetching metadata from: https://nhentai.net/g/571461/ +2026-01-07 00:25:35,510 - INFO - Updating metadata for: mama_nge +2026-01-07 00:25:35,511 - INFO - Searching metadata for: mama nge +2026-01-07 00:25:35,684 - INFO - Fetching metadata from: https://nhentai.net/g/375142/ +2026-01-07 00:25:35,913 - INFO - Updating metadata for: a_story_about_getting_trained_by_my_older_sister +2026-01-07 00:25:35,913 - INFO - Searching metadata for: a story about getting trained by my older sister +2026-01-07 00:25:36,135 - INFO - Fetching metadata from: https://nhentai.net/g/491013/ +2026-01-07 00:25:36,303 - INFO - Updating metadata for: shake_hip +2026-01-07 00:25:36,303 - INFO - Searching metadata for: shake hip +2026-01-07 00:25:36,450 - INFO - Fetching metadata from: https://nhentai.net/g/111922/ +2026-01-07 00:25:36,608 - INFO - Updating metadata for: [Hannya san] Mom son +2026-01-07 00:25:36,608 - INFO - Searching metadata for: Hannya san Mom son +2026-01-07 00:25:36,804 - INFO - Fetching metadata from: https://nhentai.net/g/606383/ +2026-01-07 00:25:36,960 - INFO - Updating metadata for: Frustrated Share House Residents +2026-01-07 00:25:36,961 - INFO - Searching metadata for: Frustrated Share House Residents +2026-01-07 00:25:37,106 - INFO - Fetching metadata from: https://nhentai.net/g/539658/ +2026-01-07 00:25:37,275 - INFO - Updating metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-07 00:25:37,275 - INFO - Searching metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-07 00:25:37,570 - INFO - Fetching metadata from: https://nhentai.net/g/571333/ +2026-01-07 00:25:37,733 - INFO - Updating metadata for: oni_no_kyouiku_mama_ga_musuko_to_amaama_sex_made +2026-01-07 00:25:37,733 - INFO - Searching metadata for: oni no kyouiku mama ga musuko to amaama sex made +2026-01-07 00:25:38,142 - INFO - Fetching metadata from: https://nhentai.net/g/605131/ +2026-01-07 00:25:38,338 - INFO - Updating metadata for: immoral_relationship +2026-01-07 00:25:38,338 - INFO - Searching metadata for: immoral relationship +2026-01-07 00:25:38,478 - INFO - Fetching metadata from: https://nhentai.net/g/578989/ +2026-01-07 00:25:38,736 - INFO - Updating metadata for: quick_return_home +2026-01-07 00:25:38,736 - INFO - Searching metadata for: quick return home +2026-01-07 00:25:38,882 - INFO - Fetching metadata from: https://nhentai.net/g/285865/ +2026-01-07 00:25:39,058 - INFO - Updating metadata for: sister_succubus +2026-01-07 00:25:39,058 - INFO - Searching metadata for: sister succubus +2026-01-07 00:25:39,216 - INFO - Fetching metadata from: https://nhentai.net/g/619320/ +2026-01-07 00:25:39,490 - INFO - Updating metadata for: i_fell_for_a_female_ghost +2026-01-07 00:25:39,490 - INFO - Searching metadata for: i fell for a female ghost +2026-01-07 00:25:39,758 - INFO - Fetching metadata from: https://nhentai.net/g/545216/ +2026-01-07 00:25:39,928 - INFO - Updating metadata for: [Mata Ashita (Oohira Sunset)] Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun_tl] [Digital] +2026-01-07 00:25:39,928 - INFO - Searching metadata for: Mata Ashita (Oohira Sunset) Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-07 00:25:40,288 - INFO - Searching metadata for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-07 00:25:40,815 - INFO - Searching MangaUpdates for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-07 00:25:41,583 - INFO - Updating metadata for: shrine_maidens_of_injin +2026-01-07 00:25:41,583 - INFO - Searching metadata for: shrine maidens of injin +2026-01-07 00:25:41,755 - INFO - Fetching metadata from: https://nhentai.net/g/574337/ +2026-01-07 00:25:41,970 - INFO - Updating metadata for: the_daily_lives_of_an_older_brother_x_four_younger_sister +2026-01-07 00:25:41,970 - INFO - Searching metadata for: the daily lives of an older brother x four younger sister +2026-01-07 00:25:42,196 - INFO - Searching MangaUpdates for: the daily lives of an older brother x four younger sister +2026-01-07 00:25:42,610 - INFO - Updating metadata for: all_eyes_on_me +2026-01-07 00:25:42,610 - INFO - Searching metadata for: all eyes on me +2026-01-07 00:25:42,867 - INFO - Fetching metadata from: https://nhentai.net/g/311059/ +2026-01-07 00:25:43,089 - INFO - Updating metadata for: sister_was_thinking_about_her_younger_brothers_sexual_desire_chapter +2026-01-07 00:25:43,090 - INFO - Searching metadata for: sister was thinking about her younger brothers sexual desire chapter +2026-01-07 00:25:43,261 - INFO - Searching MangaUpdates for: sister was thinking about her younger brothers sexual desire chapter +2026-01-07 00:25:43,837 - INFO - Updating metadata for: two_big_tit_gals_find_a_bored_boy +2026-01-07 00:25:43,838 - INFO - Searching metadata for: two big tit gals find a bored boy +2026-01-07 00:25:44,047 - INFO - Fetching metadata from: https://nhentai.net/g/309103/ +2026-01-07 00:25:44,260 - INFO - Updating metadata for: a_sulky_older_sister_who_wants_to_concentrate_on_her_studies +2026-01-07 00:25:44,260 - INFO - Searching metadata for: a sulky older sister who wants to concentrate on her studies +2026-01-07 00:25:44,505 - INFO - Fetching metadata from: https://nhentai.net/g/530432/ +2026-01-07 00:25:44,704 - INFO - Updating metadata for: asekaki_nee_no_neteiru_aida_ni +2026-01-07 00:25:44,704 - INFO - Searching metadata for: asekaki nee no neteiru aida ni +2026-01-07 00:25:44,894 - INFO - Fetching metadata from: https://nhentai.net/g/589040/ +2026-01-07 00:25:45,087 - INFO - Updating metadata for: siblings_matchup_secret_mating_sex_life +2026-01-07 00:25:45,088 - INFO - Searching metadata for: siblings matchup secret mating sex life +2026-01-07 00:25:45,244 - INFO - Fetching metadata from: https://nhentai.net/g/497386/ +2026-01-07 00:25:45,431 - INFO - Updating metadata for: Siblings having sex in the living room like it's normal +2026-01-07 00:25:45,431 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal +2026-01-07 00:25:45,702 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal +2026-01-07 00:25:46,120 - INFO - Updating metadata for: enveloped_by_a_ghost +2026-01-07 00:25:46,120 - INFO - Searching metadata for: enveloped by a ghost +2026-01-07 00:25:46,288 - INFO - Fetching metadata from: https://nhentai.net/g/543084/ +2026-01-07 00:25:46,500 - INFO - Updating metadata for: papa_is_a_loser +2026-01-07 00:25:46,500 - INFO - Searching metadata for: papa is a loser +2026-01-07 00:25:46,728 - INFO - Fetching metadata from: https://nhentai.net/g/543091/ +2026-01-07 00:25:46,933 - INFO - Updating metadata for: hari_x2_honey +2026-01-07 00:25:46,933 - INFO - Searching metadata for: hari x2 honey +2026-01-07 00:25:47,111 - INFO - Searching MangaUpdates for: hari x2 honey +2026-01-07 00:25:47,328 - INFO - Updating metadata for: first_sperm_loving_succubus_dinner_of_cowgirl_and_creampie_sex +2026-01-07 00:25:47,329 - INFO - Searching metadata for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-07 00:25:47,484 - INFO - Searching MangaUpdates for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-07 00:25:47,906 - INFO - Updating metadata for: i_want_it_nurse_me +2026-01-07 00:25:47,906 - INFO - Searching metadata for: i want it nurse me +2026-01-07 00:25:47,949 - INFO - Starting metadata update in /comics/manga (Force: True)... +2026-01-07 00:25:48,025 - INFO - Updating metadata for: catch_you_at_the_indoor_beach +2026-01-07 00:25:48,026 - INFO - Searching metadata for: catch you at the indoor beach +2026-01-07 00:25:48,193 - INFO - Fetching metadata from: https://nhentai.net/g/308512/ +2026-01-07 00:25:48,283 - INFO - Searching MangaUpdates for: catch you at the indoor beach +2026-01-07 00:25:48,400 - INFO - Updating metadata for: fairy_feature_the_mayors_secret +2026-01-07 00:25:48,401 - INFO - Searching metadata for: fairy feature the mayors secret +2026-01-07 00:25:48,563 - INFO - Searching MangaUpdates for: fairy feature the mayors secret +2026-01-07 00:25:48,769 - INFO - Updating metadata for: [Omapuu] Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-07 00:25:48,769 - INFO - Searching metadata for: Omapuu Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-07 00:25:48,876 - INFO - Updating metadata for: starting_today_im +2026-01-07 00:25:48,876 - INFO - Searching metadata for: starting today im +2026-01-07 00:25:49,047 - INFO - Searching MangaUpdates for: starting today im +2026-01-07 00:25:49,079 - INFO - Fetching metadata from: https://nhentai.net/g/602806/ +2026-01-07 00:25:49,317 - INFO - Updating metadata for: [Kazuhiro] Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-07 00:25:49,317 - INFO - Searching metadata for: Kazuhiro Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-07 00:25:49,319 - INFO - Updating metadata for: naive_little_sister_chapter +2026-01-07 00:25:49,320 - INFO - Searching metadata for: naive little sister chapter +2026-01-07 00:25:49,475 - INFO - Searching MangaUpdates for: naive little sister chapter +2026-01-07 00:25:49,512 - INFO - Fetching metadata from: https://nhentai.net/g/268292/ +2026-01-07 00:25:49,874 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite +2026-01-07 00:25:49,886 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite +2026-01-07 00:25:49,904 - INFO - Updating metadata for: Injoku_no_Kizuna_(2006) +2026-01-07 00:25:49,905 - INFO - Searching metadata for: Injoku no Kizuna +2026-01-07 00:25:50,099 - INFO - Searching MangaUpdates for: Injoku no Kizuna +2026-01-07 00:25:50,344 - INFO - Updating metadata for: [Itaba Hiroshi] Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 00:25:50,345 - INFO - Searching metadata for: Itaba Hiroshi Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 00:25:50,428 - INFO - Fetching metadata from: https://nhentai.net/g/596920/ +2026-01-07 00:25:50,532 - INFO - Searching metadata for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 00:25:50,641 - INFO - Updating metadata for: autumn_lovers +2026-01-07 00:25:50,641 - INFO - Searching metadata for: autumn lovers +2026-01-07 00:25:50,703 - INFO - Searching MangaUpdates for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 00:25:50,795 - INFO - Fetching metadata from: https://nhentai.net/g/320576/ +2026-01-07 00:25:50,986 - INFO - Updating metadata for: training_the_older_sister_momomadoka +2026-01-07 00:25:50,987 - INFO - Searching metadata for: training the older sister momomadoka +2026-01-07 00:25:51,167 - INFO - Fetching metadata from: https://nhentai.net/g/546382/ +2026-01-07 00:25:51,374 - INFO - Updating metadata for: doukyuusei_gal_3_ningumi_to +2026-01-07 00:25:51,375 - INFO - Searching metadata for: doukyuusei gal 3 ningumi to +2026-01-07 00:25:51,393 - INFO - Updating metadata for: shounen_ga_otona_ni_natta_natsu +2026-01-07 00:25:51,396 - INFO - Searching metadata for: shounen ga otona ni natta natsu +2026-01-07 00:25:51,544 - INFO - Searching MangaUpdates for: doukyuusei gal 3 ningumi to +2026-01-07 00:25:51,714 - INFO - Fetching metadata from: https://nhentai.net/g/571244/ +2026-01-07 00:25:52,048 - INFO - Updating metadata for: Hitoduma Ane _ Married Sister +2026-01-07 00:25:52,048 - INFO - Searching metadata for: Hitoduma Ane Married Sister +2026-01-07 00:25:52,056 - INFO - Updating metadata for: i_have_no_choice_but_to_have_sex_with_my_mother_chapter +2026-01-07 00:25:52,056 - INFO - Searching metadata for: i have no choice but to have sex with my mother chapter +2026-01-07 00:25:52,201 - INFO - Searching MangaUpdates for: Hitoduma Ane Married Sister +2026-01-07 00:25:52,398 - INFO - Searching MangaUpdates for: i have no choice but to have sex with my mother chapter +2026-01-07 00:25:52,634 - INFO - Updating metadata for: winter_omake_bon +2026-01-07 00:25:52,635 - INFO - Searching metadata for: winter omake bon +2026-01-07 00:25:52,811 - INFO - Fetching metadata from: https://nhentai.net/g/527207/ +2026-01-07 00:25:52,885 - INFO - Updating metadata for: [Airandou] Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-07 00:25:52,886 - INFO - Searching metadata for: Airandou Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-07 00:25:52,998 - INFO - Updating metadata for: perverted_hypnosis_experiment +2026-01-07 00:25:52,998 - INFO - Searching metadata for: perverted hypnosis experiment +2026-01-07 00:25:53,165 - INFO - Fetching metadata from: https://nhentai.net/g/521144/ +2026-01-07 00:25:53,210 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-07 00:25:53,452 - INFO - Updating metadata for: kyoudai_no_naka +2026-01-07 00:25:53,453 - INFO - Searching metadata for: kyoudai no naka +2026-01-07 00:25:53,457 - INFO - Updating metadata for: on_a_stormy_night +2026-01-07 00:25:53,458 - INFO - Searching metadata for: on a stormy night +2026-01-07 00:25:53,682 - INFO - Fetching metadata from: https://nhentai.net/g/616543/ +2026-01-07 00:25:53,709 - INFO - Fetching metadata from: https://nhentai.net/g/618441/ +2026-01-07 00:25:53,962 - INFO - Updating metadata for: jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-07 00:25:53,962 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter +2026-01-07 00:25:53,967 - INFO - Updating metadata for: sometimes_i_draw_manga +2026-01-07 00:25:53,967 - INFO - Searching metadata for: sometimes i draw manga +2026-01-07 00:25:54,101 - INFO - Searching MangaUpdates for: jibakureichan wa oppai ga yowai chapter +2026-01-07 00:25:54,159 - INFO - Fetching metadata from: https://nhentai.net/g/519608/ +2026-01-07 00:25:54,330 - INFO - Updating metadata for: Stigmatized_Property_(2019) +2026-01-07 00:25:54,331 - INFO - Searching metadata for: Stigmatized Property +2026-01-07 00:25:54,352 - INFO - Updating metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-07 00:25:54,353 - INFO - Searching metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-07 00:25:54,459 - INFO - Searching MangaUpdates for: Stigmatized Property +2026-01-07 00:25:54,527 - INFO - Searching MangaUpdates for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-07 00:25:54,779 - INFO - Updating metadata for: apron +2026-01-07 00:25:54,779 - INFO - Searching metadata for: apron +2026-01-07 00:25:54,975 - INFO - Fetching metadata from: https://nhentai.net/g/621140/ +2026-01-07 00:25:55,088 - INFO - Updating metadata for: last_day_of_summer_vacation_sex_sex_sex +2026-01-07 00:25:55,088 - INFO - Searching metadata for: last day of summer vacation sex sex sex +2026-01-07 00:25:55,149 - INFO - Updating metadata for: namaiki_na_hahaoya_o_honnin_ni_mo_kizukarezu_ni_minkan_suru_houhou +2026-01-07 00:25:55,149 - INFO - Searching metadata for: namaiki na hahaoya o honnin ni mo kizukarezu ni minkan suru houhou +2026-01-07 00:25:55,253 - INFO - Searching MangaUpdates for: last day of summer vacation sex sex sex +2026-01-07 00:25:55,474 - INFO - Fetching metadata from: https://nhentai.net/g/298780/ +2026-01-07 00:25:55,595 - INFO - Updating metadata for: SEX Shinai to Derarenai Heya desu. _ The Room You Can't Leave Until You Have Sex +2026-01-07 00:25:55,596 - INFO - Searching metadata for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-07 00:25:55,687 - INFO - Updating metadata for: haha_ga_saikon_shitara_gikei_ga_chou_kuzu +2026-01-07 00:25:55,687 - INFO - Searching metadata for: haha ga saikon shitara gikei ga chou kuzu +2026-01-07 00:25:55,910 - INFO - Fetching metadata from: https://nhentai.net/g/532104/ +2026-01-07 00:25:55,965 - INFO - Searching MangaUpdates for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-07 00:25:56,122 - INFO - Updating metadata for: lets_do_it +2026-01-07 00:25:56,122 - INFO - Searching metadata for: lets do it +2026-01-07 00:25:56,357 - INFO - Fetching metadata from: https://nhentai.net/g/588286/ +2026-01-07 00:25:56,401 - INFO - Updating metadata for: [Utsutsu Minoru] Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-07 00:25:56,402 - INFO - Searching metadata for: Utsutsu Minoru Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-07 00:25:56,570 - INFO - Updating metadata for: naomi san wa ore no sefri ch 1 +2026-01-07 00:25:56,570 - INFO - Searching metadata for: naomi san wa ore no sefri ch 1 +2026-01-07 00:25:56,615 - INFO - Fetching metadata from: https://nhentai.net/g/268598/ +2026-01-07 00:25:56,651 - INFO - Searching metadata for: Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-07 00:25:56,960 - INFO - Fetching metadata from: https://nhentai.net/g/601989/ +2026-01-07 00:25:56,989 - INFO - Fetching metadata from: https://nhentai.net/g/268598/ +2026-01-07 00:25:57,344 - INFO - Updating metadata for: [Yue] Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-07 00:25:57,345 - INFO - Searching metadata for: Yue Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-07 00:25:57,349 - INFO - Updating metadata for: namaiki_sanshimai +2026-01-07 00:25:57,351 - INFO - Searching metadata for: namaiki sanshimai +2026-01-07 00:25:57,588 - INFO - Fetching metadata from: https://nhentai.net/g/560751/ +2026-01-07 00:25:57,618 - INFO - Fetching metadata from: https://nhentai.net/g/571461/ +2026-01-07 00:25:57,868 - INFO - Updating metadata for: a_story_about_my_little_sister_giving_me_titjobs +2026-01-07 00:25:57,868 - INFO - Updating metadata for: mama_nge +2026-01-07 00:25:57,868 - INFO - Searching metadata for: a story about my little sister giving me titjobs +2026-01-07 00:25:57,869 - INFO - Searching metadata for: mama nge +2026-01-07 00:25:58,070 - INFO - Fetching metadata from: https://nhentai.net/g/375142/ +2026-01-07 00:25:58,233 - INFO - Fetching metadata from: https://nhentai.net/g/524952/ +2026-01-07 00:25:58,326 - INFO - Updating metadata for: a_story_about_getting_trained_by_my_older_sister +2026-01-07 00:25:58,327 - INFO - Searching metadata for: a story about getting trained by my older sister +2026-01-07 00:25:58,427 - INFO - Updating metadata for: fuyu_yui +2026-01-07 00:25:58,428 - INFO - Searching metadata for: fuyu yui +2026-01-07 00:25:58,574 - INFO - Fetching metadata from: https://nhentai.net/g/491013/ +2026-01-07 00:25:58,623 - INFO - Fetching metadata from: https://nhentai.net/g/589928/ +2026-01-07 00:25:58,923 - INFO - Updating metadata for: shake_hip +2026-01-07 00:25:58,924 - INFO - Searching metadata for: shake hip +2026-01-07 00:25:58,929 - INFO - Updating metadata for: Imouto_wa_minna_Oniichan_ga_Suki!_(2010) +2026-01-07 00:25:58,929 - INFO - Searching metadata for: Imouto wa minna Oniichan ga Suki! +2026-01-07 00:25:59,119 - INFO - Fetching metadata from: https://nhentai.net/g/111922/ +2026-01-07 00:25:59,166 - INFO - Searching MangaUpdates for: Imouto wa minna Oniichan ga Suki! +2026-01-07 00:25:59,331 - INFO - Updating metadata for: [Hannya san] Mom son +2026-01-07 00:25:59,331 - INFO - Searching metadata for: Hannya san Mom son +2026-01-07 00:25:59,497 - INFO - Updating metadata for: i_matched_with_my_friends_mom_chapter +2026-01-07 00:25:59,498 - INFO - Searching metadata for: i matched with my friends mom chapter +2026-01-07 00:25:59,549 - INFO - Fetching metadata from: https://nhentai.net/g/606383/ +2026-01-07 00:25:59,767 - INFO - Searching MangaUpdates for: i matched with my friends mom chapter +2026-01-07 00:25:59,835 - INFO - Updating metadata for: Frustrated Share House Residents +2026-01-07 00:25:59,835 - INFO - Searching metadata for: Frustrated Share House Residents +2026-01-07 00:26:00,021 - INFO - Fetching metadata from: https://nhentai.net/g/539658/ +2026-01-07 00:26:00,270 - INFO - Updating metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-07 00:26:00,271 - INFO - Searching metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-07 00:26:00,439 - INFO - Updating metadata for: love_wheel +2026-01-07 00:26:00,440 - INFO - Searching metadata for: love wheel +2026-01-07 00:26:00,613 - INFO - Fetching metadata from: https://nhentai.net/g/599889/ +2026-01-07 00:26:00,625 - INFO - Fetching metadata from: https://nhentai.net/g/571333/ +2026-01-07 00:26:00,936 - INFO - Updating metadata for: [Heart Manju Mania (Akata Izuki)] Cocoro Controller 2 [English] +2026-01-07 00:26:00,937 - INFO - Searching metadata for: Heart Manju Mania (Akata Izuki) Cocoro Controller 2 [English] +2026-01-07 00:26:00,947 - INFO - Updating metadata for: oni_no_kyouiku_mama_ga_musuko_to_amaama_sex_made +2026-01-07 00:26:00,947 - INFO - Searching metadata for: oni no kyouiku mama ga musuko to amaama sex made +2026-01-07 00:26:01,184 - INFO - Fetching metadata from: https://nhentai.net/g/599509/ +2026-01-07 00:26:01,361 - INFO - Fetching metadata from: https://nhentai.net/g/605131/ +2026-01-07 00:26:01,367 - INFO - Updating metadata for: the_sex_life_of_andy_and_leyley +2026-01-07 00:26:01,368 - INFO - Searching metadata for: the sex life of andy and leyley +2026-01-07 00:26:01,632 - INFO - Fetching metadata from: https://nhentai.net/g/570099/ +2026-01-07 00:26:01,715 - INFO - Updating metadata for: immoral_relationship +2026-01-07 00:26:01,715 - INFO - Searching metadata for: immoral relationship +2026-01-07 00:26:01,817 - INFO - Updating metadata for: mozzarella_the_new_slutty_pussy +2026-01-07 00:26:01,818 - INFO - Searching metadata for: mozzarella the new slutty pussy +2026-01-07 00:26:01,902 - INFO - Fetching metadata from: https://nhentai.net/g/578989/ +2026-01-07 00:26:01,959 - INFO - Searching MangaUpdates for: mozzarella the new slutty pussy +2026-01-07 00:26:02,130 - INFO - Updating metadata for: quick_return_home +2026-01-07 00:26:02,131 - INFO - Searching metadata for: quick return home +2026-01-07 00:26:02,316 - INFO - Fetching metadata from: https://nhentai.net/g/285865/ +2026-01-07 00:26:02,333 - INFO - Updating metadata for: [ABBB] How to make a family using hypnosis app [English] [Decensored] +2026-01-07 00:26:02,333 - INFO - Searching metadata for: ABBB How to make a family using hypnosis app [English] [Decensored] +2026-01-07 00:26:02,579 - INFO - Fetching metadata from: https://nhentai.net/g/431170/ +2026-01-07 00:26:02,583 - INFO - Updating metadata for: sister_succubus +2026-01-07 00:26:02,583 - INFO - Searching metadata for: sister succubus +2026-01-07 00:26:02,839 - INFO - Fetching metadata from: https://nhentai.net/g/619320/ +2026-01-07 00:26:02,848 - INFO - Updating metadata for: wife_pickle +2026-01-07 00:26:02,848 - INFO - Searching metadata for: wife pickle +2026-01-07 00:26:03,009 - INFO - Fetching metadata from: https://nhentai.net/g/592704/ +2026-01-07 00:26:03,328 - INFO - Updating metadata for: [MN] My Big Breast Sister +2026-01-07 00:26:03,328 - INFO - Searching metadata for: MN My Big Breast Sister +2026-01-07 00:26:03,329 - INFO - Updating metadata for: i_fell_for_a_female_ghost +2026-01-07 00:26:03,330 - INFO - Searching metadata for: i fell for a female ghost +2026-01-07 00:26:03,500 - INFO - Fetching metadata from: https://nhentai.net/g/609562/ +2026-01-07 00:26:03,759 - INFO - Fetching metadata from: https://nhentai.net/g/545216/ +2026-01-07 00:26:03,782 - INFO - Updating metadata for: you_must_breed_your_sisters_to_leave_this_village +2026-01-07 00:26:03,783 - INFO - Searching metadata for: you must breed your sisters to leave this village +2026-01-07 00:26:03,994 - INFO - Updating metadata for: [Mata Ashita (Oohira Sunset)] Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun_tl] [Digital] +2026-01-07 00:26:03,995 - INFO - Searching metadata for: Mata Ashita (Oohira Sunset) Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-07 00:26:04,081 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-07 00:26:04,336 - INFO - Updating metadata for: mother_and_son_and_father_and_daughter_tonight_is_incest_night +2026-01-07 00:26:04,337 - INFO - Searching metadata for: mother and son and father and daughter tonight is incest night +2026-01-07 00:26:04,392 - INFO - Searching metadata for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-07 00:26:04,575 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-07 00:26:04,768 - INFO - Updating metadata for: [Takashima] FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-07 00:26:04,768 - INFO - Searching metadata for: Takashima FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-07 00:26:04,958 - INFO - Searching MangaUpdates for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-07 00:26:05,008 - INFO - Fetching metadata from: https://nhentai.net/g/515808/ +2026-01-07 00:26:05,246 - INFO - Updating metadata for: teasing_big_sis +2026-01-07 00:26:05,246 - INFO - Searching metadata for: teasing big sis +2026-01-07 00:26:05,403 - INFO - Fetching metadata from: https://nhentai.net/g/591734/ +2026-01-07 00:26:05,588 - INFO - Updating metadata for: forward +2026-01-07 00:26:05,589 - INFO - Searching metadata for: forward +2026-01-07 00:26:05,590 - INFO - Updating metadata for: shrine_maidens_of_injin +2026-01-07 00:26:05,591 - INFO - Searching metadata for: shrine maidens of injin +2026-01-07 00:26:05,728 - INFO - Fetching metadata from: https://nhentai.net/g/583038/ +2026-01-07 00:26:05,777 - INFO - Fetching metadata from: https://nhentai.net/g/574337/ +2026-01-07 00:26:05,905 - INFO - Updating metadata for: my_sister_doesnt_laugh +2026-01-07 00:26:05,906 - INFO - Searching metadata for: my sister doesnt laugh +2026-01-07 00:26:06,070 - INFO - Searching MangaUpdates for: my sister doesnt laugh +2026-01-07 00:26:06,076 - INFO - Updating metadata for: the_daily_lives_of_an_older_brother_x_four_younger_sister +2026-01-07 00:26:06,076 - INFO - Searching metadata for: the daily lives of an older brother x four younger sister +2026-01-07 00:26:06,319 - INFO - Searching MangaUpdates for: the daily lives of an older brother x four younger sister +2026-01-07 00:26:06,528 - INFO - Updating metadata for: big_sis_wants_to_convince_her_lil_bro +2026-01-07 00:26:06,528 - INFO - Searching metadata for: big sis wants to convince her lil bro +2026-01-07 00:26:06,741 - INFO - Updating metadata for: all_eyes_on_me +2026-01-07 00:26:06,741 - INFO - Searching metadata for: all eyes on me +2026-01-07 00:26:06,758 - INFO - Fetching metadata from: https://nhentai.net/g/310401/ +2026-01-07 00:26:06,964 - INFO - Updating metadata for: misato_x_shinji_baby_making +2026-01-07 00:26:06,964 - INFO - Searching metadata for: misato x shinji baby making +2026-01-07 00:26:07,001 - INFO - Fetching metadata from: https://nhentai.net/g/311059/ +2026-01-07 00:26:07,147 - INFO - Searching MangaUpdates for: misato x shinji baby making +2026-01-07 00:26:07,207 - INFO - Updating metadata for: sister_was_thinking_about_her_younger_brothers_sexual_desire_chapter +2026-01-07 00:26:07,207 - INFO - Searching metadata for: sister was thinking about her younger brothers sexual desire chapter +2026-01-07 00:26:07,397 - INFO - Searching MangaUpdates for: sister was thinking about her younger brothers sexual desire chapter +2026-01-07 00:26:07,618 - INFO - Updating metadata for: my_wife_left_me_because_i_was +2026-01-07 00:26:07,618 - INFO - Searching metadata for: my wife left me because i was +2026-01-07 00:26:07,864 - INFO - Updating metadata for: two_big_tit_gals_find_a_bored_boy +2026-01-07 00:26:07,865 - INFO - Searching metadata for: two big tit gals find a bored boy +2026-01-07 00:26:07,947 - INFO - Fetching metadata from: https://nhentai.net/g/593456/ +2026-01-07 00:26:08,091 - INFO - Fetching metadata from: https://nhentai.net/g/309103/ +2026-01-07 00:26:08,357 - INFO - Updating metadata for: a_sulky_older_sister_who_wants_to_concentrate_on_her_studies +2026-01-07 00:26:08,357 - INFO - Searching metadata for: a sulky older sister who wants to concentrate on her studies +2026-01-07 00:26:08,360 - INFO - Updating metadata for: human_manipulating_remote_control +2026-01-07 00:26:08,360 - INFO - Searching metadata for: human manipulating remote control +2026-01-07 00:26:08,520 - INFO - Fetching metadata from: https://nhentai.net/g/598745/ +2026-01-07 00:26:08,606 - INFO - Fetching metadata from: https://nhentai.net/g/530432/ +2026-01-07 00:26:08,741 - INFO - Updating metadata for: bitch_na_inanesama +2026-01-07 00:26:08,742 - INFO - Searching metadata for: bitch na inanesama +2026-01-07 00:26:08,833 - INFO - Updating metadata for: asekaki_nee_no_neteiru_aida_ni +2026-01-07 00:26:08,834 - INFO - Searching metadata for: asekaki nee no neteiru aida ni +2026-01-07 00:26:08,937 - INFO - Searching MangaUpdates for: bitch na inanesama +2026-01-07 00:26:09,045 - INFO - Fetching metadata from: https://nhentai.net/g/589040/ +2026-01-07 00:26:09,270 - INFO - Updating metadata for: siblings_matchup_secret_mating_sex_life +2026-01-07 00:26:09,270 - INFO - Searching metadata for: siblings matchup secret mating sex life +2026-01-07 00:26:09,275 - INFO - Updating metadata for: family_mischief_lewd +2026-01-07 00:26:09,276 - INFO - Searching metadata for: family mischief lewd +2026-01-07 00:26:09,440 - INFO - Fetching metadata from: https://nhentai.net/g/427171/ +2026-01-07 00:26:09,469 - INFO - Fetching metadata from: https://nhentai.net/g/497386/ +2026-01-07 00:26:09,705 - INFO - Updating metadata for: [Poriuretan] Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-07 00:26:09,705 - INFO - Searching metadata for: Poriuretan Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-07 00:26:09,710 - INFO - Updating metadata for: Siblings having sex in the living room like it's normal +2026-01-07 00:26:09,710 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal +2026-01-07 00:26:09,915 - INFO - Fetching metadata from: https://nhentai.net/g/588809/ +2026-01-07 00:26:10,012 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal +2026-01-07 00:26:10,116 - INFO - Updating metadata for: my_daily_life_taking_care_of_sexual_urges_with_my_naughty_sister +2026-01-07 00:26:10,116 - INFO - Searching metadata for: my daily life taking care of sexual urges with my naughty sister +2026-01-07 00:26:10,454 - INFO - Updating metadata for: enveloped_by_a_ghost +2026-01-07 00:26:10,455 - INFO - Searching metadata for: enveloped by a ghost +2026-01-07 00:26:10,600 - INFO - Searching MangaUpdates for: my daily life taking care of sexual urges with my naughty sister +2026-01-07 00:26:10,695 - INFO - Fetching metadata from: https://nhentai.net/g/543084/ +2026-01-07 00:26:10,922 - INFO - Updating metadata for: papa_is_a_loser +2026-01-07 00:26:10,922 - INFO - Searching metadata for: papa is a loser +2026-01-07 00:26:11,071 - INFO - Updating metadata for: a_history_of_no_boyfriends_equal_me_at_my_age +2026-01-07 00:26:11,071 - INFO - Searching metadata for: a history of no boyfriends equal me at my age +2026-01-07 00:26:11,180 - INFO - Fetching metadata from: https://nhentai.net/g/543091/ +2026-01-07 00:26:11,349 - INFO - Searching MangaUpdates for: a history of no boyfriends equal me at my age +2026-01-07 00:26:11,453 - INFO - Updating metadata for: hari_x2_honey +2026-01-07 00:26:11,453 - INFO - Searching metadata for: hari x2 honey +2026-01-07 00:26:11,619 - INFO - Searching MangaUpdates for: hari x2 honey +2026-01-07 00:26:11,824 - INFO - Updating metadata for: one_familys_plan_to_save_electricty +2026-01-07 00:26:11,824 - INFO - Searching metadata for: one familys plan to save electricty +2026-01-07 00:26:11,838 - INFO - Updating metadata for: first_sperm_loving_succubus_dinner_of_cowgirl_and_creampie_sex +2026-01-07 00:26:11,839 - INFO - Searching metadata for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-07 00:26:12,011 - INFO - Searching MangaUpdates for: one familys plan to save electricty +2026-01-07 00:26:12,042 - INFO - Searching MangaUpdates for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-07 00:26:12,733 - INFO - Updating metadata for: what_we_have_is_strictly_business +2026-01-07 00:26:12,734 - INFO - Searching metadata for: what we have is strictly business +2026-01-07 00:26:12,742 - INFO - Updating metadata for: i_want_it_nurse_me +2026-01-07 00:26:12,743 - INFO - Searching metadata for: i want it nurse me +2026-01-07 00:26:12,925 - INFO - Fetching metadata from: https://nhentai.net/g/596884/ +2026-01-07 00:26:13,065 - INFO - Fetching metadata from: https://nhentai.net/g/308512/ +2026-01-07 00:26:13,161 - INFO - Updating metadata for: [Juna Juna Juice] Pokemon Series (Pokemon) [English] +2026-01-07 00:26:13,162 - INFO - Searching metadata for: Juna Juna Juice Pokemon Series (Pokemon) [English] +2026-01-07 00:26:13,293 - INFO - Updating metadata for: fairy_feature_the_mayors_secret +2026-01-07 00:26:13,293 - INFO - Searching metadata for: fairy feature the mayors secret +2026-01-07 00:26:13,335 - INFO - Fetching metadata from: https://nhentai.net/g/595886/ +2026-01-07 00:26:13,461 - INFO - Searching MangaUpdates for: fairy feature the mayors secret +2026-01-07 00:26:13,583 - INFO - Updating metadata for: bitch_dirty_sister +2026-01-07 00:26:13,583 - INFO - Searching metadata for: bitch dirty sister +2026-01-07 00:26:13,772 - INFO - Fetching metadata from: https://nhentai.net/g/317791/ +2026-01-07 00:26:13,789 - INFO - Updating metadata for: starting_today_im +2026-01-07 00:26:13,789 - INFO - Searching metadata for: starting today im +2026-01-07 00:26:13,993 - INFO - Searching MangaUpdates for: starting today im +2026-01-07 00:26:14,217 - INFO - Updating metadata for: kayanee_and_the_old_man_memories_chapter +2026-01-07 00:26:14,217 - INFO - Searching metadata for: kayanee and the old man memories chapter +2026-01-07 00:26:14,231 - INFO - Updating metadata for: naive_little_sister_chapter +2026-01-07 00:26:14,231 - INFO - Searching metadata for: naive little sister chapter +2026-01-07 00:26:14,348 - INFO - Searching MangaUpdates for: kayanee and the old man memories chapter +2026-01-07 00:26:14,400 - INFO - Searching MangaUpdates for: naive little sister chapter +2026-01-07 00:26:14,711 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite +2026-01-07 00:26:14,711 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite +2026-01-07 00:26:14,721 - INFO - Updating metadata for: momojiri_ocean +2026-01-07 00:26:14,721 - INFO - Searching metadata for: momojiri ocean +2026-01-07 00:26:14,875 - INFO - Fetching metadata from: https://nhentai.net/g/164037/ +2026-01-07 00:26:15,061 - INFO - Fetching metadata from: https://nhentai.net/g/596920/ +2026-01-07 00:26:15,064 - INFO - Updating metadata for: daily_life_with_my_sexy_stepmom +2026-01-07 00:26:15,064 - INFO - Searching metadata for: daily life with my sexy stepmom +2026-01-07 00:26:15,304 - INFO - Fetching metadata from: https://nhentai.net/g/519708/ +2026-01-07 00:26:15,352 - INFO - Updating metadata for: autumn_lovers +2026-01-07 00:26:15,353 - INFO - Searching metadata for: autumn lovers +2026-01-07 00:26:15,495 - INFO - Updating metadata for: older_stepsister_teaches_her_cheeky_little_stepbrother +2026-01-07 00:26:15,496 - INFO - Searching metadata for: older stepsister teaches her cheeky little stepbrother +2026-01-07 00:26:15,528 - INFO - Fetching metadata from: https://nhentai.net/g/320576/ +2026-01-07 00:26:15,643 - INFO - Searching MangaUpdates for: older stepsister teaches her cheeky little stepbrother +2026-01-07 00:26:15,712 - INFO - Updating metadata for: training_the_older_sister_momomadoka +2026-01-07 00:26:15,712 - INFO - Searching metadata for: training the older sister momomadoka +2026-01-07 00:26:15,917 - INFO - Fetching metadata from: https://nhentai.net/g/546382/ +2026-01-07 00:26:16,016 - INFO - Updating metadata for: falling_in_love_at_the_brothel.5 +2026-01-07 00:26:16,016 - INFO - Searching metadata for: falling in love at the brothel.5 +2026-01-07 00:26:16,165 - INFO - Updating metadata for: doukyuusei_gal_3_ningumi_to +2026-01-07 00:26:16,165 - INFO - Searching metadata for: doukyuusei gal 3 ningumi to +2026-01-07 00:26:16,288 - INFO - Fetching metadata from: https://nhentai.net/g/574610/ +2026-01-07 00:26:16,386 - INFO - Searching MangaUpdates for: doukyuusei gal 3 ningumi to +2026-01-07 00:26:16,536 - INFO - Updating metadata for: okaasan_to_naisho +2026-01-07 00:26:16,537 - INFO - Searching metadata for: okaasan to naisho +2026-01-07 00:26:16,679 - INFO - Updating metadata for: Hitoduma Ane _ Married Sister +2026-01-07 00:26:16,679 - INFO - Searching metadata for: Hitoduma Ane Married Sister +2026-01-07 00:26:16,740 - INFO - Fetching metadata from: https://nhentai.net/g/59216/ +2026-01-07 00:26:16,847 - INFO - Searching MangaUpdates for: Hitoduma Ane Married Sister +2026-01-07 00:26:16,941 - INFO - Updating metadata for: punishment_for_the_feral_hound_in_heat +2026-01-07 00:26:16,942 - INFO - Searching metadata for: punishment for the feral hound in heat +2026-01-07 00:26:17,135 - INFO - Fetching metadata from: https://nhentai.net/g/528611/ +2026-01-07 00:26:17,260 - INFO - Updating metadata for: winter_omake_bon +2026-01-07 00:26:17,260 - INFO - Searching metadata for: winter omake bon +2026-01-07 00:26:17,342 - INFO - Updating metadata for: my_little_sister_has_a_big_body_and_a_big_heart +2026-01-07 00:26:17,342 - INFO - Searching metadata for: my little sister has a big body and a big heart +2026-01-07 00:26:17,459 - INFO - Fetching metadata from: https://nhentai.net/g/527207/ +2026-01-07 00:26:17,708 - INFO - Fetching metadata from: https://nhentai.net/g/548775/ +2026-01-07 00:26:17,713 - INFO - Updating metadata for: perverted_hypnosis_experiment +2026-01-07 00:26:17,714 - INFO - Searching metadata for: perverted hypnosis experiment +2026-01-07 00:26:17,969 - INFO - Fetching metadata from: https://nhentai.net/g/521144/ +2026-01-07 00:26:18,019 - INFO - Updating metadata for: [Emori Uki] Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 00:26:18,020 - INFO - Searching metadata for: Emori Uki Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 00:26:18,225 - INFO - Updating metadata for: kyoudai_no_naka +2026-01-07 00:26:18,225 - INFO - Searching metadata for: kyoudai no naka +2026-01-07 00:26:18,374 - INFO - Searching metadata for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 00:26:18,503 - INFO - Fetching metadata from: https://nhentai.net/g/618441/ +2026-01-07 00:26:18,781 - INFO - Updating metadata for: sometimes_i_draw_manga +2026-01-07 00:26:18,782 - INFO - Searching metadata for: sometimes i draw manga +2026-01-07 00:26:18,836 - INFO - Searching MangaUpdates for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 00:26:18,999 - INFO - Fetching metadata from: https://nhentai.net/g/519608/ +2026-01-07 00:26:19,196 - INFO - Updating metadata for: Stigmatized_Property_(2019) +2026-01-07 00:26:19,197 - INFO - Searching metadata for: Stigmatized Property +2026-01-07 00:26:19,351 - INFO - Searching MangaUpdates for: Stigmatized Property +2026-01-07 00:26:19,761 - INFO - Updating metadata for: apron +2026-01-07 00:26:19,761 - INFO - Searching metadata for: apron +2026-01-07 00:26:19,977 - INFO - Fetching metadata from: https://nhentai.net/g/621140/ +2026-01-07 00:26:20,190 - INFO - Updating metadata for: [Kazuhiro] Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-07 00:26:20,191 - INFO - Searching metadata for: Kazuhiro Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-07 00:26:20,199 - INFO - Updating metadata for: namaiki_na_hahaoya_o_honnin_ni_mo_kizukarezu_ni_minkan_suru_houhou +2026-01-07 00:26:20,200 - INFO - Searching metadata for: namaiki na hahaoya o honnin ni mo kizukarezu ni minkan suru houhou +2026-01-07 00:26:20,462 - INFO - Fetching metadata from: https://nhentai.net/g/340438/ +2026-01-07 00:26:20,512 - INFO - Fetching metadata from: https://nhentai.net/g/298780/ +2026-01-07 00:26:20,713 - INFO - Updating metadata for: [Fence14] Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-07 00:26:20,713 - INFO - Searching metadata for: Fence14 Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-07 00:26:20,720 - INFO - Updating metadata for: haha_ga_saikon_shitara_gikei_ga_chou_kuzu +2026-01-07 00:26:20,720 - INFO - Searching metadata for: haha ga saikon shitara gikei ga chou kuzu +2026-01-07 00:26:20,930 - INFO - Fetching metadata from: https://nhentai.net/g/595742/ +2026-01-07 00:26:20,999 - INFO - Fetching metadata from: https://nhentai.net/g/532104/ +2026-01-07 00:26:21,287 - INFO - Updating metadata for: sakusei_shuki_shuki_sisters +2026-01-07 00:26:21,287 - INFO - Searching metadata for: sakusei shuki shuki sisters +2026-01-07 00:26:21,292 - INFO - Updating metadata for: lets_do_it +2026-01-07 00:26:21,292 - INFO - Searching metadata for: lets do it +2026-01-07 00:26:21,481 - INFO - Fetching metadata from: https://nhentai.net/g/555633/ +2026-01-07 00:26:21,605 - INFO - Fetching metadata from: https://nhentai.net/g/588286/ +2026-01-07 00:26:21,798 - INFO - Updating metadata for: dosukebe_saimin_revenge +2026-01-07 00:26:21,798 - INFO - Searching metadata for: dosukebe saimin revenge +2026-01-07 00:26:21,865 - INFO - Updating metadata for: naomi san wa ore no sefri ch 1 +2026-01-07 00:26:21,865 - INFO - Searching metadata for: naomi san wa ore no sefri ch 1 +2026-01-07 00:26:22,201 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-07 00:26:22,312 - INFO - Fetching metadata from: https://nhentai.net/g/601989/ +2026-01-07 00:26:22,628 - INFO - Updating metadata for: namaiki_sanshimai +2026-01-07 00:26:22,628 - INFO - Searching metadata for: namaiki sanshimai +2026-01-07 00:26:22,950 - INFO - Fetching metadata from: https://nhentai.net/g/560751/ +2026-01-07 00:26:22,955 - INFO - Updating metadata for: A Son's Choice +2026-01-07 00:26:22,955 - INFO - Searching metadata for: A Son's Choice +2026-01-07 00:26:23,234 - INFO - Searching MangaUpdates for: A Son's Choice +2026-01-07 00:26:23,488 - INFO - Updating metadata for: a_story_about_my_little_sister_giving_me_titjobs +2026-01-07 00:26:23,488 - INFO - Searching metadata for: a story about my little sister giving me titjobs +2026-01-07 00:26:23,606 - INFO - Updating metadata for: [Kawamori Mizaki] Mainichi uwakidzuma {English] +2026-01-07 00:26:23,607 - INFO - Searching metadata for: Kawamori Mizaki Mainichi uwakidzuma {English] +2026-01-07 00:26:23,842 - INFO - Fetching metadata from: https://nhentai.net/g/604700/ +2026-01-07 00:26:23,900 - INFO - Fetching metadata from: https://nhentai.net/g/524952/ +2026-01-07 00:26:24,025 - INFO - Updating metadata for: skin_tight_sticky_intercourse +2026-01-07 00:26:24,025 - INFO - Searching metadata for: skin tight sticky intercourse +2026-01-07 00:26:24,226 - INFO - Fetching metadata from: https://nhentai.net/g/598517/ +2026-01-07 00:26:24,308 - INFO - Updating metadata for: fuyu_yui +2026-01-07 00:26:24,308 - INFO - Searching metadata for: fuyu yui +2026-01-07 00:26:24,589 - INFO - Fetching metadata from: https://nhentai.net/g/589928/ +2026-01-07 00:26:24,594 - INFO - Updating metadata for: [Tokyo Ereki Studio (Azuma Ryo)] JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-07 00:26:24,595 - INFO - Searching metadata for: Tokyo Ereki Studio (Azuma Ryo) JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-07 00:26:24,821 - INFO - Updating metadata for: Imouto_wa_minna_Oniichan_ga_Suki!_(2010) +2026-01-07 00:26:24,821 - INFO - Searching metadata for: Imouto wa minna Oniichan ga Suki! +2026-01-07 00:26:24,892 - INFO - Fetching metadata from: https://nhentai.net/g/618553/ +2026-01-07 00:26:25,068 - INFO - Searching MangaUpdates for: Imouto wa minna Oniichan ga Suki! +2026-01-07 00:26:25,154 - INFO - Updating metadata for: Ai_ga_Ippai_Ero_wa_Oppai_(2010) +2026-01-07 00:26:25,154 - INFO - Searching metadata for: Ai ga Ippai Ero wa Oppai +2026-01-07 00:26:25,379 - INFO - Updating metadata for: i_matched_with_my_friends_mom_chapter +2026-01-07 00:26:25,380 - INFO - Searching metadata for: i matched with my friends mom chapter +2026-01-07 00:26:25,470 - INFO - Fetching metadata from: https://nhentai.net/g/215924/ +2026-01-07 00:26:25,664 - INFO - Searching MangaUpdates for: i matched with my friends mom chapter +2026-01-07 00:26:25,962 - INFO - Updating metadata for: supplementary_sex_education +2026-01-07 00:26:25,963 - INFO - Searching metadata for: supplementary sex education +2026-01-07 00:26:26,029 - INFO - Updating metadata for: love_wheel +2026-01-07 00:26:26,029 - INFO - Searching metadata for: love wheel +2026-01-07 00:26:26,107 - INFO - Searching MangaUpdates for: supplementary sex education +2026-01-07 00:26:26,290 - INFO - Fetching metadata from: https://nhentai.net/g/599889/ +2026-01-07 00:26:26,402 - INFO - Updating metadata for: taimanin_shinobu_series +2026-01-07 00:26:26,402 - INFO - Searching metadata for: taimanin shinobu series +2026-01-07 00:26:26,571 - INFO - Searching MangaUpdates for: taimanin shinobu series +2026-01-07 00:26:26,581 - INFO - Updating metadata for: [Heart Manju Mania (Akata Izuki)] Cocoro Controller 2 [English] +2026-01-07 00:26:26,582 - INFO - Searching metadata for: Heart Manju Mania (Akata Izuki) Cocoro Controller 2 [English] +2026-01-07 00:26:26,963 - INFO - Fetching metadata from: https://nhentai.net/g/599509/ +2026-01-07 00:26:27,032 - INFO - Updating metadata for: [Sakai Hamachi] Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-07 00:26:27,033 - INFO - Searching metadata for: Sakai Hamachi Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-07 00:26:27,274 - INFO - Updating metadata for: the_sex_life_of_andy_and_leyley +2026-01-07 00:26:27,274 - INFO - Searching metadata for: the sex life of andy and leyley +2026-01-07 00:26:27,351 - INFO - Fetching metadata from: https://nhentai.net/g/602876/ +2026-01-07 00:26:27,515 - INFO - Fetching metadata from: https://nhentai.net/g/570099/ +2026-01-07 00:26:27,678 - INFO - Updating metadata for: a_molester_took_everything_from_me_chapter_ +2026-01-07 00:26:27,678 - INFO - Searching metadata for: a molester took everything from me chapter +2026-01-07 00:26:27,755 - INFO - Updating metadata for: mozzarella_the_new_slutty_pussy +2026-01-07 00:26:27,755 - INFO - Searching metadata for: mozzarella the new slutty pussy +2026-01-07 00:26:27,896 - INFO - Searching MangaUpdates for: a molester took everything from me chapter +2026-01-07 00:26:27,928 - INFO - Searching MangaUpdates for: mozzarella the new slutty pussy +2026-01-07 00:26:28,472 - INFO - Updating metadata for: [ABBB] How to make a family using hypnosis app [English] [Decensored] +2026-01-07 00:26:28,472 - INFO - Searching metadata for: ABBB How to make a family using hypnosis app [English] [Decensored] +2026-01-07 00:26:28,506 - INFO - Updating metadata for: Hoken_Shitsu_no_Aisare_Sensei_(2020) +2026-01-07 00:26:28,506 - INFO - Searching metadata for: Hoken Shitsu no Aisare Sensei +2026-01-07 00:26:28,723 - INFO - Searching MangaUpdates for: Hoken Shitsu no Aisare Sensei +2026-01-07 00:26:28,816 - INFO - Fetching metadata from: https://nhentai.net/g/431170/ +2026-01-07 00:26:29,057 - INFO - Updating metadata for: wife_pickle +2026-01-07 00:26:29,057 - INFO - Searching metadata for: wife pickle +2026-01-07 00:26:29,064 - INFO - Updating metadata for: a_loner_makes_the_right_choices_and_goes_out_with_a_seiso_girl_of_course_theres_sex_as_well +2026-01-07 00:26:29,065 - INFO - Searching metadata for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-07 00:26:29,235 - INFO - Fetching metadata from: https://nhentai.net/g/592704/ +2026-01-07 00:26:29,283 - INFO - Searching MangaUpdates for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-07 00:26:29,466 - INFO - Updating metadata for: [MN] My Big Breast Sister +2026-01-07 00:26:29,467 - INFO - Searching metadata for: MN My Big Breast Sister +2026-01-07 00:26:29,652 - INFO - Fetching metadata from: https://nhentai.net/g/609562/ +2026-01-07 00:26:29,885 - INFO - Updating metadata for: you_must_breed_your_sisters_to_leave_this_village +2026-01-07 00:26:29,886 - INFO - Searching metadata for: you must breed your sisters to leave this village +2026-01-07 00:26:29,891 - INFO - Updating metadata for: maho_shojo_ointo_seba_mazu_haha_o_iyo +2026-01-07 00:26:29,891 - INFO - Searching metadata for: maho shojo ointo seba mazu haha o iyo +2026-01-07 00:26:30,123 - INFO - Fetching metadata from: https://nhentai.net/g/587203/ +2026-01-07 00:26:30,173 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-07 00:26:30,438 - INFO - Updating metadata for: paiotsu_kaede_live +2026-01-07 00:26:30,449 - INFO - Searching metadata for: paiotsu kaede live +2026-01-07 00:26:30,471 - INFO - Updating metadata for: mother_and_son_and_father_and_daughter_tonight_is_incest_night +2026-01-07 00:26:30,471 - INFO - Searching metadata for: mother and son and father and daughter tonight is incest night +2026-01-07 00:26:30,606 - INFO - Searching MangaUpdates for: paiotsu kaede live +2026-01-07 00:26:30,720 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-07 00:26:30,851 - INFO - Updating metadata for: otakuhime_and_the_lovey_dovey_bath +2026-01-07 00:26:30,852 - INFO - Searching metadata for: otakuhime and the lovey dovey bath +2026-01-07 00:26:30,932 - INFO - Updating metadata for: [Takashima] FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-07 00:26:30,932 - INFO - Searching metadata for: Takashima FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-07 00:26:31,023 - INFO - Fetching metadata from: https://nhentai.net/g/317091/ +2026-01-07 00:26:31,225 - INFO - Fetching metadata from: https://nhentai.net/g/515808/ +2026-01-07 00:26:31,279 - INFO - Updating metadata for: airandou +2026-01-07 00:26:31,280 - INFO - Searching metadata for: airandou +2026-01-07 00:26:31,551 - INFO - Fetching metadata from: https://nhentai.net/g/620480/ +2026-01-07 00:26:31,556 - INFO - Updating metadata for: teasing_big_sis +2026-01-07 00:26:31,556 - INFO - Searching metadata for: teasing big sis +2026-01-07 00:26:31,815 - INFO - Fetching metadata from: https://nhentai.net/g/591734/ +2026-01-07 00:26:31,831 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:26:31,832 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:26:32,051 - INFO - Updating metadata for: forward +2026-01-07 00:26:32,051 - INFO - Searching metadata for: forward +2026-01-07 00:26:32,098 - INFO - Fetching metadata from: https://nhentai.net/g/560447/ +2026-01-07 00:26:32,224 - INFO - Fetching metadata from: https://nhentai.net/g/583038/ +2026-01-07 00:26:32,312 - INFO - Updating metadata for: virginity_prohibition_act_mandatory_baby_making +2026-01-07 00:26:32,312 - INFO - Searching metadata for: virginity prohibition act mandatory baby making +2026-01-07 00:26:32,476 - INFO - Searching MangaUpdates for: virginity prohibition act mandatory baby making +2026-01-07 00:26:32,490 - INFO - Updating metadata for: my_sister_doesnt_laugh +2026-01-07 00:26:32,490 - INFO - Searching metadata for: my sister doesnt laugh +2026-01-07 00:26:32,687 - INFO - Searching MangaUpdates for: my sister doesnt laugh +2026-01-07 00:26:32,795 - INFO - Updating metadata for: [Juna Juna Juice] Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-07 00:26:32,795 - INFO - Searching metadata for: Juna Juna Juice Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-07 00:26:32,966 - INFO - Updating metadata for: big_sis_wants_to_convince_her_lil_bro +2026-01-07 00:26:32,967 - INFO - Searching metadata for: big sis wants to convince her lil bro +2026-01-07 00:26:33,086 - INFO - Fetching metadata from: https://nhentai.net/g/473301/ +2026-01-07 00:26:33,289 - INFO - Fetching metadata from: https://nhentai.net/g/310401/ +2026-01-07 00:26:33,397 - INFO - Updating metadata for: the_lazy_and_naughty_achan_is_inviting_me +2026-01-07 00:26:33,397 - INFO - Searching metadata for: the lazy and naughty achan is inviting me +2026-01-07 00:26:33,542 - INFO - Updating metadata for: misato_x_shinji_baby_making +2026-01-07 00:26:33,543 - INFO - Searching metadata for: misato x shinji baby making +2026-01-07 00:26:33,597 - INFO - Searching MangaUpdates for: the lazy and naughty achan is inviting me +2026-01-07 00:26:33,712 - INFO - Searching MangaUpdates for: misato x shinji baby making +2026-01-07 00:26:34,028 - INFO - Updating metadata for: Watashi_no_Kawaii_Mochizuki-kun_(2020) +2026-01-07 00:26:34,028 - INFO - Searching metadata for: Watashi no Kawaii Mochizuki-kun +2026-01-07 00:26:34,110 - INFO - Updating metadata for: my_wife_left_me_because_i_was +2026-01-07 00:26:34,111 - INFO - Searching metadata for: my wife left me because i was +2026-01-07 00:26:34,248 - INFO - Searching MangaUpdates for: Watashi no Kawaii Mochizuki-kun +2026-01-07 00:26:34,375 - INFO - Fetching metadata from: https://nhentai.net/g/593456/ +2026-01-07 00:26:34,546 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-07 00:26:34,547 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-07 00:26:34,860 - INFO - Fetching metadata from: https://nhentai.net/g/342844/ +2026-01-07 00:26:34,870 - INFO - Updating metadata for: human_manipulating_remote_control +2026-01-07 00:26:34,871 - INFO - Searching metadata for: human manipulating remote control +2026-01-07 00:26:35,049 - INFO - Fetching metadata from: https://nhentai.net/g/598745/ +2026-01-07 00:26:35,057 - INFO - Updating metadata for: [Nedoko de Nidone (Nashio )] Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-07 00:26:35,057 - INFO - Searching metadata for: Nedoko de Nidone (Nashio ) Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-07 00:26:35,284 - INFO - Updating metadata for: bitch_na_inanesama +2026-01-07 00:26:35,285 - INFO - Searching metadata for: bitch na inanesama +2026-01-07 00:26:35,359 - INFO - Fetching metadata from: https://nhentai.net/g/584286/ +2026-01-07 00:26:35,487 - INFO - Searching MangaUpdates for: bitch na inanesama +2026-01-07 00:26:35,588 - INFO - Updating metadata for: from_nipple_bumps_to_erotic_play_with_my_sister +2026-01-07 00:26:35,588 - INFO - Searching metadata for: from nipple bumps to erotic play with my sister +2026-01-07 00:26:35,760 - INFO - Updating metadata for: family_mischief_lewd +2026-01-07 00:26:35,760 - INFO - Searching metadata for: family mischief lewd +2026-01-07 00:26:35,790 - INFO - Fetching metadata from: https://nhentai.net/g/587709/ +2026-01-07 00:26:35,960 - INFO - Fetching metadata from: https://nhentai.net/g/427171/ +2026-01-07 00:26:36,062 - INFO - Updating metadata for: heart_mark_oome +2026-01-07 00:26:36,062 - INFO - Searching metadata for: heart mark oome +2026-01-07 00:26:36,217 - INFO - Updating metadata for: [Poriuretan] Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-07 00:26:36,217 - INFO - Searching metadata for: Poriuretan Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-07 00:26:36,233 - INFO - Fetching metadata from: https://nhentai.net/g/585795/ +2026-01-07 00:26:36,453 - INFO - Fetching metadata from: https://nhentai.net/g/588809/ +2026-01-07 00:26:36,535 - INFO - Updating metadata for: [Airandou] Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 00:26:36,535 - INFO - Searching metadata for: Airandou Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 00:26:36,672 - INFO - Updating metadata for: my_daily_life_taking_care_of_sexual_urges_with_my_naughty_sister +2026-01-07 00:26:36,672 - INFO - Searching metadata for: my daily life taking care of sexual urges with my naughty sister +2026-01-07 00:26:36,736 - INFO - Searching metadata for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 00:26:36,899 - INFO - Searching MangaUpdates for: my daily life taking care of sexual urges with my naughty sister +2026-01-07 00:26:36,992 - INFO - Searching MangaUpdates for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 00:26:37,405 - INFO - Updating metadata for: a_history_of_no_boyfriends_equal_me_at_my_age +2026-01-07 00:26:37,406 - INFO - Searching metadata for: a history of no boyfriends equal me at my age +2026-01-07 00:26:37,694 - INFO - Searching MangaUpdates for: a history of no boyfriends equal me at my age +2026-01-07 00:26:37,711 - INFO - Updating metadata for: everyday_conversations_with_my_big_sister +2026-01-07 00:26:37,711 - INFO - Searching metadata for: everyday conversations with my big sister +2026-01-07 00:26:37,852 - INFO - Searching MangaUpdates for: everyday conversations with my big sister +2026-01-07 00:26:38,246 - INFO - Updating metadata for: one_familys_plan_to_save_electricty +2026-01-07 00:26:38,246 - INFO - Searching metadata for: one familys plan to save electricty +2026-01-07 00:26:38,361 - INFO - Updating metadata for: [R Koubou (Ruzi)] Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 00:26:38,362 - INFO - Searching metadata for: R Koubou (Ruzi) Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 00:26:38,463 - INFO - Searching MangaUpdates for: one familys plan to save electricty +2026-01-07 00:26:38,704 - INFO - Searching metadata for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 00:26:38,754 - INFO - Updating metadata for: what_we_have_is_strictly_business +2026-01-07 00:26:38,754 - INFO - Searching metadata for: what we have is strictly business +2026-01-07 00:26:39,007 - INFO - Searching MangaUpdates for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 00:26:39,052 - INFO - Fetching metadata from: https://nhentai.net/g/596884/ +2026-01-07 00:26:39,263 - INFO - Updating metadata for: [Juna Juna Juice] Pokemon Series (Pokemon) [English] +2026-01-07 00:26:39,263 - INFO - Searching metadata for: Juna Juna Juice Pokemon Series (Pokemon) [English] +2026-01-07 00:26:39,464 - INFO - Fetching metadata from: https://nhentai.net/g/595886/ +2026-01-07 00:26:39,513 - INFO - Updating metadata for: aneoto +2026-01-07 00:26:39,514 - INFO - Searching metadata for: aneoto +2026-01-07 00:26:39,741 - INFO - Fetching metadata from: https://nhentai.net/g/578213/ +2026-01-07 00:26:39,810 - INFO - Updating metadata for: bitch_dirty_sister +2026-01-07 00:26:39,810 - INFO - Searching metadata for: bitch dirty sister +2026-01-07 00:26:39,982 - INFO - Fetching metadata from: https://nhentai.net/g/317791/ +2026-01-07 00:26:40,010 - INFO - Updating metadata for: the_making_of_a_cultt_leader +2026-01-07 00:26:40,011 - INFO - Searching metadata for: the making of a cultt leader +2026-01-07 00:26:40,200 - INFO - Updating metadata for: kayanee_and_the_old_man_memories_chapter +2026-01-07 00:26:40,200 - INFO - Searching metadata for: kayanee and the old man memories chapter +2026-01-07 00:26:40,234 - INFO - Searching MangaUpdates for: the making of a cultt leader +2026-01-07 00:26:40,371 - INFO - Searching MangaUpdates for: kayanee and the old man memories chapter +2026-01-07 00:26:40,780 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 00:26:40,781 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 00:26:40,883 - INFO - Updating metadata for: momojiri_ocean +2026-01-07 00:26:40,884 - INFO - Searching metadata for: momojiri ocean +2026-01-07 00:26:41,074 - INFO - Fetching metadata from: https://nhentai.net/g/164037/ +2026-01-07 00:26:41,109 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 00:26:41,267 - INFO - Updating metadata for: daily_life_with_my_sexy_stepmom +2026-01-07 00:26:41,267 - INFO - Searching metadata for: daily life with my sexy stepmom +2026-01-07 00:26:41,420 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 00:26:41,466 - INFO - Fetching metadata from: https://nhentai.net/g/519708/ +2026-01-07 00:26:41,708 - INFO - Updating metadata for: older_stepsister_teaches_her_cheeky_little_stepbrother +2026-01-07 00:26:41,709 - INFO - Searching metadata for: older stepsister teaches her cheeky little stepbrother +2026-01-07 00:26:41,895 - INFO - Searching MangaUpdates for: older stepsister teaches her cheeky little stepbrother +2026-01-07 00:26:42,509 - INFO - Updating metadata for: falling_in_love_at_the_brothel.5 +2026-01-07 00:26:42,509 - INFO - Searching metadata for: falling in love at the brothel.5 +2026-01-07 00:26:42,777 - INFO - Updating metadata for: watashi_de_sukkiri_saasechaina_hatsukoi_aite_ni_tsurareru_ore +2026-01-07 00:26:42,777 - INFO - Searching metadata for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-07 00:26:42,868 - INFO - Fetching metadata from: https://nhentai.net/g/574610/ +2026-01-07 00:26:42,982 - INFO - Searching MangaUpdates for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-07 00:26:43,136 - INFO - Updating metadata for: okaasan_to_naisho +2026-01-07 00:26:43,136 - INFO - Searching metadata for: okaasan to naisho +2026-01-07 00:26:43,342 - INFO - Fetching metadata from: https://nhentai.net/g/59216/ +2026-01-07 00:26:43,575 - INFO - Updating metadata for: punishment_for_the_feral_hound_in_heat +2026-01-07 00:26:43,575 - INFO - Searching metadata for: punishment for the feral hound in heat +2026-01-07 00:26:43,590 - INFO - Updating metadata for: perverted_body_tight_mama_monster +2026-01-07 00:26:43,590 - INFO - Searching metadata for: perverted body tight mama monster +2026-01-07 00:26:43,767 - INFO - Fetching metadata from: https://nhentai.net/g/544653/ +2026-01-07 00:26:43,805 - INFO - Fetching metadata from: https://nhentai.net/g/528611/ +2026-01-07 00:26:44,024 - INFO - Updating metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-07 00:26:44,025 - INFO - Searching metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-07 00:26:44,029 - INFO - Updating metadata for: my_little_sister_has_a_big_body_and_a_big_heart +2026-01-07 00:26:44,029 - INFO - Searching metadata for: my little sister has a big body and a big heart +2026-01-07 00:26:44,252 - INFO - Fetching metadata from: https://nhentai.net/g/496743/ +2026-01-07 00:26:44,323 - INFO - Fetching metadata from: https://nhentai.net/g/548775/ +2026-01-07 00:26:44,646 - INFO - Updating metadata for: gishi_ni_shiborareru_hanashi +2026-01-07 00:26:44,646 - INFO - Searching metadata for: gishi ni shiborareru hanashi +2026-01-07 00:26:44,656 - INFO - Updating metadata for: [Emori Uki] Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 00:26:44,656 - INFO - Searching metadata for: Emori Uki Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 00:26:44,853 - INFO - Fetching metadata from: https://nhentai.net/g/588299/ +2026-01-07 00:26:45,053 - INFO - Searching metadata for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 00:26:45,105 - INFO - Updating metadata for: [Nishikawa Kou] Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 00:26:45,105 - INFO - Searching metadata for: Nishikawa Kou Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 00:26:45,420 - INFO - Searching MangaUpdates for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 00:26:45,553 - INFO - Searching metadata for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 00:26:45,850 - INFO - Searching MangaUpdates for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 00:26:45,990 - INFO - Starting metadata update in /comics/manga (Force: True)... +2026-01-07 00:26:46,058 - INFO - Updating metadata for: catch_you_at_the_indoor_beach +2026-01-07 00:26:46,058 - INFO - Searching metadata for: catch you at the indoor beach +2026-01-07 00:26:46,236 - INFO - Updating metadata for: [Kazuhiro] Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-07 00:26:46,236 - INFO - Searching metadata for: Kazuhiro Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-07 00:26:46,290 - INFO - Searching MangaUpdates for: catch you at the indoor beach +2026-01-07 00:26:46,412 - INFO - Updating metadata for: call_me_a_slut +2026-01-07 00:26:46,412 - INFO - Searching metadata for: call me a slut +2026-01-07 00:26:46,510 - INFO - Fetching metadata from: https://nhentai.net/g/340438/ +2026-01-07 00:26:46,677 - INFO - Fetching metadata from: https://nhentai.net/g/532748/ +2026-01-07 00:26:46,725 - INFO - Updating metadata for: [Fence14] Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-07 00:26:46,725 - INFO - Searching metadata for: Fence14 Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-07 00:26:46,727 - INFO - Updating metadata for: [Omapuu] Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-07 00:26:46,728 - INFO - Searching metadata for: Omapuu Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-07 00:26:46,841 - INFO - Updating metadata for: rental_mama_rental_mom +2026-01-07 00:26:46,841 - INFO - Searching metadata for: rental mama rental mom +2026-01-07 00:26:46,963 - INFO - Fetching metadata from: https://nhentai.net/g/595742/ +2026-01-07 00:26:46,985 - INFO - Fetching metadata from: https://nhentai.net/g/602806/ +2026-01-07 00:26:47,056 - INFO - Fetching metadata from: https://nhentai.net/g/593813/ +2026-01-07 00:26:47,452 - INFO - Updating metadata for: [Kazuhiro] Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-07 00:26:47,453 - INFO - Searching metadata for: Kazuhiro Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-07 00:26:47,455 - INFO - Updating metadata for: sakusei_shuki_shuki_sisters +2026-01-07 00:26:47,455 - INFO - Updating metadata for: oshi_to_ecchina_koto_nante_muri_muri_muri +2026-01-07 00:26:47,456 - INFO - Searching metadata for: sakusei shuki shuki sisters +2026-01-07 00:26:47,456 - INFO - Searching metadata for: oshi to ecchina koto nante muri muri muri +2026-01-07 00:26:47,657 - INFO - Fetching metadata from: https://nhentai.net/g/268292/ +2026-01-07 00:26:47,675 - INFO - Fetching metadata from: https://nhentai.net/g/555633/ +2026-01-07 00:26:47,720 - INFO - Searching MangaUpdates for: oshi to ecchina koto nante muri muri muri +2026-01-07 00:26:48,121 - INFO - Updating metadata for: dosukebe_saimin_revenge +2026-01-07 00:26:48,122 - INFO - Searching metadata for: dosukebe saimin revenge +2026-01-07 00:26:48,125 - INFO - Updating metadata for: Kateinai Henai +2026-01-07 00:26:48,125 - INFO - Searching metadata for: Kateinai Henai +2026-01-07 00:26:48,126 - INFO - Updating metadata for: Injoku_no_Kizuna_(2006) +2026-01-07 00:26:48,126 - INFO - Searching metadata for: Injoku no Kizuna +2026-01-07 00:26:48,284 - INFO - Fetching metadata from: https://nhentai.net/g/603393/ +2026-01-07 00:26:48,335 - INFO - Searching MangaUpdates for: Injoku no Kizuna +2026-01-07 00:26:48,358 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-07 00:26:48,819 - INFO - Updating metadata for: [Itaba Hiroshi] Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 00:26:48,820 - INFO - Searching metadata for: Itaba Hiroshi Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 00:26:48,823 - INFO - Updating metadata for: devi_navi +2026-01-07 00:26:48,823 - INFO - Searching metadata for: devi navi +2026-01-07 00:26:48,827 - INFO - Updating metadata for: A Son's Choice +2026-01-07 00:26:48,827 - INFO - Searching metadata for: A Son's Choice +2026-01-07 00:26:49,005 - INFO - Fetching metadata from: https://nhentai.net/g/596339/ +2026-01-07 00:26:49,033 - INFO - Searching metadata for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 00:26:49,095 - INFO - Searching MangaUpdates for: A Son's Choice +2026-01-07 00:26:49,190 - INFO - Searching MangaUpdates for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 00:26:49,421 - INFO - Updating metadata for: [Chiguchi Miri] Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 00:26:49,421 - INFO - Searching metadata for: Chiguchi Miri Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 00:26:49,643 - INFO - Searching metadata for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 00:26:49,660 - INFO - Updating metadata for: [Kawamori Mizaki] Mainichi uwakidzuma {English] +2026-01-07 00:26:49,660 - INFO - Searching metadata for: Kawamori Mizaki Mainichi uwakidzuma {English] +2026-01-07 00:26:49,712 - INFO - Updating metadata for: shounen_ga_otona_ni_natta_natsu +2026-01-07 00:26:49,712 - INFO - Searching metadata for: shounen ga otona ni natta natsu +2026-01-07 00:26:49,840 - INFO - Fetching metadata from: https://nhentai.net/g/604700/ +2026-01-07 00:26:50,033 - INFO - Fetching metadata from: https://nhentai.net/g/571244/ +2026-01-07 00:26:50,087 - INFO - Searching MangaUpdates for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 00:26:50,097 - INFO - Updating metadata for: skin_tight_sticky_intercourse +2026-01-07 00:26:50,097 - INFO - Searching metadata for: skin tight sticky intercourse +2026-01-07 00:26:50,284 - INFO - Fetching metadata from: https://nhentai.net/g/598517/ +2026-01-07 00:26:50,442 - INFO - Updating metadata for: i_have_no_choice_but_to_have_sex_with_my_mother_chapter +2026-01-07 00:26:50,443 - INFO - Searching metadata for: i have no choice but to have sex with my mother chapter +2026-01-07 00:26:50,572 - INFO - Updating metadata for: [Tokyo Ereki Studio (Azuma Ryo)] JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-07 00:26:50,572 - INFO - Searching metadata for: Tokyo Ereki Studio (Azuma Ryo) JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-07 00:26:50,772 - INFO - Searching MangaUpdates for: i have no choice but to have sex with my mother chapter +2026-01-07 00:26:50,813 - INFO - Updating metadata for: [Muufa] One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 00:26:50,813 - INFO - Searching metadata for: Muufa One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 00:26:50,850 - INFO - Fetching metadata from: https://nhentai.net/g/618553/ +2026-01-07 00:26:50,993 - INFO - Searching metadata for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 00:26:51,095 - INFO - Updating metadata for: Ai_ga_Ippai_Ero_wa_Oppai_(2010) +2026-01-07 00:26:51,096 - INFO - Searching metadata for: Ai ga Ippai Ero wa Oppai +2026-01-07 00:26:51,099 - INFO - Updating metadata for: [Airandou] Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-07 00:26:51,099 - INFO - Searching metadata for: Airandou Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-07 00:26:51,207 - INFO - Searching MangaUpdates for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 00:26:51,394 - INFO - Fetching metadata from: https://nhentai.net/g/215924/ +2026-01-07 00:26:51,420 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-07 00:26:51,790 - INFO - Updating metadata for: supplementary_sex_education +2026-01-07 00:26:51,791 - INFO - Updating metadata for: on_a_stormy_night +2026-01-07 00:26:51,791 - INFO - Searching metadata for: supplementary sex education +2026-01-07 00:26:51,791 - INFO - Searching metadata for: on a stormy night +2026-01-07 00:26:51,795 - INFO - Updating metadata for: leave_me_alone +2026-01-07 00:26:51,796 - INFO - Searching metadata for: leave me alone +2026-01-07 00:26:51,958 - INFO - Searching MangaUpdates for: supplementary sex education +2026-01-07 00:26:52,064 - INFO - Fetching metadata from: https://nhentai.net/g/557684/ +2026-01-07 00:26:52,096 - INFO - Fetching metadata from: https://nhentai.net/g/616543/ +2026-01-07 00:26:52,160 - INFO - Updating metadata for: taimanin_shinobu_series +2026-01-07 00:26:52,161 - INFO - Searching metadata for: taimanin shinobu series +2026-01-07 00:26:52,329 - INFO - Searching MangaUpdates for: taimanin shinobu series +2026-01-07 00:26:52,334 - INFO - Updating metadata for: the_day_the_youngest_son_lost_his_virginity_thanks_to_his_mother_in_a_swimsuit +2026-01-07 00:26:52,335 - INFO - Searching metadata for: the day the youngest son lost his virginity thanks to his mother in a swimsuit +2026-01-07 00:26:52,340 - INFO - Updating metadata for: jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-07 00:26:52,341 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter +2026-01-07 00:26:52,497 - INFO - Searching MangaUpdates for: jibakureichan wa oppai ga yowai chapter +2026-01-07 00:26:52,554 - INFO - Updating metadata for: [Sakai Hamachi] Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-07 00:26:52,555 - INFO - Searching metadata for: Sakai Hamachi Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-07 00:26:52,635 - INFO - Fetching metadata from: https://nhentai.net/g/550368/ +2026-01-07 00:26:52,877 - INFO - Updating metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-07 00:26:52,877 - INFO - Searching metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-07 00:26:52,883 - INFO - Updating metadata for: misaesan_no_shiri_ass +2026-01-07 00:26:52,884 - INFO - Searching metadata for: misaesan no shiri ass +2026-01-07 00:26:52,939 - INFO - Fetching metadata from: https://nhentai.net/g/602876/ +2026-01-07 00:26:53,034 - INFO - Searching MangaUpdates for: misaesan no shiri ass +2026-01-07 00:26:53,088 - INFO - Searching MangaUpdates for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-07 00:26:53,170 - INFO - Updating metadata for: a_molester_took_everything_from_me_chapter_ +2026-01-07 00:26:53,171 - INFO - Searching metadata for: a molester took everything from me chapter +2026-01-07 00:26:53,354 - INFO - Updating metadata for: and_then_i_will_be_a_mom +2026-01-07 00:26:53,355 - INFO - Searching metadata for: and then i will be a mom +2026-01-07 00:26:53,414 - INFO - Searching MangaUpdates for: a molester took everything from me chapter +2026-01-07 00:26:53,614 - INFO - Updating metadata for: last_day_of_summer_vacation_sex_sex_sex +2026-01-07 00:26:53,615 - INFO - Searching metadata for: last day of summer vacation sex sex sex +2026-01-07 00:26:53,739 - INFO - Searching MangaUpdates for: and then i will be a mom +2026-01-07 00:26:53,789 - INFO - Searching MangaUpdates for: last day of summer vacation sex sex sex +2026-01-07 00:26:53,808 - INFO - Updating metadata for: Hoken_Shitsu_no_Aisare_Sensei_(2020) +2026-01-07 00:26:53,808 - INFO - Searching metadata for: Hoken Shitsu no Aisare Sensei +2026-01-07 00:26:54,038 - INFO - Searching MangaUpdates for: Hoken Shitsu no Aisare Sensei +2026-01-07 00:26:54,161 - INFO - Updating metadata for: SEX Shinai to Derarenai Heya desu. _ The Room You Can't Leave Until You Have Sex +2026-01-07 00:26:54,161 - INFO - Searching metadata for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-07 00:26:54,326 - INFO - Updating metadata for: a_molester_took_everything_from_me +2026-01-07 00:26:54,326 - INFO - Searching metadata for: a molester took everything from me +2026-01-07 00:26:54,330 - INFO - Updating metadata for: a_loner_makes_the_right_choices_and_goes_out_with_a_seiso_girl_of_course_theres_sex_as_well +2026-01-07 00:26:54,330 - INFO - Searching metadata for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-07 00:26:54,471 - INFO - Searching MangaUpdates for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-07 00:26:54,542 - INFO - Fetching metadata from: https://nhentai.net/g/602000/ +2026-01-07 00:26:54,646 - INFO - Searching MangaUpdates for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-07 00:26:54,754 - INFO - Updating metadata for: will_you_help_me +2026-01-07 00:26:54,754 - INFO - Searching metadata for: will you help me +2026-01-07 00:26:54,997 - INFO - Fetching metadata from: https://nhentai.net/g/277925/ +2026-01-07 00:26:55,002 - INFO - Updating metadata for: [Utsutsu Minoru] Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-07 00:26:55,002 - INFO - Searching metadata for: Utsutsu Minoru Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-07 00:26:55,201 - INFO - Fetching metadata from: https://nhentai.net/g/268598/ +2026-01-07 00:26:55,209 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-07 00:26:55,210 - INFO - Searching metadata for: Manbou Shoten Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-07 00:26:55,460 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-07 00:26:55,473 - INFO - Updating metadata for: [Yue] Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-07 00:26:55,473 - INFO - Searching metadata for: Yue Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-07 00:26:55,680 - INFO - Updating metadata for: katamichi_catchball +2026-01-07 00:26:55,680 - INFO - Searching metadata for: katamichi catchball +2026-01-07 00:26:55,743 - INFO - Fetching metadata from: https://nhentai.net/g/571461/ +2026-01-07 00:26:55,832 - INFO - Fetching metadata from: https://nhentai.net/g/528903/ +2026-01-07 00:26:56,007 - INFO - Updating metadata for: mama_nge +2026-01-07 00:26:56,007 - INFO - Searching metadata for: mama nge +2026-01-07 00:26:56,059 - INFO - Updating metadata for: maho_shojo_ointo_seba_mazu_haha_o_iyo +2026-01-07 00:26:56,060 - INFO - Searching metadata for: maho shojo ointo seba mazu haha o iyo +2026-01-07 00:26:56,065 - INFO - Updating metadata for: bareback_sex_life_with_da_vinci +2026-01-07 00:26:56,066 - INFO - Searching metadata for: bareback sex life with da vinci +2026-01-07 00:26:56,212 - INFO - Fetching metadata from: https://nhentai.net/g/375142/ +2026-01-07 00:26:56,305 - INFO - Fetching metadata from: https://nhentai.net/g/250741/ +2026-01-07 00:26:56,330 - INFO - Fetching metadata from: https://nhentai.net/g/587203/ +2026-01-07 00:26:56,450 - INFO - Updating metadata for: a_story_about_getting_trained_by_my_older_sister +2026-01-07 00:26:56,455 - INFO - Searching metadata for: a story about getting trained by my older sister +2026-01-07 00:26:56,620 - INFO - Updating metadata for: my_defenseless_mothers +2026-01-07 00:26:56,621 - INFO - Searching metadata for: my defenseless mothers +2026-01-07 00:26:56,627 - INFO - Updating metadata for: paiotsu_kaede_live +2026-01-07 00:26:56,627 - INFO - Searching metadata for: paiotsu kaede live +2026-01-07 00:26:56,715 - INFO - Fetching metadata from: https://nhentai.net/g/491013/ +2026-01-07 00:26:56,803 - INFO - Searching MangaUpdates for: my defenseless mothers +2026-01-07 00:26:56,820 - INFO - Searching MangaUpdates for: paiotsu kaede live +2026-01-07 00:26:56,932 - INFO - Updating metadata for: shake_hip +2026-01-07 00:26:56,932 - INFO - Searching metadata for: shake hip +2026-01-07 00:26:57,049 - INFO - Updating metadata for: otakuhime_and_the_lovey_dovey_bath +2026-01-07 00:26:57,049 - INFO - Searching metadata for: otakuhime and the lovey dovey bath +2026-01-07 00:26:57,109 - INFO - Fetching metadata from: https://nhentai.net/g/111922/ +2026-01-07 00:26:57,156 - INFO - Updating metadata for: a_day_for_incest +2026-01-07 00:26:57,156 - INFO - Searching metadata for: a day for incest +2026-01-07 00:26:57,244 - INFO - Fetching metadata from: https://nhentai.net/g/317091/ +2026-01-07 00:26:57,354 - INFO - Updating metadata for: [Hannya san] Mom son +2026-01-07 00:26:57,355 - INFO - Searching metadata for: Hannya san Mom son +2026-01-07 00:26:57,389 - INFO - Fetching metadata from: https://nhentai.net/g/497650/ +2026-01-07 00:26:57,566 - INFO - Fetching metadata from: https://nhentai.net/g/606383/ +2026-01-07 00:26:57,871 - INFO - Updating metadata for: airandou +2026-01-07 00:26:57,871 - INFO - Searching metadata for: airandou +2026-01-07 00:26:57,919 - INFO - Updating metadata for: jagan_no_saimin_inryoku_de_seitokai_les_joshitachi +2026-01-07 00:26:57,919 - INFO - Searching metadata for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-07 00:26:57,925 - INFO - Updating metadata for: Frustrated Share House Residents +2026-01-07 00:26:57,926 - INFO - Searching metadata for: Frustrated Share House Residents +2026-01-07 00:26:58,149 - INFO - Searching MangaUpdates for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-07 00:26:58,182 - INFO - Fetching metadata from: https://nhentai.net/g/539658/ +2026-01-07 00:26:58,216 - INFO - Fetching metadata from: https://nhentai.net/g/620480/ +2026-01-07 00:26:58,219 - INFO - Searching MangaUpdates for: Frustrated Share House Residents +2026-01-07 00:26:58,509 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:26:58,509 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:26:58,615 - INFO - Updating metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-07 00:26:58,616 - INFO - Searching metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-07 00:26:58,711 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite_chapter_ +2026-01-07 00:26:58,711 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-07 00:26:58,728 - INFO - Fetching metadata from: https://nhentai.net/g/560447/ +2026-01-07 00:26:58,734 - INFO - Searching MangaUpdates for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-07 00:26:59,002 - INFO - Fetching metadata from: https://nhentai.net/g/571333/ +2026-01-07 00:26:59,244 - INFO - Updating metadata for: virginity_prohibition_act_mandatory_baby_making +2026-01-07 00:26:59,246 - INFO - Searching metadata for: virginity prohibition act mandatory baby making +2026-01-07 00:26:59,254 - INFO - Updating metadata for: making_a_bet_with_a_competitive_niece +2026-01-07 00:26:59,254 - INFO - Searching metadata for: making a bet with a competitive niece +2026-01-07 00:26:59,260 - INFO - Updating metadata for: oni_no_kyouiku_mama_ga_musuko_to_amaama_sex_made +2026-01-07 00:26:59,261 - INFO - Searching metadata for: oni no kyouiku mama ga musuko to amaama sex made +2026-01-07 00:26:59,452 - INFO - Searching MangaUpdates for: virginity prohibition act mandatory baby making +2026-01-07 00:26:59,518 - INFO - Searching MangaUpdates for: making a bet with a competitive niece +2026-01-07 00:26:59,688 - INFO - Fetching metadata from: https://nhentai.net/g/605131/ +2026-01-07 00:26:59,818 - INFO - Updating metadata for: [Juna Juna Juice] Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-07 00:26:59,818 - INFO - Searching metadata for: Juna Juna Juice Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-07 00:26:59,935 - INFO - Updating metadata for: immoral_relationship +2026-01-07 00:26:59,936 - INFO - Updating metadata for: [k8on] It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 00:26:59,937 - INFO - Searching metadata for: immoral relationship +2026-01-07 00:26:59,939 - INFO - Searching metadata for: k8on It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 00:26:59,957 - INFO - Searching MangaUpdates for: immoral relationship +2026-01-07 00:26:59,961 - INFO - Searching metadata for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 00:27:00,198 - INFO - Fetching metadata from: https://nhentai.net/g/473301/ +2026-01-07 00:27:00,250 - INFO - Updating metadata for: quick_return_home +2026-01-07 00:27:00,251 - INFO - Searching metadata for: quick return home +2026-01-07 00:27:00,439 - INFO - Updating metadata for: the_lazy_and_naughty_achan_is_inviting_me +2026-01-07 00:27:00,439 - INFO - Searching metadata for: the lazy and naughty achan is inviting me +2026-01-07 00:27:00,565 - INFO - Fetching metadata from: https://nhentai.net/g/285865/ +2026-01-07 00:27:00,583 - INFO - Searching MangaUpdates for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 00:27:00,639 - INFO - Searching MangaUpdates for: the lazy and naughty achan is inviting me +2026-01-07 00:27:00,886 - INFO - Updating metadata for: sister_succubus +2026-01-07 00:27:00,887 - INFO - Searching metadata for: sister succubus +2026-01-07 00:27:01,122 - INFO - Fetching metadata from: https://nhentai.net/g/619320/ +2026-01-07 00:27:01,192 - INFO - Updating metadata for: Watashi_no_Kawaii_Mochizuki-kun_(2020) +2026-01-07 00:27:01,192 - INFO - Searching metadata for: Watashi no Kawaii Mochizuki-kun +2026-01-07 00:27:01,500 - INFO - Searching MangaUpdates for: Watashi no Kawaii Mochizuki-kun +2026-01-07 00:27:01,628 - INFO - Updating metadata for: the_twins_next_door_were_former_super_sentai +2026-01-07 00:27:01,629 - INFO - Searching metadata for: the twins next door were former super sentai +2026-01-07 00:27:01,634 - INFO - Updating metadata for: i_fell_for_a_female_ghost +2026-01-07 00:27:01,634 - INFO - Searching metadata for: i fell for a female ghost +2026-01-07 00:27:01,832 - INFO - Fetching metadata from: https://nhentai.net/g/589945/ +2026-01-07 00:27:01,877 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-07 00:27:01,877 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-07 00:27:01,935 - INFO - Fetching metadata from: https://nhentai.net/g/545216/ +2026-01-07 00:27:02,032 - INFO - Updating metadata for: nureane_batsuichi_no_ane_to_sex_o_shita_natsu_no_yoru +2026-01-07 00:27:02,033 - INFO - Searching metadata for: nureane batsuichi no ane to sex o shita natsu no yoru +2026-01-07 00:27:02,164 - INFO - Fetching metadata from: https://nhentai.net/g/342844/ +2026-01-07 00:27:02,170 - INFO - Updating metadata for: [Mata Ashita (Oohira Sunset)] Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun_tl] [Digital] +2026-01-07 00:27:02,170 - INFO - Searching metadata for: Mata Ashita (Oohira Sunset) Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-07 00:27:02,359 - INFO - Fetching metadata from: https://nhentai.net/g/413708/ +2026-01-07 00:27:02,402 - INFO - Updating metadata for: [Nedoko de Nidone (Nashio )] Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-07 00:27:02,402 - INFO - Searching metadata for: Nedoko de Nidone (Nashio ) Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-07 00:27:02,677 - INFO - Fetching metadata from: https://nhentai.net/g/584286/ +2026-01-07 00:27:02,685 - INFO - Searching metadata for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-07 00:27:02,694 - INFO - Updating metadata for: [Juna Juna Juice] Supergirl From The JJJ Universe (The Flash) [English] +2026-01-07 00:27:02,694 - INFO - Searching metadata for: Juna Juna Juice Supergirl From The JJJ Universe (The Flash) [English] +2026-01-07 00:27:02,983 - INFO - Fetching metadata from: https://nhentai.net/g/462209/ +2026-01-07 00:27:03,024 - INFO - Updating metadata for: from_nipple_bumps_to_erotic_play_with_my_sister +2026-01-07 00:27:03,024 - INFO - Searching metadata for: from nipple bumps to erotic play with my sister +2026-01-07 00:27:03,215 - INFO - Updating metadata for: shes_always_obstinate +2026-01-07 00:27:03,215 - INFO - Searching metadata for: shes always obstinate +2026-01-07 00:27:03,236 - INFO - Searching MangaUpdates for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-07 00:27:03,301 - INFO - Fetching metadata from: https://nhentai.net/g/587709/ +2026-01-07 00:27:03,390 - INFO - Searching MangaUpdates for: shes always obstinate +2026-01-07 00:27:03,584 - INFO - Updating metadata for: heart_mark_oome +2026-01-07 00:27:03,584 - INFO - Searching metadata for: heart mark oome +2026-01-07 00:27:03,792 - INFO - Fetching metadata from: https://nhentai.net/g/585795/ +2026-01-07 00:27:04,005 - INFO - Updating metadata for: mikamikuns_incestuous_situation +2026-01-07 00:27:04,010 - INFO - Searching metadata for: mikamikuns incestuous situation +2026-01-07 00:27:04,119 - INFO - Updating metadata for: shrine_maidens_of_injin +2026-01-07 00:27:04,119 - INFO - Searching metadata for: shrine maidens of injin +2026-01-07 00:27:04,122 - INFO - Updating metadata for: [Airandou] Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 00:27:04,123 - INFO - Searching metadata for: Airandou Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 00:27:04,164 - INFO - Searching MangaUpdates for: mikamikuns incestuous situation +2026-01-07 00:27:04,307 - INFO - Fetching metadata from: https://nhentai.net/g/574337/ +2026-01-07 00:27:04,400 - INFO - Searching metadata for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 00:27:04,582 - INFO - Updating metadata for: the_daily_lives_of_an_older_brother_x_four_younger_sister +2026-01-07 00:27:04,583 - INFO - Searching metadata for: the daily lives of an older brother x four younger sister +2026-01-07 00:27:04,586 - INFO - Updating metadata for: [Yue] Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-07 00:27:04,587 - INFO - Searching metadata for: Yue Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-07 00:27:04,627 - INFO - Searching MangaUpdates for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 00:27:04,916 - INFO - Searching MangaUpdates for: the daily lives of an older brother x four younger sister +2026-01-07 00:27:04,932 - INFO - Fetching metadata from: https://nhentai.net/g/588579/ +2026-01-07 00:27:05,006 - INFO - Updating metadata for: everyday_conversations_with_my_big_sister +2026-01-07 00:27:05,007 - INFO - Searching metadata for: everyday conversations with my big sister +2026-01-07 00:27:05,159 - INFO - Updating metadata for: Jujutsu_Kaisen_dj_-_○○○_Shinai_to_Derarenai_Heya_√A_(2021) +2026-01-07 00:27:05,159 - INFO - Searching metadata for: Jujutsu Kaisen dj - ○○○ Shinai to Derarenai Heya √A +2026-01-07 00:27:05,175 - INFO - Searching MangaUpdates for: everyday conversations with my big sister +2026-01-07 00:27:05,327 - INFO - Updating metadata for: all_eyes_on_me +2026-01-07 00:27:05,328 - INFO - Searching metadata for: all eyes on me +2026-01-07 00:27:05,347 - INFO - Searching MangaUpdates for: Jujutsu Kaisen dj - ○○○ Shinai to Derarenai Heya √A +2026-01-07 00:27:05,479 - INFO - Updating metadata for: [R Koubou (Ruzi)] Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 00:27:05,480 - INFO - Searching metadata for: R Koubou (Ruzi) Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 00:27:05,629 - INFO - Fetching metadata from: https://nhentai.net/g/311059/ +2026-01-07 00:27:05,721 - INFO - Updating metadata for: [Pentacle(Shimipan)] I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-07 00:27:05,721 - INFO - Searching metadata for: Pentacle(Shimipan) I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-07 00:27:05,774 - INFO - Searching metadata for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 00:27:05,828 - INFO - Searching MangaUpdates for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 00:27:05,847 - INFO - Updating metadata for: sister_was_thinking_about_her_younger_brothers_sexual_desire_chapter +2026-01-07 00:27:05,848 - INFO - Searching metadata for: sister was thinking about her younger brothers sexual desire chapter +2026-01-07 00:27:05,900 - INFO - Searching MangaUpdates for: sister was thinking about her younger brothers sexual desire chapter +2026-01-07 00:27:06,143 - INFO - Fetching metadata from: https://nhentai.net/g/603112/ +2026-01-07 00:27:06,171 - INFO - Searching metadata for: I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-07 00:27:06,525 - INFO - Updating metadata for: aneoto +2026-01-07 00:27:06,526 - INFO - Searching metadata for: aneoto +2026-01-07 00:27:06,530 - INFO - Updating metadata for: two_big_tit_gals_find_a_bored_boy +2026-01-07 00:27:06,531 - INFO - Searching metadata for: two big tit gals find a bored boy +2026-01-07 00:27:06,638 - INFO - Searching MangaUpdates for: aneoto +2026-01-07 00:27:06,646 - INFO - Searching MangaUpdates for: two big tit gals find a bored boy +2026-01-07 00:27:06,907 - INFO - Updating metadata for: the_making_of_a_cultt_leader +2026-01-07 00:27:06,907 - INFO - Searching metadata for: the making of a cultt leader +2026-01-07 00:27:06,982 - INFO - Fetching metadata from: https://nhentai.net/g/603112/ +2026-01-07 00:27:07,199 - INFO - Updating metadata for: a_sulky_older_sister_who_wants_to_concentrate_on_her_studies +2026-01-07 00:27:07,199 - INFO - Searching metadata for: a sulky older sister who wants to concentrate on her studies +2026-01-07 00:27:07,354 - INFO - Searching MangaUpdates for: the making of a cultt leader +2026-01-07 00:27:07,390 - INFO - Searching MangaUpdates for: a sulky older sister who wants to concentrate on her studies +2026-01-07 00:27:07,440 - INFO - Updating metadata for: my_big_little_sister +2026-01-07 00:27:07,440 - INFO - Searching metadata for: my big little sister +2026-01-07 00:27:07,467 - INFO - Searching MangaUpdates for: my big little sister +2026-01-07 00:27:07,911 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 00:27:07,911 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 00:27:08,033 - INFO - Updating metadata for: [Zandoro] A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-07 00:27:08,034 - INFO - Searching metadata for: Zandoro A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-07 00:27:08,279 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 00:27:08,294 - INFO - Updating metadata for: asekaki_nee_no_neteiru_aida_ni +2026-01-07 00:27:08,295 - INFO - Searching metadata for: asekaki nee no neteiru aida ni +2026-01-07 00:27:08,499 - INFO - Fetching metadata from: https://nhentai.net/g/582285/ +2026-01-07 00:27:08,561 - INFO - Fetching metadata from: https://nhentai.net/g/589040/ +2026-01-07 00:27:08,606 - INFO - Searching MangaUpdates for: asekaki nee no neteiru aida ni +2026-01-07 00:27:08,641 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 00:27:08,873 - INFO - Updating metadata for: awakening_of_the_female_instinct +2026-01-07 00:27:08,873 - INFO - Searching metadata for: awakening of the female instinct +2026-01-07 00:27:08,910 - INFO - Searching MangaUpdates for: awakening of the female instinct +2026-01-07 00:27:09,269 - INFO - Updating metadata for: siblings_matchup_secret_mating_sex_life +2026-01-07 00:27:09,270 - INFO - Searching metadata for: siblings matchup secret mating sex life +2026-01-07 00:27:09,514 - INFO - Updating metadata for: Hitozuma,_Uwaki,_Danchi_Nite._-37-Sai_Miho-_(2025) +2026-01-07 00:27:09,514 - INFO - Searching metadata for: Hitozuma, Uwaki, Danchi Nite. -37-Sai Miho- +2026-01-07 00:27:09,557 - INFO - Fetching metadata from: https://nhentai.net/g/497386/ +2026-01-07 00:27:09,777 - INFO - Searching MangaUpdates for: Hitozuma, Uwaki, Danchi Nite. -37-Sai Miho- +2026-01-07 00:27:09,785 - INFO - Updating metadata for: Siblings having sex in the living room like it's normal +2026-01-07 00:27:09,785 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal +2026-01-07 00:27:09,888 - INFO - Updating metadata for: watashi_de_sukkiri_saasechaina_hatsukoi_aite_ni_tsurareru_ore +2026-01-07 00:27:09,888 - INFO - Searching metadata for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-07 00:27:10,084 - INFO - Searching MangaUpdates for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-07 00:27:10,180 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal +2026-01-07 00:27:10,507 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-07 00:27:10,508 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-07 00:27:10,771 - INFO - Fetching metadata from: https://nhentai.net/g/339531/ +2026-01-07 00:27:11,040 - INFO - Updating metadata for: friendly_brother_and_sister +2026-01-07 00:27:11,040 - INFO - Searching metadata for: friendly brother and sister +2026-01-07 00:27:11,171 - INFO - Updating metadata for: perverted_body_tight_mama_monster +2026-01-07 00:27:11,172 - INFO - Searching metadata for: perverted body tight mama monster +2026-01-07 00:27:11,204 - INFO - Fetching metadata from: https://nhentai.net/g/531957/ +2026-01-07 00:27:11,264 - INFO - Updating metadata for: enveloped_by_a_ghost +2026-01-07 00:27:11,264 - INFO - Searching metadata for: enveloped by a ghost +2026-01-07 00:27:11,489 - INFO - Fetching metadata from: https://nhentai.net/g/543084/ +2026-01-07 00:27:11,503 - INFO - Fetching metadata from: https://nhentai.net/g/544653/ +2026-01-07 00:27:11,511 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 00:27:11,512 - INFO - Searching metadata for: Manbou Shoten Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 00:27:11,736 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-07 00:27:11,742 - INFO - Updating metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-07 00:27:11,742 - INFO - Searching metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-07 00:27:11,742 - INFO - Updating metadata for: papa_is_a_loser +2026-01-07 00:27:11,744 - INFO - Searching metadata for: papa is a loser +2026-01-07 00:27:11,951 - INFO - Updating metadata for: Family_Plan_(2024) +2026-01-07 00:27:11,951 - INFO - Searching metadata for: Family Plan +2026-01-07 00:27:11,994 - INFO - Fetching metadata from: https://nhentai.net/g/543091/ +2026-01-07 00:27:12,054 - INFO - Fetching metadata from: https://nhentai.net/g/496743/ +2026-01-07 00:27:12,144 - INFO - Fetching metadata from: https://nhentai.net/g/602426/ +2026-01-07 00:27:12,324 - INFO - Updating metadata for: hari_x2_honey +2026-01-07 00:27:12,325 - INFO - Searching metadata for: hari x2 honey +2026-01-07 00:27:12,328 - INFO - Updating metadata for: gishi_ni_shiborareru_hanashi +2026-01-07 00:27:12,328 - INFO - Searching metadata for: gishi ni shiborareru hanashi +2026-01-07 00:27:12,331 - INFO - Updating metadata for: you_must_breed_your_sister_to_leave_this_island +2026-01-07 00:27:12,332 - INFO - Searching metadata for: you must breed your sister to leave this island +2026-01-07 00:27:12,483 - INFO - Searching MangaUpdates for: hari x2 honey +2026-01-07 00:27:12,627 - INFO - Fetching metadata from: https://nhentai.net/g/588299/ +2026-01-07 00:27:12,631 - INFO - Fetching metadata from: https://nhentai.net/g/617218/ +2026-01-07 00:27:12,844 - INFO - Updating metadata for: first_sperm_loving_succubus_dinner_of_cowgirl_and_creampie_sex +2026-01-07 00:27:12,856 - INFO - Searching metadata for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-07 00:27:12,862 - INFO - Updating metadata for: fence14 +2026-01-07 00:27:12,862 - INFO - Searching metadata for: fence14 +2026-01-07 00:27:12,867 - INFO - Updating metadata for: [Nishikawa Kou] Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 00:27:12,867 - INFO - Searching metadata for: Nishikawa Kou Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 00:27:13,078 - INFO - Searching MangaUpdates for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-07 00:27:13,112 - INFO - Fetching metadata from: https://nhentai.net/g/619305/ +2026-01-07 00:27:13,210 - INFO - Searching metadata for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 00:27:13,325 - INFO - Updating metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ _ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-07 00:27:13,325 - INFO - Searching metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-07 00:27:13,465 - INFO - Updating metadata for: i_want_it_nurse_me +2026-01-07 00:27:13,466 - INFO - Searching metadata for: i want it nurse me +2026-01-07 00:27:13,573 - INFO - Fetching metadata from: https://nhentai.net/g/400327/ +2026-01-07 00:27:13,648 - INFO - Searching MangaUpdates for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 00:27:13,809 - INFO - Fetching metadata from: https://nhentai.net/g/308512/ +2026-01-07 00:27:13,876 - INFO - Updating metadata for: elder_sis_cosplay +2026-01-07 00:27:13,876 - INFO - Searching metadata for: elder sis cosplay +2026-01-07 00:27:14,077 - INFO - Fetching metadata from: https://nhentai.net/g/147261/ +2026-01-07 00:27:14,089 - INFO - Updating metadata for: fairy_feature_the_mayors_secret +2026-01-07 00:27:14,090 - INFO - Searching metadata for: fairy feature the mayors secret +2026-01-07 00:27:14,091 - INFO - Updating metadata for: call_me_a_slut +2026-01-07 00:27:14,094 - INFO - Searching metadata for: call me a slut +2026-01-07 00:27:14,262 - INFO - Searching MangaUpdates for: fairy feature the mayors secret +2026-01-07 00:27:14,279 - INFO - Updating metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-07 00:27:14,280 - INFO - Searching metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-07 00:27:14,417 - INFO - Fetching metadata from: https://nhentai.net/g/532748/ +2026-01-07 00:27:14,569 - INFO - Searching MangaUpdates for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-07 00:27:14,578 - INFO - Updating metadata for: starting_today_im +2026-01-07 00:27:14,578 - INFO - Searching metadata for: starting today im +2026-01-07 00:27:14,671 - INFO - Updating metadata for: rental_mama_rental_mom +2026-01-07 00:27:14,671 - INFO - Searching metadata for: rental mama rental mom +2026-01-07 00:27:14,742 - INFO - Searching MangaUpdates for: starting today im +2026-01-07 00:27:14,917 - INFO - Fetching metadata from: https://nhentai.net/g/593813/ +2026-01-07 00:27:14,985 - INFO - Updating metadata for: naive_little_sister_chapter +2026-01-07 00:27:14,985 - INFO - Searching metadata for: naive little sister chapter +2026-01-07 00:27:15,051 - INFO - Updating metadata for: maiyasans_money_issues +2026-01-07 00:27:15,052 - INFO - Searching metadata for: maiyasans money issues +2026-01-07 00:27:15,168 - INFO - Searching MangaUpdates for: naive little sister chapter +2026-01-07 00:27:15,246 - INFO - Searching MangaUpdates for: maiyasans money issues +2026-01-07 00:27:15,266 - INFO - Updating metadata for: oshi_to_ecchina_koto_nante_muri_muri_muri +2026-01-07 00:27:15,267 - INFO - Searching metadata for: oshi to ecchina koto nante muri muri muri +2026-01-07 00:27:15,462 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite +2026-01-07 00:27:15,463 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite +2026-01-07 00:27:15,497 - INFO - Searching MangaUpdates for: oshi to ecchina koto nante muri muri muri +2026-01-07 00:27:15,521 - INFO - Updating metadata for: mama_cos +2026-01-07 00:27:15,521 - INFO - Searching metadata for: mama cos +2026-01-07 00:27:15,702 - INFO - Fetching metadata from: https://nhentai.net/g/618775/ +2026-01-07 00:27:15,755 - INFO - Updating metadata for: Kateinai Henai +2026-01-07 00:27:15,755 - INFO - Searching metadata for: Kateinai Henai +2026-01-07 00:27:15,782 - INFO - Fetching metadata from: https://nhentai.net/g/596920/ +2026-01-07 00:27:15,917 - INFO - Updating metadata for: [Shirono Mahiro] Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-07 00:27:15,917 - INFO - Searching metadata for: Shirono Mahiro Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-07 00:27:16,002 - INFO - Updating metadata for: autumn_lovers +2026-01-07 00:27:16,002 - INFO - Searching metadata for: autumn lovers +2026-01-07 00:27:16,079 - INFO - Fetching metadata from: https://nhentai.net/g/603393/ +2026-01-07 00:27:16,172 - INFO - Fetching metadata from: https://nhentai.net/g/320576/ +2026-01-07 00:27:16,265 - INFO - Fetching metadata from: https://nhentai.net/g/332054/ +2026-01-07 00:27:16,648 - INFO - Updating metadata for: training_the_older_sister_momomadoka +2026-01-07 00:27:16,649 - INFO - Searching metadata for: training the older sister momomadoka +2026-01-07 00:27:16,666 - INFO - Updating metadata for: devi_navi +2026-01-07 00:27:16,667 - INFO - Searching metadata for: devi navi +2026-01-07 00:27:16,675 - INFO - Updating metadata for: im_being_sex_educated_by_my_overprotective_mother_chapter +2026-01-07 00:27:16,676 - INFO - Searching metadata for: im being sex educated by my overprotective mother chapter +2026-01-07 00:27:16,841 - INFO - Fetching metadata from: https://nhentai.net/g/546382/ +2026-01-07 00:27:16,891 - INFO - Fetching metadata from: https://nhentai.net/g/596339/ +2026-01-07 00:27:16,927 - INFO - Searching MangaUpdates for: im being sex educated by my overprotective mother chapter +2026-01-07 00:27:17,038 - INFO - Updating metadata for: doukyuusei_gal_3_ningumi_to +2026-01-07 00:27:17,038 - INFO - Searching metadata for: doukyuusei gal 3 ningumi to +2026-01-07 00:27:17,183 - INFO - Updating metadata for: [Chiguchi Miri] Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 00:27:17,183 - INFO - Searching metadata for: Chiguchi Miri Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 00:27:17,214 - INFO - Searching MangaUpdates for: doukyuusei gal 3 ningumi to +2026-01-07 00:27:17,310 - INFO - Updating metadata for: imouto_ookiindamon_chapter +2026-01-07 00:27:17,310 - INFO - Searching metadata for: imouto ookiindamon chapter +2026-01-07 00:27:17,498 - INFO - Searching MangaUpdates for: imouto ookiindamon chapter +2026-01-07 00:27:17,504 - INFO - Searching metadata for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 00:27:17,520 - INFO - Updating metadata for: Hitoduma Ane _ Married Sister +2026-01-07 00:27:17,520 - INFO - Searching metadata for: Hitoduma Ane Married Sister +2026-01-07 00:27:17,674 - INFO - Searching MangaUpdates for: Hitoduma Ane Married Sister +2026-01-07 00:27:17,750 - INFO - Searching MangaUpdates for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 00:27:17,798 - INFO - Updating metadata for: my_dear_sister_is_mine +2026-01-07 00:27:17,798 - INFO - Searching metadata for: my dear sister is mine +2026-01-07 00:27:17,938 - INFO - Updating metadata for: winter_omake_bon +2026-01-07 00:27:17,939 - INFO - Searching metadata for: winter omake bon +2026-01-07 00:27:18,016 - INFO - Fetching metadata from: https://nhentai.net/g/567113/ +2026-01-07 00:27:18,129 - INFO - Fetching metadata from: https://nhentai.net/g/527207/ +2026-01-07 00:27:18,245 - INFO - Updating metadata for: [Qdou Kei] Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-07 00:27:18,245 - INFO - Searching metadata for: Qdou Kei Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-07 00:27:18,338 - INFO - Updating metadata for: perverted_hypnosis_experiment +2026-01-07 00:27:18,338 - INFO - Searching metadata for: perverted hypnosis experiment +2026-01-07 00:27:18,370 - INFO - Updating metadata for: [Muufa] One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 00:27:18,370 - INFO - Searching metadata for: Muufa One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 00:27:18,511 - INFO - Fetching metadata from: https://nhentai.net/g/521144/ +2026-01-07 00:27:18,523 - INFO - Fetching metadata from: https://nhentai.net/g/246334/ +2026-01-07 00:27:18,542 - INFO - Searching metadata for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 00:27:18,865 - INFO - Searching MangaUpdates for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 00:27:18,927 - INFO - Updating metadata for: kyoudai_no_naka +2026-01-07 00:27:18,928 - INFO - Searching metadata for: kyoudai no naka +2026-01-07 00:27:18,935 - INFO - Updating metadata for: [nounanka (Abubu)] Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-07 00:27:18,935 - INFO - Searching metadata for: nounanka (Abubu) Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-07 00:27:18,956 - INFO - Searching MangaUpdates for: kyoudai no naka +2026-01-07 00:27:18,967 - INFO - Searching metadata for: Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-07 00:27:19,058 - INFO - Searching MangaUpdates for: Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-07 00:27:22,087 - INFO - Updating metadata for: sometimes_i_draw_manga +2026-01-07 00:27:22,087 - INFO - Searching metadata for: sometimes i draw manga +2026-01-07 00:27:22,325 - INFO - Fetching metadata from: https://nhentai.net/g/519608/ +2026-01-07 00:27:22,553 - INFO - Updating metadata for: Stigmatized_Property_(2019) +2026-01-07 00:27:22,554 - INFO - Searching metadata for: Stigmatized Property +2026-01-07 00:27:22,714 - INFO - Searching MangaUpdates for: Stigmatized Property +2026-01-07 00:27:24,306 - INFO - Updating metadata for: leave_me_alone +2026-01-07 00:27:24,306 - INFO - Searching metadata for: leave me alone +2026-01-07 00:27:24,569 - INFO - Fetching metadata from: https://nhentai.net/g/557684/ +2026-01-07 00:27:24,768 - INFO - Updating metadata for: the_day_the_youngest_son_lost_his_virginity_thanks_to_his_mother_in_a_swimsuit +2026-01-07 00:27:24,768 - INFO - Searching metadata for: the day the youngest son lost his virginity thanks to his mother in a swimsuit +2026-01-07 00:27:25,142 - INFO - Fetching metadata from: https://nhentai.net/g/550368/ +2026-01-07 00:27:25,336 - INFO - Updating metadata for: misaesan_no_shiri_ass +2026-01-07 00:27:25,336 - INFO - Searching metadata for: misaesan no shiri ass +2026-01-07 00:27:25,476 - INFO - Searching MangaUpdates for: misaesan no shiri ass +2026-01-07 00:27:29,072 - ERROR - MangaUpdates lookup failed: HTTPSConnectionPool(host='api.mangaupdates.com', port=443): Read timed out. (read timeout=10) +2026-01-07 00:27:29,080 - INFO - Updating metadata for: story_about_how_i_fucked_cucked_and_brought_to_bliss_some_languid_wives +2026-01-07 00:27:29,080 - INFO - Searching metadata for: story about how i fucked cucked and brought to bliss some languid wives +2026-01-07 00:27:29,421 - INFO - Fetching metadata from: https://nhentai.net/g/578155/ +2026-01-07 00:27:29,650 - INFO - Updating metadata for: [Shiki] Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 00:27:29,651 - INFO - Searching metadata for: Shiki Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 00:27:29,980 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 00:27:30,292 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 00:27:30,500 - INFO - Updating metadata for: apron +2026-01-07 00:27:30,500 - INFO - Searching metadata for: apron +2026-01-07 00:27:30,763 - INFO - Fetching metadata from: https://nhentai.net/g/621140/ +2026-01-07 00:27:31,001 - INFO - Updating metadata for: namaiki_na_hahaoya_o_honnin_ni_mo_kizukarezu_ni_minkan_suru_houhou +2026-01-07 00:27:31,001 - INFO - Searching metadata for: namaiki na hahaoya o honnin ni mo kizukarezu ni minkan suru houhou +2026-01-07 00:27:31,272 - INFO - Updating metadata for: and_then_i_will_be_a_mom +2026-01-07 00:27:31,273 - INFO - Searching metadata for: and then i will be a mom +2026-01-07 00:27:31,309 - INFO - Fetching metadata from: https://nhentai.net/g/298780/ +2026-01-07 00:27:31,501 - INFO - Updating metadata for: haha_ga_saikon_shitara_gikei_ga_chou_kuzu +2026-01-07 00:27:31,501 - INFO - Searching metadata for: haha ga saikon shitara gikei ga chou kuzu +2026-01-07 00:27:31,649 - INFO - Searching MangaUpdates for: and then i will be a mom +2026-01-07 00:27:31,797 - INFO - Fetching metadata from: https://nhentai.net/g/532104/ +2026-01-07 00:27:31,993 - INFO - Updating metadata for: lets_do_it +2026-01-07 00:27:31,993 - INFO - Searching metadata for: lets do it +2026-01-07 00:27:32,359 - INFO - Fetching metadata from: https://nhentai.net/g/588286/ +2026-01-07 00:27:32,605 - INFO - Updating metadata for: naomi san wa ore no sefri ch 1 +2026-01-07 00:27:32,606 - INFO - Searching metadata for: naomi san wa ore no sefri ch 1 +2026-01-07 00:27:32,951 - INFO - Fetching metadata from: https://nhentai.net/g/601989/ +2026-01-07 00:27:33,230 - INFO - Updating metadata for: namaiki_sanshimai +2026-01-07 00:27:33,230 - INFO - Searching metadata for: namaiki sanshimai +2026-01-07 00:27:33,406 - INFO - Fetching metadata from: https://nhentai.net/g/560751/ +2026-01-07 00:27:33,654 - INFO - Updating metadata for: a_story_about_my_little_sister_giving_me_titjobs +2026-01-07 00:27:33,654 - INFO - Searching metadata for: a story about my little sister giving me titjobs +2026-01-07 00:27:33,987 - INFO - Fetching metadata from: https://nhentai.net/g/524952/ +2026-01-07 00:27:34,182 - INFO - Updating metadata for: fuyu_yui +2026-01-07 00:27:34,182 - INFO - Updating metadata for: uchi_ni_kaettara_mama_ga_zenra_de_hatsujou_shiteta_ken +2026-01-07 00:27:34,182 - INFO - Searching metadata for: fuyu yui +2026-01-07 00:27:34,182 - INFO - Searching metadata for: uchi ni kaettara mama ga zenra de hatsujou shiteta ken +2026-01-07 00:27:34,414 - INFO - Fetching metadata from: https://nhentai.net/g/589928/ +2026-01-07 00:27:34,441 - INFO - Fetching metadata from: https://nhentai.net/g/329704/ +2026-01-07 00:27:34,658 - INFO - Updating metadata for: Imouto_wa_minna_Oniichan_ga_Suki!_(2010) +2026-01-07 00:27:34,658 - INFO - Searching metadata for: Imouto wa minna Oniichan ga Suki! +2026-01-07 00:27:34,661 - INFO - Updating metadata for: [Teoi] Youmu-chan hypnosis sex +2026-01-07 00:27:34,661 - INFO - Searching metadata for: Teoi Youmu-chan hypnosis sex +2026-01-07 00:27:34,747 - INFO - Updating metadata for: a_molester_took_everything_from_me +2026-01-07 00:27:34,747 - INFO - Searching metadata for: a molester took everything from me +2026-01-07 00:27:34,851 - INFO - Searching metadata for: Youmu-chan hypnosis sex +2026-01-07 00:27:34,924 - INFO - Searching MangaUpdates for: Imouto wa minna Oniichan ga Suki! +2026-01-07 00:27:34,969 - INFO - Fetching metadata from: https://nhentai.net/g/602000/ +2026-01-07 00:27:35,028 - INFO - Searching MangaUpdates for: Youmu-chan hypnosis sex +2026-01-07 00:27:35,193 - INFO - Updating metadata for: will_you_help_me +2026-01-07 00:27:35,193 - INFO - Searching metadata for: will you help me +2026-01-07 00:27:35,413 - INFO - Fetching metadata from: https://nhentai.net/g/277925/ +2026-01-07 00:27:35,499 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 00:27:35,499 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 00:27:35,520 - INFO - Updating metadata for: i_matched_with_my_friends_mom_chapter +2026-01-07 00:27:35,520 - INFO - Searching metadata for: i matched with my friends mom chapter +2026-01-07 00:27:35,652 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-07 00:27:35,653 - INFO - Searching metadata for: Manbou Shoten Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-07 00:27:35,769 - INFO - Searching MangaUpdates for: i matched with my friends mom chapter +2026-01-07 00:27:35,797 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 00:27:35,903 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-07 00:27:36,079 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 00:27:36,142 - INFO - Updating metadata for: love_wheel +2026-01-07 00:27:36,142 - INFO - Searching metadata for: love wheel +2026-01-07 00:27:36,142 - INFO - Updating metadata for: katamichi_catchball +2026-01-07 00:27:36,144 - INFO - Searching metadata for: katamichi catchball +2026-01-07 00:27:36,355 - INFO - Fetching metadata from: https://nhentai.net/g/599889/ +2026-01-07 00:27:36,366 - INFO - Fetching metadata from: https://nhentai.net/g/528903/ +2026-01-07 00:27:36,575 - INFO - Updating metadata for: similar_siblings +2026-01-07 00:27:36,575 - INFO - Searching metadata for: similar siblings +2026-01-07 00:27:36,575 - INFO - Updating metadata for: [Heart Manju Mania (Akata Izuki)] Cocoro Controller 2 [English] +2026-01-07 00:27:36,577 - INFO - Searching metadata for: Heart Manju Mania (Akata Izuki) Cocoro Controller 2 [English] +2026-01-07 00:27:36,579 - INFO - Updating metadata for: bareback_sex_life_with_da_vinci +2026-01-07 00:27:36,579 - INFO - Searching metadata for: bareback sex life with da vinci +2026-01-07 00:27:36,725 - INFO - Searching MangaUpdates for: similar siblings +2026-01-07 00:27:36,798 - INFO - Fetching metadata from: https://nhentai.net/g/599509/ +2026-01-07 00:27:36,890 - INFO - Fetching metadata from: https://nhentai.net/g/250741/ +2026-01-07 00:27:36,991 - INFO - Updating metadata for: the_sex_life_of_andy_and_leyley +2026-01-07 00:27:36,991 - INFO - Searching metadata for: the sex life of andy and leyley +2026-01-07 00:27:37,013 - INFO - Updating metadata for: kiyoshiros_last_hours +2026-01-07 00:27:37,013 - INFO - Searching metadata for: kiyoshiros last hours +2026-01-07 00:27:37,088 - INFO - Updating metadata for: my_defenseless_mothers +2026-01-07 00:27:37,088 - INFO - Searching metadata for: my defenseless mothers +2026-01-07 00:27:37,155 - INFO - Searching MangaUpdates for: kiyoshiros last hours +2026-01-07 00:27:37,289 - INFO - Fetching metadata from: https://nhentai.net/g/570099/ +2026-01-07 00:27:37,299 - INFO - Searching MangaUpdates for: my defenseless mothers +2026-01-07 00:27:37,449 - INFO - Updating metadata for: otaku_ni_rikai_aru_gal_yome_ga_otashop +2026-01-07 00:27:37,449 - INFO - Searching metadata for: otaku ni rikai aru gal yome ga otashop +2026-01-07 00:27:37,483 - INFO - Updating metadata for: mozzarella_the_new_slutty_pussy +2026-01-07 00:27:37,483 - INFO - Searching metadata for: mozzarella the new slutty pussy +2026-01-07 00:27:37,511 - INFO - Updating metadata for: a_day_for_incest +2026-01-07 00:27:37,512 - INFO - Searching metadata for: a day for incest +2026-01-07 00:27:37,669 - INFO - Searching MangaUpdates for: otaku ni rikai aru gal yome ga otashop +2026-01-07 00:27:37,681 - INFO - Searching MangaUpdates for: mozzarella the new slutty pussy +2026-01-07 00:27:37,745 - INFO - Fetching metadata from: https://nhentai.net/g/497650/ +2026-01-07 00:27:38,131 - INFO - Updating metadata for: [ABBB] How to make a family using hypnosis app [English] [Decensored] +2026-01-07 00:27:38,131 - INFO - Searching metadata for: ABBB How to make a family using hypnosis app [English] [Decensored] +2026-01-07 00:27:38,134 - INFO - Updating metadata for: jagan_no_saimin_inryoku_de_seitokai_les_joshitachi +2026-01-07 00:27:38,134 - INFO - Searching metadata for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-07 00:27:38,169 - INFO - Searching MangaUpdates for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-07 00:27:38,177 - INFO - Searching metadata for: How to make a family using hypnosis app [English] [Decensored] +2026-01-07 00:27:38,218 - INFO - Updating metadata for: [CHOMA] Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-07 00:27:38,218 - INFO - Searching metadata for: CHOMA Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-07 00:27:38,248 - INFO - Searching metadata for: Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-07 00:27:38,456 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-07 00:27:38,475 - INFO - Fetching metadata from: https://nhentai.net/g/431170/ +2026-01-07 00:27:38,546 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite_chapter_ +2026-01-07 00:27:38,546 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-07 00:27:38,610 - INFO - Updating metadata for: muchi_niku_jokyoushi_tomomi_mama +2026-01-07 00:27:38,610 - INFO - Searching metadata for: muchi niku jokyoushi tomomi mama +2026-01-07 00:27:38,667 - INFO - Updating metadata for: wife_pickle +2026-01-07 00:27:38,667 - INFO - Searching metadata for: wife pickle +2026-01-07 00:27:38,766 - INFO - Searching MangaUpdates for: muchi niku jokyoushi tomomi mama +2026-01-07 00:27:38,815 - INFO - Fetching metadata from: https://nhentai.net/g/592704/ +2026-01-07 00:27:38,902 - INFO - Searching MangaUpdates for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-07 00:27:38,996 - INFO - Updating metadata for: [MN] My Big Breast Sister +2026-01-07 00:27:38,997 - INFO - Searching metadata for: MN My Big Breast Sister +2026-01-07 00:27:39,096 - INFO - Updating metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru _ Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-07 00:27:39,096 - INFO - Searching metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-07 00:27:39,167 - INFO - Fetching metadata from: https://nhentai.net/g/609562/ +2026-01-07 00:27:39,377 - INFO - Updating metadata for: you_must_breed_your_sisters_to_leave_this_village +2026-01-07 00:27:39,378 - INFO - Searching metadata for: you must breed your sisters to leave this village +2026-01-07 00:27:39,468 - INFO - Updating metadata for: making_a_bet_with_a_competitive_niece +2026-01-07 00:27:39,469 - INFO - Searching metadata for: making a bet with a competitive niece +2026-01-07 00:27:39,543 - INFO - Fetching metadata from: https://nhentai.net/g/483349/ +2026-01-07 00:27:39,611 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-07 00:27:39,715 - INFO - Updating metadata for: michelle_to_icha_love +2026-01-07 00:27:39,716 - INFO - Searching metadata for: michelle to icha love +2026-01-07 00:27:39,761 - INFO - Searching MangaUpdates for: making a bet with a competitive niece +2026-01-07 00:27:39,820 - INFO - Updating metadata for: mother_and_son_and_father_and_daughter_tonight_is_incest_night +2026-01-07 00:27:39,821 - INFO - Searching metadata for: mother and son and father and daughter tonight is incest night +2026-01-07 00:27:39,907 - INFO - Fetching metadata from: https://nhentai.net/g/597558/ +2026-01-07 00:27:40,101 - INFO - Updating metadata for: toshi_densetsu_bitch_joshikai +2026-01-07 00:27:40,101 - INFO - Searching metadata for: toshi densetsu bitch joshikai +2026-01-07 00:27:40,127 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-07 00:27:40,135 - INFO - Updating metadata for: [k8on] It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 00:27:40,135 - INFO - Searching metadata for: k8on It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 00:27:40,266 - INFO - Fetching metadata from: https://nhentai.net/g/558829/ +2026-01-07 00:27:40,308 - INFO - Updating metadata for: [Takashima] FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-07 00:27:40,308 - INFO - Searching metadata for: Takashima FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-07 00:27:40,548 - INFO - Searching metadata for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 00:27:40,571 - INFO - Fetching metadata from: https://nhentai.net/g/515808/ +2026-01-07 00:27:40,575 - INFO - Updating metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-07 00:27:40,576 - INFO - Searching metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-07 00:27:40,776 - INFO - Updating metadata for: teasing_big_sis +2026-01-07 00:27:40,776 - INFO - Searching metadata for: teasing big sis +2026-01-07 00:27:40,941 - INFO - Fetching metadata from: https://nhentai.net/g/591734/ +2026-01-07 00:27:40,946 - INFO - Searching MangaUpdates for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 00:27:41,124 - INFO - Updating metadata for: forward +2026-01-07 00:27:41,124 - INFO - Searching metadata for: forward +2026-01-07 00:27:41,160 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-07 00:27:41,277 - INFO - Fetching metadata from: https://nhentai.net/g/583038/ +2026-01-07 00:27:41,331 - INFO - Updating metadata for: after_a_mouth +2026-01-07 00:27:41,331 - INFO - Searching metadata for: after a mouth +2026-01-07 00:27:41,404 - INFO - Updating metadata for: the_twins_next_door_were_former_super_sentai +2026-01-07 00:27:41,404 - INFO - Searching metadata for: the twins next door were former super sentai +2026-01-07 00:27:41,468 - INFO - Updating metadata for: my_sister_doesnt_laugh +2026-01-07 00:27:41,469 - INFO - Searching metadata for: my sister doesnt laugh +2026-01-07 00:27:41,540 - INFO - Fetching metadata from: https://nhentai.net/g/602572/ +2026-01-07 00:27:41,623 - INFO - Searching MangaUpdates for: my sister doesnt laugh +2026-01-07 00:27:41,650 - INFO - Fetching metadata from: https://nhentai.net/g/589945/ +2026-01-07 00:27:41,837 - INFO - Updating metadata for: incestism +2026-01-07 00:27:41,837 - INFO - Searching metadata for: incestism +2026-01-07 00:27:41,856 - INFO - Updating metadata for: big_sis_wants_to_convince_her_lil_bro +2026-01-07 00:27:41,856 - INFO - Searching metadata for: big sis wants to convince her lil bro +2026-01-07 00:27:41,904 - INFO - Updating metadata for: nureane_batsuichi_no_ane_to_sex_o_shita_natsu_no_yoru +2026-01-07 00:27:41,904 - INFO - Searching metadata for: nureane batsuichi no ane to sex o shita natsu no yoru +2026-01-07 00:27:41,974 - INFO - Fetching metadata from: https://nhentai.net/g/600637/ +2026-01-07 00:27:42,081 - INFO - Fetching metadata from: https://nhentai.net/g/310401/ +2026-01-07 00:27:42,124 - INFO - Updating metadata for: life_of_passionate_pleasures +2026-01-07 00:27:42,124 - INFO - Searching metadata for: life of passionate pleasures +2026-01-07 00:27:42,206 - INFO - Fetching metadata from: https://nhentai.net/g/413708/ +2026-01-07 00:27:42,244 - INFO - Updating metadata for: misato_x_shinji_baby_making +2026-01-07 00:27:42,245 - INFO - Searching metadata for: misato x shinji baby making +2026-01-07 00:27:42,290 - INFO - Fetching metadata from: https://nhentai.net/g/530801/ +2026-01-07 00:27:42,427 - INFO - Searching MangaUpdates for: misato x shinji baby making +2026-01-07 00:27:42,469 - INFO - Updating metadata for: [Juna Juna Juice] Supergirl From The JJJ Universe (The Flash) [English] +2026-01-07 00:27:42,470 - INFO - Searching metadata for: Juna Juna Juice Supergirl From The JJJ Universe (The Flash) [English] +2026-01-07 00:27:42,472 - INFO - Updating metadata for: carnal_siblings +2026-01-07 00:27:42,472 - INFO - Searching metadata for: carnal siblings +2026-01-07 00:27:42,616 - INFO - Fetching metadata from: https://nhentai.net/g/505982/ +2026-01-07 00:27:42,694 - INFO - Fetching metadata from: https://nhentai.net/g/462209/ +2026-01-07 00:27:42,785 - INFO - Updating metadata for: naughty_bunny_and_doctor +2026-01-07 00:27:42,786 - INFO - Searching metadata for: naughty bunny and doctor +2026-01-07 00:27:42,944 - INFO - Fetching metadata from: https://nhentai.net/g/577393/ +2026-01-07 00:27:42,974 - INFO - Updating metadata for: shes_always_obstinate +2026-01-07 00:27:42,974 - INFO - Searching metadata for: shes always obstinate +2026-01-07 00:27:43,043 - INFO - Updating metadata for: my_wife_left_me_because_i_was +2026-01-07 00:27:43,044 - INFO - Searching metadata for: my wife left me because i was +2026-01-07 00:27:43,127 - INFO - Searching MangaUpdates for: shes always obstinate +2026-01-07 00:27:43,131 - INFO - Updating metadata for: hiyake_rikujoubu_oneechan_ni_neteiru_toku_ni_itazura_suru_ecchi_manga +2026-01-07 00:27:43,131 - INFO - Searching metadata for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-07 00:27:43,323 - INFO - Fetching metadata from: https://nhentai.net/g/593456/ +2026-01-07 00:27:43,338 - INFO - Searching MangaUpdates for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-07 00:27:43,426 - INFO - Updating metadata for: mikamikuns_incestuous_situation +2026-01-07 00:27:43,426 - INFO - Searching metadata for: mikamikuns incestuous situation +2026-01-07 00:27:43,547 - INFO - Updating metadata for: human_manipulating_remote_control +2026-01-07 00:27:43,547 - INFO - Searching metadata for: human manipulating remote control +2026-01-07 00:27:43,602 - INFO - Searching MangaUpdates for: mikamikuns incestuous situation +2026-01-07 00:27:43,717 - INFO - Fetching metadata from: https://nhentai.net/g/598745/ +2026-01-07 00:27:43,906 - INFO - Updating metadata for: bitch_na_inanesama +2026-01-07 00:27:43,906 - INFO - Searching metadata for: bitch na inanesama +2026-01-07 00:27:43,920 - INFO - Updating metadata for: [Yue] Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-07 00:27:43,920 - INFO - Searching metadata for: Yue Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-07 00:27:44,083 - INFO - Updating metadata for: reiwas_penis_growth_training_chapter_1 +2026-01-07 00:27:44,084 - INFO - Searching metadata for: reiwas penis growth training chapter 1 +2026-01-07 00:27:44,096 - INFO - Searching MangaUpdates for: bitch na inanesama +2026-01-07 00:27:44,147 - INFO - Fetching metadata from: https://nhentai.net/g/588579/ +2026-01-07 00:27:44,205 - INFO - Searching MangaUpdates for: reiwas penis growth training chapter 1 +2026-01-07 00:27:44,340 - INFO - Updating metadata for: Jujutsu_Kaisen_dj_-_○○○_Shinai_to_Derarenai_Heya_√A_(2021) +2026-01-07 00:27:44,340 - INFO - Searching metadata for: Jujutsu Kaisen dj - ○○○ Shinai to Derarenai Heya √A +2026-01-07 00:27:44,475 - INFO - Updating metadata for: family_mischief_lewd +2026-01-07 00:27:44,475 - INFO - Searching metadata for: family mischief lewd +2026-01-07 00:27:44,526 - INFO - Searching MangaUpdates for: Jujutsu Kaisen dj - ○○○ Shinai to Derarenai Heya √A +2026-01-07 00:27:44,629 - INFO - Fetching metadata from: https://nhentai.net/g/427171/ +2026-01-07 00:27:44,635 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 00:27:44,635 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 00:27:44,807 - INFO - Updating metadata for: [Pentacle(Shimipan)] I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-07 00:27:44,807 - INFO - Searching metadata for: Pentacle(Shimipan) I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-07 00:27:44,905 - INFO - Searching metadata for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 00:27:44,911 - INFO - Updating metadata for: [Poriuretan] Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-07 00:27:44,911 - INFO - Searching metadata for: Poriuretan Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-07 00:27:45,128 - INFO - Searching MangaUpdates for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 00:27:45,139 - INFO - Fetching metadata from: https://nhentai.net/g/588809/ +2026-01-07 00:27:45,193 - INFO - Fetching metadata from: https://nhentai.net/g/603112/ +2026-01-07 00:27:45,309 - INFO - Updating metadata for: my_daily_life_taking_care_of_sexual_urges_with_my_naughty_sister +2026-01-07 00:27:45,309 - INFO - Searching metadata for: my daily life taking care of sexual urges with my naughty sister +2026-01-07 00:27:45,454 - INFO - Updating metadata for: my_big_little_sister +2026-01-07 00:27:45,454 - INFO - Searching metadata for: my big little sister +2026-01-07 00:27:45,484 - INFO - Searching MangaUpdates for: my daily life taking care of sexual urges with my naughty sister +2026-01-07 00:27:45,713 - INFO - Fetching metadata from: https://nhentai.net/g/619667/ +2026-01-07 00:27:45,910 - INFO - Updating metadata for: [Zandoro] A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-07 00:27:45,910 - INFO - Searching metadata for: Zandoro A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-07 00:27:45,910 - INFO - Updating metadata for: ninshin_wa_kinshin_de_to_iu_hou_ga_dekita_node_haha_to_imouto_to_oba_mainichi_ore_no_chi_po_o_neratte_kuru +2026-01-07 00:27:45,912 - INFO - Searching metadata for: ninshin wa kinshin de to iu hou ga dekita node haha to imouto to oba mainichi ore no chi po o neratte kuru +2026-01-07 00:27:46,014 - INFO - Updating metadata for: a_history_of_no_boyfriends_equal_me_at_my_age +2026-01-07 00:27:46,015 - INFO - Searching metadata for: a history of no boyfriends equal me at my age +2026-01-07 00:27:46,253 - INFO - Fetching metadata from: https://nhentai.net/g/582285/ +2026-01-07 00:27:46,277 - INFO - Searching MangaUpdates for: a history of no boyfriends equal me at my age +2026-01-07 00:27:46,408 - INFO - Fetching metadata from: https://nhentai.net/g/400868/ +2026-01-07 00:27:46,446 - INFO - Updating metadata for: awakening_of_the_female_instinct +2026-01-07 00:27:46,446 - INFO - Searching metadata for: awakening of the female instinct +2026-01-07 00:27:46,605 - INFO - Updating metadata for: ani_no_kimoi_gendou_ni_honki +2026-01-07 00:27:46,605 - INFO - Searching metadata for: ani no kimoi gendou ni honki +2026-01-07 00:27:46,684 - INFO - Fetching metadata from: https://nhentai.net/g/592099/ +2026-01-07 00:27:46,817 - INFO - Updating metadata for: one_familys_plan_to_save_electricty +2026-01-07 00:27:46,817 - INFO - Searching metadata for: one familys plan to save electricty +2026-01-07 00:27:46,895 - INFO - Fetching metadata from: https://nhentai.net/g/511424/ +2026-01-07 00:27:47,008 - INFO - Updating metadata for: Hitozuma,_Uwaki,_Danchi_Nite._-37-Sai_Miho-_(2025) +2026-01-07 00:27:47,009 - INFO - Searching metadata for: Hitozuma, Uwaki, Danchi Nite. -37-Sai Miho- +2026-01-07 00:27:47,055 - INFO - Searching MangaUpdates for: one familys plan to save electricty +2026-01-07 00:27:47,078 - INFO - Updating metadata for: Roujin_to_Neko_(2024) +2026-01-07 00:27:47,078 - INFO - Searching metadata for: Roujin to Neko +2026-01-07 00:27:47,236 - INFO - Searching MangaUpdates for: Hitozuma, Uwaki, Danchi Nite. -37-Sai Miho- +2026-01-07 00:27:47,259 - INFO - Searching MangaUpdates for: Roujin to Neko +2026-01-07 00:27:47,491 - INFO - Updating metadata for: what_we_have_is_strictly_business +2026-01-07 00:27:47,492 - INFO - Searching metadata for: what we have is strictly business +2026-01-07 00:27:47,642 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-07 00:27:47,642 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-07 00:27:47,736 - INFO - Fetching metadata from: https://nhentai.net/g/596884/ +2026-01-07 00:27:47,755 - INFO - Searching MangaUpdates for: what we have is strictly business +2026-01-07 00:27:47,946 - INFO - Updating metadata for: gal_bitch_supremacy +2026-01-07 00:27:47,946 - INFO - Searching metadata for: gal bitch supremacy +2026-01-07 00:27:47,970 - INFO - Searching MangaUpdates for: gal bitch supremacy +2026-01-07 00:27:47,991 - INFO - Fetching metadata from: https://nhentai.net/g/339531/ +2026-01-07 00:27:48,223 - INFO - Updating metadata for: friendly_brother_and_sister +2026-01-07 00:27:48,223 - INFO - Searching metadata for: friendly brother and sister +2026-01-07 00:27:48,223 - INFO - Updating metadata for: [Juna Juna Juice] Pokemon Series (Pokemon) [English] +2026-01-07 00:27:48,224 - INFO - Updating metadata for: ane_de_shikoru_otouto_to_onaritai +2026-01-07 00:27:48,225 - INFO - Searching metadata for: Juna Juna Juice Pokemon Series (Pokemon) [English] +2026-01-07 00:27:48,225 - INFO - Searching metadata for: ane de shikoru otouto to onaritai +2026-01-07 00:27:48,436 - INFO - Fetching metadata from: https://nhentai.net/g/531957/ +2026-01-07 00:27:48,448 - INFO - Fetching metadata from: https://nhentai.net/g/595886/ +2026-01-07 00:27:48,535 - INFO - Fetching metadata from: https://nhentai.net/g/505892/ +2026-01-07 00:27:48,682 - INFO - Updating metadata for: bitch_dirty_sister +2026-01-07 00:27:48,683 - INFO - Searching metadata for: bitch dirty sister +2026-01-07 00:27:48,686 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 00:27:48,686 - INFO - Searching metadata for: Manbou Shoten Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 00:27:48,721 - INFO - Updating metadata for: video_memories +2026-01-07 00:27:48,721 - INFO - Searching metadata for: video memories +2026-01-07 00:27:48,859 - INFO - Fetching metadata from: https://nhentai.net/g/317791/ +2026-01-07 00:27:48,881 - INFO - Fetching metadata from: https://nhentai.net/g/506956/ +2026-01-07 00:27:48,905 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-07 00:27:49,175 - INFO - Updating metadata for: kayanee_and_the_old_man_memories_chapter +2026-01-07 00:27:49,176 - INFO - Searching metadata for: kayanee and the old man memories chapter +2026-01-07 00:27:49,179 - INFO - Updating metadata for: Family_Plan_(2024) +2026-01-07 00:27:49,179 - INFO - Searching metadata for: Family Plan +2026-01-07 00:27:49,181 - INFO - Updating metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-07 00:27:49,181 - INFO - Searching metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-07 00:27:49,325 - INFO - Searching MangaUpdates for: kayanee and the old man memories chapter +2026-01-07 00:27:49,422 - INFO - Fetching metadata from: https://nhentai.net/g/614968/ +2026-01-07 00:27:49,425 - INFO - Fetching metadata from: https://nhentai.net/g/602426/ +2026-01-07 00:27:49,631 - INFO - Updating metadata for: [Niramikko Koujou] Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-07 00:27:49,631 - INFO - Searching metadata for: Niramikko Koujou Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-07 00:27:49,633 - INFO - Updating metadata for: momojiri_ocean +2026-01-07 00:27:49,634 - INFO - Searching metadata for: momojiri ocean +2026-01-07 00:27:49,708 - INFO - Updating metadata for: you_must_breed_your_sister_to_leave_this_island +2026-01-07 00:27:49,709 - INFO - Searching metadata for: you must breed your sister to leave this island +2026-01-07 00:27:49,815 - INFO - Fetching metadata from: https://nhentai.net/g/164037/ +2026-01-07 00:27:49,958 - INFO - Fetching metadata from: https://nhentai.net/g/557335/ +2026-01-07 00:27:49,990 - INFO - Fetching metadata from: https://nhentai.net/g/617218/ +2026-01-07 00:27:50,029 - INFO - Updating metadata for: daily_life_with_my_sexy_stepmom +2026-01-07 00:27:50,030 - INFO - Searching metadata for: daily life with my sexy stepmom +2026-01-07 00:27:50,148 - INFO - Updating metadata for: kanojo_no_ane_wa_gal_de_bitch_de_yariman_de +2026-01-07 00:27:50,148 - INFO - Searching metadata for: kanojo no ane wa gal de bitch de yariman de +2026-01-07 00:27:50,229 - INFO - Fetching metadata from: https://nhentai.net/g/519708/ +2026-01-07 00:27:50,233 - INFO - Updating metadata for: fence14 +2026-01-07 00:27:50,233 - INFO - Searching metadata for: fence14 +2026-01-07 00:27:50,555 - INFO - Fetching metadata from: https://nhentai.net/g/619305/ +2026-01-07 00:27:50,556 - INFO - Fetching metadata from: https://nhentai.net/g/578979/ +2026-01-07 00:27:50,576 - INFO - Updating metadata for: older_stepsister_teaches_her_cheeky_little_stepbrother +2026-01-07 00:27:50,577 - INFO - Searching metadata for: older stepsister teaches her cheeky little stepbrother +2026-01-07 00:27:50,657 - INFO - Searching MangaUpdates for: kanojo no ane wa gal de bitch de yariman de +2026-01-07 00:27:50,784 - INFO - Searching MangaUpdates for: older stepsister teaches her cheeky little stepbrother +2026-01-07 00:27:50,797 - INFO - Updating metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ _ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-07 00:27:50,797 - INFO - Searching metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-07 00:27:51,119 - INFO - Fetching metadata from: https://nhentai.net/g/400327/ +2026-01-07 00:27:51,371 - INFO - Updating metadata for: falling_in_love_at_the_brothel.5 +2026-01-07 00:27:51,371 - INFO - Updating metadata for: elder_sis_cosplay +2026-01-07 00:27:51,371 - INFO - Searching metadata for: falling in love at the brothel.5 +2026-01-07 00:27:51,371 - INFO - Searching metadata for: elder sis cosplay +2026-01-07 00:27:51,483 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-07 00:27:51,483 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-07 00:27:51,578 - INFO - Fetching metadata from: https://nhentai.net/g/147261/ +2026-01-07 00:27:51,622 - INFO - Searching MangaUpdates for: elder sis cosplay +2026-01-07 00:27:51,652 - INFO - Fetching metadata from: https://nhentai.net/g/574610/ +2026-01-07 00:27:51,675 - INFO - Searching MangaUpdates for: falling in love at the brothel.5 +2026-01-07 00:27:51,767 - INFO - Fetching metadata from: https://nhentai.net/g/604729/ +2026-01-07 00:27:52,022 - INFO - Updating metadata for: musclehead_girl_cant_resist_orgasm_chapter +2026-01-07 00:27:52,022 - INFO - Searching metadata for: musclehead girl cant resist orgasm chapter +2026-01-07 00:27:52,180 - INFO - Searching MangaUpdates for: musclehead girl cant resist orgasm chapter +2026-01-07 00:27:52,255 - INFO - Updating metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-07 00:27:52,256 - INFO - Searching metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-07 00:27:52,447 - INFO - Updating metadata for: okaasan_to_naisho +2026-01-07 00:27:52,448 - INFO - Searching metadata for: okaasan to naisho +2026-01-07 00:27:52,755 - INFO - Searching MangaUpdates for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-07 00:27:52,805 - INFO - Updating metadata for: oneechan_wa_sore_o_yurusanai +2026-01-07 00:27:52,806 - INFO - Searching metadata for: oneechan wa sore o yurusanai +2026-01-07 00:27:52,919 - INFO - Fetching metadata from: https://nhentai.net/g/59216/ +2026-01-07 00:27:53,088 - INFO - Searching MangaUpdates for: oneechan wa sore o yurusanai +2026-01-07 00:27:53,157 - INFO - Updating metadata for: punishment_for_the_feral_hound_in_heat +2026-01-07 00:27:53,157 - INFO - Searching metadata for: punishment for the feral hound in heat +2026-01-07 00:27:53,194 - INFO - Updating metadata for: maiyasans_money_issues +2026-01-07 00:27:53,194 - INFO - Searching metadata for: maiyasans money issues +2026-01-07 00:27:53,325 - INFO - Searching MangaUpdates for: maiyasans money issues +2026-01-07 00:27:53,373 - INFO - Fetching metadata from: https://nhentai.net/g/528611/ +2026-01-07 00:27:53,565 - INFO - Updating metadata for: pet_mimamori_camera_ni_ane_to_otouto_no_sex_ga_utsutteta +2026-01-07 00:27:53,565 - INFO - Searching metadata for: pet mimamori camera ni ane to otouto no sex ga utsutteta +2026-01-07 00:27:53,565 - INFO - Updating metadata for: my_little_sister_has_a_big_body_and_a_big_heart +2026-01-07 00:27:53,567 - INFO - Updating metadata for: mama_cos +2026-01-07 00:27:53,567 - INFO - Searching metadata for: my little sister has a big body and a big heart +2026-01-07 00:27:53,567 - INFO - Searching metadata for: mama cos +2026-01-07 00:27:53,821 - INFO - Fetching metadata from: https://nhentai.net/g/618775/ +2026-01-07 00:27:53,871 - INFO - Fetching metadata from: https://nhentai.net/g/312775/ +2026-01-07 00:27:53,910 - INFO - Fetching metadata from: https://nhentai.net/g/548775/ +2026-01-07 00:27:54,008 - INFO - Updating metadata for: [Shirono Mahiro] Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-07 00:27:54,008 - INFO - Searching metadata for: Shirono Mahiro Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-07 00:27:54,107 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-07 00:27:54,108 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-07 00:27:54,114 - INFO - Updating metadata for: [Emori Uki] Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 00:27:54,114 - INFO - Searching metadata for: Emori Uki Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 00:27:54,151 - INFO - Searching metadata for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 00:27:54,329 - INFO - Fetching metadata from: https://nhentai.net/g/332054/ +2026-01-07 00:27:54,344 - INFO - Fetching metadata from: https://nhentai.net/g/544873/ +2026-01-07 00:27:54,521 - INFO - Searching MangaUpdates for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 00:27:54,664 - INFO - Updating metadata for: im_being_sex_educated_by_my_overprotective_mother_chapter +2026-01-07 00:27:54,664 - INFO - Searching metadata for: im being sex educated by my overprotective mother chapter +2026-01-07 00:27:54,667 - INFO - Updating metadata for: sisters_after_mozu +2026-01-07 00:27:54,667 - INFO - Searching metadata for: sisters after mozu +2026-01-07 00:27:54,845 - INFO - Searching MangaUpdates for: im being sex educated by my overprotective mother chapter +2026-01-07 00:27:54,853 - INFO - Searching MangaUpdates for: sisters after mozu +2026-01-07 00:27:55,500 - INFO - Updating metadata for: otaku_hime_ga_kita_heya +2026-01-07 00:27:55,500 - INFO - Searching metadata for: otaku hime ga kita heya +2026-01-07 00:27:55,673 - INFO - Updating metadata for: imouto_ookiindamon_chapter +2026-01-07 00:27:55,673 - INFO - Searching metadata for: imouto ookiindamon chapter +2026-01-07 00:27:55,737 - INFO - Fetching metadata from: https://nhentai.net/g/347531/ +2026-01-07 00:27:55,812 - INFO - Searching MangaUpdates for: imouto ookiindamon chapter +2026-01-07 00:27:55,957 - INFO - Updating metadata for: dream_mama_vs_real_mother_chapter_1b +2026-01-07 00:27:55,957 - INFO - Searching metadata for: dream mama vs real mother chapter 1b +2026-01-07 00:27:56,151 - INFO - Searching MangaUpdates for: dream mama vs real mother chapter 1b +2026-01-07 00:27:56,354 - INFO - Updating metadata for: [Kazuhiro] Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-07 00:27:56,355 - INFO - Searching metadata for: Kazuhiro Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-07 00:27:56,387 - INFO - Updating metadata for: my_dear_sister_is_mine +2026-01-07 00:27:56,388 - INFO - Searching metadata for: my dear sister is mine +2026-01-07 00:27:56,622 - INFO - Fetching metadata from: https://nhentai.net/g/340438/ +2026-01-07 00:27:56,674 - INFO - Fetching metadata from: https://nhentai.net/g/567113/ +2026-01-07 00:27:56,875 - INFO - Updating metadata for: [Fence14] Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-07 00:27:56,876 - INFO - Searching metadata for: Fence14 Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-07 00:27:56,880 - INFO - Updating metadata for: [Qdou Kei] Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-07 00:27:56,880 - INFO - Searching metadata for: Qdou Kei Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-07 00:27:56,882 - INFO - Updating metadata for: day_only_for_two +2026-01-07 00:27:56,883 - INFO - Searching metadata for: day only for two +2026-01-07 00:27:57,064 - INFO - Fetching metadata from: https://nhentai.net/g/167284/ +2026-01-07 00:27:57,116 - INFO - Fetching metadata from: https://nhentai.net/g/595742/ +2026-01-07 00:27:57,250 - INFO - Fetching metadata from: https://nhentai.net/g/246334/ +2026-01-07 00:27:57,257 - INFO - Updating metadata for: [Tohzai] Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-07 00:27:57,257 - INFO - Searching metadata for: Tohzai Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-07 00:27:57,341 - INFO - Updating metadata for: sakusei_shuki_shuki_sisters +2026-01-07 00:27:57,341 - INFO - Searching metadata for: sakusei shuki shuki sisters +2026-01-07 00:27:57,448 - INFO - Updating metadata for: [nounanka (Abubu)] Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-07 00:27:57,448 - INFO - Searching metadata for: nounanka (Abubu) Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-07 00:27:57,478 - INFO - Fetching metadata from: https://nhentai.net/g/141024/ +2026-01-07 00:27:57,519 - INFO - Fetching metadata from: https://nhentai.net/g/555633/ +2026-01-07 00:27:57,656 - INFO - Updating metadata for: whats_a_bond +2026-01-07 00:27:57,656 - INFO - Searching metadata for: whats a bond +2026-01-07 00:27:57,773 - INFO - Fetching metadata from: https://nhentai.net/g/601119/ +2026-01-07 00:27:57,777 - INFO - Updating metadata for: dosukebe_saimin_revenge +2026-01-07 00:27:57,778 - INFO - Searching metadata for: dosukebe saimin revenge +2026-01-07 00:27:57,825 - INFO - Fetching metadata from: https://nhentai.net/g/126340/ +2026-01-07 00:27:57,981 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-07 00:27:58,028 - INFO - Updating metadata for: story_about_how_i_fucked_cucked_and_brought_to_bliss_some_languid_wives +2026-01-07 00:27:58,028 - INFO - Searching metadata for: story about how i fucked cucked and brought to bliss some languid wives +2026-01-07 00:27:58,029 - INFO - Updating metadata for: [Kira Hiroyoshi] Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 00:27:58,030 - INFO - Searching metadata for: Kira Hiroyoshi Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 00:27:58,311 - INFO - Fetching metadata from: https://nhentai.net/g/578155/ +2026-01-07 00:27:58,358 - INFO - Searching metadata for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 00:27:58,364 - INFO - Updating metadata for: A Son's Choice +2026-01-07 00:27:58,365 - INFO - Searching metadata for: A Son's Choice +2026-01-07 00:27:58,500 - INFO - Updating metadata for: [Shiki] Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 00:27:58,500 - INFO - Searching metadata for: Shiki Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 00:27:58,632 - INFO - Searching MangaUpdates for: A Son's Choice +2026-01-07 00:27:58,667 - INFO - Searching MangaUpdates for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 00:27:58,842 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 00:27:58,960 - INFO - Updating metadata for: [Kawamori Mizaki] Mainichi uwakidzuma {English] +2026-01-07 00:27:58,961 - INFO - Searching metadata for: Kawamori Mizaki Mainichi uwakidzuma {English] +2026-01-07 00:27:59,108 - INFO - Fetching metadata from: https://nhentai.net/g/604700/ +2026-01-07 00:27:59,131 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 00:27:59,155 - INFO - Updating metadata for: ore_ga_daiteru_onna_wa_imouto_kamo_shirenai +2026-01-07 00:27:59,155 - INFO - Searching metadata for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-07 00:27:59,292 - INFO - Updating metadata for: skin_tight_sticky_intercourse +2026-01-07 00:27:59,292 - INFO - Searching metadata for: skin tight sticky intercourse +2026-01-07 00:27:59,356 - INFO - Searching MangaUpdates for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-07 00:27:59,449 - INFO - Fetching metadata from: https://nhentai.net/g/598517/ +2026-01-07 00:27:59,758 - INFO - Updating metadata for: uchi_ni_kaettara_mama_ga_zenra_de_hatsujou_shiteta_ken +2026-01-07 00:27:59,758 - INFO - Searching metadata for: uchi ni kaettara mama ga zenra de hatsujou shiteta ken +2026-01-07 00:27:59,762 - INFO - Updating metadata for: [Tokyo Ereki Studio (Azuma Ryo)] JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-07 00:27:59,762 - INFO - Searching metadata for: Tokyo Ereki Studio (Azuma Ryo) JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-07 00:27:59,865 - INFO - Updating metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-07 00:27:59,865 - INFO - Searching metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-07 00:28:00,046 - INFO - Fetching metadata from: https://nhentai.net/g/618553/ +2026-01-07 00:28:00,051 - INFO - Fetching metadata from: https://nhentai.net/g/329704/ +2026-01-07 00:28:00,186 - INFO - Fetching metadata from: https://nhentai.net/g/285698/ +2026-01-07 00:28:00,379 - INFO - Updating metadata for: Ai_ga_Ippai_Ero_wa_Oppai_(2010) +2026-01-07 00:28:00,379 - INFO - Searching metadata for: Ai ga Ippai Ero wa Oppai +2026-01-07 00:28:00,403 - INFO - Updating metadata for: [Teoi] Youmu-chan hypnosis sex +2026-01-07 00:28:00,403 - INFO - Searching metadata for: Teoi Youmu-chan hypnosis sex +2026-01-07 00:28:00,407 - INFO - Updating metadata for: lethargic_sister_tolerates_her_brothers_pranks +2026-01-07 00:28:00,407 - INFO - Searching metadata for: lethargic sister tolerates her brothers pranks +2026-01-07 00:28:00,541 - INFO - Searching metadata for: Youmu-chan hypnosis sex +2026-01-07 00:28:00,575 - INFO - Fetching metadata from: https://nhentai.net/g/518733/ +2026-01-07 00:28:00,698 - INFO - Fetching metadata from: https://nhentai.net/g/215924/ +2026-01-07 00:28:00,710 - INFO - Searching MangaUpdates for: Youmu-chan hypnosis sex +2026-01-07 00:28:00,759 - INFO - Updating metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-07 00:28:00,760 - INFO - Searching metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-07 00:28:01,014 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 00:28:01,014 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 00:28:01,017 - INFO - Updating metadata for: supplementary_sex_education +2026-01-07 00:28:01,017 - INFO - Searching metadata for: supplementary sex education +2026-01-07 00:28:01,139 - INFO - Fetching metadata from: https://nhentai.net/g/579037/ +2026-01-07 00:28:01,158 - INFO - Searching MangaUpdates for: supplementary sex education +2026-01-07 00:28:01,353 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 00:28:01,372 - INFO - Updating metadata for: bitch_mamas_depraved_adultery +2026-01-07 00:28:01,372 - INFO - Searching metadata for: bitch mamas depraved adultery +2026-01-07 00:28:01,525 - INFO - Searching MangaUpdates for: bitch mamas depraved adultery +2026-01-07 00:28:01,629 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 00:28:02,361 - INFO - Updating metadata for: taimanin_shinobu_series +2026-01-07 00:28:02,361 - INFO - Searching metadata for: taimanin shinobu series +2026-01-07 00:28:02,501 - INFO - Searching MangaUpdates for: taimanin shinobu series +2026-01-07 00:28:02,601 - INFO - Updating metadata for: [Fence 14] Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 00:28:02,602 - INFO - Searching metadata for: Fence 14 Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 00:28:02,636 - INFO - Updating metadata for: similar_siblings +2026-01-07 00:28:02,636 - INFO - Searching metadata for: similar siblings +2026-01-07 00:28:02,767 - INFO - Searching MangaUpdates for: similar siblings +2026-01-07 00:28:02,831 - INFO - Searching metadata for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 00:28:02,957 - INFO - Updating metadata for: [Sakai Hamachi] Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-07 00:28:02,957 - INFO - Searching metadata for: Sakai Hamachi Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-07 00:28:03,048 - INFO - Searching MangaUpdates for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 00:28:03,056 - INFO - Updating metadata for: kiyoshiros_last_hours +2026-01-07 00:28:03,056 - INFO - Searching metadata for: kiyoshiros last hours +2026-01-07 00:28:03,192 - INFO - Searching MangaUpdates for: kiyoshiros last hours +2026-01-07 00:28:03,281 - INFO - Fetching metadata from: https://nhentai.net/g/602876/ +2026-01-07 00:28:03,425 - INFO - Updating metadata for: onee_sama_likes_anal +2026-01-07 00:28:03,425 - INFO - Searching metadata for: onee sama likes anal +2026-01-07 00:28:03,469 - INFO - Updating metadata for: a_molester_took_everything_from_me_chapter_ +2026-01-07 00:28:03,469 - INFO - Searching metadata for: a molester took everything from me chapter +2026-01-07 00:28:03,486 - INFO - Updating metadata for: otaku_ni_rikai_aru_gal_yome_ga_otashop +2026-01-07 00:28:03,486 - INFO - Searching metadata for: otaku ni rikai aru gal yome ga otashop +2026-01-07 00:28:03,610 - INFO - Fetching metadata from: https://nhentai.net/g/110837/ +2026-01-07 00:28:03,692 - INFO - Searching MangaUpdates for: otaku ni rikai aru gal yome ga otashop +2026-01-07 00:28:03,704 - INFO - Searching MangaUpdates for: a molester took everything from me chapter +2026-01-07 00:28:03,790 - INFO - Updating metadata for: camellia_the_first +2026-01-07 00:28:03,790 - INFO - Searching metadata for: camellia the first +2026-01-07 00:28:03,963 - INFO - Fetching metadata from: https://nhentai.net/g/521474/ +2026-01-07 00:28:04,046 - INFO - Updating metadata for: [CHOMA] Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-07 00:28:04,046 - INFO - Searching metadata for: CHOMA Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-07 00:28:04,148 - INFO - Updating metadata for: sudou_siblings_sexual_circumstances +2026-01-07 00:28:04,148 - INFO - Searching metadata for: sudou siblings sexual circumstances +2026-01-07 00:28:04,240 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-07 00:28:04,294 - INFO - Updating metadata for: Hoken_Shitsu_no_Aisare_Sensei_(2020) +2026-01-07 00:28:04,294 - INFO - Searching metadata for: Hoken Shitsu no Aisare Sensei +2026-01-07 00:28:04,308 - INFO - Fetching metadata from: https://nhentai.net/g/326122/ +2026-01-07 00:28:04,433 - INFO - Updating metadata for: muchi_niku_jokyoushi_tomomi_mama +2026-01-07 00:28:04,434 - INFO - Searching metadata for: muchi niku jokyoushi tomomi mama +2026-01-07 00:28:04,494 - INFO - Searching MangaUpdates for: Hoken Shitsu no Aisare Sensei +2026-01-07 00:28:04,497 - INFO - Updating metadata for: mama_and_john +2026-01-07 00:28:04,497 - INFO - Searching metadata for: mama and john +2026-01-07 00:28:04,622 - INFO - Searching MangaUpdates for: muchi niku jokyoushi tomomi mama +2026-01-07 00:28:04,664 - INFO - Searching MangaUpdates for: mama and john +2026-01-07 00:28:04,794 - INFO - Updating metadata for: a_loner_makes_the_right_choices_and_goes_out_with_a_seiso_girl_of_course_theres_sex_as_well +2026-01-07 00:28:04,794 - INFO - Searching metadata for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-07 00:28:04,951 - INFO - Updating metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru _ Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-07 00:28:04,951 - INFO - Searching metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-07 00:28:04,991 - INFO - Searching MangaUpdates for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-07 00:28:05,006 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 00:28:05,006 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 00:28:05,256 - INFO - Fetching metadata from: https://nhentai.net/g/483349/ +2026-01-07 00:28:05,289 - INFO - Searching metadata for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 00:28:05,437 - INFO - Updating metadata for: michelle_to_icha_love +2026-01-07 00:28:05,437 - INFO - Searching metadata for: michelle to icha love +2026-01-07 00:28:05,631 - INFO - Fetching metadata from: https://nhentai.net/g/597558/ +2026-01-07 00:28:05,636 - INFO - Updating metadata for: maho_shojo_ointo_seba_mazu_haha_o_iyo +2026-01-07 00:28:05,637 - INFO - Searching metadata for: maho shojo ointo seba mazu haha o iyo +2026-01-07 00:28:05,736 - INFO - Searching MangaUpdates for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 00:28:05,849 - INFO - Fetching metadata from: https://nhentai.net/g/587203/ +2026-01-07 00:28:05,854 - INFO - Updating metadata for: toshi_densetsu_bitch_joshikai +2026-01-07 00:28:05,854 - INFO - Searching metadata for: toshi densetsu bitch joshikai +2026-01-07 00:28:06,068 - INFO - Fetching metadata from: https://nhentai.net/g/558829/ +2026-01-07 00:28:06,074 - INFO - Updating metadata for: paiotsu_kaede_live +2026-01-07 00:28:06,074 - INFO - Searching metadata for: paiotsu kaede live +2026-01-07 00:28:06,200 - INFO - Searching MangaUpdates for: paiotsu kaede live +2026-01-07 00:28:06,299 - INFO - Updating metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-07 00:28:06,299 - INFO - Searching metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-07 00:28:06,630 - INFO - Updating metadata for: otakuhime_and_the_lovey_dovey_bath +2026-01-07 00:28:06,630 - INFO - Searching metadata for: otakuhime and the lovey dovey bath +2026-01-07 00:28:06,672 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-07 00:28:06,762 - INFO - Updating metadata for: bakunyuu_bijukujo_wa_soku_hame_koubiana +2026-01-07 00:28:06,762 - INFO - Searching metadata for: bakunyuu bijukujo wa soku hame koubiana +2026-01-07 00:28:06,811 - INFO - Fetching metadata from: https://nhentai.net/g/317091/ +2026-01-07 00:28:06,865 - INFO - Updating metadata for: after_a_mouth +2026-01-07 00:28:06,865 - INFO - Searching metadata for: after a mouth +2026-01-07 00:28:06,956 - INFO - Fetching metadata from: https://nhentai.net/g/529021/ +2026-01-07 00:28:06,993 - INFO - Updating metadata for: airandou +2026-01-07 00:28:06,993 - INFO - Searching metadata for: airandou +2026-01-07 00:28:07,066 - INFO - Fetching metadata from: https://nhentai.net/g/602572/ +2026-01-07 00:28:07,173 - INFO - Fetching metadata from: https://nhentai.net/g/620480/ +2026-01-07 00:28:07,471 - INFO - Updating metadata for: joshi_seito_o_suki_houdai_ni_hame_botebara_ni_shite_ok_na_sekai +2026-01-07 00:28:07,471 - INFO - Searching metadata for: joshi seito o suki houdai ni hame botebara ni shite ok na sekai +2026-01-07 00:28:07,476 - INFO - Updating metadata for: incestism +2026-01-07 00:28:07,476 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:28:07,476 - INFO - Searching metadata for: incestism +2026-01-07 00:28:07,477 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:28:07,650 - INFO - Fetching metadata from: https://nhentai.net/g/600637/ +2026-01-07 00:28:07,683 - INFO - Fetching metadata from: https://nhentai.net/g/560447/ +2026-01-07 00:28:07,823 - INFO - Updating metadata for: life_of_passionate_pleasures +2026-01-07 00:28:07,824 - INFO - Searching metadata for: life of passionate pleasures +2026-01-07 00:28:07,842 - INFO - Fetching metadata from: https://nhentai.net/g/268826/ +2026-01-07 00:28:07,889 - INFO - Updating metadata for: virginity_prohibition_act_mandatory_baby_making +2026-01-07 00:28:07,889 - INFO - Searching metadata for: virginity prohibition act mandatory baby making +2026-01-07 00:28:07,910 - INFO - Searching MangaUpdates for: virginity prohibition act mandatory baby making +2026-01-07 00:28:08,047 - INFO - Fetching metadata from: https://nhentai.net/g/530801/ +2026-01-07 00:28:08,088 - INFO - Updating metadata for: [Puranpuman] A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-07 00:28:08,089 - INFO - Searching metadata for: Puranpuman A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-07 00:28:08,259 - INFO - Updating metadata for: [Juna Juna Juice] Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-07 00:28:08,262 - INFO - Searching metadata for: Juna Juna Juice Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-07 00:28:08,267 - INFO - Updating metadata for: carnal_siblings +2026-01-07 00:28:08,267 - INFO - Searching metadata for: carnal siblings +2026-01-07 00:28:08,428 - INFO - Fetching metadata from: https://nhentai.net/g/505982/ +2026-01-07 00:28:08,446 - INFO - Searching MangaUpdates for: carnal siblings +2026-01-07 00:28:08,474 - INFO - Fetching metadata from: https://nhentai.net/g/617868/ +2026-01-07 00:28:08,630 - INFO - Fetching metadata from: https://nhentai.net/g/473301/ +2026-01-07 00:28:08,672 - INFO - Updating metadata for: naughty_bunny_and_doctor +2026-01-07 00:28:08,673 - INFO - Searching metadata for: naughty bunny and doctor +2026-01-07 00:28:08,728 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-07 00:28:08,728 - INFO - Searching metadata for: Mustard Teikoku (Europia) A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-07 00:28:08,851 - INFO - Updating metadata for: the_lazy_and_naughty_achan_is_inviting_me +2026-01-07 00:28:08,851 - INFO - Searching metadata for: the lazy and naughty achan is inviting me +2026-01-07 00:28:08,933 - INFO - Fetching metadata from: https://nhentai.net/g/577393/ +2026-01-07 00:28:09,054 - INFO - Searching MangaUpdates for: the lazy and naughty achan is inviting me +2026-01-07 00:28:09,134 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-07 00:28:09,138 - INFO - Updating metadata for: hiyake_rikujoubu_oneechan_ni_neteiru_toku_ni_itazura_suru_ecchi_manga +2026-01-07 00:28:09,138 - INFO - Searching metadata for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-07 00:28:09,441 - INFO - Searching MangaUpdates for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-07 00:28:09,447 - INFO - Updating metadata for: Watashi_no_Kawaii_Mochizuki-kun_(2020) +2026-01-07 00:28:09,448 - INFO - Searching metadata for: Watashi no Kawaii Mochizuki-kun +2026-01-07 00:28:09,448 - INFO - Updating metadata for: hitozuma_saimin_appli_chapter +2026-01-07 00:28:09,449 - INFO - Searching metadata for: hitozuma saimin appli chapter +2026-01-07 00:28:09,605 - INFO - Searching MangaUpdates for: hitozuma saimin appli chapter +2026-01-07 00:28:09,650 - INFO - Searching MangaUpdates for: Watashi no Kawaii Mochizuki-kun +2026-01-07 00:28:10,150 - INFO - Updating metadata for: reiwas_penis_growth_training_chapter_1 +2026-01-07 00:28:10,150 - INFO - Searching metadata for: reiwas penis growth training chapter 1 +2026-01-07 00:28:10,150 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-07 00:28:10,151 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-07 00:28:10,178 - INFO - Updating metadata for: dagashi_wa_sake_ni_au +2026-01-07 00:28:10,179 - INFO - Searching metadata for: dagashi wa sake ni au +2026-01-07 00:28:10,286 - INFO - Searching MangaUpdates for: reiwas penis growth training chapter 1 +2026-01-07 00:28:10,396 - INFO - Fetching metadata from: https://nhentai.net/g/342844/ +2026-01-07 00:28:10,433 - INFO - Fetching metadata from: https://nhentai.net/g/404156/ +2026-01-07 00:28:10,643 - INFO - Updating metadata for: [Nedoko de Nidone (Nashio )] Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-07 00:28:10,643 - INFO - Searching metadata for: Nedoko de Nidone (Nashio ) Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-07 00:28:10,644 - INFO - Updating metadata for: the_night_my_sister_disappeared_i_made_love_to_my_mother +2026-01-07 00:28:10,646 - INFO - Searching metadata for: the night my sister disappeared i made love to my mother +2026-01-07 00:28:10,648 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 00:28:10,648 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 00:28:10,901 - INFO - Searching metadata for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 00:28:10,924 - INFO - Fetching metadata from: https://nhentai.net/g/584286/ +2026-01-07 00:28:11,019 - INFO - Fetching metadata from: https://nhentai.net/g/497835/ +2026-01-07 00:28:11,130 - INFO - Searching MangaUpdates for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 00:28:11,218 - INFO - Updating metadata for: from_nipple_bumps_to_erotic_play_with_my_sister +2026-01-07 00:28:11,219 - INFO - Searching metadata for: from nipple bumps to erotic play with my sister +2026-01-07 00:28:11,221 - INFO - Updating metadata for: tsubaki_democracy +2026-01-07 00:28:11,221 - INFO - Searching metadata for: tsubaki democracy +2026-01-07 00:28:11,391 - INFO - Fetching metadata from: https://nhentai.net/g/269196/ +2026-01-07 00:28:11,502 - INFO - Fetching metadata from: https://nhentai.net/g/587709/ +2026-01-07 00:28:11,573 - INFO - Updating metadata for: Kumiko_to_Warui_Musuko_(2015) +2026-01-07 00:28:11,573 - INFO - Searching metadata for: Kumiko to Warui Musuko +2026-01-07 00:28:11,736 - INFO - Updating metadata for: heart_mark_oome +2026-01-07 00:28:11,736 - INFO - Searching metadata for: heart mark oome +2026-01-07 00:28:11,796 - INFO - Fetching metadata from: https://nhentai.net/g/190492/ +2026-01-07 00:28:11,989 - INFO - Updating metadata for: this_teacher_in_her_fourtys_is_acting_like_a_young_girl_in_the_prime_if_her_life +2026-01-07 00:28:11,989 - INFO - Searching metadata for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-07 00:28:11,991 - INFO - Updating metadata for: ninshin_wa_kinshin_de_to_iu_hou_ga_dekita_node_haha_to_imouto_to_oba_mainichi_ore_no_chi_po_o_neratte_kuru +2026-01-07 00:28:11,991 - INFO - Searching metadata for: ninshin wa kinshin de to iu hou ga dekita node haha to imouto to oba mainichi ore no chi po o neratte kuru +2026-01-07 00:28:12,001 - INFO - Fetching metadata from: https://nhentai.net/g/585795/ +2026-01-07 00:28:12,317 - INFO - Searching MangaUpdates for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-07 00:28:12,349 - INFO - Updating metadata for: [Airandou] Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 00:28:12,350 - INFO - Searching metadata for: Airandou Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 00:28:12,584 - INFO - Searching metadata for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 00:28:12,638 - INFO - Fetching metadata from: https://nhentai.net/g/400868/ +2026-01-07 00:28:12,780 - INFO - Searching MangaUpdates for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 00:28:12,841 - INFO - Updating metadata for: ani_no_kimoi_gendou_ni_honki +2026-01-07 00:28:12,841 - INFO - Searching metadata for: ani no kimoi gendou ni honki +2026-01-07 00:28:13,071 - INFO - Fetching metadata from: https://nhentai.net/g/511424/ +2026-01-07 00:28:13,246 - INFO - Updating metadata for: Roujin_to_Neko_(2024) +2026-01-07 00:28:13,246 - INFO - Searching metadata for: Roujin to Neko +2026-01-07 00:28:13,409 - INFO - Searching MangaUpdates for: Roujin to Neko +2026-01-07 00:28:13,417 - INFO - Updating metadata for: the_story_of_a_single_career_woman_in_hers_getting_addicted_to_a_relationship +2026-01-07 00:28:13,417 - INFO - Searching metadata for: the story of a single career woman in hers getting addicted to a relationship +2026-01-07 00:28:13,471 - INFO - Updating metadata for: everyday_conversations_with_my_big_sister +2026-01-07 00:28:13,471 - INFO - Searching metadata for: everyday conversations with my big sister +2026-01-07 00:28:13,628 - INFO - Searching MangaUpdates for: everyday conversations with my big sister +2026-01-07 00:28:13,707 - INFO - Searching MangaUpdates for: the story of a single career woman in hers getting addicted to a relationship +2026-01-07 00:28:13,737 - INFO - Updating metadata for: gal_bitch_supremacy +2026-01-07 00:28:13,737 - INFO - Searching metadata for: gal bitch supremacy +2026-01-07 00:28:13,902 - INFO - Fetching metadata from: https://nhentai.net/g/521758/ +2026-01-07 00:28:14,000 - INFO - Updating metadata for: [R Koubou (Ruzi)] Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 00:28:14,001 - INFO - Searching metadata for: R Koubou (Ruzi) Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 00:28:14,129 - INFO - Updating metadata for: ane_de_shikoru_otouto_to_onaritai +2026-01-07 00:28:14,129 - INFO - Searching metadata for: ane de shikoru otouto to onaritai +2026-01-07 00:28:14,361 - INFO - Fetching metadata from: https://nhentai.net/g/505892/ +2026-01-07 00:28:14,421 - INFO - Searching metadata for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 00:28:14,597 - INFO - Updating metadata for: video_memories +2026-01-07 00:28:14,597 - INFO - Searching metadata for: video memories +2026-01-07 00:28:14,608 - INFO - Updating metadata for: [Kouda Tomohiro] Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-07 00:28:14,608 - INFO - Searching metadata for: Kouda Tomohiro Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-07 00:28:14,715 - INFO - Searching MangaUpdates for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 00:28:14,759 - INFO - Fetching metadata from: https://nhentai.net/g/506956/ +2026-01-07 00:28:14,795 - INFO - Fetching metadata from: https://nhentai.net/g/604149/ +2026-01-07 00:28:15,141 - INFO - Updating metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-07 00:28:15,142 - INFO - Searching metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-07 00:28:15,146 - INFO - Updating metadata for: [Hikagemon (Tenpiboshi)] Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-07 00:28:15,146 - INFO - Searching metadata for: Hikagemon (Tenpiboshi) Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-07 00:28:15,232 - INFO - Updating metadata for: aneoto +2026-01-07 00:28:15,232 - INFO - Searching metadata for: aneoto +2026-01-07 00:28:15,396 - INFO - Fetching metadata from: https://nhentai.net/g/614968/ +2026-01-07 00:28:15,432 - INFO - Fetching metadata from: https://nhentai.net/g/593437/ +2026-01-07 00:28:15,464 - INFO - Fetching metadata from: https://nhentai.net/g/578213/ +2026-01-07 00:28:15,919 - INFO - Updating metadata for: [Niramikko Koujou] Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-07 00:28:15,920 - INFO - Searching metadata for: Niramikko Koujou Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-07 00:28:15,930 - INFO - Updating metadata for: rural_stories +2026-01-07 00:28:15,930 - INFO - Searching metadata for: rural stories +2026-01-07 00:28:15,931 - INFO - Updating metadata for: the_making_of_a_cultt_leader +2026-01-07 00:28:15,933 - INFO - Searching metadata for: the making of a cultt leader +2026-01-07 00:28:16,112 - INFO - Fetching metadata from: https://nhentai.net/g/565283/ +2026-01-07 00:28:16,170 - INFO - Searching MangaUpdates for: the making of a cultt leader +2026-01-07 00:28:16,263 - INFO - Fetching metadata from: https://nhentai.net/g/557335/ +2026-01-07 00:28:16,341 - INFO - Updating metadata for: [Sunagawa Tara] Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-07 00:28:16,342 - INFO - Searching metadata for: Sunagawa Tara Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-07 00:28:16,494 - INFO - Updating metadata for: kanojo_no_ane_wa_gal_de_bitch_de_yariman_de +2026-01-07 00:28:16,494 - INFO - Searching metadata for: kanojo no ane wa gal de bitch de yariman de +2026-01-07 00:28:16,509 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 00:28:16,510 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 00:28:16,863 - INFO - Fetching metadata from: https://nhentai.net/g/578979/ +2026-01-07 00:28:16,877 - INFO - Fetching metadata from: https://nhentai.net/g/601543/ +2026-01-07 00:28:16,901 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 00:28:17,058 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-07 00:28:17,059 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-07 00:28:17,179 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-07 00:28:17,180 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-07 00:28:17,254 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 00:28:17,296 - INFO - Fetching metadata from: https://nhentai.net/g/604729/ +2026-01-07 00:28:17,525 - INFO - Fetching metadata from: https://nhentai.net/g/573974/ +2026-01-07 00:28:17,572 - INFO - Updating metadata for: musclehead_girl_cant_resist_orgasm_chapter +2026-01-07 00:28:17,572 - INFO - Searching metadata for: musclehead girl cant resist orgasm chapter +2026-01-07 00:28:17,731 - INFO - Searching MangaUpdates for: musclehead girl cant resist orgasm chapter +2026-01-07 00:28:17,738 - INFO - Updating metadata for: my_daily_life_as_a_streamer +2026-01-07 00:28:17,738 - INFO - Searching metadata for: my daily life as a streamer +2026-01-07 00:28:18,003 - INFO - Fetching metadata from: https://nhentai.net/g/550192/ +2026-01-07 00:28:18,143 - INFO - Updating metadata for: oneechan_wa_sore_o_yurusanai +2026-01-07 00:28:18,143 - INFO - Searching metadata for: oneechan wa sore o yurusanai +2026-01-07 00:28:18,188 - INFO - Updating metadata for: possessed_and_thrusting +2026-01-07 00:28:18,188 - INFO - Searching metadata for: possessed and thrusting +2026-01-07 00:28:18,348 - INFO - Fetching metadata from: https://nhentai.net/g/584236/ +2026-01-07 00:28:18,360 - INFO - Searching MangaUpdates for: oneechan wa sore o yurusanai +2026-01-07 00:28:18,540 - INFO - Updating metadata for: mrs_miho_cant_stop_cheating_chapter +2026-01-07 00:28:18,540 - INFO - Searching metadata for: mrs miho cant stop cheating chapter +2026-01-07 00:28:18,542 - INFO - Updating metadata for: watashi_de_sukkiri_saasechaina_hatsukoi_aite_ni_tsurareru_ore +2026-01-07 00:28:18,543 - INFO - Searching metadata for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-07 00:28:18,715 - INFO - Searching MangaUpdates for: mrs miho cant stop cheating chapter +2026-01-07 00:28:18,734 - INFO - Searching MangaUpdates for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-07 00:28:18,737 - INFO - Updating metadata for: pet_mimamori_camera_ni_ane_to_otouto_no_sex_ga_utsutteta +2026-01-07 00:28:18,737 - INFO - Searching metadata for: pet mimamori camera ni ane to otouto no sex ga utsutteta +2026-01-07 00:28:19,032 - INFO - Fetching metadata from: https://nhentai.net/g/312775/ +2026-01-07 00:28:19,162 - INFO - Updating metadata for: a_story_about_an_oneesan_being_impregnated_by_an_incubus +2026-01-07 00:28:19,162 - INFO - Searching metadata for: a story about an oneesan being impregnated by an incubus +2026-01-07 00:28:19,227 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-07 00:28:19,228 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-07 00:28:19,328 - INFO - Updating metadata for: perverted_body_tight_mama_monster +2026-01-07 00:28:19,329 - INFO - Searching metadata for: perverted body tight mama monster +2026-01-07 00:28:19,423 - INFO - Searching MangaUpdates for: a story about an oneesan being impregnated by an incubus +2026-01-07 00:28:19,434 - INFO - Fetching metadata from: https://nhentai.net/g/544873/ +2026-01-07 00:28:19,598 - INFO - Fetching metadata from: https://nhentai.net/g/544653/ +2026-01-07 00:28:19,660 - INFO - Updating metadata for: sisters_after_mozu +2026-01-07 00:28:19,660 - INFO - Searching metadata for: sisters after mozu +2026-01-07 00:28:19,815 - INFO - Searching MangaUpdates for: sisters after mozu +2026-01-07 00:28:19,838 - INFO - Updating metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-07 00:28:19,838 - INFO - Searching metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-07 00:28:19,842 - INFO - Updating metadata for: wrung_dry_by_my_sister_every_night_under_the_sheets +2026-01-07 00:28:19,842 - INFO - Searching metadata for: wrung dry by my sister every night under the sheets +2026-01-07 00:28:19,995 - INFO - Updating metadata for: otaku_hime_ga_kita_heya +2026-01-07 00:28:19,995 - INFO - Searching metadata for: otaku hime ga kita heya +2026-01-07 00:28:20,043 - INFO - Fetching metadata from: https://nhentai.net/g/548542/ +2026-01-07 00:28:20,103 - INFO - Fetching metadata from: https://nhentai.net/g/496743/ +2026-01-07 00:28:20,219 - INFO - Fetching metadata from: https://nhentai.net/g/347531/ +2026-01-07 00:28:20,422 - INFO - Updating metadata for: [Yue] Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-07 00:28:20,422 - INFO - Searching metadata for: Yue Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-07 00:28:20,426 - INFO - Updating metadata for: dream_mama_vs_real_mother_chapter_1b +2026-01-07 00:28:20,426 - INFO - Updating metadata for: gishi_ni_shiborareru_hanashi +2026-01-07 00:28:20,426 - INFO - Searching metadata for: dream mama vs real mother chapter 1b +2026-01-07 00:28:20,426 - INFO - Searching metadata for: gishi ni shiborareru hanashi +2026-01-07 00:28:20,595 - INFO - Searching MangaUpdates for: dream mama vs real mother chapter 1b +2026-01-07 00:28:20,626 - INFO - Fetching metadata from: https://nhentai.net/g/580266/ +2026-01-07 00:28:20,681 - INFO - Fetching metadata from: https://nhentai.net/g/588299/ +2026-01-07 00:28:20,708 - INFO - Searching MangaUpdates for: gishi ni shiborareru hanashi +2026-01-07 00:28:20,813 - INFO - Updating metadata for: a_country_mother_who_makes_her_son_horny +2026-01-07 00:28:20,814 - INFO - Searching metadata for: a country mother who makes her son horny +2026-01-07 00:28:20,888 - INFO - Updating metadata for: day_only_for_two +2026-01-07 00:28:20,888 - INFO - Searching metadata for: day only for two +2026-01-07 00:28:21,054 - INFO - Fetching metadata from: https://nhentai.net/g/558745/ +2026-01-07 00:28:21,059 - INFO - Updating metadata for: [Nishikawa Kou] Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 00:28:21,059 - INFO - Searching metadata for: Nishikawa Kou Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 00:28:21,088 - INFO - Fetching metadata from: https://nhentai.net/g/167284/ +2026-01-07 00:28:21,156 - INFO - Searching metadata for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 00:28:21,266 - INFO - Updating metadata for: [Tohzai] Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-07 00:28:21,267 - INFO - Searching metadata for: Tohzai Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-07 00:28:21,328 - INFO - Updating metadata for: sister_complex +2026-01-07 00:28:21,328 - INFO - Searching metadata for: sister complex +2026-01-07 00:28:21,468 - INFO - Searching MangaUpdates for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 00:28:21,481 - INFO - Fetching metadata from: https://nhentai.net/g/141024/ +2026-01-07 00:28:21,530 - INFO - Fetching metadata from: https://nhentai.net/g/600775/ +2026-01-07 00:28:21,661 - INFO - Updating metadata for: whats_a_bond +2026-01-07 00:28:21,661 - INFO - Searching metadata for: whats a bond +2026-01-07 00:28:21,732 - INFO - Updating metadata for: nao_hanpatsu_zokusei +2026-01-07 00:28:21,732 - INFO - Searching metadata for: nao hanpatsu zokusei +2026-01-07 00:28:21,830 - INFO - Fetching metadata from: https://nhentai.net/g/126340/ +2026-01-07 00:28:21,840 - INFO - Updating metadata for: call_me_a_slut +2026-01-07 00:28:21,840 - INFO - Searching metadata for: call me a slut +2026-01-07 00:28:21,916 - INFO - Searching MangaUpdates for: nao hanpatsu zokusei +2026-01-07 00:28:22,013 - INFO - Updating metadata for: [Kira Hiroyoshi] Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 00:28:22,014 - INFO - Searching metadata for: Kira Hiroyoshi Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 00:28:22,094 - INFO - Fetching metadata from: https://nhentai.net/g/532748/ +2026-01-07 00:28:22,270 - INFO - Updating metadata for: rental_mama_rental_mom +2026-01-07 00:28:22,270 - INFO - Searching metadata for: rental mama rental mom +2026-01-07 00:28:22,302 - INFO - Updating metadata for: [NCP (big g)] A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-07 00:28:22,303 - INFO - Searching metadata for: NCP (big g) A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-07 00:28:22,426 - INFO - Searching metadata for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 00:28:22,473 - INFO - Fetching metadata from: https://nhentai.net/g/593813/ +2026-01-07 00:28:22,724 - INFO - Updating metadata for: oshi_to_ecchina_koto_nante_muri_muri_muri +2026-01-07 00:28:22,724 - INFO - Searching metadata for: oshi to ecchina koto nante muri muri muri +2026-01-07 00:28:22,754 - INFO - Fetching metadata from: https://nhentai.net/g/514753/ +2026-01-07 00:28:22,765 - INFO - Searching MangaUpdates for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 00:28:22,967 - INFO - Searching MangaUpdates for: oshi to ecchina koto nante muri muri muri +2026-01-07 00:28:22,973 - INFO - Updating metadata for: masochist_little_brothers_training +2026-01-07 00:28:22,973 - INFO - Searching metadata for: masochist little brothers training +2026-01-07 00:28:23,078 - INFO - Updating metadata for: ore_ga_daiteru_onna_wa_imouto_kamo_shirenai +2026-01-07 00:28:23,078 - INFO - Searching metadata for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-07 00:28:23,131 - INFO - Searching MangaUpdates for: masochist little brothers training +2026-01-07 00:28:23,241 - INFO - Updating metadata for: Kateinai Henai +2026-01-07 00:28:23,242 - INFO - Searching metadata for: Kateinai Henai +2026-01-07 00:28:23,258 - INFO - Searching MangaUpdates for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-07 00:28:23,391 - INFO - Fetching metadata from: https://nhentai.net/g/603393/ +2026-01-07 00:28:23,621 - INFO - Updating metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-07 00:28:23,621 - INFO - Searching metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-07 00:28:23,623 - INFO - Updating metadata for: SISUANA - sister hole +2026-01-07 00:28:23,623 - INFO - Searching metadata for: SISUANA - sister hole +2026-01-07 00:28:23,625 - INFO - Updating metadata for: devi_navi +2026-01-07 00:28:23,625 - INFO - Searching metadata for: devi navi +2026-01-07 00:28:23,792 - INFO - Fetching metadata from: https://nhentai.net/g/596339/ +2026-01-07 00:28:23,813 - INFO - Fetching metadata from: https://nhentai.net/g/521114/ +2026-01-07 00:28:23,993 - INFO - Updating metadata for: my_neet_older_sister +2026-01-07 00:28:23,993 - INFO - Searching metadata for: my neet older sister +2026-01-07 00:28:24,009 - INFO - Fetching metadata from: https://nhentai.net/g/285698/ +2026-01-07 00:28:24,115 - INFO - Updating metadata for: [Chiguchi Miri] Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 00:28:24,115 - INFO - Searching metadata for: Chiguchi Miri Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 00:28:24,178 - INFO - Fetching metadata from: https://nhentai.net/g/541946/ +2026-01-07 00:28:24,221 - INFO - Updating metadata for: lethargic_sister_tolerates_her_brothers_pranks +2026-01-07 00:28:24,222 - INFO - Searching metadata for: lethargic sister tolerates her brothers pranks +2026-01-07 00:28:24,328 - INFO - Searching metadata for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 00:28:24,380 - INFO - Fetching metadata from: https://nhentai.net/g/518733/ +2026-01-07 00:28:24,384 - INFO - Updating metadata for: narmaya_attack +2026-01-07 00:28:24,385 - INFO - Searching metadata for: narmaya attack +2026-01-07 00:28:24,563 - INFO - Fetching metadata from: https://nhentai.net/g/322620/ +2026-01-07 00:28:24,577 - INFO - Searching MangaUpdates for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 00:28:24,598 - INFO - Updating metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-07 00:28:24,598 - INFO - Searching metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-07 00:28:24,768 - INFO - Updating metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-07 00:28:24,768 - INFO - Searching metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-07 00:28:24,891 - INFO - Fetching metadata from: https://nhentai.net/g/579037/ +2026-01-07 00:28:24,930 - INFO - Searching MangaUpdates for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-07 00:28:25,062 - INFO - Updating metadata for: bitch_mamas_depraved_adultery +2026-01-07 00:28:25,062 - INFO - Searching metadata for: bitch mamas depraved adultery +2026-01-07 00:28:25,200 - INFO - Searching MangaUpdates for: bitch mamas depraved adultery +2026-01-07 00:28:25,374 - INFO - Updating metadata for: [Muufa] One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 00:28:25,374 - INFO - Searching metadata for: Muufa One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 00:28:25,491 - INFO - Updating metadata for: [Fence 14] Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 00:28:25,491 - INFO - Searching metadata for: Fence 14 Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 00:28:25,529 - INFO - Searching metadata for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 00:28:25,534 - INFO - Updating metadata for: the_country_little_sister_and_the_tempation_of_innocence +2026-01-07 00:28:25,534 - INFO - Searching metadata for: the country little sister and the tempation of innocence +2026-01-07 00:28:25,713 - INFO - Searching MangaUpdates for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 00:28:25,723 - INFO - Searching MangaUpdates for: the country little sister and the tempation of innocence +2026-01-07 00:28:25,733 - INFO - Searching metadata for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 00:28:25,927 - INFO - Searching MangaUpdates for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 00:28:26,371 - INFO - Updating metadata for: blood_lunch +2026-01-07 00:28:26,371 - INFO - Searching metadata for: blood lunch +2026-01-07 00:28:26,406 - INFO - Updating metadata for: onee_sama_likes_anal +2026-01-07 00:28:26,406 - INFO - Searching metadata for: onee sama likes anal +2026-01-07 00:28:26,443 - INFO - Updating metadata for: leave_me_alone +2026-01-07 00:28:26,443 - INFO - Searching metadata for: leave me alone +2026-01-07 00:28:26,535 - INFO - Fetching metadata from: https://nhentai.net/g/578369/ +2026-01-07 00:28:26,565 - INFO - Fetching metadata from: https://nhentai.net/g/110837/ +2026-01-07 00:28:26,664 - INFO - Fetching metadata from: https://nhentai.net/g/557684/ +2026-01-07 00:28:26,745 - INFO - Updating metadata for: toppatsusei_bokki_shoukougun_jii_fuzen_o_soete +2026-01-07 00:28:26,745 - INFO - Searching metadata for: toppatsusei bokki shoukougun jii fuzen o soete +2026-01-07 00:28:26,747 - INFO - Updating metadata for: camellia_the_first +2026-01-07 00:28:26,748 - INFO - Searching metadata for: camellia the first +2026-01-07 00:28:26,852 - INFO - Updating metadata for: the_day_the_youngest_son_lost_his_virginity_thanks_to_his_mother_in_a_swimsuit +2026-01-07 00:28:26,852 - INFO - Searching metadata for: the day the youngest son lost his virginity thanks to his mother in a swimsuit +2026-01-07 00:28:26,915 - INFO - Fetching metadata from: https://nhentai.net/g/521474/ +2026-01-07 00:28:26,959 - INFO - Fetching metadata from: https://nhentai.net/g/425210/ +2026-01-07 00:28:27,108 - INFO - Fetching metadata from: https://nhentai.net/g/550368/ +2026-01-07 00:28:27,112 - INFO - Updating metadata for: sudou_siblings_sexual_circumstances +2026-01-07 00:28:27,112 - INFO - Searching metadata for: sudou siblings sexual circumstances +2026-01-07 00:28:27,178 - INFO - Updating metadata for: Between Heave and Hell +2026-01-07 00:28:27,179 - INFO - Searching metadata for: Between Heave and Hell +2026-01-07 00:28:27,314 - INFO - Fetching metadata from: https://nhentai.net/g/326122/ +2026-01-07 00:28:27,320 - INFO - Updating metadata for: misaesan_no_shiri_ass +2026-01-07 00:28:27,320 - INFO - Searching metadata for: misaesan no shiri ass +2026-01-07 00:28:27,340 - INFO - Searching MangaUpdates for: misaesan no shiri ass +2026-01-07 00:28:27,342 - INFO - Searching MangaUpdates for: sudou siblings sexual circumstances +2026-01-07 00:28:27,386 - INFO - Fetching metadata from: https://nhentai.net/g/125398/ +2026-01-07 00:28:27,562 - INFO - Updating metadata for: is_my_sister_seriously_ill +2026-01-07 00:28:27,562 - INFO - Searching metadata for: is my sister seriously ill +2026-01-07 00:28:27,774 - INFO - Fetching metadata from: https://nhentai.net/g/600832/ +2026-01-07 00:28:27,798 - INFO - Updating metadata for: and_then_i_will_be_a_mom +2026-01-07 00:28:27,798 - INFO - Searching metadata for: and then i will be a mom +2026-01-07 00:28:27,864 - INFO - Updating metadata for: mama_and_john +2026-01-07 00:28:27,864 - INFO - Searching metadata for: mama and john +2026-01-07 00:28:27,952 - INFO - Updating metadata for: mucchiri_megaton +2026-01-07 00:28:27,952 - INFO - Searching metadata for: mucchiri megaton +2026-01-07 00:28:28,110 - INFO - Searching MangaUpdates for: mama and john +2026-01-07 00:28:28,122 - INFO - Fetching metadata from: https://nhentai.net/g/495948/ +2026-01-07 00:28:28,175 - INFO - Searching MangaUpdates for: and then i will be a mom +2026-01-07 00:28:28,370 - INFO - Updating metadata for: [Kikunosukemaru] Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-07 00:28:28,370 - INFO - Searching metadata for: Kikunosukemaru Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-07 00:28:28,400 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 00:28:28,400 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 00:28:28,594 - INFO - Fetching metadata from: https://nhentai.net/g/166499/ +2026-01-07 00:28:28,600 - INFO - Updating metadata for: a_molester_took_everything_from_me +2026-01-07 00:28:28,601 - INFO - Searching metadata for: a molester took everything from me +2026-01-07 00:28:28,748 - INFO - Searching metadata for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 00:28:28,786 - INFO - Updating metadata for: the_sex_life_of_the_tachibanas +2026-01-07 00:28:28,786 - INFO - Searching metadata for: the sex life of the tachibanas +2026-01-07 00:28:28,865 - INFO - Fetching metadata from: https://nhentai.net/g/602000/ +2026-01-07 00:28:28,952 - INFO - Searching MangaUpdates for: the sex life of the tachibanas +2026-01-07 00:28:29,062 - INFO - Searching MangaUpdates for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 00:28:29,115 - INFO - Updating metadata for: will_you_help_me +2026-01-07 00:28:29,116 - INFO - Searching metadata for: will you help me +2026-01-07 00:28:29,348 - INFO - Updating metadata for: jitsu_wa_midara_na_chounyuu_sensei_chapter +2026-01-07 00:28:29,348 - INFO - Searching metadata for: jitsu wa midara na chounyuu sensei chapter +2026-01-07 00:28:29,381 - INFO - Fetching metadata from: https://nhentai.net/g/277925/ +2026-01-07 00:28:29,614 - INFO - Searching MangaUpdates for: jitsu wa midara na chounyuu sensei chapter +2026-01-07 00:28:29,617 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-07 00:28:29,617 - INFO - Searching metadata for: Manbou Shoten Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-07 00:28:29,706 - INFO - Updating metadata for: bakunyuu_bijukujo_wa_soku_hame_koubiana +2026-01-07 00:28:29,706 - INFO - Searching metadata for: bakunyuu bijukujo wa soku hame koubiana +2026-01-07 00:28:29,930 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-07 00:28:29,968 - INFO - Fetching metadata from: https://nhentai.net/g/529021/ +2026-01-07 00:28:30,229 - INFO - Updating metadata for: katamichi_catchball +2026-01-07 00:28:30,229 - INFO - Searching metadata for: katamichi catchball +2026-01-07 00:28:30,234 - INFO - Updating metadata for: joshi_seito_o_suki_houdai_ni_hame_botebara_ni_shite_ok_na_sekai +2026-01-07 00:28:30,234 - INFO - Searching metadata for: joshi seito o suki houdai ni hame botebara ni shite ok na sekai +2026-01-07 00:28:30,376 - INFO - Updating metadata for: [K8ON] Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 00:28:30,376 - INFO - Searching metadata for: K8ON Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 00:28:30,388 - INFO - Fetching metadata from: https://nhentai.net/g/528903/ +2026-01-07 00:28:30,610 - INFO - Updating metadata for: bareback_sex_life_with_da_vinci +2026-01-07 00:28:30,610 - INFO - Searching metadata for: bareback sex life with da vinci +2026-01-07 00:28:30,638 - INFO - Searching metadata for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 00:28:30,712 - INFO - Fetching metadata from: https://nhentai.net/g/268826/ +2026-01-07 00:28:30,868 - INFO - Searching MangaUpdates for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 00:28:30,880 - INFO - Fetching metadata from: https://nhentai.net/g/250741/ +2026-01-07 00:28:30,981 - INFO - Updating metadata for: [Puranpuman] A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-07 00:28:30,981 - INFO - Searching metadata for: Puranpuman A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-07 00:28:31,005 - INFO - Searching metadata for: A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-07 00:28:31,169 - INFO - Updating metadata for: my_defenseless_mothers +2026-01-07 00:28:31,170 - INFO - Searching metadata for: my defenseless mothers +2026-01-07 00:28:31,363 - INFO - Searching MangaUpdates for: my defenseless mothers +2026-01-07 00:28:31,420 - INFO - Fetching metadata from: https://nhentai.net/g/617868/ +2026-01-07 00:28:31,615 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-07 00:28:31,615 - INFO - Searching metadata for: Mustard Teikoku (Europia) A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-07 00:28:31,647 - INFO - Updating metadata for: gumi_chocolate_pine_koma_mangashuu +2026-01-07 00:28:31,647 - INFO - Searching metadata for: gumi chocolate pine koma mangashuu +2026-01-07 00:28:31,699 - INFO - Updating metadata for: a_day_for_incest +2026-01-07 00:28:31,699 - INFO - Searching metadata for: a day for incest +2026-01-07 00:28:31,857 - INFO - Fetching metadata from: https://nhentai.net/g/541484/ +2026-01-07 00:28:32,075 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-07 00:28:32,088 - INFO - Fetching metadata from: https://nhentai.net/g/497650/ +2026-01-07 00:28:32,092 - INFO - Updating metadata for: temptation_downtime +2026-01-07 00:28:32,092 - INFO - Searching metadata for: temptation downtime +2026-01-07 00:28:32,267 - INFO - Fetching metadata from: https://nhentai.net/g/238204/ +2026-01-07 00:28:32,284 - INFO - Updating metadata for: hitozuma_saimin_appli_chapter +2026-01-07 00:28:32,284 - INFO - Searching metadata for: hitozuma saimin appli chapter +2026-01-07 00:28:32,316 - INFO - Searching MangaUpdates for: temptation downtime +2026-01-07 00:28:32,359 - INFO - Updating metadata for: jagan_no_saimin_inryoku_de_seitokai_les_joshitachi +2026-01-07 00:28:32,359 - INFO - Searching metadata for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-07 00:28:32,417 - INFO - Searching MangaUpdates for: hitozuma saimin appli chapter +2026-01-07 00:28:32,540 - INFO - Searching MangaUpdates for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-07 00:28:32,630 - INFO - Updating metadata for: welcome_to_greenwood +2026-01-07 00:28:32,630 - INFO - Searching metadata for: welcome to greenwood +2026-01-07 00:28:32,667 - INFO - Updating metadata for: dagashi_wa_sake_ni_au +2026-01-07 00:28:32,668 - INFO - Searching metadata for: dagashi wa sake ni au +2026-01-07 00:28:32,839 - INFO - Fetching metadata from: https://nhentai.net/g/55621/ +2026-01-07 00:28:32,955 - INFO - Fetching metadata from: https://nhentai.net/g/404156/ +2026-01-07 00:28:32,963 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite_chapter_ +2026-01-07 00:28:32,963 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-07 00:28:33,000 - INFO - Updating metadata for: passionate_coriander +2026-01-07 00:28:33,000 - INFO - Searching metadata for: passionate coriander +2026-01-07 00:28:33,143 - INFO - Fetching metadata from: https://nhentai.net/g/504728/ +2026-01-07 00:28:33,147 - INFO - Updating metadata for: the_night_my_sister_disappeared_i_made_love_to_my_mother +2026-01-07 00:28:33,147 - INFO - Searching metadata for: the night my sister disappeared i made love to my mother +2026-01-07 00:28:33,274 - INFO - Searching MangaUpdates for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-07 00:28:33,326 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-07 00:28:33,326 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-07 00:28:33,424 - INFO - Fetching metadata from: https://nhentai.net/g/497835/ +2026-01-07 00:28:33,614 - INFO - Updating metadata for: tsubaki_democracy +2026-01-07 00:28:33,615 - INFO - Searching metadata for: tsubaki democracy +2026-01-07 00:28:33,631 - INFO - Updating metadata for: making_a_bet_with_a_competitive_niece +2026-01-07 00:28:33,631 - INFO - Searching metadata for: making a bet with a competitive niece +2026-01-07 00:28:33,756 - INFO - Fetching metadata from: https://nhentai.net/g/497921/ +2026-01-07 00:28:33,772 - INFO - Fetching metadata from: https://nhentai.net/g/269196/ +2026-01-07 00:28:33,970 - INFO - Searching MangaUpdates for: making a bet with a competitive niece +2026-01-07 00:28:33,975 - INFO - Updating metadata for: big_sister_with_drooping_tits_wants_to_fuck_her_little_brother +2026-01-07 00:28:33,975 - INFO - Searching metadata for: big sister with drooping tits wants to fuck her little brother +2026-01-07 00:28:33,978 - INFO - Updating metadata for: Kumiko_to_Warui_Musuko_(2015) +2026-01-07 00:28:33,978 - INFO - Searching metadata for: Kumiko to Warui Musuko +2026-01-07 00:28:34,158 - INFO - Fetching metadata from: https://nhentai.net/g/190492/ +2026-01-07 00:28:34,178 - INFO - Fetching metadata from: https://nhentai.net/g/502879/ +2026-01-07 00:28:34,372 - INFO - Updating metadata for: sister_control +2026-01-07 00:28:34,372 - INFO - Searching metadata for: sister control +2026-01-07 00:28:34,375 - INFO - Updating metadata for: this_teacher_in_her_fourtys_is_acting_like_a_young_girl_in_the_prime_if_her_life +2026-01-07 00:28:34,375 - INFO - Searching metadata for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-07 00:28:34,376 - INFO - Updating metadata for: [k8on] It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 00:28:34,377 - INFO - Searching metadata for: k8on It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 00:28:34,541 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-07 00:28:34,661 - INFO - Searching MangaUpdates for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-07 00:28:34,728 - INFO - Searching metadata for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 00:28:34,842 - INFO - Updating metadata for: a_book_about_using_hypno_to_fuck_my_little_sister +2026-01-07 00:28:34,842 - INFO - Searching metadata for: a book about using hypno to fuck my little sister +2026-01-07 00:28:35,077 - INFO - Searching MangaUpdates for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 00:28:35,122 - INFO - Updating metadata for: the_story_of_a_single_career_woman_in_hers_getting_addicted_to_a_relationship +2026-01-07 00:28:35,122 - INFO - Searching metadata for: the story of a single career woman in hers getting addicted to a relationship +2026-01-07 00:28:35,176 - INFO - Fetching metadata from: https://nhentai.net/g/545892/ +2026-01-07 00:28:35,382 - INFO - Updating metadata for: moms_body_is_mine_mother_and_son_incest_sex_behind_dads_back +2026-01-07 00:28:35,382 - INFO - Searching metadata for: moms body is mine mother and son incest sex behind dads back +2026-01-07 00:28:35,405 - INFO - Searching MangaUpdates for: the story of a single career woman in hers getting addicted to a relationship +2026-01-07 00:28:35,511 - INFO - Updating metadata for: the_twins_next_door_were_former_super_sentai +2026-01-07 00:28:35,511 - INFO - Searching metadata for: the twins next door were former super sentai +2026-01-07 00:28:35,570 - INFO - Searching MangaUpdates for: moms body is mine mother and son incest sex behind dads back +2026-01-07 00:28:35,719 - INFO - Fetching metadata from: https://nhentai.net/g/589945/ +2026-01-07 00:28:35,989 - INFO - Updating metadata for: nureane_batsuichi_no_ane_to_sex_o_shita_natsu_no_yoru +2026-01-07 00:28:35,990 - INFO - Searching metadata for: nureane batsuichi no ane to sex o shita natsu no yoru +2026-01-07 00:28:36,016 - INFO - Updating metadata for: [Kouda Tomohiro] Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-07 00:28:36,016 - INFO - Searching metadata for: Kouda Tomohiro Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-07 00:28:36,055 - INFO - Updating metadata for: dysfunctional_family +2026-01-07 00:28:36,055 - INFO - Searching metadata for: dysfunctional family +2026-01-07 00:28:36,177 - INFO - Fetching metadata from: https://nhentai.net/g/604149/ +2026-01-07 00:28:36,190 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-07 00:28:36,311 - INFO - Fetching metadata from: https://nhentai.net/g/413708/ +2026-01-07 00:28:36,353 - INFO - Updating metadata for: [Hikagemon (Tenpiboshi)] Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-07 00:28:36,353 - INFO - Searching metadata for: Hikagemon (Tenpiboshi) Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-07 00:28:36,439 - INFO - Updating metadata for: pldk +2026-01-07 00:28:36,439 - INFO - Searching metadata for: pldk +2026-01-07 00:28:36,583 - INFO - Searching MangaUpdates for: pldk +2026-01-07 00:28:36,597 - INFO - Fetching metadata from: https://nhentai.net/g/593437/ +2026-01-07 00:28:36,603 - INFO - Updating metadata for: [Juna Juna Juice] Supergirl From The JJJ Universe (The Flash) [English] +2026-01-07 00:28:36,603 - INFO - Searching metadata for: Juna Juna Juice Supergirl From The JJJ Universe (The Flash) [English] +2026-01-07 00:28:36,797 - INFO - Fetching metadata from: https://nhentai.net/g/462209/ +2026-01-07 00:28:36,803 - INFO - Updating metadata for: a_sticky_harem_full_of_mother_and_sisters_milk +2026-01-07 00:28:36,803 - INFO - Searching metadata for: a sticky harem full of mother and sisters milk +2026-01-07 00:28:36,805 - INFO - Updating metadata for: rural_stories +2026-01-07 00:28:36,805 - INFO - Searching metadata for: rural stories +2026-01-07 00:28:36,999 - INFO - Fetching metadata from: https://nhentai.net/g/565283/ +2026-01-07 00:28:37,004 - INFO - Updating metadata for: shes_always_obstinate +2026-01-07 00:28:37,005 - INFO - Searching metadata for: shes always obstinate +2026-01-07 00:28:37,045 - INFO - Searching MangaUpdates for: a sticky harem full of mother and sisters milk +2026-01-07 00:28:37,208 - INFO - Searching MangaUpdates for: shes always obstinate +2026-01-07 00:28:37,214 - INFO - Updating metadata for: [Sunagawa Tara] Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-07 00:28:37,216 - INFO - Searching metadata for: Sunagawa Tara Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-07 00:28:37,600 - INFO - Updating metadata for: mikamikuns_incestuous_situation +2026-01-07 00:28:37,600 - INFO - Searching metadata for: mikamikuns incestuous situation +2026-01-07 00:28:37,695 - INFO - Updating metadata for: [Kazuhiro] InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 00:28:37,695 - INFO - Searching metadata for: Kazuhiro InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 00:28:37,743 - INFO - Searching MangaUpdates for: mikamikuns incestuous situation +2026-01-07 00:28:37,778 - INFO - Fetching metadata from: https://nhentai.net/g/601543/ +2026-01-07 00:28:37,991 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-07 00:28:37,991 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-07 00:28:38,050 - INFO - Searching metadata for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 00:28:38,072 - INFO - Searching MangaUpdates for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 00:28:38,238 - INFO - Updating metadata for: [Yue] Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-07 00:28:38,239 - INFO - Searching metadata for: Yue Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-07 00:28:38,373 - INFO - Fetching metadata from: https://nhentai.net/g/573974/ +2026-01-07 00:28:38,457 - INFO - Fetching metadata from: https://nhentai.net/g/588579/ +2026-01-07 00:28:38,600 - INFO - Updating metadata for: my_daily_life_as_a_streamer +2026-01-07 00:28:38,601 - INFO - Searching metadata for: my daily life as a streamer +2026-01-07 00:28:38,689 - INFO - Updating metadata for: Jujutsu_Kaisen_dj_-_○○○_Shinai_to_Derarenai_Heya_√A_(2021) +2026-01-07 00:28:38,690 - INFO - Searching metadata for: Jujutsu Kaisen dj - ○○○ Shinai to Derarenai Heya √A +2026-01-07 00:28:38,690 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge +2026-01-07 00:28:38,693 - INFO - Searching metadata for: big boobs shadowy character takes revenge +2026-01-07 00:28:38,846 - INFO - Searching MangaUpdates for: Jujutsu Kaisen dj - ○○○ Shinai to Derarenai Heya √A +2026-01-07 00:28:38,920 - INFO - Fetching metadata from: https://nhentai.net/g/600439/ +2026-01-07 00:28:38,948 - INFO - Fetching metadata from: https://nhentai.net/g/550192/ +2026-01-07 00:28:38,978 - INFO - Searching MangaUpdates for: my daily life as a streamer +2026-01-07 00:28:39,184 - INFO - Updating metadata for: [Pentacle(Shimipan)] I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-07 00:28:39,184 - INFO - Searching metadata for: Pentacle(Shimipan) I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-07 00:28:39,193 - INFO - Updating metadata for: [Shiraishi Nagisa] Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-07 00:28:39,194 - INFO - Searching metadata for: Shiraishi Nagisa Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-07 00:28:39,322 - INFO - Updating metadata for: possessed_and_thrusting +2026-01-07 00:28:39,323 - INFO - Searching metadata for: possessed and thrusting +2026-01-07 00:28:39,369 - INFO - Fetching metadata from: https://nhentai.net/g/485428/ +2026-01-07 00:28:39,419 - INFO - Searching MangaUpdates for: possessed and thrusting +2026-01-07 00:28:39,628 - INFO - Fetching metadata from: https://nhentai.net/g/603112/ +2026-01-07 00:28:39,699 - INFO - Updating metadata for: mrs_miho_cant_stop_cheating_chapter +2026-01-07 00:28:39,699 - INFO - Searching metadata for: mrs miho cant stop cheating chapter +2026-01-07 00:28:39,983 - INFO - Searching MangaUpdates for: mrs miho cant stop cheating chapter +2026-01-07 00:28:40,252 - INFO - Updating metadata for: [Juna Juna Juice] Starting tonight Baby bear will become [English] +2026-01-07 00:28:40,252 - INFO - Searching metadata for: Juna Juna Juice Starting tonight Baby bear will become [English] +2026-01-07 00:28:40,258 - INFO - Updating metadata for: my_big_little_sister +2026-01-07 00:28:40,258 - INFO - Searching metadata for: my big little sister +2026-01-07 00:28:40,261 - INFO - Updating metadata for: a_story_about_an_oneesan_being_impregnated_by_an_incubus +2026-01-07 00:28:40,261 - INFO - Searching metadata for: a story about an oneesan being impregnated by an incubus +2026-01-07 00:28:40,417 - INFO - Fetching metadata from: https://nhentai.net/g/594307/ +2026-01-07 00:28:40,528 - INFO - Searching MangaUpdates for: a story about an oneesan being impregnated by an incubus +2026-01-07 00:28:40,564 - INFO - Fetching metadata from: https://nhentai.net/g/619667/ +2026-01-07 00:28:40,653 - INFO - Updating metadata for: 20_years_from_now_you_make_me_a_little_nervous_chapter_1 +2026-01-07 00:28:40,653 - INFO - Searching metadata for: 20 years from now you make me a little nervous chapter 1 +2026-01-07 00:28:40,848 - INFO - Updating metadata for: [Zandoro] A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-07 00:28:40,849 - INFO - Searching metadata for: Zandoro A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-07 00:28:40,942 - INFO - Searching MangaUpdates for: 20 years from now you make me a little nervous chapter 1 +2026-01-07 00:28:41,040 - INFO - Updating metadata for: wrung_dry_by_my_sister_every_night_under_the_sheets +2026-01-07 00:28:41,040 - INFO - Searching metadata for: wrung dry by my sister every night under the sheets +2026-01-07 00:28:41,197 - INFO - Fetching metadata from: https://nhentai.net/g/582285/ +2026-01-07 00:28:41,253 - INFO - Fetching metadata from: https://nhentai.net/g/548542/ +2026-01-07 00:28:41,578 - INFO - Updating metadata for: neteiru_okaasan_o_yaritai_houdai +2026-01-07 00:28:41,579 - INFO - Searching metadata for: neteiru okaasan o yaritai houdai +2026-01-07 00:28:41,580 - INFO - Updating metadata for: awakening_of_the_female_instinct +2026-01-07 00:28:41,581 - INFO - Searching metadata for: awakening of the female instinct +2026-01-07 00:28:41,587 - INFO - Updating metadata for: [Yue] Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-07 00:28:41,587 - INFO - Searching metadata for: Yue Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-07 00:28:41,753 - INFO - Searching MangaUpdates for: neteiru okaasan o yaritai houdai +2026-01-07 00:28:41,785 - INFO - Fetching metadata from: https://nhentai.net/g/592099/ +2026-01-07 00:28:41,869 - INFO - Fetching metadata from: https://nhentai.net/g/580266/ +2026-01-07 00:28:42,223 - INFO - Updating metadata for: Hitozuma,_Uwaki,_Danchi_Nite._-37-Sai_Miho-_(2025) +2026-01-07 00:28:42,223 - INFO - Searching metadata for: Hitozuma, Uwaki, Danchi Nite. -37-Sai Miho- +2026-01-07 00:28:42,229 - INFO - Updating metadata for: a_country_mother_who_makes_her_son_horny +2026-01-07 00:28:42,230 - INFO - Searching metadata for: a country mother who makes her son horny +2026-01-07 00:28:42,294 - INFO - Updating metadata for: [Mizu] Jumble Family [English] (Decensored) +2026-01-07 00:28:42,294 - INFO - Searching metadata for: Mizu Jumble Family [English] (Decensored) +2026-01-07 00:28:42,504 - INFO - Fetching metadata from: https://nhentai.net/g/259903/ +2026-01-07 00:28:42,513 - INFO - Searching MangaUpdates for: Hitozuma, Uwaki, Danchi Nite. -37-Sai Miho- +2026-01-07 00:28:42,567 - INFO - Fetching metadata from: https://nhentai.net/g/558745/ +2026-01-07 00:28:42,711 - INFO - Updating metadata for: Ebony Family mating practices (english) +2026-01-07 00:28:42,712 - INFO - Searching metadata for: Ebony Family mating practices (english) +2026-01-07 00:28:42,893 - INFO - Fetching metadata from: https://nhentai.net/g/600824/ +2026-01-07 00:28:42,961 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-07 00:28:42,961 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-07 00:28:42,966 - INFO - Updating metadata for: sister_complex +2026-01-07 00:28:42,967 - INFO - Searching metadata for: sister complex +2026-01-07 00:28:43,122 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:28:43,122 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:28:43,215 - INFO - Fetching metadata from: https://nhentai.net/g/600775/ +2026-01-07 00:28:43,262 - INFO - Fetching metadata from: https://nhentai.net/g/339531/ +2026-01-07 00:28:43,341 - INFO - Fetching metadata from: https://nhentai.net/g/537310/ +2026-01-07 00:28:43,591 - INFO - Updating metadata for: Furachina_Jukujo_(2021) +2026-01-07 00:28:43,591 - INFO - Searching metadata for: Furachina Jukujo +2026-01-07 00:28:43,594 - INFO - Updating metadata for: friendly_brother_and_sister +2026-01-07 00:28:43,594 - INFO - Searching metadata for: friendly brother and sister +2026-01-07 00:28:43,594 - INFO - Updating metadata for: nao_hanpatsu_zokusei +2026-01-07 00:28:43,595 - INFO - Searching metadata for: nao hanpatsu zokusei +2026-01-07 00:28:43,730 - INFO - Searching MangaUpdates for: Furachina Jukujo +2026-01-07 00:28:43,831 - INFO - Fetching metadata from: https://nhentai.net/g/531957/ +2026-01-07 00:28:43,855 - INFO - Searching MangaUpdates for: nao hanpatsu zokusei +2026-01-07 00:28:44,110 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 00:28:44,111 - INFO - Searching metadata for: Manbou Shoten Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 00:28:44,297 - INFO - Updating metadata for: [NCP (big g)] A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-07 00:28:44,297 - INFO - Searching metadata for: NCP (big g) A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-07 00:28:44,329 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-07 00:28:44,335 - INFO - Updating metadata for: Kosmos ga Saita Hi ni Ch +2026-01-07 00:28:44,335 - INFO - Searching metadata for: Kosmos ga Saita Hi ni Ch +2026-01-07 00:28:44,606 - INFO - Fetching metadata from: https://nhentai.net/g/603988/ +2026-01-07 00:28:44,715 - INFO - Fetching metadata from: https://nhentai.net/g/514753/ +2026-01-07 00:28:44,725 - INFO - Updating metadata for: Family_Plan_(2024) +2026-01-07 00:28:44,725 - INFO - Searching metadata for: Family Plan +2026-01-07 00:28:44,867 - INFO - Updating metadata for: [Airandou] Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-07 00:28:44,867 - INFO - Searching metadata for: Airandou Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-07 00:28:45,014 - INFO - Fetching metadata from: https://nhentai.net/g/602426/ +2026-01-07 00:28:45,023 - INFO - Updating metadata for: masochist_little_brothers_training +2026-01-07 00:28:45,023 - INFO - Searching metadata for: masochist little brothers training +2026-01-07 00:28:45,064 - INFO - Fetching metadata from: https://nhentai.net/g/590457/ +2026-01-07 00:28:45,282 - INFO - Searching MangaUpdates for: masochist little brothers training +2026-01-07 00:28:45,370 - INFO - Updating metadata for: you_must_breed_your_sister_to_leave_this_island +2026-01-07 00:28:45,370 - INFO - Searching metadata for: you must breed your sister to leave this island +2026-01-07 00:28:45,377 - INFO - Updating metadata for: oni_no_musume_datte_konkatsu_shitai +2026-01-07 00:28:45,378 - INFO - Searching metadata for: oni no musume datte konkatsu shitai +2026-01-07 00:28:45,538 - INFO - Updating metadata for: SISUANA - sister hole +2026-01-07 00:28:45,539 - INFO - Searching metadata for: SISUANA - sister hole +2026-01-07 00:28:45,625 - INFO - Fetching metadata from: https://nhentai.net/g/342762/ +2026-01-07 00:28:45,662 - INFO - Fetching metadata from: https://nhentai.net/g/617218/ +2026-01-07 00:28:45,803 - INFO - Fetching metadata from: https://nhentai.net/g/521114/ +2026-01-07 00:28:45,967 - INFO - Updating metadata for: answer_checking +2026-01-07 00:28:45,967 - INFO - Searching metadata for: answer checking +2026-01-07 00:28:45,974 - INFO - Updating metadata for: fence14 +2026-01-07 00:28:45,974 - INFO - Searching metadata for: fence14 +2026-01-07 00:28:46,094 - INFO - Updating metadata for: my_neet_older_sister +2026-01-07 00:28:46,095 - INFO - Searching metadata for: my neet older sister +2026-01-07 00:28:46,126 - INFO - Fetching metadata from: https://nhentai.net/g/535244/ +2026-01-07 00:28:46,235 - INFO - Fetching metadata from: https://nhentai.net/g/619305/ +2026-01-07 00:28:46,339 - INFO - Fetching metadata from: https://nhentai.net/g/541946/ +2026-01-07 00:28:46,366 - INFO - Updating metadata for: big_sis_masturbation_life_my_masturbation_right_belongs_to_my_older_step_sisters +2026-01-07 00:28:46,366 - INFO - Searching metadata for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-07 00:28:46,418 - INFO - Updating metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ _ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-07 00:28:46,419 - INFO - Searching metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-07 00:28:46,614 - INFO - Searching MangaUpdates for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-07 00:28:46,693 - INFO - Updating metadata for: narmaya_attack +2026-01-07 00:28:46,694 - INFO - Searching metadata for: narmaya attack +2026-01-07 00:28:46,741 - INFO - Fetching metadata from: https://nhentai.net/g/400327/ +2026-01-07 00:28:46,931 - INFO - Fetching metadata from: https://nhentai.net/g/322620/ +2026-01-07 00:28:47,040 - INFO - Updating metadata for: elder_sis_cosplay +2026-01-07 00:28:47,040 - INFO - Searching metadata for: elder sis cosplay +2026-01-07 00:28:47,050 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 00:28:47,050 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 00:28:47,240 - INFO - Fetching metadata from: https://nhentai.net/g/147261/ +2026-01-07 00:28:47,250 - INFO - Updating metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-07 00:28:47,250 - INFO - Searching metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-07 00:28:47,275 - INFO - Searching MangaUpdates for: elder sis cosplay +2026-01-07 00:28:47,288 - INFO - Searching MangaUpdates for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-07 00:28:47,527 - INFO - Searching metadata for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 00:28:47,571 - INFO - Updating metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-07 00:28:47,571 - INFO - Searching metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-07 00:28:47,590 - INFO - Updating metadata for: the_country_little_sister_and_the_tempation_of_innocence +2026-01-07 00:28:47,590 - INFO - Searching metadata for: the country little sister and the tempation of innocence +2026-01-07 00:28:47,811 - INFO - Searching MangaUpdates for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 00:28:47,825 - INFO - Searching MangaUpdates for: the country little sister and the tempation of innocence +2026-01-07 00:28:48,137 - INFO - Searching MangaUpdates for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-07 00:28:48,890 - INFO - Updating metadata for: blood_lunch +2026-01-07 00:28:48,891 - INFO - Searching metadata for: blood lunch +2026-01-07 00:28:49,068 - INFO - Fetching metadata from: https://nhentai.net/g/578369/ +2026-01-07 00:28:49,254 - INFO - Updating metadata for: toppatsusei_bokki_shoukougun_jii_fuzen_o_soete +2026-01-07 00:28:49,254 - INFO - Searching metadata for: toppatsusei bokki shoukougun jii fuzen o soete +2026-01-07 00:28:49,266 - INFO - Updating metadata for: maiyasans_money_issues +2026-01-07 00:28:49,266 - INFO - Searching metadata for: maiyasans money issues +2026-01-07 00:28:49,300 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:28:49,300 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:28:49,465 - INFO - Fetching metadata from: https://nhentai.net/g/425210/ +2026-01-07 00:28:49,466 - INFO - Searching MangaUpdates for: maiyasans money issues +2026-01-07 00:28:49,646 - INFO - Fetching metadata from: https://nhentai.net/g/492943/ +2026-01-07 00:28:49,820 - INFO - Updating metadata for: mama_cos +2026-01-07 00:28:49,820 - INFO - Searching metadata for: mama cos +2026-01-07 00:28:49,824 - INFO - Updating metadata for: maid_slave_collection +2026-01-07 00:28:49,825 - INFO - Searching metadata for: maid slave collection +2026-01-07 00:28:49,827 - INFO - Updating metadata for: Between Heave and Hell +2026-01-07 00:28:49,827 - INFO - Searching metadata for: Between Heave and Hell +2026-01-07 00:28:49,991 - INFO - Fetching metadata from: https://nhentai.net/g/601115/ +2026-01-07 00:28:50,020 - INFO - Fetching metadata from: https://nhentai.net/g/125398/ +2026-01-07 00:28:50,134 - INFO - Fetching metadata from: https://nhentai.net/g/618775/ +2026-01-07 00:28:50,594 - INFO - Updating metadata for: is_my_sister_seriously_ill +2026-01-07 00:28:50,600 - INFO - Searching metadata for: is my sister seriously ill +2026-01-07 00:28:50,636 - INFO - Updating metadata for: [Shirono Mahiro] Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-07 00:28:50,637 - INFO - Searching metadata for: Shirono Mahiro Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-07 00:28:50,642 - INFO - Updating metadata for: lemon_honeymoon +2026-01-07 00:28:50,642 - INFO - Searching metadata for: lemon honeymoon +2026-01-07 00:28:50,801 - INFO - Fetching metadata from: https://nhentai.net/g/524298/ +2026-01-07 00:28:50,832 - INFO - Fetching metadata from: https://nhentai.net/g/600832/ +2026-01-07 00:28:51,088 - INFO - Fetching metadata from: https://nhentai.net/g/332054/ +2026-01-07 00:28:51,140 - INFO - Updating metadata for: shall_i_get_it_out_for_you_mom +2026-01-07 00:28:51,141 - INFO - Searching metadata for: shall i get it out for you mom +2026-01-07 00:28:51,148 - INFO - Updating metadata for: mucchiri_megaton +2026-01-07 00:28:51,148 - INFO - Searching metadata for: mucchiri megaton +2026-01-07 00:28:51,328 - INFO - Fetching metadata from: https://nhentai.net/g/495948/ +2026-01-07 00:28:51,374 - INFO - Updating metadata for: im_being_sex_educated_by_my_overprotective_mother_chapter +2026-01-07 00:28:51,375 - INFO - Searching metadata for: im being sex educated by my overprotective mother chapter +2026-01-07 00:28:51,429 - INFO - Fetching metadata from: https://nhentai.net/g/537397/ +2026-01-07 00:28:51,675 - INFO - Searching MangaUpdates for: im being sex educated by my overprotective mother chapter +2026-01-07 00:28:51,864 - INFO - Updating metadata for: [Kikunosukemaru] Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-07 00:28:51,864 - INFO - Searching metadata for: Kikunosukemaru Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-07 00:28:51,865 - INFO - Updating metadata for: family_plan_toono_suika_chapter +2026-01-07 00:28:51,868 - INFO - Searching metadata for: family plan toono suika chapter +2026-01-07 00:28:52,028 - INFO - Searching MangaUpdates for: family plan toono suika chapter +2026-01-07 00:28:52,130 - INFO - Fetching metadata from: https://nhentai.net/g/166499/ +2026-01-07 00:28:52,148 - INFO - Updating metadata for: imouto_ookiindamon_chapter +2026-01-07 00:28:52,148 - INFO - Searching metadata for: imouto ookiindamon chapter +2026-01-07 00:28:52,364 - INFO - Searching MangaUpdates for: imouto ookiindamon chapter +2026-01-07 00:28:52,406 - INFO - Updating metadata for: temptation_of_big_tits_elder_sister +2026-01-07 00:28:52,406 - INFO - Searching metadata for: temptation of big tits elder sister +2026-01-07 00:28:52,411 - INFO - Updating metadata for: the_sex_life_of_the_tachibanas +2026-01-07 00:28:52,412 - INFO - Searching metadata for: the sex life of the tachibanas +2026-01-07 00:28:52,572 - INFO - Fetching metadata from: https://nhentai.net/g/512343/ +2026-01-07 00:28:52,625 - INFO - Searching MangaUpdates for: the sex life of the tachibanas +2026-01-07 00:28:52,647 - INFO - Updating metadata for: my_dear_sister_is_mine +2026-01-07 00:28:52,648 - INFO - Searching metadata for: my dear sister is mine +2026-01-07 00:28:52,744 - INFO - Updating metadata for: musuko_no_tomodachi_incubus_ni_miryou_sareta_yanmama_wa_mesu_ni_naru +2026-01-07 00:28:52,744 - INFO - Searching metadata for: musuko no tomodachi incubus ni miryou sareta yanmama wa mesu ni naru +2026-01-07 00:28:52,944 - INFO - Fetching metadata from: https://nhentai.net/g/567113/ +2026-01-07 00:28:53,000 - INFO - Updating metadata for: jitsu_wa_midara_na_chounyuu_sensei_chapter +2026-01-07 00:28:53,000 - INFO - Searching metadata for: jitsu wa midara na chounyuu sensei chapter +2026-01-07 00:28:53,051 - INFO - Fetching metadata from: https://nhentai.net/g/521491/ +2026-01-07 00:28:53,279 - INFO - Searching MangaUpdates for: jitsu wa midara na chounyuu sensei chapter +2026-01-07 00:28:53,330 - INFO - Updating metadata for: [Qdou Kei] Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-07 00:28:53,330 - INFO - Searching metadata for: Qdou Kei Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-07 00:28:53,373 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 00:28:53,374 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 00:28:53,556 - INFO - Updating metadata for: [K8ON] Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 00:28:53,556 - INFO - Searching metadata for: K8ON Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 00:28:53,632 - INFO - Searching metadata for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 00:28:53,648 - INFO - Fetching metadata from: https://nhentai.net/g/246334/ +2026-01-07 00:28:53,861 - INFO - Searching MangaUpdates for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 00:28:53,866 - INFO - Updating metadata for: [nounanka (Abubu)] Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-07 00:28:53,866 - INFO - Searching metadata for: nounanka (Abubu) Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-07 00:28:53,903 - INFO - Searching metadata for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 00:28:54,075 - INFO - Searching MangaUpdates for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 00:28:54,279 - INFO - Fetching metadata from: https://nhentai.net/g/601119/ +2026-01-07 00:28:54,435 - INFO - Updating metadata for: jukujo_sentai_paiters_chapter +2026-01-07 00:28:54,435 - INFO - Searching metadata for: jukujo sentai paiters chapter +2026-01-07 00:28:54,549 - INFO - Updating metadata for: story_about_how_i_fucked_cucked_and_brought_to_bliss_some_languid_wives +2026-01-07 00:28:54,550 - INFO - Searching metadata for: story about how i fucked cucked and brought to bliss some languid wives +2026-01-07 00:28:54,578 - INFO - Searching MangaUpdates for: jukujo sentai paiters chapter +2026-01-07 00:28:54,819 - INFO - Fetching metadata from: https://nhentai.net/g/578155/ +2026-01-07 00:28:54,889 - INFO - Updating metadata for: gumi_chocolate_pine_koma_mangashuu +2026-01-07 00:28:54,889 - INFO - Searching metadata for: gumi chocolate pine koma mangashuu +2026-01-07 00:28:54,956 - INFO - Updating metadata for: ane_to_kanojo_to_hamedori_3p_shitemita +2026-01-07 00:28:54,956 - INFO - Searching metadata for: ane to kanojo to hamedori 3p shitemita +2026-01-07 00:28:55,089 - INFO - Fetching metadata from: https://nhentai.net/g/541484/ +2026-01-07 00:28:55,097 - INFO - Updating metadata for: [Shiki] Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 00:28:55,097 - INFO - Searching metadata for: Shiki Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 00:28:55,164 - INFO - Searching MangaUpdates for: ane to kanojo to hamedori 3p shitemita +2026-01-07 00:28:55,309 - INFO - Updating metadata for: temptation_downtime +2026-01-07 00:28:55,309 - INFO - Searching metadata for: temptation downtime +2026-01-07 00:28:55,440 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 00:28:55,451 - INFO - Fetching metadata from: https://nhentai.net/g/238204/ +2026-01-07 00:28:55,667 - INFO - Updating metadata for: welcome_to_greenwood +2026-01-07 00:28:55,667 - INFO - Searching metadata for: welcome to greenwood +2026-01-07 00:28:55,810 - INFO - Updating metadata for: ogre_girl_tades_favorite_things +2026-01-07 00:28:55,811 - INFO - Searching metadata for: ogre girl tades favorite things +2026-01-07 00:28:55,870 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 00:28:55,893 - INFO - Fetching metadata from: https://nhentai.net/g/55621/ +2026-01-07 00:28:55,956 - INFO - Searching MangaUpdates for: ogre girl tades favorite things +2026-01-07 00:28:56,085 - INFO - Updating metadata for: passionate_coriander +2026-01-07 00:28:56,085 - INFO - Searching metadata for: passionate coriander +2026-01-07 00:28:56,238 - INFO - Fetching metadata from: https://nhentai.net/g/504728/ +2026-01-07 00:28:56,486 - INFO - Updating metadata for: [Izayoi no Kiki] Incest Room [English] [Tigoris Translates] +2026-01-07 00:28:56,486 - INFO - Searching metadata for: Izayoi no Kiki Incest Room [English] [Tigoris Translates] +2026-01-07 00:28:56,492 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-07 00:28:56,492 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-07 00:28:56,518 - INFO - Updating metadata for: uchi_ni_kaettara_mama_ga_zenra_de_hatsujou_shiteta_ken +2026-01-07 00:28:56,519 - INFO - Searching metadata for: uchi ni kaettara mama ga zenra de hatsujou shiteta ken +2026-01-07 00:28:56,687 - INFO - Fetching metadata from: https://nhentai.net/g/615902/ +2026-01-07 00:28:56,815 - INFO - Fetching metadata from: https://nhentai.net/g/329704/ +2026-01-07 00:28:56,840 - INFO - Fetching metadata from: https://nhentai.net/g/497921/ +2026-01-07 00:28:57,276 - INFO - Updating metadata for: trap_shiki_hunting +2026-01-07 00:28:57,277 - INFO - Searching metadata for: trap shiki hunting +2026-01-07 00:28:57,288 - INFO - Updating metadata for: [Teoi] Youmu-chan hypnosis sex +2026-01-07 00:28:57,289 - INFO - Updating metadata for: big_sister_with_drooping_tits_wants_to_fuck_her_little_brother +2026-01-07 00:28:57,289 - INFO - Searching metadata for: Teoi Youmu-chan hypnosis sex +2026-01-07 00:28:57,290 - INFO - Searching metadata for: big sister with drooping tits wants to fuck her little brother +2026-01-07 00:28:57,426 - INFO - Searching MangaUpdates for: trap shiki hunting +2026-01-07 00:28:57,457 - INFO - Searching metadata for: Youmu-chan hypnosis sex +2026-01-07 00:28:57,479 - INFO - Fetching metadata from: https://nhentai.net/g/502879/ +2026-01-07 00:28:57,700 - INFO - Searching MangaUpdates for: Youmu-chan hypnosis sex +2026-01-07 00:28:57,754 - INFO - Updating metadata for: sister_control +2026-01-07 00:28:57,755 - INFO - Searching metadata for: sister control +2026-01-07 00:28:57,856 - INFO - Updating metadata for: hetappi_whiteday +2026-01-07 00:28:57,856 - INFO - Searching metadata for: hetappi whiteday +2026-01-07 00:28:57,998 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-07 00:28:58,024 - INFO - Searching MangaUpdates for: hetappi whiteday +2026-01-07 00:28:58,039 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 00:28:58,040 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 00:28:58,254 - INFO - Updating metadata for: a_book_about_using_hypno_to_fuck_my_little_sister +2026-01-07 00:28:58,254 - INFO - Searching metadata for: a book about using hypno to fuck my little sister +2026-01-07 00:28:58,362 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 00:28:58,450 - INFO - Updating metadata for: family_control +2026-01-07 00:28:58,451 - INFO - Searching metadata for: family control +2026-01-07 00:28:58,561 - INFO - Fetching metadata from: https://nhentai.net/g/545892/ +2026-01-07 00:28:58,581 - INFO - Searching MangaUpdates for: a book about using hypno to fuck my little sister +2026-01-07 00:28:58,636 - INFO - Fetching metadata from: https://nhentai.net/g/619340/ +2026-01-07 00:28:58,679 - INFO - Searching MangaUpdates for: family control +2026-01-07 00:28:58,686 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 00:28:59,196 - INFO - Updating metadata for: a_story_of_my_oneesan_who_loves_me_too_much +2026-01-07 00:28:59,197 - INFO - Searching metadata for: a story of my oneesan who loves me too much +2026-01-07 00:28:59,200 - INFO - Updating metadata for: moms_body_is_mine_mother_and_son_incest_sex_behind_dads_back +2026-01-07 00:28:59,201 - INFO - Searching metadata for: moms body is mine mother and son incest sex behind dads back +2026-01-07 00:28:59,266 - INFO - Updating metadata for: similar_siblings +2026-01-07 00:28:59,267 - INFO - Searching metadata for: similar siblings +2026-01-07 00:28:59,436 - INFO - Searching MangaUpdates for: similar siblings +2026-01-07 00:28:59,515 - INFO - Searching MangaUpdates for: moms body is mine mother and son incest sex behind dads back +2026-01-07 00:28:59,533 - INFO - Searching MangaUpdates for: a story of my oneesan who loves me too much +2026-01-07 00:28:59,721 - INFO - Updating metadata for: kiyoshiros_last_hours +2026-01-07 00:28:59,722 - INFO - Searching metadata for: kiyoshiros last hours +2026-01-07 00:28:59,895 - INFO - Searching MangaUpdates for: kiyoshiros last hours +2026-01-07 00:29:00,099 - INFO - Updating metadata for: dysfunctional_family +2026-01-07 00:29:00,100 - INFO - Searching metadata for: dysfunctional family +2026-01-07 00:29:00,142 - INFO - Updating metadata for: otaku_ni_rikai_aru_gal_yome_ga_otashop +2026-01-07 00:29:00,143 - INFO - Searching metadata for: otaku ni rikai aru gal yome ga otashop +2026-01-07 00:29:00,295 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-07 00:29:00,302 - INFO - Updating metadata for: anemone_yuusuke_chapter_1x +2026-01-07 00:29:00,302 - INFO - Searching metadata for: anemone yuusuke chapter 1x +2026-01-07 00:29:00,401 - INFO - Searching MangaUpdates for: otaku ni rikai aru gal yome ga otashop +2026-01-07 00:29:00,572 - INFO - Searching MangaUpdates for: anemone yuusuke chapter 1x +2026-01-07 00:29:00,659 - INFO - Updating metadata for: pldk +2026-01-07 00:29:00,659 - INFO - Searching metadata for: pldk +2026-01-07 00:29:00,822 - INFO - Searching MangaUpdates for: pldk +2026-01-07 00:29:00,842 - INFO - Updating metadata for: [CHOMA] Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-07 00:29:00,842 - INFO - Searching metadata for: CHOMA Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-07 00:29:00,928 - INFO - Updating metadata for: [Shirono Mahiro] Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-07 00:29:00,928 - INFO - Searching metadata for: Shirono Mahiro Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-07 00:29:00,996 - INFO - Updating metadata for: a_sticky_harem_full_of_mother_and_sisters_milk +2026-01-07 00:29:00,996 - INFO - Searching metadata for: a sticky harem full of mother and sisters milk +2026-01-07 00:29:01,091 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-07 00:29:01,227 - INFO - Fetching metadata from: https://nhentai.net/g/254693/ +2026-01-07 00:29:01,317 - INFO - Searching MangaUpdates for: a sticky harem full of mother and sisters milk +2026-01-07 00:29:01,404 - INFO - Updating metadata for: muchi_niku_jokyoushi_tomomi_mama +2026-01-07 00:29:01,404 - INFO - Searching metadata for: muchi niku jokyoushi tomomi mama +2026-01-07 00:29:01,598 - INFO - Searching MangaUpdates for: muchi niku jokyoushi tomomi mama +2026-01-07 00:29:01,603 - INFO - Updating metadata for: [Itaba Hiroshi] Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-07 00:29:01,604 - INFO - Searching metadata for: Itaba Hiroshi Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-07 00:29:01,670 - INFO - Updating metadata for: [Kazuhiro] InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 00:29:01,670 - INFO - Searching metadata for: Kazuhiro InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 00:29:01,797 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-07 00:29:01,864 - INFO - Updating metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru _ Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-07 00:29:01,864 - INFO - Searching metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-07 00:29:01,999 - INFO - Searching metadata for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 00:29:02,124 - INFO - Updating metadata for: [Shirono Mahiro] Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 00:29:02,124 - INFO - Searching metadata for: Shirono Mahiro Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 00:29:02,214 - INFO - Fetching metadata from: https://nhentai.net/g/483349/ +2026-01-07 00:29:02,367 - INFO - Searching MangaUpdates for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 00:29:02,368 - INFO - Searching metadata for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 00:29:02,436 - INFO - Updating metadata for: michelle_to_icha_love +2026-01-07 00:29:02,436 - INFO - Searching metadata for: michelle to icha love +2026-01-07 00:29:02,589 - INFO - Searching MangaUpdates for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 00:29:02,723 - INFO - Fetching metadata from: https://nhentai.net/g/597558/ +2026-01-07 00:29:03,009 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge +2026-01-07 00:29:03,009 - INFO - Searching metadata for: big boobs shadowy character takes revenge +2026-01-07 00:29:03,011 - INFO - Updating metadata for: toshi_densetsu_bitch_joshikai +2026-01-07 00:29:03,012 - INFO - Searching metadata for: toshi densetsu bitch joshikai +2026-01-07 00:29:03,121 - INFO - Updating metadata for: twentyfour_seven_sex_with_my_stepsister +2026-01-07 00:29:03,122 - INFO - Searching metadata for: twentyfour seven sex with my stepsister +2026-01-07 00:29:03,202 - INFO - Fetching metadata from: https://nhentai.net/g/600439/ +2026-01-07 00:29:03,231 - INFO - Fetching metadata from: https://nhentai.net/g/558829/ +2026-01-07 00:29:03,311 - INFO - Searching MangaUpdates for: twentyfour seven sex with my stepsister +2026-01-07 00:29:03,657 - INFO - Updating metadata for: [Shiraishi Nagisa] Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-07 00:29:03,658 - INFO - Searching metadata for: Shiraishi Nagisa Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-07 00:29:03,667 - INFO - Updating metadata for: summer_stay_in +2026-01-07 00:29:03,668 - INFO - Searching metadata for: summer stay in +2026-01-07 00:29:03,668 - INFO - Updating metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-07 00:29:03,670 - INFO - Searching metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-07 00:29:03,853 - INFO - Fetching metadata from: https://nhentai.net/g/485428/ +2026-01-07 00:29:03,939 - INFO - Fetching metadata from: https://nhentai.net/g/549172/ +2026-01-07 00:29:04,082 - INFO - Updating metadata for: [Juna Juna Juice] Starting tonight Baby bear will become [English] +2026-01-07 00:29:04,082 - INFO - Searching metadata for: Juna Juna Juice Starting tonight Baby bear will become [English] +2026-01-07 00:29:04,135 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-07 00:29:04,208 - INFO - Updating metadata for: the_romantic_ritual_with_fox_goddess_yuukosan_chapter +2026-01-07 00:29:04,208 - INFO - Searching metadata for: the romantic ritual with fox goddess yuukosan chapter +2026-01-07 00:29:04,554 - INFO - Searching MangaUpdates for: the romantic ritual with fox goddess yuukosan chapter +2026-01-07 00:29:04,647 - INFO - Fetching metadata from: https://nhentai.net/g/594307/ +2026-01-07 00:29:04,949 - INFO - Updating metadata for: 20_years_from_now_you_make_me_a_little_nervous_chapter_1 +2026-01-07 00:29:04,949 - INFO - Searching metadata for: 20 years from now you make me a little nervous chapter 1 +2026-01-07 00:29:04,952 - INFO - Updating metadata for: after_a_mouth +2026-01-07 00:29:04,952 - INFO - Searching metadata for: after a mouth +2026-01-07 00:29:05,079 - INFO - Updating metadata for: ookii_gimai +2026-01-07 00:29:05,079 - INFO - Searching metadata for: ookii gimai +2026-01-07 00:29:05,234 - INFO - Fetching metadata from: https://nhentai.net/g/602572/ +2026-01-07 00:29:05,299 - INFO - Fetching metadata from: https://nhentai.net/g/555115/ +2026-01-07 00:29:05,320 - INFO - Searching MangaUpdates for: 20 years from now you make me a little nervous chapter 1 +2026-01-07 00:29:05,792 - INFO - Updating metadata for: sleepwalk_sex_with_your_crazy_stepbrother +2026-01-07 00:29:05,793 - INFO - Searching metadata for: sleepwalk sex with your crazy stepbrother +2026-01-07 00:29:05,797 - INFO - Updating metadata for: neteiru_okaasan_o_yaritai_houdai +2026-01-07 00:29:05,797 - INFO - Searching metadata for: neteiru okaasan o yaritai houdai +2026-01-07 00:29:05,799 - INFO - Updating metadata for: incestism +2026-01-07 00:29:05,799 - INFO - Searching metadata for: incestism +2026-01-07 00:29:05,819 - INFO - Searching MangaUpdates for: sleepwalk sex with your crazy stepbrother +2026-01-07 00:29:05,824 - INFO - Searching MangaUpdates for: neteiru okaasan o yaritai houdai +2026-01-07 00:29:05,826 - INFO - Searching MangaUpdates for: incestism +2026-01-07 00:29:06,031 - INFO - Updating metadata for: life_of_passionate_pleasures +2026-01-07 00:29:06,032 - INFO - Searching metadata for: life of passionate pleasures +2026-01-07 00:29:06,227 - INFO - Updating metadata for: [Shirono Mahiro] Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 00:29:06,228 - INFO - Searching metadata for: Shirono Mahiro Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 00:29:06,270 - INFO - Updating metadata for: [Mizu] Jumble Family [English] (Decensored) +2026-01-07 00:29:06,271 - INFO - Searching metadata for: Mizu Jumble Family [English] (Decensored) +2026-01-07 00:29:06,366 - INFO - Fetching metadata from: https://nhentai.net/g/530801/ +2026-01-07 00:29:06,371 - INFO - Searching metadata for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 00:29:06,389 - INFO - Searching metadata for: Jumble Family [English] (Decensored) +2026-01-07 00:29:06,399 - INFO - Searching MangaUpdates for: life of passionate pleasures +2026-01-07 00:29:06,645 - INFO - Searching MangaUpdates for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 00:29:06,689 - INFO - Fetching metadata from: https://nhentai.net/g/259903/ +2026-01-07 00:29:06,698 - INFO - Updating metadata for: carnal_siblings +2026-01-07 00:29:06,699 - INFO - Searching metadata for: carnal siblings +2026-01-07 00:29:06,716 - INFO - Searching MangaUpdates for: Jumble Family [English] (Decensored) +2026-01-07 00:29:06,803 - INFO - Searching MangaUpdates for: carnal siblings +2026-01-07 00:29:07,045 - INFO - Updating metadata for: selfish_boyfriend_and_the_gentle_girlfriend +2026-01-07 00:29:07,045 - INFO - Searching metadata for: selfish boyfriend and the gentle girlfriend +2026-01-07 00:29:07,075 - INFO - Updating metadata for: naughty_bunny_and_doctor +2026-01-07 00:29:07,076 - INFO - Searching metadata for: naughty bunny and doctor +2026-01-07 00:29:07,114 - INFO - Updating metadata for: Ebony Family mating practices (english) +2026-01-07 00:29:07,115 - INFO - Searching metadata for: Ebony Family mating practices (english) +2026-01-07 00:29:07,264 - INFO - Fetching metadata from: https://nhentai.net/g/257734/ +2026-01-07 00:29:07,366 - INFO - Fetching metadata from: https://nhentai.net/g/577393/ +2026-01-07 00:29:07,392 - INFO - Fetching metadata from: https://nhentai.net/g/600824/ +2026-01-07 00:29:07,501 - INFO - Updating metadata for: [NT Labo (NT Robo)] Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-07 00:29:07,501 - INFO - Searching metadata for: NT Labo (NT Robo) Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-07 00:29:07,638 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:29:07,638 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:29:07,641 - INFO - Updating metadata for: hiyake_rikujoubu_oneechan_ni_neteiru_toku_ni_itazura_suru_ecchi_manga +2026-01-07 00:29:07,642 - INFO - Searching metadata for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-07 00:29:07,739 - INFO - Fetching metadata from: https://nhentai.net/g/261648/ +2026-01-07 00:29:07,879 - INFO - Searching MangaUpdates for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-07 00:29:07,901 - INFO - Fetching metadata from: https://nhentai.net/g/537310/ +2026-01-07 00:29:07,957 - INFO - Updating metadata for: until_my_mother_in_law_is_pregnant +2026-01-07 00:29:07,957 - INFO - Searching metadata for: until my mother in law is pregnant +2026-01-07 00:29:08,122 - INFO - Updating metadata for: Furachina_Jukujo_(2021) +2026-01-07 00:29:08,122 - INFO - Searching metadata for: Furachina Jukujo +2026-01-07 00:29:08,189 - INFO - Fetching metadata from: https://nhentai.net/g/329242/ +2026-01-07 00:29:08,221 - INFO - Updating metadata for: reiwas_penis_growth_training_chapter_1 +2026-01-07 00:29:08,221 - INFO - Searching metadata for: reiwas penis growth training chapter 1 +2026-01-07 00:29:08,249 - INFO - Searching MangaUpdates for: Furachina Jukujo +2026-01-07 00:29:08,412 - INFO - Searching MangaUpdates for: reiwas penis growth training chapter 1 +2026-01-07 00:29:08,420 - INFO - Updating metadata for: grand_discovery_of_kink +2026-01-07 00:29:08,420 - INFO - Searching metadata for: grand discovery of kink +2026-01-07 00:29:08,423 - INFO - Updating metadata for: Kosmos ga Saita Hi ni Ch +2026-01-07 00:29:08,423 - INFO - Searching metadata for: Kosmos ga Saita Hi ni Ch +2026-01-07 00:29:08,554 - INFO - Searching MangaUpdates for: grand discovery of kink +2026-01-07 00:29:08,745 - INFO - Fetching metadata from: https://nhentai.net/g/603988/ +2026-01-07 00:29:08,764 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 00:29:08,765 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 00:29:08,879 - INFO - Updating metadata for: happy_life_amagami +2026-01-07 00:29:08,879 - INFO - Searching metadata for: happy life amagami +2026-01-07 00:29:08,992 - INFO - Updating metadata for: [Airandou] Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-07 00:29:08,993 - INFO - Searching metadata for: Airandou Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-07 00:29:09,032 - INFO - Searching MangaUpdates for: happy life amagami +2026-01-07 00:29:09,090 - INFO - Searching metadata for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 00:29:09,200 - INFO - Fetching metadata from: https://nhentai.net/g/590457/ +2026-01-07 00:29:09,266 - INFO - Updating metadata for: one_shot_a_summer +2026-01-07 00:29:09,266 - INFO - Searching metadata for: one shot a summer +2026-01-07 00:29:09,456 - INFO - Searching MangaUpdates for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 00:29:09,465 - INFO - Updating metadata for: oni_no_musume_datte_konkatsu_shitai +2026-01-07 00:29:09,465 - INFO - Searching metadata for: oni no musume datte konkatsu shitai +2026-01-07 00:29:09,534 - INFO - Fetching metadata from: https://nhentai.net/g/500042/ +2026-01-07 00:29:09,737 - INFO - Fetching metadata from: https://nhentai.net/g/342762/ +2026-01-07 00:29:09,762 - INFO - Updating metadata for: bath_time_with_big_sis +2026-01-07 00:29:09,762 - INFO - Searching metadata for: bath time with big sis +2026-01-07 00:29:09,962 - INFO - Fetching metadata from: https://nhentai.net/g/596905/ +2026-01-07 00:29:09,985 - INFO - Updating metadata for: answer_checking +2026-01-07 00:29:09,985 - INFO - Searching metadata for: answer checking +2026-01-07 00:29:10,192 - INFO - Fetching metadata from: https://nhentai.net/g/535244/ +2026-01-07 00:29:10,239 - INFO - Updating metadata for: ninshin_wa_kinshin_de_to_iu_hou_ga_dekita_node_haha_to_imouto_to_oba_mainichi_ore_no_chi_po_o_neratte_kuru +2026-01-07 00:29:10,240 - INFO - Searching metadata for: ninshin wa kinshin de to iu hou ga dekita node haha to imouto to oba mainichi ore no chi po o neratte kuru +2026-01-07 00:29:10,244 - INFO - Updating metadata for: family_x +2026-01-07 00:29:10,245 - INFO - Searching metadata for: family x +2026-01-07 00:29:10,458 - INFO - Fetching metadata from: https://nhentai.net/g/620563/ +2026-01-07 00:29:10,464 - INFO - Updating metadata for: big_sis_masturbation_life_my_masturbation_right_belongs_to_my_older_step_sisters +2026-01-07 00:29:10,464 - INFO - Searching metadata for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-07 00:29:10,770 - INFO - Fetching metadata from: https://nhentai.net/g/400868/ +2026-01-07 00:29:10,773 - INFO - Searching MangaUpdates for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-07 00:29:10,784 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-07 00:29:10,784 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-07 00:29:11,065 - INFO - Fetching metadata from: https://nhentai.net/g/460957/ +2026-01-07 00:29:11,103 - INFO - Updating metadata for: ani_no_kimoi_gendou_ni_honki +2026-01-07 00:29:11,103 - INFO - Searching metadata for: ani no kimoi gendou ni honki +2026-01-07 00:29:11,240 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 00:29:11,241 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 00:29:11,243 - INFO - Updating metadata for: [Chotto B-sen] A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-07 00:29:11,243 - INFO - Searching metadata for: Chotto B-sen A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-07 00:29:11,382 - INFO - Fetching metadata from: https://nhentai.net/g/511424/ +2026-01-07 00:29:11,664 - INFO - Fetching metadata from: https://nhentai.net/g/473274/ +2026-01-07 00:29:11,692 - INFO - Searching metadata for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 00:29:11,705 - INFO - Updating metadata for: Roujin_to_Neko_(2024) +2026-01-07 00:29:11,705 - INFO - Searching metadata for: Roujin to Neko +2026-01-07 00:29:11,936 - INFO - Searching MangaUpdates for: Roujin to Neko +2026-01-07 00:29:11,955 - INFO - Updating metadata for: haunted_property_chapter +2026-01-07 00:29:11,956 - INFO - Searching metadata for: haunted property chapter +2026-01-07 00:29:12,090 - INFO - Searching MangaUpdates for: haunted property chapter +2026-01-07 00:29:12,149 - INFO - Searching MangaUpdates for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 00:29:12,210 - INFO - Updating metadata for: gal_bitch_supremacy +2026-01-07 00:29:12,210 - INFO - Searching metadata for: gal bitch supremacy +2026-01-07 00:29:12,434 - INFO - Fetching metadata from: https://nhentai.net/g/521758/ +2026-01-07 00:29:12,558 - INFO - Updating metadata for: imouto_aoba +2026-01-07 00:29:12,559 - INFO - Searching metadata for: imouto aoba +2026-01-07 00:29:12,702 - INFO - Updating metadata for: ane_de_shikoru_otouto_to_onaritai +2026-01-07 00:29:12,702 - INFO - Searching metadata for: ane de shikoru otouto to onaritai +2026-01-07 00:29:12,762 - INFO - Searching MangaUpdates for: imouto aoba +2026-01-07 00:29:13,021 - INFO - Fetching metadata from: https://nhentai.net/g/505892/ +2026-01-07 00:29:13,035 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:29:13,035 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:29:13,100 - INFO - Updating metadata for: onehundred_my_older_sister_who_is_sick_after_illness +2026-01-07 00:29:13,101 - INFO - Searching metadata for: onehundred my older sister who is sick after illness +2026-01-07 00:29:13,292 - INFO - Fetching metadata from: https://nhentai.net/g/492943/ +2026-01-07 00:29:13,308 - INFO - Searching MangaUpdates for: onehundred my older sister who is sick after illness +2026-01-07 00:29:13,316 - INFO - Updating metadata for: video_memories +2026-01-07 00:29:13,316 - INFO - Searching metadata for: video memories +2026-01-07 00:29:13,514 - INFO - Updating metadata for: maid_slave_collection +2026-01-07 00:29:13,514 - INFO - Searching metadata for: maid slave collection +2026-01-07 00:29:13,550 - INFO - Fetching metadata from: https://nhentai.net/g/506956/ +2026-01-07 00:29:13,717 - INFO - Fetching metadata from: https://nhentai.net/g/601115/ +2026-01-07 00:29:13,907 - INFO - Updating metadata for: that_person_and_my_queen_special_edition +2026-01-07 00:29:13,908 - INFO - Searching metadata for: that person and my queen special edition +2026-01-07 00:29:13,913 - INFO - Updating metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-07 00:29:13,914 - INFO - Searching metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-07 00:29:14,111 - INFO - Fetching metadata from: https://nhentai.net/g/600892/ +2026-01-07 00:29:14,169 - INFO - Fetching metadata from: https://nhentai.net/g/614968/ +2026-01-07 00:29:14,172 - INFO - Updating metadata for: lemon_honeymoon +2026-01-07 00:29:14,172 - INFO - Searching metadata for: lemon honeymoon +2026-01-07 00:29:14,322 - INFO - Fetching metadata from: https://nhentai.net/g/524298/ +2026-01-07 00:29:14,327 - INFO - Updating metadata for: delima +2026-01-07 00:29:14,327 - INFO - Searching metadata for: delima +2026-01-07 00:29:14,404 - INFO - Updating metadata for: [Niramikko Koujou] Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-07 00:29:14,405 - INFO - Searching metadata for: Niramikko Koujou Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-07 00:29:14,519 - INFO - Fetching metadata from: https://nhentai.net/g/426364/ +2026-01-07 00:29:14,551 - INFO - Updating metadata for: shall_i_get_it_out_for_you_mom +2026-01-07 00:29:14,551 - INFO - Searching metadata for: shall i get it out for you mom +2026-01-07 00:29:14,768 - INFO - Fetching metadata from: https://nhentai.net/g/557335/ +2026-01-07 00:29:14,868 - INFO - Fetching metadata from: https://nhentai.net/g/537397/ +2026-01-07 00:29:14,937 - INFO - Updating metadata for: that_bitchy_boss_is_my_fuck_buddy +2026-01-07 00:29:14,937 - INFO - Searching metadata for: that bitchy boss is my fuck buddy +2026-01-07 00:29:14,989 - INFO - Updating metadata for: kanojo_no_ane_wa_gal_de_bitch_de_yariman_de +2026-01-07 00:29:14,989 - INFO - Searching metadata for: kanojo no ane wa gal de bitch de yariman de +2026-01-07 00:29:15,075 - INFO - Updating metadata for: family_plan_toono_suika_chapter +2026-01-07 00:29:15,076 - INFO - Searching metadata for: family plan toono suika chapter +2026-01-07 00:29:15,145 - INFO - Fetching metadata from: https://nhentai.net/g/577154/ +2026-01-07 00:29:15,232 - INFO - Searching MangaUpdates for: family plan toono suika chapter +2026-01-07 00:29:15,323 - INFO - Fetching metadata from: https://nhentai.net/g/578979/ +2026-01-07 00:29:15,328 - INFO - Updating metadata for: Niku Benki Kanojo no Usui-san _ 육변기 여친의 우스이 양 +2026-01-07 00:29:15,329 - INFO - Searching metadata for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-07 00:29:15,540 - INFO - Searching MangaUpdates for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-07 00:29:15,622 - INFO - Updating metadata for: temptation_of_big_tits_elder_sister +2026-01-07 00:29:15,623 - INFO - Searching metadata for: temptation of big tits elder sister +2026-01-07 00:29:15,628 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-07 00:29:15,628 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-07 00:29:15,801 - INFO - Fetching metadata from: https://nhentai.net/g/512343/ +2026-01-07 00:29:15,864 - INFO - Fetching metadata from: https://nhentai.net/g/604729/ +2026-01-07 00:29:16,016 - INFO - Updating metadata for: musuko_no_tomodachi_incubus_ni_miryou_sareta_yanmama_wa_mesu_ni_naru +2026-01-07 00:29:16,017 - INFO - Searching metadata for: musuko no tomodachi incubus ni miryou sareta yanmama wa mesu ni naru +2026-01-07 00:29:16,150 - INFO - Updating metadata for: a_slutty_old_lady_will_tell_how_to_make_her_slutty_daughter_fall_for_you +2026-01-07 00:29:16,150 - INFO - Searching metadata for: a slutty old lady will tell how to make her slutty daughter fall for you +2026-01-07 00:29:16,152 - INFO - Updating metadata for: musclehead_girl_cant_resist_orgasm_chapter +2026-01-07 00:29:16,152 - INFO - Searching metadata for: musclehead girl cant resist orgasm chapter +2026-01-07 00:29:16,311 - INFO - Fetching metadata from: https://nhentai.net/g/521491/ +2026-01-07 00:29:16,333 - INFO - Searching MangaUpdates for: musclehead girl cant resist orgasm chapter +2026-01-07 00:29:16,573 - INFO - Fetching metadata from: https://nhentai.net/g/393878/ +2026-01-07 00:29:16,580 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 00:29:16,581 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 00:29:16,635 - INFO - Updating metadata for: oneechan_wa_sore_o_yurusanai +2026-01-07 00:29:16,636 - INFO - Searching metadata for: oneechan wa sore o yurusanai +2026-01-07 00:29:16,785 - INFO - Updating metadata for: erotic_teacher_desperately +2026-01-07 00:29:16,785 - INFO - Searching metadata for: erotic teacher desperately +2026-01-07 00:29:16,844 - INFO - Searching metadata for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 00:29:16,881 - INFO - Searching MangaUpdates for: oneechan wa sore o yurusanai +2026-01-07 00:29:16,942 - INFO - Fetching metadata from: https://nhentai.net/g/170003/ +2026-01-07 00:29:17,070 - INFO - Searching MangaUpdates for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 00:29:17,144 - INFO - Updating metadata for: [36p] Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-07 00:29:17,145 - INFO - Searching metadata for: 36p Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-07 00:29:17,314 - INFO - Fetching metadata from: https://nhentai.net/g/596901/ +2026-01-07 00:29:17,513 - INFO - Updating metadata for: pet_mimamori_camera_ni_ane_to_otouto_no_sex_ga_utsutteta +2026-01-07 00:29:17,513 - INFO - Updating metadata for: the_housewives_of_the_luxury_apartment_are_to_dissatisfied_with_their_desires +2026-01-07 00:29:17,513 - INFO - Searching metadata for: pet mimamori camera ni ane to otouto no sex ga utsutteta +2026-01-07 00:29:17,514 - INFO - Searching metadata for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-07 00:29:17,722 - INFO - Searching MangaUpdates for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-07 00:29:17,737 - INFO - Updating metadata for: jukujo_sentai_paiters_chapter +2026-01-07 00:29:17,737 - INFO - Searching metadata for: jukujo sentai paiters chapter +2026-01-07 00:29:17,904 - INFO - Searching MangaUpdates for: jukujo sentai paiters chapter +2026-01-07 00:29:17,923 - INFO - Fetching metadata from: https://nhentai.net/g/312775/ +2026-01-07 00:29:18,154 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-07 00:29:18,154 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-07 00:29:18,220 - INFO - Updating metadata for: surrogacy_the_case_of_yuka_shirakawa +2026-01-07 00:29:18,220 - INFO - Searching metadata for: surrogacy the case of yuka shirakawa +2026-01-07 00:29:18,226 - INFO - Updating metadata for: ane_to_kanojo_to_hamedori_3p_shitemita +2026-01-07 00:29:18,227 - INFO - Searching metadata for: ane to kanojo to hamedori 3p shitemita +2026-01-07 00:29:18,390 - INFO - Fetching metadata from: https://nhentai.net/g/549276/ +2026-01-07 00:29:18,419 - INFO - Fetching metadata from: https://nhentai.net/g/544873/ +2026-01-07 00:29:18,499 - INFO - Searching MangaUpdates for: ane to kanojo to hamedori 3p shitemita +2026-01-07 00:29:18,607 - INFO - Updating metadata for: [Yue] Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 00:29:18,607 - INFO - Searching metadata for: Yue Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 00:29:18,743 - INFO - Updating metadata for: sisters_after_mozu +2026-01-07 00:29:18,743 - INFO - Searching metadata for: sisters after mozu +2026-01-07 00:29:18,760 - INFO - Updating metadata for: ogre_girl_tades_favorite_things +2026-01-07 00:29:18,761 - INFO - Searching metadata for: ogre girl tades favorite things +2026-01-07 00:29:18,787 - INFO - Searching MangaUpdates for: ogre girl tades favorite things +2026-01-07 00:29:18,898 - INFO - Searching MangaUpdates for: sisters after mozu +2026-01-07 00:29:19,005 - INFO - Updating metadata for: [Izayoi no Kiki] Incest Room [English] [Tigoris Translates] +2026-01-07 00:29:19,005 - INFO - Searching metadata for: Izayoi no Kiki Incest Room [English] [Tigoris Translates] +2026-01-07 00:29:19,076 - INFO - Updating metadata for: otaku_hime_ga_kita_heya +2026-01-07 00:29:19,077 - INFO - Searching metadata for: otaku hime ga kita heya +2026-01-07 00:29:19,286 - INFO - Fetching metadata from: https://nhentai.net/g/615902/ +2026-01-07 00:29:19,345 - INFO - Fetching metadata from: https://nhentai.net/g/347531/ +2026-01-07 00:29:19,389 - INFO - Searching metadata for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 00:29:19,412 - INFO - Searching MangaUpdates for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 00:29:19,604 - INFO - Updating metadata for: dream_mama_vs_real_mother_chapter_1b +2026-01-07 00:29:19,604 - INFO - Searching metadata for: dream mama vs real mother chapter 1b +2026-01-07 00:29:19,608 - INFO - Updating metadata for: trap_shiki_hunting +2026-01-07 00:29:19,608 - INFO - Searching metadata for: trap shiki hunting +2026-01-07 00:29:19,821 - INFO - Searching MangaUpdates for: dream mama vs real mother chapter 1b +2026-01-07 00:29:19,823 - INFO - Searching MangaUpdates for: trap shiki hunting +2026-01-07 00:29:20,164 - INFO - Updating metadata for: day_only_for_two +2026-01-07 00:29:20,164 - INFO - Searching metadata for: day only for two +2026-01-07 00:29:20,194 - INFO - Updating metadata for: hetappi_whiteday +2026-01-07 00:29:20,194 - INFO - Searching metadata for: hetappi whiteday +2026-01-07 00:29:20,205 - INFO - Updating metadata for: my_relationship_with_my_sister +2026-01-07 00:29:20,206 - INFO - Searching metadata for: my relationship with my sister +2026-01-07 00:29:20,351 - INFO - Searching MangaUpdates for: hetappi whiteday +2026-01-07 00:29:20,373 - INFO - Fetching metadata from: https://nhentai.net/g/167284/ +2026-01-07 00:29:20,442 - INFO - Fetching metadata from: https://nhentai.net/g/584304/ +2026-01-07 00:29:20,710 - INFO - Updating metadata for: family_control +2026-01-07 00:29:20,710 - INFO - Searching metadata for: family control +2026-01-07 00:29:20,726 - INFO - Updating metadata for: [Tohzai] Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-07 00:29:20,726 - INFO - Searching metadata for: Tohzai Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-07 00:29:20,733 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-07 00:29:20,734 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-07 00:29:20,929 - INFO - Fetching metadata from: https://nhentai.net/g/619340/ +2026-01-07 00:29:20,946 - INFO - Fetching metadata from: https://nhentai.net/g/141024/ +2026-01-07 00:29:20,949 - INFO - Searching MangaUpdates for: family control +2026-01-07 00:29:21,080 - INFO - Fetching metadata from: https://nhentai.net/g/419645/ +2026-01-07 00:29:21,180 - INFO - Updating metadata for: whats_a_bond +2026-01-07 00:29:21,181 - INFO - Searching metadata for: whats a bond +2026-01-07 00:29:21,333 - INFO - Updating metadata for: a_story_of_my_oneesan_who_loves_me_too_much +2026-01-07 00:29:21,334 - INFO - Searching metadata for: a story of my oneesan who loves me too much +2026-01-07 00:29:21,337 - INFO - Updating metadata for: living_together_with_the_buxom_female_bully +2026-01-07 00:29:21,338 - INFO - Searching metadata for: living together with the buxom female bully +2026-01-07 00:29:21,369 - INFO - Fetching metadata from: https://nhentai.net/g/126340/ +2026-01-07 00:29:21,540 - INFO - Fetching metadata from: https://nhentai.net/g/610208/ +2026-01-07 00:29:21,601 - INFO - Searching MangaUpdates for: living together with the buxom female bully +2026-01-07 00:29:21,606 - INFO - Updating metadata for: [Kira Hiroyoshi] Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 00:29:21,607 - INFO - Searching metadata for: Kira Hiroyoshi Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 00:29:21,664 - INFO - Searching MangaUpdates for: a story of my oneesan who loves me too much +2026-01-07 00:29:22,027 - INFO - Searching metadata for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 00:29:22,068 - INFO - Updating metadata for: how_to_build_cock +2026-01-07 00:29:22,068 - INFO - Searching metadata for: how to build cock +2026-01-07 00:29:22,160 - INFO - Updating metadata for: anemone_yuusuke_chapter_1x +2026-01-07 00:29:22,161 - INFO - Searching metadata for: anemone yuusuke chapter 1x +2026-01-07 00:29:22,288 - INFO - Searching MangaUpdates for: anemone yuusuke chapter 1x +2026-01-07 00:29:22,377 - INFO - Fetching metadata from: https://nhentai.net/g/381583/ +2026-01-07 00:29:22,394 - INFO - Searching MangaUpdates for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 00:29:22,628 - INFO - Updating metadata for: [Shirono Mahiro] Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-07 00:29:22,628 - INFO - Searching metadata for: Shirono Mahiro Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-07 00:29:22,634 - INFO - Updating metadata for: [BNO (Utagawa Yosiero)] My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-07 00:29:22,635 - INFO - Searching metadata for: BNO (Utagawa Yosiero) My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-07 00:29:22,885 - INFO - Fetching metadata from: https://nhentai.net/g/254693/ +2026-01-07 00:29:22,902 - INFO - Updating metadata for: ore_ga_daiteru_onna_wa_imouto_kamo_shirenai +2026-01-07 00:29:22,902 - INFO - Searching metadata for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-07 00:29:22,966 - INFO - Fetching metadata from: https://nhentai.net/g/599069/ +2026-01-07 00:29:23,158 - INFO - Searching MangaUpdates for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-07 00:29:23,231 - INFO - Updating metadata for: [Itaba Hiroshi] Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-07 00:29:23,231 - INFO - Searching metadata for: Itaba Hiroshi Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-07 00:29:23,235 - INFO - Updating metadata for: my_oyakodon +2026-01-07 00:29:23,235 - INFO - Searching metadata for: my oyakodon +2026-01-07 00:29:23,382 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-07 00:29:23,484 - INFO - Fetching metadata from: https://nhentai.net/g/618832/ +2026-01-07 00:29:23,536 - INFO - Updating metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-07 00:29:23,536 - INFO - Searching metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-07 00:29:23,749 - INFO - Updating metadata for: [Shirono Mahiro] Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 00:29:23,750 - INFO - Searching metadata for: Shirono Mahiro Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 00:29:23,753 - INFO - Updating metadata for: daisuki_na_classmate_ni_shikottemorautame +2026-01-07 00:29:23,753 - INFO - Searching metadata for: daisuki na classmate ni shikottemorautame +2026-01-07 00:29:23,943 - INFO - Searching metadata for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 00:29:23,963 - INFO - Fetching metadata from: https://nhentai.net/g/285698/ +2026-01-07 00:29:23,999 - INFO - Searching MangaUpdates for: daisuki na classmate ni shikottemorautame +2026-01-07 00:29:24,132 - INFO - Searching MangaUpdates for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 00:29:24,301 - INFO - Updating metadata for: lethargic_sister_tolerates_her_brothers_pranks +2026-01-07 00:29:24,301 - INFO - Searching metadata for: lethargic sister tolerates her brothers pranks +2026-01-07 00:29:24,495 - INFO - Fetching metadata from: https://nhentai.net/g/518733/ +2026-01-07 00:29:24,611 - INFO - Updating metadata for: enji_ni_somaru +2026-01-07 00:29:24,612 - INFO - Searching metadata for: enji ni somaru +2026-01-07 00:29:24,712 - INFO - Updating metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-07 00:29:24,712 - INFO - Searching metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-07 00:29:24,931 - INFO - Fetching metadata from: https://nhentai.net/g/608666/ +2026-01-07 00:29:25,042 - INFO - Updating metadata for: twentyfour_seven_sex_with_my_stepsister +2026-01-07 00:29:25,042 - INFO - Searching metadata for: twentyfour seven sex with my stepsister +2026-01-07 00:29:25,091 - INFO - Fetching metadata from: https://nhentai.net/g/579037/ +2026-01-07 00:29:25,214 - INFO - Searching MangaUpdates for: twentyfour seven sex with my stepsister +2026-01-07 00:29:25,224 - INFO - Updating metadata for: daily_life_with_my_sister_who_i_dont +2026-01-07 00:29:25,224 - INFO - Searching metadata for: daily life with my sister who i dont +2026-01-07 00:29:25,305 - INFO - Updating metadata for: bitch_mamas_depraved_adultery +2026-01-07 00:29:25,305 - INFO - Searching metadata for: bitch mamas depraved adultery +2026-01-07 00:29:25,479 - INFO - Searching MangaUpdates for: bitch mamas depraved adultery +2026-01-07 00:29:25,501 - INFO - Searching MangaUpdates for: daily life with my sister who i dont +2026-01-07 00:29:25,589 - INFO - Updating metadata for: summer_stay_in +2026-01-07 00:29:25,589 - INFO - Searching metadata for: summer stay in +2026-01-07 00:29:25,792 - INFO - Fetching metadata from: https://nhentai.net/g/549172/ +2026-01-07 00:29:26,000 - INFO - Updating metadata for: [Fence 14] Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 00:29:26,001 - INFO - Searching metadata for: Fence 14 Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 00:29:26,013 - INFO - Updating metadata for: the_romantic_ritual_with_fox_goddess_yuukosan_chapter +2026-01-07 00:29:26,014 - INFO - Searching metadata for: the romantic ritual with fox goddess yuukosan chapter +2026-01-07 00:29:26,063 - INFO - Updating metadata for: better_than_sex +2026-01-07 00:29:26,063 - INFO - Searching metadata for: better than sex +2026-01-07 00:29:26,212 - INFO - Searching MangaUpdates for: the romantic ritual with fox goddess yuukosan chapter +2026-01-07 00:29:26,239 - INFO - Searching metadata for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 00:29:26,296 - INFO - Fetching metadata from: https://nhentai.net/g/580485/ +2026-01-07 00:29:26,444 - INFO - Searching MangaUpdates for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 00:29:26,573 - INFO - Updating metadata for: do_you_like_an_untidy_older_sister +2026-01-07 00:29:26,574 - INFO - Searching metadata for: do you like an untidy older sister +2026-01-07 00:29:26,681 - INFO - Updating metadata for: ookii_gimai +2026-01-07 00:29:26,681 - INFO - Searching metadata for: ookii gimai +2026-01-07 00:29:26,722 - INFO - Updating metadata for: onee_sama_likes_anal +2026-01-07 00:29:26,722 - INFO - Searching metadata for: onee sama likes anal +2026-01-07 00:29:26,829 - INFO - Fetching metadata from: https://nhentai.net/g/555115/ +2026-01-07 00:29:26,836 - INFO - Searching MangaUpdates for: do you like an untidy older sister +2026-01-07 00:29:26,923 - INFO - Fetching metadata from: https://nhentai.net/g/110837/ +2026-01-07 00:29:27,056 - INFO - Updating metadata for: sleepwalk_sex_with_your_crazy_stepbrother +2026-01-07 00:29:27,056 - INFO - Searching metadata for: sleepwalk sex with your crazy stepbrother +2026-01-07 00:29:27,129 - INFO - Updating metadata for: camellia_the_first +2026-01-07 00:29:27,129 - INFO - Searching metadata for: camellia the first +2026-01-07 00:29:27,156 - INFO - Updating metadata for: [R Koubou (Ruzi)] Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 00:29:27,157 - INFO - Searching metadata for: R Koubou (Ruzi) Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 00:29:27,241 - INFO - Fetching metadata from: https://nhentai.net/g/545786/ +2026-01-07 00:29:27,312 - INFO - Fetching metadata from: https://nhentai.net/g/521474/ +2026-01-07 00:29:27,580 - INFO - Updating metadata for: [Shirono Mahiro] Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 00:29:27,580 - INFO - Searching metadata for: Shirono Mahiro Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 00:29:27,585 - INFO - Updating metadata for: sudou_siblings_sexual_circumstances +2026-01-07 00:29:27,585 - INFO - Searching metadata for: sudou siblings sexual circumstances +2026-01-07 00:29:27,605 - INFO - Searching metadata for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 00:29:27,771 - INFO - Searching metadata for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 00:29:27,789 - INFO - Fetching metadata from: https://nhentai.net/g/326122/ +2026-01-07 00:29:27,994 - INFO - Searching MangaUpdates for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 00:29:27,999 - INFO - Searching MangaUpdates for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 00:29:28,067 - INFO - Updating metadata for: mama_and_john +2026-01-07 00:29:28,067 - INFO - Searching metadata for: mama and john +2026-01-07 00:29:28,243 - INFO - Searching MangaUpdates for: mama and john +2026-01-07 00:29:28,646 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 00:29:28,646 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 00:29:28,671 - INFO - Updating metadata for: selfish_boyfriend_and_the_gentle_girlfriend +2026-01-07 00:29:28,671 - INFO - Searching metadata for: selfish boyfriend and the gentle girlfriend +2026-01-07 00:29:28,872 - INFO - Fetching metadata from: https://nhentai.net/g/257734/ +2026-01-07 00:29:28,952 - INFO - Searching metadata for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 00:29:29,091 - INFO - Updating metadata for: [NT Labo (NT Robo)] Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-07 00:29:29,091 - INFO - Searching metadata for: NT Labo (NT Robo) Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-07 00:29:29,178 - INFO - Updating metadata for: sibling_with_sister +2026-01-07 00:29:29,178 - INFO - Searching metadata for: sibling with sister +2026-01-07 00:29:29,318 - INFO - Searching MangaUpdates for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 00:29:29,350 - INFO - Fetching metadata from: https://nhentai.net/g/261648/ +2026-01-07 00:29:29,381 - INFO - Fetching metadata from: https://nhentai.net/g/501918/ +2026-01-07 00:29:29,712 - INFO - Updating metadata for: until_my_mother_in_law_is_pregnant +2026-01-07 00:29:29,713 - INFO - Searching metadata for: until my mother in law is pregnant +2026-01-07 00:29:29,720 - INFO - Updating metadata for: gikei_ni_netorare_ochita_tsubaki +2026-01-07 00:29:29,721 - INFO - Searching metadata for: gikei ni netorare ochita tsubaki +2026-01-07 00:29:29,915 - INFO - Searching MangaUpdates for: gikei ni netorare ochita tsubaki +2026-01-07 00:29:29,972 - INFO - Fetching metadata from: https://nhentai.net/g/329242/ +2026-01-07 00:29:30,041 - INFO - Updating metadata for: bakunyuu_bijukujo_wa_soku_hame_koubiana +2026-01-07 00:29:30,041 - INFO - Searching metadata for: bakunyuu bijukujo wa soku hame koubiana +2026-01-07 00:29:30,336 - INFO - Fetching metadata from: https://nhentai.net/g/529021/ +2026-01-07 00:29:30,349 - INFO - Updating metadata for: the_festival_of_summers_lustful_traditions +2026-01-07 00:29:30,349 - INFO - Searching metadata for: the festival of summers lustful traditions +2026-01-07 00:29:30,353 - INFO - Updating metadata for: grand_discovery_of_kink +2026-01-07 00:29:30,354 - INFO - Searching metadata for: grand discovery of kink +2026-01-07 00:29:30,499 - INFO - Searching MangaUpdates for: grand discovery of kink +2026-01-07 00:29:30,602 - INFO - Searching MangaUpdates for: the festival of summers lustful traditions +2026-01-07 00:29:30,669 - INFO - Updating metadata for: joshi_seito_o_suki_houdai_ni_hame_botebara_ni_shite_ok_na_sekai +2026-01-07 00:29:30,669 - INFO - Searching metadata for: joshi seito o suki houdai ni hame botebara ni shite ok na sekai +2026-01-07 00:29:30,708 - INFO - Updating metadata for: happy_life_amagami +2026-01-07 00:29:30,708 - INFO - Searching metadata for: happy life amagami +2026-01-07 00:29:30,889 - INFO - Searching MangaUpdates for: happy life amagami +2026-01-07 00:29:31,042 - INFO - Fetching metadata from: https://nhentai.net/g/268826/ +2026-01-07 00:29:31,062 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-07 00:29:31,063 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-07 00:29:31,189 - INFO - Updating metadata for: one_shot_a_summer +2026-01-07 00:29:31,190 - INFO - Searching metadata for: one shot a summer +2026-01-07 00:29:31,276 - INFO - Updating metadata for: [Puranpuman] A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-07 00:29:31,276 - INFO - Searching metadata for: Puranpuman A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-07 00:29:31,335 - INFO - Fetching metadata from: https://nhentai.net/g/502051/ +2026-01-07 00:29:31,444 - INFO - Fetching metadata from: https://nhentai.net/g/500042/ +2026-01-07 00:29:31,674 - INFO - Fetching metadata from: https://nhentai.net/g/617868/ +2026-01-07 00:29:31,685 - INFO - Updating metadata for: bath_time_with_big_sis +2026-01-07 00:29:31,685 - INFO - Searching metadata for: bath time with big sis +2026-01-07 00:29:31,687 - INFO - Updating metadata for: can_you_really_use_this_app_to_fuck_different_species +2026-01-07 00:29:31,688 - INFO - Searching metadata for: can you really use this app to fuck different species +2026-01-07 00:29:31,917 - INFO - Fetching metadata from: https://nhentai.net/g/596905/ +2026-01-07 00:29:31,986 - INFO - Fetching metadata from: https://nhentai.net/g/517152/ +2026-01-07 00:29:32,016 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-07 00:29:32,016 - INFO - Searching metadata for: Mustard Teikoku (Europia) A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-07 00:29:32,151 - INFO - Updating metadata for: family_x +2026-01-07 00:29:32,152 - INFO - Searching metadata for: family x +2026-01-07 00:29:32,390 - INFO - Fetching metadata from: https://nhentai.net/g/620563/ +2026-01-07 00:29:32,416 - INFO - Updating metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-07 00:29:32,426 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-07 00:29:32,427 - INFO - Searching metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-07 00:29:32,639 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-07 00:29:32,640 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-07 00:29:32,645 - INFO - Updating metadata for: hitozuma_saimin_appli_chapter +2026-01-07 00:29:32,645 - INFO - Searching metadata for: hitozuma saimin appli chapter +2026-01-07 00:29:32,864 - INFO - Fetching metadata from: https://nhentai.net/g/526048/ +2026-01-07 00:29:32,872 - INFO - Searching MangaUpdates for: hitozuma saimin appli chapter +2026-01-07 00:29:32,903 - INFO - Fetching metadata from: https://nhentai.net/g/460957/ +2026-01-07 00:29:33,125 - INFO - Updating metadata for: boku_no_misatan +2026-01-07 00:29:33,126 - INFO - Searching metadata for: boku no misatan +2026-01-07 00:29:33,129 - INFO - Updating metadata for: [Chotto B-sen] A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-07 00:29:33,129 - INFO - Searching metadata for: Chotto B-sen A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-07 00:29:33,173 - INFO - Updating metadata for: dagashi_wa_sake_ni_au +2026-01-07 00:29:33,173 - INFO - Searching metadata for: dagashi wa sake ni au +2026-01-07 00:29:33,323 - INFO - Searching MangaUpdates for: boku no misatan +2026-01-07 00:29:33,523 - INFO - Fetching metadata from: https://nhentai.net/g/404156/ +2026-01-07 00:29:33,599 - INFO - Updating metadata for: [Wakamatsu] Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-07 00:29:33,600 - INFO - Searching metadata for: Wakamatsu Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-07 00:29:33,652 - INFO - Fetching metadata from: https://nhentai.net/g/473274/ +2026-01-07 00:29:33,729 - INFO - Updating metadata for: the_night_my_sister_disappeared_i_made_love_to_my_mother +2026-01-07 00:29:33,729 - INFO - Searching metadata for: the night my sister disappeared i made love to my mother +2026-01-07 00:29:33,847 - INFO - Fetching metadata from: https://nhentai.net/g/571054/ +2026-01-07 00:29:33,854 - INFO - Updating metadata for: haunted_property_chapter +2026-01-07 00:29:33,854 - INFO - Searching metadata for: haunted property chapter +2026-01-07 00:29:34,005 - INFO - Searching MangaUpdates for: haunted property chapter +2026-01-07 00:29:34,041 - INFO - Updating metadata for: thats_my_girl +2026-01-07 00:29:34,042 - INFO - Searching metadata for: thats my girl +2026-01-07 00:29:34,082 - INFO - Fetching metadata from: https://nhentai.net/g/497835/ +2026-01-07 00:29:34,197 - INFO - Searching MangaUpdates for: thats my girl +2026-01-07 00:29:34,226 - INFO - Updating metadata for: imouto_aoba +2026-01-07 00:29:34,226 - INFO - Searching metadata for: imouto aoba +2026-01-07 00:29:34,284 - INFO - Updating metadata for: tsubaki_democracy +2026-01-07 00:29:34,285 - INFO - Searching metadata for: tsubaki democracy +2026-01-07 00:29:34,358 - INFO - Searching MangaUpdates for: imouto aoba +2026-01-07 00:29:34,464 - INFO - Fetching metadata from: https://nhentai.net/g/269196/ +2026-01-07 00:29:34,472 - INFO - Updating metadata for: [Juna Juna Juice] Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-07 00:29:34,472 - INFO - Searching metadata for: Juna Juna Juice Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-07 00:29:34,549 - INFO - Updating metadata for: onehundred_my_older_sister_who_is_sick_after_illness +2026-01-07 00:29:34,549 - INFO - Searching metadata for: onehundred my older sister who is sick after illness +2026-01-07 00:29:34,678 - INFO - Fetching metadata from: https://nhentai.net/g/594305/ +2026-01-07 00:29:34,690 - INFO - Searching MangaUpdates for: onehundred my older sister who is sick after illness +2026-01-07 00:29:34,696 - INFO - Updating metadata for: Kumiko_to_Warui_Musuko_(2015) +2026-01-07 00:29:34,696 - INFO - Searching metadata for: Kumiko to Warui Musuko +2026-01-07 00:29:34,712 - INFO - Searching metadata for: Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-07 00:29:34,752 - INFO - Searching MangaUpdates for: Kumiko to Warui Musuko +2026-01-07 00:29:34,895 - INFO - Fetching metadata from: https://nhentai.net/g/594305/ +2026-01-07 00:29:35,077 - INFO - Updating metadata for: that_person_and_my_queen_special_edition +2026-01-07 00:29:35,077 - INFO - Searching metadata for: that person and my queen special edition +2026-01-07 00:29:35,080 - INFO - Updating metadata for: when_i_confessed_to_the_girl_im_interested_in_i_wasnt_allowed_to_go_out_with_her_but_was_given_the_ok_for_childmaking +2026-01-07 00:29:35,081 - INFO - Searching metadata for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-07 00:29:35,175 - INFO - Updating metadata for: this_teacher_in_her_fourtys_is_acting_like_a_young_girl_in_the_prime_if_her_life +2026-01-07 00:29:35,175 - INFO - Searching metadata for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-07 00:29:35,261 - INFO - Fetching metadata from: https://nhentai.net/g/600892/ +2026-01-07 00:29:35,374 - INFO - Searching MangaUpdates for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-07 00:29:35,481 - INFO - Updating metadata for: delima +2026-01-07 00:29:35,481 - INFO - Searching metadata for: delima +2026-01-07 00:29:35,513 - INFO - Searching MangaUpdates for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-07 00:29:35,662 - INFO - Fetching metadata from: https://nhentai.net/g/426364/ +2026-01-07 00:29:35,983 - INFO - Updating metadata for: that_bitchy_boss_is_my_fuck_buddy +2026-01-07 00:29:35,984 - INFO - Searching metadata for: that bitchy boss is my fuck buddy +2026-01-07 00:29:36,195 - INFO - Fetching metadata from: https://nhentai.net/g/577154/ +2026-01-07 00:29:36,235 - INFO - Updating metadata for: the_mother_of_the_oba_household +2026-01-07 00:29:36,235 - INFO - Searching metadata for: the mother of the oba household +2026-01-07 00:29:36,265 - INFO - Updating metadata for: the_story_of_a_single_career_woman_in_hers_getting_addicted_to_a_relationship +2026-01-07 00:29:36,265 - INFO - Searching metadata for: the story of a single career woman in hers getting addicted to a relationship +2026-01-07 00:29:36,366 - INFO - Updating metadata for: Niku Benki Kanojo no Usui-san _ 육변기 여친의 우스이 양 +2026-01-07 00:29:36,366 - INFO - Searching metadata for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-07 00:29:36,434 - INFO - Fetching metadata from: https://nhentai.net/g/543837/ +2026-01-07 00:29:36,573 - INFO - Searching MangaUpdates for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-07 00:29:36,602 - INFO - Searching MangaUpdates for: the story of a single career woman in hers getting addicted to a relationship +2026-01-07 00:29:36,647 - INFO - Updating metadata for: [UC] Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-07 00:29:36,647 - INFO - Searching metadata for: UC Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-07 00:29:36,959 - INFO - Updating metadata for: a_slutty_old_lady_will_tell_how_to_make_her_slutty_daughter_fall_for_you +2026-01-07 00:29:36,959 - INFO - Searching metadata for: a slutty old lady will tell how to make her slutty daughter fall for you +2026-01-07 00:29:37,043 - INFO - Fetching metadata from: https://nhentai.net/g/399461/ +2026-01-07 00:29:37,133 - INFO - Updating metadata for: [Kouda Tomohiro] Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-07 00:29:37,134 - INFO - Searching metadata for: Kouda Tomohiro Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-07 00:29:37,232 - INFO - Updating metadata for: [Kudamono Monogatari (Kuroishi Ringo)] Puraibe to Joousama - Private Queen [Eng] +2026-01-07 00:29:37,232 - INFO - Searching metadata for: Kudamono Monogatari (Kuroishi Ringo) Puraibe to Joousama - Private Queen [Eng] +2026-01-07 00:29:37,256 - INFO - Fetching metadata from: https://nhentai.net/g/393878/ +2026-01-07 00:29:37,329 - INFO - Fetching metadata from: https://nhentai.net/g/604149/ +2026-01-07 00:29:37,465 - INFO - Fetching metadata from: https://nhentai.net/g/602699/ +2026-01-07 00:29:37,730 - INFO - Updating metadata for: erotic_teacher_desperately +2026-01-07 00:29:37,731 - INFO - Searching metadata for: erotic teacher desperately +2026-01-07 00:29:37,737 - INFO - Updating metadata for: [Hikagemon (Tenpiboshi)] Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-07 00:29:37,738 - INFO - Searching metadata for: Hikagemon (Tenpiboshi) Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-07 00:29:37,743 - INFO - Updating metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-07 00:29:37,743 - INFO - Searching metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-07 00:29:37,893 - INFO - Fetching metadata from: https://nhentai.net/g/170003/ +2026-01-07 00:29:37,969 - INFO - Searching MangaUpdates for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-07 00:29:38,015 - INFO - Fetching metadata from: https://nhentai.net/g/593437/ +2026-01-07 00:29:38,068 - INFO - Updating metadata for: [36p] Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-07 00:29:38,068 - INFO - Searching metadata for: 36p Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-07 00:29:38,320 - INFO - Fetching metadata from: https://nhentai.net/g/596901/ +2026-01-07 00:29:38,381 - INFO - Updating metadata for: rural_stories +2026-01-07 00:29:38,382 - INFO - Searching metadata for: rural stories +2026-01-07 00:29:38,602 - INFO - Fetching metadata from: https://nhentai.net/g/565283/ +2026-01-07 00:29:38,607 - INFO - Updating metadata for: the_housewives_of_the_luxury_apartment_are_to_dissatisfied_with_their_desires +2026-01-07 00:29:38,607 - INFO - Searching metadata for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-07 00:29:38,623 - INFO - Updating metadata for: [Hakukoukai (Shiramizu Mizuchi)] Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 00:29:38,623 - INFO - Searching metadata for: Hakukoukai (Shiramizu Mizuchi) Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 00:29:38,844 - INFO - Searching metadata for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 00:29:38,851 - INFO - Searching MangaUpdates for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-07 00:29:38,956 - INFO - Updating metadata for: [Sunagawa Tara] Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-07 00:29:38,957 - INFO - Searching metadata for: Sunagawa Tara Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-07 00:29:39,018 - INFO - Searching MangaUpdates for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 00:29:39,317 - INFO - Fetching metadata from: https://nhentai.net/g/601543/ +2026-01-07 00:29:39,360 - INFO - Updating metadata for: surrogacy_the_case_of_yuka_shirakawa +2026-01-07 00:29:39,360 - INFO - Searching metadata for: surrogacy the case of yuka shirakawa +2026-01-07 00:29:39,570 - INFO - Fetching metadata from: https://nhentai.net/g/549276/ +2026-01-07 00:29:39,596 - INFO - Updating metadata for: [Sakai Hamachi] Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-07 00:29:39,596 - INFO - Searching metadata for: Sakai Hamachi Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-07 00:29:39,601 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-07 00:29:39,602 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-07 00:29:39,880 - INFO - Fetching metadata from: https://nhentai.net/g/600615/ +2026-01-07 00:29:39,911 - INFO - Updating metadata for: [Yue] Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 00:29:39,912 - INFO - Searching metadata for: Yue Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 00:29:39,971 - INFO - Fetching metadata from: https://nhentai.net/g/573974/ +2026-01-07 00:29:40,088 - INFO - Updating metadata for: cock_that_makes_tomboy_sisters_tap_out +2026-01-07 00:29:40,088 - INFO - Searching metadata for: cock that makes tomboy sisters tap out +2026-01-07 00:29:40,159 - INFO - Updating metadata for: my_daily_life_as_a_streamer +2026-01-07 00:29:40,160 - INFO - Searching metadata for: my daily life as a streamer +2026-01-07 00:29:40,265 - INFO - Fetching metadata from: https://nhentai.net/g/585217/ +2026-01-07 00:29:40,506 - INFO - Fetching metadata from: https://nhentai.net/g/550192/ +2026-01-07 00:29:40,516 - INFO - Updating metadata for: big_sis_ayaka +2026-01-07 00:29:40,516 - INFO - Searching metadata for: big sis ayaka +2026-01-07 00:29:40,540 - INFO - Searching metadata for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 00:29:40,710 - INFO - Fetching metadata from: https://nhentai.net/g/608897/ +2026-01-07 00:29:40,726 - INFO - Updating metadata for: possessed_and_thrusting +2026-01-07 00:29:40,727 - INFO - Searching metadata for: possessed and thrusting +2026-01-07 00:29:40,913 - INFO - Fetching metadata from: https://nhentai.net/g/584236/ +2026-01-07 00:29:41,263 - INFO - Searching MangaUpdates for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 00:29:41,270 - INFO - Updating metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-07 00:29:41,271 - INFO - Searching metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-07 00:29:41,273 - INFO - Updating metadata for: mrs_miho_cant_stop_cheating_chapter +2026-01-07 00:29:41,273 - INFO - Searching metadata for: mrs miho cant stop cheating chapter +2026-01-07 00:29:41,447 - INFO - Searching MangaUpdates for: mrs miho cant stop cheating chapter +2026-01-07 00:29:41,520 - INFO - Fetching metadata from: https://nhentai.net/g/36404/ +2026-01-07 00:29:41,757 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge_chapter_ +2026-01-07 00:29:41,758 - INFO - Searching metadata for: big boobs shadowy character takes revenge chapter +2026-01-07 00:29:41,918 - INFO - Searching MangaUpdates for: big boobs shadowy character takes revenge chapter +2026-01-07 00:29:42,089 - INFO - Updating metadata for: a_story_about_an_oneesan_being_impregnated_by_an_incubus +2026-01-07 00:29:42,089 - INFO - Searching metadata for: a story about an oneesan being impregnated by an incubus +2026-01-07 00:29:42,407 - INFO - Searching MangaUpdates for: a story about an oneesan being impregnated by an incubus +2026-01-07 00:29:42,509 - INFO - Updating metadata for: [Shirono Mahiro] Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-07 00:29:42,509 - INFO - Searching metadata for: Shirono Mahiro Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-07 00:29:42,730 - INFO - Fetching metadata from: https://nhentai.net/g/184288/ +2026-01-07 00:29:42,933 - INFO - Updating metadata for: [Nacchuushou (Amazon)] Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-07 00:29:42,933 - INFO - Searching metadata for: Nacchuushou (Amazon) Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-07 00:29:43,306 - INFO - Updating metadata for: my_relationship_with_my_sister +2026-01-07 00:29:43,306 - INFO - Searching metadata for: my relationship with my sister +2026-01-07 00:29:43,489 - INFO - Fetching metadata from: https://nhentai.net/g/584304/ +2026-01-07 00:29:43,520 - INFO - Fetching metadata from: https://nhentai.net/g/604264/ +2026-01-07 00:29:43,836 - INFO - Updating metadata for: wrung_dry_by_my_sister_every_night_under_the_sheets +2026-01-07 00:29:43,836 - INFO - Searching metadata for: wrung dry by my sister every night under the sheets +2026-01-07 00:29:43,842 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-07 00:29:43,842 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-07 00:29:43,850 - INFO - Updating metadata for: im_his_little_sister_slave +2026-01-07 00:29:43,851 - INFO - Searching metadata for: im his little sister slave +2026-01-07 00:29:44,087 - INFO - Searching MangaUpdates for: im his little sister slave +2026-01-07 00:29:44,092 - INFO - Fetching metadata from: https://nhentai.net/g/548542/ +2026-01-07 00:29:44,324 - INFO - Updating metadata for: [Yue] Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-07 00:29:44,324 - INFO - Searching metadata for: Yue Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-07 00:29:44,372 - INFO - Updating metadata for: Oretachi,_Kore_Kara_(2024) +2026-01-07 00:29:44,372 - INFO - Searching metadata for: Oretachi, Kore Kara +2026-01-07 00:29:44,509 - INFO - Fetching metadata from: https://nhentai.net/g/419645/ +2026-01-07 00:29:44,541 - INFO - Searching MangaUpdates for: Oretachi, Kore Kara +2026-01-07 00:29:44,592 - INFO - Fetching metadata from: https://nhentai.net/g/580266/ +2026-01-07 00:29:44,824 - INFO - Updating metadata for: living_together_with_the_buxom_female_bully +2026-01-07 00:29:44,825 - INFO - Searching metadata for: living together with the buxom female bully +2026-01-07 00:29:44,835 - INFO - Updating metadata for: a_country_mother_who_makes_her_son_horny +2026-01-07 00:29:44,835 - INFO - Searching metadata for: a country mother who makes her son horny +2026-01-07 00:29:44,877 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-07 00:29:44,878 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-07 00:29:45,032 - INFO - Fetching metadata from: https://nhentai.net/g/610208/ +2026-01-07 00:29:45,126 - INFO - Fetching metadata from: https://nhentai.net/g/572070/ +2026-01-07 00:29:45,149 - INFO - Fetching metadata from: https://nhentai.net/g/558745/ +2026-01-07 00:29:45,267 - INFO - Updating metadata for: how_to_build_cock +2026-01-07 00:29:45,268 - INFO - Searching metadata for: how to build cock +2026-01-07 00:29:45,471 - INFO - Fetching metadata from: https://nhentai.net/g/381583/ +2026-01-07 00:29:45,476 - INFO - Updating metadata for: Sunday Funday [AI GENERATED] +2026-01-07 00:29:45,476 - INFO - Searching metadata for: Sunday Funday [AI GENERATED] +2026-01-07 00:29:45,479 - INFO - Updating metadata for: sister_complex +2026-01-07 00:29:45,479 - INFO - Searching metadata for: sister complex +2026-01-07 00:29:45,673 - INFO - Fetching metadata from: https://nhentai.net/g/603171/ +2026-01-07 00:29:45,718 - INFO - Fetching metadata from: https://nhentai.net/g/600775/ +2026-01-07 00:29:45,727 - INFO - Updating metadata for: [BNO (Utagawa Yosiero)] My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-07 00:29:45,727 - INFO - Searching metadata for: BNO (Utagawa Yosiero) My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-07 00:29:45,968 - INFO - Updating metadata for: succubus_pearl_bonus_book +2026-01-07 00:29:45,968 - INFO - Searching metadata for: succubus pearl bonus book +2026-01-07 00:29:45,973 - INFO - Updating metadata for: nao_hanpatsu_zokusei +2026-01-07 00:29:45,973 - INFO - Searching metadata for: nao hanpatsu zokusei +2026-01-07 00:29:46,024 - INFO - Fetching metadata from: https://nhentai.net/g/599069/ +2026-01-07 00:29:46,126 - INFO - Fetching metadata from: https://nhentai.net/g/346344/ +2026-01-07 00:29:46,179 - INFO - Searching MangaUpdates for: nao hanpatsu zokusei +2026-01-07 00:29:46,240 - INFO - Updating metadata for: my_oyakodon +2026-01-07 00:29:46,241 - INFO - Searching metadata for: my oyakodon +2026-01-07 00:29:46,291 - INFO - Updating metadata for: sibling_switch +2026-01-07 00:29:46,292 - INFO - Searching metadata for: sibling switch +2026-01-07 00:29:46,414 - INFO - Updating metadata for: [NCP (big g)] A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-07 00:29:46,414 - INFO - Searching metadata for: NCP (big g) A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-07 00:29:46,458 - INFO - Fetching metadata from: https://nhentai.net/g/469099/ +2026-01-07 00:29:46,534 - INFO - Fetching metadata from: https://nhentai.net/g/618832/ +2026-01-07 00:29:46,656 - INFO - Updating metadata for: pantsu_o_haita_dake_nanoni +2026-01-07 00:29:46,656 - INFO - Searching metadata for: pantsu o haita dake nanoni +2026-01-07 00:29:46,695 - INFO - Fetching metadata from: https://nhentai.net/g/514753/ +2026-01-07 00:29:46,763 - INFO - Updating metadata for: daisuki_na_classmate_ni_shikottemorautame +2026-01-07 00:29:46,763 - INFO - Searching metadata for: daisuki na classmate ni shikottemorautame +2026-01-07 00:29:46,897 - INFO - Fetching metadata from: https://nhentai.net/g/548841/ +2026-01-07 00:29:46,920 - INFO - Updating metadata for: masochist_little_brothers_training +2026-01-07 00:29:46,920 - INFO - Searching metadata for: masochist little brothers training +2026-01-07 00:29:46,935 - INFO - Searching MangaUpdates for: pantsu o haita dake nanoni +2026-01-07 00:29:47,021 - INFO - Searching MangaUpdates for: daisuki na classmate ni shikottemorautame +2026-01-07 00:29:47,091 - INFO - Searching MangaUpdates for: masochist little brothers training +2026-01-07 00:29:47,344 - INFO - Updating metadata for: [Shiraishi Nagisa] Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-07 00:29:47,345 - INFO - Searching metadata for: Shiraishi Nagisa Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-07 00:29:47,397 - INFO - Updating metadata for: enji_ni_somaru +2026-01-07 00:29:47,398 - INFO - Searching metadata for: enji ni somaru +2026-01-07 00:29:47,533 - INFO - Updating metadata for: SISUANA - sister hole +2026-01-07 00:29:47,533 - INFO - Searching metadata for: SISUANA - sister hole +2026-01-07 00:29:47,602 - INFO - Fetching metadata from: https://nhentai.net/g/608666/ +2026-01-07 00:29:47,664 - INFO - Fetching metadata from: https://nhentai.net/g/407654/ +2026-01-07 00:29:47,735 - INFO - Fetching metadata from: https://nhentai.net/g/521114/ +2026-01-07 00:29:48,148 - INFO - Updating metadata for: gyan_colle +2026-01-07 00:29:48,148 - INFO - Searching metadata for: gyan colle +2026-01-07 00:29:48,159 - INFO - Updating metadata for: my_neet_older_sister +2026-01-07 00:29:48,159 - INFO - Searching metadata for: my neet older sister +2026-01-07 00:29:48,165 - INFO - Updating metadata for: daily_life_with_my_sister_who_i_dont +2026-01-07 00:29:48,166 - INFO - Searching metadata for: daily life with my sister who i dont +2026-01-07 00:29:48,299 - INFO - Fetching metadata from: https://nhentai.net/g/611983/ +2026-01-07 00:29:48,367 - INFO - Searching MangaUpdates for: daily life with my sister who i dont +2026-01-07 00:29:48,384 - INFO - Fetching metadata from: https://nhentai.net/g/541946/ +2026-01-07 00:29:48,931 - INFO - Updating metadata for: better_than_sex +2026-01-07 00:29:48,937 - INFO - Searching metadata for: better than sex +2026-01-07 00:29:48,944 - INFO - Updating metadata for: narmaya_attack +2026-01-07 00:29:48,945 - INFO - Searching metadata for: narmaya attack +2026-01-07 00:29:48,952 - INFO - Updating metadata for: didnt_you_know +2026-01-07 00:29:48,952 - INFO - Searching metadata for: didnt you know +2026-01-07 00:29:49,078 - INFO - Searching MangaUpdates for: didnt you know +2026-01-07 00:29:49,124 - INFO - Fetching metadata from: https://nhentai.net/g/322620/ +2026-01-07 00:29:49,151 - INFO - Fetching metadata from: https://nhentai.net/g/580485/ +2026-01-07 00:29:49,569 - INFO - Updating metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-07 00:29:49,569 - INFO - Searching metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-07 00:29:49,577 - INFO - Updating metadata for: [Yue] Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-07 00:29:49,578 - INFO - Searching metadata for: Yue Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-07 00:29:49,581 - INFO - Updating metadata for: do_you_like_an_untidy_older_sister +2026-01-07 00:29:49,581 - INFO - Searching metadata for: do you like an untidy older sister +2026-01-07 00:29:49,725 - INFO - Searching MangaUpdates for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-07 00:29:49,844 - INFO - Searching MangaUpdates for: do you like an untidy older sister +2026-01-07 00:29:49,876 - INFO - Fetching metadata from: https://nhentai.net/g/603962/ +2026-01-07 00:29:50,089 - INFO - Updating metadata for: the_country_little_sister_and_the_tempation_of_innocence +2026-01-07 00:29:50,090 - INFO - Searching metadata for: the country little sister and the tempation of innocence +2026-01-07 00:29:50,095 - INFO - Updating metadata for: [Kakinotanehitotsubu (Kakino Nashiko)] Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-07 00:29:50,096 - INFO - Searching metadata for: Kakinotanehitotsubu (Kakino Nashiko) Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-07 00:29:50,140 - INFO - Updating metadata for: [R Koubou (Ruzi)] Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 00:29:50,140 - INFO - Searching metadata for: R Koubou (Ruzi) Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 00:29:50,282 - INFO - Searching MangaUpdates for: the country little sister and the tempation of innocence +2026-01-07 00:29:50,358 - INFO - Fetching metadata from: https://nhentai.net/g/484501/ +2026-01-07 00:29:50,594 - INFO - Searching metadata for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 00:29:50,604 - INFO - Updating metadata for: steamed_bun_kiss +2026-01-07 00:29:50,604 - INFO - Searching metadata for: steamed bun kiss +2026-01-07 00:29:50,631 - INFO - Searching MangaUpdates for: steamed bun kiss +2026-01-07 00:29:50,702 - INFO - Updating metadata for: blood_lunch +2026-01-07 00:29:50,703 - INFO - Searching metadata for: blood lunch +2026-01-07 00:29:50,899 - INFO - Fetching metadata from: https://nhentai.net/g/578369/ +2026-01-07 00:29:50,975 - INFO - Searching MangaUpdates for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 00:29:51,114 - INFO - Updating metadata for: toppatsusei_bokki_shoukougun_jii_fuzen_o_soete +2026-01-07 00:29:51,115 - INFO - Searching metadata for: toppatsusei bokki shoukougun jii fuzen o soete +2026-01-07 00:29:51,342 - INFO - Fetching metadata from: https://nhentai.net/g/425210/ +2026-01-07 00:29:51,349 - INFO - Updating metadata for: [Pipasuta (Pipa)] Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-07 00:29:51,349 - INFO - Searching metadata for: Pipasuta (Pipa) Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-07 00:29:51,581 - INFO - Updating metadata for: Between Heave and Hell +2026-01-07 00:29:51,581 - INFO - Searching metadata for: Between Heave and Hell +2026-01-07 00:29:51,627 - INFO - Fetching metadata from: https://nhentai.net/g/572821/ +2026-01-07 00:29:51,790 - INFO - Fetching metadata from: https://nhentai.net/g/125398/ +2026-01-07 00:29:51,877 - INFO - Updating metadata for: madam_complex +2026-01-07 00:29:51,877 - INFO - Searching metadata for: madam complex +2026-01-07 00:29:52,015 - INFO - Updating metadata for: is_my_sister_seriously_ill +2026-01-07 00:29:52,015 - INFO - Searching metadata for: is my sister seriously ill +2026-01-07 00:29:52,052 - INFO - Fetching metadata from: https://nhentai.net/g/595613/ +2026-01-07 00:29:52,258 - INFO - Fetching metadata from: https://nhentai.net/g/600832/ +2026-01-07 00:29:52,351 - INFO - Updating metadata for: [Puppukupu (Kawaisaw)] Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 00:29:52,352 - INFO - Updating metadata for: sibling_with_sister +2026-01-07 00:29:52,352 - INFO - Searching metadata for: Puppukupu (Kawaisaw) Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 00:29:52,352 - INFO - Searching metadata for: sibling with sister +2026-01-07 00:29:52,465 - INFO - Updating metadata for: mucchiri_megaton +2026-01-07 00:29:52,465 - INFO - Searching metadata for: mucchiri megaton +2026-01-07 00:29:52,523 - INFO - Fetching metadata from: https://nhentai.net/g/501918/ +2026-01-07 00:29:52,575 - INFO - Searching metadata for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 00:29:52,638 - INFO - Fetching metadata from: https://nhentai.net/g/495948/ +2026-01-07 00:29:52,748 - INFO - Updating metadata for: gikei_ni_netorare_ochita_tsubaki +2026-01-07 00:29:52,749 - INFO - Searching metadata for: gikei ni netorare ochita tsubaki +2026-01-07 00:29:52,786 - INFO - Searching MangaUpdates for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 00:29:52,972 - INFO - Searching MangaUpdates for: gikei ni netorare ochita tsubaki +2026-01-07 00:29:53,026 - INFO - Updating metadata for: [Kikunosukemaru] Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-07 00:29:53,027 - INFO - Searching metadata for: Kikunosukemaru Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-07 00:29:53,271 - INFO - Fetching metadata from: https://nhentai.net/g/166499/ +2026-01-07 00:29:53,512 - INFO - Updating metadata for: the_sex_life_of_the_tachibanas +2026-01-07 00:29:53,513 - INFO - Searching metadata for: the sex life of the tachibanas +2026-01-07 00:29:53,541 - INFO - Updating metadata for: the_festival_of_summers_lustful_traditions +2026-01-07 00:29:53,541 - INFO - Searching metadata for: the festival of summers lustful traditions +2026-01-07 00:29:53,581 - INFO - Updating metadata for: aggressive_mama +2026-01-07 00:29:53,581 - INFO - Searching metadata for: aggressive mama +2026-01-07 00:29:53,690 - INFO - Searching MangaUpdates for: the sex life of the tachibanas +2026-01-07 00:29:53,724 - INFO - Searching MangaUpdates for: the festival of summers lustful traditions +2026-01-07 00:29:53,752 - INFO - Fetching metadata from: https://nhentai.net/g/467578/ +2026-01-07 00:29:53,959 - INFO - Updating metadata for: [Natsuzo] The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-07 00:29:53,960 - INFO - Searching metadata for: Natsuzo The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-07 00:29:54,083 - INFO - Updating metadata for: jitsu_wa_midara_na_chounyuu_sensei_chapter +2026-01-07 00:29:54,084 - INFO - Searching metadata for: jitsu wa midara na chounyuu sensei chapter +2026-01-07 00:29:54,126 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-07 00:29:54,127 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-07 00:29:54,192 - INFO - Fetching metadata from: https://nhentai.net/g/604150/ +2026-01-07 00:29:54,408 - INFO - Searching MangaUpdates for: jitsu wa midara na chounyuu sensei chapter +2026-01-07 00:29:54,471 - INFO - Fetching metadata from: https://nhentai.net/g/502051/ +2026-01-07 00:29:54,475 - INFO - Updating metadata for: in_a_room_where_you_cant_leave_unless_you_have_sex +2026-01-07 00:29:54,476 - INFO - Searching metadata for: in a room where you cant leave unless you have sex +2026-01-07 00:29:54,689 - INFO - Searching MangaUpdates for: in a room where you cant leave unless you have sex +2026-01-07 00:29:54,694 - INFO - Updating metadata for: can_you_really_use_this_app_to_fuck_different_species +2026-01-07 00:29:54,694 - INFO - Searching metadata for: can you really use this app to fuck different species +2026-01-07 00:29:54,766 - INFO - Updating metadata for: [K8ON] Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 00:29:54,767 - INFO - Searching metadata for: K8ON Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 00:29:54,940 - INFO - Fetching metadata from: https://nhentai.net/g/517152/ +2026-01-07 00:29:55,019 - INFO - Searching metadata for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 00:29:55,263 - INFO - Updating metadata for: cattle_sister +2026-01-07 00:29:55,263 - INFO - Searching metadata for: cattle sister +2026-01-07 00:29:55,266 - INFO - Updating metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-07 00:29:55,267 - INFO - Searching metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-07 00:29:55,284 - INFO - Searching MangaUpdates for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 00:29:55,433 - INFO - Fetching metadata from: https://nhentai.net/g/614951/ +2026-01-07 00:29:55,627 - INFO - Updating metadata for: we_went_overboard_with_our_home_work_this_evening +2026-01-07 00:29:55,627 - INFO - Searching metadata for: we went overboard with our home work this evening +2026-01-07 00:29:55,745 - INFO - Fetching metadata from: https://nhentai.net/g/526048/ +2026-01-07 00:29:55,810 - INFO - Fetching metadata from: https://nhentai.net/g/533599/ +2026-01-07 00:29:55,964 - INFO - Updating metadata for: boku_no_misatan +2026-01-07 00:29:55,965 - INFO - Searching metadata for: boku no misatan +2026-01-07 00:29:56,015 - INFO - Updating metadata for: gumi_chocolate_pine_koma_mangashuu +2026-01-07 00:29:56,021 - INFO - Searching metadata for: gumi chocolate pine koma mangashuu +2026-01-07 00:29:56,114 - INFO - Updating metadata for: Untitled Folder +2026-01-07 00:29:56,114 - INFO - Searching metadata for: Untitled Folder +2026-01-07 00:29:56,164 - INFO - Searching MangaUpdates for: boku no misatan +2026-01-07 00:29:56,252 - INFO - Searching MangaUpdates for: Untitled Folder +2026-01-07 00:29:56,280 - INFO - Fetching metadata from: https://nhentai.net/g/541484/ +2026-01-07 00:29:56,431 - INFO - Updating metadata for: [Wakamatsu] Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-07 00:29:56,432 - INFO - Searching metadata for: Wakamatsu Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-07 00:29:56,537 - INFO - Updating metadata for: temptation_downtime +2026-01-07 00:29:56,538 - INFO - Searching metadata for: temptation downtime +2026-01-07 00:29:56,601 - INFO - Updating metadata for: nozo_nico_don +2026-01-07 00:29:56,601 - INFO - Searching metadata for: nozo nico don +2026-01-07 00:29:56,715 - INFO - Fetching metadata from: https://nhentai.net/g/238204/ +2026-01-07 00:29:56,736 - INFO - Fetching metadata from: https://nhentai.net/g/571054/ +2026-01-07 00:29:56,797 - INFO - Fetching metadata from: https://nhentai.net/g/251101/ +2026-01-07 00:29:57,160 - INFO - Updating metadata for: thats_my_girl +2026-01-07 00:29:57,162 - INFO - Searching metadata for: thats my girl +2026-01-07 00:29:57,163 - INFO - Updating metadata for: welcome_to_greenwood +2026-01-07 00:29:57,167 - INFO - Searching metadata for: welcome to greenwood +2026-01-07 00:29:57,177 - INFO - Updating metadata for: tonari_no_elf_mama +2026-01-07 00:29:57,178 - INFO - Searching metadata for: tonari no elf mama +2026-01-07 00:29:57,296 - INFO - Searching MangaUpdates for: thats my girl +2026-01-07 00:29:57,414 - INFO - Fetching metadata from: https://nhentai.net/g/55621/ +2026-01-07 00:29:57,430 - INFO - Fetching metadata from: https://nhentai.net/g/614016/ +2026-01-07 00:29:57,534 - INFO - Updating metadata for: [Juna Juna Juice] Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-07 00:29:57,534 - INFO - Searching metadata for: Juna Juna Juice Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-07 00:29:57,557 - INFO - Searching metadata for: Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-07 00:29:57,751 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 _ Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-07 00:29:57,752 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-07 00:29:57,760 - INFO - Updating metadata for: passionate_coriander +2026-01-07 00:29:57,761 - INFO - Searching metadata for: passionate coriander +2026-01-07 00:29:57,865 - INFO - Fetching metadata from: https://nhentai.net/g/594305/ +2026-01-07 00:29:57,924 - INFO - Fetching metadata from: https://nhentai.net/g/504728/ +2026-01-07 00:29:58,205 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-07 00:29:58,208 - INFO - Updating metadata for: when_i_confessed_to_the_girl_im_interested_in_i_wasnt_allowed_to_go_out_with_her_but_was_given_the_ok_for_childmaking +2026-01-07 00:29:58,214 - INFO - Searching metadata for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-07 00:29:58,236 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-07 00:29:58,237 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-07 00:29:58,552 - INFO - Searching MangaUpdates for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-07 00:29:58,713 - INFO - Fetching metadata from: https://nhentai.net/g/497921/ +2026-01-07 00:29:58,799 - INFO - Updating metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-07 00:29:58,800 - INFO - Searching metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-07 00:29:58,998 - INFO - Searching MangaUpdates for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-07 00:29:59,003 - INFO - Updating metadata for: big_sister_with_drooping_tits_wants_to_fuck_her_little_brother +2026-01-07 00:29:59,003 - INFO - Searching metadata for: big sister with drooping tits wants to fuck her little brother +2026-01-07 00:29:59,151 - INFO - Updating metadata for: the_mother_of_the_oba_household +2026-01-07 00:29:59,151 - INFO - Searching metadata for: the mother of the oba household +2026-01-07 00:29:59,236 - INFO - Fetching metadata from: https://nhentai.net/g/502879/ +2026-01-07 00:29:59,383 - INFO - Fetching metadata from: https://nhentai.net/g/543837/ +2026-01-07 00:29:59,479 - INFO - Updating metadata for: sister_control +2026-01-07 00:29:59,480 - INFO - Searching metadata for: sister control +2026-01-07 00:29:59,655 - INFO - Updating metadata for: boshi_syndrome +2026-01-07 00:29:59,656 - INFO - Searching metadata for: boshi syndrome +2026-01-07 00:29:59,665 - INFO - Updating metadata for: [UC] Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-07 00:29:59,665 - INFO - Searching metadata for: UC Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-07 00:29:59,703 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-07 00:29:59,812 - INFO - Fetching metadata from: https://nhentai.net/g/586173/ +2026-01-07 00:30:00,086 - INFO - Fetching metadata from: https://nhentai.net/g/399461/ +2026-01-07 00:30:00,093 - INFO - Updating metadata for: a_book_about_using_hypno_to_fuck_my_little_sister +2026-01-07 00:30:00,094 - INFO - Searching metadata for: a book about using hypno to fuck my little sister +2026-01-07 00:30:00,100 - INFO - Updating metadata for: a_trip_back_home +2026-01-07 00:30:00,101 - INFO - Searching metadata for: a trip back home +2026-01-07 00:30:00,345 - INFO - Fetching metadata from: https://nhentai.net/g/241562/ +2026-01-07 00:30:00,355 - INFO - Updating metadata for: [Kudamono Monogatari (Kuroishi Ringo)] Puraibe to Joousama - Private Queen [Eng] +2026-01-07 00:30:00,356 - INFO - Searching metadata for: Kudamono Monogatari (Kuroishi Ringo) Puraibe to Joousama - Private Queen [Eng] +2026-01-07 00:30:00,438 - INFO - Fetching metadata from: https://nhentai.net/g/545892/ +2026-01-07 00:30:00,606 - INFO - Fetching metadata from: https://nhentai.net/g/602699/ +2026-01-07 00:30:00,650 - INFO - Updating metadata for: obaman_aneman_harem +2026-01-07 00:30:00,650 - INFO - Searching metadata for: obaman aneman harem +2026-01-07 00:30:00,654 - INFO - Updating metadata for: moms_body_is_mine_mother_and_son_incest_sex_behind_dads_back +2026-01-07 00:30:00,654 - INFO - Searching metadata for: moms body is mine mother and son incest sex behind dads back +2026-01-07 00:30:00,837 - INFO - Fetching metadata from: https://nhentai.net/g/588648/ +2026-01-07 00:30:00,938 - INFO - Searching MangaUpdates for: moms body is mine mother and son incest sex behind dads back +2026-01-07 00:30:00,948 - INFO - Updating metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-07 00:30:00,949 - INFO - Searching metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-07 00:30:01,149 - INFO - Updating metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-07 00:30:01,149 - INFO - Searching metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-07 00:30:01,229 - INFO - Searching MangaUpdates for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-07 00:30:01,355 - INFO - Searching MangaUpdates for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-07 00:30:01,970 - INFO - Updating metadata for: dysfunctional_family +2026-01-07 00:30:01,970 - INFO - Searching metadata for: dysfunctional family +2026-01-07 00:30:02,156 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-07 00:30:02,528 - INFO - Updating metadata for: pldk +2026-01-07 00:30:02,528 - INFO - Searching metadata for: pldk +2026-01-07 00:30:02,676 - INFO - Searching MangaUpdates for: pldk +2026-01-07 00:30:03,577 - INFO - Updating metadata for: [Hakukoukai (Shiramizu Mizuchi)] Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 00:30:03,578 - INFO - Searching metadata for: Hakukoukai (Shiramizu Mizuchi) Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 00:30:03,840 - INFO - Searching metadata for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 00:30:04,002 - INFO - Updating metadata for: a_sticky_harem_full_of_mother_and_sisters_milk +2026-01-07 00:30:04,003 - INFO - Searching metadata for: a sticky harem full of mother and sisters milk +2026-01-07 00:30:04,046 - INFO - Searching MangaUpdates for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 00:30:04,232 - INFO - Searching MangaUpdates for: a sticky harem full of mother and sisters milk +2026-01-07 00:30:04,560 - INFO - Updating metadata for: Take a break from working to fuck +2026-01-07 00:30:04,560 - INFO - Searching metadata for: Take a break from working to fuck +2026-01-07 00:30:04,817 - INFO - Updating metadata for: [Sakai Hamachi] Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-07 00:30:04,818 - INFO - Searching metadata for: Sakai Hamachi Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-07 00:30:04,863 - INFO - Updating metadata for: [Kazuhiro] InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 00:30:04,863 - INFO - Searching metadata for: Kazuhiro InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 00:30:04,937 - INFO - Searching MangaUpdates for: Take a break from working to fuck +2026-01-07 00:30:05,109 - INFO - Fetching metadata from: https://nhentai.net/g/600615/ +2026-01-07 00:30:05,247 - INFO - Searching metadata for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 00:30:05,349 - INFO - Updating metadata for: cock_that_makes_tomboy_sisters_tap_out +2026-01-07 00:30:05,349 - INFO - Searching metadata for: cock that makes tomboy sisters tap out +2026-01-07 00:30:05,558 - INFO - Fetching metadata from: https://nhentai.net/g/585217/ +2026-01-07 00:30:05,597 - INFO - Searching MangaUpdates for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 00:30:05,752 - INFO - Updating metadata for: big_sis_ayaka +2026-01-07 00:30:05,752 - INFO - Searching metadata for: big sis ayaka +2026-01-07 00:30:05,800 - INFO - Updating metadata for: paipai_mashimashi_gal_bitch +2026-01-07 00:30:05,800 - INFO - Searching metadata for: paipai mashimashi gal bitch +2026-01-07 00:30:05,982 - INFO - Fetching metadata from: https://nhentai.net/g/555058/ +2026-01-07 00:30:06,008 - INFO - Fetching metadata from: https://nhentai.net/g/608897/ +2026-01-07 00:30:06,339 - INFO - Updating metadata for: [Okashi Koujou] That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-07 00:30:06,355 - INFO - Searching metadata for: Okashi Koujou That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-07 00:30:06,433 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge +2026-01-07 00:30:06,444 - INFO - Searching metadata for: big boobs shadowy character takes revenge +2026-01-07 00:30:06,495 - INFO - Updating metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-07 00:30:06,496 - INFO - Searching metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-07 00:30:06,653 - INFO - Fetching metadata from: https://nhentai.net/g/600439/ +2026-01-07 00:30:06,736 - INFO - Fetching metadata from: https://nhentai.net/g/603202/ +2026-01-07 00:30:06,763 - INFO - Fetching metadata from: https://nhentai.net/g/36404/ +2026-01-07 00:30:06,953 - INFO - Updating metadata for: [Shiraishi Nagisa] Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-07 00:30:06,970 - INFO - Searching metadata for: Shiraishi Nagisa Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-07 00:30:06,998 - INFO - Updating metadata for: gal_ga_saimin_kakeyou_to_shitara_kaeriuchi_saremashita +2026-01-07 00:30:06,998 - INFO - Searching metadata for: gal ga saimin kakeyou to shitara kaeriuchi saremashita +2026-01-07 00:30:07,007 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge_chapter_ +2026-01-07 00:30:07,007 - INFO - Searching metadata for: big boobs shadowy character takes revenge chapter +2026-01-07 00:30:07,179 - INFO - Searching MangaUpdates for: big boobs shadowy character takes revenge chapter +2026-01-07 00:30:07,228 - INFO - Fetching metadata from: https://nhentai.net/g/485428/ +2026-01-07 00:30:07,265 - INFO - Fetching metadata from: https://nhentai.net/g/575485/ +2026-01-07 00:30:07,485 - INFO - Updating metadata for: [Juna Juna Juice] Starting tonight Baby bear will become [English] +2026-01-07 00:30:07,486 - INFO - Searching metadata for: Juna Juna Juice Starting tonight Baby bear will become [English] +2026-01-07 00:30:07,488 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 00:30:07,489 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 00:30:07,544 - INFO - Updating metadata for: [Shirono Mahiro] Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-07 00:30:07,544 - INFO - Searching metadata for: Shirono Mahiro Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-07 00:30:07,692 - INFO - Fetching metadata from: https://nhentai.net/g/594307/ +2026-01-07 00:30:07,774 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 00:30:07,797 - INFO - Fetching metadata from: https://nhentai.net/g/184288/ +2026-01-07 00:30:07,930 - INFO - Updating metadata for: 20_years_from_now_you_make_me_a_little_nervous_chapter_1 +2026-01-07 00:30:07,930 - INFO - Searching metadata for: 20 years from now you make me a little nervous chapter 1 +2026-01-07 00:30:08,007 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 00:30:08,013 - INFO - Updating metadata for: [Nacchuushou (Amazon)] Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-07 00:30:08,013 - INFO - Searching metadata for: Nacchuushou (Amazon) Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-07 00:30:08,223 - INFO - Searching MangaUpdates for: 20 years from now you make me a little nervous chapter 1 +2026-01-07 00:30:08,430 - INFO - Fetching metadata from: https://nhentai.net/g/604264/ +2026-01-07 00:30:08,684 - INFO - Updating metadata for: im_his_little_sister_slave +2026-01-07 00:30:08,684 - INFO - Searching metadata for: im his little sister slave +2026-01-07 00:30:08,791 - INFO - Updating metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san _ Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-07 00:30:08,791 - INFO - Searching metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-07 00:30:08,907 - INFO - Searching MangaUpdates for: im his little sister slave +2026-01-07 00:30:08,977 - INFO - Fetching metadata from: https://nhentai.net/g/467602/ +2026-01-07 00:30:08,994 - INFO - Updating metadata for: neteiru_okaasan_o_yaritai_houdai +2026-01-07 00:30:08,995 - INFO - Searching metadata for: neteiru okaasan o yaritai houdai +2026-01-07 00:30:09,198 - INFO - Searching MangaUpdates for: neteiru okaasan o yaritai houdai +2026-01-07 00:30:09,200 - INFO - Updating metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-07 00:30:09,201 - INFO - Searching metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-07 00:30:09,208 - INFO - Updating metadata for: Oretachi,_Kore_Kara_(2024) +2026-01-07 00:30:09,208 - INFO - Searching metadata for: Oretachi, Kore Kara +2026-01-07 00:30:09,381 - INFO - Searching MangaUpdates for: Oretachi, Kore Kara +2026-01-07 00:30:09,396 - INFO - Fetching metadata from: https://nhentai.net/g/599736/ +2026-01-07 00:30:09,613 - INFO - Updating metadata for: the_succubus_army_invasion +2026-01-07 00:30:09,613 - INFO - Searching metadata for: the succubus army invasion +2026-01-07 00:30:09,796 - INFO - Fetching metadata from: https://nhentai.net/g/581332/ +2026-01-07 00:30:09,844 - INFO - Updating metadata for: [Mizu] Jumble Family [English] (Decensored) +2026-01-07 00:30:09,845 - INFO - Searching metadata for: Mizu Jumble Family [English] (Decensored) +2026-01-07 00:30:09,857 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-07 00:30:09,858 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-07 00:30:10,001 - INFO - Updating metadata for: boku_no_misatan_chapter_ +2026-01-07 00:30:10,002 - INFO - Searching metadata for: boku no misatan chapter +2026-01-07 00:30:10,044 - INFO - Fetching metadata from: https://nhentai.net/g/259903/ +2026-01-07 00:30:10,091 - INFO - Fetching metadata from: https://nhentai.net/g/572070/ +2026-01-07 00:30:10,188 - INFO - Searching MangaUpdates for: boku no misatan chapter +2026-01-07 00:30:10,430 - INFO - Updating metadata for: Ebony Family mating practices (english) +2026-01-07 00:30:10,441 - INFO - Searching metadata for: Ebony Family mating practices (english) +2026-01-07 00:30:10,455 - INFO - Updating metadata for: Sunday Funday [AI GENERATED] +2026-01-07 00:30:10,455 - INFO - Searching metadata for: Sunday Funday [AI GENERATED] +2026-01-07 00:30:10,622 - INFO - Fetching metadata from: https://nhentai.net/g/600824/ +2026-01-07 00:30:10,760 - INFO - Fetching metadata from: https://nhentai.net/g/603171/ +2026-01-07 00:30:10,766 - INFO - Updating metadata for: Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-07 00:30:10,766 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-07 00:30:11,008 - INFO - Searching MangaUpdates for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-07 00:30:11,056 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:30:11,057 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:30:11,065 - INFO - Updating metadata for: succubus_pearl_bonus_book +2026-01-07 00:30:11,065 - INFO - Searching metadata for: succubus pearl bonus book +2026-01-07 00:30:11,258 - INFO - Fetching metadata from: https://nhentai.net/g/346344/ +2026-01-07 00:30:11,302 - INFO - Fetching metadata from: https://nhentai.net/g/537310/ +2026-01-07 00:30:11,537 - INFO - Updating metadata for: sibling_switch +2026-01-07 00:30:11,538 - INFO - Searching metadata for: sibling switch +2026-01-07 00:30:11,545 - INFO - Updating metadata for: Furachina_Jukujo_(2021) +2026-01-07 00:30:11,545 - INFO - Searching metadata for: Furachina Jukujo +2026-01-07 00:30:11,730 - INFO - Fetching metadata from: https://nhentai.net/g/469099/ +2026-01-07 00:30:11,767 - INFO - Searching MangaUpdates for: Furachina Jukujo +2026-01-07 00:30:11,980 - INFO - Updating metadata for: my_tall_and_busty_step_sister_gives +2026-01-07 00:30:11,980 - INFO - Searching metadata for: my tall and busty step sister gives +2026-01-07 00:30:11,983 - INFO - Updating metadata for: pantsu_o_haita_dake_nanoni +2026-01-07 00:30:11,983 - INFO - Searching metadata for: pantsu o haita dake nanoni +2026-01-07 00:30:12,098 - INFO - Updating metadata for: Kosmos ga Saita Hi ni Ch +2026-01-07 00:30:12,099 - INFO - Searching metadata for: Kosmos ga Saita Hi ni Ch +2026-01-07 00:30:12,161 - INFO - Fetching metadata from: https://nhentai.net/g/591571/ +2026-01-07 00:30:12,198 - INFO - Fetching metadata from: https://nhentai.net/g/548841/ +2026-01-07 00:30:12,480 - INFO - Fetching metadata from: https://nhentai.net/g/603988/ +2026-01-07 00:30:12,504 - INFO - Updating metadata for: about_sadako_being_stuck_on_the_computer_screen +2026-01-07 00:30:12,504 - INFO - Searching metadata for: about sadako being stuck on the computer screen +2026-01-07 00:30:12,519 - INFO - Updating metadata for: [Shiraishi Nagisa] Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-07 00:30:12,519 - INFO - Searching metadata for: Shiraishi Nagisa Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-07 00:30:12,730 - INFO - Searching MangaUpdates for: about sadako being stuck on the computer screen +2026-01-07 00:30:12,738 - INFO - Updating metadata for: [Airandou] Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-07 00:30:12,743 - INFO - Searching metadata for: Airandou Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-07 00:30:12,777 - INFO - Fetching metadata from: https://nhentai.net/g/407654/ +2026-01-07 00:30:13,031 - INFO - Updating metadata for: gyan_colle +2026-01-07 00:30:13,031 - INFO - Searching metadata for: gyan colle +2026-01-07 00:30:13,106 - INFO - Fetching metadata from: https://nhentai.net/g/590457/ +2026-01-07 00:30:13,217 - INFO - Fetching metadata from: https://nhentai.net/g/611983/ +2026-01-07 00:30:13,386 - INFO - Updating metadata for: when_i_lost_the_use_of_my_arms_my_brother_started +2026-01-07 00:30:13,387 - INFO - Searching metadata for: when i lost the use of my arms my brother started +2026-01-07 00:30:13,460 - INFO - Updating metadata for: oni_no_musume_datte_konkatsu_shitai +2026-01-07 00:30:13,471 - INFO - Searching metadata for: oni no musume datte konkatsu shitai +2026-01-07 00:30:13,517 - INFO - Updating metadata for: didnt_you_know +2026-01-07 00:30:13,518 - INFO - Searching metadata for: didnt you know +2026-01-07 00:30:13,679 - INFO - Fetching metadata from: https://nhentai.net/g/546227/ +2026-01-07 00:30:13,709 - INFO - Searching MangaUpdates for: didnt you know +2026-01-07 00:30:13,783 - INFO - Fetching metadata from: https://nhentai.net/g/342762/ +2026-01-07 00:30:13,923 - INFO - Updating metadata for: sister_ss_short_story +2026-01-07 00:30:13,924 - INFO - Searching metadata for: sister ss short story +2026-01-07 00:30:14,030 - INFO - Updating metadata for: answer_checking +2026-01-07 00:30:14,030 - INFO - Searching metadata for: answer checking +2026-01-07 00:30:14,034 - INFO - Updating metadata for: [Yue] Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-07 00:30:14,035 - INFO - Searching metadata for: Yue Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-07 00:30:14,094 - INFO - Fetching metadata from: https://nhentai.net/g/589411/ +2026-01-07 00:30:14,229 - INFO - Fetching metadata from: https://nhentai.net/g/535244/ +2026-01-07 00:30:14,279 - INFO - Searching MangaUpdates for: answer checking +2026-01-07 00:30:14,369 - INFO - Fetching metadata from: https://nhentai.net/g/603962/ +2026-01-07 00:30:14,377 - INFO - Updating metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC_TRANSLATIONS) +2026-01-07 00:30:14,378 - INFO - Searching metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-07 00:30:14,397 - INFO - Searching metadata for: Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-07 00:30:14,499 - INFO - Searching MangaUpdates for: Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-07 00:30:14,693 - INFO - Searching MangaUpdates for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-07 00:30:14,710 - INFO - Updating metadata for: big_sis_masturbation_life_my_masturbation_right_belongs_to_my_older_step_sisters +2026-01-07 00:30:14,710 - INFO - Searching metadata for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-07 00:30:15,013 - INFO - Searching MangaUpdates for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-07 00:30:15,930 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 00:30:15,930 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 00:30:16,189 - INFO - Updating metadata for: motherly_love +2026-01-07 00:30:16,190 - INFO - Searching metadata for: motherly love +2026-01-07 00:30:16,218 - INFO - Updating metadata for: [Kakinotanehitotsubu (Kakino Nashiko)] Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-07 00:30:16,218 - INFO - Searching metadata for: Kakinotanehitotsubu (Kakino Nashiko) Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-07 00:30:16,338 - INFO - Fetching metadata from: https://nhentai.net/g/406015/ +2026-01-07 00:30:16,419 - INFO - Searching metadata for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 00:30:16,631 - INFO - Fetching metadata from: https://nhentai.net/g/484501/ +2026-01-07 00:30:16,641 - INFO - Updating metadata for: [Satsuki Imonet] Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 00:30:16,641 - INFO - Searching metadata for: Satsuki Imonet Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 00:30:16,722 - INFO - Searching MangaUpdates for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 00:30:16,851 - INFO - Updating metadata for: steamed_bun_kiss +2026-01-07 00:30:16,851 - INFO - Searching metadata for: steamed bun kiss +2026-01-07 00:30:16,945 - INFO - Searching metadata for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 00:30:17,007 - INFO - Fetching metadata from: https://nhentai.net/g/166671/ +2026-01-07 00:30:17,220 - INFO - Updating metadata for: [Pipasuta (Pipa)] Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-07 00:30:17,221 - INFO - Searching metadata for: Pipasuta (Pipa) Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-07 00:30:17,257 - INFO - Searching MangaUpdates for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 00:30:17,437 - INFO - Fetching metadata from: https://nhentai.net/g/572821/ +2026-01-07 00:30:17,478 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:30:17,479 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 00:30:17,648 - INFO - Updating metadata for: madam_complex +2026-01-07 00:30:17,648 - INFO - Searching metadata for: madam complex +2026-01-07 00:30:17,785 - INFO - Fetching metadata from: https://nhentai.net/g/492943/ +2026-01-07 00:30:17,812 - INFO - Fetching metadata from: https://nhentai.net/g/595613/ +2026-01-07 00:30:18,111 - INFO - Updating metadata for: maid_slave_collection +2026-01-07 00:30:18,112 - INFO - Updating metadata for: [Puppukupu (Kawaisaw)] Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 00:30:18,112 - INFO - Searching metadata for: maid slave collection +2026-01-07 00:30:18,113 - INFO - Searching metadata for: Puppukupu (Kawaisaw) Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 00:30:18,163 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-07 00:30:18,163 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-07 00:30:18,320 - INFO - Searching metadata for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 00:30:18,336 - INFO - Fetching metadata from: https://nhentai.net/g/601115/ +2026-01-07 00:30:18,575 - INFO - Searching MangaUpdates for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 00:30:18,632 - INFO - Fetching metadata from: https://nhentai.net/g/412142/ +2026-01-07 00:30:18,895 - INFO - Updating metadata for: lemon_honeymoon +2026-01-07 00:30:18,895 - INFO - Searching metadata for: lemon honeymoon +2026-01-07 00:30:18,903 - INFO - Updating metadata for: Suki Kirai Daisuki. Bangaihen _ Love • Hate • Really Love +2026-01-07 00:30:18,903 - INFO - Searching metadata for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-07 00:30:19,002 - INFO - Updating metadata for: aggressive_mama +2026-01-07 00:30:19,002 - INFO - Searching metadata for: aggressive mama +2026-01-07 00:30:19,054 - INFO - Fetching metadata from: https://nhentai.net/g/524298/ +2026-01-07 00:30:19,079 - INFO - Searching MangaUpdates for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-07 00:30:19,158 - INFO - Fetching metadata from: https://nhentai.net/g/467578/ +2026-01-07 00:30:19,252 - INFO - Updating metadata for: shall_i_get_it_out_for_you_mom +2026-01-07 00:30:19,252 - INFO - Searching metadata for: shall i get it out for you mom +2026-01-07 00:30:19,335 - INFO - Updating metadata for: [Natsuzo] The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-07 00:30:19,335 - INFO - Searching metadata for: Natsuzo The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-07 00:30:19,550 - INFO - Fetching metadata from: https://nhentai.net/g/537397/ +2026-01-07 00:30:19,582 - INFO - Fetching metadata from: https://nhentai.net/g/604150/ +2026-01-07 00:30:19,653 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-07 00:30:19,653 - INFO - Searching metadata for: Ginshio Honpo (Ginen) My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-07 00:30:19,785 - INFO - Updating metadata for: family_plan_toono_suika_chapter +2026-01-07 00:30:19,785 - INFO - Searching metadata for: family plan toono suika chapter +2026-01-07 00:30:19,787 - INFO - Updating metadata for: in_a_room_where_you_cant_leave_unless_you_have_sex +2026-01-07 00:30:19,788 - INFO - Searching metadata for: in a room where you cant leave unless you have sex +2026-01-07 00:30:19,944 - INFO - Searching MangaUpdates for: family plan toono suika chapter +2026-01-07 00:30:19,967 - INFO - Fetching metadata from: https://nhentai.net/g/563890/ +2026-01-07 00:30:20,111 - INFO - Searching MangaUpdates for: in a room where you cant leave unless you have sex +2026-01-07 00:30:20,189 - INFO - Updating metadata for: playing_the_kings_game_with_a_tanned_jk_oneesan +2026-01-07 00:30:20,189 - INFO - Searching metadata for: playing the kings game with a tanned jk oneesan +2026-01-07 00:30:20,214 - INFO - Updating metadata for: temptation_of_big_tits_elder_sister +2026-01-07 00:30:20,214 - INFO - Searching metadata for: temptation of big tits elder sister +2026-01-07 00:30:20,386 - INFO - Searching MangaUpdates for: playing the kings game with a tanned jk oneesan +2026-01-07 00:30:20,406 - INFO - Fetching metadata from: https://nhentai.net/g/512343/ +2026-01-07 00:30:20,611 - INFO - Updating metadata for: musuko_no_tomodachi_incubus_ni_miryou_sareta_yanmama_wa_mesu_ni_naru +2026-01-07 00:30:20,611 - INFO - Searching metadata for: musuko no tomodachi incubus ni miryou sareta yanmama wa mesu ni naru +2026-01-07 00:30:20,775 - INFO - Updating metadata for: cattle_sister +2026-01-07 00:30:20,776 - INFO - Searching metadata for: cattle sister +2026-01-07 00:30:20,946 - INFO - Fetching metadata from: https://nhentai.net/g/521491/ +2026-01-07 00:30:20,999 - INFO - Fetching metadata from: https://nhentai.net/g/614951/ +2026-01-07 00:30:21,073 - INFO - Updating metadata for: 7days_toono_esuke +2026-01-07 00:30:21,073 - INFO - Searching metadata for: 7days toono esuke +2026-01-07 00:30:21,251 - INFO - Fetching metadata from: https://nhentai.net/g/575052/ +2026-01-07 00:30:21,276 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 00:30:21,276 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 00:30:21,291 - INFO - Updating metadata for: we_went_overboard_with_our_home_work_this_evening +2026-01-07 00:30:21,291 - INFO - Searching metadata for: we went overboard with our home work this evening +2026-01-07 00:30:21,552 - INFO - Fetching metadata from: https://nhentai.net/g/533599/ +2026-01-07 00:30:21,571 - INFO - Searching metadata for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 00:30:21,580 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-07 00:30:21,580 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-07 00:30:21,593 - INFO - Searching MangaUpdates for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 00:30:21,605 - INFO - Searching metadata for: Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-07 00:30:21,686 - INFO - Searching MangaUpdates for: Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-07 00:30:21,804 - INFO - Updating metadata for: Untitled Folder +2026-01-07 00:30:21,804 - INFO - Searching metadata for: Untitled Folder +2026-01-07 00:30:21,966 - INFO - Searching MangaUpdates for: Untitled Folder +2026-01-07 00:30:22,521 - INFO - Updating metadata for: jukujo_sentai_paiters_chapter +2026-01-07 00:30:22,521 - INFO - Searching metadata for: jukujo sentai paiters chapter +2026-01-07 00:30:22,649 - INFO - Updating metadata for: nozo_nico_don +2026-01-07 00:30:22,650 - INFO - Searching metadata for: nozo nico don +2026-01-07 00:30:22,756 - INFO - Searching MangaUpdates for: jukujo sentai paiters chapter +2026-01-07 00:30:22,795 - INFO - Updating metadata for: Sex_With_Many_Mamas_(2016) +2026-01-07 00:30:22,796 - INFO - Searching metadata for: Sex With Many Mamas +2026-01-07 00:30:22,843 - INFO - Fetching metadata from: https://nhentai.net/g/251101/ +2026-01-07 00:30:23,039 - INFO - Searching MangaUpdates for: Sex With Many Mamas +2026-01-07 00:30:23,053 - INFO - Updating metadata for: ane_to_kanojo_to_hamedori_3p_shitemita +2026-01-07 00:30:23,053 - INFO - Searching metadata for: ane to kanojo to hamedori 3p shitemita +2026-01-07 00:30:23,120 - INFO - Updating metadata for: tonari_no_elf_mama +2026-01-07 00:30:23,121 - INFO - Searching metadata for: tonari no elf mama +2026-01-07 00:30:23,263 - INFO - Searching MangaUpdates for: ane to kanojo to hamedori 3p shitemita +2026-01-07 00:30:23,314 - INFO - Updating metadata for: [Kurogane Kenn] Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-07 00:30:23,314 - INFO - Searching metadata for: Kurogane Kenn Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-07 00:30:23,474 - INFO - Fetching metadata from: https://nhentai.net/g/614016/ +2026-01-07 00:30:23,707 - INFO - Fetching metadata from: https://nhentai.net/g/598681/ +2026-01-07 00:30:23,753 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 _ Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-07 00:30:23,753 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-07 00:30:23,767 - INFO - Updating metadata for: ogre_girl_tades_favorite_things +2026-01-07 00:30:23,767 - INFO - Searching metadata for: ogre girl tades favorite things +2026-01-07 00:30:23,959 - INFO - Searching MangaUpdates for: ogre girl tades favorite things +2026-01-07 00:30:23,965 - INFO - Updating metadata for: oneechans_toy +2026-01-07 00:30:23,965 - INFO - Searching metadata for: oneechans toy +2026-01-07 00:30:23,995 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-07 00:30:24,124 - INFO - Searching MangaUpdates for: oneechans toy +2026-01-07 00:30:24,410 - INFO - Updating metadata for: [Izayoi no Kiki] Incest Room [English] [Tigoris Translates] +2026-01-07 00:30:24,411 - INFO - Searching metadata for: Izayoi no Kiki Incest Room [English] [Tigoris Translates] +2026-01-07 00:30:24,623 - INFO - Fetching metadata from: https://nhentai.net/g/615902/ +2026-01-07 00:30:24,771 - INFO - Updating metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-07 00:30:24,771 - INFO - Searching metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-07 00:30:24,907 - INFO - Updating metadata for: trap_shiki_hunting +2026-01-07 00:30:24,907 - INFO - Searching metadata for: trap shiki hunting +2026-01-07 00:30:25,016 - INFO - Searching MangaUpdates for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-07 00:30:25,021 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-07 00:30:25,021 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-07 00:30:25,072 - INFO - Searching MangaUpdates for: trap shiki hunting +2026-01-07 00:30:25,298 - INFO - Fetching metadata from: https://nhentai.net/g/519770/ +2026-01-07 00:30:25,538 - INFO - Updating metadata for: hetappi_whiteday +2026-01-07 00:30:25,539 - INFO - Searching metadata for: hetappi whiteday +2026-01-07 00:30:25,547 - INFO - Updating metadata for: when_dad_and_mom_arent_home +2026-01-07 00:30:25,547 - INFO - Searching metadata for: when dad and mom arent home +2026-01-07 00:30:25,702 - INFO - Searching MangaUpdates for: hetappi whiteday +2026-01-07 00:30:25,751 - INFO - Searching MangaUpdates for: when dad and mom arent home +2026-01-07 00:30:25,769 - INFO - Updating metadata for: boshi_syndrome +2026-01-07 00:30:25,770 - INFO - Searching metadata for: boshi syndrome +2026-01-07 00:30:25,936 - INFO - Fetching metadata from: https://nhentai.net/g/586173/ +2026-01-07 00:30:26,162 - INFO - Updating metadata for: a_trip_back_home +2026-01-07 00:30:26,162 - INFO - Searching metadata for: a trip back home +2026-01-07 00:30:26,176 - INFO - Updating metadata for: family_control +2026-01-07 00:30:26,177 - INFO - Searching metadata for: family control +2026-01-07 00:30:26,387 - INFO - Fetching metadata from: https://nhentai.net/g/619340/ +2026-01-07 00:30:26,412 - INFO - Fetching metadata from: https://nhentai.net/g/241562/ +2026-01-07 00:30:26,537 - INFO - Updating metadata for: succubus_kingdom +2026-01-07 00:30:26,537 - INFO - Searching metadata for: succubus kingdom +2026-01-07 00:30:26,708 - INFO - Fetching metadata from: https://nhentai.net/g/614436/ +2026-01-07 00:30:26,712 - INFO - Updating metadata for: a_story_of_my_oneesan_who_loves_me_too_much +2026-01-07 00:30:26,712 - INFO - Searching metadata for: a story of my oneesan who loves me too much +2026-01-07 00:30:26,715 - INFO - Updating metadata for: obaman_aneman_harem +2026-01-07 00:30:26,716 - INFO - Searching metadata for: obaman aneman harem +2026-01-07 00:30:26,894 - INFO - Fetching metadata from: https://nhentai.net/g/588648/ +2026-01-07 00:30:27,111 - INFO - Searching MangaUpdates for: a story of my oneesan who loves me too much +2026-01-07 00:30:27,276 - INFO - Updating metadata for: liko_the_mommy_pokemon +2026-01-07 00:30:27,277 - INFO - Searching metadata for: liko the mommy pokemon +2026-01-07 00:30:27,286 - INFO - Updating metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-07 00:30:27,286 - INFO - Searching metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-07 00:30:27,480 - INFO - Searching MangaUpdates for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-07 00:30:27,503 - INFO - Searching MangaUpdates for: liko the mommy pokemon +2026-01-07 00:30:28,496 - INFO - Updating metadata for: anemone_yuusuke_chapter_1x +2026-01-07 00:30:28,497 - INFO - Searching metadata for: anemone yuusuke chapter 1x +2026-01-07 00:30:28,658 - INFO - Searching MangaUpdates for: anemone yuusuke chapter 1x +2026-01-07 00:30:28,891 - INFO - Updating metadata for: FireShot +2026-01-07 00:30:28,892 - INFO - Searching metadata for: FireShot +2026-01-07 00:30:28,942 - INFO - Updating metadata for: Take a break from working to fuck +2026-01-07 00:30:28,943 - INFO - Searching metadata for: Take a break from working to fuck +2026-01-07 00:30:29,056 - INFO - Searching MangaUpdates for: FireShot +2026-01-07 00:30:29,117 - INFO - Updating metadata for: [Shirono Mahiro] Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-07 00:30:29,117 - INFO - Searching metadata for: Shirono Mahiro Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-07 00:30:29,266 - INFO - Updating metadata for: getting_along_well_with_my_sister +2026-01-07 00:30:29,267 - INFO - Searching metadata for: getting along well with my sister +2026-01-07 00:30:29,344 - INFO - Searching MangaUpdates for: Take a break from working to fuck +2026-01-07 00:30:29,383 - INFO - Fetching metadata from: https://nhentai.net/g/254693/ +2026-01-07 00:30:29,438 - INFO - Fetching metadata from: https://nhentai.net/g/567863/ +2026-01-07 00:30:29,892 - INFO - Updating metadata for: hypnosis_satisfaction +2026-01-07 00:30:29,892 - INFO - Searching metadata for: hypnosis satisfaction +2026-01-07 00:30:29,899 - INFO - Updating metadata for: paipai_mashimashi_gal_bitch +2026-01-07 00:30:29,900 - INFO - Searching metadata for: paipai mashimashi gal bitch +2026-01-07 00:30:29,903 - INFO - Updating metadata for: [Itaba Hiroshi] Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-07 00:30:29,904 - INFO - Searching metadata for: Itaba Hiroshi Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-07 00:30:30,047 - INFO - Searching MangaUpdates for: hypnosis satisfaction +2026-01-07 00:30:30,075 - INFO - Fetching metadata from: https://nhentai.net/g/555058/ +2026-01-07 00:30:30,090 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-07 00:30:30,432 - INFO - Updating metadata for: [Okashi Koujou] That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-07 00:30:30,433 - INFO - Searching metadata for: Okashi Koujou That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-07 00:30:30,475 - INFO - Updating metadata for: [Shirono Mahiro] Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 00:30:30,475 - INFO - Searching metadata for: Shirono Mahiro Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 00:30:30,560 - INFO - Updating metadata for: otto_no_tame_no_ranshi_o_tanin_no_seishi +2026-01-07 00:30:30,560 - INFO - Searching metadata for: otto no tame no ranshi o tanin no seishi +2026-01-07 00:30:30,664 - INFO - Searching metadata for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 00:30:30,845 - INFO - Fetching metadata from: https://nhentai.net/g/551507/ +2026-01-07 00:30:30,875 - INFO - Searching MangaUpdates for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 00:30:30,906 - INFO - Fetching metadata from: https://nhentai.net/g/603202/ +2026-01-07 00:30:31,055 - INFO - Updating metadata for: [Milkdou Shoukai (Milk Koubou)] Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-07 00:30:31,055 - INFO - Searching metadata for: Milkdou Shoukai (Milk Koubou) Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-07 00:30:31,123 - INFO - Updating metadata for: gal_ga_saimin_kakeyou_to_shitara_kaeriuchi_saremashita +2026-01-07 00:30:31,123 - INFO - Searching metadata for: gal ga saimin kakeyou to shitara kaeriuchi saremashita +2026-01-07 00:30:31,239 - INFO - Updating metadata for: twentyfour_seven_sex_with_my_stepsister +2026-01-07 00:30:31,240 - INFO - Searching metadata for: twentyfour seven sex with my stepsister +2026-01-07 00:30:31,395 - INFO - Fetching metadata from: https://nhentai.net/g/575485/ +2026-01-07 00:30:31,415 - INFO - Searching MangaUpdates for: twentyfour seven sex with my stepsister +2026-01-07 00:30:31,441 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-07 00:30:31,649 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 00:30:31,649 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 00:30:31,722 - INFO - Updating metadata for: hikki_mother_fucker +2026-01-07 00:30:31,722 - INFO - Searching metadata for: hikki mother fucker +2026-01-07 00:30:31,795 - INFO - Updating metadata for: summer_stay_in +2026-01-07 00:30:31,795 - INFO - Searching metadata for: summer stay in +2026-01-07 00:30:31,947 - INFO - Fetching metadata from: https://nhentai.net/g/287208/ +2026-01-07 00:30:31,975 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 00:30:32,025 - INFO - Fetching metadata from: https://nhentai.net/g/549172/ +2026-01-07 00:30:32,159 - INFO - Updating metadata for: meaty_minxes +2026-01-07 00:30:32,159 - INFO - Searching metadata for: meaty minxes +2026-01-07 00:30:32,231 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 00:30:32,243 - INFO - Updating metadata for: the_romantic_ritual_with_fox_goddess_yuukosan_chapter +2026-01-07 00:30:32,243 - INFO - Searching metadata for: the romantic ritual with fox goddess yuukosan chapter +2026-01-07 00:30:32,313 - INFO - Searching MangaUpdates for: meaty minxes +2026-01-07 00:30:32,421 - INFO - Searching MangaUpdates for: the romantic ritual with fox goddess yuukosan chapter +2026-01-07 00:30:32,683 - INFO - Updating metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san _ Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-07 00:30:32,684 - INFO - Searching metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-07 00:30:32,857 - INFO - Updating metadata for: [Zero no Mono] Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-07 00:30:32,857 - INFO - Searching metadata for: Zero no Mono Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-07 00:30:32,871 - INFO - Fetching metadata from: https://nhentai.net/g/467602/ +2026-01-07 00:30:33,088 - INFO - Updating metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-07 00:30:33,089 - INFO - Searching metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-07 00:30:33,125 - INFO - Fetching metadata from: https://nhentai.net/g/342164/ +2026-01-07 00:30:33,150 - INFO - Updating metadata for: ookii_gimai +2026-01-07 00:30:33,150 - INFO - Searching metadata for: ookii gimai +2026-01-07 00:30:33,299 - INFO - Fetching metadata from: https://nhentai.net/g/599736/ +2026-01-07 00:30:33,364 - INFO - Fetching metadata from: https://nhentai.net/g/555115/ +2026-01-07 00:30:33,412 - INFO - Updating metadata for: mob_reipu +2026-01-07 00:30:33,413 - INFO - Searching metadata for: mob reipu +2026-01-07 00:30:33,530 - INFO - Updating metadata for: the_succubus_army_invasion +2026-01-07 00:30:33,530 - INFO - Searching metadata for: the succubus army invasion +2026-01-07 00:30:33,607 - INFO - Fetching metadata from: https://nhentai.net/g/311650/ +2026-01-07 00:30:33,612 - INFO - Updating metadata for: sleepwalk_sex_with_your_crazy_stepbrother +2026-01-07 00:30:33,613 - INFO - Searching metadata for: sleepwalk sex with your crazy stepbrother +2026-01-07 00:30:33,727 - INFO - Fetching metadata from: https://nhentai.net/g/581332/ +2026-01-07 00:30:33,821 - INFO - Fetching metadata from: https://nhentai.net/g/545786/ +2026-01-07 00:30:33,847 - INFO - Updating metadata for: dosukebe_youkai_midaraga_no_goshujinsama +2026-01-07 00:30:33,847 - INFO - Searching metadata for: dosukebe youkai midaraga no goshujinsama +2026-01-07 00:30:34,092 - INFO - Searching MangaUpdates for: dosukebe youkai midaraga no goshujinsama +2026-01-07 00:30:34,263 - INFO - Updating metadata for: boku_no_misatan_chapter_ +2026-01-07 00:30:34,263 - INFO - Searching metadata for: boku no misatan chapter +2026-01-07 00:30:34,269 - INFO - Updating metadata for: [Shirono Mahiro] Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 00:30:34,269 - INFO - Searching metadata for: Shirono Mahiro Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 00:30:34,458 - INFO - Searching MangaUpdates for: boku no misatan chapter +2026-01-07 00:30:34,548 - INFO - Searching metadata for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 00:30:34,610 - INFO - Updating metadata for: [Tobe] Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-07 00:30:34,611 - INFO - Searching metadata for: Tobe Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-07 00:30:34,734 - INFO - Searching MangaUpdates for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 00:30:34,891 - INFO - Fetching metadata from: https://nhentai.net/g/603385/ +2026-01-07 00:30:34,902 - INFO - Updating metadata for: Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-07 00:30:34,902 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-07 00:30:35,107 - INFO - Searching MangaUpdates for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-07 00:30:35,113 - INFO - Updating metadata for: selfish_boyfriend_and_the_gentle_girlfriend +2026-01-07 00:30:35,114 - INFO - Searching metadata for: selfish boyfriend and the gentle girlfriend +2026-01-07 00:30:35,115 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-07 00:30:35,116 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-07 00:30:35,318 - INFO - Fetching metadata from: https://nhentai.net/g/257734/ +2026-01-07 00:30:35,396 - INFO - Fetching metadata from: https://nhentai.net/g/600993/ +2026-01-07 00:30:35,540 - INFO - Updating metadata for: [NT Labo (NT Robo)] Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-07 00:30:35,541 - INFO - Searching metadata for: NT Labo (NT Robo) Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-07 00:30:35,600 - INFO - Updating metadata for: my_tall_and_busty_step_sister_gives +2026-01-07 00:30:35,600 - INFO - Searching metadata for: my tall and busty step sister gives +2026-01-07 00:30:35,811 - INFO - Fetching metadata from: https://nhentai.net/g/591571/ +2026-01-07 00:30:35,815 - INFO - Updating metadata for: thermometer_boy_measuring_beast +2026-01-07 00:30:35,815 - INFO - Searching metadata for: thermometer boy measuring beast +2026-01-07 00:30:35,869 - INFO - Fetching metadata from: https://nhentai.net/g/261648/ +2026-01-07 00:30:36,035 - INFO - Searching MangaUpdates for: thermometer boy measuring beast +2026-01-07 00:30:36,187 - INFO - Updating metadata for: about_sadako_being_stuck_on_the_computer_screen +2026-01-07 00:30:36,187 - INFO - Searching metadata for: about sadako being stuck on the computer screen +2026-01-07 00:30:36,191 - INFO - Updating metadata for: until_my_mother_in_law_is_pregnant +2026-01-07 00:30:36,192 - INFO - Searching metadata for: until my mother in law is pregnant +2026-01-07 00:30:36,386 - INFO - Searching MangaUpdates for: about sadako being stuck on the computer screen +2026-01-07 00:30:36,399 - INFO - Updating metadata for: broconflict +2026-01-07 00:30:36,400 - INFO - Searching metadata for: broconflict +2026-01-07 00:30:36,494 - INFO - Fetching metadata from: https://nhentai.net/g/329242/ +2026-01-07 00:30:36,548 - INFO - Searching MangaUpdates for: broconflict +2026-01-07 00:30:36,792 - INFO - Updating metadata for: my_little_sisters_are_slutty_orcs +2026-01-07 00:30:36,793 - INFO - Searching metadata for: my little sisters are slutty orcs +2026-01-07 00:30:36,796 - INFO - Updating metadata for: when_i_lost_the_use_of_my_arms_my_brother_started +2026-01-07 00:30:36,796 - INFO - Searching metadata for: when i lost the use of my arms my brother started +2026-01-07 00:30:36,798 - INFO - Updating metadata for: grand_discovery_of_kink +2026-01-07 00:30:36,798 - INFO - Searching metadata for: grand discovery of kink +2026-01-07 00:30:36,956 - INFO - Searching MangaUpdates for: grand discovery of kink +2026-01-07 00:30:37,047 - INFO - Fetching metadata from: https://nhentai.net/g/475987/ +2026-01-07 00:30:37,105 - INFO - Fetching metadata from: https://nhentai.net/g/546227/ +2026-01-07 00:30:37,184 - INFO - Updating metadata for: happy_life_amagami +2026-01-07 00:30:37,185 - INFO - Searching metadata for: happy life amagami +2026-01-07 00:30:37,260 - INFO - Updating metadata for: [Merenge Tenmondai (Kugurofu)] D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-07 00:30:37,260 - INFO - Searching metadata for: Merenge Tenmondai (Kugurofu) D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-07 00:30:37,338 - INFO - Updating metadata for: sister_ss_short_story +2026-01-07 00:30:37,338 - INFO - Searching metadata for: sister ss short story +2026-01-07 00:30:37,367 - INFO - Searching MangaUpdates for: happy life amagami +2026-01-07 00:30:37,532 - INFO - Fetching metadata from: https://nhentai.net/g/589411/ +2026-01-07 00:30:37,619 - INFO - Fetching metadata from: https://nhentai.net/g/620725/ +2026-01-07 00:30:37,755 - INFO - Updating metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC_TRANSLATIONS) +2026-01-07 00:30:37,755 - INFO - Searching metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-07 00:30:37,816 - INFO - Updating metadata for: one_shot_a_summer +2026-01-07 00:30:37,816 - INFO - Searching metadata for: one shot a summer +2026-01-07 00:30:37,900 - INFO - Updating metadata for: [Nishikawa Kou] Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-07 00:30:37,900 - INFO - Searching metadata for: Nishikawa Kou Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-07 00:30:38,020 - INFO - Searching MangaUpdates for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-07 00:30:38,074 - INFO - Fetching metadata from: https://nhentai.net/g/500042/ +2026-01-07 00:30:38,114 - INFO - Searching MangaUpdates for: one shot a summer +2026-01-07 00:30:38,217 - INFO - Fetching metadata from: https://nhentai.net/g/600838/ +2026-01-07 00:30:38,454 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 00:30:38,455 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 00:30:38,486 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 00:30:38,580 - INFO - Updating metadata for: motherly_love +2026-01-07 00:30:38,581 - INFO - Searching metadata for: motherly love +2026-01-07 00:30:38,661 - INFO - Updating metadata for: bath_time_with_big_sis +2026-01-07 00:30:38,661 - INFO - Searching metadata for: bath time with big sis +2026-01-07 00:30:38,760 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 00:30:38,774 - INFO - Fetching metadata from: https://nhentai.net/g/406015/ +2026-01-07 00:30:39,011 - INFO - Fetching metadata from: https://nhentai.net/g/596905/ +2026-01-07 00:30:39,042 - INFO - Updating metadata for: [Satsuki Imonet] Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 00:30:39,043 - INFO - Searching metadata for: Satsuki Imonet Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 00:30:39,256 - INFO - Updating metadata for: family_x +2026-01-07 00:30:39,256 - INFO - Searching metadata for: family x +2026-01-07 00:30:39,287 - INFO - Searching MangaUpdates for: family x +2026-01-07 00:30:39,373 - INFO - Searching metadata for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 00:30:39,399 - INFO - Updating metadata for: Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love +2026-01-07 00:30:39,400 - INFO - Searching metadata for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-07 00:30:39,640 - INFO - Searching MangaUpdates for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-07 00:30:39,645 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-07 00:30:39,646 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-07 00:30:39,755 - INFO - Searching MangaUpdates for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 00:30:39,968 - INFO - Fetching metadata from: https://nhentai.net/g/460957/ +2026-01-07 00:30:40,217 - INFO - Updating metadata for: [Chotto B-sen] A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-07 00:30:40,217 - INFO - Searching metadata for: Chotto B-sen A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-07 00:30:40,632 - INFO - Updating metadata for: my_sister_uses_my_trash_as_masturbation_material +2026-01-07 00:30:40,633 - INFO - Searching metadata for: my sister uses my trash as masturbation material +2026-01-07 00:30:40,700 - INFO - Fetching metadata from: https://nhentai.net/g/473274/ +2026-01-07 00:30:40,772 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-07 00:30:40,773 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-07 00:30:40,834 - INFO - Fetching metadata from: https://nhentai.net/g/520519/ +2026-01-07 00:30:41,060 - INFO - Fetching metadata from: https://nhentai.net/g/412142/ +2026-01-07 00:30:41,075 - INFO - Updating metadata for: haunted_property_chapter +2026-01-07 00:30:41,075 - INFO - Searching metadata for: haunted property chapter +2026-01-07 00:30:41,080 - INFO - Updating metadata for: [Pino] Boin [English] +2026-01-07 00:30:41,080 - INFO - Searching metadata for: Pino Boin [English] +2026-01-07 00:30:41,235 - INFO - Fetching metadata from: https://nhentai.net/g/595922/ +2026-01-07 00:30:41,287 - INFO - Searching MangaUpdates for: haunted property chapter +2026-01-07 00:30:41,359 - INFO - Updating metadata for: Suki Kirai Daisuki. Bangaihen _ Love • Hate • Really Love +2026-01-07 00:30:41,359 - INFO - Searching metadata for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-07 00:30:41,539 - INFO - Searching MangaUpdates for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-07 00:30:41,545 - INFO - Updating metadata for: future_detective +2026-01-07 00:30:41,545 - INFO - Searching metadata for: future detective +2026-01-07 00:30:41,563 - INFO - Updating metadata for: imouto_aoba +2026-01-07 00:30:41,563 - INFO - Searching metadata for: imouto aoba +2026-01-07 00:30:41,703 - INFO - Fetching metadata from: https://nhentai.net/g/170580/ +2026-01-07 00:30:41,723 - INFO - Searching MangaUpdates for: imouto aoba +2026-01-07 00:30:41,918 - INFO - Updating metadata for: what_the_mother_does_for_the_sake_of_the_son +2026-01-07 00:30:41,919 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-07 00:30:41,919 - INFO - Searching metadata for: what the mother does for the sake of the son +2026-01-07 00:30:41,919 - INFO - Searching metadata for: Ginshio Honpo (Ginen) My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-07 00:30:41,952 - INFO - Updating metadata for: onehundred_my_older_sister_who_is_sick_after_illness +2026-01-07 00:30:41,953 - INFO - Searching metadata for: onehundred my older sister who is sick after illness +2026-01-07 00:30:42,137 - INFO - Searching MangaUpdates for: onehundred my older sister who is sick after illness +2026-01-07 00:30:42,186 - INFO - Fetching metadata from: https://nhentai.net/g/532249/ +2026-01-07 00:30:42,266 - INFO - Fetching metadata from: https://nhentai.net/g/563890/ +2026-01-07 00:30:42,389 - INFO - Updating metadata for: [Tawara Hiryuu] Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 00:30:42,390 - INFO - Searching metadata for: Tawara Hiryuu Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 00:30:42,471 - INFO - Updating metadata for: playing_the_kings_game_with_a_tanned_jk_oneesan +2026-01-07 00:30:42,471 - INFO - Searching metadata for: playing the kings game with a tanned jk oneesan +2026-01-07 00:30:42,553 - INFO - Updating metadata for: that_person_and_my_queen_special_edition +2026-01-07 00:30:42,554 - INFO - Searching metadata for: that person and my queen special edition +2026-01-07 00:30:42,627 - INFO - Searching metadata for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 00:30:42,694 - INFO - Searching MangaUpdates for: playing the kings game with a tanned jk oneesan +2026-01-07 00:30:42,800 - INFO - Fetching metadata from: https://nhentai.net/g/600892/ +2026-01-07 00:30:42,924 - INFO - Searching MangaUpdates for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 00:30:43,020 - INFO - Updating metadata for: delima +2026-01-07 00:30:43,021 - INFO - Searching metadata for: delima +2026-01-07 00:30:43,203 - INFO - Fetching metadata from: https://nhentai.net/g/426364/ +2026-01-07 00:30:43,597 - INFO - Updating metadata for: that_bitchy_boss_is_my_fuck_buddy +2026-01-07 00:30:43,597 - INFO - Searching metadata for: that bitchy boss is my fuck buddy +2026-01-07 00:30:43,709 - INFO - Updating metadata for: 7days_toono_esuke +2026-01-07 00:30:43,709 - INFO - Searching metadata for: 7days toono esuke +2026-01-07 00:30:43,804 - INFO - Fetching metadata from: https://nhentai.net/g/577154/ +2026-01-07 00:30:43,889 - INFO - Fetching metadata from: https://nhentai.net/g/575052/ +2026-01-07 00:30:44,175 - INFO - Updating metadata for: Niku Benki Kanojo no Usui-san _ 육변기 여친의 우스이 양 +2026-01-07 00:30:44,175 - INFO - Searching metadata for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-07 00:30:44,182 - INFO - Updating metadata for: gifu_to_shimai_no_kizuna +2026-01-07 00:30:44,182 - INFO - Searching metadata for: gifu to shimai no kizuna +2026-01-07 00:30:44,188 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-07 00:30:44,188 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-07 00:30:44,417 - INFO - Searching MangaUpdates for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-07 00:30:44,432 - INFO - Fetching metadata from: https://nhentai.net/g/97406/ +2026-01-07 00:30:44,518 - INFO - Fetching metadata from: https://nhentai.net/g/603877/ +2026-01-07 00:30:44,629 - INFO - Updating metadata for: omae_no_you_na_maou_ga_iru_kai +2026-01-07 00:30:44,629 - INFO - Searching metadata for: omae no you na maou ga iru kai +2026-01-07 00:30:44,754 - INFO - Updating metadata for: Sex_With_Many_Mamas_(2016) +2026-01-07 00:30:44,754 - INFO - Searching metadata for: Sex With Many Mamas +2026-01-07 00:30:44,881 - INFO - Updating metadata for: a_slutty_old_lady_will_tell_how_to_make_her_slutty_daughter_fall_for_you +2026-01-07 00:30:44,881 - INFO - Searching metadata for: a slutty old lady will tell how to make her slutty daughter fall for you +2026-01-07 00:30:44,930 - INFO - Searching MangaUpdates for: Sex With Many Mamas +2026-01-07 00:30:44,952 - INFO - Searching MangaUpdates for: omae no you na maou ga iru kai +2026-01-07 00:30:45,215 - INFO - Fetching metadata from: https://nhentai.net/g/393878/ +2026-01-07 00:30:45,377 - INFO - Updating metadata for: [Kurogane Kenn] Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-07 00:30:45,377 - INFO - Searching metadata for: Kurogane Kenn Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-07 00:30:45,473 - INFO - Updating metadata for: erotic_teacher_desperately +2026-01-07 00:30:45,473 - INFO - Searching metadata for: erotic teacher desperately +2026-01-07 00:30:45,559 - INFO - Updating metadata for: if_seems_like_everyone_except_me_has_lost_their_concept_of_eroticism +2026-01-07 00:30:45,559 - INFO - Searching metadata for: if seems like everyone except me has lost their concept of eroticism +2026-01-07 00:30:45,636 - INFO - Fetching metadata from: https://nhentai.net/g/170003/ +2026-01-07 00:30:45,712 - INFO - Fetching metadata from: https://nhentai.net/g/598681/ +2026-01-07 00:30:45,761 - INFO - Searching MangaUpdates for: if seems like everyone except me has lost their concept of eroticism +2026-01-07 00:30:45,830 - INFO - Updating metadata for: [36p] Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-07 00:30:45,830 - INFO - Searching metadata for: 36p Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-07 00:30:45,930 - INFO - Updating metadata for: oneechans_toy +2026-01-07 00:30:45,930 - INFO - Searching metadata for: oneechans toy +2026-01-07 00:30:46,037 - INFO - Fetching metadata from: https://nhentai.net/g/596901/ +2026-01-07 00:30:46,084 - INFO - Searching MangaUpdates for: oneechans toy +2026-01-07 00:30:46,167 - INFO - Updating metadata for: oneechan_no_dokusho_jijou +2026-01-07 00:30:46,168 - INFO - Searching metadata for: oneechan no dokusho jijou +2026-01-07 00:30:46,327 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-07 00:30:46,327 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-07 00:30:46,332 - INFO - Updating metadata for: the_housewives_of_the_luxury_apartment_are_to_dissatisfied_with_their_desires +2026-01-07 00:30:46,343 - INFO - Searching metadata for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-07 00:30:46,359 - INFO - Searching MangaUpdates for: oneechan no dokusho jijou +2026-01-07 00:30:46,620 - INFO - Searching MangaUpdates for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-07 00:30:46,674 - INFO - Fetching metadata from: https://nhentai.net/g/519770/ +2026-01-07 00:30:46,897 - INFO - Updating metadata for: when_dad_and_mom_arent_home +2026-01-07 00:30:46,897 - INFO - Searching metadata for: when dad and mom arent home +2026-01-07 00:30:47,027 - INFO - Updating metadata for: what_friend_do +2026-01-07 00:30:47,027 - INFO - Searching metadata for: what friend do +2026-01-07 00:30:47,087 - INFO - Searching MangaUpdates for: when dad and mom arent home +2026-01-07 00:30:47,214 - INFO - Fetching metadata from: https://nhentai.net/g/601381/ +2026-01-07 00:30:47,409 - INFO - Updating metadata for: surrogacy_the_case_of_yuka_shirakawa +2026-01-07 00:30:47,410 - INFO - Searching metadata for: surrogacy the case of yuka shirakawa +2026-01-07 00:30:47,418 - INFO - Updating metadata for: kinyoku_ake_no_kyoudai_kankei +2026-01-07 00:30:47,418 - INFO - Searching metadata for: kinyoku ake no kyoudai kankei +2026-01-07 00:30:47,448 - INFO - Updating metadata for: succubus_kingdom +2026-01-07 00:30:47,448 - INFO - Searching metadata for: succubus kingdom +2026-01-07 00:30:47,623 - INFO - Searching MangaUpdates for: kinyoku ake no kyoudai kankei +2026-01-07 00:30:47,633 - INFO - Fetching metadata from: https://nhentai.net/g/549276/ +2026-01-07 00:30:47,682 - INFO - Fetching metadata from: https://nhentai.net/g/614436/ +2026-01-07 00:30:48,148 - INFO - Updating metadata for: liko_the_mommy_pokemon +2026-01-07 00:30:48,149 - INFO - Searching metadata for: liko the mommy pokemon +2026-01-07 00:30:48,149 - INFO - Updating metadata for: [Yue] Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 00:30:48,152 - INFO - Searching metadata for: Yue Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 00:30:48,340 - INFO - Searching MangaUpdates for: liko the mommy pokemon +2026-01-07 00:30:48,520 - INFO - Updating metadata for: aniyome_milk_elder_sisterinlaws_milk +2026-01-07 00:30:48,520 - INFO - Searching metadata for: aniyome milk elder sisterinlaws milk +2026-01-07 00:30:48,650 - INFO - Searching metadata for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 00:30:48,668 - INFO - Searching MangaUpdates for: aniyome milk elder sisterinlaws milk +2026-01-07 00:30:48,754 - INFO - Updating metadata for: FireShot +2026-01-07 00:30:48,754 - INFO - Searching metadata for: FireShot +2026-01-07 00:30:48,893 - INFO - Searching MangaUpdates for: FireShot +2026-01-07 00:30:49,050 - INFO - Updating metadata for: getting_along_well_with_my_sister +2026-01-07 00:30:49,050 - INFO - Searching metadata for: getting along well with my sister +2026-01-07 00:30:49,094 - INFO - Updating metadata for: Otouto_Imouto_(2007) +2026-01-07 00:30:49,095 - INFO - Searching metadata for: Otouto Imouto +2026-01-07 00:30:49,181 - INFO - Searching MangaUpdates for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 00:30:49,250 - INFO - Fetching metadata from: https://nhentai.net/g/567863/ +2026-01-07 00:30:49,307 - INFO - Fetching metadata from: https://nhentai.net/g/617219/ +2026-01-07 00:30:49,575 - INFO - Updating metadata for: hypnosis_satisfaction +2026-01-07 00:30:49,576 - INFO - Searching metadata for: hypnosis satisfaction +2026-01-07 00:30:49,583 - INFO - Updating metadata for: idiopathic_erectile_syndrome_when_masturbation_fails +2026-01-07 00:30:49,583 - INFO - Searching metadata for: idiopathic erectile syndrome when masturbation fails +2026-01-07 00:30:49,733 - INFO - Searching MangaUpdates for: hypnosis satisfaction +2026-01-07 00:30:49,761 - INFO - Fetching metadata from: https://nhentai.net/g/271977/ +2026-01-07 00:30:50,039 - INFO - Updating metadata for: sluttification_virus_anywhere_anytime_lets_fuck_already +2026-01-07 00:30:50,039 - INFO - Searching metadata for: sluttification virus anywhere anytime lets fuck already +2026-01-07 00:30:50,041 - INFO - Updating metadata for: otto_no_tame_no_ranshi_o_tanin_no_seishi +2026-01-07 00:30:50,041 - INFO - Searching metadata for: otto no tame no ranshi o tanin no seishi +2026-01-07 00:30:50,144 - INFO - Updating metadata for: my_relationship_with_my_sister +2026-01-07 00:30:50,144 - INFO - Searching metadata for: my relationship with my sister +2026-01-07 00:30:50,185 - INFO - Searching MangaUpdates for: sluttification virus anywhere anytime lets fuck already +2026-01-07 00:30:50,321 - INFO - Fetching metadata from: https://nhentai.net/g/551507/ +2026-01-07 00:30:50,349 - INFO - Fetching metadata from: https://nhentai.net/g/584304/ +2026-01-07 00:30:50,636 - INFO - Updating metadata for: [Milkdou Shoukai (Milk Koubou)] Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-07 00:30:50,637 - INFO - Updating metadata for: [UC] Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-07 00:30:50,637 - INFO - Searching metadata for: Milkdou Shoukai (Milk Koubou) Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-07 00:30:50,637 - INFO - Searching metadata for: UC Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-07 00:30:50,645 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-07 00:30:50,645 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-07 00:30:50,872 - INFO - Fetching metadata from: https://nhentai.net/g/603830/ +2026-01-07 00:30:51,024 - INFO - Fetching metadata from: https://nhentai.net/g/419645/ +2026-01-07 00:30:51,098 - INFO - Updating metadata for: absurd_mother_and_son_incest +2026-01-07 00:30:51,098 - INFO - Searching metadata for: absurd mother and son incest +2026-01-07 00:30:51,280 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-07 00:30:51,319 - INFO - Fetching metadata from: https://nhentai.net/g/359070/ +2026-01-07 00:30:51,326 - INFO - Updating metadata for: living_together_with_the_buxom_female_bully +2026-01-07 00:30:51,326 - INFO - Searching metadata for: living together with the buxom female bully +2026-01-07 00:30:51,577 - INFO - Fetching metadata from: https://nhentai.net/g/610208/ +2026-01-07 00:30:51,589 - INFO - Updating metadata for: hikki_mother_fucker +2026-01-07 00:30:51,589 - INFO - Searching metadata for: hikki mother fucker +2026-01-07 00:30:51,590 - INFO - Updating metadata for: [Ringoya (Alp)] Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-07 00:30:51,592 - INFO - Searching metadata for: Ringoya (Alp) Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-07 00:30:51,814 - INFO - Fetching metadata from: https://nhentai.net/g/287208/ +2026-01-07 00:30:51,859 - INFO - Updating metadata for: how_to_build_cock +2026-01-07 00:30:51,859 - INFO - Searching metadata for: how to build cock +2026-01-07 00:30:52,095 - INFO - Fetching metadata from: https://nhentai.net/g/381583/ +2026-01-07 00:30:52,099 - INFO - Fetching metadata from: https://nhentai.net/g/620273/ +2026-01-07 00:30:52,104 - INFO - Updating metadata for: meaty_minxes +2026-01-07 00:30:52,105 - INFO - Searching metadata for: meaty minxes +2026-01-07 00:30:52,255 - INFO - Searching MangaUpdates for: meaty minxes +2026-01-07 00:30:52,532 - INFO - Updating metadata for: [BNO (Utagawa Yosiero)] My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-07 00:30:52,532 - INFO - Searching metadata for: BNO (Utagawa Yosiero) My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-07 00:30:52,533 - INFO - Updating metadata for: [Zero no Mono] Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-07 00:30:52,535 - INFO - Searching metadata for: Zero no Mono Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-07 00:30:52,540 - INFO - Updating metadata for: idol_wa_fan_no_semen_tank_ninshinderella_girls +2026-01-07 00:30:52,540 - INFO - Searching metadata for: idol wa fan no semen tank ninshinderella girls +2026-01-07 00:30:52,808 - INFO - Fetching metadata from: https://nhentai.net/g/342164/ +2026-01-07 00:30:52,870 - INFO - Searching MangaUpdates for: idol wa fan no semen tank ninshinderella girls +2026-01-07 00:30:52,896 - INFO - Fetching metadata from: https://nhentai.net/g/599069/ +2026-01-07 00:30:53,022 - INFO - Updating metadata for: mob_reipu +2026-01-07 00:30:53,022 - INFO - Searching metadata for: mob reipu +2026-01-07 00:30:53,101 - INFO - Updating metadata for: my_oyakodon +2026-01-07 00:30:53,101 - INFO - Searching metadata for: my oyakodon +2026-01-07 00:30:53,191 - INFO - Fetching metadata from: https://nhentai.net/g/311650/ +2026-01-07 00:30:53,336 - INFO - Fetching metadata from: https://nhentai.net/g/618832/ +2026-01-07 00:30:53,424 - INFO - Updating metadata for: [Tawawa Delivery] Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 00:30:53,425 - INFO - Searching metadata for: Tawawa Delivery Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 00:30:53,429 - INFO - Updating metadata for: dosukebe_youkai_midaraga_no_goshujinsama +2026-01-07 00:30:53,429 - INFO - Searching metadata for: dosukebe youkai midaraga no goshujinsama +2026-01-07 00:30:53,455 - INFO - Searching MangaUpdates for: dosukebe youkai midaraga no goshujinsama +2026-01-07 00:30:53,557 - INFO - Updating metadata for: daisuki_na_classmate_ni_shikottemorautame +2026-01-07 00:30:53,557 - INFO - Searching metadata for: daisuki na classmate ni shikottemorautame +2026-01-07 00:30:53,580 - INFO - Searching metadata for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 00:30:53,603 - INFO - Searching MangaUpdates for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 00:30:53,745 - INFO - Updating metadata for: [Tobe] Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-07 00:30:53,745 - INFO - Searching metadata for: Tobe Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-07 00:30:53,808 - INFO - Searching MangaUpdates for: daisuki na classmate ni shikottemorautame +2026-01-07 00:30:53,937 - INFO - Updating metadata for: incha_otouto_ga_nangoku_beach_de_kinpatsu +2026-01-07 00:30:53,937 - INFO - Searching metadata for: incha otouto ga nangoku beach de kinpatsu +2026-01-07 00:30:54,132 - INFO - Fetching metadata from: https://nhentai.net/g/603385/ +2026-01-07 00:30:54,150 - INFO - Updating metadata for: enji_ni_somaru +2026-01-07 00:30:54,150 - INFO - Searching metadata for: enji ni somaru +2026-01-07 00:30:54,235 - INFO - Searching MangaUpdates for: incha otouto ga nangoku beach de kinpatsu +2026-01-07 00:30:54,416 - INFO - Fetching metadata from: https://nhentai.net/g/608666/ +2026-01-07 00:30:54,427 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-07 00:30:54,428 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-07 00:30:54,639 - INFO - Updating metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-07 00:30:54,639 - INFO - Searching metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-07 00:30:54,766 - INFO - Fetching metadata from: https://nhentai.net/g/600993/ +2026-01-07 00:30:54,881 - INFO - Searching MangaUpdates for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-07 00:30:54,890 - INFO - Updating metadata for: daily_life_with_my_sister_who_i_dont +2026-01-07 00:30:54,890 - INFO - Searching metadata for: daily life with my sister who i dont +2026-01-07 00:30:55,264 - INFO - Searching MangaUpdates for: daily life with my sister who i dont +2026-01-07 00:30:55,311 - INFO - Updating metadata for: akira_nii_chan_who_ive_always_admired +2026-01-07 00:30:55,312 - INFO - Updating metadata for: thermometer_boy_measuring_beast +2026-01-07 00:30:55,312 - INFO - Searching metadata for: akira nii chan who ive always admired +2026-01-07 00:30:55,312 - INFO - Searching metadata for: thermometer boy measuring beast +2026-01-07 00:30:55,502 - INFO - Searching MangaUpdates for: thermometer boy measuring beast +2026-01-07 00:30:55,563 - INFO - Searching MangaUpdates for: akira nii chan who ive always admired +2026-01-07 00:30:55,669 - INFO - Updating metadata for: better_than_sex +2026-01-07 00:30:55,669 - INFO - Searching metadata for: better than sex +2026-01-07 00:30:55,895 - INFO - Fetching metadata from: https://nhentai.net/g/580485/ +2026-01-07 00:30:56,208 - INFO - Updating metadata for: broconflict +2026-01-07 00:30:56,208 - INFO - Searching metadata for: broconflict +2026-01-07 00:30:56,213 - INFO - Updating metadata for: do_you_like_an_untidy_older_sister +2026-01-07 00:30:56,213 - INFO - Searching metadata for: do you like an untidy older sister +2026-01-07 00:30:56,356 - INFO - Searching MangaUpdates for: broconflict +2026-01-07 00:30:56,486 - INFO - Searching MangaUpdates for: do you like an untidy older sister +2026-01-07 00:30:56,518 - INFO - Updating metadata for: [NesZ] My farmer aunt is having a problem [English] +2026-01-07 00:30:56,519 - INFO - Searching metadata for: NesZ My farmer aunt is having a problem [English] +2026-01-07 00:30:56,545 - INFO - Updating metadata for: my_little_sisters_are_slutty_orcs +2026-01-07 00:30:56,546 - INFO - Searching metadata for: my little sisters are slutty orcs +2026-01-07 00:30:56,734 - INFO - Fetching metadata from: https://nhentai.net/g/607421/ +2026-01-07 00:30:56,791 - INFO - Fetching metadata from: https://nhentai.net/g/475987/ +2026-01-07 00:30:56,840 - INFO - Updating metadata for: [R Koubou (Ruzi)] Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 00:30:56,840 - INFO - Searching metadata for: R Koubou (Ruzi) Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 00:30:56,926 - INFO - Updating metadata for: my_ar_glasses_can_see_various_stats_about_my_foster_sister +2026-01-07 00:30:56,926 - INFO - Searching metadata for: my ar glasses can see various stats about my foster sister +2026-01-07 00:30:57,003 - INFO - Updating metadata for: [Merenge Tenmondai (Kugurofu)] D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-07 00:30:57,004 - INFO - Searching metadata for: Merenge Tenmondai (Kugurofu) D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-07 00:30:57,217 - INFO - Fetching metadata from: https://nhentai.net/g/589010/ +2026-01-07 00:30:57,246 - INFO - Searching metadata for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 00:30:57,329 - INFO - Fetching metadata from: https://nhentai.net/g/620725/ +2026-01-07 00:30:57,506 - INFO - Updating metadata for: dirty_lessons_improving_your_manhood_chapter_ +2026-01-07 00:30:57,507 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-07 00:30:57,577 - INFO - Updating metadata for: [Nishikawa Kou] Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-07 00:30:57,578 - INFO - Searching metadata for: Nishikawa Kou Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-07 00:30:57,608 - INFO - Searching MangaUpdates for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 00:30:57,664 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter +2026-01-07 00:30:57,914 - INFO - Fetching metadata from: https://nhentai.net/g/600838/ +2026-01-07 00:30:58,166 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 00:30:58,166 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 00:30:58,364 - INFO - Updating metadata for: the_story_about_how_i_found_my_soulmate_when +2026-01-07 00:30:58,364 - INFO - Searching metadata for: the story about how i found my soulmate when +2026-01-07 00:30:58,409 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 00:30:58,633 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 00:30:58,680 - INFO - Fetching metadata from: https://nhentai.net/g/521364/ +2026-01-07 00:30:58,850 - INFO - Updating metadata for: [Hannya san] Forbidden lust +2026-01-07 00:30:58,850 - INFO - Searching metadata for: Hannya san Forbidden lust +2026-01-07 00:30:59,008 - INFO - Updating metadata for: sibling_with_sister +2026-01-07 00:30:59,009 - INFO - Searching metadata for: sibling with sister +2026-01-07 00:30:59,050 - INFO - Fetching metadata from: https://nhentai.net/g/600751/ +2026-01-07 00:30:59,186 - INFO - Fetching metadata from: https://nhentai.net/g/501918/ +2026-01-07 00:30:59,283 - INFO - Updating metadata for: shojo_ane_kangaeru +2026-01-07 00:30:59,284 - INFO - Searching metadata for: shojo ane kangaeru +2026-01-07 00:30:59,341 - INFO - Searching MangaUpdates for: shojo ane kangaeru +2026-01-07 00:30:59,348 - INFO - Updating metadata for: Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love +2026-01-07 00:30:59,348 - INFO - Searching metadata for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-07 00:30:59,413 - INFO - Searching MangaUpdates for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-07 00:30:59,444 - INFO - Updating metadata for: gikei_ni_netorare_ochita_tsubaki +2026-01-07 00:30:59,445 - INFO - Searching metadata for: gikei ni netorare ochita tsubaki +2026-01-07 00:30:59,474 - INFO - Searching MangaUpdates for: gikei ni netorare ochita tsubaki +2026-01-07 00:30:59,683 - INFO - Updating metadata for: neechan_to_sei_shori_shiteru +2026-01-07 00:30:59,683 - INFO - Searching metadata for: neechan to sei shori shiteru +2026-01-07 00:30:59,898 - INFO - Updating metadata for: the_festival_of_summers_lustful_traditions +2026-01-07 00:30:59,900 - INFO - Searching metadata for: the festival of summers lustful traditions +2026-01-07 00:30:59,973 - INFO - Searching MangaUpdates for: neechan to sei shori shiteru +2026-01-07 00:31:00,064 - INFO - Updating metadata for: my_sister_uses_my_trash_as_masturbation_material +2026-01-07 00:31:00,064 - INFO - Searching metadata for: my sister uses my trash as masturbation material +2026-01-07 00:31:00,149 - INFO - Searching MangaUpdates for: the festival of summers lustful traditions +2026-01-07 00:31:00,363 - INFO - Fetching metadata from: https://nhentai.net/g/520519/ +2026-01-07 00:31:00,591 - INFO - Updating metadata for: [Pino] Boin [English] +2026-01-07 00:31:00,591 - INFO - Searching metadata for: Pino Boin [English] +2026-01-07 00:31:00,602 - INFO - Updating metadata for: [moNmomo] Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-07 00:31:00,602 - INFO - Searching metadata for: moNmomo Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-07 00:31:00,663 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-07 00:31:00,664 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-07 00:31:00,784 - INFO - Fetching metadata from: https://nhentai.net/g/595922/ +2026-01-07 00:31:00,823 - INFO - Searching metadata for: Boin [English] +2026-01-07 00:31:00,823 - INFO - Fetching metadata from: https://nhentai.net/g/618662/ +2026-01-07 00:31:00,939 - INFO - Fetching metadata from: https://nhentai.net/g/502051/ +2026-01-07 00:31:00,944 - INFO - Searching MangaUpdates for: Boin [English] +2026-01-07 00:31:01,011 - INFO - Updating metadata for: fushoku_tensei_tamashii_kawattara_honki_dasu +2026-01-07 00:31:01,011 - INFO - Searching metadata for: fushoku tensei tamashii kawattara honki dasu +2026-01-07 00:31:01,163 - INFO - Updating metadata for: can_you_really_use_this_app_to_fuck_different_species +2026-01-07 00:31:01,163 - INFO - Searching metadata for: can you really use this app to fuck different species +2026-01-07 00:31:01,194 - INFO - Fetching metadata from: https://nhentai.net/g/574276/ +2026-01-07 00:31:01,274 - INFO - Updating metadata for: future_detective +2026-01-07 00:31:01,275 - INFO - Searching metadata for: future detective +2026-01-07 00:31:01,399 - INFO - Updating metadata for: [Mochi-ya (Karoti)] Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-07 00:31:01,400 - INFO - Searching metadata for: Mochi-ya (Karoti) Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-07 00:31:01,402 - INFO - Searching MangaUpdates for: future detective +2026-01-07 00:31:01,420 - INFO - Fetching metadata from: https://nhentai.net/g/517152/ +2026-01-07 00:31:01,745 - INFO - Fetching metadata from: https://nhentai.net/g/620624/ +2026-01-07 00:31:01,781 - INFO - Updating metadata for: what_the_mother_does_for_the_sake_of_the_son +2026-01-07 00:31:01,781 - INFO - Searching metadata for: what the mother does for the sake of the son +2026-01-07 00:31:01,782 - INFO - Updating metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-07 00:31:01,784 - INFO - Searching metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-07 00:31:01,993 - INFO - Updating metadata for: i_woke_up_to_my_naked_apron_sister_and_tried_fucking_her +2026-01-07 00:31:01,993 - INFO - Searching metadata for: i woke up to my naked apron sister and tried fucking her +2026-01-07 00:31:02,056 - INFO - Fetching metadata from: https://nhentai.net/g/532249/ +2026-01-07 00:31:02,224 - INFO - Fetching metadata from: https://nhentai.net/g/526048/ +2026-01-07 00:31:02,272 - INFO - Updating metadata for: [Tawara Hiryuu] Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 00:31:02,272 - INFO - Searching metadata for: Tawara Hiryuu Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 00:31:02,420 - INFO - Updating metadata for: boku_no_misatan +2026-01-07 00:31:02,420 - INFO - Searching metadata for: boku no misatan +2026-01-07 00:31:02,470 - INFO - Fetching metadata from: https://nhentai.net/g/602663/ +2026-01-07 00:31:02,516 - INFO - Searching metadata for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 00:31:02,606 - INFO - Searching MangaUpdates for: boku no misatan +2026-01-07 00:31:02,835 - INFO - Searching MangaUpdates for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 00:31:02,841 - INFO - Updating metadata for: little_sister_paradise +2026-01-07 00:31:02,841 - INFO - Searching metadata for: little sister paradise +2026-01-07 00:31:02,895 - INFO - Updating metadata for: [Wakamatsu] Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-07 00:31:02,896 - INFO - Searching metadata for: Wakamatsu Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-07 00:31:03,037 - INFO - Fetching metadata from: https://nhentai.net/g/567713/ +2026-01-07 00:31:03,248 - INFO - Fetching metadata from: https://nhentai.net/g/571054/ +2026-01-07 00:31:03,254 - INFO - Updating metadata for: my_mature_older_sister_the_crazy_convenient_relationship_of_an_older_sister_and_younger_brother_in_their_thirtys +2026-01-07 00:31:03,254 - INFO - Searching metadata for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-07 00:31:03,378 - INFO - Updating metadata for: gifu_to_shimai_no_kizuna +2026-01-07 00:31:03,379 - INFO - Searching metadata for: gifu to shimai no kizuna +2026-01-07 00:31:03,460 - INFO - Updating metadata for: thats_my_girl +2026-01-07 00:31:03,460 - INFO - Searching metadata for: thats my girl +2026-01-07 00:31:03,615 - INFO - Searching MangaUpdates for: thats my girl +2026-01-07 00:31:03,666 - INFO - Searching MangaUpdates for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-07 00:31:03,674 - INFO - Fetching metadata from: https://nhentai.net/g/97406/ +2026-01-07 00:31:03,898 - INFO - Updating metadata for: omae_no_you_na_maou_ga_iru_kai +2026-01-07 00:31:03,899 - INFO - Searching metadata for: omae no you na maou ga iru kai +2026-01-07 00:31:03,968 - INFO - Updating metadata for: [Juna Juna Juice] Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-07 00:31:03,968 - INFO - Searching metadata for: Juna Juna Juice Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-07 00:31:04,141 - INFO - Fetching metadata from: https://nhentai.net/g/594305/ +2026-01-07 00:31:04,220 - INFO - Searching MangaUpdates for: omae no you na maou ga iru kai +2026-01-07 00:31:04,240 - INFO - Updating metadata for: sex_season +2026-01-07 00:31:04,241 - INFO - Searching metadata for: sex season +2026-01-07 00:31:04,362 - INFO - Updating metadata for: when_i_confessed_to_the_girl_im_interested_in_i_wasnt_allowed_to_go_out_with_her_but_was_given_the_ok_for_childmaking +2026-01-07 00:31:04,362 - INFO - Searching metadata for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-07 00:31:04,458 - INFO - Fetching metadata from: https://nhentai.net/g/618390/ +2026-01-07 00:31:04,769 - INFO - Searching MangaUpdates for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-07 00:31:04,804 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite _ Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-07 00:31:04,804 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-07 00:31:04,806 - INFO - Updating metadata for: if_seems_like_everyone_except_me_has_lost_their_concept_of_eroticism +2026-01-07 00:31:04,807 - INFO - Searching metadata for: if seems like everyone except me has lost their concept of eroticism +2026-01-07 00:31:05,028 - INFO - Searching MangaUpdates for: if seems like everyone except me has lost their concept of eroticism +2026-01-07 00:31:05,188 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-07 00:31:05,860 - INFO - Updating metadata for: the_mother_of_the_oba_household +2026-01-07 00:31:05,861 - INFO - Searching metadata for: the mother of the oba household +2026-01-07 00:31:05,892 - INFO - Updating metadata for: oneechan_no_dokusho_jijou +2026-01-07 00:31:05,893 - INFO - Searching metadata for: oneechan no dokusho jijou +2026-01-07 00:31:06,082 - INFO - Fetching metadata from: https://nhentai.net/g/543837/ +2026-01-07 00:31:06,114 - INFO - Searching MangaUpdates for: oneechan no dokusho jijou +2026-01-07 00:31:06,296 - INFO - Updating metadata for: [UC] Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-07 00:31:06,296 - INFO - Searching metadata for: UC Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-07 00:31:06,368 - INFO - Updating metadata for: that_pov_sex_thing +2026-01-07 00:31:06,368 - INFO - Searching metadata for: that pov sex thing +2026-01-07 00:31:06,528 - INFO - Updating metadata for: what_friend_do +2026-01-07 00:31:06,529 - INFO - Searching metadata for: what friend do +2026-01-07 00:31:06,547 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-07 00:31:06,656 - INFO - Fetching metadata from: https://nhentai.net/g/399461/ +2026-01-07 00:31:06,790 - INFO - Fetching metadata from: https://nhentai.net/g/601381/ +2026-01-07 00:31:06,795 - INFO - Updating metadata for: hot_teacher +2026-01-07 00:31:06,797 - INFO - Searching metadata for: hot teacher +2026-01-07 00:31:06,854 - INFO - Updating metadata for: [Kudamono Monogatari (Kuroishi Ringo)] Puraibe to Joousama - Private Queen [Eng] +2026-01-07 00:31:06,854 - INFO - Searching metadata for: Kudamono Monogatari (Kuroishi Ringo) Puraibe to Joousama - Private Queen [Eng] +2026-01-07 00:31:07,055 - INFO - Fetching metadata from: https://nhentai.net/g/620990/ +2026-01-07 00:31:07,078 - INFO - Fetching metadata from: https://nhentai.net/g/602699/ +2026-01-07 00:31:07,082 - INFO - Updating metadata for: kinyoku_ake_no_kyoudai_kankei +2026-01-07 00:31:07,083 - INFO - Searching metadata for: kinyoku ake no kyoudai kankei +2026-01-07 00:31:07,337 - INFO - Searching MangaUpdates for: kinyoku ake no kyoudai kankei +2026-01-07 00:31:07,373 - INFO - Updating metadata for: two_siblings_fela_pure +2026-01-07 00:31:07,373 - INFO - Searching metadata for: two siblings fela pure +2026-01-07 00:31:07,375 - INFO - Updating metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-07 00:31:07,375 - INFO - Searching metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-07 00:31:07,531 - INFO - Fetching metadata from: https://nhentai.net/g/65576/ +2026-01-07 00:31:07,664 - INFO - Searching MangaUpdates for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-07 00:31:07,676 - INFO - Updating metadata for: aniyome_milk_elder_sisterinlaws_milk +2026-01-07 00:31:07,677 - INFO - Searching metadata for: aniyome milk elder sisterinlaws milk +2026-01-07 00:31:07,841 - INFO - Searching MangaUpdates for: aniyome milk elder sisterinlaws milk +2026-01-07 00:31:07,847 - INFO - Updating metadata for: on_the_night_of_the_ceremony +2026-01-07 00:31:07,848 - INFO - Searching metadata for: on the night of the ceremony +2026-01-07 00:31:08,087 - INFO - Fetching metadata from: https://nhentai.net/g/530970/ +2026-01-07 00:31:08,155 - INFO - Updating metadata for: Otouto_Imouto_(2007) +2026-01-07 00:31:08,156 - INFO - Searching metadata for: Otouto Imouto +2026-01-07 00:31:08,297 - INFO - Updating metadata for: [Takasugi Kou] Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-07 00:31:08,297 - INFO - Searching metadata for: Takasugi Kou Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-07 00:31:08,337 - INFO - Fetching metadata from: https://nhentai.net/g/617219/ +2026-01-07 00:31:08,372 - INFO - Updating metadata for: [Hakukoukai (Shiramizu Mizuchi)] Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 00:31:08,372 - INFO - Searching metadata for: Hakukoukai (Shiramizu Mizuchi) Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 00:31:08,566 - INFO - Fetching metadata from: https://nhentai.net/g/599358/ +2026-01-07 00:31:08,609 - INFO - Searching metadata for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 00:31:08,630 - INFO - Updating metadata for: idiopathic_erectile_syndrome_when_masturbation_fails +2026-01-07 00:31:08,630 - INFO - Searching metadata for: idiopathic erectile syndrome when masturbation fails +2026-01-07 00:31:08,755 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 00:31:08,756 - INFO - Searching metadata for: Mustard Teikoku (Europia) Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 00:31:08,798 - INFO - Fetching metadata from: https://nhentai.net/g/271977/ +2026-01-07 00:31:08,815 - INFO - Searching MangaUpdates for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 00:31:09,041 - INFO - Updating metadata for: sluttification_virus_anywhere_anytime_lets_fuck_already +2026-01-07 00:31:09,041 - INFO - Searching metadata for: sluttification virus anywhere anytime lets fuck already +2026-01-07 00:31:09,221 - INFO - Searching MangaUpdates for: sluttification virus anywhere anytime lets fuck already +2026-01-07 00:31:09,238 - INFO - Searching metadata for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 00:31:09,246 - INFO - Updating metadata for: [Sakai Hamachi] Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-07 00:31:09,247 - INFO - Searching metadata for: Sakai Hamachi Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-07 00:31:09,447 - INFO - Fetching metadata from: https://nhentai.net/g/600615/ +2026-01-07 00:31:09,559 - INFO - Updating metadata for: [UC] Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-07 00:31:09,560 - INFO - Searching metadata for: UC Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-07 00:31:09,579 - INFO - Searching MangaUpdates for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 00:31:09,631 - INFO - Updating metadata for: cock_that_makes_tomboy_sisters_tap_out +2026-01-07 00:31:09,631 - INFO - Searching metadata for: cock that makes tomboy sisters tap out +2026-01-07 00:31:09,807 - INFO - Fetching metadata from: https://nhentai.net/g/585217/ +2026-01-07 00:31:09,834 - INFO - Fetching metadata from: https://nhentai.net/g/603830/ +2026-01-07 00:31:10,092 - INFO - Updating metadata for: big_sis_ayaka +2026-01-07 00:31:10,092 - INFO - Searching metadata for: big sis ayaka +2026-01-07 00:31:10,097 - INFO - Updating metadata for: absurd_mother_and_son_incest +2026-01-07 00:31:10,097 - INFO - Searching metadata for: absurd mother and son incest +2026-01-07 00:31:10,267 - INFO - Fetching metadata from: https://nhentai.net/g/359070/ +2026-01-07 00:31:10,285 - INFO - Fetching metadata from: https://nhentai.net/g/608897/ +2026-01-07 00:31:10,438 - INFO - Updating metadata for: father_stop_it +2026-01-07 00:31:10,438 - INFO - Searching metadata for: father stop it +2026-01-07 00:31:10,639 - INFO - Updating metadata for: [Ringoya (Alp)] Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-07 00:31:10,639 - INFO - Searching metadata for: Ringoya (Alp) Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-07 00:31:10,687 - INFO - Fetching metadata from: https://nhentai.net/g/549536/ +2026-01-07 00:31:10,776 - INFO - Updating metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-07 00:31:10,776 - INFO - Searching metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-07 00:31:10,881 - INFO - Updating metadata for: organize +2026-01-07 00:31:10,882 - INFO - Searching metadata for: organize +2026-01-07 00:31:11,009 - INFO - Fetching metadata from: https://nhentai.net/g/36404/ +2026-01-07 00:31:11,034 - INFO - Fetching metadata from: https://nhentai.net/g/215772/ +2026-01-07 00:31:11,202 - INFO - Fetching metadata from: https://nhentai.net/g/620273/ +2026-01-07 00:31:11,243 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge_chapter_ +2026-01-07 00:31:11,244 - INFO - Searching metadata for: big boobs shadowy character takes revenge chapter +2026-01-07 00:31:11,248 - INFO - Updating metadata for: seventy_two +2026-01-07 00:31:11,248 - INFO - Searching metadata for: seventy two +2026-01-07 00:31:11,389 - INFO - Searching MangaUpdates for: big boobs shadowy character takes revenge chapter +2026-01-07 00:31:11,436 - INFO - Fetching metadata from: https://nhentai.net/g/110977/ +2026-01-07 00:31:11,532 - INFO - Updating metadata for: idol_wa_fan_no_semen_tank_ninshinderella_girls +2026-01-07 00:31:11,533 - INFO - Searching metadata for: idol wa fan no semen tank ninshinderella girls +2026-01-07 00:31:11,648 - INFO - Updating metadata for: a_sister_who_wants_to_watch_siblings +2026-01-07 00:31:11,648 - INFO - Searching metadata for: a sister who wants to watch siblings +2026-01-07 00:31:11,777 - INFO - Searching MangaUpdates for: idol wa fan no semen tank ninshinderella girls +2026-01-07 00:31:11,852 - INFO - Updating metadata for: [Shirono Mahiro] Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-07 00:31:11,852 - INFO - Searching metadata for: Shirono Mahiro Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-07 00:31:11,975 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-07 00:31:12,101 - INFO - Fetching metadata from: https://nhentai.net/g/184288/ +2026-01-07 00:31:12,104 - INFO - Updating metadata for: [Tawawa Delivery] Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 00:31:12,104 - INFO - Searching metadata for: Tawawa Delivery Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 00:31:12,181 - INFO - Updating metadata for: dirty_lessons_improving_your_manhood_chapter +2026-01-07 00:31:12,182 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-07 00:31:12,268 - INFO - Searching metadata for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 00:31:12,364 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter +2026-01-07 00:31:12,376 - INFO - Updating metadata for: [Nacchuushou (Amazon)] Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-07 00:31:12,377 - INFO - Searching metadata for: Nacchuushou (Amazon) Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-07 00:31:12,431 - INFO - Searching MangaUpdates for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 00:31:12,864 - INFO - Fetching metadata from: https://nhentai.net/g/604264/ +2026-01-07 00:31:12,872 - INFO - Updating metadata for: incha_otouto_ga_nangoku_beach_de_kinpatsu +2026-01-07 00:31:12,872 - INFO - Searching metadata for: incha otouto ga nangoku beach de kinpatsu +2026-01-07 00:31:12,887 - INFO - Updating metadata for: from_now_on_you_are_my_livestock_chapter +2026-01-07 00:31:12,887 - INFO - Searching metadata for: from now on you are my livestock chapter +2026-01-07 00:31:13,133 - INFO - Searching MangaUpdates for: incha otouto ga nangoku beach de kinpatsu +2026-01-07 00:31:13,154 - INFO - Searching MangaUpdates for: from now on you are my livestock chapter +2026-01-07 00:31:13,160 - INFO - Updating metadata for: im_his_little_sister_slave +2026-01-07 00:31:13,160 - INFO - Searching metadata for: im his little sister slave +2026-01-07 00:31:13,354 - INFO - Searching MangaUpdates for: im his little sister slave +2026-01-07 00:31:13,727 - INFO - Updating metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-07 00:31:13,727 - INFO - Searching metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-07 00:31:13,740 - INFO - Updating metadata for: a_room_you_cant_leave_after_having_sex +2026-01-07 00:31:13,740 - INFO - Searching metadata for: a room you cant leave after having sex +2026-01-07 00:31:13,848 - INFO - Updating metadata for: Oretachi,_Kore_Kara_(2024) +2026-01-07 00:31:13,849 - INFO - Searching metadata for: Oretachi, Kore Kara +2026-01-07 00:31:13,956 - INFO - Searching MangaUpdates for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-07 00:31:13,980 - INFO - Searching MangaUpdates for: a room you cant leave after having sex +2026-01-07 00:31:14,033 - INFO - Searching MangaUpdates for: Oretachi, Kore Kara +2026-01-07 00:31:14,176 - INFO - Updating metadata for: akira_nii_chan_who_ive_always_admired +2026-01-07 00:31:14,176 - INFO - Searching metadata for: akira nii chan who ive always admired +2026-01-07 00:31:14,363 - INFO - Updating metadata for: narikawari_chapter_1 +2026-01-07 00:31:14,364 - INFO - Searching metadata for: narikawari chapter 1 +2026-01-07 00:31:14,368 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-07 00:31:14,368 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-07 00:31:14,405 - INFO - Searching MangaUpdates for: akira nii chan who ive always admired +2026-01-07 00:31:14,597 - INFO - Searching MangaUpdates for: narikawari chapter 1 +2026-01-07 00:31:14,641 - INFO - Fetching metadata from: https://nhentai.net/g/572070/ +2026-01-07 00:31:14,780 - INFO - Updating metadata for: [NesZ] My farmer aunt is having a problem [English] +2026-01-07 00:31:14,781 - INFO - Searching metadata for: NesZ My farmer aunt is having a problem [English] +2026-01-07 00:31:14,857 - INFO - Updating metadata for: Sunday Funday [AI GENERATED] +2026-01-07 00:31:14,858 - INFO - Searching metadata for: Sunday Funday [AI GENERATED] +2026-01-07 00:31:14,909 - INFO - Updating metadata for: [Ookami Shoujo Dan (Mukoujima Tenro)] Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-07 00:31:14,910 - INFO - Searching metadata for: Ookami Shoujo Dan (Mukoujima Tenro) Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-07 00:31:15,000 - INFO - Fetching metadata from: https://nhentai.net/g/607421/ +2026-01-07 00:31:15,017 - INFO - Fetching metadata from: https://nhentai.net/g/603171/ +2026-01-07 00:31:15,235 - INFO - Fetching metadata from: https://nhentai.net/g/617181/ +2026-01-07 00:31:15,239 - INFO - Updating metadata for: succubus_pearl_bonus_book +2026-01-07 00:31:15,240 - INFO - Searching metadata for: succubus pearl bonus book +2026-01-07 00:31:15,242 - INFO - Updating metadata for: my_ar_glasses_can_see_various_stats_about_my_foster_sister +2026-01-07 00:31:15,242 - INFO - Searching metadata for: my ar glasses can see various stats about my foster sister +2026-01-07 00:31:15,440 - INFO - Fetching metadata from: https://nhentai.net/g/346344/ +2026-01-07 00:31:15,469 - INFO - Updating metadata for: welcome_to_the_brothel_school_festival +2026-01-07 00:31:15,469 - INFO - Searching metadata for: welcome to the brothel school festival +2026-01-07 00:31:15,519 - INFO - Fetching metadata from: https://nhentai.net/g/589010/ +2026-01-07 00:31:15,545 - INFO - Searching MangaUpdates for: my ar glasses can see various stats about my foster sister +2026-01-07 00:31:15,641 - INFO - Updating metadata for: sibling_switch +2026-01-07 00:31:15,641 - INFO - Searching metadata for: sibling switch +2026-01-07 00:31:15,668 - INFO - Searching MangaUpdates for: sibling switch +2026-01-07 00:31:15,705 - INFO - Fetching metadata from: https://nhentai.net/g/601119/ +2026-01-07 00:31:15,909 - INFO - Updating metadata for: dirty_lessons_improving_your_manhood_chapter_ +2026-01-07 00:31:15,920 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-07 00:31:15,962 - INFO - Updating metadata for: pantsu_o_haita_dake_nanoni +2026-01-07 00:31:15,964 - INFO - Searching metadata for: pantsu o haita dake nanoni +2026-01-07 00:31:15,967 - INFO - Updating metadata for: [Oroshi Ponzu] A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 00:31:15,975 - INFO - Searching metadata for: Oroshi Ponzu A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 00:31:16,170 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter +2026-01-07 00:31:16,192 - INFO - Fetching metadata from: https://nhentai.net/g/548841/ +2026-01-07 00:31:16,615 - INFO - Searching metadata for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 00:31:16,674 - INFO - Updating metadata for: the_story_about_how_i_found_my_soulmate_when +2026-01-07 00:31:16,674 - INFO - Searching metadata for: the story about how i found my soulmate when +2026-01-07 00:31:16,678 - INFO - Updating metadata for: [Shiraishi Nagisa] Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-07 00:31:16,678 - INFO - Searching metadata for: Shiraishi Nagisa Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-07 00:31:16,941 - INFO - Fetching metadata from: https://nhentai.net/g/407654/ +2026-01-07 00:31:16,985 - INFO - Fetching metadata from: https://nhentai.net/g/521364/ +2026-01-07 00:31:17,096 - INFO - Searching MangaUpdates for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 00:31:17,188 - INFO - Updating metadata for: [Hannya san] Forbidden lust +2026-01-07 00:31:17,188 - INFO - Searching metadata for: Hannya san Forbidden lust +2026-01-07 00:31:17,190 - INFO - Updating metadata for: gyan_colle +2026-01-07 00:31:17,190 - INFO - Searching metadata for: gyan colle +2026-01-07 00:31:17,343 - INFO - Fetching metadata from: https://nhentai.net/g/611983/ +2026-01-07 00:31:17,405 - INFO - Fetching metadata from: https://nhentai.net/g/600751/ +2026-01-07 00:31:17,646 - INFO - Updating metadata for: didnt_you_know +2026-01-07 00:31:17,647 - INFO - Searching metadata for: didnt you know +2026-01-07 00:31:17,651 - INFO - Updating metadata for: shojo_ane_kangaeru +2026-01-07 00:31:17,652 - INFO - Searching metadata for: shojo ane kangaeru +2026-01-07 00:31:17,784 - INFO - Searching MangaUpdates for: didnt you know +2026-01-07 00:31:17,834 - INFO - Fetching metadata from: https://nhentai.net/g/447249/ +2026-01-07 00:31:17,905 - INFO - Updating metadata for: step_child_swapping_satsuki_imonet +2026-01-07 00:31:17,905 - INFO - Searching metadata for: step child swapping satsuki imonet +2026-01-07 00:31:18,063 - INFO - Updating metadata for: neechan_to_sei_shori_shiteru +2026-01-07 00:31:18,064 - INFO - Searching metadata for: neechan to sei shori shiteru +2026-01-07 00:31:18,068 - INFO - Updating metadata for: [Yue] Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-07 00:31:18,068 - INFO - Searching metadata for: Yue Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-07 00:31:18,093 - INFO - Searching MangaUpdates for: step child swapping satsuki imonet +2026-01-07 00:31:18,373 - INFO - Fetching metadata from: https://nhentai.net/g/603962/ +2026-01-07 00:31:18,403 - INFO - Searching MangaUpdates for: neechan to sei shori shiteru +2026-01-07 00:31:18,437 - INFO - Updating metadata for: the_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother_in_laws_countryside_where_there_is_an_h_custom +2026-01-07 00:31:18,437 - INFO - Searching metadata for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-07 00:31:18,578 - INFO - Updating metadata for: [Kakinotanehitotsubu (Kakino Nashiko)] Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-07 00:31:18,579 - INFO - Searching metadata for: Kakinotanehitotsubu (Kakino Nashiko) Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-07 00:31:18,718 - INFO - Updating metadata for: [moNmomo] Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-07 00:31:18,718 - INFO - Searching metadata for: moNmomo Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-07 00:31:18,859 - INFO - Fetching metadata from: https://nhentai.net/g/484501/ +2026-01-07 00:31:18,947 - INFO - Fetching metadata from: https://nhentai.net/g/618662/ +2026-01-07 00:31:19,187 - INFO - Searching MangaUpdates for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-07 00:31:19,232 - INFO - Updating metadata for: steamed_bun_kiss +2026-01-07 00:31:19,233 - INFO - Searching metadata for: steamed bun kiss +2026-01-07 00:31:19,241 - INFO - Updating metadata for: fushoku_tensei_tamashii_kawattara_honki_dasu +2026-01-07 00:31:19,241 - INFO - Searching metadata for: fushoku tensei tamashii kawattara honki dasu +2026-01-07 00:31:19,440 - INFO - Fetching metadata from: https://nhentai.net/g/574276/ +2026-01-07 00:31:19,486 - INFO - Fetching metadata from: https://nhentai.net/g/166671/ +2026-01-07 00:31:19,672 - INFO - Updating metadata for: [Mochi-ya (Karoti)] Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-07 00:31:19,672 - INFO - Searching metadata for: Mochi-ya (Karoti) Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-07 00:31:19,718 - INFO - Updating metadata for: [Pipasuta (Pipa)] Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-07 00:31:19,719 - INFO - Searching metadata for: Pipasuta (Pipa) Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-07 00:31:19,914 - INFO - Fetching metadata from: https://nhentai.net/g/572821/ +2026-01-07 00:31:19,955 - INFO - Fetching metadata from: https://nhentai.net/g/620624/ +2026-01-07 00:31:20,031 - INFO - Updating metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-07 00:31:20,031 - INFO - Searching metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-07 00:31:20,167 - INFO - Updating metadata for: madam_complex +2026-01-07 00:31:20,167 - INFO - Searching metadata for: madam complex +2026-01-07 00:31:20,171 - INFO - Updating metadata for: i_woke_up_to_my_naked_apron_sister_and_tried_fucking_her +2026-01-07 00:31:20,171 - INFO - Searching metadata for: i woke up to my naked apron sister and tried fucking her +2026-01-07 00:31:20,327 - INFO - Fetching metadata from: https://nhentai.net/g/595613/ +2026-01-07 00:31:20,505 - INFO - Fetching metadata from: https://nhentai.net/g/602663/ +2026-01-07 00:31:20,550 - INFO - Updating metadata for: [Puppukupu (Kawaisaw)] Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 00:31:20,550 - INFO - Searching metadata for: Puppukupu (Kawaisaw) Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 00:31:20,671 - INFO - Searching MangaUpdates for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-07 00:31:20,769 - INFO - Searching metadata for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 00:31:20,923 - INFO - Updating metadata for: little_sister_paradise +2026-01-07 00:31:20,924 - INFO - Searching metadata for: little sister paradise +2026-01-07 00:31:21,022 - INFO - Searching MangaUpdates for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 00:31:21,097 - INFO - Fetching metadata from: https://nhentai.net/g/567713/ +2026-01-07 00:31:21,328 - INFO - Updating metadata for: friends_forever +2026-01-07 00:31:21,329 - INFO - Updating metadata for: my_mature_older_sister_the_crazy_convenient_relationship_of_an_older_sister_and_younger_brother_in_their_thirtys +2026-01-07 00:31:21,329 - INFO - Searching metadata for: friends forever +2026-01-07 00:31:21,330 - INFO - Searching metadata for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-07 00:31:21,412 - INFO - Updating metadata for: aggressive_mama +2026-01-07 00:31:21,412 - INFO - Searching metadata for: aggressive mama +2026-01-07 00:31:21,505 - INFO - Fetching metadata from: https://nhentai.net/g/588356/ +2026-01-07 00:31:21,588 - INFO - Fetching metadata from: https://nhentai.net/g/467578/ +2026-01-07 00:31:21,627 - INFO - Searching MangaUpdates for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-07 00:31:21,880 - INFO - Updating metadata for: were_siblings_but_lets_tie_the_knot +2026-01-07 00:31:21,881 - INFO - Searching metadata for: were siblings but lets tie the knot +2026-01-07 00:31:21,886 - INFO - Updating metadata for: [Natsuzo] The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-07 00:31:21,886 - INFO - Searching metadata for: Natsuzo The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-07 00:31:22,113 - INFO - Fetching metadata from: https://nhentai.net/g/604150/ +2026-01-07 00:31:22,136 - INFO - Searching MangaUpdates for: were siblings but lets tie the knot +2026-01-07 00:31:22,292 - INFO - Updating metadata for: in_a_room_where_you_cant_leave_unless_you_have_sex +2026-01-07 00:31:22,292 - INFO - Searching metadata for: in a room where you cant leave unless you have sex +2026-01-07 00:31:22,308 - INFO - Updating metadata for: sex_season +2026-01-07 00:31:22,308 - INFO - Searching metadata for: sex season +2026-01-07 00:31:22,530 - INFO - Updating metadata for: takebe_saorichan_to_iu_kanojo +2026-01-07 00:31:22,530 - INFO - Searching metadata for: takebe saorichan to iu kanojo +2026-01-07 00:31:22,552 - INFO - Searching MangaUpdates for: in a room where you cant leave unless you have sex +2026-01-07 00:31:22,574 - INFO - Fetching metadata from: https://nhentai.net/g/618390/ +2026-01-07 00:31:22,682 - INFO - Searching MangaUpdates for: takebe saorichan to iu kanojo +2026-01-07 00:31:22,822 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite _ Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-07 00:31:22,822 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-07 00:31:22,998 - INFO - Updating metadata for: cattle_sister +2026-01-07 00:31:22,999 - INFO - Searching metadata for: cattle sister +2026-01-07 00:31:23,072 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-07 00:31:23,123 - INFO - Updating metadata for: mega_milk +2026-01-07 00:31:23,123 - INFO - Searching metadata for: mega milk +2026-01-07 00:31:23,211 - INFO - Fetching metadata from: https://nhentai.net/g/614951/ +2026-01-07 00:31:23,360 - INFO - Fetching metadata from: https://nhentai.net/g/616449/ +2026-01-07 00:31:23,445 - INFO - Updating metadata for: we_went_overboard_with_our_home_work_this_evening +2026-01-07 00:31:23,445 - INFO - Searching metadata for: we went overboard with our home work this evening +2026-01-07 00:31:23,592 - INFO - Updating metadata for: [Gomikasu Tarou] Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 00:31:23,592 - INFO - Searching metadata for: Gomikasu Tarou Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 00:31:23,595 - INFO - Updating metadata for: that_pov_sex_thing +2026-01-07 00:31:23,596 - INFO - Searching metadata for: that pov sex thing +2026-01-07 00:31:23,639 - INFO - Fetching metadata from: https://nhentai.net/g/533599/ +2026-01-07 00:31:23,848 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-07 00:31:23,902 - INFO - Updating metadata for: Untitled Folder +2026-01-07 00:31:23,903 - INFO - Searching metadata for: Untitled Folder +2026-01-07 00:31:24,004 - INFO - Searching metadata for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 00:31:24,064 - INFO - Searching MangaUpdates for: Untitled Folder +2026-01-07 00:31:24,146 - INFO - Updating metadata for: hot_teacher +2026-01-07 00:31:24,146 - INFO - Searching metadata for: hot teacher +2026-01-07 00:31:24,291 - INFO - Updating metadata for: nozo_nico_don +2026-01-07 00:31:24,292 - INFO - Searching metadata for: nozo nico don +2026-01-07 00:31:24,391 - INFO - Fetching metadata from: https://nhentai.net/g/620990/ +2026-01-07 00:31:24,492 - INFO - Fetching metadata from: https://nhentai.net/g/251101/ +2026-01-07 00:31:24,626 - INFO - Updating metadata for: two_siblings_fela_pure +2026-01-07 00:31:24,627 - INFO - Searching metadata for: two siblings fela pure +2026-01-07 00:31:24,660 - INFO - Searching MangaUpdates for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 00:31:24,720 - INFO - Updating metadata for: tonari_no_elf_mama +2026-01-07 00:31:24,720 - INFO - Searching metadata for: tonari no elf mama +2026-01-07 00:31:24,898 - INFO - Fetching metadata from: https://nhentai.net/g/65576/ +2026-01-07 00:31:25,028 - INFO - Fetching metadata from: https://nhentai.net/g/614016/ +2026-01-07 00:31:25,154 - INFO - Updating metadata for: on_the_night_of_the_ceremony +2026-01-07 00:31:25,155 - INFO - Searching metadata for: on the night of the ceremony +2026-01-07 00:31:25,244 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 _ Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-07 00:31:25,245 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-07 00:31:25,402 - INFO - Fetching metadata from: https://nhentai.net/g/530970/ +2026-01-07 00:31:25,582 - INFO - Updating metadata for: a_gentle_mommy_who_secret_makes +2026-01-07 00:31:25,583 - INFO - Searching metadata for: a gentle mommy who secret makes +2026-01-07 00:31:25,653 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-07 00:31:25,722 - INFO - Updating metadata for: [Takasugi Kou] Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-07 00:31:25,722 - INFO - Searching metadata for: Takasugi Kou Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-07 00:31:25,817 - INFO - Fetching metadata from: https://nhentai.net/g/546176/ +2026-01-07 00:31:25,991 - INFO - Fetching metadata from: https://nhentai.net/g/599358/ +2026-01-07 00:31:26,093 - INFO - Updating metadata for: i_got_an_elf_little_sister +2026-01-07 00:31:26,093 - INFO - Searching metadata for: i got an elf little sister +2026-01-07 00:31:26,194 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 00:31:26,194 - INFO - Searching metadata for: Mustard Teikoku (Europia) Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 00:31:26,221 - INFO - Updating metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-07 00:31:26,222 - INFO - Searching metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-07 00:31:26,389 - INFO - Fetching metadata from: https://nhentai.net/g/544668/ +2026-01-07 00:31:26,422 - INFO - Searching MangaUpdates for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-07 00:31:26,653 - INFO - Searching metadata for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 00:31:26,667 - INFO - Updating metadata for: [Yue] Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 00:31:26,668 - INFO - Searching metadata for: Yue Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 00:31:26,883 - INFO - Updating metadata for: boshi_syndrome +2026-01-07 00:31:26,883 - INFO - Searching metadata for: boshi syndrome +2026-01-07 00:31:26,977 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 00:31:26,993 - INFO - Searching MangaUpdates for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 00:31:27,034 - INFO - Fetching metadata from: https://nhentai.net/g/586173/ +2026-01-07 00:31:27,266 - INFO - Updating metadata for: a_trip_back_home +2026-01-07 00:31:27,266 - INFO - Searching metadata for: a trip back home +2026-01-07 00:31:27,352 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 00:31:27,487 - INFO - Fetching metadata from: https://nhentai.net/g/241562/ +2026-01-07 00:31:27,671 - INFO - Updating metadata for: obaman_aneman_harem +2026-01-07 00:31:27,671 - INFO - Searching metadata for: obaman aneman harem +2026-01-07 00:31:27,863 - INFO - Fetching metadata from: https://nhentai.net/g/588648/ +2026-01-07 00:31:27,884 - INFO - Updating metadata for: father_stop_it +2026-01-07 00:31:27,885 - INFO - Searching metadata for: father stop it +2026-01-07 00:31:28,077 - INFO - Fetching metadata from: https://nhentai.net/g/549536/ +2026-01-07 00:31:28,179 - INFO - Updating metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-07 00:31:28,179 - INFO - Searching metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-07 00:31:28,182 - INFO - Updating metadata for: i_became_kirarachans_manager +2026-01-07 00:31:28,183 - INFO - Searching metadata for: i became kirarachans manager +2026-01-07 00:31:28,313 - INFO - Updating metadata for: organize +2026-01-07 00:31:28,314 - INFO - Searching metadata for: organize +2026-01-07 00:31:28,370 - INFO - Searching MangaUpdates for: i became kirarachans manager +2026-01-07 00:31:28,445 - INFO - Searching MangaUpdates for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-07 00:31:28,484 - INFO - Fetching metadata from: https://nhentai.net/g/215772/ +2026-01-07 00:31:28,681 - INFO - Updating metadata for: seventy_two +2026-01-07 00:31:28,681 - INFO - Searching metadata for: seventy two +2026-01-07 00:31:28,845 - INFO - Fetching metadata from: https://nhentai.net/g/110977/ +2026-01-07 00:31:29,049 - INFO - Updating metadata for: a_sister_who_wants_to_watch_siblings +2026-01-07 00:31:29,050 - INFO - Searching metadata for: a sister who wants to watch siblings +2026-01-07 00:31:29,353 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-07 00:31:29,577 - INFO - Updating metadata for: Sensei_wa_Ore_no_Dorei_Danshikou_wa_Midara_na_Kangoku_(2014) +2026-01-07 00:31:29,577 - INFO - Updating metadata for: dirty_lessons_improving_your_manhood_chapter +2026-01-07 00:31:29,577 - INFO - Searching metadata for: Sensei wa Ore no Dorei Danshikou wa Midara na Kangoku +2026-01-07 00:31:29,578 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-07 00:31:29,590 - INFO - Updating metadata for: Take a break from working to fuck +2026-01-07 00:31:29,590 - INFO - Searching metadata for: Take a break from working to fuck +2026-01-07 00:31:29,737 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter +2026-01-07 00:31:29,846 - INFO - Searching MangaUpdates for: Sensei wa Ore no Dorei Danshikou wa Midara na Kangoku +2026-01-07 00:31:29,887 - INFO - Searching MangaUpdates for: Take a break from working to fuck +2026-01-07 00:31:30,434 - INFO - Updating metadata for: from_now_on_you_are_my_livestock_chapter +2026-01-07 00:31:30,435 - INFO - Searching metadata for: from now on you are my livestock chapter +2026-01-07 00:31:30,562 - INFO - Updating metadata for: paipai_mashimashi_gal_bitch +2026-01-07 00:31:30,562 - INFO - Searching metadata for: paipai mashimashi gal bitch +2026-01-07 00:31:30,683 - INFO - Searching MangaUpdates for: from now on you are my livestock chapter +2026-01-07 00:31:30,736 - INFO - Fetching metadata from: https://nhentai.net/g/555058/ +2026-01-07 00:31:30,835 - INFO - Updating metadata for: i_am_to_record_a_video_with_two_sadistic_women +2026-01-07 00:31:30,835 - INFO - Searching metadata for: i am to record a video with two sadistic women +2026-01-07 00:31:30,973 - INFO - Updating metadata for: [Okashi Koujou] That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-07 00:31:30,973 - INFO - Searching metadata for: Okashi Koujou That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-07 00:31:31,065 - INFO - Updating metadata for: a_room_you_cant_leave_after_having_sex +2026-01-07 00:31:31,066 - INFO - Searching metadata for: a room you cant leave after having sex +2026-01-07 00:31:31,182 - INFO - Fetching metadata from: https://nhentai.net/g/551074/ +2026-01-07 00:31:31,299 - INFO - Searching MangaUpdates for: a room you cant leave after having sex +2026-01-07 00:31:31,396 - INFO - Fetching metadata from: https://nhentai.net/g/603202/ +2026-01-07 00:31:31,400 - INFO - Updating metadata for: kusabi +2026-01-07 00:31:31,400 - INFO - Searching metadata for: kusabi +2026-01-07 00:31:31,590 - INFO - Fetching metadata from: https://nhentai.net/g/577169/ +2026-01-07 00:31:31,609 - INFO - Updating metadata for: gal_ga_saimin_kakeyou_to_shitara_kaeriuchi_saremashita +2026-01-07 00:31:31,610 - INFO - Searching metadata for: gal ga saimin kakeyou to shitara kaeriuchi saremashita +2026-01-07 00:31:31,679 - INFO - Updating metadata for: narikawari_chapter_1 +2026-01-07 00:31:31,679 - INFO - Searching metadata for: narikawari chapter 1 +2026-01-07 00:31:31,786 - INFO - Updating metadata for: [OVing (Obui)] Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-07 00:31:31,786 - INFO - Searching metadata for: OVing (Obui) Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-07 00:31:31,842 - INFO - Searching MangaUpdates for: narikawari chapter 1 +2026-01-07 00:31:31,906 - INFO - Fetching metadata from: https://nhentai.net/g/575485/ +2026-01-07 00:31:32,000 - INFO - Fetching metadata from: https://nhentai.net/g/556035/ +2026-01-07 00:31:32,139 - INFO - Updating metadata for: [Ookami Shoujo Dan (Mukoujima Tenro)] Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-07 00:31:32,143 - INFO - Searching metadata for: Ookami Shoujo Dan (Mukoujima Tenro) Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-07 00:31:32,206 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 00:31:32,206 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 00:31:32,223 - INFO - Updating metadata for: the_imprisoned_flower +2026-01-07 00:31:32,223 - INFO - Searching metadata for: the imprisoned flower +2026-01-07 00:31:32,405 - INFO - Fetching metadata from: https://nhentai.net/g/567049/ +2026-01-07 00:31:32,457 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 00:31:32,472 - INFO - Fetching metadata from: https://nhentai.net/g/617181/ +2026-01-07 00:31:32,590 - INFO - Updating metadata for: semi_pro_racing_stars +2026-01-07 00:31:32,590 - INFO - Searching metadata for: semi pro racing stars +2026-01-07 00:31:32,681 - INFO - Updating metadata for: welcome_to_the_brothel_school_festival +2026-01-07 00:31:32,681 - INFO - Searching metadata for: welcome to the brothel school festival +2026-01-07 00:31:32,721 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 00:31:32,770 - INFO - Fetching metadata from: https://nhentai.net/g/380272/ +2026-01-07 00:31:32,945 - INFO - Fetching metadata from: https://nhentai.net/g/601119/ +2026-01-07 00:31:33,051 - INFO - Updating metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-07 00:31:33,051 - INFO - Searching metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-07 00:31:33,053 - INFO - Updating metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san _ Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-07 00:31:33,054 - INFO - Searching metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-07 00:31:33,294 - INFO - Updating metadata for: [Oroshi Ponzu] A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 00:31:33,294 - INFO - Searching metadata for: Oroshi Ponzu A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 00:31:33,317 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-07 00:31:33,345 - INFO - Fetching metadata from: https://nhentai.net/g/467602/ +2026-01-07 00:31:33,546 - INFO - Updating metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-07 00:31:33,546 - INFO - Searching metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-07 00:31:33,550 - INFO - Updating metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-07 00:31:33,550 - INFO - Searching metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-07 00:31:33,737 - INFO - Searching metadata for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 00:31:33,759 - INFO - Fetching metadata from: https://nhentai.net/g/599736/ +2026-01-07 00:31:33,856 - INFO - Fetching metadata from: https://nhentai.net/g/583039/ +2026-01-07 00:31:33,886 - INFO - Searching MangaUpdates for: Stalker MILF and Me, Her Sex Toy +2026-01-07 00:31:33,983 - INFO - Updating metadata for: the_succubus_army_invasion +2026-01-07 00:31:33,984 - INFO - Searching metadata for: the succubus army invasion +2026-01-07 00:31:34,180 - INFO - Searching MangaUpdates for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 00:31:34,182 - INFO - Fetching metadata from: https://nhentai.net/g/581332/ +2026-01-07 00:31:34,190 - INFO - Updating metadata for: [Nyuu Koubou Koromotake] Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-07 00:31:34,191 - INFO - Searching metadata for: Nyuu Koubou Koromotake Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-07 00:31:34,412 - INFO - Updating metadata for: boku_no_misatan_chapter_ +2026-01-07 00:31:34,413 - INFO - Searching metadata for: boku no misatan chapter +2026-01-07 00:31:34,507 - INFO - Fetching metadata from: https://nhentai.net/g/603798/ +2026-01-07 00:31:34,608 - INFO - Searching MangaUpdates for: boku no misatan chapter +2026-01-07 00:31:34,701 - INFO - Updating metadata for: crossdressing_hero_and_dancer_priestess_chapter +2026-01-07 00:31:34,701 - INFO - Searching metadata for: crossdressing hero and dancer priestess chapter +2026-01-07 00:31:34,840 - INFO - Searching MangaUpdates for: crossdressing hero and dancer priestess chapter +2026-01-07 00:31:35,196 - INFO - Updating metadata for: step_child_swapping_satsuki_imonet +2026-01-07 00:31:35,197 - INFO - Searching metadata for: step child swapping satsuki imonet +2026-01-07 00:31:35,251 - INFO - Updating metadata for: Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-07 00:31:35,251 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-07 00:31:35,337 - INFO - Updating metadata for: tsugumonotachi_hachi_hen +2026-01-07 00:31:35,337 - INFO - Searching metadata for: tsugumonotachi hachi hen +2026-01-07 00:31:35,362 - INFO - Searching MangaUpdates for: step child swapping satsuki imonet +2026-01-07 00:31:35,430 - INFO - Searching MangaUpdates for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-07 00:31:35,468 - INFO - Searching MangaUpdates for: tsugumonotachi hachi hen +2026-01-07 00:31:35,756 - INFO - Updating metadata for: the_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother_in_laws_countryside_where_there_is_an_h_custom +2026-01-07 00:31:35,757 - INFO - Searching metadata for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-07 00:31:35,853 - INFO - Updating metadata for: leave_it_all_to_me_little_brother +2026-01-07 00:31:35,853 - INFO - Searching metadata for: leave it all to me little brother +2026-01-07 00:31:35,913 - INFO - Updating metadata for: my_tall_and_busty_step_sister_gives +2026-01-07 00:31:35,914 - INFO - Searching metadata for: my tall and busty step sister gives +2026-01-07 00:31:36,120 - INFO - Fetching metadata from: https://nhentai.net/g/591571/ +2026-01-07 00:31:36,191 - INFO - Fetching metadata from: https://nhentai.net/g/548496/ +2026-01-07 00:31:36,193 - INFO - Searching MangaUpdates for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-07 00:31:36,388 - INFO - Updating metadata for: imouto_to_rekawatta_oniichan_wa_chapter +2026-01-07 00:31:36,388 - INFO - Searching metadata for: imouto to rekawatta oniichan wa chapter +2026-01-07 00:31:36,392 - INFO - Updating metadata for: about_sadako_being_stuck_on_the_computer_screen +2026-01-07 00:31:36,392 - INFO - Searching metadata for: about sadako being stuck on the computer screen +2026-01-07 00:31:36,578 - INFO - Searching MangaUpdates for: about sadako being stuck on the computer screen +2026-01-07 00:31:36,634 - INFO - Searching MangaUpdates for: imouto to rekawatta oniichan wa chapter +2026-01-07 00:31:37,178 - INFO - Updating metadata for: when_i_lost_the_use_of_my_arms_my_brother_started +2026-01-07 00:31:37,178 - INFO - Searching metadata for: when i lost the use of my arms my brother started +2026-01-07 00:31:37,317 - INFO - Updating metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-07 00:31:37,317 - INFO - Searching metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-07 00:31:37,321 - INFO - Updating metadata for: Kanojo_ni_Naritai_Kimi_to_Boku_(2018) +2026-01-07 00:31:37,321 - INFO - Searching metadata for: Kanojo ni Naritai Kimi to Boku +2026-01-07 00:31:37,447 - INFO - Fetching metadata from: https://nhentai.net/g/546227/ +2026-01-07 00:31:37,613 - INFO - Searching MangaUpdates for: Kanojo ni Naritai Kimi to Boku +2026-01-07 00:31:37,657 - INFO - Updating metadata for: sister_ss_short_story +2026-01-07 00:31:37,658 - INFO - Searching metadata for: sister ss short story +2026-01-07 00:31:37,800 - INFO - Searching MangaUpdates for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-07 00:31:37,826 - INFO - Fetching metadata from: https://nhentai.net/g/589411/ +2026-01-07 00:31:38,038 - INFO - Updating metadata for: Saimin_Appli_(Yuma)_(2024) +2026-01-07 00:31:38,038 - INFO - Searching metadata for: Saimin Appli (Yuma) +2026-01-07 00:31:38,043 - INFO - Updating metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC_TRANSLATIONS) +2026-01-07 00:31:38,043 - INFO - Searching metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-07 00:31:38,185 - INFO - Searching MangaUpdates for: Saimin Appli (Yuma) +2026-01-07 00:31:38,282 - INFO - Searching MangaUpdates for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-07 00:31:38,510 - INFO - Updating metadata for: the_demon_lords_bride +2026-01-07 00:31:38,510 - INFO - Searching metadata for: the demon lords bride +2026-01-07 00:31:38,513 - INFO - Updating metadata for: friends_forever +2026-01-07 00:31:38,514 - INFO - Searching metadata for: friends forever +2026-01-07 00:31:38,676 - INFO - Searching MangaUpdates for: the demon lords bride +2026-01-07 00:31:38,695 - INFO - Fetching metadata from: https://nhentai.net/g/588356/ +2026-01-07 00:31:38,755 - INFO - Updating metadata for: motherly_love +2026-01-07 00:31:38,757 - INFO - Searching metadata for: motherly love +2026-01-07 00:31:38,997 - INFO - Fetching metadata from: https://nhentai.net/g/406015/ +2026-01-07 00:31:39,009 - INFO - Updating metadata for: were_siblings_but_lets_tie_the_knot +2026-01-07 00:31:39,009 - INFO - Searching metadata for: were siblings but lets tie the knot +2026-01-07 00:31:39,012 - INFO - Updating metadata for: [satsukiimonet (Satsuki Imonet)] HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-07 00:31:39,012 - INFO - Searching metadata for: satsukiimonet (Satsuki Imonet) HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-07 00:31:39,332 - INFO - Searching MangaUpdates for: were siblings but lets tie the knot +2026-01-07 00:31:39,341 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-07 00:31:39,352 - INFO - Updating metadata for: [Satsuki Imonet] Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 00:31:39,352 - INFO - Searching metadata for: Satsuki Imonet Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 00:31:39,622 - INFO - Updating metadata for: takebe_saorichan_to_iu_kanojo +2026-01-07 00:31:39,622 - INFO - Searching metadata for: takebe saorichan to iu kanojo +2026-01-07 00:31:39,628 - INFO - Updating metadata for: special_tit_envoy +2026-01-07 00:31:39,628 - INFO - Searching metadata for: special tit envoy +2026-01-07 00:31:39,720 - INFO - Searching metadata for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 00:31:39,779 - INFO - Searching MangaUpdates for: takebe saorichan to iu kanojo +2026-01-07 00:31:39,828 - INFO - Fetching metadata from: https://nhentai.net/g/354686/ +2026-01-07 00:31:39,991 - INFO - Updating metadata for: hot_spring_sex_with_mama_raikou +2026-01-07 00:31:39,991 - INFO - Searching metadata for: hot spring sex with mama raikou +2026-01-07 00:31:40,043 - INFO - Searching MangaUpdates for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 00:31:40,121 - INFO - Updating metadata for: mega_milk +2026-01-07 00:31:40,122 - INFO - Searching metadata for: mega milk +2026-01-07 00:31:40,175 - INFO - Fetching metadata from: https://nhentai.net/g/329703/ +2026-01-07 00:31:40,381 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Succubus Shoukan [English][Fan trad] +2026-01-07 00:31:40,381 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Succubus Shoukan [English][Fan trad] +2026-01-07 00:31:40,411 - INFO - Fetching metadata from: https://nhentai.net/g/616449/ +2026-01-07 00:31:40,516 - INFO - Searching metadata for: Succubus Shoukan [English][Fan trad] +2026-01-07 00:31:40,625 - INFO - Updating metadata for: [Gomikasu Tarou] Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 00:31:40,625 - INFO - Searching metadata for: Gomikasu Tarou Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 00:31:40,683 - INFO - Searching MangaUpdates for: Succubus Shoukan [English][Fan trad] +2026-01-07 00:31:40,698 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-07 00:31:40,699 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-07 00:31:40,951 - INFO - Fetching metadata from: https://nhentai.net/g/412142/ +2026-01-07 00:31:41,041 - INFO - Updating metadata for: nanjamo_no_botebaraive_nanjamo_vs_metamonjamo +2026-01-07 00:31:41,041 - INFO - Searching metadata for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-07 00:31:41,157 - INFO - Updating metadata for: Suki Kirai Daisuki. Bangaihen _ Love • Hate • Really Love +2026-01-07 00:31:41,158 - INFO - Searching metadata for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-07 00:31:41,173 - INFO - Searching MangaUpdates for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-07 00:31:41,195 - INFO - Searching metadata for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 00:31:41,323 - INFO - Searching MangaUpdates for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-07 00:31:41,507 - INFO - Updating metadata for: akos_and_nozomis_discussion_of_masturbation_addictions +2026-01-07 00:31:41,507 - INFO - Searching metadata for: akos and nozomis discussion of masturbation addictions +2026-01-07 00:31:41,681 - INFO - Searching MangaUpdates for: akos and nozomis discussion of masturbation addictions +2026-01-07 00:31:41,702 - INFO - Searching MangaUpdates for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 00:31:41,709 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-07 00:31:41,710 - INFO - Searching metadata for: Ginshio Honpo (Ginen) My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-07 00:31:41,953 - INFO - Fetching metadata from: https://nhentai.net/g/563890/ +2026-01-07 00:31:42,051 - INFO - Updating metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 00:31:42,051 - INFO - Searching metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 00:31:42,221 - INFO - Updating metadata for: playing_the_kings_game_with_a_tanned_jk_oneesan +2026-01-07 00:31:42,221 - INFO - Searching metadata for: playing the kings game with a tanned jk oneesan +2026-01-07 00:31:42,268 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-07 00:31:42,449 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 00:31:42,450 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 00:31:42,493 - INFO - Searching MangaUpdates for: playing the kings game with a tanned jk oneesan +2026-01-07 00:31:42,771 - INFO - Updating metadata for: a_gentle_mommy_who_secret_makes +2026-01-07 00:31:42,771 - INFO - Searching metadata for: a gentle mommy who secret makes +2026-01-07 00:31:42,805 - INFO - Searching metadata for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 00:31:43,006 - INFO - Fetching metadata from: https://nhentai.net/g/546176/ +2026-01-07 00:31:43,050 - INFO - Searching MangaUpdates for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 00:31:43,225 - INFO - Updating metadata for: i_got_an_elf_little_sister +2026-01-07 00:31:43,226 - INFO - Searching metadata for: i got an elf little sister +2026-01-07 00:31:43,577 - INFO - Updating metadata for: 7days_toono_esuke +2026-01-07 00:31:43,577 - INFO - Searching metadata for: 7days toono esuke +2026-01-07 00:31:43,610 - INFO - Fetching metadata from: https://nhentai.net/g/544668/ +2026-01-07 00:31:43,735 - INFO - Fetching metadata from: https://nhentai.net/g/575052/ +2026-01-07 00:31:43,860 - INFO - Updating metadata for: [Yue] Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 00:31:43,860 - INFO - Searching metadata for: Yue Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 00:31:43,933 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-07 00:31:43,933 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-07 00:31:44,183 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 00:31:44,244 - INFO - Fetching metadata from: https://nhentai.net/g/603877/ +2026-01-07 00:31:44,463 - INFO - Updating metadata for: Sex_With_Many_Mamas_(2016) +2026-01-07 00:31:44,463 - INFO - Searching metadata for: Sex With Many Mamas +2026-01-07 00:31:44,493 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 00:31:44,503 - INFO - Updating metadata for: my_cool_friend +2026-01-07 00:31:44,503 - INFO - Searching metadata for: my cool friend +2026-01-07 00:31:44,612 - INFO - Searching MangaUpdates for: Sex With Many Mamas +2026-01-07 00:31:44,664 - INFO - Fetching metadata from: https://nhentai.net/g/588146/ +2026-01-07 00:31:44,836 - INFO - Updating metadata for: Akogare_no_Tomo_Mama_to_Matching_Shita_Kudan_(2024) +2026-01-07 00:31:44,836 - INFO - Searching metadata for: Akogare no Tomo Mama to Matching Shita Kudan +2026-01-07 00:31:44,935 - INFO - Updating metadata for: [Kurogane Kenn] Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-07 00:31:44,936 - INFO - Searching metadata for: Kurogane Kenn Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-07 00:31:45,009 - INFO - Updating metadata for: i_became_kirarachans_manager +2026-01-07 00:31:45,010 - INFO - Searching metadata for: i became kirarachans manager +2026-01-07 00:31:45,099 - INFO - Searching MangaUpdates for: Akogare no Tomo Mama to Matching Shita Kudan +2026-01-07 00:31:45,216 - INFO - Searching MangaUpdates for: i became kirarachans manager +2026-01-07 00:31:45,280 - INFO - Fetching metadata from: https://nhentai.net/g/598681/ +2026-01-07 00:31:45,478 - INFO - Updating metadata for: oneechans_toy +2026-01-07 00:31:45,478 - INFO - Searching metadata for: oneechans toy +2026-01-07 00:31:45,539 - INFO - Updating metadata for: non_stop_fucking_with_my_friends_mom +2026-01-07 00:31:45,539 - INFO - Searching metadata for: non stop fucking with my friends mom +2026-01-07 00:31:45,541 - INFO - Updating metadata for: Sensei_wa_Ore_no_Dorei_Danshikou_wa_Midara_na_Kangoku_(2014) +2026-01-07 00:31:45,542 - INFO - Searching metadata for: Sensei wa Ore no Dorei Danshikou wa Midara na Kangoku +2026-01-07 00:31:45,615 - INFO - Searching MangaUpdates for: oneechans toy +2026-01-07 00:31:45,729 - INFO - Searching MangaUpdates for: non stop fucking with my friends mom +2026-01-07 00:31:45,801 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-07 00:31:45,802 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-07 00:31:45,856 - INFO - Searching MangaUpdates for: Sensei wa Ore no Dorei Danshikou wa Midara na Kangoku +2026-01-07 00:31:46,038 - INFO - Updating metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-07 00:31:46,039 - INFO - Searching metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-07 00:31:46,072 - INFO - Fetching metadata from: https://nhentai.net/g/519770/ +2026-01-07 00:31:46,204 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-07 00:31:46,269 - INFO - Updating metadata for: when_dad_and_mom_arent_home +2026-01-07 00:31:46,269 - INFO - Searching metadata for: when dad and mom arent home +2026-01-07 00:31:46,295 - INFO - Updating metadata for: i_am_to_record_a_video_with_two_sadistic_women +2026-01-07 00:31:46,295 - INFO - Searching metadata for: i am to record a video with two sadistic women +2026-01-07 00:31:46,379 - INFO - Updating metadata for: Koyoi,_Gishiki_de_Hatemashou_(2019) +2026-01-07 00:31:46,379 - INFO - Searching metadata for: Koyoi, Gishiki de Hatemashou +2026-01-07 00:31:46,448 - INFO - Searching MangaUpdates for: when dad and mom arent home +2026-01-07 00:31:46,534 - INFO - Searching MangaUpdates for: Koyoi, Gishiki de Hatemashou +2026-01-07 00:31:46,699 - INFO - Fetching metadata from: https://nhentai.net/g/551074/ +2026-01-07 00:31:46,710 - INFO - Updating metadata for: succubus_kingdom +2026-01-07 00:31:46,711 - INFO - Searching metadata for: succubus kingdom +2026-01-07 00:31:46,826 - INFO - Updating metadata for: I will make a single mother my wife +2026-01-07 00:31:46,826 - INFO - Searching metadata for: I will make a single mother my wife +2026-01-07 00:31:46,973 - INFO - Fetching metadata from: https://nhentai.net/g/614436/ +2026-01-07 00:31:46,987 - INFO - Updating metadata for: kusabi +2026-01-07 00:31:46,988 - INFO - Searching metadata for: kusabi +2026-01-07 00:31:47,117 - INFO - Fetching metadata from: https://nhentai.net/g/595981/ +2026-01-07 00:31:47,212 - INFO - Fetching metadata from: https://nhentai.net/g/577169/ +2026-01-07 00:31:47,459 - INFO - Updating metadata for: liko_the_mommy_pokemon +2026-01-07 00:31:47,459 - INFO - Searching metadata for: liko the mommy pokemon +2026-01-07 00:31:47,460 - INFO - Updating metadata for: barenai_you_ni +2026-01-07 00:31:47,460 - INFO - Searching metadata for: barenai you ni +2026-01-07 00:31:47,463 - INFO - Updating metadata for: [OVing (Obui)] Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-07 00:31:47,464 - INFO - Searching metadata for: OVing (Obui) Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-07 00:31:47,629 - INFO - Fetching metadata from: https://nhentai.net/g/591233/ +2026-01-07 00:31:47,651 - INFO - Searching MangaUpdates for: liko the mommy pokemon +2026-01-07 00:31:47,807 - INFO - Updating metadata for: adolescent_calculation +2026-01-07 00:31:47,807 - INFO - Searching metadata for: adolescent calculation +2026-01-07 00:31:47,928 - INFO - Fetching metadata from: https://nhentai.net/g/556035/ +2026-01-07 00:31:47,968 - INFO - Fetching metadata from: https://nhentai.net/g/183099/ +2026-01-07 00:31:47,977 - INFO - Updating metadata for: FireShot +2026-01-07 00:31:47,978 - INFO - Searching metadata for: FireShot +2026-01-07 00:31:47,999 - INFO - Searching MangaUpdates for: FireShot +2026-01-07 00:31:48,178 - INFO - Updating metadata for: the_imprisoned_flower +2026-01-07 00:31:48,178 - INFO - Updating metadata for: moto_incha_no_kyonyuu_yariman_imouto_ga_erosugite_oniichan_wa_mou +2026-01-07 00:31:48,179 - INFO - Searching metadata for: the imprisoned flower +2026-01-07 00:31:48,179 - INFO - Searching metadata for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-07 00:31:48,191 - INFO - Updating metadata for: getting_along_well_with_my_sister +2026-01-07 00:31:48,191 - INFO - Searching metadata for: getting along well with my sister +2026-01-07 00:31:48,250 - INFO - Searching MangaUpdates for: getting along well with my sister +2026-01-07 00:31:48,392 - INFO - Fetching metadata from: https://nhentai.net/g/567049/ +2026-01-07 00:31:48,477 - INFO - Searching MangaUpdates for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-07 00:31:48,535 - INFO - Updating metadata for: hypnosis_satisfaction +2026-01-07 00:31:48,536 - INFO - Searching metadata for: hypnosis satisfaction +2026-01-07 00:31:48,603 - INFO - Updating metadata for: semi_pro_racing_stars +2026-01-07 00:31:48,603 - INFO - Searching metadata for: semi pro racing stars +2026-01-07 00:31:48,750 - INFO - Searching MangaUpdates for: hypnosis satisfaction +2026-01-07 00:31:48,812 - INFO - Fetching metadata from: https://nhentai.net/g/380272/ +2026-01-07 00:31:48,907 - INFO - Updating metadata for: karinsans_hidden_side_and_her_naughty_videos_chapter +2026-01-07 00:31:48,907 - INFO - Searching metadata for: karinsans hidden side and her naughty videos chapter +2026-01-07 00:31:48,968 - INFO - Updating metadata for: otto_no_tame_no_ranshi_o_tanin_no_seishi +2026-01-07 00:31:48,969 - INFO - Searching metadata for: otto no tame no ranshi o tanin no seishi +2026-01-07 00:31:49,072 - INFO - Searching MangaUpdates for: karinsans hidden side and her naughty videos chapter +2026-01-07 00:31:49,100 - INFO - Updating metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-07 00:31:49,100 - INFO - Searching metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-07 00:31:49,234 - INFO - Fetching metadata from: https://nhentai.net/g/551507/ +2026-01-07 00:31:49,390 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-07 00:31:49,484 - INFO - Updating metadata for: [Milkdou Shoukai (Milk Koubou)] Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-07 00:31:49,484 - INFO - Searching metadata for: Milkdou Shoukai (Milk Koubou) Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-07 00:31:49,612 - INFO - Updating metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-07 00:31:49,613 - INFO - Searching metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-07 00:31:49,842 - INFO - Fetching metadata from: https://nhentai.net/g/583039/ +2026-01-07 00:31:49,980 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-07 00:31:50,076 - INFO - Updating metadata for: [Nyuu Koubou Koromotake] Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-07 00:31:50,076 - INFO - Searching metadata for: Nyuu Koubou Koromotake Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-07 00:31:50,168 - INFO - Updating metadata for: hikki_mother_fucker +2026-01-07 00:31:50,168 - INFO - Searching metadata for: hikki mother fucker +2026-01-07 00:31:50,321 - INFO - Fetching metadata from: https://nhentai.net/g/287208/ +2026-01-07 00:31:50,388 - INFO - Fetching metadata from: https://nhentai.net/g/603798/ +2026-01-07 00:31:50,511 - INFO - Updating metadata for: meaty_minxes +2026-01-07 00:31:50,511 - INFO - Searching metadata for: meaty minxes +2026-01-07 00:31:50,602 - INFO - Updating metadata for: crossdressing_hero_and_dancer_priestess_chapter +2026-01-07 00:31:50,603 - INFO - Searching metadata for: crossdressing hero and dancer priestess chapter +2026-01-07 00:31:50,655 - INFO - Searching MangaUpdates for: meaty minxes +2026-01-07 00:31:50,774 - INFO - Searching MangaUpdates for: crossdressing hero and dancer priestess chapter +2026-01-07 00:31:50,906 - INFO - Updating metadata for: [Zero no Mono] Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-07 00:31:50,906 - INFO - Searching metadata for: Zero no Mono Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-07 00:31:51,169 - INFO - Updating metadata for: tsugumonotachi_hachi_hen +2026-01-07 00:31:51,170 - INFO - Searching metadata for: tsugumonotachi hachi hen +2026-01-07 00:31:51,239 - INFO - Fetching metadata from: https://nhentai.net/g/342164/ +2026-01-07 00:31:51,329 - INFO - Searching MangaUpdates for: tsugumonotachi hachi hen +2026-01-07 00:31:51,458 - INFO - Updating metadata for: mob_reipu +2026-01-07 00:31:51,458 - INFO - Searching metadata for: mob reipu +2026-01-07 00:31:51,545 - INFO - Updating metadata for: leave_it_all_to_me_little_brother +2026-01-07 00:31:51,546 - INFO - Searching metadata for: leave it all to me little brother +2026-01-07 00:31:51,626 - INFO - Fetching metadata from: https://nhentai.net/g/311650/ +2026-01-07 00:31:51,815 - INFO - Updating metadata for: dosukebe_youkai_midaraga_no_goshujinsama +2026-01-07 00:31:51,816 - INFO - Searching metadata for: dosukebe youkai midaraga no goshujinsama +2026-01-07 00:31:51,851 - INFO - Fetching metadata from: https://nhentai.net/g/548496/ +2026-01-07 00:31:51,990 - INFO - Searching MangaUpdates for: dosukebe youkai midaraga no goshujinsama +2026-01-07 00:31:52,084 - INFO - Updating metadata for: imouto_to_rekawatta_oniichan_wa_chapter +2026-01-07 00:31:52,085 - INFO - Searching metadata for: imouto to rekawatta oniichan wa chapter +2026-01-07 00:31:52,297 - INFO - Updating metadata for: [Tobe] Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-07 00:31:52,297 - INFO - Searching metadata for: Tobe Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-07 00:31:52,368 - INFO - Searching MangaUpdates for: imouto to rekawatta oniichan wa chapter +2026-01-07 00:31:52,506 - INFO - Fetching metadata from: https://nhentai.net/g/603385/ +2026-01-07 00:31:52,733 - INFO - Updating metadata for: Kanojo_ni_Naritai_Kimi_to_Boku_(2018) +2026-01-07 00:31:52,733 - INFO - Searching metadata for: Kanojo ni Naritai Kimi to Boku +2026-01-07 00:31:52,738 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-07 00:31:52,739 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-07 00:31:52,990 - INFO - Fetching metadata from: https://nhentai.net/g/600993/ +2026-01-07 00:31:53,006 - INFO - Searching MangaUpdates for: Kanojo ni Naritai Kimi to Boku +2026-01-07 00:31:53,357 - INFO - Updating metadata for: thermometer_boy_measuring_beast +2026-01-07 00:31:53,357 - INFO - Searching metadata for: thermometer boy measuring beast +2026-01-07 00:31:53,380 - INFO - Updating metadata for: Saimin_Appli_(Yuma)_(2024) +2026-01-07 00:31:53,381 - INFO - Searching metadata for: Saimin Appli (Yuma) +2026-01-07 00:31:53,504 - INFO - Searching MangaUpdates for: thermometer boy measuring beast +2026-01-07 00:31:53,557 - INFO - Searching MangaUpdates for: Saimin Appli (Yuma) +2026-01-07 00:31:53,800 - INFO - Updating metadata for: broconflict +2026-01-07 00:31:53,800 - INFO - Searching metadata for: broconflict +2026-01-07 00:31:53,935 - INFO - Searching MangaUpdates for: broconflict +2026-01-07 00:31:53,949 - INFO - Updating metadata for: the_demon_lords_bride +2026-01-07 00:31:53,949 - INFO - Searching metadata for: the demon lords bride +2026-01-07 00:31:54,095 - INFO - Updating metadata for: my_little_sisters_are_slutty_orcs +2026-01-07 00:31:54,095 - INFO - Searching metadata for: my little sisters are slutty orcs +2026-01-07 00:31:54,145 - INFO - Searching MangaUpdates for: the demon lords bride +2026-01-07 00:31:54,303 - INFO - Fetching metadata from: https://nhentai.net/g/475987/ +2026-01-07 00:31:54,366 - INFO - Updating metadata for: [satsukiimonet (Satsuki Imonet)] HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-07 00:31:54,367 - INFO - Searching metadata for: satsukiimonet (Satsuki Imonet) HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-07 00:31:54,518 - INFO - Updating metadata for: [Merenge Tenmondai (Kugurofu)] D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-07 00:31:54,519 - INFO - Searching metadata for: Merenge Tenmondai (Kugurofu) D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-07 00:31:54,591 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-07 00:31:54,826 - INFO - Fetching metadata from: https://nhentai.net/g/620725/ +2026-01-07 00:31:54,837 - INFO - Updating metadata for: special_tit_envoy +2026-01-07 00:31:54,837 - INFO - Searching metadata for: special tit envoy +2026-01-07 00:31:55,029 - INFO - Fetching metadata from: https://nhentai.net/g/354686/ +2026-01-07 00:31:55,037 - INFO - Updating metadata for: [Nishikawa Kou] Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-07 00:31:55,038 - INFO - Searching metadata for: Nishikawa Kou Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-07 00:31:55,248 - INFO - Updating metadata for: hot_spring_sex_with_mama_raikou +2026-01-07 00:31:55,248 - INFO - Searching metadata for: hot spring sex with mama raikou +2026-01-07 00:31:55,358 - INFO - Fetching metadata from: https://nhentai.net/g/600838/ +2026-01-07 00:31:55,466 - INFO - Fetching metadata from: https://nhentai.net/g/329703/ +2026-01-07 00:31:55,561 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 00:31:55,561 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 00:31:55,678 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Succubus Shoukan [English][Fan trad] +2026-01-07 00:31:55,678 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Succubus Shoukan [English][Fan trad] +2026-01-07 00:31:55,724 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 00:31:55,869 - INFO - Searching metadata for: Succubus Shoukan [English][Fan trad] +2026-01-07 00:31:55,910 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 00:31:56,060 - INFO - Searching MangaUpdates for: Succubus Shoukan [English][Fan trad] +2026-01-07 00:31:56,411 - INFO - Updating metadata for: nanjamo_no_botebaraive_nanjamo_vs_metamonjamo +2026-01-07 00:31:56,411 - INFO - Searching metadata for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-07 00:31:56,541 - INFO - Updating metadata for: Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love +2026-01-07 00:31:56,542 - INFO - Searching metadata for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-07 00:31:56,629 - INFO - Searching MangaUpdates for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-07 00:31:56,821 - INFO - Searching MangaUpdates for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-07 00:31:56,908 - INFO - Updating metadata for: akos_and_nozomis_discussion_of_masturbation_addictions +2026-01-07 00:31:56,908 - INFO - Searching metadata for: akos and nozomis discussion of masturbation addictions +2026-01-07 00:31:57,079 - INFO - Searching MangaUpdates for: akos and nozomis discussion of masturbation addictions +2026-01-07 00:31:57,852 - INFO - Updating metadata for: my_sister_uses_my_trash_as_masturbation_material +2026-01-07 00:31:57,853 - INFO - Searching metadata for: my sister uses my trash as masturbation material +2026-01-07 00:31:57,864 - INFO - Updating metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 00:31:57,864 - INFO - Searching metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 00:31:58,092 - INFO - Fetching metadata from: https://nhentai.net/g/520519/ +2026-01-07 00:31:58,116 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-07 00:31:58,402 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 00:31:58,403 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 00:31:58,409 - INFO - Updating metadata for: [Pino] Boin [English] +2026-01-07 00:31:58,410 - INFO - Searching metadata for: Pino Boin [English] +2026-01-07 00:31:58,573 - INFO - Fetching metadata from: https://nhentai.net/g/595922/ +2026-01-07 00:31:58,686 - INFO - Searching metadata for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 00:31:58,799 - INFO - Updating metadata for: future_detective +2026-01-07 00:31:58,800 - INFO - Searching metadata for: future detective +2026-01-07 00:31:58,966 - INFO - Fetching metadata from: https://nhentai.net/g/170580/ +2026-01-07 00:31:58,998 - INFO - Searching MangaUpdates for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 00:31:59,749 - INFO - Updating metadata for: my_cool_friend +2026-01-07 00:31:59,750 - INFO - Searching metadata for: my cool friend +2026-01-07 00:31:59,753 - INFO - Updating metadata for: what_the_mother_does_for_the_sake_of_the_son +2026-01-07 00:31:59,754 - INFO - Searching metadata for: what the mother does for the sake of the son +2026-01-07 00:32:00,000 - INFO - Fetching metadata from: https://nhentai.net/g/532249/ +2026-01-07 00:32:00,032 - INFO - Fetching metadata from: https://nhentai.net/g/588146/ +2026-01-07 00:32:00,358 - INFO - Updating metadata for: [Tawara Hiryuu] Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 00:32:00,359 - INFO - Searching metadata for: Tawara Hiryuu Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 00:32:00,364 - INFO - Updating metadata for: Akogare_no_Tomo_Mama_to_Matching_Shita_Kudan_(2024) +2026-01-07 00:32:00,365 - INFO - Searching metadata for: Akogare no Tomo Mama to Matching Shita Kudan +2026-01-07 00:32:00,601 - INFO - Searching metadata for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 00:32:00,647 - INFO - Searching MangaUpdates for: Akogare no Tomo Mama to Matching Shita Kudan +2026-01-07 00:32:00,828 - INFO - Searching MangaUpdates for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 00:32:00,989 - INFO - Updating metadata for: non_stop_fucking_with_my_friends_mom +2026-01-07 00:32:00,989 - INFO - Searching metadata for: non stop fucking with my friends mom +2026-01-07 00:32:01,210 - INFO - Searching MangaUpdates for: non stop fucking with my friends mom +2026-01-07 00:32:01,714 - INFO - Updating metadata for: gifu_to_shimai_no_kizuna +2026-01-07 00:32:01,715 - INFO - Searching metadata for: gifu to shimai no kizuna +2026-01-07 00:32:01,743 - INFO - Updating metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-07 00:32:01,744 - INFO - Searching metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-07 00:32:01,956 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-07 00:32:01,984 - INFO - Fetching metadata from: https://nhentai.net/g/97406/ +2026-01-07 00:32:02,287 - INFO - Updating metadata for: omae_no_you_na_maou_ga_iru_kai +2026-01-07 00:32:02,287 - INFO - Updating metadata for: Koyoi,_Gishiki_de_Hatemashou_(2019) +2026-01-07 00:32:02,288 - INFO - Searching metadata for: omae no you na maou ga iru kai +2026-01-07 00:32:02,288 - INFO - Searching metadata for: Koyoi, Gishiki de Hatemashou +2026-01-07 00:32:02,495 - INFO - Searching MangaUpdates for: Koyoi, Gishiki de Hatemashou +2026-01-07 00:32:02,721 - INFO - Searching MangaUpdates for: omae no you na maou ga iru kai +2026-01-07 00:32:02,979 - INFO - Updating metadata for: I will make a single mother my wife +2026-01-07 00:32:02,979 - INFO - Searching metadata for: I will make a single mother my wife +2026-01-07 00:32:03,161 - INFO - Updating metadata for: if_seems_like_everyone_except_me_has_lost_their_concept_of_eroticism +2026-01-07 00:32:03,161 - INFO - Searching metadata for: if seems like everyone except me has lost their concept of eroticism +2026-01-07 00:32:03,281 - INFO - Fetching metadata from: https://nhentai.net/g/595981/ +2026-01-07 00:32:03,376 - INFO - Searching MangaUpdates for: if seems like everyone except me has lost their concept of eroticism +2026-01-07 00:32:03,514 - INFO - Updating metadata for: barenai_you_ni +2026-01-07 00:32:03,514 - INFO - Searching metadata for: barenai you ni +2026-01-07 00:32:03,741 - INFO - Fetching metadata from: https://nhentai.net/g/591233/ +2026-01-07 00:32:03,796 - INFO - Updating metadata for: oneechan_no_dokusho_jijou +2026-01-07 00:32:03,796 - INFO - Searching metadata for: oneechan no dokusho jijou +2026-01-07 00:32:03,958 - INFO - Updating metadata for: adolescent_calculation +2026-01-07 00:32:03,959 - INFO - Searching metadata for: adolescent calculation +2026-01-07 00:32:03,985 - INFO - Searching MangaUpdates for: oneechan no dokusho jijou +2026-01-07 00:32:04,140 - INFO - Fetching metadata from: https://nhentai.net/g/183099/ +2026-01-07 00:32:04,211 - INFO - Updating metadata for: what_friend_do +2026-01-07 00:32:04,212 - INFO - Searching metadata for: what friend do +2026-01-07 00:32:04,369 - INFO - Updating metadata for: moto_incha_no_kyonyuu_yariman_imouto_ga_erosugite_oniichan_wa_mou +2026-01-07 00:32:04,369 - INFO - Searching metadata for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-07 00:32:04,446 - INFO - Fetching metadata from: https://nhentai.net/g/601381/ +2026-01-07 00:32:04,629 - INFO - Updating metadata for: kinyoku_ake_no_kyoudai_kankei +2026-01-07 00:32:04,630 - INFO - Searching metadata for: kinyoku ake no kyoudai kankei +2026-01-07 00:32:04,692 - INFO - Searching MangaUpdates for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-07 00:32:04,817 - INFO - Searching MangaUpdates for: kinyoku ake no kyoudai kankei +2026-01-07 00:32:05,169 - INFO - Updating metadata for: karinsans_hidden_side_and_her_naughty_videos_chapter +2026-01-07 00:32:05,169 - INFO - Searching metadata for: karinsans hidden side and her naughty videos chapter +2026-01-07 00:32:05,174 - INFO - Updating metadata for: aniyome_milk_elder_sisterinlaws_milk +2026-01-07 00:32:05,174 - INFO - Searching metadata for: aniyome milk elder sisterinlaws milk +2026-01-07 00:32:05,328 - INFO - Searching MangaUpdates for: aniyome milk elder sisterinlaws milk +2026-01-07 00:32:05,346 - INFO - Searching MangaUpdates for: karinsans hidden side and her naughty videos chapter +2026-01-07 00:32:05,602 - INFO - Updating metadata for: Otouto_Imouto_(2007) +2026-01-07 00:32:05,603 - INFO - Searching metadata for: Otouto Imouto +2026-01-07 00:32:05,792 - INFO - Fetching metadata from: https://nhentai.net/g/617219/ +2026-01-07 00:32:06,016 - INFO - Updating metadata for: idiopathic_erectile_syndrome_when_masturbation_fails +2026-01-07 00:32:06,016 - INFO - Searching metadata for: idiopathic erectile syndrome when masturbation fails +2026-01-07 00:32:06,174 - INFO - Fetching metadata from: https://nhentai.net/g/271977/ +2026-01-07 00:32:06,450 - INFO - Updating metadata for: sluttification_virus_anywhere_anytime_lets_fuck_already +2026-01-07 00:32:06,450 - INFO - Searching metadata for: sluttification virus anywhere anytime lets fuck already +2026-01-07 00:32:06,590 - INFO - Searching MangaUpdates for: sluttification virus anywhere anytime lets fuck already +2026-01-07 00:32:06,865 - INFO - Updating metadata for: [UC] Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-07 00:32:06,865 - INFO - Searching metadata for: UC Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-07 00:32:07,123 - INFO - Fetching metadata from: https://nhentai.net/g/603830/ +2026-01-07 00:32:07,327 - INFO - Updating metadata for: absurd_mother_and_son_incest +2026-01-07 00:32:07,327 - INFO - Searching metadata for: absurd mother and son incest +2026-01-07 00:32:07,508 - INFO - Fetching metadata from: https://nhentai.net/g/359070/ +2026-01-07 00:32:07,694 - INFO - Updating metadata for: [Ringoya (Alp)] Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-07 00:32:07,695 - INFO - Searching metadata for: Ringoya (Alp) Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-07 00:32:08,217 - INFO - Fetching metadata from: https://nhentai.net/g/620273/ +2026-01-07 00:32:08,657 - INFO - Updating metadata for: idol_wa_fan_no_semen_tank_ninshinderella_girls +2026-01-07 00:32:08,658 - INFO - Searching metadata for: idol wa fan no semen tank ninshinderella girls +2026-01-07 00:32:08,876 - INFO - Searching MangaUpdates for: idol wa fan no semen tank ninshinderella girls +2026-01-07 00:32:09,181 - INFO - Updating metadata for: [Tawawa Delivery] Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 00:32:09,181 - INFO - Searching metadata for: Tawawa Delivery Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 00:32:09,329 - INFO - Searching metadata for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 00:32:09,489 - INFO - Searching MangaUpdates for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 00:32:09,730 - INFO - Updating metadata for: incha_otouto_ga_nangoku_beach_de_kinpatsu +2026-01-07 00:32:09,731 - INFO - Searching metadata for: incha otouto ga nangoku beach de kinpatsu +2026-01-07 00:32:09,955 - INFO - Searching MangaUpdates for: incha otouto ga nangoku beach de kinpatsu +2026-01-07 00:32:10,250 - INFO - Updating metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-07 00:32:10,251 - INFO - Searching metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-07 00:32:10,421 - INFO - Searching MangaUpdates for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-07 00:32:10,760 - INFO - Updating metadata for: akira_nii_chan_who_ive_always_admired +2026-01-07 00:32:10,760 - INFO - Searching metadata for: akira nii chan who ive always admired +2026-01-07 00:32:10,934 - INFO - Searching MangaUpdates for: akira nii chan who ive always admired +2026-01-07 00:32:11,202 - INFO - Updating metadata for: [NesZ] My farmer aunt is having a problem [English] +2026-01-07 00:32:11,202 - INFO - Searching metadata for: NesZ My farmer aunt is having a problem [English] +2026-01-07 00:32:11,430 - INFO - Fetching metadata from: https://nhentai.net/g/607421/ +2026-01-07 00:32:11,654 - INFO - Updating metadata for: my_ar_glasses_can_see_various_stats_about_my_foster_sister +2026-01-07 00:32:11,654 - INFO - Searching metadata for: my ar glasses can see various stats about my foster sister +2026-01-07 00:32:11,955 - INFO - Fetching metadata from: https://nhentai.net/g/589010/ +2026-01-07 00:32:12,215 - INFO - Updating metadata for: dirty_lessons_improving_your_manhood_chapter_ +2026-01-07 00:32:12,215 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-07 00:32:12,357 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter +2026-01-07 00:32:12,659 - INFO - Updating metadata for: the_story_about_how_i_found_my_soulmate_when +2026-01-07 00:32:12,660 - INFO - Searching metadata for: the story about how i found my soulmate when +2026-01-07 00:32:12,914 - INFO - Fetching metadata from: https://nhentai.net/g/521364/ +2026-01-07 00:32:13,092 - INFO - Updating metadata for: [Hannya san] Forbidden lust +2026-01-07 00:32:13,092 - INFO - Searching metadata for: Hannya san Forbidden lust +2026-01-07 00:32:13,304 - INFO - Fetching metadata from: https://nhentai.net/g/600751/ +2026-01-07 00:32:13,502 - INFO - Updating metadata for: shojo_ane_kangaeru +2026-01-07 00:32:13,502 - INFO - Searching metadata for: shojo ane kangaeru +2026-01-07 00:32:13,685 - INFO - Fetching metadata from: https://nhentai.net/g/447249/ +2026-01-07 00:32:13,866 - INFO - Updating metadata for: neechan_to_sei_shori_shiteru +2026-01-07 00:32:13,866 - INFO - Searching metadata for: neechan to sei shori shiteru +2026-01-07 00:32:14,036 - INFO - Searching MangaUpdates for: neechan to sei shori shiteru +2026-01-07 00:32:14,438 - INFO - Updating metadata for: [moNmomo] Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-07 00:32:14,438 - INFO - Searching metadata for: moNmomo Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-07 00:32:14,615 - INFO - Fetching metadata from: https://nhentai.net/g/618662/ +2026-01-07 00:32:14,786 - INFO - Updating metadata for: fushoku_tensei_tamashii_kawattara_honki_dasu +2026-01-07 00:32:14,786 - INFO - Searching metadata for: fushoku tensei tamashii kawattara honki dasu +2026-01-07 00:32:14,963 - INFO - Fetching metadata from: https://nhentai.net/g/574276/ +2026-01-07 00:32:15,186 - INFO - Updating metadata for: [Mochi-ya (Karoti)] Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-07 00:32:15,186 - INFO - Searching metadata for: Mochi-ya (Karoti) Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-07 00:32:15,446 - INFO - Fetching metadata from: https://nhentai.net/g/620624/ +2026-01-07 00:32:15,637 - INFO - Updating metadata for: i_woke_up_to_my_naked_apron_sister_and_tried_fucking_her +2026-01-07 00:32:15,638 - INFO - Searching metadata for: i woke up to my naked apron sister and tried fucking her +2026-01-07 00:32:15,932 - INFO - Fetching metadata from: https://nhentai.net/g/602663/ +2026-01-07 00:32:16,276 - INFO - Updating metadata for: little_sister_paradise +2026-01-07 00:32:16,277 - INFO - Searching metadata for: little sister paradise +2026-01-07 00:32:16,452 - INFO - Fetching metadata from: https://nhentai.net/g/567713/ +2026-01-07 00:32:16,666 - INFO - Updating metadata for: my_mature_older_sister_the_crazy_convenient_relationship_of_an_older_sister_and_younger_brother_in_their_thirtys +2026-01-07 00:32:16,666 - INFO - Searching metadata for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-07 00:32:16,970 - INFO - Searching MangaUpdates for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-07 00:32:17,545 - INFO - Updating metadata for: sex_season +2026-01-07 00:32:17,546 - INFO - Searching metadata for: sex season +2026-01-07 00:32:17,751 - INFO - Fetching metadata from: https://nhentai.net/g/618390/ +2026-01-07 00:32:18,048 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite _ Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-07 00:32:18,048 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-07 00:32:18,458 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-07 00:32:19,755 - INFO - Updating metadata for: that_pov_sex_thing +2026-01-07 00:32:19,756 - INFO - Searching metadata for: that pov sex thing +2026-01-07 00:32:19,931 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-07 00:32:20,167 - INFO - Updating metadata for: hot_teacher +2026-01-07 00:32:20,168 - INFO - Searching metadata for: hot teacher +2026-01-07 00:32:20,438 - INFO - Fetching metadata from: https://nhentai.net/g/620990/ +2026-01-07 00:32:20,620 - INFO - Updating metadata for: two_siblings_fela_pure +2026-01-07 00:32:20,620 - INFO - Searching metadata for: two siblings fela pure +2026-01-07 00:32:20,776 - INFO - Fetching metadata from: https://nhentai.net/g/65576/ +2026-01-07 00:32:20,983 - INFO - Updating metadata for: on_the_night_of_the_ceremony +2026-01-07 00:32:20,983 - INFO - Searching metadata for: on the night of the ceremony +2026-01-07 00:32:21,257 - INFO - Fetching metadata from: https://nhentai.net/g/530970/ +2026-01-07 00:32:21,431 - INFO - Updating metadata for: [Takasugi Kou] Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-07 00:32:21,432 - INFO - Searching metadata for: Takasugi Kou Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-07 00:32:21,634 - INFO - Fetching metadata from: https://nhentai.net/g/599358/ +2026-01-07 00:32:21,800 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 00:32:21,800 - INFO - Searching metadata for: Mustard Teikoku (Europia) Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 00:32:22,228 - INFO - Searching metadata for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 00:32:22,653 - INFO - Searching MangaUpdates for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 00:32:23,249 - INFO - Updating metadata for: father_stop_it +2026-01-07 00:32:23,249 - INFO - Searching metadata for: father stop it +2026-01-07 00:32:23,426 - INFO - Fetching metadata from: https://nhentai.net/g/549536/ +2026-01-07 00:32:23,612 - INFO - Updating metadata for: organize +2026-01-07 00:32:23,612 - INFO - Searching metadata for: organize +2026-01-07 00:32:23,764 - INFO - Fetching metadata from: https://nhentai.net/g/215772/ +2026-01-07 00:32:23,950 - INFO - Updating metadata for: seventy_two +2026-01-07 00:32:23,950 - INFO - Searching metadata for: seventy two +2026-01-07 00:32:24,094 - INFO - Fetching metadata from: https://nhentai.net/g/110977/ +2026-01-07 00:32:24,273 - INFO - Updating metadata for: a_sister_who_wants_to_watch_siblings +2026-01-07 00:32:24,273 - INFO - Searching metadata for: a sister who wants to watch siblings +2026-01-07 00:32:24,570 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-07 00:32:24,739 - INFO - Updating metadata for: dirty_lessons_improving_your_manhood_chapter +2026-01-07 00:32:24,739 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-07 00:32:24,887 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter +2026-01-07 00:32:25,295 - INFO - Updating metadata for: from_now_on_you_are_my_livestock_chapter +2026-01-07 00:32:25,295 - INFO - Searching metadata for: from now on you are my livestock chapter +2026-01-07 00:32:25,564 - INFO - Searching MangaUpdates for: from now on you are my livestock chapter +2026-01-07 00:32:26,002 - INFO - Updating metadata for: a_room_you_cant_leave_after_having_sex +2026-01-07 00:32:26,003 - INFO - Searching metadata for: a room you cant leave after having sex +2026-01-07 00:32:26,215 - INFO - Searching MangaUpdates for: a room you cant leave after having sex +2026-01-07 00:32:26,497 - INFO - Updating metadata for: narikawari_chapter_1 +2026-01-07 00:32:26,498 - INFO - Searching metadata for: narikawari chapter 1 +2026-01-07 00:32:26,641 - INFO - Searching MangaUpdates for: narikawari chapter 1 +2026-01-07 00:32:26,898 - INFO - Updating metadata for: [Ookami Shoujo Dan (Mukoujima Tenro)] Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-07 00:32:26,898 - INFO - Searching metadata for: Ookami Shoujo Dan (Mukoujima Tenro) Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-07 00:32:27,286 - INFO - Fetching metadata from: https://nhentai.net/g/617181/ +2026-01-07 00:32:27,482 - INFO - Updating metadata for: welcome_to_the_brothel_school_festival +2026-01-07 00:32:27,482 - INFO - Searching metadata for: welcome to the brothel school festival +2026-01-07 00:32:27,721 - INFO - Fetching metadata from: https://nhentai.net/g/601119/ +2026-01-07 00:32:27,950 - INFO - Updating metadata for: [Oroshi Ponzu] A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 00:32:27,950 - INFO - Searching metadata for: Oroshi Ponzu A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 00:32:28,279 - INFO - Searching metadata for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 00:32:28,617 - INFO - Searching MangaUpdates for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 00:32:29,329 - INFO - Updating metadata for: step_child_swapping_satsuki_imonet +2026-01-07 00:32:29,329 - INFO - Searching metadata for: step child swapping satsuki imonet +2026-01-07 00:32:29,474 - INFO - Searching MangaUpdates for: step child swapping satsuki imonet +2026-01-07 00:32:29,809 - INFO - Updating metadata for: the_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother_in_laws_countryside_where_there_is_an_h_custom +2026-01-07 00:32:29,809 - INFO - Searching metadata for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-07 00:32:30,188 - INFO - Searching MangaUpdates for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-07 00:32:31,027 - INFO - Updating metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-07 00:32:31,027 - INFO - Searching metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-07 00:32:31,466 - INFO - Searching MangaUpdates for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-07 00:32:32,379 - INFO - Updating metadata for: friends_forever +2026-01-07 00:32:32,379 - INFO - Searching metadata for: friends forever +2026-01-07 00:32:32,533 - INFO - Fetching metadata from: https://nhentai.net/g/588356/ +2026-01-07 00:32:32,708 - INFO - Updating metadata for: were_siblings_but_lets_tie_the_knot +2026-01-07 00:32:32,708 - INFO - Searching metadata for: were siblings but lets tie the knot +2026-01-07 00:32:32,870 - INFO - Searching MangaUpdates for: were siblings but lets tie the knot +2026-01-07 00:32:33,274 - INFO - Updating metadata for: takebe_saorichan_to_iu_kanojo +2026-01-07 00:32:33,275 - INFO - Searching metadata for: takebe saorichan to iu kanojo +2026-01-07 00:32:33,408 - INFO - Searching MangaUpdates for: takebe saorichan to iu kanojo +2026-01-07 00:32:33,647 - INFO - Updating metadata for: mega_milk +2026-01-07 00:32:33,647 - INFO - Searching metadata for: mega milk +2026-01-07 00:32:33,914 - INFO - Fetching metadata from: https://nhentai.net/g/616449/ +2026-01-07 00:32:34,104 - INFO - Updating metadata for: [Gomikasu Tarou] Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 00:32:34,104 - INFO - Searching metadata for: Gomikasu Tarou Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 00:32:34,435 - INFO - Searching metadata for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 00:32:34,853 - INFO - Searching MangaUpdates for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 00:32:35,457 - INFO - Updating metadata for: a_gentle_mommy_who_secret_makes +2026-01-07 00:32:35,457 - INFO - Searching metadata for: a gentle mommy who secret makes +2026-01-07 00:32:35,714 - INFO - Fetching metadata from: https://nhentai.net/g/546176/ +2026-01-07 00:32:35,903 - INFO - Updating metadata for: i_got_an_elf_little_sister +2026-01-07 00:32:35,903 - INFO - Searching metadata for: i got an elf little sister +2026-01-07 00:32:36,173 - INFO - Fetching metadata from: https://nhentai.net/g/544668/ +2026-01-07 00:32:36,380 - INFO - Updating metadata for: [Yue] Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 00:32:36,380 - INFO - Searching metadata for: Yue Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 00:32:36,673 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 00:32:37,077 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 00:32:37,496 - INFO - Updating metadata for: i_became_kirarachans_manager +2026-01-07 00:32:37,496 - INFO - Searching metadata for: i became kirarachans manager +2026-01-07 00:32:37,684 - INFO - Searching MangaUpdates for: i became kirarachans manager +2026-01-07 00:32:37,916 - INFO - Updating metadata for: Sensei_wa_Ore_no_Dorei_Danshikou_wa_Midara_na_Kangoku_(2014) +2026-01-07 00:32:37,916 - INFO - Searching metadata for: Sensei wa Ore no Dorei Danshikou wa Midara na Kangoku +2026-01-07 00:32:38,136 - INFO - Searching MangaUpdates for: Sensei wa Ore no Dorei Danshikou wa Midara na Kangoku +2026-01-07 00:32:38,473 - INFO - Updating metadata for: i_am_to_record_a_video_with_two_sadistic_women +2026-01-07 00:32:38,473 - INFO - Searching metadata for: i am to record a video with two sadistic women +2026-01-07 00:32:38,823 - INFO - Fetching metadata from: https://nhentai.net/g/551074/ +2026-01-07 00:32:39,098 - INFO - Updating metadata for: kusabi +2026-01-07 00:32:39,098 - INFO - Searching metadata for: kusabi +2026-01-07 00:32:39,355 - INFO - Fetching metadata from: https://nhentai.net/g/577169/ +2026-01-07 00:32:39,537 - INFO - Updating metadata for: [OVing (Obui)] Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-07 00:32:39,537 - INFO - Searching metadata for: OVing (Obui) Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-07 00:32:39,724 - INFO - Fetching metadata from: https://nhentai.net/g/556035/ +2026-01-07 00:32:39,939 - INFO - Updating metadata for: the_imprisoned_flower +2026-01-07 00:32:39,940 - INFO - Searching metadata for: the imprisoned flower +2026-01-07 00:32:40,120 - INFO - Fetching metadata from: https://nhentai.net/g/567049/ +2026-01-07 00:32:40,289 - INFO - Updating metadata for: semi_pro_racing_stars +2026-01-07 00:32:40,290 - INFO - Searching metadata for: semi pro racing stars +2026-01-07 00:32:40,459 - INFO - Fetching metadata from: https://nhentai.net/g/380272/ +2026-01-07 00:32:40,677 - INFO - Updating metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-07 00:32:40,677 - INFO - Searching metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-07 00:32:40,975 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-07 00:32:41,151 - INFO - Updating metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-07 00:32:41,151 - INFO - Searching metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-07 00:32:41,404 - INFO - Fetching metadata from: https://nhentai.net/g/583039/ +2026-01-07 00:32:41,585 - INFO - Updating metadata for: [Nyuu Koubou Koromotake] Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-07 00:32:41,586 - INFO - Searching metadata for: Nyuu Koubou Koromotake Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-07 00:32:41,860 - INFO - Fetching metadata from: https://nhentai.net/g/603798/ +2026-01-07 00:32:42,052 - INFO - Updating metadata for: crossdressing_hero_and_dancer_priestess_chapter +2026-01-07 00:32:42,052 - INFO - Searching metadata for: crossdressing hero and dancer priestess chapter +2026-01-07 00:32:42,203 - INFO - Searching MangaUpdates for: crossdressing hero and dancer priestess chapter +2026-01-07 00:32:42,563 - INFO - Updating metadata for: tsugumonotachi_hachi_hen +2026-01-07 00:32:42,563 - INFO - Searching metadata for: tsugumonotachi hachi hen +2026-01-07 00:32:42,693 - INFO - Searching MangaUpdates for: tsugumonotachi hachi hen +2026-01-07 00:32:42,933 - INFO - Updating metadata for: leave_it_all_to_me_little_brother +2026-01-07 00:32:42,933 - INFO - Searching metadata for: leave it all to me little brother +2026-01-07 00:32:43,208 - INFO - Fetching metadata from: https://nhentai.net/g/548496/ +2026-01-07 00:32:43,402 - INFO - Updating metadata for: imouto_to_rekawatta_oniichan_wa_chapter +2026-01-07 00:32:43,403 - INFO - Searching metadata for: imouto to rekawatta oniichan wa chapter +2026-01-07 00:32:43,584 - INFO - Searching MangaUpdates for: imouto to rekawatta oniichan wa chapter +2026-01-07 00:32:43,951 - INFO - Updating metadata for: Kanojo_ni_Naritai_Kimi_to_Boku_(2018) +2026-01-07 00:32:43,951 - INFO - Searching metadata for: Kanojo ni Naritai Kimi to Boku +2026-01-07 00:32:44,182 - INFO - Searching MangaUpdates for: Kanojo ni Naritai Kimi to Boku +2026-01-07 00:32:44,577 - INFO - Updating metadata for: Saimin_Appli_(Yuma)_(2024) +2026-01-07 00:32:44,577 - INFO - Searching metadata for: Saimin Appli (Yuma) +2026-01-07 00:32:44,742 - INFO - Searching MangaUpdates for: Saimin Appli (Yuma) +2026-01-07 00:32:44,925 - INFO - Updating metadata for: the_demon_lords_bride +2026-01-07 00:32:44,925 - INFO - Searching metadata for: the demon lords bride +2026-01-07 00:32:45,089 - INFO - Searching MangaUpdates for: the demon lords bride +2026-01-07 00:32:45,303 - INFO - Updating metadata for: [satsukiimonet (Satsuki Imonet)] HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-07 00:32:45,304 - INFO - Searching metadata for: satsukiimonet (Satsuki Imonet) HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-07 00:32:45,496 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-07 00:32:45,699 - INFO - Updating metadata for: special_tit_envoy +2026-01-07 00:32:45,700 - INFO - Searching metadata for: special tit envoy +2026-01-07 00:32:45,858 - INFO - Fetching metadata from: https://nhentai.net/g/354686/ +2026-01-07 00:32:46,047 - INFO - Updating metadata for: hot_spring_sex_with_mama_raikou +2026-01-07 00:32:46,048 - INFO - Searching metadata for: hot spring sex with mama raikou +2026-01-07 00:32:46,258 - INFO - Fetching metadata from: https://nhentai.net/g/329703/ +2026-01-07 00:32:46,432 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Succubus Shoukan [English][Fan trad] +2026-01-07 00:32:46,432 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Succubus Shoukan [English][Fan trad] +2026-01-07 00:32:46,578 - INFO - Searching metadata for: Succubus Shoukan [English][Fan trad] +2026-01-07 00:32:46,733 - INFO - Searching MangaUpdates for: Succubus Shoukan [English][Fan trad] +2026-01-07 00:32:47,061 - INFO - Updating metadata for: nanjamo_no_botebaraive_nanjamo_vs_metamonjamo +2026-01-07 00:32:47,061 - INFO - Searching metadata for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-07 00:32:47,194 - INFO - Searching MangaUpdates for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-07 00:32:47,498 - INFO - Updating metadata for: akos_and_nozomis_discussion_of_masturbation_addictions +2026-01-07 00:32:47,498 - INFO - Searching metadata for: akos and nozomis discussion of masturbation addictions +2026-01-07 00:32:47,652 - INFO - Searching MangaUpdates for: akos and nozomis discussion of masturbation addictions +2026-01-07 00:32:47,931 - INFO - Updating metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 00:32:47,931 - INFO - Searching metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 00:32:48,221 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-07 00:32:48,424 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 00:32:48,425 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 00:32:48,740 - INFO - Searching metadata for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 00:32:48,986 - INFO - Searching MangaUpdates for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 00:32:50,124 - INFO - Updating metadata for: my_cool_friend +2026-01-07 00:32:50,124 - INFO - Searching metadata for: my cool friend +2026-01-07 00:32:50,305 - INFO - Fetching metadata from: https://nhentai.net/g/588146/ +2026-01-07 00:32:50,500 - INFO - Updating metadata for: Akogare_no_Tomo_Mama_to_Matching_Shita_Kudan_(2024) +2026-01-07 00:32:50,500 - INFO - Searching metadata for: Akogare no Tomo Mama to Matching Shita Kudan +2026-01-07 00:32:50,757 - INFO - Searching MangaUpdates for: Akogare no Tomo Mama to Matching Shita Kudan +2026-01-07 00:32:51,265 - INFO - Updating metadata for: non_stop_fucking_with_my_friends_mom +2026-01-07 00:32:51,265 - INFO - Searching metadata for: non stop fucking with my friends mom +2026-01-07 00:32:51,476 - INFO - Searching MangaUpdates for: non stop fucking with my friends mom +2026-01-07 00:32:52,030 - INFO - Updating metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-07 00:32:52,030 - INFO - Searching metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-07 00:32:52,221 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-07 00:32:52,402 - INFO - Updating metadata for: Koyoi,_Gishiki_de_Hatemashou_(2019) +2026-01-07 00:32:52,403 - INFO - Searching metadata for: Koyoi, Gishiki de Hatemashou +2026-01-07 00:32:52,566 - INFO - Searching MangaUpdates for: Koyoi, Gishiki de Hatemashou +2026-01-07 00:32:52,837 - INFO - Updating metadata for: I will make a single mother my wife +2026-01-07 00:32:52,837 - INFO - Searching metadata for: I will make a single mother my wife +2026-01-07 00:32:53,103 - INFO - Fetching metadata from: https://nhentai.net/g/595981/ +2026-01-07 00:32:53,304 - INFO - Updating metadata for: barenai_you_ni +2026-01-07 00:32:53,304 - INFO - Searching metadata for: barenai you ni +2026-01-07 00:32:53,490 - INFO - Fetching metadata from: https://nhentai.net/g/591233/ +2026-01-07 00:32:53,673 - INFO - Updating metadata for: adolescent_calculation +2026-01-07 00:32:53,673 - INFO - Searching metadata for: adolescent calculation +2026-01-07 00:32:53,818 - INFO - Fetching metadata from: https://nhentai.net/g/183099/ +2026-01-07 00:32:54,007 - INFO - Updating metadata for: moto_incha_no_kyonyuu_yariman_imouto_ga_erosugite_oniichan_wa_mou +2026-01-07 00:32:54,007 - INFO - Searching metadata for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-07 00:32:54,275 - INFO - Searching MangaUpdates for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-07 00:32:54,690 - INFO - Updating metadata for: karinsans_hidden_side_and_her_naughty_videos_chapter +2026-01-07 00:32:54,691 - INFO - Searching metadata for: karinsans hidden side and her naughty videos chapter +2026-01-07 00:32:54,829 - INFO - Searching MangaUpdates for: karinsans hidden side and her naughty videos chapter +2026-01-07 01:44:09,988 - INFO - Starting metadata update in /comics/manga (Force: True)... +2026-01-07 01:44:10,048 - INFO - Updating metadata for: catch_you_at_the_indoor_beach +2026-01-07 01:44:10,049 - INFO - Searching metadata for: catch you at the indoor beach +2026-01-07 01:44:10,397 - INFO - Searching MangaUpdates for: catch you at the indoor beach +2026-01-07 01:44:11,143 - INFO - Updating metadata for: [Omapuu] Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-07 01:44:11,144 - INFO - Searching metadata for: Omapuu Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya] +2026-01-07 01:44:11,357 - INFO - Fetching metadata from: https://nhentai.net/g/602806/ +2026-01-07 01:44:11,597 - INFO - Updating metadata for: [Kazuhiro] Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-07 01:44:11,597 - INFO - Searching metadata for: Kazuhiro Mesuiki ~Hame Trip~ [English] [N04h] +2026-01-07 01:44:11,788 - INFO - Fetching metadata from: https://nhentai.net/g/268292/ +2026-01-07 01:44:12,105 - INFO - Updating metadata for: Injoku_no_Kizuna_(2006) +2026-01-07 01:44:12,106 - INFO - Searching metadata for: Injoku no Kizuna +2026-01-07 01:44:12,278 - INFO - Searching MangaUpdates for: Injoku no Kizuna +2026-01-07 01:44:12,709 - INFO - Updating metadata for: [Itaba Hiroshi] Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 01:44:12,709 - INFO - Searching metadata for: Itaba Hiroshi Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 01:44:12,883 - INFO - Searching metadata for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 01:44:13,054 - INFO - Searching MangaUpdates for: Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital] +2026-01-07 01:44:13,582 - INFO - Updating metadata for: shounen_ga_otona_ni_natta_natsu +2026-01-07 01:44:13,582 - INFO - Searching metadata for: shounen ga otona ni natta natsu +2026-01-07 01:44:13,895 - INFO - Fetching metadata from: https://nhentai.net/g/571244/ +2026-01-07 01:44:14,239 - INFO - Updating metadata for: i_have_no_choice_but_to_have_sex_with_my_mother_chapter +2026-01-07 01:44:14,239 - INFO - Searching metadata for: i have no choice but to have sex with my mother chapter +2026-01-07 01:44:14,599 - INFO - Searching MangaUpdates for: i have no choice but to have sex with my mother chapter +2026-01-07 01:44:15,048 - INFO - Updating metadata for: [Airandou] Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-07 01:44:15,049 - INFO - Searching metadata for: Airandou Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored] +2026-01-07 01:44:15,440 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-07 01:44:15,672 - INFO - Updating metadata for: on_a_stormy_night +2026-01-07 01:44:15,672 - INFO - Searching metadata for: on a stormy night +2026-01-07 01:44:15,936 - INFO - Fetching metadata from: https://nhentai.net/g/616543/ +2026-01-07 01:44:16,141 - INFO - Updating metadata for: jibakureichan_wa_oppai_ga_yowai_chapter +2026-01-07 01:44:16,141 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter +2026-01-07 01:44:16,294 - INFO - Searching MangaUpdates for: jibakureichan wa oppai ga yowai chapter +2026-01-07 01:44:16,683 - INFO - Updating metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-07 01:44:16,683 - INFO - Searching metadata for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-07 01:44:16,883 - INFO - Searching MangaUpdates for: (C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG] +2026-01-07 01:44:17,406 - INFO - Updating metadata for: last_day_of_summer_vacation_sex_sex_sex +2026-01-07 01:44:17,406 - INFO - Searching metadata for: last day of summer vacation sex sex sex +2026-01-07 01:44:17,620 - INFO - Searching MangaUpdates for: last day of summer vacation sex sex sex +2026-01-07 01:44:17,941 - INFO - Updating metadata for: SEX Shinai to Derarenai Heya desu. _ The Room You Can't Leave Until You Have Sex +2026-01-07 01:44:17,941 - INFO - Searching metadata for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-07 01:44:18,260 - INFO - Searching MangaUpdates for: SEX Shinai to Derarenai Heya desu. The Room You Can't Leave Until You Have Sex +2026-01-07 01:44:18,726 - INFO - Updating metadata for: [Utsutsu Minoru] Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-07 01:44:18,726 - INFO - Searching metadata for: Utsutsu Minoru Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital] +2026-01-07 01:44:18,940 - INFO - Fetching metadata from: https://nhentai.net/g/268598/ +2026-01-07 01:44:19,142 - INFO - Updating metadata for: [Yue] Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-07 01:44:19,142 - INFO - Searching metadata for: Yue Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle] +2026-01-07 01:44:19,454 - INFO - Fetching metadata from: https://nhentai.net/g/571461/ +2026-01-07 01:44:19,677 - INFO - Updating metadata for: mama_nge +2026-01-07 01:44:19,677 - INFO - Searching metadata for: mama nge +2026-01-07 01:44:19,863 - INFO - Fetching metadata from: https://nhentai.net/g/375142/ +2026-01-07 01:44:20,076 - INFO - Updating metadata for: a_story_about_getting_trained_by_my_older_sister +2026-01-07 01:44:20,077 - INFO - Searching metadata for: a story about getting trained by my older sister +2026-01-07 01:44:20,318 - INFO - Fetching metadata from: https://nhentai.net/g/491013/ +2026-01-07 01:44:20,550 - INFO - Updating metadata for: shake_hip +2026-01-07 01:44:20,550 - INFO - Searching metadata for: shake hip +2026-01-07 01:44:20,755 - INFO - Fetching metadata from: https://nhentai.net/g/111922/ +2026-01-07 01:44:20,950 - INFO - Updating metadata for: [Hannya san] Mom son +2026-01-07 01:44:20,950 - INFO - Searching metadata for: Hannya san Mom son +2026-01-07 01:44:21,172 - INFO - Fetching metadata from: https://nhentai.net/g/606383/ +2026-01-07 01:44:21,371 - INFO - Updating metadata for: Frustrated Share House Residents +2026-01-07 01:44:21,371 - INFO - Searching metadata for: Frustrated Share House Residents +2026-01-07 01:44:21,557 - INFO - Fetching metadata from: https://nhentai.net/g/539658/ +2026-01-07 01:44:21,788 - INFO - Updating metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-07 01:44:21,788 - INFO - Searching metadata for: a room you can't leave without having lovey-dovey sex with fuyuko chan +2026-01-07 01:44:22,159 - INFO - Fetching metadata from: https://nhentai.net/g/571333/ +2026-01-07 01:44:22,355 - INFO - Updating metadata for: oni_no_kyouiku_mama_ga_musuko_to_amaama_sex_made +2026-01-07 01:44:22,355 - INFO - Searching metadata for: oni no kyouiku mama ga musuko to amaama sex made +2026-01-07 01:44:22,716 - INFO - Fetching metadata from: https://nhentai.net/g/605131/ +2026-01-07 01:44:22,949 - INFO - Updating metadata for: immoral_relationship +2026-01-07 01:44:22,949 - INFO - Searching metadata for: immoral relationship +2026-01-07 01:44:23,160 - INFO - Fetching metadata from: https://nhentai.net/g/578989/ +2026-01-07 01:44:23,409 - INFO - Updating metadata for: quick_return_home +2026-01-07 01:44:23,409 - INFO - Searching metadata for: quick return home +2026-01-07 01:44:23,619 - INFO - Fetching metadata from: https://nhentai.net/g/285865/ +2026-01-07 01:44:23,834 - INFO - Updating metadata for: sister_succubus +2026-01-07 01:44:23,835 - INFO - Searching metadata for: sister succubus +2026-01-07 01:44:24,046 - INFO - Fetching metadata from: https://nhentai.net/g/620689/ +2026-01-07 01:44:24,276 - INFO - Updating metadata for: i_fell_for_a_female_ghost +2026-01-07 01:44:24,277 - INFO - Searching metadata for: i fell for a female ghost +2026-01-07 01:44:24,556 - INFO - Fetching metadata from: https://nhentai.net/g/545216/ +2026-01-07 01:44:24,754 - INFO - Updating metadata for: [Mata Ashita (Oohira Sunset)] Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun_tl] [Digital] +2026-01-07 01:44:24,754 - INFO - Searching metadata for: Mata Ashita (Oohira Sunset) Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-07 01:44:25,186 - INFO - Searching metadata for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-07 01:44:25,609 - INFO - Searching MangaUpdates for: Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun tl] [Digital] +2026-01-07 01:44:26,570 - INFO - Updating metadata for: shrine_maidens_of_injin +2026-01-07 01:44:26,570 - INFO - Searching metadata for: shrine maidens of injin +2026-01-07 01:44:26,755 - INFO - Fetching metadata from: https://nhentai.net/g/574337/ +2026-01-07 01:44:26,990 - INFO - Updating metadata for: the_daily_lives_of_an_older_brother_x_four_younger_sister +2026-01-07 01:44:26,991 - INFO - Searching metadata for: the daily lives of an older brother x four younger sister +2026-01-07 01:44:27,261 - INFO - Searching MangaUpdates for: the daily lives of an older brother x four younger sister +2026-01-07 01:44:27,823 - INFO - Updating metadata for: all_eyes_on_me +2026-01-07 01:44:27,823 - INFO - Searching metadata for: all eyes on me +2026-01-07 01:44:28,083 - INFO - Fetching metadata from: https://nhentai.net/g/311059/ +2026-01-07 01:44:28,347 - INFO - Updating metadata for: sister_was_thinking_about_her_younger_brothers_sexual_desire_chapter +2026-01-07 01:44:28,347 - INFO - Searching metadata for: sister was thinking about her younger brothers sexual desire chapter +2026-01-07 01:44:28,528 - INFO - Searching MangaUpdates for: sister was thinking about her younger brothers sexual desire chapter +2026-01-07 01:44:29,005 - INFO - Updating metadata for: two_big_tit_gals_find_a_bored_boy +2026-01-07 01:44:29,006 - INFO - Searching metadata for: two big tit gals find a bored boy +2026-01-07 01:44:29,224 - INFO - Fetching metadata from: https://nhentai.net/g/309103/ +2026-01-07 01:44:29,416 - INFO - Updating metadata for: a_sulky_older_sister_who_wants_to_concentrate_on_her_studies +2026-01-07 01:44:29,417 - INFO - Searching metadata for: a sulky older sister who wants to concentrate on her studies +2026-01-07 01:44:29,683 - INFO - Fetching metadata from: https://nhentai.net/g/530432/ +2026-01-07 01:44:29,878 - INFO - Updating metadata for: asekaki_nee_no_neteiru_aida_ni +2026-01-07 01:44:29,879 - INFO - Searching metadata for: asekaki nee no neteiru aida ni +2026-01-07 01:44:30,174 - INFO - Fetching metadata from: https://nhentai.net/g/589040/ +2026-01-07 01:44:30,355 - INFO - Updating metadata for: siblings_matchup_secret_mating_sex_life +2026-01-07 01:44:30,355 - INFO - Searching metadata for: siblings matchup secret mating sex life +2026-01-07 01:44:30,531 - INFO - Fetching metadata from: https://nhentai.net/g/497386/ +2026-01-07 01:44:30,740 - INFO - Updating metadata for: Siblings having sex in the living room like it's normal +2026-01-07 01:44:30,741 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal +2026-01-07 01:44:31,108 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal +2026-01-07 01:44:31,605 - INFO - Updating metadata for: enveloped_by_a_ghost +2026-01-07 01:44:31,605 - INFO - Searching metadata for: enveloped by a ghost +2026-01-07 01:44:31,858 - INFO - Fetching metadata from: https://nhentai.net/g/543084/ +2026-01-07 01:44:32,101 - INFO - Updating metadata for: papa_is_a_loser +2026-01-07 01:44:32,101 - INFO - Searching metadata for: papa is a loser +2026-01-07 01:44:32,387 - INFO - Fetching metadata from: https://nhentai.net/g/543091/ +2026-01-07 01:44:32,597 - INFO - Updating metadata for: hari_x2_honey +2026-01-07 01:44:32,597 - INFO - Searching metadata for: hari x2 honey +2026-01-07 01:44:32,791 - INFO - Searching MangaUpdates for: hari x2 honey +2026-01-07 01:44:33,103 - INFO - Updating metadata for: first_sperm_loving_succubus_dinner_of_cowgirl_and_creampie_sex +2026-01-07 01:44:33,103 - INFO - Searching metadata for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-07 01:44:33,300 - INFO - Searching MangaUpdates for: first sperm loving succubus dinner of cowgirl and creampie sex +2026-01-07 01:44:33,747 - INFO - Updating metadata for: i_want_it_nurse_me +2026-01-07 01:44:33,748 - INFO - Searching metadata for: i want it nurse me +2026-01-07 01:44:34,093 - INFO - Fetching metadata from: https://nhentai.net/g/308512/ +2026-01-07 01:44:34,316 - INFO - Updating metadata for: fairy_feature_the_mayors_secret +2026-01-07 01:44:34,316 - INFO - Searching metadata for: fairy feature the mayors secret +2026-01-07 01:44:34,471 - INFO - Searching MangaUpdates for: fairy feature the mayors secret +2026-01-07 01:44:34,851 - INFO - Updating metadata for: starting_today_im +2026-01-07 01:44:34,851 - INFO - Searching metadata for: starting today im +2026-01-07 01:44:35,064 - INFO - Searching MangaUpdates for: starting today im +2026-01-07 01:44:35,305 - INFO - Updating metadata for: naive_little_sister_chapter +2026-01-07 01:44:35,305 - INFO - Searching metadata for: naive little sister chapter +2026-01-07 01:44:35,456 - INFO - Searching MangaUpdates for: naive little sister chapter +2026-01-07 01:44:35,731 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite +2026-01-07 01:44:35,732 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite +2026-01-07 01:44:36,056 - INFO - Fetching metadata from: https://nhentai.net/g/596920/ +2026-01-07 01:44:36,286 - INFO - Updating metadata for: autumn_lovers +2026-01-07 01:44:36,286 - INFO - Searching metadata for: autumn lovers +2026-01-07 01:44:36,486 - INFO - Fetching metadata from: https://nhentai.net/g/320576/ +2026-01-07 01:44:36,679 - INFO - Updating metadata for: training_the_older_sister_momomadoka +2026-01-07 01:44:36,679 - INFO - Searching metadata for: training the older sister momomadoka +2026-01-07 01:44:36,866 - INFO - Fetching metadata from: https://nhentai.net/g/546382/ +2026-01-07 01:44:37,065 - INFO - Updating metadata for: doukyuusei_gal_3_ningumi_to +2026-01-07 01:44:37,065 - INFO - Searching metadata for: doukyuusei gal 3 ningumi to +2026-01-07 01:44:37,306 - INFO - Searching MangaUpdates for: doukyuusei gal 3 ningumi to +2026-01-07 01:44:37,701 - INFO - Updating metadata for: Hitoduma Ane _ Married Sister +2026-01-07 01:44:37,702 - INFO - Searching metadata for: Hitoduma Ane Married Sister +2026-01-07 01:44:37,897 - INFO - Searching MangaUpdates for: Hitoduma Ane Married Sister +2026-01-07 01:44:38,545 - INFO - Updating metadata for: winter_omake_bon +2026-01-07 01:44:38,545 - INFO - Searching metadata for: winter omake bon +2026-01-07 01:44:38,767 - INFO - Fetching metadata from: https://nhentai.net/g/527207/ +2026-01-07 01:44:38,961 - INFO - Updating metadata for: perverted_hypnosis_experiment +2026-01-07 01:44:38,961 - INFO - Searching metadata for: perverted hypnosis experiment +2026-01-07 01:44:39,132 - INFO - Fetching metadata from: https://nhentai.net/g/521144/ +2026-01-07 01:44:39,359 - INFO - Updating metadata for: kyoudai_no_naka +2026-01-07 01:44:39,359 - INFO - Searching metadata for: kyoudai no naka +2026-01-07 01:44:39,616 - INFO - Fetching metadata from: https://nhentai.net/g/618441/ +2026-01-07 01:44:39,825 - INFO - Updating metadata for: sometimes_i_draw_manga +2026-01-07 01:44:39,825 - INFO - Searching metadata for: sometimes i draw manga +2026-01-07 01:44:40,038 - INFO - Fetching metadata from: https://nhentai.net/g/519608/ +2026-01-07 01:44:40,225 - INFO - Updating metadata for: Stigmatized_Property_(2019) +2026-01-07 01:44:40,226 - INFO - Searching metadata for: Stigmatized Property +2026-01-07 01:44:40,373 - INFO - Searching MangaUpdates for: Stigmatized Property +2026-01-07 01:44:40,704 - INFO - Updating metadata for: apron +2026-01-07 01:44:40,704 - INFO - Searching metadata for: apron +2026-01-07 01:44:40,974 - INFO - Fetching metadata from: https://nhentai.net/g/621140/ +2026-01-07 01:44:41,189 - INFO - Updating metadata for: namaiki_na_hahaoya_o_honnin_ni_mo_kizukarezu_ni_minkan_suru_houhou +2026-01-07 01:44:41,189 - INFO - Searching metadata for: namaiki na hahaoya o honnin ni mo kizukarezu ni minkan suru houhou +2026-01-07 01:44:41,490 - INFO - Fetching metadata from: https://nhentai.net/g/298780/ +2026-01-07 01:44:41,689 - INFO - Updating metadata for: haha_ga_saikon_shitara_gikei_ga_chou_kuzu +2026-01-07 01:44:41,690 - INFO - Searching metadata for: haha ga saikon shitara gikei ga chou kuzu +2026-01-07 01:44:41,978 - INFO - Fetching metadata from: https://nhentai.net/g/532104/ +2026-01-07 01:44:42,234 - INFO - Updating metadata for: lets_do_it +2026-01-07 01:44:42,234 - INFO - Searching metadata for: lets do it +2026-01-07 01:44:42,514 - INFO - Fetching metadata from: https://nhentai.net/g/588286/ +2026-01-07 01:44:42,710 - INFO - Updating metadata for: naomi san wa ore no sefri ch 1 +2026-01-07 01:44:42,710 - INFO - Searching metadata for: naomi san wa ore no sefri ch 1 +2026-01-07 01:44:43,064 - INFO - Fetching metadata from: https://nhentai.net/g/601989/ +2026-01-07 01:44:43,333 - INFO - Updating metadata for: namaiki_sanshimai +2026-01-07 01:44:43,333 - INFO - Searching metadata for: namaiki sanshimai +2026-01-07 01:44:43,516 - INFO - Fetching metadata from: https://nhentai.net/g/560751/ +2026-01-07 01:44:43,736 - INFO - Updating metadata for: a_story_about_my_little_sister_giving_me_titjobs +2026-01-07 01:44:43,737 - INFO - Searching metadata for: a story about my little sister giving me titjobs +2026-01-07 01:44:44,041 - INFO - Fetching metadata from: https://nhentai.net/g/524952/ +2026-01-07 01:44:44,272 - INFO - Updating metadata for: fuyu_yui +2026-01-07 01:44:44,272 - INFO - Searching metadata for: fuyu yui +2026-01-07 01:44:44,519 - INFO - Fetching metadata from: https://nhentai.net/g/589928/ +2026-01-07 01:44:44,728 - INFO - Updating metadata for: Imouto_wa_minna_Oniichan_ga_Suki!_(2010) +2026-01-07 01:44:44,728 - INFO - Searching metadata for: Imouto wa minna Oniichan ga Suki! +2026-01-07 01:44:44,962 - INFO - Searching MangaUpdates for: Imouto wa minna Oniichan ga Suki! +2026-01-07 01:44:45,332 - INFO - Updating metadata for: i_matched_with_my_friends_mom_chapter +2026-01-07 01:44:45,332 - INFO - Searching metadata for: i matched with my friends mom chapter +2026-01-07 01:44:45,555 - INFO - Searching MangaUpdates for: i matched with my friends mom chapter +2026-01-07 01:44:46,051 - INFO - Updating metadata for: love_wheel +2026-01-07 01:44:46,052 - INFO - Searching metadata for: love wheel +2026-01-07 01:44:46,311 - INFO - Fetching metadata from: https://nhentai.net/g/599889/ +2026-01-07 01:44:46,575 - INFO - Updating metadata for: [Heart Manju Mania (Akata Izuki)] Cocoro Controller 2 [English] +2026-01-07 01:44:46,575 - INFO - Searching metadata for: Heart Manju Mania (Akata Izuki) Cocoro Controller 2 [English] +2026-01-07 01:44:46,773 - INFO - Fetching metadata from: https://nhentai.net/g/599509/ +2026-01-07 01:44:46,982 - INFO - Updating metadata for: the_sex_life_of_andy_and_leyley +2026-01-07 01:44:46,983 - INFO - Searching metadata for: the sex life of andy and leyley +2026-01-07 01:44:47,238 - INFO - Fetching metadata from: https://nhentai.net/g/570099/ +2026-01-07 01:44:47,431 - INFO - Updating metadata for: mozzarella_the_new_slutty_pussy +2026-01-07 01:44:47,431 - INFO - Searching metadata for: mozzarella the new slutty pussy +2026-01-07 01:44:47,595 - INFO - Searching MangaUpdates for: mozzarella the new slutty pussy +2026-01-07 01:44:47,995 - INFO - Updating metadata for: [ABBB] How to make a family using hypnosis app [English] [Decensored] +2026-01-07 01:44:47,995 - INFO - Searching metadata for: ABBB How to make a family using hypnosis app [English] [Decensored] +2026-01-07 01:44:48,274 - INFO - Fetching metadata from: https://nhentai.net/g/431170/ +2026-01-07 01:44:48,465 - INFO - Updating metadata for: wife_pickle +2026-01-07 01:44:48,465 - INFO - Searching metadata for: wife pickle +2026-01-07 01:44:48,641 - INFO - Fetching metadata from: https://nhentai.net/g/592704/ +2026-01-07 01:44:48,924 - INFO - Updating metadata for: [MN] My Big Breast Sister +2026-01-07 01:44:48,924 - INFO - Searching metadata for: MN My Big Breast Sister +2026-01-07 01:44:49,130 - INFO - Fetching metadata from: https://nhentai.net/g/609562/ +2026-01-07 01:44:49,400 - INFO - Updating metadata for: you_must_breed_your_sisters_to_leave_this_village +2026-01-07 01:44:49,400 - INFO - Searching metadata for: you must breed your sisters to leave this village +2026-01-07 01:44:49,687 - INFO - Fetching metadata from: https://nhentai.net/g/619981/ +2026-01-07 01:44:49,961 - INFO - Updating metadata for: mother_and_son_and_father_and_daughter_tonight_is_incest_night +2026-01-07 01:44:49,961 - INFO - Searching metadata for: mother and son and father and daughter tonight is incest night +2026-01-07 01:44:50,249 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-07 01:44:50,496 - INFO - Updating metadata for: [Takashima] FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-07 01:44:50,497 - INFO - Searching metadata for: Takashima FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein] +2026-01-07 01:44:50,781 - INFO - Fetching metadata from: https://nhentai.net/g/515808/ +2026-01-07 01:44:51,057 - INFO - Updating metadata for: teasing_big_sis +2026-01-07 01:44:51,058 - INFO - Searching metadata for: teasing big sis +2026-01-07 01:44:51,302 - INFO - Fetching metadata from: https://nhentai.net/g/591734/ +2026-01-07 01:44:51,576 - INFO - Updating metadata for: forward +2026-01-07 01:44:51,576 - INFO - Searching metadata for: forward +2026-01-07 01:44:51,765 - INFO - Fetching metadata from: https://nhentai.net/g/583038/ +2026-01-07 01:44:52,002 - INFO - Updating metadata for: my_sister_doesnt_laugh +2026-01-07 01:44:52,002 - INFO - Searching metadata for: my sister doesnt laugh +2026-01-07 01:44:52,189 - INFO - Searching MangaUpdates for: my sister doesnt laugh +2026-01-07 01:44:52,510 - INFO - Updating metadata for: big_sis_wants_to_convince_her_lil_bro +2026-01-07 01:44:52,510 - INFO - Searching metadata for: big sis wants to convince her lil bro +2026-01-07 01:44:52,815 - INFO - Fetching metadata from: https://nhentai.net/g/310401/ +2026-01-07 01:44:53,000 - INFO - Updating metadata for: misato_x_shinji_baby_making +2026-01-07 01:44:53,000 - INFO - Searching metadata for: misato x shinji baby making +2026-01-07 01:44:53,205 - INFO - Searching MangaUpdates for: misato x shinji baby making +2026-01-07 01:44:53,553 - INFO - Updating metadata for: my_wife_left_me_because_i_was +2026-01-07 01:44:53,554 - INFO - Searching metadata for: my wife left me because i was +2026-01-07 01:44:53,963 - INFO - Fetching metadata from: https://nhentai.net/g/593456/ +2026-01-07 01:44:54,271 - INFO - Updating metadata for: human_manipulating_remote_control +2026-01-07 01:44:54,271 - INFO - Searching metadata for: human manipulating remote control +2026-01-07 01:44:54,448 - INFO - Fetching metadata from: https://nhentai.net/g/598745/ +2026-01-07 01:44:54,690 - INFO - Updating metadata for: bitch_na_inanesama +2026-01-07 01:44:54,690 - INFO - Searching metadata for: bitch na inanesama +2026-01-07 01:44:54,906 - INFO - Searching MangaUpdates for: bitch na inanesama +2026-01-07 01:44:55,247 - INFO - Updating metadata for: family_mischief_lewd +2026-01-07 01:44:55,247 - INFO - Searching metadata for: family mischief lewd +2026-01-07 01:44:55,464 - INFO - Fetching metadata from: https://nhentai.net/g/427171/ +2026-01-07 01:44:55,766 - INFO - Updating metadata for: [Poriuretan] Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-07 01:44:55,766 - INFO - Searching metadata for: Poriuretan Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English] +2026-01-07 01:44:56,060 - INFO - Fetching metadata from: https://nhentai.net/g/588809/ +2026-01-07 01:44:56,348 - INFO - Updating metadata for: my_daily_life_taking_care_of_sexual_urges_with_my_naughty_sister +2026-01-07 01:44:56,348 - INFO - Searching metadata for: my daily life taking care of sexual urges with my naughty sister +2026-01-07 01:44:56,545 - INFO - Searching MangaUpdates for: my daily life taking care of sexual urges with my naughty sister +2026-01-07 01:44:56,945 - INFO - Updating metadata for: a_history_of_no_boyfriends_equal_me_at_my_age +2026-01-07 01:44:56,945 - INFO - Searching metadata for: a history of no boyfriends equal me at my age +2026-01-07 01:44:57,285 - INFO - Searching MangaUpdates for: a history of no boyfriends equal me at my age +2026-01-07 01:44:58,052 - INFO - Updating metadata for: one_familys_plan_to_save_electricty +2026-01-07 01:44:58,053 - INFO - Searching metadata for: one familys plan to save electricty +2026-01-07 01:44:58,285 - INFO - Searching MangaUpdates for: one familys plan to save electricty +2026-01-07 01:44:58,681 - INFO - Updating metadata for: what_we_have_is_strictly_business +2026-01-07 01:44:58,681 - INFO - Searching metadata for: what we have is strictly business +2026-01-07 01:44:58,954 - INFO - Fetching metadata from: https://nhentai.net/g/596884/ +2026-01-07 01:44:59,174 - INFO - Updating metadata for: [Juna Juna Juice] Pokemon Series (Pokemon) [English] +2026-01-07 01:44:59,174 - INFO - Searching metadata for: Juna Juna Juice Pokemon Series (Pokemon) [English] +2026-01-07 01:44:59,380 - INFO - Fetching metadata from: https://nhentai.net/g/595886/ +2026-01-07 01:44:59,634 - INFO - Updating metadata for: bitch_dirty_sister +2026-01-07 01:44:59,635 - INFO - Searching metadata for: bitch dirty sister +2026-01-07 01:44:59,938 - INFO - Fetching metadata from: https://nhentai.net/g/317791/ +2026-01-07 01:45:00,225 - INFO - Updating metadata for: kayanee_and_the_old_man_memories_chapter +2026-01-07 01:45:00,225 - INFO - Searching metadata for: kayanee and the old man memories chapter +2026-01-07 01:45:00,393 - INFO - Searching MangaUpdates for: kayanee and the old man memories chapter +2026-01-07 01:45:01,048 - INFO - Updating metadata for: momojiri_ocean +2026-01-07 01:45:01,049 - INFO - Searching metadata for: momojiri ocean +2026-01-07 01:45:01,226 - INFO - Fetching metadata from: https://nhentai.net/g/164037/ +2026-01-07 01:45:01,471 - INFO - Updating metadata for: daily_life_with_my_sexy_stepmom +2026-01-07 01:45:01,471 - INFO - Searching metadata for: daily life with my sexy stepmom +2026-01-07 01:45:01,722 - INFO - Fetching metadata from: https://nhentai.net/g/519708/ +2026-01-07 01:45:01,968 - INFO - Updating metadata for: older_stepsister_teaches_her_cheeky_little_stepbrother +2026-01-07 01:45:01,969 - INFO - Searching metadata for: older stepsister teaches her cheeky little stepbrother +2026-01-07 01:45:02,154 - INFO - Searching MangaUpdates for: older stepsister teaches her cheeky little stepbrother +2026-01-07 01:45:03,218 - INFO - Updating metadata for: falling_in_love_at_the_brothel.5 +2026-01-07 01:45:03,218 - INFO - Searching metadata for: falling in love at the brothel.5 +2026-01-07 01:45:03,507 - INFO - Fetching metadata from: https://nhentai.net/g/574610/ +2026-01-07 01:45:03,746 - INFO - Updating metadata for: okaasan_to_naisho +2026-01-07 01:45:03,747 - INFO - Searching metadata for: okaasan to naisho +2026-01-07 01:45:03,952 - INFO - Fetching metadata from: https://nhentai.net/g/59216/ +2026-01-07 01:45:04,155 - INFO - Updating metadata for: punishment_for_the_feral_hound_in_heat +2026-01-07 01:45:04,156 - INFO - Searching metadata for: punishment for the feral hound in heat +2026-01-07 01:45:04,413 - INFO - Fetching metadata from: https://nhentai.net/g/528611/ +2026-01-07 01:45:04,648 - INFO - Updating metadata for: my_little_sister_has_a_big_body_and_a_big_heart +2026-01-07 01:45:04,648 - INFO - Searching metadata for: my little sister has a big body and a big heart +2026-01-07 01:45:04,945 - INFO - Fetching metadata from: https://nhentai.net/g/548775/ +2026-01-07 01:45:05,164 - INFO - Updating metadata for: [Emori Uki] Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 01:45:05,164 - INFO - Searching metadata for: Emori Uki Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 01:45:05,592 - INFO - Searching metadata for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 01:45:06,047 - INFO - Searching MangaUpdates for: Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr] +2026-01-07 01:45:07,226 - INFO - Updating metadata for: [Kazuhiro] Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-07 01:45:07,226 - INFO - Searching metadata for: Kazuhiro Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital] +2026-01-07 01:45:07,532 - INFO - Fetching metadata from: https://nhentai.net/g/340438/ +2026-01-07 01:45:07,738 - INFO - Updating metadata for: [Fence14] Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-07 01:45:07,738 - INFO - Searching metadata for: Fence14 Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits] +2026-01-07 01:45:07,985 - INFO - Fetching metadata from: https://nhentai.net/g/595742/ +2026-01-07 01:45:08,245 - INFO - Updating metadata for: sakusei_shuki_shuki_sisters +2026-01-07 01:45:08,245 - INFO - Searching metadata for: sakusei shuki shuki sisters +2026-01-07 01:45:08,450 - INFO - Fetching metadata from: https://nhentai.net/g/555633/ +2026-01-07 01:45:08,726 - INFO - Updating metadata for: dosukebe_saimin_revenge +2026-01-07 01:45:08,726 - INFO - Searching metadata for: dosukebe saimin revenge +2026-01-07 01:45:08,906 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-07 01:45:09,258 - INFO - Updating metadata for: A Son's Choice +2026-01-07 01:45:09,258 - INFO - Searching metadata for: A Son's Choice +2026-01-07 01:45:09,612 - INFO - Searching MangaUpdates for: A Son's Choice +2026-01-07 01:45:09,938 - INFO - Updating metadata for: [Kawamori Mizaki] Mainichi uwakidzuma {English] +2026-01-07 01:45:09,938 - INFO - Searching metadata for: Kawamori Mizaki Mainichi uwakidzuma {English] +2026-01-07 01:45:10,140 - INFO - Fetching metadata from: https://nhentai.net/g/604700/ +2026-01-07 01:45:10,331 - INFO - Updating metadata for: skin_tight_sticky_intercourse +2026-01-07 01:45:10,331 - INFO - Searching metadata for: skin tight sticky intercourse +2026-01-07 01:45:10,499 - INFO - Fetching metadata from: https://nhentai.net/g/598517/ +2026-01-07 01:45:10,792 - INFO - Updating metadata for: [Tokyo Ereki Studio (Azuma Ryo)] JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-07 01:45:10,792 - INFO - Searching metadata for: Tokyo Ereki Studio (Azuma Ryo) JK no Otoshikata -Jou- [English] [Ruru Scanlations] +2026-01-07 01:45:11,070 - INFO - Fetching metadata from: https://nhentai.net/g/618553/ +2026-01-07 01:45:11,308 - INFO - Updating metadata for: Ai_ga_Ippai_Ero_wa_Oppai_(2010) +2026-01-07 01:45:11,308 - INFO - Searching metadata for: Ai ga Ippai Ero wa Oppai +2026-01-07 01:45:11,605 - INFO - Fetching metadata from: https://nhentai.net/g/215924/ +2026-01-07 01:45:11,881 - INFO - Updating metadata for: supplementary_sex_education +2026-01-07 01:45:11,881 - INFO - Searching metadata for: supplementary sex education +2026-01-07 01:45:12,039 - INFO - Searching MangaUpdates for: supplementary sex education +2026-01-07 01:45:12,389 - INFO - Updating metadata for: taimanin_shinobu_series +2026-01-07 01:45:12,390 - INFO - Searching metadata for: taimanin shinobu series +2026-01-07 01:45:12,583 - INFO - Searching MangaUpdates for: taimanin shinobu series +2026-01-07 01:45:13,799 - INFO - Updating metadata for: [Sakai Hamachi] Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-07 01:45:13,799 - INFO - Searching metadata for: Sakai Hamachi Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital] +2026-01-07 01:45:14,085 - INFO - Fetching metadata from: https://nhentai.net/g/602876/ +2026-01-07 01:45:14,293 - INFO - Updating metadata for: a_molester_took_everything_from_me_chapter_ +2026-01-07 01:45:14,293 - INFO - Searching metadata for: a molester took everything from me chapter +2026-01-07 01:45:14,513 - INFO - Searching MangaUpdates for: a molester took everything from me chapter +2026-01-07 01:45:14,986 - INFO - Updating metadata for: Hoken_Shitsu_no_Aisare_Sensei_(2020) +2026-01-07 01:45:14,987 - INFO - Searching metadata for: Hoken Shitsu no Aisare Sensei +2026-01-07 01:45:15,230 - INFO - Searching MangaUpdates for: Hoken Shitsu no Aisare Sensei +2026-01-07 01:45:15,975 - INFO - Updating metadata for: a_loner_makes_the_right_choices_and_goes_out_with_a_seiso_girl_of_course_theres_sex_as_well +2026-01-07 01:45:15,975 - INFO - Searching metadata for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-07 01:45:16,285 - INFO - Searching MangaUpdates for: a loner makes the right choices and goes out with a seiso girl of course theres sex as well +2026-01-07 01:45:17,123 - INFO - Updating metadata for: maho_shojo_ointo_seba_mazu_haha_o_iyo +2026-01-07 01:45:17,123 - INFO - Searching metadata for: maho shojo ointo seba mazu haha o iyo +2026-01-07 01:45:17,467 - INFO - Fetching metadata from: https://nhentai.net/g/587203/ +2026-01-07 01:45:17,800 - INFO - Updating metadata for: paiotsu_kaede_live +2026-01-07 01:45:17,801 - INFO - Searching metadata for: paiotsu kaede live +2026-01-07 01:45:17,952 - INFO - Searching MangaUpdates for: paiotsu kaede live +2026-01-07 01:45:18,226 - INFO - Updating metadata for: otakuhime_and_the_lovey_dovey_bath +2026-01-07 01:45:18,226 - INFO - Searching metadata for: otakuhime and the lovey dovey bath +2026-01-07 01:45:18,443 - INFO - Fetching metadata from: https://nhentai.net/g/317091/ +2026-01-07 01:45:18,645 - INFO - Updating metadata for: airandou +2026-01-07 01:45:18,645 - INFO - Searching metadata for: airandou +2026-01-07 01:45:18,842 - INFO - Fetching metadata from: https://nhentai.net/g/620480/ +2026-01-07 01:45:19,251 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 01:45:19,251 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 01:45:19,493 - INFO - Fetching metadata from: https://nhentai.net/g/560447/ +2026-01-07 01:45:19,707 - INFO - Updating metadata for: virginity_prohibition_act_mandatory_baby_making +2026-01-07 01:45:19,707 - INFO - Searching metadata for: virginity prohibition act mandatory baby making +2026-01-07 01:45:19,863 - INFO - Searching MangaUpdates for: virginity prohibition act mandatory baby making +2026-01-07 01:45:20,466 - INFO - Updating metadata for: [Juna Juna Juice] Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-07 01:45:20,466 - INFO - Searching metadata for: Juna Juna Juice Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English] +2026-01-07 01:45:20,822 - INFO - Fetching metadata from: https://nhentai.net/g/473301/ +2026-01-07 01:45:21,076 - INFO - Updating metadata for: the_lazy_and_naughty_achan_is_inviting_me +2026-01-07 01:45:21,076 - INFO - Searching metadata for: the lazy and naughty achan is inviting me +2026-01-07 01:45:21,280 - INFO - Searching MangaUpdates for: the lazy and naughty achan is inviting me +2026-01-07 01:45:21,917 - INFO - Updating metadata for: Watashi_no_Kawaii_Mochizuki-kun_(2020) +2026-01-07 01:45:21,917 - INFO - Searching metadata for: Watashi no Kawaii Mochizuki-kun +2026-01-07 01:45:22,155 - INFO - Searching MangaUpdates for: Watashi no Kawaii Mochizuki-kun +2026-01-07 01:45:22,701 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-07 01:45:22,701 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit} +2026-01-07 01:45:22,996 - INFO - Fetching metadata from: https://nhentai.net/g/342844/ +2026-01-07 01:45:23,198 - INFO - Updating metadata for: [Nedoko de Nidone (Nashio )] Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-07 01:45:23,198 - INFO - Searching metadata for: Nedoko de Nidone (Nashio ) Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei] +2026-01-07 01:45:23,430 - INFO - Fetching metadata from: https://nhentai.net/g/584286/ +2026-01-07 01:45:23,635 - INFO - Updating metadata for: from_nipple_bumps_to_erotic_play_with_my_sister +2026-01-07 01:45:23,635 - INFO - Searching metadata for: from nipple bumps to erotic play with my sister +2026-01-07 01:45:23,903 - INFO - Fetching metadata from: https://nhentai.net/g/587709/ +2026-01-07 01:45:24,104 - INFO - Updating metadata for: heart_mark_oome +2026-01-07 01:45:24,105 - INFO - Searching metadata for: heart mark oome +2026-01-07 01:45:24,276 - INFO - Fetching metadata from: https://nhentai.net/g/585795/ +2026-01-07 01:45:24,606 - INFO - Updating metadata for: [Airandou] Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 01:45:24,607 - INFO - Searching metadata for: Airandou Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 01:45:24,815 - INFO - Searching metadata for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 01:45:25,049 - INFO - Searching MangaUpdates for: Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2] +2026-01-07 01:45:26,166 - INFO - Updating metadata for: everyday_conversations_with_my_big_sister +2026-01-07 01:45:26,166 - INFO - Searching metadata for: everyday conversations with my big sister +2026-01-07 01:45:26,325 - INFO - Searching MangaUpdates for: everyday conversations with my big sister +2026-01-07 01:45:26,855 - INFO - Updating metadata for: [R Koubou (Ruzi)] Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 01:45:26,855 - INFO - Searching metadata for: R Koubou (Ruzi) Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 01:45:27,289 - INFO - Searching metadata for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 01:45:27,548 - INFO - Searching MangaUpdates for: Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com} +2026-01-07 01:45:28,202 - INFO - Updating metadata for: aneoto +2026-01-07 01:45:28,202 - INFO - Searching metadata for: aneoto +2026-01-07 01:45:28,424 - INFO - Fetching metadata from: https://nhentai.net/g/578213/ +2026-01-07 01:45:28,668 - INFO - Updating metadata for: the_making_of_a_cultt_leader +2026-01-07 01:45:28,668 - INFO - Searching metadata for: the making of a cultt leader +2026-01-07 01:45:28,890 - INFO - Searching MangaUpdates for: the making of a cultt leader +2026-01-07 01:45:29,451 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 01:45:29,452 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 01:45:29,762 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 01:45:30,088 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu] +2026-01-07 01:45:31,124 - INFO - Updating metadata for: watashi_de_sukkiri_saasechaina_hatsukoi_aite_ni_tsurareru_ore +2026-01-07 01:45:31,125 - INFO - Searching metadata for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-07 01:45:31,320 - INFO - Searching MangaUpdates for: watashi de sukkiri saasechaina hatsukoi aite ni tsurareru ore +2026-01-07 01:45:31,882 - INFO - Updating metadata for: perverted_body_tight_mama_monster +2026-01-07 01:45:31,883 - INFO - Searching metadata for: perverted body tight mama monster +2026-01-07 01:45:32,088 - INFO - Fetching metadata from: https://nhentai.net/g/544653/ +2026-01-07 01:45:32,283 - INFO - Updating metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-07 01:45:32,283 - INFO - Searching metadata for: (C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru] +2026-01-07 01:45:32,504 - INFO - Fetching metadata from: https://nhentai.net/g/496743/ +2026-01-07 01:45:32,739 - INFO - Updating metadata for: gishi_ni_shiborareru_hanashi +2026-01-07 01:45:32,739 - INFO - Searching metadata for: gishi ni shiborareru hanashi +2026-01-07 01:45:32,973 - INFO - Fetching metadata from: https://nhentai.net/g/588299/ +2026-01-07 01:45:33,182 - INFO - Updating metadata for: [Nishikawa Kou] Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 01:45:33,183 - INFO - Searching metadata for: Nishikawa Kou Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 01:45:33,498 - INFO - Searching metadata for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 01:45:33,830 - INFO - Searching MangaUpdates for: Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo] +2026-01-07 01:45:34,742 - INFO - Updating metadata for: call_me_a_slut +2026-01-07 01:45:34,742 - INFO - Searching metadata for: call me a slut +2026-01-07 01:45:35,046 - INFO - Fetching metadata from: https://nhentai.net/g/532748/ +2026-01-07 01:45:35,285 - INFO - Updating metadata for: rental_mama_rental_mom +2026-01-07 01:45:35,286 - INFO - Searching metadata for: rental mama rental mom +2026-01-07 01:45:35,521 - INFO - Fetching metadata from: https://nhentai.net/g/593813/ +2026-01-07 01:45:35,788 - INFO - Updating metadata for: oshi_to_ecchina_koto_nante_muri_muri_muri +2026-01-07 01:45:35,788 - INFO - Searching metadata for: oshi to ecchina koto nante muri muri muri +2026-01-07 01:45:36,046 - INFO - Searching MangaUpdates for: oshi to ecchina koto nante muri muri muri +2026-01-07 01:45:36,468 - INFO - Updating metadata for: Kateinai Henai +2026-01-07 01:45:36,468 - INFO - Searching metadata for: Kateinai Henai +2026-01-07 01:45:36,716 - INFO - Fetching metadata from: https://nhentai.net/g/603393/ +2026-01-07 01:45:37,096 - INFO - Updating metadata for: devi_navi +2026-01-07 01:45:37,096 - INFO - Searching metadata for: devi navi +2026-01-07 01:45:37,342 - INFO - Fetching metadata from: https://nhentai.net/g/596339/ +2026-01-07 01:45:37,648 - INFO - Updating metadata for: [Chiguchi Miri] Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 01:45:37,648 - INFO - Searching metadata for: Chiguchi Miri Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 01:45:37,919 - INFO - Searching metadata for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 01:45:38,151 - INFO - Searching MangaUpdates for: Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H] +2026-01-07 01:45:38,957 - INFO - Updating metadata for: [Muufa] One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 01:45:38,957 - INFO - Searching metadata for: Muufa One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 01:45:39,179 - INFO - Searching metadata for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 01:45:39,409 - INFO - Searching MangaUpdates for: One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya] +2026-01-07 01:45:39,902 - INFO - Updating metadata for: leave_me_alone +2026-01-07 01:45:39,903 - INFO - Searching metadata for: leave me alone +2026-01-07 01:45:40,128 - INFO - Fetching metadata from: https://nhentai.net/g/557684/ +2026-01-07 01:45:40,326 - INFO - Updating metadata for: the_day_the_youngest_son_lost_his_virginity_thanks_to_his_mother_in_a_swimsuit +2026-01-07 01:45:40,326 - INFO - Searching metadata for: the day the youngest son lost his virginity thanks to his mother in a swimsuit +2026-01-07 01:45:40,676 - INFO - Fetching metadata from: https://nhentai.net/g/550368/ +2026-01-07 01:45:40,925 - INFO - Updating metadata for: misaesan_no_shiri_ass +2026-01-07 01:45:40,925 - INFO - Searching metadata for: misaesan no shiri ass +2026-01-07 01:45:41,074 - INFO - Searching MangaUpdates for: misaesan no shiri ass +2026-01-07 01:45:41,418 - INFO - Updating metadata for: and_then_i_will_be_a_mom +2026-01-07 01:45:41,418 - INFO - Searching metadata for: and then i will be a mom +2026-01-07 01:45:41,757 - INFO - Searching MangaUpdates for: and then i will be a mom +2026-01-07 01:45:42,242 - INFO - Updating metadata for: a_molester_took_everything_from_me +2026-01-07 01:45:42,242 - INFO - Searching metadata for: a molester took everything from me +2026-01-07 01:45:42,497 - INFO - Fetching metadata from: https://nhentai.net/g/602000/ +2026-01-07 01:45:42,693 - INFO - Updating metadata for: will_you_help_me +2026-01-07 01:45:42,693 - INFO - Searching metadata for: will you help me +2026-01-07 01:45:42,956 - INFO - Fetching metadata from: https://nhentai.net/g/277925/ +2026-01-07 01:45:43,186 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-07 01:45:43,187 - INFO - Searching metadata for: Manbou Shoten Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English) +2026-01-07 01:45:43,496 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-07 01:45:43,748 - INFO - Updating metadata for: katamichi_catchball +2026-01-07 01:45:43,748 - INFO - Searching metadata for: katamichi catchball +2026-01-07 01:45:43,918 - INFO - Fetching metadata from: https://nhentai.net/g/528903/ +2026-01-07 01:45:44,112 - INFO - Updating metadata for: bareback_sex_life_with_da_vinci +2026-01-07 01:45:44,112 - INFO - Searching metadata for: bareback sex life with da vinci +2026-01-07 01:45:44,331 - INFO - Fetching metadata from: https://nhentai.net/g/250741/ +2026-01-07 01:45:44,534 - INFO - Updating metadata for: my_defenseless_mothers +2026-01-07 01:45:44,534 - INFO - Searching metadata for: my defenseless mothers +2026-01-07 01:45:44,742 - INFO - Searching MangaUpdates for: my defenseless mothers +2026-01-07 01:45:45,097 - INFO - Updating metadata for: a_day_for_incest +2026-01-07 01:45:45,097 - INFO - Searching metadata for: a day for incest +2026-01-07 01:45:45,348 - INFO - Fetching metadata from: https://nhentai.net/g/497650/ +2026-01-07 01:45:45,576 - INFO - Updating metadata for: jagan_no_saimin_inryoku_de_seitokai_les_joshitachi +2026-01-07 01:45:45,576 - INFO - Searching metadata for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-07 01:45:45,791 - INFO - Searching MangaUpdates for: jagan no saimin inryoku de seitokai les joshitachi +2026-01-07 01:45:46,387 - INFO - Updating metadata for: boku_no_kaasan_ga_amari_ni_mo_erosugite_chapter_ +2026-01-07 01:45:46,388 - INFO - Searching metadata for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-07 01:45:46,691 - INFO - Searching MangaUpdates for: boku no kaasan ga amari ni mo erosugite chapter +2026-01-07 01:45:47,093 - INFO - Updating metadata for: making_a_bet_with_a_competitive_niece +2026-01-07 01:45:47,093 - INFO - Searching metadata for: making a bet with a competitive niece +2026-01-07 01:45:47,278 - INFO - Searching MangaUpdates for: making a bet with a competitive niece +2026-01-07 01:45:47,618 - INFO - Updating metadata for: [k8on] It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 01:45:47,619 - INFO - Searching metadata for: k8on It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 01:45:47,973 - INFO - Searching metadata for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 01:45:48,313 - INFO - Searching MangaUpdates for: It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name] +2026-01-07 01:45:48,835 - INFO - Updating metadata for: the_twins_next_door_were_former_super_sentai +2026-01-07 01:45:48,835 - INFO - Searching metadata for: the twins next door were former super sentai +2026-01-07 01:45:49,097 - INFO - Fetching metadata from: https://nhentai.net/g/589945/ +2026-01-07 01:45:49,294 - INFO - Updating metadata for: nureane_batsuichi_no_ane_to_sex_o_shita_natsu_no_yoru +2026-01-07 01:45:49,294 - INFO - Searching metadata for: nureane batsuichi no ane to sex o shita natsu no yoru +2026-01-07 01:45:49,621 - INFO - Fetching metadata from: https://nhentai.net/g/413708/ +2026-01-07 01:45:49,863 - INFO - Updating metadata for: [Juna Juna Juice] Supergirl From The JJJ Universe (The Flash) [English] +2026-01-07 01:45:49,863 - INFO - Searching metadata for: Juna Juna Juice Supergirl From The JJJ Universe (The Flash) [English] +2026-01-07 01:45:50,084 - INFO - Fetching metadata from: https://nhentai.net/g/462209/ +2026-01-07 01:45:50,263 - INFO - Updating metadata for: shes_always_obstinate +2026-01-07 01:45:50,263 - INFO - Searching metadata for: shes always obstinate +2026-01-07 01:45:50,411 - INFO - Searching MangaUpdates for: shes always obstinate +2026-01-07 01:45:50,646 - INFO - Updating metadata for: mikamikuns_incestuous_situation +2026-01-07 01:45:50,646 - INFO - Searching metadata for: mikamikuns incestuous situation +2026-01-07 01:45:50,795 - INFO - Searching MangaUpdates for: mikamikuns incestuous situation +2026-01-07 01:45:51,150 - INFO - Updating metadata for: [Yue] Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-07 01:45:51,150 - INFO - Searching metadata for: Yue Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV +2026-01-07 01:45:51,417 - INFO - Fetching metadata from: https://nhentai.net/g/588579/ +2026-01-07 01:45:51,612 - INFO - Updating metadata for: Jujutsu_Kaisen_dj_-_○○○_Shinai_to_Derarenai_Heya_√A_(2021) +2026-01-07 01:45:51,612 - INFO - Searching metadata for: Jujutsu Kaisen dj - ○○○ Shinai to Derarenai Heya √A +2026-01-07 01:45:51,771 - INFO - Searching MangaUpdates for: Jujutsu Kaisen dj - ○○○ Shinai to Derarenai Heya √A +2026-01-07 01:45:52,257 - INFO - Updating metadata for: [Pentacle(Shimipan)] I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-07 01:45:52,257 - INFO - Searching metadata for: Pentacle(Shimipan) I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English] +2026-01-07 01:45:52,634 - INFO - Fetching metadata from: https://nhentai.net/g/603112/ +2026-01-07 01:45:53,053 - INFO - Updating metadata for: my_big_little_sister +2026-01-07 01:45:53,054 - INFO - Searching metadata for: my big little sister +2026-01-07 01:45:53,283 - INFO - Fetching metadata from: https://nhentai.net/g/619667/ +2026-01-07 01:45:53,474 - INFO - Updating metadata for: [Zandoro] A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-07 01:45:53,475 - INFO - Searching metadata for: Zandoro A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet +2026-01-07 01:45:53,840 - INFO - Fetching metadata from: https://nhentai.net/g/582285/ +2026-01-07 01:45:54,097 - INFO - Updating metadata for: awakening_of_the_female_instinct +2026-01-07 01:45:54,098 - INFO - Searching metadata for: awakening of the female instinct +2026-01-07 01:45:54,313 - INFO - Fetching metadata from: https://nhentai.net/g/592099/ +2026-01-07 01:45:54,760 - INFO - Updating metadata for: Hitozuma,_Uwaki,_Danchi_Nite._-37-Sai_Miho-_(2025) +2026-01-07 01:45:54,760 - INFO - Searching metadata for: Hitozuma, Uwaki, Danchi Nite. -37-Sai Miho- +2026-01-07 01:45:54,995 - INFO - Searching MangaUpdates for: Hitozuma, Uwaki, Danchi Nite. -37-Sai Miho- +2026-01-07 01:45:55,396 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-07 01:45:55,396 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English] +2026-01-07 01:45:55,655 - INFO - Fetching metadata from: https://nhentai.net/g/339531/ +2026-01-07 01:45:55,932 - INFO - Updating metadata for: friendly_brother_and_sister +2026-01-07 01:45:55,932 - INFO - Searching metadata for: friendly brother and sister +2026-01-07 01:45:56,131 - INFO - Fetching metadata from: https://nhentai.net/g/531957/ +2026-01-07 01:45:56,364 - INFO - Updating metadata for: [Manbou Shoten] Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 01:45:56,364 - INFO - Searching metadata for: Manbou Shoten Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 01:45:56,591 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-07 01:45:56,865 - INFO - Updating metadata for: Family_Plan_(2024) +2026-01-07 01:45:56,865 - INFO - Searching metadata for: Family Plan +2026-01-07 01:45:57,059 - INFO - Fetching metadata from: https://nhentai.net/g/602426/ +2026-01-07 01:45:57,255 - INFO - Updating metadata for: you_must_breed_your_sister_to_leave_this_island +2026-01-07 01:45:57,255 - INFO - Searching metadata for: you must breed your sister to leave this island +2026-01-07 01:45:57,502 - INFO - Fetching metadata from: https://nhentai.net/g/617218/ +2026-01-07 01:45:57,718 - INFO - Updating metadata for: fence14 +2026-01-07 01:45:57,719 - INFO - Searching metadata for: fence14 +2026-01-07 01:45:57,949 - INFO - Fetching metadata from: https://nhentai.net/g/619305/ +2026-01-07 01:45:58,180 - INFO - Updating metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ _ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-07 01:45:58,180 - INFO - Searching metadata for: Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~ +2026-01-07 01:45:58,494 - INFO - Fetching metadata from: https://nhentai.net/g/400327/ +2026-01-07 01:45:58,714 - INFO - Updating metadata for: elder_sis_cosplay +2026-01-07 01:45:58,714 - INFO - Searching metadata for: elder sis cosplay +2026-01-07 01:45:58,891 - INFO - Fetching metadata from: https://nhentai.net/g/147261/ +2026-01-07 01:45:59,096 - INFO - Updating metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-07 01:45:59,096 - INFO - Searching metadata for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-07 01:45:59,426 - INFO - Searching MangaUpdates for: She Likes to Tease, But Deep Down She's a Pushover - せびれ +2026-01-07 01:45:59,857 - INFO - Updating metadata for: maiyasans_money_issues +2026-01-07 01:45:59,857 - INFO - Searching metadata for: maiyasans money issues +2026-01-07 01:46:00,040 - INFO - Searching MangaUpdates for: maiyasans money issues +2026-01-07 01:46:00,363 - INFO - Updating metadata for: mama_cos +2026-01-07 01:46:00,363 - INFO - Searching metadata for: mama cos +2026-01-07 01:46:00,577 - INFO - Fetching metadata from: https://nhentai.net/g/618775/ +2026-01-07 01:46:00,770 - INFO - Updating metadata for: [Shirono Mahiro] Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-07 01:46:00,770 - INFO - Searching metadata for: Shirono Mahiro Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo] +2026-01-07 01:46:01,181 - INFO - Fetching metadata from: https://nhentai.net/g/332054/ +2026-01-07 01:46:01,537 - INFO - Updating metadata for: im_being_sex_educated_by_my_overprotective_mother_chapter +2026-01-07 01:46:01,538 - INFO - Searching metadata for: im being sex educated by my overprotective mother chapter +2026-01-07 01:46:01,760 - INFO - Searching MangaUpdates for: im being sex educated by my overprotective mother chapter +2026-01-07 01:46:02,129 - INFO - Updating metadata for: imouto_ookiindamon_chapter +2026-01-07 01:46:02,130 - INFO - Searching metadata for: imouto ookiindamon chapter +2026-01-07 01:46:02,322 - INFO - Searching MangaUpdates for: imouto ookiindamon chapter +2026-01-07 01:46:02,781 - INFO - Updating metadata for: my_dear_sister_is_mine +2026-01-07 01:46:02,781 - INFO - Searching metadata for: my dear sister is mine +2026-01-07 01:46:03,019 - INFO - Fetching metadata from: https://nhentai.net/g/567113/ +2026-01-07 01:46:03,219 - INFO - Updating metadata for: [Qdou Kei] Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-07 01:46:03,219 - INFO - Searching metadata for: Qdou Kei Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz] +2026-01-07 01:46:03,582 - INFO - Fetching metadata from: https://nhentai.net/g/246334/ +2026-01-07 01:46:03,789 - INFO - Updating metadata for: [nounanka (Abubu)] Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-07 01:46:03,789 - INFO - Searching metadata for: nounanka (Abubu) Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English] +2026-01-07 01:46:04,120 - INFO - Fetching metadata from: https://nhentai.net/g/601119/ +2026-01-07 01:46:04,360 - INFO - Updating metadata for: story_about_how_i_fucked_cucked_and_brought_to_bliss_some_languid_wives +2026-01-07 01:46:04,360 - INFO - Searching metadata for: story about how i fucked cucked and brought to bliss some languid wives +2026-01-07 01:46:04,625 - INFO - Fetching metadata from: https://nhentai.net/g/578155/ +2026-01-07 01:46:04,818 - INFO - Updating metadata for: [Shiki] Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 01:46:04,819 - INFO - Searching metadata for: Shiki Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 01:46:05,163 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 01:46:05,416 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English] +2026-01-07 01:46:06,216 - INFO - Updating metadata for: uchi_ni_kaettara_mama_ga_zenra_de_hatsujou_shiteta_ken +2026-01-07 01:46:06,216 - INFO - Searching metadata for: uchi ni kaettara mama ga zenra de hatsujou shiteta ken +2026-01-07 01:46:06,600 - INFO - Fetching metadata from: https://nhentai.net/g/329704/ +2026-01-07 01:46:06,803 - INFO - Updating metadata for: [Teoi] Youmu-chan hypnosis sex +2026-01-07 01:46:06,803 - INFO - Searching metadata for: Teoi Youmu-chan hypnosis sex +2026-01-07 01:46:06,974 - INFO - Searching metadata for: Youmu-chan hypnosis sex +2026-01-07 01:46:07,153 - INFO - Searching MangaUpdates for: Youmu-chan hypnosis sex +2026-01-07 01:46:07,435 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 01:46:07,435 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 01:46:07,778 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 01:46:08,117 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com} +2026-01-07 01:46:08,475 - INFO - Updating metadata for: similar_siblings +2026-01-07 01:46:08,475 - INFO - Searching metadata for: similar siblings +2026-01-07 01:46:08,628 - INFO - Searching MangaUpdates for: similar siblings +2026-01-07 01:46:08,863 - INFO - Updating metadata for: kiyoshiros_last_hours +2026-01-07 01:46:08,864 - INFO - Searching metadata for: kiyoshiros last hours +2026-01-07 01:46:09,044 - INFO - Searching MangaUpdates for: kiyoshiros last hours +2026-01-07 01:46:09,322 - INFO - Updating metadata for: otaku_ni_rikai_aru_gal_yome_ga_otashop +2026-01-07 01:46:09,322 - INFO - Searching metadata for: otaku ni rikai aru gal yome ga otashop +2026-01-07 01:46:09,614 - INFO - Searching MangaUpdates for: otaku ni rikai aru gal yome ga otashop +2026-01-07 01:46:09,986 - INFO - Updating metadata for: [CHOMA] Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-07 01:46:09,986 - INFO - Searching metadata for: CHOMA Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL] +2026-01-07 01:46:10,192 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-07 01:46:10,386 - INFO - Updating metadata for: muchi_niku_jokyoushi_tomomi_mama +2026-01-07 01:46:10,386 - INFO - Searching metadata for: muchi niku jokyoushi tomomi mama +2026-01-07 01:46:10,566 - INFO - Searching MangaUpdates for: muchi niku jokyoushi tomomi mama +2026-01-07 01:46:11,030 - INFO - Updating metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru _ Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-07 01:46:11,031 - INFO - Searching metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru Trapped in a Sex-locked Room with your Bitchy Little Sister +2026-01-07 01:46:11,456 - INFO - Fetching metadata from: https://nhentai.net/g/483349/ +2026-01-07 01:46:11,659 - INFO - Updating metadata for: michelle_to_icha_love +2026-01-07 01:46:11,659 - INFO - Searching metadata for: michelle to icha love +2026-01-07 01:46:11,865 - INFO - Fetching metadata from: https://nhentai.net/g/597558/ +2026-01-07 01:46:12,086 - INFO - Updating metadata for: toshi_densetsu_bitch_joshikai +2026-01-07 01:46:12,086 - INFO - Searching metadata for: toshi densetsu bitch joshikai +2026-01-07 01:46:12,316 - INFO - Fetching metadata from: https://nhentai.net/g/558829/ +2026-01-07 01:46:12,566 - INFO - Updating metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-07 01:46:12,566 - INFO - Searching metadata for: A room I can't leave without having incestuous sex with my mom +2026-01-07 01:46:12,992 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-07 01:46:13,219 - INFO - Updating metadata for: after_a_mouth +2026-01-07 01:46:13,219 - INFO - Searching metadata for: after a mouth +2026-01-07 01:46:13,474 - INFO - Fetching metadata from: https://nhentai.net/g/602572/ +2026-01-07 01:46:13,762 - INFO - Updating metadata for: incestism +2026-01-07 01:46:13,763 - INFO - Searching metadata for: incestism +2026-01-07 01:46:13,949 - INFO - Fetching metadata from: https://nhentai.net/g/600637/ +2026-01-07 01:46:14,159 - INFO - Updating metadata for: life_of_passionate_pleasures +2026-01-07 01:46:14,160 - INFO - Searching metadata for: life of passionate pleasures +2026-01-07 01:46:14,336 - INFO - Fetching metadata from: https://nhentai.net/g/530801/ +2026-01-07 01:46:14,538 - INFO - Updating metadata for: carnal_siblings +2026-01-07 01:46:14,538 - INFO - Searching metadata for: carnal siblings +2026-01-07 01:46:14,721 - INFO - Fetching metadata from: https://nhentai.net/g/505982/ +2026-01-07 01:46:14,988 - INFO - Updating metadata for: naughty_bunny_and_doctor +2026-01-07 01:46:14,988 - INFO - Searching metadata for: naughty bunny and doctor +2026-01-07 01:46:15,218 - INFO - Fetching metadata from: https://nhentai.net/g/577393/ +2026-01-07 01:46:15,404 - INFO - Updating metadata for: hiyake_rikujoubu_oneechan_ni_neteiru_toku_ni_itazura_suru_ecchi_manga +2026-01-07 01:46:15,404 - INFO - Searching metadata for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-07 01:46:15,631 - INFO - Searching MangaUpdates for: hiyake rikujoubu oneechan ni neteiru toku ni itazura suru ecchi manga +2026-01-07 01:46:16,083 - INFO - Updating metadata for: reiwas_penis_growth_training_chapter_1 +2026-01-07 01:46:16,083 - INFO - Searching metadata for: reiwas penis growth training chapter 1 +2026-01-07 01:46:16,238 - INFO - Searching MangaUpdates for: reiwas penis growth training chapter 1 +2026-01-07 01:46:16,618 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 01:46:16,618 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 01:46:16,888 - INFO - Searching metadata for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 01:46:17,208 - INFO - Searching MangaUpdates for: Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex) +2026-01-07 01:46:17,920 - INFO - Updating metadata for: ninshin_wa_kinshin_de_to_iu_hou_ga_dekita_node_haha_to_imouto_to_oba_mainichi_ore_no_chi_po_o_neratte_kuru +2026-01-07 01:46:17,920 - INFO - Searching metadata for: ninshin wa kinshin de to iu hou ga dekita node haha to imouto to oba mainichi ore no chi po o neratte kuru +2026-01-07 01:46:18,383 - INFO - Fetching metadata from: https://nhentai.net/g/400868/ +2026-01-07 01:46:18,712 - INFO - Updating metadata for: ani_no_kimoi_gendou_ni_honki +2026-01-07 01:46:18,712 - INFO - Searching metadata for: ani no kimoi gendou ni honki +2026-01-07 01:46:18,997 - INFO - Fetching metadata from: https://nhentai.net/g/511424/ +2026-01-07 01:46:19,217 - INFO - Updating metadata for: Roujin_to_Neko_(2024) +2026-01-07 01:46:19,217 - INFO - Searching metadata for: Roujin to Neko +2026-01-07 01:46:19,435 - INFO - Searching MangaUpdates for: Roujin to Neko +2026-01-07 01:46:19,776 - INFO - Updating metadata for: gal_bitch_supremacy +2026-01-07 01:46:19,777 - INFO - Searching metadata for: gal bitch supremacy +2026-01-07 01:46:20,004 - INFO - Fetching metadata from: https://nhentai.net/g/521758/ +2026-01-07 01:46:20,369 - INFO - Updating metadata for: ane_de_shikoru_otouto_to_onaritai +2026-01-07 01:46:20,369 - INFO - Searching metadata for: ane de shikoru otouto to onaritai +2026-01-07 01:46:20,652 - INFO - Fetching metadata from: https://nhentai.net/g/505892/ +2026-01-07 01:46:20,920 - INFO - Updating metadata for: video_memories +2026-01-07 01:46:20,920 - INFO - Searching metadata for: video memories +2026-01-07 01:46:21,084 - INFO - Fetching metadata from: https://nhentai.net/g/506956/ +2026-01-07 01:46:21,344 - INFO - Updating metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-07 01:46:21,344 - INFO - Searching metadata for: Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)] +2026-01-07 01:46:21,591 - INFO - Fetching metadata from: https://nhentai.net/g/614968/ +2026-01-07 01:46:21,800 - INFO - Updating metadata for: [Niramikko Koujou] Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-07 01:46:21,800 - INFO - Searching metadata for: Niramikko Koujou Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family] +2026-01-07 01:46:22,196 - INFO - Fetching metadata from: https://nhentai.net/g/557335/ +2026-01-07 01:46:22,447 - INFO - Updating metadata for: kanojo_no_ane_wa_gal_de_bitch_de_yariman_de +2026-01-07 01:46:22,448 - INFO - Searching metadata for: kanojo no ane wa gal de bitch de yariman de +2026-01-07 01:46:22,825 - INFO - Fetching metadata from: https://nhentai.net/g/578979/ +2026-01-07 01:46:23,118 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-07 01:46:23,118 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital] +2026-01-07 01:46:23,373 - INFO - Fetching metadata from: https://nhentai.net/g/604729/ +2026-01-07 01:46:23,705 - INFO - Updating metadata for: musclehead_girl_cant_resist_orgasm_chapter +2026-01-07 01:46:23,705 - INFO - Searching metadata for: musclehead girl cant resist orgasm chapter +2026-01-07 01:46:23,890 - INFO - Searching MangaUpdates for: musclehead girl cant resist orgasm chapter +2026-01-07 01:46:24,257 - INFO - Updating metadata for: oneechan_wa_sore_o_yurusanai +2026-01-07 01:46:24,258 - INFO - Searching metadata for: oneechan wa sore o yurusanai +2026-01-07 01:46:24,491 - INFO - Searching MangaUpdates for: oneechan wa sore o yurusanai +2026-01-07 01:46:24,864 - INFO - Updating metadata for: pet_mimamori_camera_ni_ane_to_otouto_no_sex_ga_utsutteta +2026-01-07 01:46:24,865 - INFO - Searching metadata for: pet mimamori camera ni ane to otouto no sex ga utsutteta +2026-01-07 01:46:25,255 - INFO - Fetching metadata from: https://nhentai.net/g/312775/ +2026-01-07 01:46:25,550 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-07 01:46:25,550 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Tsuma wa Tokidoki Ecchi Panda Mating with Red [English] +2026-01-07 01:46:25,793 - INFO - Fetching metadata from: https://nhentai.net/g/544873/ +2026-01-07 01:46:26,103 - INFO - Updating metadata for: sisters_after_mozu +2026-01-07 01:46:26,103 - INFO - Searching metadata for: sisters after mozu +2026-01-07 01:46:26,280 - INFO - Searching MangaUpdates for: sisters after mozu +2026-01-07 01:46:26,614 - INFO - Updating metadata for: otaku_hime_ga_kita_heya +2026-01-07 01:46:26,614 - INFO - Searching metadata for: otaku hime ga kita heya +2026-01-07 01:46:26,936 - INFO - Fetching metadata from: https://nhentai.net/g/347531/ +2026-01-07 01:46:27,198 - INFO - Updating metadata for: dream_mama_vs_real_mother_chapter_1b +2026-01-07 01:46:27,198 - INFO - Searching metadata for: dream mama vs real mother chapter 1b +2026-01-07 01:46:27,417 - INFO - Searching MangaUpdates for: dream mama vs real mother chapter 1b +2026-01-07 01:46:27,807 - INFO - Updating metadata for: day_only_for_two +2026-01-07 01:46:27,807 - INFO - Searching metadata for: day only for two +2026-01-07 01:46:28,007 - INFO - Fetching metadata from: https://nhentai.net/g/167284/ +2026-01-07 01:46:28,200 - INFO - Updating metadata for: [Tohzai] Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-07 01:46:28,200 - INFO - Searching metadata for: Tohzai Imitation Family Ch.1-2 [English] [Lazarus H] +2026-01-07 01:46:28,436 - INFO - Fetching metadata from: https://nhentai.net/g/141024/ +2026-01-07 01:46:28,630 - INFO - Updating metadata for: whats_a_bond +2026-01-07 01:46:28,630 - INFO - Searching metadata for: whats a bond +2026-01-07 01:46:28,913 - INFO - Fetching metadata from: https://nhentai.net/g/126340/ +2026-01-07 01:46:29,172 - INFO - Updating metadata for: [Kira Hiroyoshi] Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 01:46:29,172 - INFO - Searching metadata for: Kira Hiroyoshi Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 01:46:29,539 - INFO - Searching metadata for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 01:46:29,948 - INFO - Searching MangaUpdates for: Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing] +2026-01-07 01:46:30,420 - INFO - Updating metadata for: ore_ga_daiteru_onna_wa_imouto_kamo_shirenai +2026-01-07 01:46:30,421 - INFO - Searching metadata for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-07 01:46:30,647 - INFO - Searching MangaUpdates for: ore ga daiteru onna wa imouto kamo shirenai +2026-01-07 01:46:31,072 - INFO - Updating metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-07 01:46:31,072 - INFO - Searching metadata for: (C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal] +2026-01-07 01:46:31,390 - INFO - Fetching metadata from: https://nhentai.net/g/285698/ +2026-01-07 01:46:31,617 - INFO - Updating metadata for: lethargic_sister_tolerates_her_brothers_pranks +2026-01-07 01:46:31,617 - INFO - Searching metadata for: lethargic sister tolerates her brothers pranks +2026-01-07 01:46:31,831 - INFO - Fetching metadata from: https://nhentai.net/g/518733/ +2026-01-07 01:46:32,027 - INFO - Updating metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-07 01:46:32,027 - INFO - Searching metadata for: Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!) +2026-01-07 01:46:32,408 - INFO - Fetching metadata from: https://nhentai.net/g/579037/ +2026-01-07 01:46:32,595 - INFO - Updating metadata for: bitch_mamas_depraved_adultery +2026-01-07 01:46:32,595 - INFO - Searching metadata for: bitch mamas depraved adultery +2026-01-07 01:46:32,779 - INFO - Searching MangaUpdates for: bitch mamas depraved adultery +2026-01-07 01:46:33,097 - INFO - Updating metadata for: [Fence 14] Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 01:46:33,097 - INFO - Searching metadata for: Fence 14 Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 01:46:33,302 - INFO - Searching metadata for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 01:46:33,494 - INFO - Searching MangaUpdates for: Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6) +2026-01-07 01:46:33,824 - INFO - Updating metadata for: onee_sama_likes_anal +2026-01-07 01:46:33,825 - INFO - Searching metadata for: onee sama likes anal +2026-01-07 01:46:33,998 - INFO - Fetching metadata from: https://nhentai.net/g/110837/ +2026-01-07 01:46:34,220 - INFO - Updating metadata for: camellia_the_first +2026-01-07 01:46:34,221 - INFO - Searching metadata for: camellia the first +2026-01-07 01:46:34,471 - INFO - Fetching metadata from: https://nhentai.net/g/521474/ +2026-01-07 01:46:34,736 - INFO - Updating metadata for: sudou_siblings_sexual_circumstances +2026-01-07 01:46:34,736 - INFO - Searching metadata for: sudou siblings sexual circumstances +2026-01-07 01:46:34,935 - INFO - Fetching metadata from: https://nhentai.net/g/326122/ +2026-01-07 01:46:35,171 - INFO - Updating metadata for: mama_and_john +2026-01-07 01:46:35,171 - INFO - Searching metadata for: mama and john +2026-01-07 01:46:35,356 - INFO - Searching MangaUpdates for: mama and john +2026-01-07 01:46:35,667 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 01:46:35,668 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 01:46:35,982 - INFO - Searching metadata for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 01:46:36,387 - INFO - Searching MangaUpdates for: Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital] +2026-01-07 01:46:37,178 - INFO - Updating metadata for: bakunyuu_bijukujo_wa_soku_hame_koubiana +2026-01-07 01:46:37,178 - INFO - Searching metadata for: bakunyuu bijukujo wa soku hame koubiana +2026-01-07 01:46:37,420 - INFO - Fetching metadata from: https://nhentai.net/g/529021/ +2026-01-07 01:46:37,741 - INFO - Updating metadata for: joshi_seito_o_suki_houdai_ni_hame_botebara_ni_shite_ok_na_sekai +2026-01-07 01:46:37,741 - INFO - Searching metadata for: joshi seito o suki houdai ni hame botebara ni shite ok na sekai +2026-01-07 01:46:38,156 - INFO - Fetching metadata from: https://nhentai.net/g/268826/ +2026-01-07 01:46:38,452 - INFO - Updating metadata for: [Puranpuman] A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-07 01:46:38,453 - INFO - Searching metadata for: Puranpuman A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation] +2026-01-07 01:46:38,878 - INFO - Fetching metadata from: https://nhentai.net/g/617868/ +2026-01-07 01:46:39,139 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-07 01:46:39,139 - INFO - Searching metadata for: Mustard Teikoku (Europia) A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me +2026-01-07 01:46:39,605 - INFO - Fetching metadata from: https://nhentai.net/g/594382/ +2026-01-07 01:46:39,873 - INFO - Updating metadata for: hitozuma_saimin_appli_chapter +2026-01-07 01:46:39,873 - INFO - Searching metadata for: hitozuma saimin appli chapter +2026-01-07 01:46:40,081 - INFO - Searching MangaUpdates for: hitozuma saimin appli chapter +2026-01-07 01:46:40,448 - INFO - Updating metadata for: dagashi_wa_sake_ni_au +2026-01-07 01:46:40,449 - INFO - Searching metadata for: dagashi wa sake ni au +2026-01-07 01:46:40,744 - INFO - Fetching metadata from: https://nhentai.net/g/404156/ +2026-01-07 01:46:41,003 - INFO - Updating metadata for: the_night_my_sister_disappeared_i_made_love_to_my_mother +2026-01-07 01:46:41,003 - INFO - Searching metadata for: the night my sister disappeared i made love to my mother +2026-01-07 01:46:41,388 - INFO - Fetching metadata from: https://nhentai.net/g/497835/ +2026-01-07 01:46:41,634 - INFO - Updating metadata for: tsubaki_democracy +2026-01-07 01:46:41,634 - INFO - Searching metadata for: tsubaki democracy +2026-01-07 01:46:41,853 - INFO - Fetching metadata from: https://nhentai.net/g/269196/ +2026-01-07 01:46:42,091 - INFO - Updating metadata for: Kumiko_to_Warui_Musuko_(2015) +2026-01-07 01:46:42,092 - INFO - Searching metadata for: Kumiko to Warui Musuko +2026-01-07 01:46:42,333 - INFO - Fetching metadata from: https://nhentai.net/g/190492/ +2026-01-07 01:46:42,627 - INFO - Updating metadata for: this_teacher_in_her_fourtys_is_acting_like_a_young_girl_in_the_prime_if_her_life +2026-01-07 01:46:42,627 - INFO - Searching metadata for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-07 01:46:42,950 - INFO - Searching MangaUpdates for: this teacher in her fourtys is acting like a young girl in the prime if her life +2026-01-07 01:46:43,487 - INFO - Updating metadata for: the_story_of_a_single_career_woman_in_hers_getting_addicted_to_a_relationship +2026-01-07 01:46:43,487 - INFO - Searching metadata for: the story of a single career woman in hers getting addicted to a relationship +2026-01-07 01:46:43,761 - INFO - Searching MangaUpdates for: the story of a single career woman in hers getting addicted to a relationship +2026-01-07 01:46:44,360 - INFO - Updating metadata for: [Kouda Tomohiro] Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-07 01:46:44,361 - INFO - Searching metadata for: Kouda Tomohiro Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty] +2026-01-07 01:46:44,591 - INFO - Fetching metadata from: https://nhentai.net/g/604149/ +2026-01-07 01:46:44,849 - INFO - Updating metadata for: [Hikagemon (Tenpiboshi)] Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-07 01:46:44,849 - INFO - Searching metadata for: Hikagemon (Tenpiboshi) Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital] +2026-01-07 01:46:45,135 - INFO - Fetching metadata from: https://nhentai.net/g/593437/ +2026-01-07 01:46:45,381 - INFO - Updating metadata for: rural_stories +2026-01-07 01:46:45,382 - INFO - Searching metadata for: rural stories +2026-01-07 01:46:45,551 - INFO - Fetching metadata from: https://nhentai.net/g/565283/ +2026-01-07 01:46:45,867 - INFO - Updating metadata for: [Sunagawa Tara] Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-07 01:46:45,867 - INFO - Searching metadata for: Sunagawa Tara Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital] +2026-01-07 01:46:46,271 - INFO - Fetching metadata from: https://nhentai.net/g/601543/ +2026-01-07 01:46:46,669 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-07 01:46:46,669 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs] +2026-01-07 01:46:47,091 - INFO - Fetching metadata from: https://nhentai.net/g/573974/ +2026-01-07 01:46:47,331 - INFO - Updating metadata for: my_daily_life_as_a_streamer +2026-01-07 01:46:47,331 - INFO - Searching metadata for: my daily life as a streamer +2026-01-07 01:46:47,615 - INFO - Fetching metadata from: https://nhentai.net/g/550192/ +2026-01-07 01:46:48,006 - INFO - Updating metadata for: possessed_and_thrusting +2026-01-07 01:46:48,006 - INFO - Searching metadata for: possessed and thrusting +2026-01-07 01:46:48,193 - INFO - Fetching metadata from: https://nhentai.net/g/584236/ +2026-01-07 01:46:48,439 - INFO - Updating metadata for: mrs_miho_cant_stop_cheating_chapter +2026-01-07 01:46:48,439 - INFO - Searching metadata for: mrs miho cant stop cheating chapter +2026-01-07 01:46:48,677 - INFO - Searching MangaUpdates for: mrs miho cant stop cheating chapter +2026-01-07 01:46:48,987 - INFO - Updating metadata for: a_story_about_an_oneesan_being_impregnated_by_an_incubus +2026-01-07 01:46:48,987 - INFO - Searching metadata for: a story about an oneesan being impregnated by an incubus +2026-01-07 01:46:49,233 - INFO - Searching MangaUpdates for: a story about an oneesan being impregnated by an incubus +2026-01-07 01:46:49,923 - INFO - Updating metadata for: wrung_dry_by_my_sister_every_night_under_the_sheets +2026-01-07 01:46:49,923 - INFO - Searching metadata for: wrung dry by my sister every night under the sheets +2026-01-07 01:46:50,185 - INFO - Fetching metadata from: https://nhentai.net/g/548542/ +2026-01-07 01:46:50,410 - INFO - Updating metadata for: [Yue] Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-07 01:46:50,410 - INFO - Searching metadata for: Yue Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size +2026-01-07 01:46:50,679 - INFO - Fetching metadata from: https://nhentai.net/g/580266/ +2026-01-07 01:46:50,915 - INFO - Updating metadata for: a_country_mother_who_makes_her_son_horny +2026-01-07 01:46:50,915 - INFO - Searching metadata for: a country mother who makes her son horny +2026-01-07 01:46:51,294 - INFO - Fetching metadata from: https://nhentai.net/g/558745/ +2026-01-07 01:46:51,590 - INFO - Updating metadata for: sister_complex +2026-01-07 01:46:51,591 - INFO - Searching metadata for: sister complex +2026-01-07 01:46:51,805 - INFO - Fetching metadata from: https://nhentai.net/g/600775/ +2026-01-07 01:46:52,000 - INFO - Updating metadata for: nao_hanpatsu_zokusei +2026-01-07 01:46:52,000 - INFO - Searching metadata for: nao hanpatsu zokusei +2026-01-07 01:46:52,169 - INFO - Searching MangaUpdates for: nao hanpatsu zokusei +2026-01-07 01:46:52,541 - INFO - Updating metadata for: [NCP (big g)] A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-07 01:46:52,542 - INFO - Searching metadata for: NCP (big g) A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah] +2026-01-07 01:46:52,905 - INFO - Fetching metadata from: https://nhentai.net/g/514753/ +2026-01-07 01:46:53,204 - INFO - Updating metadata for: masochist_little_brothers_training +2026-01-07 01:46:53,204 - INFO - Searching metadata for: masochist little brothers training +2026-01-07 01:46:53,420 - INFO - Searching MangaUpdates for: masochist little brothers training +2026-01-07 01:46:53,762 - INFO - Updating metadata for: SISUANA - sister hole +2026-01-07 01:46:53,762 - INFO - Searching metadata for: SISUANA - sister hole +2026-01-07 01:46:54,014 - INFO - Fetching metadata from: https://nhentai.net/g/521114/ +2026-01-07 01:46:54,268 - INFO - Updating metadata for: my_neet_older_sister +2026-01-07 01:46:54,269 - INFO - Searching metadata for: my neet older sister +2026-01-07 01:46:54,479 - INFO - Fetching metadata from: https://nhentai.net/g/541946/ +2026-01-07 01:46:54,720 - INFO - Updating metadata for: narmaya_attack +2026-01-07 01:46:54,720 - INFO - Searching metadata for: narmaya attack +2026-01-07 01:46:54,916 - INFO - Fetching metadata from: https://nhentai.net/g/322620/ +2026-01-07 01:46:55,139 - INFO - Updating metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-07 01:46:55,140 - INFO - Searching metadata for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-07 01:46:55,319 - INFO - Searching MangaUpdates for: Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai +2026-01-07 01:46:55,759 - INFO - Updating metadata for: the_country_little_sister_and_the_tempation_of_innocence +2026-01-07 01:46:55,759 - INFO - Searching metadata for: the country little sister and the tempation of innocence +2026-01-07 01:46:56,077 - INFO - Searching MangaUpdates for: the country little sister and the tempation of innocence +2026-01-07 01:46:56,664 - INFO - Updating metadata for: blood_lunch +2026-01-07 01:46:56,665 - INFO - Searching metadata for: blood lunch +2026-01-07 01:46:56,861 - INFO - Fetching metadata from: https://nhentai.net/g/578369/ +2026-01-07 01:46:57,104 - INFO - Updating metadata for: toppatsusei_bokki_shoukougun_jii_fuzen_o_soete +2026-01-07 01:46:57,104 - INFO - Searching metadata for: toppatsusei bokki shoukougun jii fuzen o soete +2026-01-07 01:46:57,307 - INFO - Fetching metadata from: https://nhentai.net/g/425210/ +2026-01-07 01:46:57,739 - INFO - Updating metadata for: Between Heave and Hell +2026-01-07 01:46:57,739 - INFO - Searching metadata for: Between Heave and Hell +2026-01-07 01:46:57,922 - INFO - Fetching metadata from: https://nhentai.net/g/125398/ +2026-01-07 01:46:58,190 - INFO - Updating metadata for: is_my_sister_seriously_ill +2026-01-07 01:46:58,190 - INFO - Searching metadata for: is my sister seriously ill +2026-01-07 01:46:58,456 - INFO - Fetching metadata from: https://nhentai.net/g/600832/ +2026-01-07 01:46:58,729 - INFO - Updating metadata for: mucchiri_megaton +2026-01-07 01:46:58,729 - INFO - Searching metadata for: mucchiri megaton +2026-01-07 01:46:58,949 - INFO - Fetching metadata from: https://nhentai.net/g/495948/ +2026-01-07 01:46:59,286 - INFO - Updating metadata for: [Kikunosukemaru] Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-07 01:46:59,287 - INFO - Searching metadata for: Kikunosukemaru Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco] +2026-01-07 01:46:59,551 - INFO - Fetching metadata from: https://nhentai.net/g/166499/ +2026-01-07 01:46:59,787 - INFO - Updating metadata for: the_sex_life_of_the_tachibanas +2026-01-07 01:46:59,787 - INFO - Searching metadata for: the sex life of the tachibanas +2026-01-07 01:47:00,020 - INFO - Searching MangaUpdates for: the sex life of the tachibanas +2026-01-07 01:47:00,368 - INFO - Updating metadata for: jitsu_wa_midara_na_chounyuu_sensei_chapter +2026-01-07 01:47:00,368 - INFO - Searching metadata for: jitsu wa midara na chounyuu sensei chapter +2026-01-07 01:47:00,628 - INFO - Searching MangaUpdates for: jitsu wa midara na chounyuu sensei chapter +2026-01-07 01:47:01,074 - INFO - Updating metadata for: [K8ON] Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 01:47:01,074 - INFO - Searching metadata for: K8ON Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 01:47:01,283 - INFO - Searching metadata for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 01:47:01,501 - INFO - Searching MangaUpdates for: Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose] +2026-01-07 01:47:02,220 - INFO - Updating metadata for: gumi_chocolate_pine_koma_mangashuu +2026-01-07 01:47:02,221 - INFO - Searching metadata for: gumi chocolate pine koma mangashuu +2026-01-07 01:47:02,432 - INFO - Fetching metadata from: https://nhentai.net/g/541484/ +2026-01-07 01:47:02,694 - INFO - Updating metadata for: temptation_downtime +2026-01-07 01:47:02,694 - INFO - Searching metadata for: temptation downtime +2026-01-07 01:47:02,911 - INFO - Fetching metadata from: https://nhentai.net/g/238204/ +2026-01-07 01:47:03,192 - INFO - Updating metadata for: welcome_to_greenwood +2026-01-07 01:47:03,192 - INFO - Searching metadata for: welcome to greenwood +2026-01-07 01:47:03,442 - INFO - Fetching metadata from: https://nhentai.net/g/55621/ +2026-01-07 01:47:03,728 - INFO - Updating metadata for: passionate_coriander +2026-01-07 01:47:03,728 - INFO - Searching metadata for: passionate coriander +2026-01-07 01:47:03,951 - INFO - Fetching metadata from: https://nhentai.net/g/504728/ +2026-01-07 01:47:04,218 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-07 01:47:04,218 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr] +2026-01-07 01:47:04,783 - INFO - Fetching metadata from: https://nhentai.net/g/497921/ +2026-01-07 01:47:05,054 - INFO - Updating metadata for: big_sister_with_drooping_tits_wants_to_fuck_her_little_brother +2026-01-07 01:47:05,055 - INFO - Searching metadata for: big sister with drooping tits wants to fuck her little brother +2026-01-07 01:47:05,294 - INFO - Fetching metadata from: https://nhentai.net/g/502879/ +2026-01-07 01:47:05,527 - INFO - Updating metadata for: sister_control +2026-01-07 01:47:05,527 - INFO - Searching metadata for: sister control +2026-01-07 01:47:05,795 - INFO - Fetching metadata from: https://nhentai.net/g/619883/ +2026-01-07 01:47:06,165 - INFO - Updating metadata for: a_book_about_using_hypno_to_fuck_my_little_sister +2026-01-07 01:47:06,166 - INFO - Searching metadata for: a book about using hypno to fuck my little sister +2026-01-07 01:47:06,529 - INFO - Fetching metadata from: https://nhentai.net/g/545892/ +2026-01-07 01:47:06,761 - INFO - Updating metadata for: moms_body_is_mine_mother_and_son_incest_sex_behind_dads_back +2026-01-07 01:47:06,761 - INFO - Searching metadata for: moms body is mine mother and son incest sex behind dads back +2026-01-07 01:47:07,030 - INFO - Searching MangaUpdates for: moms body is mine mother and son incest sex behind dads back +2026-01-07 01:47:07,416 - INFO - Updating metadata for: dysfunctional_family +2026-01-07 01:47:07,416 - INFO - Searching metadata for: dysfunctional family +2026-01-07 01:47:07,597 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-07 01:47:07,960 - INFO - Updating metadata for: pldk +2026-01-07 01:47:07,961 - INFO - Searching metadata for: pldk +2026-01-07 01:47:08,141 - INFO - Searching MangaUpdates for: pldk +2026-01-07 01:47:08,404 - INFO - Updating metadata for: a_sticky_harem_full_of_mother_and_sisters_milk +2026-01-07 01:47:08,405 - INFO - Searching metadata for: a sticky harem full of mother and sisters milk +2026-01-07 01:47:08,756 - INFO - Searching MangaUpdates for: a sticky harem full of mother and sisters milk +2026-01-07 01:47:09,642 - INFO - Updating metadata for: [Kazuhiro] InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 01:47:09,642 - INFO - Searching metadata for: Kazuhiro InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 01:47:09,983 - INFO - Searching metadata for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 01:47:10,319 - INFO - Searching MangaUpdates for: InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital] +2026-01-07 01:47:11,633 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge +2026-01-07 01:47:11,633 - INFO - Searching metadata for: big boobs shadowy character takes revenge +2026-01-07 01:47:11,823 - INFO - Fetching metadata from: https://nhentai.net/g/600439/ +2026-01-07 01:47:12,076 - INFO - Updating metadata for: [Shiraishi Nagisa] Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-07 01:47:12,077 - INFO - Searching metadata for: Shiraishi Nagisa Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans] +2026-01-07 01:47:12,283 - INFO - Fetching metadata from: https://nhentai.net/g/485428/ +2026-01-07 01:47:12,496 - INFO - Updating metadata for: [Juna Juna Juice] Starting tonight Baby bear will become [English] +2026-01-07 01:47:12,496 - INFO - Searching metadata for: Juna Juna Juice Starting tonight Baby bear will become [English] +2026-01-07 01:47:12,729 - INFO - Fetching metadata from: https://nhentai.net/g/594307/ +2026-01-07 01:47:12,932 - INFO - Updating metadata for: 20_years_from_now_you_make_me_a_little_nervous_chapter_1 +2026-01-07 01:47:12,932 - INFO - Searching metadata for: 20 years from now you make me a little nervous chapter 1 +2026-01-07 01:47:13,291 - INFO - Searching MangaUpdates for: 20 years from now you make me a little nervous chapter 1 +2026-01-07 01:47:14,159 - INFO - Updating metadata for: neteiru_okaasan_o_yaritai_houdai +2026-01-07 01:47:14,160 - INFO - Searching metadata for: neteiru okaasan o yaritai houdai +2026-01-07 01:47:14,350 - INFO - Searching MangaUpdates for: neteiru okaasan o yaritai houdai +2026-01-07 01:47:15,133 - INFO - Updating metadata for: [Mizu] Jumble Family [English] (Decensored) +2026-01-07 01:47:15,133 - INFO - Searching metadata for: Mizu Jumble Family [English] (Decensored) +2026-01-07 01:47:15,321 - INFO - Fetching metadata from: https://nhentai.net/g/259903/ +2026-01-07 01:47:15,563 - INFO - Updating metadata for: Ebony Family mating practices (english) +2026-01-07 01:47:15,563 - INFO - Searching metadata for: Ebony Family mating practices (english) +2026-01-07 01:47:15,728 - INFO - Fetching metadata from: https://nhentai.net/g/600824/ +2026-01-07 01:47:16,024 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 01:47:16,024 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 01:47:16,253 - INFO - Fetching metadata from: https://nhentai.net/g/537310/ +2026-01-07 01:47:16,484 - INFO - Updating metadata for: Furachina_Jukujo_(2021) +2026-01-07 01:47:16,485 - INFO - Searching metadata for: Furachina Jukujo +2026-01-07 01:47:16,686 - INFO - Searching MangaUpdates for: Furachina Jukujo +2026-01-07 01:47:16,961 - INFO - Updating metadata for: Kosmos ga Saita Hi ni Ch +2026-01-07 01:47:16,962 - INFO - Searching metadata for: Kosmos ga Saita Hi ni Ch +2026-01-07 01:47:17,222 - INFO - Fetching metadata from: https://nhentai.net/g/603988/ +2026-01-07 01:47:17,424 - INFO - Updating metadata for: [Airandou] Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-07 01:47:17,425 - INFO - Searching metadata for: Airandou Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend +2026-01-07 01:47:17,658 - INFO - Fetching metadata from: https://nhentai.net/g/590457/ +2026-01-07 01:47:17,883 - INFO - Updating metadata for: oni_no_musume_datte_konkatsu_shitai +2026-01-07 01:47:17,883 - INFO - Searching metadata for: oni no musume datte konkatsu shitai +2026-01-07 01:47:18,133 - INFO - Fetching metadata from: https://nhentai.net/g/342762/ +2026-01-07 01:47:18,339 - INFO - Updating metadata for: answer_checking +2026-01-07 01:47:18,340 - INFO - Searching metadata for: answer checking +2026-01-07 01:47:18,538 - INFO - Fetching metadata from: https://nhentai.net/g/535244/ +2026-01-07 01:47:18,718 - INFO - Updating metadata for: big_sis_masturbation_life_my_masturbation_right_belongs_to_my_older_step_sisters +2026-01-07 01:47:18,718 - INFO - Searching metadata for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-07 01:47:19,048 - INFO - Searching MangaUpdates for: big sis masturbation life my masturbation right belongs to my older step sisters +2026-01-07 01:47:19,422 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 01:47:19,422 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 01:47:19,790 - INFO - Searching metadata for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 01:47:20,182 - INFO - Searching MangaUpdates for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital] +2026-01-07 01:47:20,708 - INFO - Updating metadata for: [Kasou Genjitsu (Hasekura Noise)] Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 01:47:20,709 - INFO - Searching metadata for: Kasou Genjitsu (Hasekura Noise) Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital] +2026-01-07 01:47:20,957 - INFO - Fetching metadata from: https://nhentai.net/g/492943/ +2026-01-07 01:47:21,189 - INFO - Updating metadata for: maid_slave_collection +2026-01-07 01:47:21,189 - INFO - Searching metadata for: maid slave collection +2026-01-07 01:47:21,403 - INFO - Fetching metadata from: https://nhentai.net/g/601115/ +2026-01-07 01:47:21,793 - INFO - Updating metadata for: lemon_honeymoon +2026-01-07 01:47:21,793 - INFO - Searching metadata for: lemon honeymoon +2026-01-07 01:47:22,005 - INFO - Fetching metadata from: https://nhentai.net/g/524298/ +2026-01-07 01:47:22,203 - INFO - Updating metadata for: shall_i_get_it_out_for_you_mom +2026-01-07 01:47:22,204 - INFO - Searching metadata for: shall i get it out for you mom +2026-01-07 01:47:22,552 - INFO - Fetching metadata from: https://nhentai.net/g/537397/ +2026-01-07 01:47:22,751 - INFO - Updating metadata for: family_plan_toono_suika_chapter +2026-01-07 01:47:22,751 - INFO - Searching metadata for: family plan toono suika chapter +2026-01-07 01:47:22,920 - INFO - Searching MangaUpdates for: family plan toono suika chapter +2026-01-07 01:47:23,549 - INFO - Updating metadata for: temptation_of_big_tits_elder_sister +2026-01-07 01:47:23,549 - INFO - Searching metadata for: temptation of big tits elder sister +2026-01-07 01:47:23,743 - INFO - Fetching metadata from: https://nhentai.net/g/512343/ +2026-01-07 01:47:23,934 - INFO - Updating metadata for: musuko_no_tomodachi_incubus_ni_miryou_sareta_yanmama_wa_mesu_ni_naru +2026-01-07 01:47:23,934 - INFO - Searching metadata for: musuko no tomodachi incubus ni miryou sareta yanmama wa mesu ni naru +2026-01-07 01:47:24,271 - INFO - Fetching metadata from: https://nhentai.net/g/521491/ +2026-01-07 01:47:24,483 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 01:47:24,483 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 01:47:24,754 - INFO - Searching metadata for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 01:47:25,047 - INFO - Searching MangaUpdates for: Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher] +2026-01-07 01:47:26,359 - INFO - Updating metadata for: jukujo_sentai_paiters_chapter +2026-01-07 01:47:26,360 - INFO - Searching metadata for: jukujo sentai paiters chapter +2026-01-07 01:47:26,524 - INFO - Searching MangaUpdates for: jukujo sentai paiters chapter +2026-01-07 01:47:26,921 - INFO - Updating metadata for: ane_to_kanojo_to_hamedori_3p_shitemita +2026-01-07 01:47:26,921 - INFO - Searching metadata for: ane to kanojo to hamedori 3p shitemita +2026-01-07 01:47:27,173 - INFO - Searching MangaUpdates for: ane to kanojo to hamedori 3p shitemita +2026-01-07 01:47:27,917 - INFO - Updating metadata for: ogre_girl_tades_favorite_things +2026-01-07 01:47:27,917 - INFO - Searching metadata for: ogre girl tades favorite things +2026-01-07 01:47:28,065 - INFO - Searching MangaUpdates for: ogre girl tades favorite things +2026-01-07 01:47:28,632 - INFO - Updating metadata for: [Izayoi no Kiki] Incest Room [English] [Tigoris Translates] +2026-01-07 01:47:28,633 - INFO - Searching metadata for: Izayoi no Kiki Incest Room [English] [Tigoris Translates] +2026-01-07 01:47:28,860 - INFO - Fetching metadata from: https://nhentai.net/g/615902/ +2026-01-07 01:47:29,154 - INFO - Updating metadata for: trap_shiki_hunting +2026-01-07 01:47:29,155 - INFO - Searching metadata for: trap shiki hunting +2026-01-07 01:47:29,384 - INFO - Searching MangaUpdates for: trap shiki hunting +2026-01-07 01:47:29,719 - INFO - Updating metadata for: hetappi_whiteday +2026-01-07 01:47:29,719 - INFO - Searching metadata for: hetappi whiteday +2026-01-07 01:47:29,864 - INFO - Searching MangaUpdates for: hetappi whiteday +2026-01-07 01:47:30,473 - INFO - Updating metadata for: family_control +2026-01-07 01:47:30,473 - INFO - Searching metadata for: family control +2026-01-07 01:47:30,678 - INFO - Fetching metadata from: https://nhentai.net/g/619340/ +2026-01-07 01:47:30,902 - INFO - Updating metadata for: a_story_of_my_oneesan_who_loves_me_too_much +2026-01-07 01:47:30,902 - INFO - Searching metadata for: a story of my oneesan who loves me too much +2026-01-07 01:47:31,338 - INFO - Searching MangaUpdates for: a story of my oneesan who loves me too much +2026-01-07 01:47:31,730 - INFO - Updating metadata for: anemone_yuusuke_chapter_1x +2026-01-07 01:47:31,730 - INFO - Searching metadata for: anemone yuusuke chapter 1x +2026-01-07 01:47:31,874 - INFO - Searching MangaUpdates for: anemone yuusuke chapter 1x +2026-01-07 01:47:32,349 - INFO - Updating metadata for: [Shirono Mahiro] Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-07 01:47:32,349 - INFO - Searching metadata for: Shirono Mahiro Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans] +2026-01-07 01:47:32,617 - INFO - Fetching metadata from: https://nhentai.net/g/254693/ +2026-01-07 01:47:32,892 - INFO - Updating metadata for: [Itaba Hiroshi] Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-07 01:47:32,892 - INFO - Searching metadata for: Itaba Hiroshi Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo] +2026-01-07 01:47:33,086 - INFO - Fetching metadata from: https://nhentai.net/g/601017/ +2026-01-07 01:47:33,312 - INFO - Updating metadata for: [Shirono Mahiro] Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 01:47:33,313 - INFO - Searching metadata for: Shirono Mahiro Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 01:47:33,485 - INFO - Searching metadata for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 01:47:33,658 - INFO - Searching MangaUpdates for: Yokumakezuma no Sukebegao [English] {Doujins com} +2026-01-07 01:47:34,071 - INFO - Updating metadata for: twentyfour_seven_sex_with_my_stepsister +2026-01-07 01:47:34,072 - INFO - Searching metadata for: twentyfour seven sex with my stepsister +2026-01-07 01:47:34,277 - INFO - Searching MangaUpdates for: twentyfour seven sex with my stepsister +2026-01-07 01:47:34,628 - INFO - Updating metadata for: summer_stay_in +2026-01-07 01:47:34,628 - INFO - Searching metadata for: summer stay in +2026-01-07 01:47:34,837 - INFO - Fetching metadata from: https://nhentai.net/g/549172/ +2026-01-07 01:47:35,085 - INFO - Updating metadata for: the_romantic_ritual_with_fox_goddess_yuukosan_chapter +2026-01-07 01:47:35,085 - INFO - Searching metadata for: the romantic ritual with fox goddess yuukosan chapter +2026-01-07 01:47:35,264 - INFO - Searching MangaUpdates for: the romantic ritual with fox goddess yuukosan chapter +2026-01-07 01:47:35,635 - INFO - Updating metadata for: ookii_gimai +2026-01-07 01:47:35,636 - INFO - Searching metadata for: ookii gimai +2026-01-07 01:47:35,820 - INFO - Fetching metadata from: https://nhentai.net/g/555115/ +2026-01-07 01:47:36,029 - INFO - Updating metadata for: sleepwalk_sex_with_your_crazy_stepbrother +2026-01-07 01:47:36,029 - INFO - Searching metadata for: sleepwalk sex with your crazy stepbrother +2026-01-07 01:47:36,197 - INFO - Fetching metadata from: https://nhentai.net/g/545786/ +2026-01-07 01:47:36,427 - INFO - Updating metadata for: [Shirono Mahiro] Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 01:47:36,427 - INFO - Searching metadata for: Shirono Mahiro Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 01:47:36,618 - INFO - Searching metadata for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 01:47:36,837 - INFO - Searching MangaUpdates for: Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com} +2026-01-07 01:47:37,209 - INFO - Updating metadata for: selfish_boyfriend_and_the_gentle_girlfriend +2026-01-07 01:47:37,209 - INFO - Searching metadata for: selfish boyfriend and the gentle girlfriend +2026-01-07 01:47:37,463 - INFO - Fetching metadata from: https://nhentai.net/g/257734/ +2026-01-07 01:47:37,669 - INFO - Updating metadata for: [NT Labo (NT Robo)] Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-07 01:47:37,669 - INFO - Searching metadata for: NT Labo (NT Robo) Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation] +2026-01-07 01:47:38,047 - INFO - Fetching metadata from: https://nhentai.net/g/261648/ +2026-01-07 01:47:38,257 - INFO - Updating metadata for: until_my_mother_in_law_is_pregnant +2026-01-07 01:47:38,257 - INFO - Searching metadata for: until my mother in law is pregnant +2026-01-07 01:47:38,547 - INFO - Fetching metadata from: https://nhentai.net/g/329242/ +2026-01-07 01:47:38,775 - INFO - Updating metadata for: grand_discovery_of_kink +2026-01-07 01:47:38,776 - INFO - Searching metadata for: grand discovery of kink +2026-01-07 01:47:38,987 - INFO - Searching MangaUpdates for: grand discovery of kink +2026-01-07 01:47:39,300 - INFO - Updating metadata for: happy_life_amagami +2026-01-07 01:47:39,300 - INFO - Searching metadata for: happy life amagami +2026-01-07 01:47:39,454 - INFO - Searching MangaUpdates for: happy life amagami +2026-01-07 01:47:39,771 - INFO - Updating metadata for: one_shot_a_summer +2026-01-07 01:47:39,771 - INFO - Searching metadata for: one shot a summer +2026-01-07 01:47:40,051 - INFO - Fetching metadata from: https://nhentai.net/g/500042/ +2026-01-07 01:47:40,241 - INFO - Updating metadata for: bath_time_with_big_sis +2026-01-07 01:47:40,241 - INFO - Searching metadata for: bath time with big sis +2026-01-07 01:47:40,477 - INFO - Fetching metadata from: https://nhentai.net/g/596905/ +2026-01-07 01:47:40,713 - INFO - Updating metadata for: family_x +2026-01-07 01:47:40,713 - INFO - Searching metadata for: family x +2026-01-07 01:47:40,933 - INFO - Fetching metadata from: https://nhentai.net/g/620563/ +2026-01-07 01:47:41,119 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-07 01:47:41,119 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese] +2026-01-07 01:47:41,341 - INFO - Fetching metadata from: https://nhentai.net/g/460957/ +2026-01-07 01:47:41,569 - INFO - Updating metadata for: [Chotto B-sen] A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-07 01:47:41,569 - INFO - Searching metadata for: Chotto B-sen A Room You Can't Leave After Having Sex [English] [Black raven] +2026-01-07 01:47:42,016 - INFO - Fetching metadata from: https://nhentai.net/g/473274/ +2026-01-07 01:47:42,234 - INFO - Updating metadata for: haunted_property_chapter +2026-01-07 01:47:42,234 - INFO - Searching metadata for: haunted property chapter +2026-01-07 01:47:42,390 - INFO - Searching MangaUpdates for: haunted property chapter +2026-01-07 01:47:42,717 - INFO - Updating metadata for: imouto_aoba +2026-01-07 01:47:42,717 - INFO - Searching metadata for: imouto aoba +2026-01-07 01:47:42,953 - INFO - Searching MangaUpdates for: imouto aoba +2026-01-07 01:47:43,252 - INFO - Updating metadata for: onehundred_my_older_sister_who_is_sick_after_illness +2026-01-07 01:47:43,252 - INFO - Searching metadata for: onehundred my older sister who is sick after illness +2026-01-07 01:47:43,407 - INFO - Searching MangaUpdates for: onehundred my older sister who is sick after illness +2026-01-07 01:47:43,731 - INFO - Updating metadata for: that_person_and_my_queen_special_edition +2026-01-07 01:47:43,731 - INFO - Searching metadata for: that person and my queen special edition +2026-01-07 01:47:43,944 - INFO - Fetching metadata from: https://nhentai.net/g/600892/ +2026-01-07 01:47:44,140 - INFO - Updating metadata for: delima +2026-01-07 01:47:44,140 - INFO - Searching metadata for: delima +2026-01-07 01:47:44,370 - INFO - Fetching metadata from: https://nhentai.net/g/426364/ +2026-01-07 01:47:44,679 - INFO - Updating metadata for: that_bitchy_boss_is_my_fuck_buddy +2026-01-07 01:47:44,679 - INFO - Searching metadata for: that bitchy boss is my fuck buddy +2026-01-07 01:47:44,933 - INFO - Fetching metadata from: https://nhentai.net/g/577154/ +2026-01-07 01:47:45,138 - INFO - Updating metadata for: Niku Benki Kanojo no Usui-san _ 육변기 여친의 우스이 양 +2026-01-07 01:47:45,138 - INFO - Searching metadata for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-07 01:47:45,373 - INFO - Searching MangaUpdates for: Niku Benki Kanojo no Usui-san 육변기 여친의 우스이 양 +2026-01-07 01:47:45,770 - INFO - Updating metadata for: a_slutty_old_lady_will_tell_how_to_make_her_slutty_daughter_fall_for_you +2026-01-07 01:47:45,771 - INFO - Searching metadata for: a slutty old lady will tell how to make her slutty daughter fall for you +2026-01-07 01:47:46,140 - INFO - Fetching metadata from: https://nhentai.net/g/393878/ +2026-01-07 01:47:46,381 - INFO - Updating metadata for: erotic_teacher_desperately +2026-01-07 01:47:46,381 - INFO - Searching metadata for: erotic teacher desperately +2026-01-07 01:47:46,546 - INFO - Fetching metadata from: https://nhentai.net/g/170003/ +2026-01-07 01:47:46,770 - INFO - Updating metadata for: [36p] Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-07 01:47:46,770 - INFO - Searching metadata for: 36p Ippu Tasai Seido Houan ga Kaketsusaremashita (English) +2026-01-07 01:47:47,039 - INFO - Fetching metadata from: https://nhentai.net/g/596901/ +2026-01-07 01:47:47,249 - INFO - Updating metadata for: the_housewives_of_the_luxury_apartment_are_to_dissatisfied_with_their_desires +2026-01-07 01:47:47,249 - INFO - Searching metadata for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-07 01:47:47,538 - INFO - Searching MangaUpdates for: the housewives of the luxury apartment are to dissatisfied with their desires +2026-01-07 01:47:47,942 - INFO - Updating metadata for: surrogacy_the_case_of_yuka_shirakawa +2026-01-07 01:47:47,942 - INFO - Searching metadata for: surrogacy the case of yuka shirakawa +2026-01-07 01:47:48,138 - INFO - Fetching metadata from: https://nhentai.net/g/549276/ +2026-01-07 01:47:48,363 - INFO - Updating metadata for: [Yue] Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 01:47:48,363 - INFO - Searching metadata for: Yue Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 01:47:48,969 - INFO - Searching metadata for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 01:47:49,694 - INFO - Searching MangaUpdates for: Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation] +2026-01-07 01:47:50,538 - INFO - Updating metadata for: my_relationship_with_my_sister +2026-01-07 01:47:50,538 - INFO - Searching metadata for: my relationship with my sister +2026-01-07 01:47:50,776 - INFO - Fetching metadata from: https://nhentai.net/g/584304/ +2026-01-07 01:47:51,004 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-07 01:47:51,005 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions] +2026-01-07 01:47:51,390 - INFO - Fetching metadata from: https://nhentai.net/g/419645/ +2026-01-07 01:47:51,596 - INFO - Updating metadata for: living_together_with_the_buxom_female_bully +2026-01-07 01:47:51,597 - INFO - Searching metadata for: living together with the buxom female bully +2026-01-07 01:47:51,811 - INFO - Fetching metadata from: https://nhentai.net/g/610208/ +2026-01-07 01:47:52,166 - INFO - Updating metadata for: how_to_build_cock +2026-01-07 01:47:52,166 - INFO - Searching metadata for: how to build cock +2026-01-07 01:47:52,416 - INFO - Fetching metadata from: https://nhentai.net/g/381583/ +2026-01-07 01:47:52,633 - INFO - Updating metadata for: [BNO (Utagawa Yosiero)] My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-07 01:47:52,633 - INFO - Searching metadata for: BNO (Utagawa Yosiero) My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta +2026-01-07 01:47:52,970 - INFO - Fetching metadata from: https://nhentai.net/g/599069/ +2026-01-07 01:47:53,173 - INFO - Updating metadata for: my_oyakodon +2026-01-07 01:47:53,173 - INFO - Searching metadata for: my oyakodon +2026-01-07 01:47:53,391 - INFO - Fetching metadata from: https://nhentai.net/g/618832/ +2026-01-07 01:47:53,637 - INFO - Updating metadata for: daisuki_na_classmate_ni_shikottemorautame +2026-01-07 01:47:53,637 - INFO - Searching metadata for: daisuki na classmate ni shikottemorautame +2026-01-07 01:47:53,917 - INFO - Searching MangaUpdates for: daisuki na classmate ni shikottemorautame +2026-01-07 01:47:54,427 - INFO - Updating metadata for: enji_ni_somaru +2026-01-07 01:47:54,428 - INFO - Searching metadata for: enji ni somaru +2026-01-07 01:47:54,671 - INFO - Fetching metadata from: https://nhentai.net/g/608666/ +2026-01-07 01:47:55,021 - INFO - Updating metadata for: daily_life_with_my_sister_who_i_dont +2026-01-07 01:47:55,021 - INFO - Searching metadata for: daily life with my sister who i dont +2026-01-07 01:47:55,249 - INFO - Searching MangaUpdates for: daily life with my sister who i dont +2026-01-07 01:47:55,648 - INFO - Updating metadata for: better_than_sex +2026-01-07 01:47:55,648 - INFO - Searching metadata for: better than sex +2026-01-07 01:47:55,888 - INFO - Fetching metadata from: https://nhentai.net/g/580485/ +2026-01-07 01:47:56,236 - INFO - Updating metadata for: do_you_like_an_untidy_older_sister +2026-01-07 01:47:56,236 - INFO - Searching metadata for: do you like an untidy older sister +2026-01-07 01:47:56,518 - INFO - Searching MangaUpdates for: do you like an untidy older sister +2026-01-07 01:47:56,800 - INFO - Updating metadata for: [R Koubou (Ruzi)] Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 01:47:56,800 - INFO - Searching metadata for: R Koubou (Ruzi) Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 01:47:57,198 - INFO - Searching metadata for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 01:47:57,606 - INFO - Searching MangaUpdates for: Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital] +2026-01-07 01:47:58,343 - INFO - Updating metadata for: sibling_with_sister +2026-01-07 01:47:58,343 - INFO - Searching metadata for: sibling with sister +2026-01-07 01:47:58,517 - INFO - Fetching metadata from: https://nhentai.net/g/501918/ +2026-01-07 01:47:58,742 - INFO - Updating metadata for: gikei_ni_netorare_ochita_tsubaki +2026-01-07 01:47:58,743 - INFO - Searching metadata for: gikei ni netorare ochita tsubaki +2026-01-07 01:47:58,929 - INFO - Searching MangaUpdates for: gikei ni netorare ochita tsubaki +2026-01-07 01:47:59,364 - INFO - Updating metadata for: the_festival_of_summers_lustful_traditions +2026-01-07 01:47:59,364 - INFO - Searching metadata for: the festival of summers lustful traditions +2026-01-07 01:47:59,566 - INFO - Searching MangaUpdates for: the festival of summers lustful traditions +2026-01-07 01:47:59,952 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-07 01:47:59,953 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs] +2026-01-07 01:48:00,228 - INFO - Fetching metadata from: https://nhentai.net/g/502051/ +2026-01-07 01:48:00,478 - INFO - Updating metadata for: can_you_really_use_this_app_to_fuck_different_species +2026-01-07 01:48:00,478 - INFO - Searching metadata for: can you really use this app to fuck different species +2026-01-07 01:48:00,739 - INFO - Fetching metadata from: https://nhentai.net/g/517152/ +2026-01-07 01:48:01,082 - INFO - Updating metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-07 01:48:01,082 - INFO - Searching metadata for: (C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL] +2026-01-07 01:48:01,603 - INFO - Fetching metadata from: https://nhentai.net/g/526048/ +2026-01-07 01:48:01,856 - INFO - Updating metadata for: boku_no_misatan +2026-01-07 01:48:01,857 - INFO - Searching metadata for: boku no misatan +2026-01-07 01:48:02,171 - INFO - Searching MangaUpdates for: boku no misatan +2026-01-07 01:48:02,499 - INFO - Updating metadata for: [Wakamatsu] Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-07 01:48:02,499 - INFO - Searching metadata for: Wakamatsu Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] +2026-01-07 01:48:02,834 - INFO - Fetching metadata from: https://nhentai.net/g/571054/ +2026-01-07 01:48:03,030 - INFO - Updating metadata for: thats_my_girl +2026-01-07 01:48:03,031 - INFO - Searching metadata for: thats my girl +2026-01-07 01:48:03,225 - INFO - Searching MangaUpdates for: thats my girl +2026-01-07 01:48:03,612 - INFO - Updating metadata for: [Juna Juna Juice] Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-07 01:48:03,612 - INFO - Searching metadata for: Juna Juna Juice Also Tonight, Baby Bear will become Carnivorous [English] +2026-01-07 01:48:03,804 - INFO - Fetching metadata from: https://nhentai.net/g/594305/ +2026-01-07 01:48:04,047 - INFO - Updating metadata for: when_i_confessed_to_the_girl_im_interested_in_i_wasnt_allowed_to_go_out_with_her_but_was_given_the_ok_for_childmaking +2026-01-07 01:48:04,047 - INFO - Searching metadata for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-07 01:48:04,432 - INFO - Searching MangaUpdates for: when i confessed to the girl im interested in i wasnt allowed to go out with her but was given the ok for childmaking +2026-01-07 01:48:05,112 - INFO - Updating metadata for: the_mother_of_the_oba_household +2026-01-07 01:48:05,113 - INFO - Searching metadata for: the mother of the oba household +2026-01-07 01:48:05,388 - INFO - Fetching metadata from: https://nhentai.net/g/543837/ +2026-01-07 01:48:05,637 - INFO - Updating metadata for: [UC] Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-07 01:48:05,638 - INFO - Searching metadata for: UC Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English] +2026-01-07 01:48:06,017 - INFO - Fetching metadata from: https://nhentai.net/g/399461/ +2026-01-07 01:48:06,211 - INFO - Updating metadata for: [Kudamono Monogatari (Kuroishi Ringo)] Puraibe to Joousama - Private Queen [Eng] +2026-01-07 01:48:06,211 - INFO - Searching metadata for: Kudamono Monogatari (Kuroishi Ringo) Puraibe to Joousama - Private Queen [Eng] +2026-01-07 01:48:06,410 - INFO - Fetching metadata from: https://nhentai.net/g/602699/ +2026-01-07 01:48:06,660 - INFO - Updating metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-07 01:48:06,660 - INFO - Searching metadata for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-07 01:48:06,894 - INFO - Searching MangaUpdates for: (C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL] +2026-01-07 01:48:07,642 - INFO - Updating metadata for: [Hakukoukai (Shiramizu Mizuchi)] Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 01:48:07,643 - INFO - Searching metadata for: Hakukoukai (Shiramizu Mizuchi) Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 01:48:07,850 - INFO - Searching metadata for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 01:48:08,122 - INFO - Searching MangaUpdates for: Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com] +2026-01-07 01:48:08,517 - INFO - Updating metadata for: [Sakai Hamachi] Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-07 01:48:08,517 - INFO - Searching metadata for: Sakai Hamachi Bonds or Ties [English] [shaddy746] [Uncensored] [Digital] +2026-01-07 01:48:08,709 - INFO - Fetching metadata from: https://nhentai.net/g/600615/ +2026-01-07 01:48:08,923 - INFO - Updating metadata for: cock_that_makes_tomboy_sisters_tap_out +2026-01-07 01:48:08,924 - INFO - Searching metadata for: cock that makes tomboy sisters tap out +2026-01-07 01:48:09,172 - INFO - Fetching metadata from: https://nhentai.net/g/585217/ +2026-01-07 01:48:09,393 - INFO - Updating metadata for: big_sis_ayaka +2026-01-07 01:48:09,393 - INFO - Searching metadata for: big sis ayaka +2026-01-07 01:48:09,635 - INFO - Fetching metadata from: https://nhentai.net/g/608897/ +2026-01-07 01:48:10,055 - INFO - Updating metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-07 01:48:10,056 - INFO - Searching metadata for: Mom and Sis Clean Up [English] [rewrite] +2026-01-07 01:48:10,305 - INFO - Fetching metadata from: https://nhentai.net/g/36404/ +2026-01-07 01:48:10,489 - INFO - Updating metadata for: big_boobs_shadowy_character_takes_revenge_chapter_ +2026-01-07 01:48:10,489 - INFO - Searching metadata for: big boobs shadowy character takes revenge chapter +2026-01-07 01:48:10,651 - INFO - Searching MangaUpdates for: big boobs shadowy character takes revenge chapter +2026-01-07 01:48:11,064 - INFO - Updating metadata for: [Shirono Mahiro] Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-07 01:48:11,064 - INFO - Searching metadata for: Shirono Mahiro Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans] +2026-01-07 01:48:11,323 - INFO - Fetching metadata from: https://nhentai.net/g/184288/ +2026-01-07 01:48:11,549 - INFO - Updating metadata for: [Nacchuushou (Amazon)] Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-07 01:48:11,549 - INFO - Searching metadata for: Nacchuushou (Amazon) Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English) +2026-01-07 01:48:12,038 - INFO - Fetching metadata from: https://nhentai.net/g/604264/ +2026-01-07 01:48:12,244 - INFO - Updating metadata for: im_his_little_sister_slave +2026-01-07 01:48:12,245 - INFO - Searching metadata for: im his little sister slave +2026-01-07 01:48:12,479 - INFO - Searching MangaUpdates for: im his little sister slave +2026-01-07 01:48:12,880 - INFO - Updating metadata for: Oretachi,_Kore_Kara_(2024) +2026-01-07 01:48:12,881 - INFO - Searching metadata for: Oretachi, Kore Kara +2026-01-07 01:48:13,048 - INFO - Searching MangaUpdates for: Oretachi, Kore Kara +2026-01-07 01:48:13,437 - INFO - Updating metadata for: [Juicebox Koujou (Juna Juna Juice)] Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-07 01:48:13,437 - INFO - Searching metadata for: Juicebox Koujou (Juna Juna Juice) Mukatsuku Imouto wa Chanto Shikaranakucha!! +2026-01-07 01:48:13,722 - INFO - Fetching metadata from: https://nhentai.net/g/572070/ +2026-01-07 01:48:13,987 - INFO - Updating metadata for: Sunday Funday [AI GENERATED] +2026-01-07 01:48:13,987 - INFO - Searching metadata for: Sunday Funday [AI GENERATED] +2026-01-07 01:48:14,156 - INFO - Fetching metadata from: https://nhentai.net/g/603171/ +2026-01-07 01:48:14,351 - INFO - Updating metadata for: succubus_pearl_bonus_book +2026-01-07 01:48:14,351 - INFO - Searching metadata for: succubus pearl bonus book +2026-01-07 01:48:14,529 - INFO - Fetching metadata from: https://nhentai.net/g/346344/ +2026-01-07 01:48:14,728 - INFO - Updating metadata for: sibling_switch +2026-01-07 01:48:14,728 - INFO - Searching metadata for: sibling switch +2026-01-07 01:48:14,933 - INFO - Fetching metadata from: https://nhentai.net/g/469099/ +2026-01-07 01:48:15,167 - INFO - Updating metadata for: pantsu_o_haita_dake_nanoni +2026-01-07 01:48:15,167 - INFO - Searching metadata for: pantsu o haita dake nanoni +2026-01-07 01:48:15,364 - INFO - Fetching metadata from: https://nhentai.net/g/548841/ +2026-01-07 01:48:15,566 - INFO - Updating metadata for: [Shiraishi Nagisa] Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-07 01:48:15,567 - INFO - Searching metadata for: Shiraishi Nagisa Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital] +2026-01-07 01:48:15,842 - INFO - Fetching metadata from: https://nhentai.net/g/407654/ +2026-01-07 01:48:16,081 - INFO - Updating metadata for: gyan_colle +2026-01-07 01:48:16,081 - INFO - Searching metadata for: gyan colle +2026-01-07 01:48:16,611 - INFO - Fetching metadata from: https://nhentai.net/g/611983/ +2026-01-07 01:48:16,906 - INFO - Updating metadata for: didnt_you_know +2026-01-07 01:48:16,906 - INFO - Searching metadata for: didnt you know +2026-01-07 01:48:17,066 - INFO - Searching MangaUpdates for: didnt you know +2026-01-07 01:48:17,361 - INFO - Updating metadata for: [Yue] Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-07 01:48:17,361 - INFO - Searching metadata for: Yue Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized] +2026-01-07 01:48:17,645 - INFO - Fetching metadata from: https://nhentai.net/g/603962/ +2026-01-07 01:48:17,867 - INFO - Updating metadata for: [Kakinotanehitotsubu (Kakino Nashiko)] Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-07 01:48:17,867 - INFO - Searching metadata for: Kakinotanehitotsubu (Kakino Nashiko) Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital] +2026-01-07 01:48:18,148 - INFO - Fetching metadata from: https://nhentai.net/g/484501/ +2026-01-07 01:48:18,350 - INFO - Updating metadata for: steamed_bun_kiss +2026-01-07 01:48:18,351 - INFO - Searching metadata for: steamed bun kiss +2026-01-07 01:48:18,515 - INFO - Fetching metadata from: https://nhentai.net/g/166671/ +2026-01-07 01:48:18,709 - INFO - Updating metadata for: [Pipasuta (Pipa)] Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-07 01:48:18,709 - INFO - Searching metadata for: Pipasuta (Pipa) Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder] +2026-01-07 01:48:18,940 - INFO - Fetching metadata from: https://nhentai.net/g/572821/ +2026-01-07 01:48:19,184 - INFO - Updating metadata for: madam_complex +2026-01-07 01:48:19,184 - INFO - Searching metadata for: madam complex +2026-01-07 01:48:19,390 - INFO - Fetching metadata from: https://nhentai.net/g/595613/ +2026-01-07 01:48:19,585 - INFO - Updating metadata for: [Puppukupu (Kawaisaw)] Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 01:48:19,585 - INFO - Searching metadata for: Puppukupu (Kawaisaw) Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 01:48:19,807 - INFO - Searching metadata for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 01:48:20,030 - INFO - Searching MangaUpdates for: Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com} +2026-01-07 01:48:20,618 - INFO - Updating metadata for: aggressive_mama +2026-01-07 01:48:20,619 - INFO - Searching metadata for: aggressive mama +2026-01-07 01:48:20,780 - INFO - Fetching metadata from: https://nhentai.net/g/467578/ +2026-01-07 01:48:20,974 - INFO - Updating metadata for: [Natsuzo] The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-07 01:48:20,974 - INFO - Searching metadata for: Natsuzo The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty] +2026-01-07 01:48:21,214 - INFO - Fetching metadata from: https://nhentai.net/g/604150/ +2026-01-07 01:48:21,397 - INFO - Updating metadata for: in_a_room_where_you_cant_leave_unless_you_have_sex +2026-01-07 01:48:21,397 - INFO - Searching metadata for: in a room where you cant leave unless you have sex +2026-01-07 01:48:21,666 - INFO - Searching MangaUpdates for: in a room where you cant leave unless you have sex +2026-01-07 01:48:22,122 - INFO - Updating metadata for: cattle_sister +2026-01-07 01:48:22,123 - INFO - Searching metadata for: cattle sister +2026-01-07 01:48:22,361 - INFO - Fetching metadata from: https://nhentai.net/g/614951/ +2026-01-07 01:48:22,577 - INFO - Updating metadata for: we_went_overboard_with_our_home_work_this_evening +2026-01-07 01:48:22,577 - INFO - Searching metadata for: we went overboard with our home work this evening +2026-01-07 01:48:22,769 - INFO - Fetching metadata from: https://nhentai.net/g/533599/ +2026-01-07 01:48:22,975 - INFO - Updating metadata for: Untitled Folder +2026-01-07 01:48:22,975 - INFO - Searching metadata for: Untitled Folder +2026-01-07 01:48:23,176 - INFO - Searching MangaUpdates for: Untitled Folder +2026-01-07 01:48:23,484 - INFO - Updating metadata for: nozo_nico_don +2026-01-07 01:48:23,484 - INFO - Searching metadata for: nozo nico don +2026-01-07 01:48:23,696 - INFO - Fetching metadata from: https://nhentai.net/g/251101/ +2026-01-07 01:48:23,887 - INFO - Updating metadata for: tonari_no_elf_mama +2026-01-07 01:48:23,887 - INFO - Searching metadata for: tonari no elf mama +2026-01-07 01:48:24,110 - INFO - Fetching metadata from: https://nhentai.net/g/614016/ +2026-01-07 01:48:24,317 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 _ Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-07 01:48:24,317 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-07 01:48:24,606 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 +2026-01-07 01:48:25,831 - INFO - Updating metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-07 01:48:25,832 - INFO - Searching metadata for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-07 01:48:26,068 - INFO - Searching MangaUpdates for: (Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version] +2026-01-07 01:48:26,728 - INFO - Updating metadata for: boshi_syndrome +2026-01-07 01:48:26,728 - INFO - Searching metadata for: boshi syndrome +2026-01-07 01:48:26,926 - INFO - Fetching metadata from: https://nhentai.net/g/586173/ +2026-01-07 01:48:27,129 - INFO - Updating metadata for: a_trip_back_home +2026-01-07 01:48:27,129 - INFO - Searching metadata for: a trip back home +2026-01-07 01:48:27,346 - INFO - Fetching metadata from: https://nhentai.net/g/241562/ +2026-01-07 01:48:27,550 - INFO - Updating metadata for: obaman_aneman_harem +2026-01-07 01:48:27,550 - INFO - Searching metadata for: obaman aneman harem +2026-01-07 01:48:27,731 - INFO - Fetching metadata from: https://nhentai.net/g/588648/ +2026-01-07 01:48:28,066 - INFO - Updating metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-07 01:48:28,066 - INFO - Searching metadata for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-07 01:48:28,450 - INFO - Searching MangaUpdates for: (Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English] +2026-01-07 01:48:28,894 - INFO - Updating metadata for: Take a break from working to fuck +2026-01-07 01:48:28,895 - INFO - Searching metadata for: Take a break from working to fuck +2026-01-07 01:48:29,196 - INFO - Searching MangaUpdates for: Take a break from working to fuck +2026-01-07 01:48:29,675 - INFO - Updating metadata for: paipai_mashimashi_gal_bitch +2026-01-07 01:48:29,675 - INFO - Searching metadata for: paipai mashimashi gal bitch +2026-01-07 01:48:29,852 - INFO - Fetching metadata from: https://nhentai.net/g/555058/ +2026-01-07 01:48:30,080 - INFO - Updating metadata for: [Okashi Koujou] That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-07 01:48:30,080 - INFO - Searching metadata for: Okashi Koujou That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo] +2026-01-07 01:48:30,498 - INFO - Fetching metadata from: https://nhentai.net/g/603202/ +2026-01-07 01:48:30,721 - INFO - Updating metadata for: gal_ga_saimin_kakeyou_to_shitara_kaeriuchi_saremashita +2026-01-07 01:48:30,721 - INFO - Searching metadata for: gal ga saimin kakeyou to shitara kaeriuchi saremashita +2026-01-07 01:48:30,971 - INFO - Fetching metadata from: https://nhentai.net/g/575485/ +2026-01-07 01:48:31,214 - INFO - Updating metadata for: [Kazuhiro] Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 01:48:31,214 - INFO - Searching metadata for: Kazuhiro Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 01:48:31,488 - INFO - Searching metadata for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 01:48:31,702 - INFO - Searching MangaUpdates for: Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital] +2026-01-07 01:48:32,118 - INFO - Updating metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san _ Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-07 01:48:32,118 - INFO - Searching metadata for: Ikiiki Dasshutsu Game with Chou Chirou Oji-san Lively Escape Game with Super Late Ejaculation Ojisan +2026-01-07 01:48:32,335 - INFO - Fetching metadata from: https://nhentai.net/g/467602/ +2026-01-07 01:48:32,533 - INFO - Updating metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-07 01:48:32,533 - INFO - Searching metadata for: (Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital] +2026-01-07 01:48:32,768 - INFO - Fetching metadata from: https://nhentai.net/g/599736/ +2026-01-07 01:48:33,007 - INFO - Updating metadata for: the_succubus_army_invasion +2026-01-07 01:48:33,007 - INFO - Searching metadata for: the succubus army invasion +2026-01-07 01:48:33,207 - INFO - Fetching metadata from: https://nhentai.net/g/581332/ +2026-01-07 01:48:33,407 - INFO - Updating metadata for: boku_no_misatan_chapter_ +2026-01-07 01:48:33,408 - INFO - Searching metadata for: boku no misatan chapter +2026-01-07 01:48:33,607 - INFO - Searching MangaUpdates for: boku no misatan chapter +2026-01-07 01:48:33,866 - INFO - Updating metadata for: Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku +2026-01-07 01:48:33,866 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-07 01:48:34,062 - INFO - Searching MangaUpdates for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-07 01:48:34,614 - INFO - Updating metadata for: my_tall_and_busty_step_sister_gives +2026-01-07 01:48:34,614 - INFO - Searching metadata for: my tall and busty step sister gives +2026-01-07 01:48:34,880 - INFO - Fetching metadata from: https://nhentai.net/g/591571/ +2026-01-07 01:48:35,139 - INFO - Updating metadata for: about_sadako_being_stuck_on_the_computer_screen +2026-01-07 01:48:35,140 - INFO - Searching metadata for: about sadako being stuck on the computer screen +2026-01-07 01:48:35,348 - INFO - Searching MangaUpdates for: about sadako being stuck on the computer screen +2026-01-07 01:48:35,792 - INFO - Updating metadata for: when_i_lost_the_use_of_my_arms_my_brother_started +2026-01-07 01:48:35,792 - INFO - Searching metadata for: when i lost the use of my arms my brother started +2026-01-07 01:48:36,052 - INFO - Fetching metadata from: https://nhentai.net/g/546227/ +2026-01-07 01:48:36,296 - INFO - Updating metadata for: sister_ss_short_story +2026-01-07 01:48:36,296 - INFO - Searching metadata for: sister ss short story +2026-01-07 01:48:36,517 - INFO - Fetching metadata from: https://nhentai.net/g/589411/ +2026-01-07 01:48:36,782 - INFO - Updating metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC_TRANSLATIONS) +2026-01-07 01:48:36,782 - INFO - Searching metadata for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-07 01:48:37,106 - INFO - Searching MangaUpdates for: (C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC TRANSLATIONS) +2026-01-07 01:48:37,694 - INFO - Updating metadata for: motherly_love +2026-01-07 01:48:37,694 - INFO - Searching metadata for: motherly love +2026-01-07 01:48:37,882 - INFO - Fetching metadata from: https://nhentai.net/g/406015/ +2026-01-07 01:48:38,107 - INFO - Updating metadata for: [Satsuki Imonet] Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 01:48:38,107 - INFO - Searching metadata for: Satsuki Imonet Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 01:48:38,474 - INFO - Searching metadata for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 01:48:38,908 - INFO - Searching MangaUpdates for: Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital] +2026-01-07 01:48:39,677 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-07 01:48:39,677 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen] +2026-01-07 01:48:40,139 - INFO - Fetching metadata from: https://nhentai.net/g/412142/ +2026-01-07 01:48:40,418 - INFO - Updating metadata for: Suki Kirai Daisuki. Bangaihen _ Love • Hate • Really Love +2026-01-07 01:48:40,418 - INFO - Searching metadata for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-07 01:48:40,577 - INFO - Searching MangaUpdates for: Suki Kirai Daisuki. Bangaihen Love • Hate • Really Love +2026-01-07 01:48:41,053 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-07 01:48:41,053 - INFO - Searching metadata for: Ginshio Honpo (Ginen) My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie] +2026-01-07 01:48:41,332 - INFO - Fetching metadata from: https://nhentai.net/g/563890/ +2026-01-07 01:48:41,607 - INFO - Updating metadata for: playing_the_kings_game_with_a_tanned_jk_oneesan +2026-01-07 01:48:41,607 - INFO - Searching metadata for: playing the kings game with a tanned jk oneesan +2026-01-07 01:48:41,866 - INFO - Searching MangaUpdates for: playing the kings game with a tanned jk oneesan +2026-01-07 01:48:42,467 - INFO - Updating metadata for: 7days_toono_esuke +2026-01-07 01:48:42,468 - INFO - Searching metadata for: 7days toono esuke +2026-01-07 01:48:42,657 - INFO - Fetching metadata from: https://nhentai.net/g/575052/ +2026-01-07 01:48:42,931 - INFO - Updating metadata for: [Megitune Works] Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-07 01:48:42,931 - INFO - Searching metadata for: Megitune Works Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher] +2026-01-07 01:48:43,271 - INFO - Fetching metadata from: https://nhentai.net/g/603877/ +2026-01-07 01:48:43,561 - INFO - Updating metadata for: Sex_With_Many_Mamas_(2016) +2026-01-07 01:48:43,561 - INFO - Searching metadata for: Sex With Many Mamas +2026-01-07 01:48:43,754 - INFO - Searching MangaUpdates for: Sex With Many Mamas +2026-01-07 01:48:44,008 - INFO - Updating metadata for: [Kurogane Kenn] Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-07 01:48:44,009 - INFO - Searching metadata for: Kurogane Kenn Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital] +2026-01-07 01:48:44,561 - INFO - Fetching metadata from: https://nhentai.net/g/598681/ +2026-01-07 01:48:44,838 - INFO - Updating metadata for: oneechans_toy +2026-01-07 01:48:44,838 - INFO - Searching metadata for: oneechans toy +2026-01-07 01:48:44,986 - INFO - Searching MangaUpdates for: oneechans toy +2026-01-07 01:48:45,295 - INFO - Updating metadata for: [Ginshio Honpo (Ginen)] Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-07 01:48:45,296 - INFO - Searching metadata for: Ginshio Honpo (Ginen) Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei] +2026-01-07 01:48:45,562 - INFO - Fetching metadata from: https://nhentai.net/g/519770/ +2026-01-07 01:48:45,912 - INFO - Updating metadata for: when_dad_and_mom_arent_home +2026-01-07 01:48:45,912 - INFO - Searching metadata for: when dad and mom arent home +2026-01-07 01:48:46,152 - INFO - Searching MangaUpdates for: when dad and mom arent home +2026-01-07 01:48:46,496 - INFO - Updating metadata for: succubus_kingdom +2026-01-07 01:48:46,497 - INFO - Searching metadata for: succubus kingdom +2026-01-07 01:48:46,720 - INFO - Fetching metadata from: https://nhentai.net/g/614436/ +2026-01-07 01:48:47,116 - INFO - Updating metadata for: liko_the_mommy_pokemon +2026-01-07 01:48:47,116 - INFO - Searching metadata for: liko the mommy pokemon +2026-01-07 01:48:47,315 - INFO - Searching MangaUpdates for: liko the mommy pokemon +2026-01-07 01:48:47,721 - INFO - Updating metadata for: FireShot +2026-01-07 01:48:47,722 - INFO - Searching metadata for: FireShot +2026-01-07 01:48:47,923 - INFO - Searching MangaUpdates for: FireShot +2026-01-07 01:48:48,191 - INFO - Updating metadata for: getting_along_well_with_my_sister +2026-01-07 01:48:48,191 - INFO - Searching metadata for: getting along well with my sister +2026-01-07 01:48:48,416 - INFO - Fetching metadata from: https://nhentai.net/g/567863/ +2026-01-07 01:48:48,663 - INFO - Updating metadata for: hypnosis_satisfaction +2026-01-07 01:48:48,663 - INFO - Searching metadata for: hypnosis satisfaction +2026-01-07 01:48:48,837 - INFO - Searching MangaUpdates for: hypnosis satisfaction +2026-01-07 01:48:49,128 - INFO - Updating metadata for: otto_no_tame_no_ranshi_o_tanin_no_seishi +2026-01-07 01:48:49,128 - INFO - Searching metadata for: otto no tame no ranshi o tanin no seishi +2026-01-07 01:48:49,414 - INFO - Fetching metadata from: https://nhentai.net/g/551507/ +2026-01-07 01:48:49,660 - INFO - Updating metadata for: [Milkdou Shoukai (Milk Koubou)] Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-07 01:48:49,661 - INFO - Searching metadata for: Milkdou Shoukai (Milk Koubou) Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English] +2026-01-07 01:48:50,138 - INFO - Fetching metadata from: https://nhentai.net/g/510439/ +2026-01-07 01:48:50,391 - INFO - Updating metadata for: hikki_mother_fucker +2026-01-07 01:48:50,391 - INFO - Searching metadata for: hikki mother fucker +2026-01-07 01:48:50,573 - INFO - Fetching metadata from: https://nhentai.net/g/287208/ +2026-01-07 01:48:50,864 - INFO - Updating metadata for: meaty_minxes +2026-01-07 01:48:50,864 - INFO - Searching metadata for: meaty minxes +2026-01-07 01:48:51,030 - INFO - Searching MangaUpdates for: meaty minxes +2026-01-07 01:48:51,371 - INFO - Updating metadata for: [Zero no Mono] Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-07 01:48:51,372 - INFO - Searching metadata for: Zero no Mono Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English] +2026-01-07 01:48:51,762 - INFO - Fetching metadata from: https://nhentai.net/g/342164/ +2026-01-07 01:48:51,989 - INFO - Updating metadata for: mob_reipu +2026-01-07 01:48:51,990 - INFO - Searching metadata for: mob reipu +2026-01-07 01:48:52,174 - INFO - Fetching metadata from: https://nhentai.net/g/311650/ +2026-01-07 01:48:52,445 - INFO - Updating metadata for: dosukebe_youkai_midaraga_no_goshujinsama +2026-01-07 01:48:52,445 - INFO - Searching metadata for: dosukebe youkai midaraga no goshujinsama +2026-01-07 01:48:52,671 - INFO - Searching MangaUpdates for: dosukebe youkai midaraga no goshujinsama +2026-01-07 01:48:53,188 - INFO - Updating metadata for: [Tobe] Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-07 01:48:53,188 - INFO - Searching metadata for: Tobe Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn] +2026-01-07 01:48:53,407 - INFO - Fetching metadata from: https://nhentai.net/g/603385/ +2026-01-07 01:48:53,623 - INFO - Updating metadata for: [Sakurama Haruomi] Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-07 01:48:53,623 - INFO - Searching metadata for: Sakurama Haruomi Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital] +2026-01-07 01:48:53,873 - INFO - Fetching metadata from: https://nhentai.net/g/600993/ +2026-01-07 01:48:54,265 - INFO - Updating metadata for: thermometer_boy_measuring_beast +2026-01-07 01:48:54,265 - INFO - Searching metadata for: thermometer boy measuring beast +2026-01-07 01:48:54,408 - INFO - Searching MangaUpdates for: thermometer boy measuring beast +2026-01-07 01:48:54,709 - INFO - Updating metadata for: broconflict +2026-01-07 01:48:54,709 - INFO - Searching metadata for: broconflict +2026-01-07 01:48:54,852 - INFO - Searching MangaUpdates for: broconflict +2026-01-07 01:48:54,979 - INFO - Updating metadata for: my_little_sisters_are_slutty_orcs +2026-01-07 01:48:54,980 - INFO - Searching metadata for: my little sisters are slutty orcs +2026-01-07 01:48:55,206 - INFO - Fetching metadata from: https://nhentai.net/g/475987/ +2026-01-07 01:48:55,443 - INFO - Updating metadata for: [Merenge Tenmondai (Kugurofu)] D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-07 01:48:55,443 - INFO - Searching metadata for: Merenge Tenmondai (Kugurofu) D no D wa Dosukebe no D (Goddess Of Victory Nikke) +2026-01-07 01:48:55,698 - INFO - Fetching metadata from: https://nhentai.net/g/620725/ +2026-01-07 01:48:55,977 - INFO - Updating metadata for: [Nishikawa Kou] Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-07 01:48:55,978 - INFO - Searching metadata for: Nishikawa Kou Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital] +2026-01-07 01:48:56,299 - INFO - Fetching metadata from: https://nhentai.net/g/600838/ +2026-01-07 01:48:56,498 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 01:48:56,498 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 01:48:56,685 - INFO - Searching metadata for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 01:48:56,914 - INFO - Searching MangaUpdates for: Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete] +2026-01-07 01:48:57,689 - INFO - Updating metadata for: Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love +2026-01-07 01:48:57,689 - INFO - Searching metadata for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-07 01:48:57,944 - INFO - Searching MangaUpdates for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-07 01:48:58,534 - INFO - Updating metadata for: my_sister_uses_my_trash_as_masturbation_material +2026-01-07 01:48:58,534 - INFO - Searching metadata for: my sister uses my trash as masturbation material +2026-01-07 01:48:58,755 - INFO - Fetching metadata from: https://nhentai.net/g/520519/ +2026-01-07 01:48:58,950 - INFO - Updating metadata for: [Pino] Boin [English] +2026-01-07 01:48:58,950 - INFO - Searching metadata for: Pino Boin [English] +2026-01-07 01:48:59,113 - INFO - Fetching metadata from: https://nhentai.net/g/595922/ +2026-01-07 01:48:59,317 - INFO - Updating metadata for: future_detective +2026-01-07 01:48:59,317 - INFO - Searching metadata for: future detective +2026-01-07 01:48:59,531 - INFO - Fetching metadata from: https://nhentai.net/g/170580/ +2026-01-07 01:48:59,745 - INFO - Updating metadata for: what_the_mother_does_for_the_sake_of_the_son +2026-01-07 01:48:59,745 - INFO - Searching metadata for: what the mother does for the sake of the son +2026-01-07 01:49:00,032 - INFO - Fetching metadata from: https://nhentai.net/g/532249/ +2026-01-07 01:49:00,230 - INFO - Updating metadata for: [Tawara Hiryuu] Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 01:49:00,230 - INFO - Searching metadata for: Tawara Hiryuu Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 01:49:00,607 - INFO - Searching metadata for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 01:49:00,884 - INFO - Searching MangaUpdates for: Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital] +2026-01-07 01:49:01,396 - INFO - Updating metadata for: gifu_to_shimai_no_kizuna +2026-01-07 01:49:01,396 - INFO - Searching metadata for: gifu to shimai no kizuna +2026-01-07 01:49:01,686 - INFO - Fetching metadata from: https://nhentai.net/g/97406/ +2026-01-07 01:49:01,889 - INFO - Updating metadata for: omae_no_you_na_maou_ga_iru_kai +2026-01-07 01:49:01,889 - INFO - Searching metadata for: omae no you na maou ga iru kai +2026-01-07 01:49:02,248 - INFO - Searching MangaUpdates for: omae no you na maou ga iru kai +2026-01-07 01:49:02,779 - INFO - Updating metadata for: if_seems_like_everyone_except_me_has_lost_their_concept_of_eroticism +2026-01-07 01:49:02,780 - INFO - Searching metadata for: if seems like everyone except me has lost their concept of eroticism +2026-01-07 01:49:03,028 - INFO - Searching MangaUpdates for: if seems like everyone except me has lost their concept of eroticism +2026-01-07 01:49:03,500 - INFO - Updating metadata for: oneechan_no_dokusho_jijou +2026-01-07 01:49:03,501 - INFO - Searching metadata for: oneechan no dokusho jijou +2026-01-07 01:49:03,709 - INFO - Searching MangaUpdates for: oneechan no dokusho jijou +2026-01-07 01:49:04,053 - INFO - Updating metadata for: what_friend_do +2026-01-07 01:49:04,054 - INFO - Searching metadata for: what friend do +2026-01-07 01:49:04,294 - INFO - Fetching metadata from: https://nhentai.net/g/601381/ +2026-01-07 01:49:04,565 - INFO - Updating metadata for: kinyoku_ake_no_kyoudai_kankei +2026-01-07 01:49:04,565 - INFO - Searching metadata for: kinyoku ake no kyoudai kankei +2026-01-07 01:49:04,776 - INFO - Searching MangaUpdates for: kinyoku ake no kyoudai kankei +2026-01-07 01:49:05,198 - INFO - Updating metadata for: aniyome_milk_elder_sisterinlaws_milk +2026-01-07 01:49:05,198 - INFO - Searching metadata for: aniyome milk elder sisterinlaws milk +2026-01-07 01:49:05,368 - INFO - Searching MangaUpdates for: aniyome milk elder sisterinlaws milk +2026-01-07 01:49:05,749 - INFO - Updating metadata for: Otouto_Imouto_(2007) +2026-01-07 01:49:05,750 - INFO - Searching metadata for: Otouto Imouto +2026-01-07 01:49:06,010 - INFO - Fetching metadata from: https://nhentai.net/g/617219/ +2026-01-07 01:49:06,267 - INFO - Updating metadata for: idiopathic_erectile_syndrome_when_masturbation_fails +2026-01-07 01:49:06,267 - INFO - Searching metadata for: idiopathic erectile syndrome when masturbation fails +2026-01-07 01:49:06,455 - INFO - Fetching metadata from: https://nhentai.net/g/271977/ +2026-01-07 01:49:06,739 - INFO - Updating metadata for: sluttification_virus_anywhere_anytime_lets_fuck_already +2026-01-07 01:49:06,739 - INFO - Searching metadata for: sluttification virus anywhere anytime lets fuck already +2026-01-07 01:49:06,927 - INFO - Searching MangaUpdates for: sluttification virus anywhere anytime lets fuck already +2026-01-07 01:49:07,413 - INFO - Updating metadata for: [UC] Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-07 01:49:07,413 - INFO - Searching metadata for: UC Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital] +2026-01-07 01:49:07,700 - INFO - Fetching metadata from: https://nhentai.net/g/603830/ +2026-01-07 01:49:07,941 - INFO - Updating metadata for: absurd_mother_and_son_incest +2026-01-07 01:49:07,942 - INFO - Searching metadata for: absurd mother and son incest +2026-01-07 01:49:08,167 - INFO - Fetching metadata from: https://nhentai.net/g/359070/ +2026-01-07 01:49:08,392 - INFO - Updating metadata for: [Ringoya (Alp)] Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-07 01:49:08,392 - INFO - Searching metadata for: Ringoya (Alp) Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE] +2026-01-07 01:49:08,820 - INFO - Fetching metadata from: https://nhentai.net/g/620273/ +2026-01-07 01:49:09,107 - INFO - Updating metadata for: idol_wa_fan_no_semen_tank_ninshinderella_girls +2026-01-07 01:49:09,108 - INFO - Searching metadata for: idol wa fan no semen tank ninshinderella girls +2026-01-07 01:49:09,405 - INFO - Searching MangaUpdates for: idol wa fan no semen tank ninshinderella girls +2026-01-07 01:49:09,850 - INFO - Updating metadata for: [Tawawa Delivery] Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 01:49:09,850 - INFO - Searching metadata for: Tawawa Delivery Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 01:49:10,028 - INFO - Searching metadata for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 01:49:10,222 - INFO - Searching MangaUpdates for: Girl Dash - Family Diner (x3200) [FAKKU] +2026-01-07 01:49:10,569 - INFO - Updating metadata for: incha_otouto_ga_nangoku_beach_de_kinpatsu +2026-01-07 01:49:10,570 - INFO - Searching metadata for: incha otouto ga nangoku beach de kinpatsu +2026-01-07 01:49:10,799 - INFO - Searching MangaUpdates for: incha otouto ga nangoku beach de kinpatsu +2026-01-07 01:49:11,343 - INFO - Updating metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-07 01:49:11,343 - INFO - Searching metadata for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-07 01:49:11,538 - INFO - Searching MangaUpdates for: (C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE) +2026-01-07 01:49:11,832 - INFO - Updating metadata for: akira_nii_chan_who_ive_always_admired +2026-01-07 01:49:11,832 - INFO - Searching metadata for: akira nii chan who ive always admired +2026-01-07 01:49:12,078 - INFO - Searching MangaUpdates for: akira nii chan who ive always admired +2026-01-07 01:49:12,492 - INFO - Updating metadata for: [NesZ] My farmer aunt is having a problem [English] +2026-01-07 01:49:12,492 - INFO - Searching metadata for: NesZ My farmer aunt is having a problem [English] +2026-01-07 01:49:12,774 - INFO - Fetching metadata from: https://nhentai.net/g/607421/ +2026-01-07 01:49:13,023 - INFO - Updating metadata for: my_ar_glasses_can_see_various_stats_about_my_foster_sister +2026-01-07 01:49:13,024 - INFO - Searching metadata for: my ar glasses can see various stats about my foster sister +2026-01-07 01:49:13,293 - INFO - Fetching metadata from: https://nhentai.net/g/589010/ +2026-01-07 01:49:13,706 - INFO - Updating metadata for: dirty_lessons_improving_your_manhood_chapter_ +2026-01-07 01:49:13,706 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-07 01:49:13,864 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter +2026-01-07 01:49:14,240 - INFO - Updating metadata for: the_story_about_how_i_found_my_soulmate_when +2026-01-07 01:49:14,240 - INFO - Searching metadata for: the story about how i found my soulmate when +2026-01-07 01:49:14,520 - INFO - Fetching metadata from: https://nhentai.net/g/521364/ +2026-01-07 01:49:14,793 - INFO - Updating metadata for: [Hannya san] Forbidden lust +2026-01-07 01:49:14,794 - INFO - Searching metadata for: Hannya san Forbidden lust +2026-01-07 01:49:14,998 - INFO - Fetching metadata from: https://nhentai.net/g/600751/ +2026-01-07 01:49:15,251 - INFO - Updating metadata for: shojo_ane_kangaeru +2026-01-07 01:49:15,251 - INFO - Searching metadata for: shojo ane kangaeru +2026-01-07 01:49:15,444 - INFO - Fetching metadata from: https://nhentai.net/g/447249/ +2026-01-07 01:49:15,722 - INFO - Updating metadata for: neechan_to_sei_shori_shiteru +2026-01-07 01:49:15,722 - INFO - Searching metadata for: neechan to sei shori shiteru +2026-01-07 01:49:15,922 - INFO - Searching MangaUpdates for: neechan to sei shori shiteru +2026-01-07 01:49:16,300 - INFO - Updating metadata for: [moNmomo] Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-07 01:49:16,301 - INFO - Searching metadata for: moNmomo Kono sensei yowasou w karakatte miyou~ w [English] +2026-01-07 01:49:16,507 - INFO - Fetching metadata from: https://nhentai.net/g/618662/ +2026-01-07 01:49:16,741 - INFO - Updating metadata for: fushoku_tensei_tamashii_kawattara_honki_dasu +2026-01-07 01:49:16,741 - INFO - Searching metadata for: fushoku tensei tamashii kawattara honki dasu +2026-01-07 01:49:16,951 - INFO - Fetching metadata from: https://nhentai.net/g/574276/ +2026-01-07 01:49:17,210 - INFO - Updating metadata for: [Mochi-ya (Karoti)] Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-07 01:49:17,210 - INFO - Searching metadata for: Mochi-ya (Karoti) Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital] +2026-01-07 01:49:17,542 - INFO - Fetching metadata from: https://nhentai.net/g/620624/ +2026-01-07 01:49:17,783 - INFO - Updating metadata for: i_woke_up_to_my_naked_apron_sister_and_tried_fucking_her +2026-01-07 01:49:17,784 - INFO - Searching metadata for: i woke up to my naked apron sister and tried fucking her +2026-01-07 01:49:18,175 - INFO - Fetching metadata from: https://nhentai.net/g/602663/ +2026-01-07 01:49:18,645 - INFO - Updating metadata for: little_sister_paradise +2026-01-07 01:49:18,645 - INFO - Searching metadata for: little sister paradise +2026-01-07 01:49:18,877 - INFO - Fetching metadata from: https://nhentai.net/g/567713/ +2026-01-07 01:49:19,096 - INFO - Updating metadata for: my_mature_older_sister_the_crazy_convenient_relationship_of_an_older_sister_and_younger_brother_in_their_thirtys +2026-01-07 01:49:19,096 - INFO - Searching metadata for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-07 01:49:19,353 - INFO - Searching MangaUpdates for: my mature older sister the crazy convenient relationship of an older sister and younger brother in their thirtys +2026-01-07 01:49:19,966 - INFO - Updating metadata for: sex_season +2026-01-07 01:49:19,966 - INFO - Searching metadata for: sex season +2026-01-07 01:49:20,196 - INFO - Fetching metadata from: https://nhentai.net/g/618390/ +2026-01-07 01:49:20,695 - INFO - Updating metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite _ Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-07 01:49:20,695 - INFO - Searching metadata for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-07 01:49:21,029 - INFO - Searching MangaUpdates for: Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite Guess Which One's Your Naked Busty JK Daughter Or Else! +2026-01-07 01:49:21,613 - INFO - Updating metadata for: that_pov_sex_thing +2026-01-07 01:49:21,614 - INFO - Searching metadata for: that pov sex thing +2026-01-07 01:49:21,820 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-07 01:49:22,079 - INFO - Updating metadata for: hot_teacher +2026-01-07 01:49:22,079 - INFO - Searching metadata for: hot teacher +2026-01-07 01:49:22,305 - INFO - Fetching metadata from: https://nhentai.net/g/620990/ +2026-01-07 01:49:22,560 - INFO - Updating metadata for: two_siblings_fela_pure +2026-01-07 01:49:22,561 - INFO - Searching metadata for: two siblings fela pure +2026-01-07 01:49:22,813 - INFO - Fetching metadata from: https://nhentai.net/g/65576/ +2026-01-07 01:49:23,037 - INFO - Updating metadata for: on_the_night_of_the_ceremony +2026-01-07 01:49:23,038 - INFO - Searching metadata for: on the night of the ceremony +2026-01-07 01:49:23,288 - INFO - Fetching metadata from: https://nhentai.net/g/530970/ +2026-01-07 01:49:23,564 - INFO - Updating metadata for: [Takasugi Kou] Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-07 01:49:23,565 - INFO - Searching metadata for: Takasugi Kou Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing] +2026-01-07 01:49:23,797 - INFO - Fetching metadata from: https://nhentai.net/g/599358/ +2026-01-07 01:49:24,078 - INFO - Updating metadata for: [Mustard Teikoku (Europia)] Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 01:49:24,079 - INFO - Searching metadata for: Mustard Teikoku (Europia) Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 01:49:24,437 - INFO - Searching metadata for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 01:49:24,881 - INFO - Searching MangaUpdates for: Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase +2026-01-07 01:49:25,518 - INFO - Updating metadata for: father_stop_it +2026-01-07 01:49:25,518 - INFO - Searching metadata for: father stop it +2026-01-07 01:49:25,726 - INFO - Fetching metadata from: https://nhentai.net/g/549536/ +2026-01-07 01:49:25,942 - INFO - Updating metadata for: organize +2026-01-07 01:49:25,942 - INFO - Searching metadata for: organize +2026-01-07 01:49:26,163 - INFO - Fetching metadata from: https://nhentai.net/g/215772/ +2026-01-07 01:49:26,424 - INFO - Updating metadata for: seventy_two +2026-01-07 01:49:26,424 - INFO - Searching metadata for: seventy two +2026-01-07 01:49:26,584 - INFO - Fetching metadata from: https://nhentai.net/g/110977/ +2026-01-07 01:49:26,772 - INFO - Updating metadata for: a_sister_who_wants_to_watch_siblings +2026-01-07 01:49:26,773 - INFO - Searching metadata for: a sister who wants to watch siblings +2026-01-07 01:49:27,116 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-07 01:49:27,348 - INFO - Updating metadata for: dirty_lessons_improving_your_manhood_chapter +2026-01-07 01:49:27,349 - INFO - Searching metadata for: dirty lessons improving your manhood chapter +2026-01-07 01:49:27,544 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter +2026-01-07 01:49:27,870 - INFO - Updating metadata for: from_now_on_you_are_my_livestock_chapter +2026-01-07 01:49:27,870 - INFO - Searching metadata for: from now on you are my livestock chapter +2026-01-07 01:49:28,120 - INFO - Searching MangaUpdates for: from now on you are my livestock chapter +2026-01-07 01:49:28,510 - INFO - Updating metadata for: a_room_you_cant_leave_after_having_sex +2026-01-07 01:49:28,511 - INFO - Searching metadata for: a room you cant leave after having sex +2026-01-07 01:49:28,756 - INFO - Searching MangaUpdates for: a room you cant leave after having sex +2026-01-07 01:49:29,275 - INFO - Updating metadata for: narikawari_chapter_1 +2026-01-07 01:49:29,275 - INFO - Searching metadata for: narikawari chapter 1 +2026-01-07 01:49:29,436 - INFO - Searching MangaUpdates for: narikawari chapter 1 +2026-01-07 01:49:29,661 - INFO - Updating metadata for: [Ookami Shoujo Dan (Mukoujima Tenro)] Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-07 01:49:29,661 - INFO - Searching metadata for: Ookami Shoujo Dan (Mukoujima Tenro) Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry +2026-01-07 01:49:30,040 - INFO - Fetching metadata from: https://nhentai.net/g/617181/ +2026-01-07 01:49:30,266 - INFO - Updating metadata for: welcome_to_the_brothel_school_festival +2026-01-07 01:49:30,266 - INFO - Searching metadata for: welcome to the brothel school festival +2026-01-07 01:49:30,518 - INFO - Fetching metadata from: https://nhentai.net/g/601119/ +2026-01-07 01:49:30,728 - INFO - Updating metadata for: [Oroshi Ponzu] A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 01:49:30,728 - INFO - Searching metadata for: Oroshi Ponzu A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 01:49:31,134 - INFO - Searching metadata for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 01:49:31,533 - INFO - Searching MangaUpdates for: A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com} +2026-01-07 01:49:32,249 - INFO - Updating metadata for: step_child_swapping_satsuki_imonet +2026-01-07 01:49:32,249 - INFO - Searching metadata for: step child swapping satsuki imonet +2026-01-07 01:49:32,428 - INFO - Searching MangaUpdates for: step child swapping satsuki imonet +2026-01-07 01:49:32,824 - INFO - Updating metadata for: the_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother_in_laws_countryside_where_there_is_an_h_custom +2026-01-07 01:49:32,824 - INFO - Searching metadata for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-07 01:49:33,264 - INFO - Searching MangaUpdates for: the story of having sex with a cousin whom she has never met before in her mother in laws countryside where there is an h custom +2026-01-07 01:49:34,075 - INFO - Updating metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-07 01:49:34,075 - INFO - Searching metadata for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-07 01:49:34,575 - INFO - Searching MangaUpdates for: The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today +2026-01-07 01:49:35,192 - INFO - Updating metadata for: friends_forever +2026-01-07 01:49:35,193 - INFO - Searching metadata for: friends forever +2026-01-07 01:49:35,434 - INFO - Fetching metadata from: https://nhentai.net/g/588356/ +2026-01-07 01:49:35,684 - INFO - Updating metadata for: were_siblings_but_lets_tie_the_knot +2026-01-07 01:49:35,684 - INFO - Searching metadata for: were siblings but lets tie the knot +2026-01-07 01:49:35,916 - INFO - Searching MangaUpdates for: were siblings but lets tie the knot +2026-01-07 01:49:36,267 - INFO - Updating metadata for: takebe_saorichan_to_iu_kanojo +2026-01-07 01:49:36,268 - INFO - Searching metadata for: takebe saorichan to iu kanojo +2026-01-07 01:49:36,422 - INFO - Searching MangaUpdates for: takebe saorichan to iu kanojo +2026-01-07 01:49:36,825 - INFO - Updating metadata for: mega_milk +2026-01-07 01:49:36,825 - INFO - Searching metadata for: mega milk +2026-01-07 01:49:37,091 - INFO - Fetching metadata from: https://nhentai.net/g/616449/ +2026-01-07 01:49:37,360 - INFO - Updating metadata for: [Gomikasu Tarou] Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 01:49:37,360 - INFO - Searching metadata for: Gomikasu Tarou Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 01:49:37,786 - INFO - Searching metadata for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 01:49:38,277 - INFO - Searching MangaUpdates for: Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English] +2026-01-07 01:49:39,030 - INFO - Updating metadata for: a_gentle_mommy_who_secret_makes +2026-01-07 01:49:39,031 - INFO - Searching metadata for: a gentle mommy who secret makes +2026-01-07 01:49:39,305 - INFO - Fetching metadata from: https://nhentai.net/g/546176/ +2026-01-07 01:49:39,559 - INFO - Updating metadata for: i_got_an_elf_little_sister +2026-01-07 01:49:39,559 - INFO - Searching metadata for: i got an elf little sister +2026-01-07 01:49:39,957 - INFO - Fetching metadata from: https://nhentai.net/g/544668/ +2026-01-07 01:49:40,230 - INFO - Updating metadata for: [Yue] Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 01:49:40,230 - INFO - Searching metadata for: Yue Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 01:49:40,563 - INFO - Searching metadata for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 01:49:40,887 - INFO - Searching MangaUpdates for: Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored] +2026-01-07 01:49:41,421 - INFO - Updating metadata for: i_became_kirarachans_manager +2026-01-07 01:49:41,421 - INFO - Searching metadata for: i became kirarachans manager +2026-01-07 01:49:41,665 - INFO - Searching MangaUpdates for: i became kirarachans manager +2026-01-07 01:49:42,004 - INFO - Updating metadata for: Sensei_wa_Ore_no_Dorei_Danshikou_wa_Midara_na_Kangoku_(2014) +2026-01-07 01:49:42,005 - INFO - Searching metadata for: Sensei wa Ore no Dorei Danshikou wa Midara na Kangoku +2026-01-07 01:49:42,304 - INFO - Searching MangaUpdates for: Sensei wa Ore no Dorei Danshikou wa Midara na Kangoku +2026-01-07 01:49:42,826 - INFO - Updating metadata for: i_am_to_record_a_video_with_two_sadistic_women +2026-01-07 01:49:42,827 - INFO - Searching metadata for: i am to record a video with two sadistic women +2026-01-07 01:49:43,190 - INFO - Fetching metadata from: https://nhentai.net/g/551074/ +2026-01-07 01:49:43,441 - INFO - Updating metadata for: kusabi +2026-01-07 01:49:43,441 - INFO - Searching metadata for: kusabi +2026-01-07 01:49:43,703 - INFO - Fetching metadata from: https://nhentai.net/g/577169/ +2026-01-07 01:49:43,944 - INFO - Updating metadata for: [OVing (Obui)] Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-07 01:49:43,945 - INFO - Searching metadata for: OVing (Obui) Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games] +2026-01-07 01:49:44,143 - INFO - Fetching metadata from: https://nhentai.net/g/556035/ +2026-01-07 01:49:44,422 - INFO - Updating metadata for: the_imprisoned_flower +2026-01-07 01:49:44,422 - INFO - Searching metadata for: the imprisoned flower +2026-01-07 01:49:44,674 - INFO - Fetching metadata from: https://nhentai.net/g/567049/ +2026-01-07 01:49:44,891 - INFO - Updating metadata for: semi_pro_racing_stars +2026-01-07 01:49:44,891 - INFO - Searching metadata for: semi pro racing stars +2026-01-07 01:49:45,085 - INFO - Fetching metadata from: https://nhentai.net/g/380272/ +2026-01-07 01:49:45,348 - INFO - Updating metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-07 01:49:45,348 - INFO - Searching metadata for: A SISTER WHO WANTS TO WATCH SIBLINGS +2026-01-07 01:49:45,648 - INFO - Fetching metadata from: https://nhentai.net/g/548071/ +2026-01-07 01:49:45,895 - INFO - Updating metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-07 01:49:45,896 - INFO - Searching metadata for: Stalker MILF and Me, Her Sex Toy +2026-01-07 01:49:46,181 - INFO - Fetching metadata from: https://nhentai.net/g/583039/ +2026-01-07 01:49:46,422 - INFO - Updating metadata for: [Nyuu Koubou Koromotake] Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-07 01:49:46,423 - INFO - Searching metadata for: Nyuu Koubou Koromotake Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English] +2026-01-07 01:49:46,737 - INFO - Fetching metadata from: https://nhentai.net/g/603798/ +2026-01-07 01:49:46,985 - INFO - Updating metadata for: crossdressing_hero_and_dancer_priestess_chapter +2026-01-07 01:49:46,986 - INFO - Searching metadata for: crossdressing hero and dancer priestess chapter +2026-01-07 01:49:47,209 - INFO - Searching MangaUpdates for: crossdressing hero and dancer priestess chapter +2026-01-07 01:49:47,613 - INFO - Updating metadata for: tsugumonotachi_hachi_hen +2026-01-07 01:49:47,613 - INFO - Searching metadata for: tsugumonotachi hachi hen +2026-01-07 01:49:47,785 - INFO - Searching MangaUpdates for: tsugumonotachi hachi hen +2026-01-07 01:49:48,134 - INFO - Updating metadata for: leave_it_all_to_me_little_brother +2026-01-07 01:49:48,134 - INFO - Searching metadata for: leave it all to me little brother +2026-01-07 01:49:48,482 - INFO - Fetching metadata from: https://nhentai.net/g/548496/ +2026-01-07 01:49:48,799 - INFO - Updating metadata for: imouto_to_rekawatta_oniichan_wa_chapter +2026-01-07 01:49:48,799 - INFO - Searching metadata for: imouto to rekawatta oniichan wa chapter +2026-01-07 01:49:49,051 - INFO - Searching MangaUpdates for: imouto to rekawatta oniichan wa chapter +2026-01-07 01:49:49,511 - INFO - Updating metadata for: Kanojo_ni_Naritai_Kimi_to_Boku_(2018) +2026-01-07 01:49:49,512 - INFO - Searching metadata for: Kanojo ni Naritai Kimi to Boku +2026-01-07 01:49:49,862 - INFO - Searching MangaUpdates for: Kanojo ni Naritai Kimi to Boku +2026-01-07 01:49:50,169 - INFO - Updating metadata for: Saimin_Appli_(Yuma)_(2024) +2026-01-07 01:49:50,170 - INFO - Searching metadata for: Saimin Appli (Yuma) +2026-01-07 01:49:50,387 - INFO - Searching MangaUpdates for: Saimin Appli (Yuma) +2026-01-07 01:49:50,613 - INFO - Updating metadata for: the_demon_lords_bride +2026-01-07 01:49:50,614 - INFO - Searching metadata for: the demon lords bride +2026-01-07 01:49:50,814 - INFO - Searching MangaUpdates for: the demon lords bride +2026-01-07 01:49:51,047 - INFO - Updating metadata for: [satsukiimonet (Satsuki Imonet)] HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-07 01:49:51,047 - INFO - Searching metadata for: satsukiimonet (Satsuki Imonet) HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital] +2026-01-07 01:49:51,308 - INFO - Fetching metadata from: https://nhentai.net/g/603395/ +2026-01-07 01:49:51,716 - INFO - Updating metadata for: special_tit_envoy +2026-01-07 01:49:51,717 - INFO - Searching metadata for: special tit envoy +2026-01-07 01:49:51,892 - INFO - Fetching metadata from: https://nhentai.net/g/354686/ +2026-01-07 01:49:52,091 - INFO - Updating metadata for: hot_spring_sex_with_mama_raikou +2026-01-07 01:49:52,092 - INFO - Searching metadata for: hot spring sex with mama raikou +2026-01-07 01:49:52,320 - INFO - Fetching metadata from: https://nhentai.net/g/329703/ +2026-01-07 01:49:52,522 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Succubus Shoukan [English][Fan trad] +2026-01-07 01:49:52,522 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Succubus Shoukan [English][Fan trad] +2026-01-07 01:49:52,717 - INFO - Searching metadata for: Succubus Shoukan [English][Fan trad] +2026-01-07 01:49:52,944 - INFO - Searching MangaUpdates for: Succubus Shoukan [English][Fan trad] +2026-01-07 01:49:53,284 - INFO - Updating metadata for: nanjamo_no_botebaraive_nanjamo_vs_metamonjamo +2026-01-07 01:49:53,285 - INFO - Searching metadata for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-07 01:49:53,443 - INFO - Searching MangaUpdates for: nanjamo no botebaraive nanjamo vs metamonjamo +2026-01-07 01:49:53,913 - INFO - Updating metadata for: akos_and_nozomis_discussion_of_masturbation_addictions +2026-01-07 01:49:53,913 - INFO - Searching metadata for: akos and nozomis discussion of masturbation addictions +2026-01-07 01:49:54,106 - INFO - Searching MangaUpdates for: akos and nozomis discussion of masturbation addictions +2026-01-07 01:49:54,427 - INFO - Updating metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 01:49:54,428 - INFO - Searching metadata for: Shitei ga Mechakucha Sex suru Ohanashi +2026-01-07 01:49:54,711 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-07 01:49:54,954 - INFO - Updating metadata for: [Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 01:49:54,954 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 01:49:55,234 - INFO - Searching metadata for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 01:49:55,506 - INFO - Searching MangaUpdates for: Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com] +2026-01-07 01:49:56,671 - INFO - Updating metadata for: my_cool_friend +2026-01-07 01:49:56,672 - INFO - Searching metadata for: my cool friend +2026-01-07 01:49:56,874 - INFO - Fetching metadata from: https://nhentai.net/g/588146/ +2026-01-07 01:49:57,112 - INFO - Updating metadata for: Akogare_no_Tomo_Mama_to_Matching_Shita_Kudan_(2024) +2026-01-07 01:49:57,112 - INFO - Searching metadata for: Akogare no Tomo Mama to Matching Shita Kudan +2026-01-07 01:49:57,386 - INFO - Searching MangaUpdates for: Akogare no Tomo Mama to Matching Shita Kudan +2026-01-07 01:49:58,024 - INFO - Updating metadata for: non_stop_fucking_with_my_friends_mom +2026-01-07 01:49:58,024 - INFO - Searching metadata for: non stop fucking with my friends mom +2026-01-07 01:49:58,277 - INFO - Searching MangaUpdates for: non stop fucking with my friends mom +2026-01-07 01:49:58,559 - INFO - Updating metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-07 01:49:58,560 - INFO - Searching metadata for: Mama Haha Tsukushi Kouhen ( +2026-01-07 01:49:58,809 - INFO - Fetching metadata from: https://nhentai.net/g/571356/ +2026-01-07 01:49:59,093 - INFO - Updating metadata for: Koyoi,_Gishiki_de_Hatemashou_(2019) +2026-01-07 01:49:59,093 - INFO - Searching metadata for: Koyoi, Gishiki de Hatemashou +2026-01-07 01:49:59,304 - INFO - Searching MangaUpdates for: Koyoi, Gishiki de Hatemashou +2026-01-07 01:49:59,784 - INFO - Updating metadata for: I will make a single mother my wife +2026-01-07 01:49:59,785 - INFO - Searching metadata for: I will make a single mother my wife +2026-01-07 01:50:00,094 - INFO - Fetching metadata from: https://nhentai.net/g/595981/ +2026-01-07 01:50:00,319 - INFO - Updating metadata for: barenai_you_ni +2026-01-07 01:50:00,319 - INFO - Searching metadata for: barenai you ni +2026-01-07 01:50:00,570 - INFO - Fetching metadata from: https://nhentai.net/g/591233/ +2026-01-07 01:50:00,786 - INFO - Updating metadata for: adolescent_calculation +2026-01-07 01:50:00,787 - INFO - Searching metadata for: adolescent calculation +2026-01-07 01:50:00,956 - INFO - Fetching metadata from: https://nhentai.net/g/183099/ +2026-01-07 01:50:01,167 - INFO - Updating metadata for: moto_incha_no_kyonyuu_yariman_imouto_ga_erosugite_oniichan_wa_mou +2026-01-07 01:50:01,168 - INFO - Searching metadata for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-07 01:50:01,542 - INFO - Searching MangaUpdates for: moto incha no kyonyuu yariman imouto ga erosugite oniichan wa mou +2026-01-07 01:50:02,587 - INFO - Updating metadata for: karinsans_hidden_side_and_her_naughty_videos_chapter +2026-01-07 01:50:02,587 - INFO - Searching metadata for: karinsans hidden side and her naughty videos chapter +2026-01-07 01:50:02,768 - INFO - Searching MangaUpdates for: karinsans hidden side and her naughty videos chapter +2026-01-07 02:05:19,832 - INFO - Sorting by Artist in /comics/manga... +2026-01-07 02:05:19,923 - INFO - Moving 'catch_you_at_the_indoor_beach' to Artist folder '_Unknown' +2026-01-07 02:05:19,934 - INFO - Moving '[Omapuu] Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya]' to Artist folder '_Unknown' +2026-01-07 02:05:19,943 - INFO - Moving '[Kazuhiro] Mesuiki ~Hame Trip~ [English] [N04h]' to Artist folder '_Unknown' +2026-01-07 02:05:19,952 - INFO - Moving 'Injoku_no_Kizuna_(2006)' to Artist folder '_Unknown' +2026-01-07 02:05:19,961 - INFO - Moving '[Itaba Hiroshi] Ane Zokusei ︱ Sisterly Nature [English] [Black Grimoires] [Decensored] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:19,972 - INFO - Moving 'shounen_ga_otona_ni_natta_natsu' to Artist folder '_Unknown' +2026-01-07 02:05:19,982 - INFO - Moving 'i_have_no_choice_but_to_have_sex_with_my_mother_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:19,994 - INFO - Moving '[Airandou] Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored]' to Artist folder '_Unknown' +2026-01-07 02:05:20,006 - INFO - Moving 'on_a_stormy_night' to Artist folder '_Unknown' +2026-01-07 02:05:20,018 - INFO - Moving 'jibakureichan_wa_oppai_ga_yowai_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:20,028 - INFO - Moving '(C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG]' to Artist folder '_Unknown' +2026-01-07 02:05:20,039 - INFO - Moving 'last_day_of_summer_vacation_sex_sex_sex' to Artist folder '_Unknown' +2026-01-07 02:05:20,050 - INFO - Moving 'SEX Shinai to Derarenai Heya desu. _ The Room You Can't Leave Until You Have Sex' to Artist folder '_Unknown' +2026-01-07 02:05:20,062 - INFO - Moving '[Utsutsu Minoru] Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:20,089 - INFO - Moving '[Yue] Keiyaku Kekkon Fuufu no Christmas A Contract Marriage Couple’s Christmas [English] [Fated Circle]' to Artist folder '_Unknown' +2026-01-07 02:05:20,101 - INFO - Moving 'mama_nge' to Artist folder '_Unknown' +2026-01-07 02:05:20,111 - INFO - Moving 'a_story_about_getting_trained_by_my_older_sister' to Artist folder '_Unknown' +2026-01-07 02:05:20,121 - INFO - Moving 'shake_hip' to Artist folder '_Unknown' +2026-01-07 02:05:20,132 - INFO - Moving '[Hannya san] Mom son' to Artist folder '_Unknown' +2026-01-07 02:05:20,143 - INFO - Moving 'Frustrated Share House Residents' to Artist folder '_Unknown' +2026-01-07 02:05:20,157 - INFO - Moving 'a room you can't leave without having lovey-dovey sex with fuyuko chan' to Artist folder '_Unknown' +2026-01-07 02:05:20,168 - INFO - Moving 'oni_no_kyouiku_mama_ga_musuko_to_amaama_sex_made' to Artist folder '_Unknown' +2026-01-07 02:05:20,178 - INFO - Moving 'immoral_relationship' to Artist folder '_Unknown' +2026-01-07 02:05:20,189 - INFO - Moving 'quick_return_home' to Artist folder '_Unknown' +2026-01-07 02:05:20,199 - INFO - Moving 'sister_succubus' to Artist folder '_Unknown' +2026-01-07 02:05:20,210 - INFO - Moving 'i_fell_for_a_female_ghost' to Artist folder '_Unknown' +2026-01-07 02:05:20,223 - INFO - Moving '[Mata Ashita (Oohira Sunset)] Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun_tl] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:20,274 - INFO - Moving 'shrine_maidens_of_injin' to Artist folder '_Unknown' +2026-01-07 02:05:20,285 - INFO - Moving 'the_daily_lives_of_an_older_brother_x_four_younger_sister' to Artist folder '_Unknown' +2026-01-07 02:05:20,296 - INFO - Moving 'all_eyes_on_me' to Artist folder '_Unknown' +2026-01-07 02:05:20,307 - INFO - Moving 'sister_was_thinking_about_her_younger_brothers_sexual_desire_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:20,315 - INFO - Moving 'two_big_tit_gals_find_a_bored_boy' to Artist folder '_Unknown' +2026-01-07 02:05:20,321 - INFO - Moving 'a_sulky_older_sister_who_wants_to_concentrate_on_her_studies' to Artist folder '_Unknown' +2026-01-07 02:05:20,328 - INFO - Moving 'asekaki_nee_no_neteiru_aida_ni' to Artist folder '_Unknown' +2026-01-07 02:05:20,333 - INFO - Moving 'siblings_matchup_secret_mating_sex_life' to Artist folder '_Unknown' +2026-01-07 02:05:20,341 - INFO - Moving 'Siblings having sex in the living room like it's normal' to Artist folder '_Unknown' +2026-01-07 02:05:20,346 - INFO - Moving 'enveloped_by_a_ghost' to Artist folder '_Unknown' +2026-01-07 02:05:20,351 - INFO - Moving 'papa_is_a_loser' to Artist folder '_Unknown' +2026-01-07 02:05:20,357 - INFO - Moving 'hari_x2_honey' to Artist folder '_Unknown' +2026-01-07 02:05:20,361 - INFO - Moving 'first_sperm_loving_succubus_dinner_of_cowgirl_and_creampie_sex' to Artist folder '_Unknown' +2026-01-07 02:05:20,366 - INFO - Moving 'i_want_it_nurse_me' to Artist folder '_Unknown' +2026-01-07 02:05:20,370 - INFO - Moving 'fairy_feature_the_mayors_secret' to Artist folder '_Unknown' +2026-01-07 02:05:20,375 - INFO - Moving 'starting_today_im' to Artist folder '_Unknown' +2026-01-07 02:05:20,379 - INFO - Moving 'naive_little_sister_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:20,383 - INFO - Moving 'boku_no_kaasan_ga_amari_ni_mo_erosugite' to Artist folder '_Unknown' +2026-01-07 02:05:20,387 - INFO - Moving 'autumn_lovers' to Artist folder '_Unknown' +2026-01-07 02:05:20,391 - INFO - Moving 'training_the_older_sister_momomadoka' to Artist folder '_Unknown' +2026-01-07 02:05:20,395 - INFO - Moving 'doukyuusei_gal_3_ningumi_to' to Artist folder '_Unknown' +2026-01-07 02:05:20,399 - INFO - Moving 'Hitoduma Ane _ Married Sister' to Artist folder '_Unknown' +2026-01-07 02:05:20,404 - INFO - Moving 'winter_omake_bon' to Artist folder '_Unknown' +2026-01-07 02:05:20,408 - INFO - Moving 'perverted_hypnosis_experiment' to Artist folder '_Unknown' +2026-01-07 02:05:20,412 - INFO - Moving 'kyoudai_no_naka' to Artist folder '_Unknown' +2026-01-07 02:05:20,416 - INFO - Moving 'sometimes_i_draw_manga' to Artist folder '_Unknown' +2026-01-07 02:05:20,421 - INFO - Moving 'Stigmatized_Property_(2019)' to Artist folder '_Unknown' +2026-01-07 02:05:20,426 - INFO - Moving 'apron' to Artist folder '_Unknown' +2026-01-07 02:05:20,432 - INFO - Moving 'namaiki_na_hahaoya_o_honnin_ni_mo_kizukarezu_ni_minkan_suru_houhou' to Artist folder '_Unknown' +2026-01-07 02:05:20,437 - INFO - Moving 'haha_ga_saikon_shitara_gikei_ga_chou_kuzu' to Artist folder '_Unknown' +2026-01-07 02:05:20,441 - INFO - Moving 'lets_do_it' to Artist folder '_Unknown' +2026-01-07 02:05:20,446 - INFO - Moving 'naomi san wa ore no sefri ch 1' to Artist folder '_Unknown' +2026-01-07 02:05:20,450 - INFO - Moving 'namaiki_sanshimai' to Artist folder '_Unknown' +2026-01-07 02:05:20,455 - INFO - Moving 'a_story_about_my_little_sister_giving_me_titjobs' to Artist folder '_Unknown' +2026-01-07 02:05:20,460 - INFO - Moving 'fuyu_yui' to Artist folder '_Unknown' +2026-01-07 02:05:20,466 - INFO - Moving 'Imouto_wa_minna_Oniichan_ga_Suki!_(2010)' to Artist folder '_Unknown' +2026-01-07 02:05:20,470 - INFO - Moving 'i_matched_with_my_friends_mom_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:20,475 - INFO - Moving 'love_wheel' to Artist folder '_Unknown' +2026-01-07 02:05:20,480 - INFO - Moving '[Heart Manju Mania (Akata Izuki)] Cocoro Controller 2 [English]' to Artist folder '_Unknown' +2026-01-07 02:05:20,485 - INFO - Moving 'the_sex_life_of_andy_and_leyley' to Artist folder '_Unknown' +2026-01-07 02:05:20,490 - INFO - Moving 'mozzarella_the_new_slutty_pussy' to Artist folder '_Unknown' +2026-01-07 02:05:20,495 - INFO - Moving '[ABBB] How to make a family using hypnosis app [English] [Decensored]' to Artist folder '_Unknown' +2026-01-07 02:05:20,503 - INFO - Moving 'wife_pickle' to Artist folder '_Unknown' +2026-01-07 02:05:20,511 - INFO - Moving '[MN] My Big Breast Sister' to Artist folder '_Unknown' +2026-01-07 02:05:20,522 - INFO - Moving 'you_must_breed_your_sisters_to_leave_this_village' to Artist folder '_Unknown' +2026-01-07 02:05:20,529 - INFO - Moving 'mother_and_son_and_father_and_daughter_tonight_is_incest_night' to Artist folder '_Unknown' +2026-01-07 02:05:20,535 - INFO - Moving '[Takashima] FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein]' to Artist folder '_Unknown' +2026-01-07 02:05:20,540 - INFO - Moving 'teasing_big_sis' to Artist folder '_Unknown' +2026-01-07 02:05:20,546 - INFO - Moving 'forward' to Artist folder '_Unknown' +2026-01-07 02:05:20,551 - INFO - Moving 'my_sister_doesnt_laugh' to Artist folder '_Unknown' +2026-01-07 02:05:20,557 - INFO - Moving 'big_sis_wants_to_convince_her_lil_bro' to Artist folder '_Unknown' +2026-01-07 02:05:20,563 - INFO - Moving 'misato_x_shinji_baby_making' to Artist folder '_Unknown' +2026-01-07 02:05:20,569 - INFO - Moving 'my_wife_left_me_because_i_was' to Artist folder '_Unknown' +2026-01-07 02:05:20,576 - INFO - Moving 'human_manipulating_remote_control' to Artist folder '_Unknown' +2026-01-07 02:05:20,582 - INFO - Moving 'bitch_na_inanesama' to Artist folder '_Unknown' +2026-01-07 02:05:20,588 - INFO - Moving 'family_mischief_lewd' to Artist folder '_Unknown' +2026-01-07 02:05:20,594 - INFO - Moving '[Poriuretan] Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English]' to Artist folder '_Unknown' +2026-01-07 02:05:20,601 - INFO - Moving 'my_daily_life_taking_care_of_sexual_urges_with_my_naughty_sister' to Artist folder '_Unknown' +2026-01-07 02:05:20,612 - INFO - Moving 'a_history_of_no_boyfriends_equal_me_at_my_age' to Artist folder '_Unknown' +2026-01-07 02:05:20,619 - INFO - Moving 'one_familys_plan_to_save_electricty' to Artist folder '_Unknown' +2026-01-07 02:05:20,626 - INFO - Moving 'what_we_have_is_strictly_business' to Artist folder '_Unknown' +2026-01-07 02:05:20,634 - INFO - Moving '[Juna Juna Juice] Pokemon Series (Pokemon) [English]' to Artist folder '_Unknown' +2026-01-07 02:05:20,641 - INFO - Moving 'bitch_dirty_sister' to Artist folder '_Unknown' +2026-01-07 02:05:20,648 - INFO - Moving 'kayanee_and_the_old_man_memories_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:20,705 - INFO - Moving 'momojiri_ocean' to Artist folder '_Unknown' +2026-01-07 02:05:20,717 - INFO - Moving 'daily_life_with_my_sexy_stepmom' to Artist folder '_Unknown' +2026-01-07 02:05:20,727 - INFO - Moving 'older_stepsister_teaches_her_cheeky_little_stepbrother' to Artist folder '_Unknown' +2026-01-07 02:05:20,739 - INFO - Moving 'falling_in_love_at_the_brothel.5' to Artist folder '_Unknown' +2026-01-07 02:05:20,751 - INFO - Moving 'okaasan_to_naisho' to Artist folder '_Unknown' +2026-01-07 02:05:20,762 - INFO - Moving 'punishment_for_the_feral_hound_in_heat' to Artist folder '_Unknown' +2026-01-07 02:05:20,773 - INFO - Moving 'my_little_sister_has_a_big_body_and_a_big_heart' to Artist folder '_Unknown' +2026-01-07 02:05:20,786 - INFO - Moving '[Emori Uki] Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr]' to Artist folder '_Unknown' +2026-01-07 02:05:20,798 - INFO - Moving '[Kazuhiro] Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:20,809 - INFO - Moving '[Fence14] Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits]' to Artist folder '_Unknown' +2026-01-07 02:05:20,821 - INFO - Moving 'sakusei_shuki_shuki_sisters' to Artist folder '_Unknown' +2026-01-07 02:05:20,832 - INFO - Moving 'dosukebe_saimin_revenge' to Artist folder '_Unknown' +2026-01-07 02:05:20,843 - INFO - Moving 'A Son's Choice' to Artist folder '_Unknown' +2026-01-07 02:05:20,854 - INFO - Moving '[Kawamori Mizaki] Mainichi uwakidzuma {English]' to Artist folder '_Unknown' +2026-01-07 02:05:20,865 - INFO - Moving 'skin_tight_sticky_intercourse' to Artist folder '_Unknown' +2026-01-07 02:05:20,876 - INFO - Moving '[Tokyo Ereki Studio (Azuma Ryo)] JK no Otoshikata -Jou- [English] [Ruru Scanlations]' to Artist folder '_Unknown' +2026-01-07 02:05:20,889 - INFO - Moving 'Ai_ga_Ippai_Ero_wa_Oppai_(2010)' to Artist folder '_Unknown' +2026-01-07 02:05:20,899 - INFO - Moving 'supplementary_sex_education' to Artist folder '_Unknown' +2026-01-07 02:05:20,910 - INFO - Moving 'taimanin_shinobu_series' to Artist folder '_Unknown' +2026-01-07 02:05:20,921 - INFO - Moving '[Sakai Hamachi] Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:20,932 - INFO - Moving 'a_molester_took_everything_from_me_chapter_' to Artist folder '_Unknown' +2026-01-07 02:05:20,945 - INFO - Moving 'Hoken_Shitsu_no_Aisare_Sensei_(2020)' to Artist folder '_Unknown' +2026-01-07 02:05:20,957 - INFO - Moving 'a_loner_makes_the_right_choices_and_goes_out_with_a_seiso_girl_of_course_theres_sex_as_well' to Artist folder '_Unknown' +2026-01-07 02:05:20,968 - INFO - Moving 'maho_shojo_ointo_seba_mazu_haha_o_iyo' to Artist folder '_Unknown' +2026-01-07 02:05:20,980 - INFO - Moving 'paiotsu_kaede_live' to Artist folder '_Unknown' +2026-01-07 02:05:20,990 - INFO - Moving 'otakuhime_and_the_lovey_dovey_bath' to Artist folder '_Unknown' +2026-01-07 02:05:20,999 - INFO - Moving 'airandou' to Artist folder '_Unknown' +2026-01-07 02:05:21,008 - INFO - Moving '[Kasou Genjitsu (Hasekura Noise)] THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:21,014 - INFO - Moving 'virginity_prohibition_act_mandatory_baby_making' to Artist folder '_Unknown' +2026-01-07 02:05:21,019 - INFO - Moving '[Juna Juna Juice] Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English]' to Artist folder '_Unknown' +2026-01-07 02:05:21,024 - INFO - Moving 'the_lazy_and_naughty_achan_is_inviting_me' to Artist folder '_Unknown' +2026-01-07 02:05:21,029 - INFO - Moving 'Watashi_no_Kawaii_Mochizuki-kun_(2020)' to Artist folder '_Unknown' +2026-01-07 02:05:21,034 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit}' to Artist folder '_Unknown' +2026-01-07 02:05:21,041 - INFO - Moving '[Nedoko de Nidone (Nashio )] Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei]' to Artist folder '_Unknown' +2026-01-07 02:05:21,046 - INFO - Moving 'from_nipple_bumps_to_erotic_play_with_my_sister' to Artist folder '_Unknown' +2026-01-07 02:05:21,050 - INFO - Moving 'heart_mark_oome' to Artist folder '_Unknown' +2026-01-07 02:05:21,055 - INFO - Moving '[Airandou] Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2]' to Artist folder '_Unknown' +2026-01-07 02:05:21,061 - INFO - Moving 'everyday_conversations_with_my_big_sister' to Artist folder '_Unknown' +2026-01-07 02:05:21,066 - INFO - Moving '[R Koubou (Ruzi)] Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com}' to Artist folder '_Unknown' +2026-01-07 02:05:21,073 - INFO - Moving 'aneoto' to Artist folder '_Unknown' +2026-01-07 02:05:21,078 - INFO - Moving 'the_making_of_a_cultt_leader' to Artist folder '_Unknown' +2026-01-07 02:05:21,082 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru A Young Mother Gets Charmed by Her Son's (Incubus →) Friend and Becomes His Bitch [English] [korafu]' to Artist folder '_Unknown' +2026-01-07 02:05:21,088 - INFO - Moving 'watashi_de_sukkiri_saasechaina_hatsukoi_aite_ni_tsurareru_ore' to Artist folder '_Unknown' +2026-01-07 02:05:21,093 - INFO - Moving 'perverted_body_tight_mama_monster' to Artist folder '_Unknown' +2026-01-07 02:05:21,098 - INFO - Moving '(C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru]' to Artist folder '_Unknown' +2026-01-07 02:05:21,103 - INFO - Moving 'gishi_ni_shiborareru_hanashi' to Artist folder '_Unknown' +2026-01-07 02:05:21,108 - INFO - Moving '[Nishikawa Kou] Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo]' to Artist folder '_Unknown' +2026-01-07 02:05:21,113 - INFO - Moving 'call_me_a_slut' to Artist folder '_Unknown' +2026-01-07 02:05:21,118 - INFO - Moving 'rental_mama_rental_mom' to Artist folder '_Unknown' +2026-01-07 02:05:21,122 - INFO - Moving 'oshi_to_ecchina_koto_nante_muri_muri_muri' to Artist folder '_Unknown' +2026-01-07 02:05:21,127 - INFO - Moving 'Kateinai Henai' to Artist folder '_Unknown' +2026-01-07 02:05:21,133 - INFO - Moving 'devi_navi' to Artist folder '_Unknown' +2026-01-07 02:05:21,138 - INFO - Moving '[Chiguchi Miri] Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H]' to Artist folder '_Unknown' +2026-01-07 02:05:21,143 - INFO - Moving '[Muufa] One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya]' to Artist folder '_Unknown' +2026-01-07 02:05:21,150 - INFO - Moving 'leave_me_alone' to Artist folder '_Unknown' +2026-01-07 02:05:21,158 - INFO - Moving 'the_day_the_youngest_son_lost_his_virginity_thanks_to_his_mother_in_a_swimsuit' to Artist folder '_Unknown' +2026-01-07 02:05:21,166 - INFO - Moving 'misaesan_no_shiri_ass' to Artist folder '_Unknown' +2026-01-07 02:05:21,175 - INFO - Moving 'and_then_i_will_be_a_mom' to Artist folder '_Unknown' +2026-01-07 02:05:21,183 - INFO - Moving 'a_molester_took_everything_from_me' to Artist folder '_Unknown' +2026-01-07 02:05:21,191 - INFO - Moving 'will_you_help_me' to Artist folder '_Unknown' +2026-01-07 02:05:21,200 - INFO - Moving '[Manbou Shoten] Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English)' to Artist folder '_Unknown' +2026-01-07 02:05:21,208 - INFO - Moving 'katamichi_catchball' to Artist folder '_Unknown' +2026-01-07 02:05:21,217 - INFO - Moving 'bareback_sex_life_with_da_vinci' to Artist folder '_Unknown' +2026-01-07 02:05:21,225 - INFO - Moving 'my_defenseless_mothers' to Artist folder '_Unknown' +2026-01-07 02:05:21,232 - INFO - Moving 'a_day_for_incest' to Artist folder '_Unknown' +2026-01-07 02:05:21,240 - INFO - Moving 'jagan_no_saimin_inryoku_de_seitokai_les_joshitachi' to Artist folder '_Unknown' +2026-01-07 02:05:21,250 - INFO - Moving 'boku_no_kaasan_ga_amari_ni_mo_erosugite_chapter_' to Artist folder '_Unknown' +2026-01-07 02:05:21,258 - INFO - Moving 'making_a_bet_with_a_competitive_niece' to Artist folder '_Unknown' +2026-01-07 02:05:21,267 - INFO - Moving '[k8on] It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name]' to Artist folder '_Unknown' +2026-01-07 02:05:21,275 - INFO - Moving 'the_twins_next_door_were_former_super_sentai' to Artist folder '_Unknown' +2026-01-07 02:05:21,282 - INFO - Moving 'nureane_batsuichi_no_ane_to_sex_o_shita_natsu_no_yoru' to Artist folder '_Unknown' +2026-01-07 02:05:21,290 - INFO - Moving '[Juna Juna Juice] Supergirl From The JJJ Universe (The Flash) [English]' to Artist folder '_Unknown' +2026-01-07 02:05:21,298 - INFO - Moving 'shes_always_obstinate' to Artist folder '_Unknown' +2026-01-07 02:05:21,306 - INFO - Moving 'mikamikuns_incestuous_situation' to Artist folder '_Unknown' +2026-01-07 02:05:21,316 - INFO - Moving '[Yue] Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV' to Artist folder '_Unknown' +2026-01-07 02:05:21,325 - INFO - Moving 'Jujutsu_Kaisen_dj_-_○○○_Shinai_to_Derarenai_Heya_√A_(2021)' to Artist folder '_Unknown' +2026-01-07 02:05:21,336 - INFO - Moving '[Pentacle(Shimipan)] I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English]' to Artist folder '_Unknown' +2026-01-07 02:05:21,347 - INFO - Moving 'my_big_little_sister' to Artist folder '_Unknown' +2026-01-07 02:05:21,358 - INFO - Moving '[Zandoro] A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet' to Artist folder '_Unknown' +2026-01-07 02:05:21,368 - INFO - Moving 'awakening_of_the_female_instinct' to Artist folder '_Unknown' +2026-01-07 02:05:21,379 - INFO - Moving 'Hitozuma,_Uwaki,_Danchi_Nite._-37-Sai_Miho-_(2025)' to Artist folder '_Unknown' +2026-01-07 02:05:21,390 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English]' to Artist folder '_Unknown' +2026-01-07 02:05:21,400 - INFO - Moving 'friendly_brother_and_sister' to Artist folder '_Unknown' +2026-01-07 02:05:21,411 - INFO - Moving '[Manbou Shoten] Shitei ga Mechakucha Sex suru Ohanashi' to Artist folder '_Unknown' +2026-01-07 02:05:21,420 - INFO - Moving 'Family_Plan_(2024)' to Artist folder '_Unknown' +2026-01-07 02:05:21,433 - INFO - Moving 'you_must_breed_your_sister_to_leave_this_island' to Artist folder '_Unknown' +2026-01-07 02:05:21,447 - INFO - Moving 'fence14' to Artist folder '_Unknown' +2026-01-07 02:05:21,457 - INFO - Moving 'Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ _ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~' to Artist folder '_Unknown' +2026-01-07 02:05:21,465 - INFO - Moving 'elder_sis_cosplay' to Artist folder '_Unknown' +2026-01-07 02:05:21,495 - INFO - Moving 'She Likes to Tease, But Deep Down She's a Pushover - せびれ' to Artist folder '_Unknown' +2026-01-07 02:05:21,506 - INFO - Moving 'maiyasans_money_issues' to Artist folder '_Unknown' +2026-01-07 02:05:21,515 - INFO - Moving 'mama_cos' to Artist folder '_Unknown' +2026-01-07 02:05:21,523 - INFO - Moving '[Shirono Mahiro] Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo]' to Artist folder '_Unknown' +2026-01-07 02:05:21,532 - INFO - Moving 'im_being_sex_educated_by_my_overprotective_mother_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:21,543 - INFO - Moving 'imouto_ookiindamon_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:21,552 - INFO - Moving 'my_dear_sister_is_mine' to Artist folder '_Unknown' +2026-01-07 02:05:21,562 - INFO - Moving '[Qdou Kei] Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz]' to Artist folder '_Unknown' +2026-01-07 02:05:21,573 - INFO - Moving '[nounanka (Abubu)] Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English]' to Artist folder '_Unknown' +2026-01-07 02:05:21,582 - INFO - Moving 'story_about_how_i_fucked_cucked_and_brought_to_bliss_some_languid_wives' to Artist folder '_Unknown' +2026-01-07 02:05:21,592 - INFO - Moving '[Shiki] Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English]' to Artist folder '_Unknown' +2026-01-07 02:05:21,602 - INFO - Moving 'uchi_ni_kaettara_mama_ga_zenra_de_hatsujou_shiteta_ken' to Artist folder '_Unknown' +2026-01-07 02:05:21,612 - INFO - Moving '[Teoi] Youmu-chan hypnosis sex' to Artist folder '_Unknown' +2026-01-07 02:05:21,623 - INFO - Moving '[Kazuhiro] Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com}' to Artist folder '_Unknown' +2026-01-07 02:05:21,633 - INFO - Moving 'similar_siblings' to Artist folder '_Unknown' +2026-01-07 02:05:21,643 - INFO - Moving 'kiyoshiros_last_hours' to Artist folder '_Unknown' +2026-01-07 02:05:21,654 - INFO - Moving 'otaku_ni_rikai_aru_gal_yome_ga_otashop' to Artist folder '_Unknown' +2026-01-07 02:05:21,665 - INFO - Moving '[CHOMA] Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL]' to Artist folder '_Unknown' +2026-01-07 02:05:21,676 - INFO - Moving 'muchi_niku_jokyoushi_tomomi_mama' to Artist folder '_Unknown' +2026-01-07 02:05:21,688 - INFO - Moving 'Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru _ Trapped in a Sex-locked Room with your Bitchy Little Sister' to Artist folder '_Unknown' +2026-01-07 02:05:21,698 - INFO - Moving 'michelle_to_icha_love' to Artist folder '_Unknown' +2026-01-07 02:05:21,705 - INFO - Moving 'toshi_densetsu_bitch_joshikai' to Artist folder '_Unknown' +2026-01-07 02:05:21,710 - INFO - Moving 'A room I can't leave without having incestuous sex with my mom' to Artist folder '_Unknown' +2026-01-07 02:05:21,715 - INFO - Moving 'after_a_mouth' to Artist folder '_Unknown' +2026-01-07 02:05:21,721 - INFO - Moving 'incestism' to Artist folder '_Unknown' +2026-01-07 02:05:21,726 - INFO - Moving 'life_of_passionate_pleasures' to Artist folder '_Unknown' +2026-01-07 02:05:21,731 - INFO - Moving 'carnal_siblings' to Artist folder '_Unknown' +2026-01-07 02:05:21,736 - INFO - Moving 'naughty_bunny_and_doctor' to Artist folder '_Unknown' +2026-01-07 02:05:21,740 - INFO - Moving 'hiyake_rikujoubu_oneechan_ni_neteiru_toku_ni_itazura_suru_ecchi_manga' to Artist folder '_Unknown' +2026-01-07 02:05:21,745 - INFO - Moving 'reiwas_penis_growth_training_chapter_1' to Artist folder '_Unknown' +2026-01-07 02:05:21,749 - INFO - Moving '[Ginshio Honpo (Ginen)] Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex)' to Artist folder '_Unknown' +2026-01-07 02:05:21,754 - INFO - Moving 'ninshin_wa_kinshin_de_to_iu_hou_ga_dekita_node_haha_to_imouto_to_oba_mainichi_ore_no_chi_po_o_neratte_kuru' to Artist folder '_Unknown' +2026-01-07 02:05:21,759 - INFO - Moving 'ani_no_kimoi_gendou_ni_honki' to Artist folder '_Unknown' +2026-01-07 02:05:21,763 - INFO - Moving 'Roujin_to_Neko_(2024)' to Artist folder '_Unknown' +2026-01-07 02:05:21,767 - INFO - Moving 'gal_bitch_supremacy' to Artist folder '_Unknown' +2026-01-07 02:05:21,771 - INFO - Moving 'ane_de_shikoru_otouto_to_onaritai' to Artist folder '_Unknown' +2026-01-07 02:05:21,775 - INFO - Moving 'video_memories' to Artist folder '_Unknown' +2026-01-07 02:05:21,779 - INFO - Moving 'Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)]' to Artist folder '_Unknown' +2026-01-07 02:05:21,784 - INFO - Moving '[Niramikko Koujou] Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family]' to Artist folder '_Unknown' +2026-01-07 02:05:21,841 - INFO - Moving 'kanojo_no_ane_wa_gal_de_bitch_de_yariman_de' to Artist folder '_Unknown' +2026-01-07 02:05:21,852 - INFO - Moving '[Sakurama Haruomi] Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:21,862 - INFO - Moving 'musclehead_girl_cant_resist_orgasm_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:21,874 - INFO - Moving 'oneechan_wa_sore_o_yurusanai' to Artist folder '_Unknown' +2026-01-07 02:05:21,886 - INFO - Moving 'pet_mimamori_camera_ni_ane_to_otouto_no_sex_ga_utsutteta' to Artist folder '_Unknown' +2026-01-07 02:05:21,896 - INFO - Moving '[Juicebox Koujou (Juna Juna Juice)] Tsuma wa Tokidoki Ecchi Panda Mating with Red [English]' to Artist folder '_Unknown' +2026-01-07 02:05:21,906 - INFO - Moving 'sisters_after_mozu' to Artist folder '_Unknown' +2026-01-07 02:05:21,917 - INFO - Moving 'otaku_hime_ga_kita_heya' to Artist folder '_Unknown' +2026-01-07 02:05:21,927 - INFO - Moving 'dream_mama_vs_real_mother_chapter_1b' to Artist folder '_Unknown' +2026-01-07 02:05:21,937 - INFO - Moving 'day_only_for_two' to Artist folder '_Unknown' +2026-01-07 02:05:21,947 - INFO - Moving '[Tohzai] Imitation Family Ch.1-2 [English] [Lazarus H]' to Artist folder '_Unknown' +2026-01-07 02:05:21,959 - INFO - Moving 'whats_a_bond' to Artist folder '_Unknown' +2026-01-07 02:05:21,969 - INFO - Moving '[Kira Hiroyoshi] Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing]' to Artist folder '_Unknown' +2026-01-07 02:05:21,979 - INFO - Moving 'ore_ga_daiteru_onna_wa_imouto_kamo_shirenai' to Artist folder '_Unknown' +2026-01-07 02:05:21,989 - INFO - Moving '(C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal]' to Artist folder '_Unknown' +2026-01-07 02:05:22,001 - INFO - Moving 'lethargic_sister_tolerates_her_brothers_pranks' to Artist folder '_Unknown' +2026-01-07 02:05:22,011 - INFO - Moving 'Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!)' to Artist folder '_Unknown' +2026-01-07 02:05:22,020 - INFO - Moving 'bitch_mamas_depraved_adultery' to Artist folder '_Unknown' +2026-01-07 02:05:22,029 - INFO - Moving '[Fence 14] Pseudo Sex Siblings Giji Sekkusu Kyo〇i (0-6)' to Artist folder '_Unknown' +2026-01-07 02:05:22,039 - INFO - Moving 'onee_sama_likes_anal' to Artist folder '_Unknown' +2026-01-07 02:05:22,049 - INFO - Moving 'camellia_the_first' to Artist folder '_Unknown' +2026-01-07 02:05:22,058 - INFO - Moving 'sudou_siblings_sexual_circumstances' to Artist folder '_Unknown' +2026-01-07 02:05:22,067 - INFO - Moving 'mama_and_john' to Artist folder '_Unknown' +2026-01-07 02:05:22,076 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:22,085 - INFO - Moving 'bakunyuu_bijukujo_wa_soku_hame_koubiana' to Artist folder '_Unknown' +2026-01-07 02:05:22,094 - INFO - Moving 'joshi_seito_o_suki_houdai_ni_hame_botebara_ni_shite_ok_na_sekai' to Artist folder '_Unknown' +2026-01-07 02:05:22,105 - INFO - Moving '[Puranpuman] A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation]' to Artist folder '_Unknown' +2026-01-07 02:05:22,116 - INFO - Moving '[Mustard Teikoku (Europia)] A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me' to Artist folder '_Unknown' +2026-01-07 02:05:22,125 - INFO - Moving 'hitozuma_saimin_appli_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:22,134 - INFO - Moving 'dagashi_wa_sake_ni_au' to Artist folder '_Unknown' +2026-01-07 02:05:22,142 - INFO - Moving 'the_night_my_sister_disappeared_i_made_love_to_my_mother' to Artist folder '_Unknown' +2026-01-07 02:05:22,151 - INFO - Moving 'tsubaki_democracy' to Artist folder '_Unknown' +2026-01-07 02:05:22,160 - INFO - Moving 'Kumiko_to_Warui_Musuko_(2015)' to Artist folder '_Unknown' +2026-01-07 02:05:22,169 - INFO - Moving 'this_teacher_in_her_fourtys_is_acting_like_a_young_girl_in_the_prime_if_her_life' to Artist folder '_Unknown' +2026-01-07 02:05:22,179 - INFO - Moving 'the_story_of_a_single_career_woman_in_hers_getting_addicted_to_a_relationship' to Artist folder '_Unknown' +2026-01-07 02:05:22,190 - INFO - Moving '[Kouda Tomohiro] Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty]' to Artist folder '_Unknown' +2026-01-07 02:05:22,200 - INFO - Moving '[Hikagemon (Tenpiboshi)] Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:22,210 - INFO - Moving 'rural_stories' to Artist folder '_Unknown' +2026-01-07 02:05:22,221 - INFO - Moving '[Sunagawa Tara] Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:22,229 - INFO - Moving '[Ginshio Honpo (Ginen)] Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs]' to Artist folder '_Unknown' +2026-01-07 02:05:22,238 - INFO - Moving 'my_daily_life_as_a_streamer' to Artist folder '_Unknown' +2026-01-07 02:05:22,246 - INFO - Moving 'possessed_and_thrusting' to Artist folder '_Unknown' +2026-01-07 02:05:22,254 - INFO - Moving 'mrs_miho_cant_stop_cheating_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:22,263 - INFO - Moving 'a_story_about_an_oneesan_being_impregnated_by_an_incubus' to Artist folder '_Unknown' +2026-01-07 02:05:22,272 - INFO - Moving 'wrung_dry_by_my_sister_every_night_under_the_sheets' to Artist folder '_Unknown' +2026-01-07 02:05:22,280 - INFO - Moving '[Yue] Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size' to Artist folder '_Unknown' +2026-01-07 02:05:22,289 - INFO - Moving 'a_country_mother_who_makes_her_son_horny' to Artist folder '_Unknown' +2026-01-07 02:05:22,301 - INFO - Moving 'sister_complex' to Artist folder '_Unknown' +2026-01-07 02:05:22,313 - INFO - Moving 'nao_hanpatsu_zokusei' to Artist folder '_Unknown' +2026-01-07 02:05:22,326 - INFO - Moving '[NCP (big g)] A Sticky Harem Full of Mother and Sister’s Milk ~ Drowning in My Stepmother and Stepsister’s Mother’s Milk Everyday [English] [LunaticSeibah]' to Artist folder '_Unknown' +2026-01-07 02:05:22,343 - INFO - Moving 'masochist_little_brothers_training' to Artist folder '_Unknown' +2026-01-07 02:05:22,355 - INFO - Moving 'SISUANA - sister hole' to Artist folder '_Unknown' +2026-01-07 02:05:22,366 - INFO - Moving 'my_neet_older_sister' to Artist folder '_Unknown' +2026-01-07 02:05:22,378 - INFO - Moving 'narmaya_attack' to Artist folder '_Unknown' +2026-01-07 02:05:22,389 - INFO - Moving 'Family Breakdown - Kurukuru - 家庭崩壊 Katei Houkai' to Artist folder '_Unknown' +2026-01-07 02:05:22,399 - INFO - Moving 'the_country_little_sister_and_the_tempation_of_innocence' to Artist folder '_Unknown' +2026-01-07 02:05:22,406 - INFO - Moving 'blood_lunch' to Artist folder '_Unknown' +2026-01-07 02:05:22,412 - INFO - Moving 'toppatsusei_bokki_shoukougun_jii_fuzen_o_soete' to Artist folder '_Unknown' +2026-01-07 02:05:22,419 - INFO - Moving 'Between Heave and Hell' to Artist folder '_Unknown' +2026-01-07 02:05:22,424 - INFO - Moving 'is_my_sister_seriously_ill' to Artist folder '_Unknown' +2026-01-07 02:05:22,429 - INFO - Moving 'mucchiri_megaton' to Artist folder '_Unknown' +2026-01-07 02:05:22,434 - INFO - Moving '[Kikunosukemaru] Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco]' to Artist folder '_Unknown' +2026-01-07 02:05:22,440 - INFO - Moving 'the_sex_life_of_the_tachibanas' to Artist folder '_Unknown' +2026-01-07 02:05:22,444 - INFO - Moving 'jitsu_wa_midara_na_chounyuu_sensei_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:22,448 - INFO - Moving '[K8ON] Naka no Warui Imouto to Nichijou - Nichijou ︱ Daily Life With My Sister Who I Don't Get Along With - Daily Life [English] [Solid Rose]' to Artist folder '_Unknown' +2026-01-07 02:05:22,455 - INFO - Moving 'gumi_chocolate_pine_koma_mangashuu' to Artist folder '_Unknown' +2026-01-07 02:05:22,461 - INFO - Moving 'temptation_downtime' to Artist folder '_Unknown' +2026-01-07 02:05:22,467 - INFO - Moving 'welcome_to_greenwood' to Artist folder '_Unknown' +2026-01-07 02:05:22,473 - INFO - Moving 'passionate_coriander' to Artist folder '_Unknown' +2026-01-07 02:05:22,478 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr]' to Artist folder '_Unknown' +2026-01-07 02:05:22,484 - INFO - Moving 'big_sister_with_drooping_tits_wants_to_fuck_her_little_brother' to Artist folder '_Unknown' +2026-01-07 02:05:22,489 - INFO - Moving 'sister_control' to Artist folder '_Unknown' +2026-01-07 02:05:22,493 - INFO - Moving 'a_book_about_using_hypno_to_fuck_my_little_sister' to Artist folder '_Unknown' +2026-01-07 02:05:22,497 - INFO - Moving 'moms_body_is_mine_mother_and_son_incest_sex_behind_dads_back' to Artist folder '_Unknown' +2026-01-07 02:05:22,503 - INFO - Moving 'dysfunctional_family' to Artist folder '_Unknown' +2026-01-07 02:05:22,507 - INFO - Moving 'pldk' to Artist folder '_Unknown' +2026-01-07 02:05:22,511 - INFO - Moving 'a_sticky_harem_full_of_mother_and_sisters_milk' to Artist folder '_Unknown' +2026-01-07 02:05:22,517 - INFO - Moving '[Kazuhiro] InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:22,522 - INFO - Moving 'big_boobs_shadowy_character_takes_revenge' to Artist folder '_Unknown' +2026-01-07 02:05:22,529 - INFO - Moving '[Shiraishi Nagisa] Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans]' to Artist folder '_Unknown' +2026-01-07 02:05:22,536 - INFO - Moving '[Juna Juna Juice] Starting tonight Baby bear will become [English]' to Artist folder '_Unknown' +2026-01-07 02:05:22,543 - INFO - Moving '20_years_from_now_you_make_me_a_little_nervous_chapter_1' to Artist folder '_Unknown' +2026-01-07 02:05:22,550 - INFO - Moving 'neteiru_okaasan_o_yaritai_houdai' to Artist folder '_Unknown' +2026-01-07 02:05:22,558 - INFO - Moving '[Mizu] Jumble Family [English] (Decensored)' to Artist folder '_Unknown' +2026-01-07 02:05:22,565 - INFO - Moving 'Ebony Family mating practices (english)' to Artist folder '_Unknown' +2026-01-07 02:05:22,573 - INFO - Moving '[Kasou Genjitsu (Hasekura Noise)] THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:22,582 - INFO - Moving 'Furachina_Jukujo_(2021)' to Artist folder '_Unknown' +2026-01-07 02:05:22,589 - INFO - Moving 'Kosmos ga Saita Hi ni Ch' to Artist folder '_Unknown' +2026-01-07 02:05:22,596 - INFO - Moving '[Airandou] Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend' to Artist folder '_Unknown' +2026-01-07 02:05:22,604 - INFO - Moving 'oni_no_musume_datte_konkatsu_shitai' to Artist folder '_Unknown' +2026-01-07 02:05:22,611 - INFO - Moving 'answer_checking' to Artist folder '_Unknown' +2026-01-07 02:05:22,618 - INFO - Moving 'big_sis_masturbation_life_my_masturbation_right_belongs_to_my_older_step_sisters' to Artist folder '_Unknown' +2026-01-07 02:05:22,624 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:22,631 - INFO - Moving '[Kasou Genjitsu (Hasekura Noise)] Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:22,638 - INFO - Moving 'maid_slave_collection' to Artist folder '_Unknown' +2026-01-07 02:05:22,643 - INFO - Moving 'lemon_honeymoon' to Artist folder '_Unknown' +2026-01-07 02:05:22,650 - INFO - Moving 'shall_i_get_it_out_for_you_mom' to Artist folder '_Unknown' +2026-01-07 02:05:22,657 - INFO - Moving 'family_plan_toono_suika_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:22,663 - INFO - Moving 'temptation_of_big_tits_elder_sister' to Artist folder '_Unknown' +2026-01-07 02:05:22,670 - INFO - Moving 'musuko_no_tomodachi_incubus_ni_miryou_sareta_yanmama_wa_mesu_ni_naru' to Artist folder '_Unknown' +2026-01-07 02:05:22,678 - INFO - Moving '[Megitune Works] Guigui Kuru Gibo to AV Kanshō ~ Fudeoroshi-hen ~ Watching Porn with my Pushy Stepmom ~The First Time~ [English] [WitzMacher]' to Artist folder '_Unknown' +2026-01-07 02:05:22,687 - INFO - Moving 'jukujo_sentai_paiters_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:22,692 - INFO - Moving 'ane_to_kanojo_to_hamedori_3p_shitemita' to Artist folder '_Unknown' +2026-01-07 02:05:22,697 - INFO - Moving 'ogre_girl_tades_favorite_things' to Artist folder '_Unknown' +2026-01-07 02:05:22,702 - INFO - Moving '[Izayoi no Kiki] Incest Room [English] [Tigoris Translates]' to Artist folder '_Unknown' +2026-01-07 02:05:22,708 - INFO - Moving 'trap_shiki_hunting' to Artist folder '_Unknown' +2026-01-07 02:05:22,713 - INFO - Moving 'hetappi_whiteday' to Artist folder '_Unknown' +2026-01-07 02:05:22,717 - INFO - Moving 'family_control' to Artist folder '_Unknown' +2026-01-07 02:05:22,722 - INFO - Moving 'a_story_of_my_oneesan_who_loves_me_too_much' to Artist folder '_Unknown' +2026-01-07 02:05:22,728 - INFO - Moving 'anemone_yuusuke_chapter_1x' to Artist folder '_Unknown' +2026-01-07 02:05:22,732 - INFO - Moving '[Shirono Mahiro] Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans]' to Artist folder '_Unknown' +2026-01-07 02:05:22,737 - INFO - Moving '[Itaba Hiroshi] Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo]' to Artist folder '_Unknown' +2026-01-07 02:05:22,742 - INFO - Moving '[Shirono Mahiro] Yokumakezuma no Sukebegao [English] {Doujins com}' to Artist folder '_Unknown' +2026-01-07 02:05:22,747 - INFO - Moving 'twentyfour_seven_sex_with_my_stepsister' to Artist folder '_Unknown' +2026-01-07 02:05:22,751 - INFO - Moving 'summer_stay_in' to Artist folder '_Unknown' +2026-01-07 02:05:22,756 - INFO - Moving 'the_romantic_ritual_with_fox_goddess_yuukosan_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:22,761 - INFO - Moving 'ookii_gimai' to Artist folder '_Unknown' +2026-01-07 02:05:22,767 - INFO - Moving 'sleepwalk_sex_with_your_crazy_stepbrother' to Artist folder '_Unknown' +2026-01-07 02:05:22,771 - INFO - Moving '[Shirono Mahiro] Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com}' to Artist folder '_Unknown' +2026-01-07 02:05:22,777 - INFO - Moving 'selfish_boyfriend_and_the_gentle_girlfriend' to Artist folder '_Unknown' +2026-01-07 02:05:22,782 - INFO - Moving '[NT Labo (NT Robo)] Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation]' to Artist folder '_Unknown' +2026-01-07 02:05:22,789 - INFO - Moving 'until_my_mother_in_law_is_pregnant' to Artist folder '_Unknown' +2026-01-07 02:05:22,796 - INFO - Moving 'grand_discovery_of_kink' to Artist folder '_Unknown' +2026-01-07 02:05:22,802 - INFO - Moving 'happy_life_amagami' to Artist folder '_Unknown' +2026-01-07 02:05:22,807 - INFO - Moving 'one_shot_a_summer' to Artist folder '_Unknown' +2026-01-07 02:05:22,813 - INFO - Moving 'bath_time_with_big_sis' to Artist folder '_Unknown' +2026-01-07 02:05:22,819 - INFO - Moving 'family_x' to Artist folder '_Unknown' +2026-01-07 02:05:22,827 - INFO - Moving '[Ginshio Honpo (Ginen)] Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese]' to Artist folder '_Unknown' +2026-01-07 02:05:22,836 - INFO - Moving '[Chotto B-sen] A Room You Can't Leave After Having Sex [English] [Black raven]' to Artist folder '_Unknown' +2026-01-07 02:05:22,847 - INFO - Moving 'haunted_property_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:22,858 - INFO - Moving 'imouto_aoba' to Artist folder '_Unknown' +2026-01-07 02:05:22,868 - INFO - Moving 'onehundred_my_older_sister_who_is_sick_after_illness' to Artist folder '_Unknown' +2026-01-07 02:05:22,880 - INFO - Moving 'that_person_and_my_queen_special_edition' to Artist folder '_Unknown' +2026-01-07 02:05:22,891 - INFO - Moving 'delima' to Artist folder '_Unknown' +2026-01-07 02:05:22,900 - INFO - Moving 'that_bitchy_boss_is_my_fuck_buddy' to Artist folder '_Unknown' +2026-01-07 02:05:22,911 - INFO - Moving 'Niku Benki Kanojo no Usui-san _ 육변기 여친의 우스이 양' to Artist folder '_Unknown' +2026-01-07 02:05:22,925 - INFO - Moving 'a_slutty_old_lady_will_tell_how_to_make_her_slutty_daughter_fall_for_you' to Artist folder '_Unknown' +2026-01-07 02:05:22,936 - INFO - Moving 'erotic_teacher_desperately' to Artist folder '_Unknown' +2026-01-07 02:05:22,947 - INFO - Moving '[36p] Ippu Tasai Seido Houan ga Kaketsusaremashita (English)' to Artist folder '_Unknown' +2026-01-07 02:05:22,957 - INFO - Moving 'the_housewives_of_the_luxury_apartment_are_to_dissatisfied_with_their_desires' to Artist folder '_Unknown' +2026-01-07 02:05:22,967 - INFO - Moving 'surrogacy_the_case_of_yuka_shirakawa' to Artist folder '_Unknown' +2026-01-07 02:05:22,978 - INFO - Moving '[Yue] Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation]' to Artist folder '_Unknown' +2026-01-07 02:05:22,988 - INFO - Moving 'my_relationship_with_my_sister' to Artist folder '_Unknown' +2026-01-07 02:05:22,998 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions]' to Artist folder '_Unknown' +2026-01-07 02:05:23,010 - INFO - Moving 'living_together_with_the_buxom_female_bully' to Artist folder '_Unknown' +2026-01-07 02:05:23,021 - INFO - Moving 'how_to_build_cock' to Artist folder '_Unknown' +2026-01-07 02:05:23,033 - INFO - Moving '[BNO (Utagawa Yosiero)] My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta' to Artist folder '_Unknown' +2026-01-07 02:05:23,044 - INFO - Moving 'my_oyakodon' to Artist folder '_Unknown' +2026-01-07 02:05:23,056 - INFO - Moving 'daisuki_na_classmate_ni_shikottemorautame' to Artist folder '_Unknown' +2026-01-07 02:05:23,068 - INFO - Moving 'enji_ni_somaru' to Artist folder '_Unknown' +2026-01-07 02:05:23,079 - INFO - Moving 'daily_life_with_my_sister_who_i_dont' to Artist folder '_Unknown' +2026-01-07 02:05:23,088 - INFO - Moving 'better_than_sex' to Artist folder '_Unknown' +2026-01-07 02:05:23,096 - INFO - Moving 'do_you_like_an_untidy_older_sister' to Artist folder '_Unknown' +2026-01-07 02:05:23,104 - INFO - Moving '[R Koubou (Ruzi)] Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:23,111 - INFO - Moving 'sibling_with_sister' to Artist folder '_Unknown' +2026-01-07 02:05:23,117 - INFO - Moving 'gikei_ni_netorare_ochita_tsubaki' to Artist folder '_Unknown' +2026-01-07 02:05:23,122 - INFO - Moving 'the_festival_of_summers_lustful_traditions' to Artist folder '_Unknown' +2026-01-07 02:05:23,127 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs]' to Artist folder '_Unknown' +2026-01-07 02:05:23,131 - INFO - Moving 'can_you_really_use_this_app_to_fuck_different_species' to Artist folder '_Unknown' +2026-01-07 02:05:23,135 - INFO - Moving '(C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL]' to Artist folder '_Unknown' +2026-01-07 02:05:23,139 - INFO - Moving 'boku_no_misatan' to Artist folder '_Unknown' +2026-01-07 02:05:23,143 - INFO - Moving '[Wakamatsu] Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English]' to Artist folder '_Unknown' +2026-01-07 02:05:23,147 - INFO - Moving 'thats_my_girl' to Artist folder '_Unknown' +2026-01-07 02:05:23,151 - INFO - Moving '[Juna Juna Juice] Also Tonight, Baby Bear will become Carnivorous [English]' to Artist folder '_Unknown' +2026-01-07 02:05:23,156 - INFO - Moving 'when_i_confessed_to_the_girl_im_interested_in_i_wasnt_allowed_to_go_out_with_her_but_was_given_the_ok_for_childmaking' to Artist folder '_Unknown' +2026-01-07 02:05:23,161 - INFO - Moving 'the_mother_of_the_oba_household' to Artist folder '_Unknown' +2026-01-07 02:05:23,165 - INFO - Moving '[UC] Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English]' to Artist folder '_Unknown' +2026-01-07 02:05:23,171 - INFO - Moving '[Kudamono Monogatari (Kuroishi Ringo)] Puraibe to Joousama - Private Queen [Eng]' to Artist folder '_Unknown' +2026-01-07 02:05:23,175 - INFO - Moving '(C102) [Kurumi Namiki (Mita Kurumi)] Sex Shinai to Teitokushitsu kara Deraremasen We Can’t Leave The Admiral’s Room Unless We Have Sex ♥ (Kantai Collection -KanColle-) [English] [ConTL]' to Artist folder '_Unknown' +2026-01-07 02:05:23,180 - INFO - Moving '[Hakukoukai (Shiramizu Mizuchi)] Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com]' to Artist folder '_Unknown' +2026-01-07 02:05:23,184 - INFO - Moving '[Sakai Hamachi] Bonds or Ties [English] [shaddy746] [Uncensored] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:23,189 - INFO - Moving 'cock_that_makes_tomboy_sisters_tap_out' to Artist folder '_Unknown' +2026-01-07 02:05:23,194 - INFO - Moving 'big_sis_ayaka' to Artist folder '_Unknown' +2026-01-07 02:05:23,200 - INFO - Moving 'Mom and Sis Clean Up [English] [rewrite]' to Artist folder '_Unknown' +2026-01-07 02:05:23,205 - INFO - Moving 'big_boobs_shadowy_character_takes_revenge_chapter_' to Artist folder '_Unknown' +2026-01-07 02:05:23,210 - INFO - Moving '[Shirono Mahiro] Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans]' to Artist folder '_Unknown' +2026-01-07 02:05:23,215 - INFO - Moving '[Nacchuushou (Amazon)] Naka no Warui Ane to Otouto ga Hatsujou shita Saru Mitai ni Koubi Shimakuru Hon - Natsu… Sore wa Osu to Mesu ga Majiwaru Kisetsu [Digital] (English)' to Artist folder '_Unknown' +2026-01-07 02:05:23,223 - INFO - Moving 'im_his_little_sister_slave' to Artist folder '_Unknown' +2026-01-07 02:05:23,228 - INFO - Moving 'Oretachi,_Kore_Kara_(2024)' to Artist folder '_Unknown' +2026-01-07 02:05:23,234 - INFO - Moving '[Juicebox Koujou (Juna Juna Juice)] Mukatsuku Imouto wa Chanto Shikaranakucha!!' to Artist folder '_Unknown' +2026-01-07 02:05:23,240 - INFO - Moving 'Sunday Funday [AI GENERATED]' to Artist folder '_Unknown' +2026-01-07 02:05:23,245 - INFO - Moving 'succubus_pearl_bonus_book' to Artist folder '_Unknown' +2026-01-07 02:05:23,251 - INFO - Moving 'sibling_switch' to Artist folder '_Unknown' +2026-01-07 02:05:23,260 - INFO - Moving 'pantsu_o_haita_dake_nanoni' to Artist folder '_Unknown' +2026-01-07 02:05:23,269 - INFO - Moving '[Shiraishi Nagisa] Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:23,279 - INFO - Moving 'gyan_colle' to Artist folder '_Unknown' +2026-01-07 02:05:23,289 - INFO - Moving 'didnt_you_know' to Artist folder '_Unknown' +2026-01-07 02:05:23,299 - INFO - Moving '[Yue] Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized]' to Artist folder '_Unknown' +2026-01-07 02:05:23,308 - INFO - Moving '[Kakinotanehitotsubu (Kakino Nashiko)] Saori to xxx Shinai to Derarenai Heya I Can’t Leave This Room Until I XXX Saori (Blue Archive) [English] [Shiririn] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:23,320 - INFO - Moving 'steamed_bun_kiss' to Artist folder '_Unknown' +2026-01-07 02:05:23,330 - INFO - Moving '[Pipasuta (Pipa)] Otokoun nai Hahaoya ni Koi o Shite Ninshinsasete… [BroadHareBreeder]' to Artist folder '_Unknown' +2026-01-07 02:05:23,342 - INFO - Moving 'madam_complex' to Artist folder '_Unknown' +2026-01-07 02:05:23,354 - INFO - Moving '[Puppukupu (Kawaisaw)] Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com}' to Artist folder '_Unknown' +2026-01-07 02:05:23,365 - INFO - Moving 'aggressive_mama' to Artist folder '_Unknown' +2026-01-07 02:05:23,376 - INFO - Moving '[Natsuzo] The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty]' to Artist folder '_Unknown' +2026-01-07 02:05:23,387 - INFO - Moving 'in_a_room_where_you_cant_leave_unless_you_have_sex' to Artist folder '_Unknown' +2026-01-07 02:05:23,399 - INFO - Moving 'cattle_sister' to Artist folder '_Unknown' +2026-01-07 02:05:23,410 - INFO - Moving 'we_went_overboard_with_our_home_work_this_evening' to Artist folder '_Unknown' +2026-01-07 02:05:23,424 - INFO - Moving 'Untitled Folder' to Artist folder '_Unknown' +2026-01-07 02:05:23,436 - INFO - Moving 'nozo_nico_don' to Artist folder '_Unknown' +2026-01-07 02:05:23,448 - INFO - Moving 'tonari_no_elf_mama' to Artist folder '_Unknown' +2026-01-07 02:05:23,460 - INFO - Moving 'Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 _ Guess Which One's Your Naked Busty JK Daughter Or Else! 2' to Artist folder '_Unknown' +2026-01-07 02:05:23,471 - INFO - Moving '(Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version]' to Artist folder '_Unknown' +2026-01-07 02:05:23,483 - INFO - Moving 'boshi_syndrome' to Artist folder '_Unknown' +2026-01-07 02:05:23,494 - INFO - Moving 'a_trip_back_home' to Artist folder '_Unknown' +2026-01-07 02:05:23,504 - INFO - Moving 'obaman_aneman_harem' to Artist folder '_Unknown' +2026-01-07 02:05:23,515 - INFO - Moving '(Arsenal) Imōto wa omoi yamai (yamai) Is my sister seriously ill [English]' to Artist folder '_Unknown' +2026-01-07 02:05:23,529 - INFO - Moving 'Take a break from working to fuck' to Artist folder '_Unknown' +2026-01-07 02:05:23,541 - INFO - Moving 'paipai_mashimashi_gal_bitch' to Artist folder '_Unknown' +2026-01-07 02:05:23,551 - INFO - Moving '[Okashi Koujou] That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo]' to Artist folder '_Unknown' +2026-01-07 02:05:23,562 - INFO - Moving 'gal_ga_saimin_kakeyou_to_shitara_kaeriuchi_saremashita' to Artist folder '_Unknown' +2026-01-07 02:05:23,573 - INFO - Moving '[Kazuhiro] Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:23,583 - INFO - Moving 'Ikiiki Dasshutsu Game with Chou Chirou Oji-san _ Lively Escape Game with Super Late Ejaculation Ojisan' to Artist folder '_Unknown' +2026-01-07 02:05:23,594 - INFO - Moving '(Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:23,605 - INFO - Moving 'the_succubus_army_invasion' to Artist folder '_Unknown' +2026-01-07 02:05:23,618 - INFO - Moving 'boku_no_misatan_chapter_' to Artist folder '_Unknown' +2026-01-07 02:05:23,629 - INFO - Moving 'Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku' to Artist folder '_Unknown' +2026-01-07 02:05:23,639 - INFO - Moving 'my_tall_and_busty_step_sister_gives' to Artist folder '_Unknown' +2026-01-07 02:05:23,650 - INFO - Moving 'about_sadako_being_stuck_on_the_computer_screen' to Artist folder '_Unknown' +2026-01-07 02:05:23,661 - INFO - Moving 'when_i_lost_the_use_of_my_arms_my_brother_started' to Artist folder '_Unknown' +2026-01-07 02:05:23,671 - INFO - Moving 'sister_ss_short_story' to Artist folder '_Unknown' +2026-01-07 02:05:23,683 - INFO - Moving '(C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC_TRANSLATIONS)' to Artist folder '_Unknown' +2026-01-07 02:05:23,695 - INFO - Moving 'motherly_love' to Artist folder '_Unknown' +2026-01-07 02:05:23,708 - INFO - Moving '[Satsuki Imonet] Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:23,721 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen]' to Artist folder '_Unknown' +2026-01-07 02:05:23,734 - INFO - Moving 'Suki Kirai Daisuki. Bangaihen _ Love • Hate • Really Love' to Artist folder '_Unknown' +2026-01-07 02:05:23,752 - INFO - Moving '[Ginshio Honpo (Ginen)] My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie]' to Artist folder '_Unknown' +2026-01-07 02:05:23,762 - INFO - Moving 'playing_the_kings_game_with_a_tanned_jk_oneesan' to Artist folder '_Unknown' +2026-01-07 02:05:23,770 - INFO - Moving '7days_toono_esuke' to Artist folder '_Unknown' +2026-01-07 02:05:23,778 - INFO - Moving '[Megitune Works] Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher]' to Artist folder '_Unknown' +2026-01-07 02:05:23,785 - INFO - Moving 'Sex_With_Many_Mamas_(2016)' to Artist folder '_Unknown' +2026-01-07 02:05:23,791 - INFO - Moving '[Kurogane Kenn] Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:23,798 - INFO - Moving 'oneechans_toy' to Artist folder '_Unknown' +2026-01-07 02:05:23,802 - INFO - Moving '[Ginshio Honpo (Ginen)] Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei]' to Artist folder '_Unknown' +2026-01-07 02:05:23,806 - INFO - Moving 'when_dad_and_mom_arent_home' to Artist folder '_Unknown' +2026-01-07 02:05:23,810 - INFO - Moving 'succubus_kingdom' to Artist folder '_Unknown' +2026-01-07 02:05:23,814 - INFO - Moving 'liko_the_mommy_pokemon' to Artist folder '_Unknown' +2026-01-07 02:05:23,818 - INFO - Moving 'FireShot' to Artist folder '_Unknown' +2026-01-07 02:05:23,822 - INFO - Moving 'getting_along_well_with_my_sister' to Artist folder '_Unknown' +2026-01-07 02:05:23,827 - INFO - Moving 'hypnosis_satisfaction' to Artist folder '_Unknown' +2026-01-07 02:05:23,832 - INFO - Moving 'otto_no_tame_no_ranshi_o_tanin_no_seishi' to Artist folder '_Unknown' +2026-01-07 02:05:23,836 - INFO - Moving '[Milkdou Shoukai (Milk Koubou)] Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English]' to Artist folder '_Unknown' +2026-01-07 02:05:23,846 - INFO - Moving 'hikki_mother_fucker' to Artist folder '_Unknown' +2026-01-07 02:05:23,858 - INFO - Moving 'meaty_minxes' to Artist folder '_Unknown' +2026-01-07 02:05:23,865 - INFO - Moving '[Zero no Mono] Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English]' to Artist folder '_Unknown' +2026-01-07 02:05:23,870 - INFO - Moving 'mob_reipu' to Artist folder '_Unknown' +2026-01-07 02:05:23,874 - INFO - Moving 'dosukebe_youkai_midaraga_no_goshujinsama' to Artist folder '_Unknown' +2026-01-07 02:05:23,878 - INFO - Moving '[Tobe] Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn]' to Artist folder '_Unknown' +2026-01-07 02:05:23,882 - INFO - Moving '[Sakurama Haruomi] Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:23,886 - INFO - Moving 'thermometer_boy_measuring_beast' to Artist folder '_Unknown' +2026-01-07 02:05:23,891 - INFO - Moving 'broconflict' to Artist folder '_Unknown' +2026-01-07 02:05:23,896 - INFO - Moving 'my_little_sisters_are_slutty_orcs' to Artist folder '_Unknown' +2026-01-07 02:05:23,900 - INFO - Moving '[Merenge Tenmondai (Kugurofu)] D no D wa Dosukebe no D (Goddess Of Victory Nikke)' to Artist folder '_Unknown' +2026-01-07 02:05:23,905 - INFO - Moving '[Nishikawa Kou] Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:23,910 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Musuko no Tomodachi (← Incubus) ni Miryou Sareta YanMama wa Mesu ni Naru [English] [Doujins com] [Incomplete]' to Artist folder '_Unknown' +2026-01-07 02:05:23,951 - INFO - Moving 'Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love' to Artist folder '_Unknown' +2026-01-07 02:05:23,961 - INFO - Moving 'my_sister_uses_my_trash_as_masturbation_material' to Artist folder '_Unknown' +2026-01-07 02:05:23,971 - INFO - Moving '[Pino] Boin [English]' to Artist folder '_Unknown' +2026-01-07 02:05:23,981 - INFO - Moving 'future_detective' to Artist folder '_Unknown' +2026-01-07 02:05:23,989 - INFO - Moving 'what_the_mother_does_for_the_sake_of_the_son' to Artist folder '_Unknown' +2026-01-07 02:05:23,998 - INFO - Moving '[Tawara Hiryuu] Super Lewd Demi-Human Transported to Another World For Breeding With Demi-Humans♥ 26 -Copulation in Another World- (COMIC Luxuria vol 02) [English] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:24,011 - INFO - Moving 'gifu_to_shimai_no_kizuna' to Artist folder '_Unknown' +2026-01-07 02:05:24,019 - INFO - Moving 'omae_no_you_na_maou_ga_iru_kai' to Artist folder '_Unknown' +2026-01-07 02:05:24,031 - INFO - Moving 'if_seems_like_everyone_except_me_has_lost_their_concept_of_eroticism' to Artist folder '_Unknown' +2026-01-07 02:05:24,041 - INFO - Moving 'oneechan_no_dokusho_jijou' to Artist folder '_Unknown' +2026-01-07 02:05:24,051 - INFO - Moving 'what_friend_do' to Artist folder '_Unknown' +2026-01-07 02:05:24,062 - INFO - Moving 'kinyoku_ake_no_kyoudai_kankei' to Artist folder '_Unknown' +2026-01-07 02:05:24,075 - INFO - Moving 'aniyome_milk_elder_sisterinlaws_milk' to Artist folder '_Unknown' +2026-01-07 02:05:24,085 - INFO - Moving 'Otouto_Imouto_(2007)' to Artist folder '_Unknown' +2026-01-07 02:05:24,096 - INFO - Moving 'idiopathic_erectile_syndrome_when_masturbation_fails' to Artist folder '_Unknown' +2026-01-07 02:05:24,106 - INFO - Moving 'sluttification_virus_anywhere_anytime_lets_fuck_already' to Artist folder '_Unknown' +2026-01-07 02:05:24,117 - INFO - Moving '[UC] Onee-Chan wo Hirottara… Picking up a Discarded Onee-Chan… (Mama Hame!) [English] [Tabunne Scans] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:24,131 - INFO - Moving 'absurd_mother_and_son_incest' to Artist folder '_Unknown' +2026-01-07 02:05:24,141 - INFO - Moving '[Ringoya (Alp)] Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE]' to Artist folder '_Unknown' +2026-01-07 02:05:24,154 - INFO - Moving 'idol_wa_fan_no_semen_tank_ninshinderella_girls' to Artist folder '_Unknown' +2026-01-07 02:05:24,168 - INFO - Moving '[Tawawa Delivery] Girl Dash - Family Diner (x3200) [FAKKU]' to Artist folder '_Unknown' +2026-01-07 02:05:24,179 - INFO - Moving 'incha_otouto_ga_nangoku_beach_de_kinpatsu' to Artist folder '_Unknown' +2026-01-07 02:05:24,190 - INFO - Moving '(C104) [広十練習帖 (広弥)] MY SISTER MORAN (勝利の女神:NIKKE)' to Artist folder '_Unknown' +2026-01-07 02:05:24,204 - INFO - Moving 'akira_nii_chan_who_ive_always_admired' to Artist folder '_Unknown' +2026-01-07 02:05:24,214 - INFO - Moving '[NesZ] My farmer aunt is having a problem [English]' to Artist folder '_Unknown' +2026-01-07 02:05:24,225 - INFO - Moving 'my_ar_glasses_can_see_various_stats_about_my_foster_sister' to Artist folder '_Unknown' +2026-01-07 02:05:24,236 - INFO - Moving 'dirty_lessons_improving_your_manhood_chapter_' to Artist folder '_Unknown' +2026-01-07 02:05:24,246 - INFO - Moving 'the_story_about_how_i_found_my_soulmate_when' to Artist folder '_Unknown' +2026-01-07 02:05:24,256 - INFO - Moving '[Hannya san] Forbidden lust' to Artist folder '_Unknown' +2026-01-07 02:05:24,269 - INFO - Moving 'shojo_ane_kangaeru' to Artist folder '_Unknown' +2026-01-07 02:05:24,279 - INFO - Moving 'neechan_to_sei_shori_shiteru' to Artist folder '_Unknown' +2026-01-07 02:05:24,291 - INFO - Moving '[moNmomo] Kono sensei yowasou w karakatte miyou~ w [English]' to Artist folder '_Unknown' +2026-01-07 02:05:24,302 - INFO - Moving 'fushoku_tensei_tamashii_kawattara_honki_dasu' to Artist folder '_Unknown' +2026-01-07 02:05:24,313 - INFO - Moving '[Mochi-ya (Karoti)] Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:24,325 - INFO - Moving 'i_woke_up_to_my_naked_apron_sister_and_tried_fucking_her' to Artist folder '_Unknown' +2026-01-07 02:05:24,337 - INFO - Moving 'little_sister_paradise' to Artist folder '_Unknown' +2026-01-07 02:05:24,350 - INFO - Moving 'my_mature_older_sister_the_crazy_convenient_relationship_of_an_older_sister_and_younger_brother_in_their_thirtys' to Artist folder '_Unknown' +2026-01-07 02:05:24,360 - INFO - Moving 'sex_season' to Artist folder '_Unknown' +2026-01-07 02:05:24,371 - INFO - Moving 'Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite _ Guess Which One's Your Naked Busty JK Daughter Or Else!' to Artist folder '_Unknown' +2026-01-07 02:05:24,381 - INFO - Moving 'that_pov_sex_thing' to Artist folder '_Unknown' +2026-01-07 02:05:24,392 - INFO - Moving 'hot_teacher' to Artist folder '_Unknown' +2026-01-07 02:05:24,403 - INFO - Moving 'two_siblings_fela_pure' to Artist folder '_Unknown' +2026-01-07 02:05:24,416 - INFO - Moving 'on_the_night_of_the_ceremony' to Artist folder '_Unknown' +2026-01-07 02:05:24,430 - INFO - Moving '[Takasugi Kou] Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing]' to Artist folder '_Unknown' +2026-01-07 02:05:24,444 - INFO - Moving '[Mustard Teikoku (Europia)] Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase' to Artist folder '_Unknown' +2026-01-07 02:05:24,457 - INFO - Moving 'father_stop_it' to Artist folder '_Unknown' +2026-01-07 02:05:24,467 - INFO - Moving 'organize' to Artist folder '_Unknown' +2026-01-07 02:05:24,476 - INFO - Moving 'seventy_two' to Artist folder '_Unknown' +2026-01-07 02:05:24,488 - INFO - Moving 'a_sister_who_wants_to_watch_siblings' to Artist folder '_Unknown' +2026-01-07 02:05:24,501 - INFO - Moving 'dirty_lessons_improving_your_manhood_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:24,511 - INFO - Moving 'from_now_on_you_are_my_livestock_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:24,523 - INFO - Moving 'a_room_you_cant_leave_after_having_sex' to Artist folder '_Unknown' +2026-01-07 02:05:24,534 - INFO - Moving 'narikawari_chapter_1' to Artist folder '_Unknown' +2026-01-07 02:05:24,545 - INFO - Moving '[Ookami Shoujo Dan (Mukoujima Tenro)] Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry' to Artist folder '_Unknown' +2026-01-07 02:05:24,557 - INFO - Moving 'welcome_to_the_brothel_school_festival' to Artist folder '_Unknown' +2026-01-07 02:05:24,568 - INFO - Moving '[Oroshi Ponzu] A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com}' to Artist folder '_Unknown' +2026-01-07 02:05:24,579 - INFO - Moving 'step_child_swapping_satsuki_imonet' to Artist folder '_Unknown' +2026-01-07 02:05:24,589 - INFO - Moving 'the_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother_in_laws_countryside_where_there_is_an_h_custom' to Artist folder '_Unknown' +2026-01-07 02:05:24,601 - INFO - Moving 'The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today' to Artist folder '_Unknown' +2026-01-07 02:05:24,607 - INFO - Moving 'friends_forever' to Artist folder '_Unknown' +2026-01-07 02:05:24,611 - INFO - Moving 'were_siblings_but_lets_tie_the_knot' to Artist folder '_Unknown' +2026-01-07 02:05:24,615 - INFO - Moving 'takebe_saorichan_to_iu_kanojo' to Artist folder '_Unknown' +2026-01-07 02:05:24,619 - INFO - Moving 'mega_milk' to Artist folder '_Unknown' +2026-01-07 02:05:24,625 - INFO - Moving '[Gomikasu Tarou] Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English]' to Artist folder '_Unknown' +2026-01-07 02:05:24,629 - INFO - Moving 'a_gentle_mommy_who_secret_makes' to Artist folder '_Unknown' +2026-01-07 02:05:24,634 - INFO - Moving 'i_got_an_elf_little_sister' to Artist folder '_Unknown' +2026-01-07 02:05:24,640 - INFO - Moving '[Yue] Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored]' to Artist folder '_Unknown' +2026-01-07 02:05:24,645 - INFO - Moving 'i_became_kirarachans_manager' to Artist folder '_Unknown' +2026-01-07 02:05:24,650 - INFO - Moving 'Sensei_wa_Ore_no_Dorei_Danshikou_wa_Midara_na_Kangoku_(2014)' to Artist folder '_Unknown' +2026-01-07 02:05:24,655 - INFO - Moving 'i_am_to_record_a_video_with_two_sadistic_women' to Artist folder '_Unknown' +2026-01-07 02:05:24,660 - INFO - Moving 'kusabi' to Artist folder '_Unknown' +2026-01-07 02:05:24,666 - INFO - Moving '[OVing (Obui)] Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games]' to Artist folder '_Unknown' +2026-01-07 02:05:24,671 - INFO - Moving 'the_imprisoned_flower' to Artist folder '_Unknown' +2026-01-07 02:05:24,677 - INFO - Moving 'semi_pro_racing_stars' to Artist folder '_Unknown' +2026-01-07 02:05:24,682 - INFO - Moving 'A SISTER WHO WANTS TO WATCH SIBLINGS' to Artist folder '_Unknown' +2026-01-07 02:05:24,687 - INFO - Moving 'Stalker MILF and Me, Her Sex Toy' to Artist folder '_Unknown' +2026-01-07 02:05:24,692 - INFO - Moving '[Nyuu Koubou Koromotake] Joushiki Kaihen♪ Ima kara Sex suru no! EX Hiinashi de Gangan Nakadashi shite morau kara Changed Common Sense ♪ We’re Gonna Have Sex Now! EX [English]' to Artist folder '_Unknown' +2026-01-07 02:05:24,700 - INFO - Moving 'crossdressing_hero_and_dancer_priestess_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:24,710 - INFO - Moving 'tsugumonotachi_hachi_hen' to Artist folder '_Unknown' +2026-01-07 02:05:24,717 - INFO - Moving 'leave_it_all_to_me_little_brother' to Artist folder '_Unknown' +2026-01-07 02:05:24,722 - INFO - Moving 'imouto_to_rekawatta_oniichan_wa_chapter' to Artist folder '_Unknown' +2026-01-07 02:05:24,731 - INFO - Moving 'Kanojo_ni_Naritai_Kimi_to_Boku_(2018)' to Artist folder '_Unknown' +2026-01-07 02:05:24,738 - INFO - Moving 'Saimin_Appli_(Yuma)_(2024)' to Artist folder '_Unknown' +2026-01-07 02:05:24,743 - INFO - Moving 'the_demon_lords_bride' to Artist folder '_Unknown' +2026-01-07 02:05:24,749 - INFO - Moving '[satsukiimonet (Satsuki Imonet)] HAMEDORI no YATSU♥ That POV Sex Thing♥ [English] [Digital]' to Artist folder '_Unknown' +2026-01-07 02:05:24,758 - INFO - Moving 'special_tit_envoy' to Artist folder '_Unknown' +2026-01-07 02:05:24,765 - INFO - Moving 'hot_spring_sex_with_mama_raikou' to Artist folder '_Unknown' +2026-01-07 02:05:24,777 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Succubus Shoukan [English][Fan trad]' to Artist folder '_Unknown' +2026-01-07 02:05:24,786 - INFO - Moving 'nanjamo_no_botebaraive_nanjamo_vs_metamonjamo' to Artist folder '_Unknown' +2026-01-07 02:05:24,796 - INFO - Moving 'akos_and_nozomis_discussion_of_masturbation_addictions' to Artist folder '_Unknown' +2026-01-07 02:05:24,808 - INFO - Moving 'Shitei ga Mechakucha Sex suru Ohanashi' to Artist folder '_Unknown' +2026-01-07 02:05:24,819 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com]' to Artist folder '_Unknown' +2026-01-07 02:05:24,835 - INFO - Moving 'my_cool_friend' to Artist folder '_Unknown' +2026-01-07 02:05:24,849 - INFO - Moving 'Akogare_no_Tomo_Mama_to_Matching_Shita_Kudan_(2024)' to Artist folder '_Unknown' +2026-01-07 02:05:24,862 - INFO - Moving 'non_stop_fucking_with_my_friends_mom' to Artist folder '_Unknown' +2026-01-07 02:05:24,875 - INFO - Moving 'Mama Haha Tsukushi Kouhen (' to Artist folder '_Unknown' +2026-01-07 02:05:24,887 - INFO - Moving 'Koyoi,_Gishiki_de_Hatemashou_(2019)' to Artist folder '_Unknown' +2026-01-07 02:05:24,899 - INFO - Moving 'I will make a single mother my wife' to Artist folder '_Unknown' +2026-01-07 02:05:24,910 - INFO - Moving 'barenai_you_ni' to Artist folder '_Unknown' +2026-01-07 02:05:24,921 - INFO - Moving 'adolescent_calculation' to Artist folder '_Unknown' +2026-01-07 02:05:24,933 - INFO - Moving 'moto_incha_no_kyonyuu_yariman_imouto_ga_erosugite_oniichan_wa_mou' to Artist folder '_Unknown' +2026-01-07 02:05:24,947 - INFO - Moving 'karinsans_hidden_side_and_her_naughty_videos_chapter' to Artist folder '_Unknown' +2026-01-07 02:23:31,537 - INFO - Starting organization in /comics/pendingorganization... +2026-01-07 02:23:31,582 - INFO - Searching Mangadex for: Jiko Hyouka Hikui Joshi ga Jibun no Karada ni Jishin Mocchau made no Katei The Way That a Low Self-Esteem Woman Gained Confidence in Her Body +2026-01-07 02:23:32,690 - INFO - Searching metadata for: Wakamatsu Jiko Hyouka Hikui Joshi ga Jibun no Karada ni Jishin Mocchau made no Katei The Way That a Low Self-Esteem Woman Gained Confidence in Her Body +2026-01-07 02:23:33,033 - INFO - Fetching metadata from: https://nhentai.net/g/434957/ +2026-01-07 02:23:33,227 - INFO - Processing: [Wakamatsu] Jiko Hyouka Hikui Joshi ga Jibun no Karada ni Jishin Mocchau made no Katei The Way That a Low Self-Esteem Woman Gained Confidence in Her Body [English] -> [Wakamatsu]_Jiko_Hyouka_Hikui_Joshi_ga_Jibun_no_Karada_ni_Jishin_Mocchau_made_no_Katei__The_Way_That_a_Low_Self-Esteem_Woman_Gained_Confidence_in_Her_Body_[English]_(2023) +2026-01-07 02:23:33,621 - INFO - Searching Mangadex for: PREGNANCY MANAGEMENT +2026-01-07 02:23:33,951 - INFO - Searching metadata for: Boole PREGNANCY MANAGEMENT +2026-01-07 02:23:34,095 - INFO - Fetching metadata from: https://nhentai.net/g/610207/ +2026-01-07 02:23:34,265 - INFO - Processing: [Boole] PREGNANCY MANAGEMENT [English] -> [Boole]_PREGNANCY_MANAGEMENT_[English]_(2025) +2026-01-07 02:23:38,107 - INFO - Searching Mangadex for: Ona-Ashi! ~A Job Helping Erotic Manga Artists Masturbate~ -- ONA-ASHI! ~Ero Mangaka no Onanie o Tetsudau Shigoto~ +2026-01-07 02:23:39,012 - INFO - Searching metadata for: Hijiri Tsukasa Ona-Ashi! ~A Job Helping Erotic Manga Artists Masturbate~ -- ONA-ASHI! ~Ero Mangaka no Onanie o Tetsudau Shigoto~ +2026-01-07 02:23:39,312 - INFO - Fetching metadata from: https://nhentai.net/g/620789/ +2026-01-07 02:23:39,494 - INFO - Processing: [Hijiri Tsukasa] Ona-Ashi! ~A Job Helping Erotic Manga Artists Masturbate~ -- ONA-ASHI! ~Ero Mangaka no Onanie o Tetsudau Shigoto~ [Digital] -> [Hijiri_Tsukasa]_Ona-Ashi!_~A_Job_Helping_Erotic_Manga_Artists_Masturbate~_--_ONA-ASHI!_~Ero_Mangaka_no_Onanie_o_Tetsudau_Shigoto~_[Digital]_(2026) +2026-01-07 02:23:45,157 - INFO - Searching Mangadex for: English] +2026-01-07 02:23:45,566 - INFO - Processing: [Tiramisu Tart (Kazuhiro)] Akuma-teki Kajou Service de Chinpo Baka ni Naru made Kyousei-teki ni Nuitekureru Succubus Genkai Tane Shibori Esthe Forced To Become A Penis Idiot Until The Demonic Reporting Service [English] -> Dr._Kim_of_London_(2024) +2026-01-07 02:23:49,004 - INFO - Searching Mangadex for: Otouto o Isei to Shite Isshiki Shite Shimau Mukuchi na Onee-chan A Quiet Older Sister Who Has Come to See Her Brother as a Man +2026-01-07 02:23:49,962 - INFO - Searching metadata for: Wakamatsu Otouto o Isei to Shite Isshiki Shite Shimau Mukuchi na Onee-chan A Quiet Older Sister Who Has Come to See Her Brother as a Man +2026-01-07 02:23:50,324 - INFO - Fetching metadata from: https://nhentai.net/g/451544/ +2026-01-07 02:23:50,513 - INFO - Processing: [Wakamatsu] Otouto o Isei to Shite Isshiki Shite Shimau Mukuchi na Onee-chan A Quiet Older Sister Who Has Come to See Her Brother as a Man [English] -> [Wakamatsu]_Otouto_o_Isei_to_Shite_Isshiki_Shite_Shimau_Mukuchi_na_Onee-chan__A_Quiet_Older_Sister_Who_Has_Come_to_See_Her_Brother_as_a_Man_[English]_(2023) +2026-01-07 02:23:51,171 - INFO - Searching Mangadex for: MTL] +2026-01-07 02:23:51,521 - INFO - Processing: [Akireru Shoujo (Akire)] Sweet sex life with naughty gal sisters [MTL] -> Yahoo,_Mt._Inari!_(2023) +2026-01-07 02:23:55,618 - INFO - Searching Mangadex for: Dain Kazoku - Falling Lewd Family MTL +2026-01-07 02:23:56,166 - INFO - Searching metadata for: Ozy Dain Kazoku - Falling Lewd Family MTL +2026-01-07 02:23:56,334 - INFO - Fetching metadata from: https://nhentai.net/g/615002/ +2026-01-07 02:23:56,682 - INFO - Processing: [Ozy] Dain Kazoku - Falling Lewd Family [Digital] MTL -> [Ozy]_Dain_Kazoku_-_Falling_Lewd_Family_[English]_[MTL]_[Digital]_(2025) +2026-01-07 02:24:11,533 - INFO - Searching Mangadex for: Tsuyatsuma Jouji MTL +2026-01-07 02:24:11,960 - INFO - Searching metadata for: Ozy Tsuyatsuma Jouji MTL +2026-01-07 02:24:12,165 - INFO - Fetching metadata from: https://nhentai.net/g/615881/ +2026-01-07 02:24:12,467 - INFO - Processing: [Ozy] Tsuyatsuma Jouji [Digital] MTL -> [Ozy]_Tsuyatsuma_Jouji_[English]_[MTL]_(2025) +2026-01-07 02:24:28,184 - INFO - Searching Mangadex for: Hands-On Draining with Three Succubus Sisters +2026-01-07 02:24:28,666 - INFO - Searching metadata for: Hands-On Draining with Three Succubus Sisters +2026-01-07 02:24:28,901 - INFO - Fetching metadata from: https://nhentai.net/g/619320/ +2026-01-07 02:24:29,267 - INFO - Processing: Hands-On Draining with Three Succubus Sisters 1 -> Hands-On_Draining_with_Three_Succubus_Sisters_(akatsuki_myuutoakatuki_myuuto)_(2025) +2026-01-07 02:24:34,727 - INFO - Searching Mangadex for: Ikemen Ouji-sama na Onnanoko, Kayowai Otome na Otokonoko A Dashing, Handsome Woman and a Frail, Maidenly Boy +2026-01-07 02:24:35,567 - INFO - Searching metadata for: Wakamatsu Ikemen Ouji-sama na Onnanoko, Kayowai Otome na Otokonoko A Dashing, Handsome Woman and a Frail, Maidenly Boy +2026-01-07 02:24:35,850 - INFO - Fetching metadata from: https://nhentai.net/g/459742/ +2026-01-07 02:24:36,012 - INFO - Processing: [Wakamatsu] Ikemen Ouji-sama na Onnanoko, Kayowai Otome na Otokonoko A Dashing, Handsome Woman and a Frail, Maidenly Boy [English] -> [Wakamatsu]_Ikemen_Ouji-sama_na_Onnanoko,_Kayowai_Otome_na_Otokonoko__A_Dashing,_Handsome_Woman_and_a_Frail,_Maidenly_Boy_[English]_(2023) +2026-01-07 02:24:36,863 - INFO - Searching Mangadex for: Honne Kikareru to Dorodoro shita Yokubou o Shoujiki ni Icchau Onee-san A Young Lady Who, When Asked, Honestly Reveals Her Filthy Desires +2026-01-07 02:24:37,712 - INFO - Searching metadata for: Wakamatsu Honne Kikareru to Dorodoro shita Yokubou o Shoujiki ni Icchau Onee-san A Young Lady Who, When Asked, Honestly Reveals Her Filthy Desires +2026-01-07 02:24:37,936 - INFO - Fetching metadata from: https://nhentai.net/g/459741/ +2026-01-07 02:24:38,099 - INFO - Processing: [Wakamatsu] Honne Kikareru to Dorodoro shita Yokubou o Shoujiki ni Icchau Onee-san A Young Lady Who, When Asked, Honestly Reveals Her Filthy Desires [English] -> [Wakamatsu]_Honne_Kikareru_to_Dorodoro_shita_Yokubou_o_Shoujiki_ni_Icchau_Onee-san__A_Young_Lady_Who,_When_Asked,_Honestly_Reveals_Her_Filthy_Desires_[English]_(2023) +2026-01-07 02:24:46,983 - INFO - Searching Mangadex for: Kyasha to Homan no Ma Ni Tatasa Reru 3P Threesome Caught Between Slim And Voluptuous +2026-01-07 02:24:47,779 - INFO - Searching metadata for: Wakamatsu Kyasha to Homan no Ma Ni Tatasa Reru 3P Threesome Caught Between Slim And Voluptuous +2026-01-07 02:24:48,051 - INFO - Fetching metadata from: https://nhentai.net/g/581282/ +2026-01-07 02:24:48,254 - INFO - Processing: [Wakamatsu] Kyasha to Homan no Ma Ni Tatasa Reru 3P Threesome Caught Between Slim And Voluptuous [English] -> [Wakamatsu]_Kyasha_to_Homan_no_Ma_Ni_Tatasa_Reru_3P__Threesome_Caught_Between_Slim_And_Voluptuous_[English]_(2025) +2026-01-07 02:24:48,712 - INFO - Searching Mangadex for: F07GQ~2 +2026-01-07 02:24:49,036 - INFO - Searching metadata for: F07GQ~2 +2026-01-07 02:24:49,177 - INFO - Searching Hentai2Read for: F07GQ~2 +2026-01-07 02:24:49,647 - INFO - Searching MangaUpdates for: F07GQ~2 +2026-01-07 02:24:50,043 - INFO - Processing: _F07GQ~2 -> 2x2xX_(2025) +2026-01-07 02:24:53,622 - INFO - Searching Mangadex for: Mezame ~Mesu no Honnou~ +2026-01-07 02:24:54,059 - INFO - Processing: [Urico Take] Mezame ~Mesu no Honnou~ [English] [SDTLs] [Digital] -> Kanojo_Kanojo_Kanojo!!!_(2023) +2026-01-07 02:25:00,035 - INFO - Searching Mangadex for: 9ODE5~0 +2026-01-07 02:25:00,377 - INFO - Searching metadata for: 9ODE5~0 +2026-01-07 02:25:00,525 - INFO - Searching Hentai2Read for: 9ODE5~0 +2026-01-07 02:25:00,907 - INFO - Searching MangaUpdates for: 9ODE5~0 +2026-01-07 02:25:01,152 - INFO - Processing: _9ODE5~0 -> 0x0_Memories_(2007) +2026-01-07 02:25:03,655 - INFO - Searching Mangadex for: NATIONAL FERTILITY COMMISSION +2026-01-07 02:25:04,062 - INFO - Searching metadata for: Boole NATIONAL FERTILITY COMMISSION +2026-01-07 02:25:04,220 - INFO - Fetching metadata from: https://nhentai.net/g/610226/ +2026-01-07 02:25:04,404 - INFO - Processing: [Boole] NATIONAL FERTILITY COMMISSION 2 [English] -> [Boole]_NATIONAL_FERTILITY_COMMISSION_2_[English]_(2025) +2026-01-07 02:25:04,768 - INFO - Searching Mangadex for: Time Loop de Kaihatsu Sareru Sister Timeloop and Sex and Nun +2026-01-07 02:25:05,361 - INFO - Searching metadata for: Boole Time Loop de Kaihatsu Sareru Sister Timeloop and Sex and Nun +2026-01-07 02:25:05,569 - INFO - Fetching metadata from: https://nhentai.net/g/610206/ +2026-01-07 02:25:05,757 - INFO - Processing: [Boole] Time Loop de Kaihatsu Sareru Sister Timeloop and Sex and Nun [English] -> [Boole]_Time_Loop_de_Kaihatsu_Sareru_Sister__Timeloop_and_Sex_and_Nun_[English]_[Decensored]_(2025) +2026-01-07 02:25:08,101 - INFO - Searching Mangadex for: EnglishCookie Cruncher] +2026-01-07 02:25:08,497 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro EnglishCookie Cruncher] +2026-01-07 02:25:08,635 - INFO - Searching metadata for: EnglishCookie Cruncher] +2026-01-07 02:25:08,762 - INFO - Searching Hentai2Read for: EnglishCookie+Cruncher] +2026-01-07 02:25:09,089 - INFO - Searching MangaUpdates for: EnglishCookie Cruncher] +2026-01-07 02:25:09,404 - INFO - Processing: [Tiramisu Tart (Kazuhiro)] My Slob Of An Older Sister's Accidental Adult Stream Caused So Much Hype, She Pivoted To Doing Brother X Sister Sex Streams! [English] [Cookie Cruncher] -> Zhuo_Dao_Ren_(2024) +2026-01-07 02:25:11,546 - INFO - Searching Mangadex for: Koushinchou de MeguTai na Kanojo ga Makechau Hi The Day I Won Against My Very Tall Girlfriend +2026-01-07 02:25:12,282 - INFO - Searching metadata for: Wakamatsu Koushinchou de MeguTai na Kanojo ga Makechau Hi The Day I Won Against My Very Tall Girlfriend +2026-01-07 02:25:12,577 - INFO - Fetching metadata from: https://nhentai.net/g/499947/ +2026-01-07 02:25:12,745 - INFO - Processing: [Wakamatsu] Koushinchou de MeguTai na Kanojo ga Makechau Hi The Day I Won Against My Very Tall Girlfriend [English] -> [Wakamatsu]_Koushinchou_de_MeguTai_na_Kanojo_ga_Makechau_Hi__The_Day_I_Won_Against_My_Very_Tall_Girlfriend_[English]_(2024) +2026-01-07 02:25:13,262 - INFO - Searching Mangadex for: Rikutsuppoi Kouhai-chan to Rikutsunuki de Majiwaru made no Hanashi Having Sex with My Hyperrational Junior Until She Loses All Rationality +2026-01-07 02:25:14,180 - INFO - Searching metadata for: Wakamatsu Rikutsuppoi Kouhai-chan to Rikutsunuki de Majiwaru made no Hanashi Having Sex with My Hyperrational Junior Until She Loses All Rationality +2026-01-07 02:25:14,457 - INFO - Fetching metadata from: https://nhentai.net/g/451547/ +2026-01-07 02:25:14,708 - INFO - Processing: [Wakamatsu] Rikutsuppoi Kouhai-chan to Rikutsunuki de Majiwaru made no Hanashi Having Sex with My Hyperrational Junior Until She Loses All Rationality [English] -> [Wakamatsu]_Rikutsuppoi_Kouhai-chan_to_Rikutsunuki_de_Majiwaru_made_no_Hanashi__Having_Sex_with_My_Hyperrational_Junior_Until_She_Loses_All_Rationality_[English]_(2023) +2026-01-07 02:25:15,221 - INFO - Searching Mangadex for: Okasare Imouto Misaki Violated little sister Misaki +2026-01-07 02:25:15,729 - INFO - Searching metadata for: Kiliu Okasare Imouto Misaki Violated little sister Misaki +2026-01-07 02:25:15,885 - INFO - Fetching metadata from: https://nhentai.net/g/611722/ +2026-01-07 02:25:16,060 - INFO - Processing: [Kiliu] Okasare Imouto Misaki (Haha mo Okasareru yo!) Violated little sister Misaki (The mother gets raped too!) (COMIC Masyo 2025-12) [English] [Digital] -> [Kiliu]_Okasare_Imouto_Misaki_(Haha_mo_Okasareru_yo!)__Violated_little_sister_Misaki_(The_mother_gets_raped_too!)_(COMIC_Masyo_2025-12)_[English]_[Digital]_(2025) +2026-01-07 02:25:17,585 - INFO - Searching Mangadex for: Sodachi no Yosasou na Kihin Afureru Onee-san no Kotobazukai The Speech of a Refined and Elegant Young Woman from a Good Family +2026-01-07 02:25:18,571 - INFO - Searching metadata for: Wakamatsu Sodachi no Yosasou na Kihin Afureru Onee-san no Kotobazukai The Speech of a Refined and Elegant Young Woman from a Good Family +2026-01-07 02:25:18,828 - INFO - Fetching metadata from: https://nhentai.net/g/434032/ +2026-01-07 02:25:19,014 - INFO - Processing: [Wakamatsu] Sodachi no Yosasou na Kihin Afureru Onee-san no Kotobazukai The Speech of a Refined and Elegant Young Woman from a Good Family [English] -> [Wakamatsu]_Sodachi_no_Yosasou_na_Kihin_Afureru_Onee-san_no_Kotobazukai__The_Speech_of_a_Refined_and_Elegant_Young_Woman_from_a_Good_Family_[English]_(2022) +2026-01-07 02:25:19,151 - INFO - Searching Mangadex for: 同人誌 +2026-01-07 02:25:19,495 - INFO - Processing: (同人誌) [アトリエフジミヤ (フジミヤ子龍)] 犬猿の仲の男女がセックスしないと出られない部屋に閉じ込められるとどうなるのか実験してみた (オリジナル).zip -> Watashi-tachi_ga_Watanare_Doujinshi_Tsukuru_Wake_Nai_jan,_Murimuri!!_(※Muri_ja_Nakatta!)_(2025) +2026-01-07 02:25:24,674 - INFO - Searching Mangadex for: Tatsumaki-ppoi Tsuma +2026-01-07 02:25:25,090 - INFO - Searching metadata for: Mogudan Tatsumaki-ppoi Tsuma +2026-01-07 02:25:25,280 - INFO - Fetching metadata from: https://nhentai.net/g/616136/ +2026-01-07 02:25:25,468 - INFO - Processing: [Mogudan] Tatsumaki-ppoi Tsuma (One Punch Man) -> [Mogudan]_Tatsumaki-ppoi_Tsuma_(One_Punch_Man)_[English]_(2025) +2026-01-07 02:25:27,477 - INFO - Searching Mangadex for: Ikemen Ouji-sama na Onnanoko, Kayowai Otome na Otokonoko The Handsome Princely Girl, The Frail Girly Femboy +2026-01-07 02:25:28,311 - INFO - Searching metadata for: Wakamatsu Ikemen Ouji-sama na Onnanoko, Kayowai Otome na Otokonoko The Handsome Princely Girl, The Frail Girly Femboy +2026-01-07 02:25:28,490 - INFO - Fetching metadata from: https://nhentai.net/g/459697/ +2026-01-07 02:25:28,651 - INFO - Processing: [Wakamatsu] Ikemen Ouji-sama na Onnanoko, Kayowai Otome na Otokonoko The Handsome Princely Girl, The Frail Girly Femboy [English] -> [Wakamatsu]_Ikemen_Ouji-sama_na_Onnanoko,_Kayowai_Otome_na_Otokonoko__The_Handsome_Princely_Girl,_The_Frail_Girly_Femboy_[English]_(2023) +2026-01-07 02:25:29,181 - INFO - Searching Mangadex for: Gyaku Bunny Cast no Namaiki Anal o Namete Sutte Hametaoshitai +2026-01-07 02:25:29,712 - INFO - Searching metadata for: Gyaku Bunny Cast no Namaiki Anal o Namete Sutte Hametaoshitai +2026-01-07 02:25:29,954 - INFO - Fetching metadata from: https://nhentai.net/g/595765/ +2026-01-07 02:25:30,147 - INFO - Processing: Gyaku Bunny Cast no Namaiki Anal o Namete Sutte Hametaoshitai -> [Tiramisu_Tart_(Kazuhiro)]_Gyaku_Bunny_Cast_no_Namaiki_Anal_o_Namete_Sutte_Hametaoshitai_[English]_(2025) +2026-01-07 02:25:32,010 - INFO - Searching Mangadex for: NU6D7~0 +2026-01-07 02:25:32,327 - INFO - Searching metadata for: NU6D7~0 +2026-01-07 02:25:32,458 - INFO - Searching Hentai2Read for: NU6D7~0 +2026-01-07 02:25:32,799 - INFO - Searching MangaUpdates for: NU6D7~0 +2026-01-07 02:25:32,940 - INFO - Processing: _NU6D7~0 -> 0x0_Memories_(2007) +2026-01-07 02:25:36,564 - INFO - Searching Mangadex for: Matching Joushi Aishou wa Karada de Check Matched up with my Boss ~ Checking the Compatibility of our Bodies ~ +2026-01-07 02:25:37,459 - INFO - Searching metadata for: ICE Matching Joushi Aishou wa Karada de Check Matched up with my Boss ~ Checking the Compatibility of our Bodies ~ +2026-01-07 02:25:37,728 - INFO - Fetching metadata from: https://nhentai.net/g/408257/ +2026-01-07 02:25:37,903 - INFO - Processing: [ICE] Matching Joushi Aishou wa Karada de Check Matched up with my Boss ~ Checking the Compatibility of our Bodies ~ (ANGEL Club 2022-03) [English] [Digital] -> [ICE]_Matching_Joushi_Aishou_wa_Karada_de_Check__Matched_up_with_my_Boss_~_Checking_the_Compatibility_of_our_Bodies_~_(ANGEL_Club_2022-03)_[English]_[Digital]_(2022) +2026-01-07 02:25:38,712 - INFO - Searching Mangadex for: Shikarikata ga Yasashi Sugiru Onee-san ga Kairaku Semesarechau Hanashi A Lady With a Soft Approach to Discipline is Assailed by Pleasure +2026-01-07 02:25:39,658 - INFO - Searching metadata for: Wakamatsu Shikarikata ga Yasashi Sugiru Onee-san ga Kairaku Semesarechau Hanashi A Lady With a Soft Approach to Discipline is Assailed by Pleasure +2026-01-07 02:25:39,935 - INFO - Fetching metadata from: https://nhentai.net/g/451537/ +2026-01-07 02:25:40,127 - INFO - Processing: [Wakamatsu] Shikarikata ga Yasashi Sugiru Onee-san ga Kairaku Semesarechau Hanashi A Lady With a Soft Approach to Discipline is Assailed by Pleasure [English] -> [Wakamatsu]_Shikarikata_ga_Yasashi_Sugiru_Onee-san_ga_Kairaku_Semesarechau_Hanashi__A_Lady_With_a_Soft_Approach_to_Discipline_is_Assailed_by_Pleasure_[English]_(2023) +2026-01-07 02:25:47,076 - INFO - Searching Mangadex for: Hands-On Draining with Three Succubus Sisters +2026-01-07 02:25:47,598 - INFO - Searching metadata for: Hands-On Draining with Three Succubus Sisters +2026-01-07 02:25:47,790 - INFO - Fetching metadata from: https://nhentai.net/g/619320/ +2026-01-07 02:25:48,079 - INFO - Processing: Hands-On Draining with Three Succubus Sisters 2 -> Hands-On_Draining_with_Three_Succubus_Sisters_(akatsuki_myuutoakatuki_myuuto)_(2025) +2026-01-07 02:25:53,723 - INFO - Searching Mangadex for: Mukashi wa Dousei no You ni Sesshiteta Osananajimi no Koto o Isei to Shite Ninshiki Shita Hi +2026-01-07 02:25:54,521 - INFO - Searching metadata for: Wakamatsu Mukashi wa Dousei no You ni Sesshiteta Osananajimi no Koto o Isei to Shite Ninshiki Shita Hi +2026-01-07 02:25:54,835 - INFO - Fetching metadata from: https://nhentai.net/g/457180/ +2026-01-07 02:25:55,001 - INFO - Processing: [Wakamatsu] Mukashi wa Dousei no You ni Sesshiteta Osananajimi no Koto o Isei to Shite Ninshiki Shita Hi [English] [Uncle Bane] -> [Wakamatsu]_Mukashi_wa_Dousei_no_You_ni_Sesshiteta_Osananajimi_no_Koto_o_Isei_to_Shite_Ninshiki_Shita_Hi_[English]_[Uncle_Bane]_(2023) +2026-01-07 02:25:55,549 - INFO - Searching Mangadex for: Koushinchou de MeguTai na Kanojo to Turn-sei no Sex Suru Ohanashi Turn-Taking Sex With My Very Tall Girlfriend +2026-01-07 02:25:56,361 - INFO - Searching metadata for: Wakamatsu Koushinchou de MeguTai na Kanojo to Turn-sei no Sex Suru Ohanashi Turn-Taking Sex With My Very Tall Girlfriend +2026-01-07 02:25:56,822 - INFO - Fetching metadata from: https://nhentai.net/g/459743/ +2026-01-07 02:25:56,991 - INFO - Processing: [Wakamatsu] Koushinchou de MeguTai na Kanojo to Turn-sei no Sex Suru Ohanashi Turn-Taking Sex With My Very Tall Girlfriend [English] -> [Wakamatsu]_Koushinchou_de_MeguTai_na_Kanojo_to_Turn-sei_no_Sex_Suru_Ohanashi__Turn-Taking_Sex_With_My_Very_Tall_Girlfriend_[English]_(2023) +2026-01-07 02:25:57,557 - INFO - Searching Mangadex for: Taisha ga Yoi Rikujoubu Joshi to Asedaku de Taiekimamire na Noumitsu Sex Suru Hanashi Hot and Sweaty Sex With a Girl From the Track Team +2026-01-07 02:25:58,489 - INFO - Searching metadata for: Wakamatsu Taisha ga Yoi Rikujoubu Joshi to Asedaku de Taiekimamire na Noumitsu Sex Suru Hanashi Hot and Sweaty Sex With a Girl From the Track Team +2026-01-07 02:25:58,788 - INFO - Fetching metadata from: https://nhentai.net/g/460124/ +2026-01-07 02:25:58,958 - INFO - Processing: [Wakamatsu] Taisha ga Yoi Rikujoubu Joshi to Asedaku de Taiekimamire na Noumitsu Sex Suru Hanashi Hot and Sweaty Sex With a Girl From the Track Team [English] -> [Wakamatsu]_Taisha_ga_Yoi_Rikujoubu_Joshi_to_Asedaku_de_Taiekimamire_na_Noumitsu_Sex_Suru_Hanashi__Hot_and_Sweaty_Sex_With_a_Girl_From_the_Track_Team_[English]_(2023) +2026-01-07 02:25:59,526 - INFO - Searching Mangadex for: Ippai Amayakashite Boku o Dame ni Shiyou to Suru Koakuma Onee-san no Hanashi Spoiled Silly by a Naughty Older Woman +2026-01-07 02:26:00,392 - INFO - Searching metadata for: Wakamatsu Ippai Amayakashite Boku o Dame ni Shiyou to Suru Koakuma Onee-san no Hanashi Spoiled Silly by a Naughty Older Woman +2026-01-07 02:26:00,650 - INFO - Fetching metadata from: https://nhentai.net/g/460122/ +2026-01-07 02:26:00,814 - INFO - Processing: [Wakamatsu] Ippai Amayakashite Boku o Dame ni Shiyou to Suru Koakuma Onee-san no Hanashi Spoiled Silly by a Naughty Older Woman [English] -> [Wakamatsu]_Ippai_Amayakashite_Boku_o_Dame_ni_Shiyou_to_Suru_Koakuma_Onee-san_no_Hanashi__Spoiled_Silly_by_a_Naughty_Older_Woman_[English]_(2023) +2026-01-07 02:26:01,317 - INFO - Searching Mangadex for: Inran Shimai Seikatsu MTL +2026-01-07 02:26:01,685 - INFO - Searching metadata for: Aoto Kage Inran Shimai Seikatsu MTL +2026-01-07 02:26:01,857 - INFO - Fetching metadata from: https://nhentai.net/g/620416/ +2026-01-07 02:26:02,214 - INFO - Processing: [Aoto Kage] Inran Shimai Seikatsu [Digital] MTL -> [Aoto_Kage]_Inran_Shimai_Seikatsu_[Chinese]_[MTL]_[Digital]_(2026) +2026-01-07 02:26:14,443 - INFO - Searching Mangadex for: RIO +2026-01-07 02:26:14,861 - INFO - Processing: [BOOLE] RIO [English] -> Mahouka_Koukou_no_Rettousei_-_Nankai_Soujou-hen_(2021) +2026-01-07 02:26:15,081 - INFO - Searching Mangadex for: DA RA SHI NA SISTER +2026-01-07 02:26:15,435 - INFO - Searching metadata for: IAPOC DA RA SHI NA SISTER +2026-01-07 02:26:15,697 - INFO - Fetching metadata from: https://nhentai.net/g/620692/ +2026-01-07 02:26:15,877 - INFO - Processing: [IAPOC] DA RA SHI NA SISTER Ch 2 Careless Sister Ch 2 (COMIC ExE 37) [English] -> [IAPOC]_DA_RA_SHI_NA_SISTER_Ch.2__Careless_Sister_Ch.2_(COMIC_ExE_37)_[English]_(2026) +2026-01-07 02:26:18,647 - INFO - Searching Mangadex for: DigitalEnglishmeganekun tl] +2026-01-07 02:26:19,079 - INFO - Searching metadata for: Shin Hijiridou Honpo (Hijiri Tsukasa DigitalEnglishmeganekun tl] +2026-01-07 02:26:19,268 - INFO - Searching metadata for: DigitalEnglishmeganekun tl] +2026-01-07 02:26:19,397 - INFO - Searching Hentai2Read for: DigitalEnglishmeganekun+tl] +2026-01-07 02:26:19,743 - INFO - Searching MangaUpdates for: DigitalEnglishmeganekun tl] +2026-01-07 02:26:19,968 - INFO - Processing: [Shin Hijiridou Honpo (Hijiri Tsukasa)] H na Fuushuu ga Aru Inaka no Shinseki ga, Zenin Sukebe Sugiru Hanashi 2 The Story of My Relatives in the Countryside with Naughty Customs 2 [Digital] [English] [meganekun_tl] -> Soyosoyo's_Works_(2002) +2026-01-07 02:26:22,388 - INFO - Searching Mangadex for: LLQQ0~S +2026-01-07 02:26:22,734 - INFO - Searching metadata for: LLQQ0~S +2026-01-07 02:26:22,876 - INFO - Searching Hentai2Read for: LLQQ0~S +2026-01-07 02:26:23,191 - INFO - Searching MangaUpdates for: LLQQ0~S +2026-01-07 02:26:23,467 - INFO - Processing: _LLQQ0~S -> S's_(1999) +2026-01-07 02:26:25,503 - INFO - Searching Mangadex for: Doutei-kun to Keiken Houfu na Onee-san ga Turn-sei Sex Suru Hanashi Turn-Taking Sex Between a Virgin and an Experienced Older Woman +2026-01-07 02:26:26,462 - INFO - Searching metadata for: Wakamatsu Doutei-kun to Keiken Houfu na Onee-san ga Turn-sei Sex Suru Hanashi Turn-Taking Sex Between a Virgin and an Experienced Older Woman +2026-01-07 02:26:26,860 - INFO - Fetching metadata from: https://nhentai.net/g/459740/ +2026-01-07 02:26:27,073 - INFO - Processing: [Wakamatsu] Doutei-kun to Keiken Houfu na Onee-san ga Turn-sei Sex Suru Hanashi Turn-Taking Sex Between a Virgin and an Experienced Older Woman [English] -> [Wakamatsu]_Doutei-kun_to_Keiken_Houfu_na_Onee-san_ga_Turn-sei_Sex_Suru_Hanashi__Turn-Taking_Sex_Between_a_Virgin_and_an_Experienced_Older_Woman_[English]_(2023) +2026-01-07 02:26:27,812 - INFO - Searching Mangadex for: Tomodachi ga Urayamu H Sugiru Boku no Mama to Onee-chan wa, Tokoro Kamawazu Boku o Yuuwaku o Shite Kimasu +2026-01-07 02:26:28,571 - INFO - Searching metadata for: English Tomodachi ga Urayamu H Sugiru Boku no Mama to Onee-chan wa, Tokoro Kamawazu Boku o Yuuwaku o Shite Kimasu +2026-01-07 02:26:28,985 - INFO - Fetching metadata from: https://nhentai.net/g/548221/ +2026-01-07 02:26:29,229 - INFO - Processing: Tomodachi ga Urayamu H Sugiru Boku no Mama to Onee-chan wa, Tokoro Kamawazu Boku o Yuuwaku o Shite Kimasu [English] [Decensored] V1 -> [Shin_Hijiridou_Honpo_(Hijiri_Tsukasa)]_Tomodachi_ga_Urayamu_H_Sugiru_Boku_no_Mama_to_Onee–chan_wa,_Tokoro_Kamawazu_Boku_o_Yuuwaku_o_Shite_Kimasu._[English]_{Hennojin}_[Decensored]_[Digital]_(2025) +2026-01-07 02:26:31,950 - INFO - Searching Mangadex for: EnglishTeam Rabu2Digital] +2026-01-07 02:26:32,441 - INFO - Searching metadata for: Jajujo (Jovejun EnglishTeam Rabu2Digital] +2026-01-07 02:26:32,570 - INFO - Searching metadata for: EnglishTeam Rabu2Digital] +2026-01-07 02:26:32,696 - INFO - Searching Hentai2Read for: EnglishTeam+Rabu2Digital] +2026-01-07 02:26:33,086 - INFO - Searching MangaUpdates for: EnglishTeam Rabu2Digital] +2026-01-07 02:26:33,211 - INFO - Processing: [Jajujo (Jovejun )] if Boku to Gasatsu na Onee no Seiyoku Shori Seikatsu ~Docchi no Ana ga Kimochi Ii no Hen~ My Sexual Life With My Boyish Big Sister! Whose hole feels better [English] [Team Rabu2] [Digital] -> EnglishTeam_Rabu2Digital] +2026-01-07 02:26:34,965 - INFO - Searching Mangadex for: 83H +2026-01-07 02:26:35,283 - INFO - Searching metadata for: 83H +2026-01-07 02:26:35,416 - INFO - Searching Hentai2Read for: 83H +2026-01-07 02:26:35,690 - INFO - Searching MangaUpdates for: 83H +2026-01-07 02:26:35,922 - INFO - Processing: _83HV3~2 -> 8_Banme_no_Prince_(1995) +2026-01-07 02:26:37,690 - INFO - Searching Mangadex for: NATIONAL FERTILITY COMMISSION –WITH MARRIED WOMEN +2026-01-07 02:26:38,222 - INFO - Searching metadata for: Boole NATIONAL FERTILITY COMMISSION –WITH MARRIED WOMEN +2026-01-07 02:26:38,386 - INFO - Fetching metadata from: https://nhentai.net/g/610224/ +2026-01-07 02:26:38,552 - INFO - Processing: [Boole] NATIONAL FERTILITY COMMISSION –WITH MARRIED WOMEN- [English] -> [Boole]_NATIONAL_FERTILITY_COMMISSION__–WITH_MARRIED_WOMEN-_[English]_(2025) +2026-01-07 02:26:38,793 - INFO - Searching Mangadex for: Danshi o Mukuna mama Sodatete Hoshoku suru Warui Onee-san +2026-01-07 02:26:39,373 - INFO - Searching metadata for: Wakamatsu Danshi o Mukuna mama Sodatete Hoshoku suru Warui Onee-san +2026-01-07 02:26:39,609 - INFO - Fetching metadata from: https://nhentai.net/g/537092/ +2026-01-07 02:26:39,809 - INFO - Processing: [Wakamatsu] Danshi o Mukuna mama Sodatete Hoshoku suru Warui Onee-san [English] -> [Wakamatsu]_Danshi_o_Mukuna_mama_Sodatete_Hoshoku_suru_Warui_Onee-san_[English]_(2024) +2026-01-07 02:26:40,344 - INFO - Searching Mangadex for: EnglishPenguin PiperDigital] +2026-01-07 02:26:40,716 - INFO - Searching metadata for: manymanyrain (Amagasa Ikuta EnglishPenguin PiperDigital] +2026-01-07 02:26:40,855 - INFO - Searching metadata for: EnglishPenguin PiperDigital] +2026-01-07 02:26:40,980 - INFO - Searching Hentai2Read for: EnglishPenguin+PiperDigital] +2026-01-07 02:26:41,299 - INFO - Searching MangaUpdates for: EnglishPenguin PiperDigital] +2026-01-07 02:26:41,474 - INFO - Processing: [manymanyrain (Amagasa Ikuta)] Succubus-san Chi no Kazoku Kankei - The Succubus Family Chronicles Succubus Family Relationships [English] [Penguin Piper] [Digital] -> EnglishPenguin_PiperDigital] +2026-01-07 02:26:46,611 - INFO - Searching Mangadex for: Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita +2026-01-07 02:26:47,252 - INFO - Searching metadata for: Boole Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita +2026-01-07 02:26:47,536 - INFO - Fetching metadata from: https://nhentai.net/g/613220/ +2026-01-07 02:26:47,727 - INFO - Processing: [Boole] Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita [English] -> [BOOLE]_Glamor_Furyou_Joshi_ni_Ijimerareta_ga_Doukyo_suru_Koto_ni_Shita_2丨曾经欺负过我的性感太妹_现在我决定与她同居2_[Chinese]_[Decensored]_(2025) +2026-01-07 02:26:51,493 - INFO - Searching Mangadex for: Smapho Satsuei ni Hamatteru SeFri Joshi to Hamedori suru Ohanashi Filming a Sextape with My Sexfriend Who's Really into Selfies +2026-01-07 02:26:52,525 - INFO - Searching metadata for: Wakamatsu Smapho Satsuei ni Hamatteru SeFri Joshi to Hamedori suru Ohanashi Filming a Sextape with My Sexfriend Who's Really into Selfies +2026-01-07 02:26:52,813 - INFO - Fetching metadata from: https://nhentai.net/g/451546/ +2026-01-07 02:26:52,983 - INFO - Processing: [Wakamatsu] Smapho Satsuei ni Hamatteru SeFri Joshi to Hamedori suru Ohanashi Filming a Sextape with My Sexfriend Who's Really into Selfies [English] -> [Wakamatsu]_Smapho_Satsuei_ni_Hamatteru_SeFri_Joshi_to_Hamedori_suru_Ohanashi__Filming_a_Sextape_with_My_Sexfriend_Who's_Really_into_Selfies_[English]_(2023) +2026-01-07 02:26:53,307 - INFO - Searching Mangadex for: EnglishDecensoredDigital] +2026-01-07 02:26:53,672 - INFO - Searching metadata for: Shin Hijiridou Honpo (Hijiri Tsukasa EnglishDecensoredDigital] +2026-01-07 02:26:53,858 - INFO - Searching metadata for: EnglishDecensoredDigital] +2026-01-07 02:26:53,992 - INFO - Searching Hentai2Read for: EnglishDecensoredDigital] +2026-01-07 02:26:54,385 - INFO - Searching MangaUpdates for: EnglishDecensoredDigital] +2026-01-07 02:26:54,513 - INFO - Processing: [Shin Hijiridou Honpo (Hijiri Tsukasa)] Tomodachi ga Urayamu H Sugiru Boku no Mama to Onee–chan wa, Tokoro Kamawazu Boku o Yuuwaku o Shite Kimasu [English] {Hennojin} [Decensored] [Digital] -> EnglishDecensoredDigital] +2026-01-07 02:26:56,634 - INFO - Searching Mangadex for: DL version] +2026-01-07 02:26:56,980 - INFO - Searching metadata for: True Seido☆Honpo (Sei☆Shi DL version] +2026-01-07 02:26:57,163 - INFO - Fetching metadata from: https://nhentai.net/g/490920/ +2026-01-07 02:26:57,356 - INFO - Processing: [True Seido☆Honpo (Sei☆Shi)] The story of having sex with a cousin whom she has never met before in her mother-in-law's countryside where there is an H custom [DL version] -> [True_Seido☆Honpo_(Sei☆Shi)]_The_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother-in-law's_countryside_where_there_is_an_H_custom._[DL_version]_(2024) +2026-01-07 02:26:59,859 - INFO - Searching Mangadex for: Jukujo Suki na Ore no Atarashii Tobira 1-2 A MILF Lover's New Door 1-2 {Doujins com} +2026-01-07 02:27:00,596 - INFO - Searching metadata for: Jirou Jukujo Suki na Ore no Atarashii Tobira 1-2 A MILF Lover's New Door 1-2 {Doujins com} +2026-01-07 02:27:00,918 - INFO - Searching metadata for: Jukujo Suki na Ore no Atarashii Tobira 1-2 A MILF Lover's New Door 1-2 {Doujins com} +2026-01-07 02:27:01,221 - INFO - Searching Hentai2Read for: Jukujo+Suki+na+Ore+no+Atarashii+Tobira+1-2+A+MILF+Lover's+New+Door+1-2+++{Doujins+com} +2026-01-07 02:27:01,509 - INFO - Searching MangaUpdates for: Jukujo Suki na Ore no Atarashii Tobira 1-2 A MILF Lover's New Door 1-2 {Doujins com} +2026-01-07 02:27:02,858 - INFO - Processing: [Jirou] Jukujo Suki na Ore no Atarashii Tobira 1-2 A MILF Lover's New Door 1-2 (COMIC Masyo 2025-10) [English] {Doujins com} [Digital] -> Jukujo_Sukina_Ore_No_Atarashii_Tobira_(2025) +2026-01-07 02:27:06,970 - INFO - Searching Mangadex for: Tomodachi ga Urayamu H Sugiru Boku no Mama to Onee–chan wa +2026-01-07 02:27:07,612 - INFO - Searching metadata for: Hijiri Tsukasa Tomodachi ga Urayamu H Sugiru Boku no Mama to Onee–chan wa +2026-01-07 02:27:07,945 - INFO - Fetching metadata from: https://nhentai.net/g/548221/ +2026-01-07 02:27:08,236 - INFO - Processing: (Hijiri Tsukasa) Tomodachi ga Urayamu H Sugiru Boku no Mama to Onee–chan wa (unofficial translation) [ENGLISH] -> [Shin_Hijiridou_Honpo_(Hijiri_Tsukasa)]_Tomodachi_ga_Urayamu_H_Sugiru_Boku_no_Mama_to_Onee–chan_wa,_Tokoro_Kamawazu_Boku_o_Yuuwaku_o_Shite_Kimasu._[English]_{Hennojin}_[Decensored]_[Digital]_(2025) +2026-01-07 02:27:10,684 - INFO - Searching Mangadex for: Darashina Sister Careless Sister {RedLantern} +2026-01-07 02:27:11,279 - INFO - Searching metadata for: IAPOC Darashina Sister Careless Sister {RedLantern} +2026-01-07 02:27:11,427 - INFO - Fetching metadata from: https://nhentai.net/g/478336/ +2026-01-07 02:27:11,597 - INFO - Processing: [IAPOC] Darashina Sister Careless Sister (COMIC ExE 35) [English] {RedLantern} [Digital] -> [IAPOC]_Darashina_Sister__Careless_Sister_(COMIC_ExE_35)_[English]_{RedLantern}_[Digital]_(2023) +2026-01-07 02:27:13,226 - INFO - Searching Mangadex for: 同人誌 +2026-01-07 02:27:13,254 - INFO - Processing: (同人誌) [てばさきのぶお (てばさきのぶお)] 続・閉じ込められた上司と部下が関係修復してヤリまくる話 (オリジナル).zip -> Watashi-tachi_ga_Watanare_Doujinshi_Tsukuru_Wake_Nai_jan,_Murimuri!!_(※Muri_ja_Nakatta!)_(2025) +2026-01-07 02:27:22,011 - INFO - Searching Mangadex for: セックスしないと出られない部屋に娘の親友と閉じ込められたんだが… +2026-01-07 02:27:22,564 - INFO - Searching metadata for: 同人誌 セックスしないと出られない部屋に娘の親友と閉じ込められたんだが… +2026-01-07 02:27:22,713 - INFO - Searching metadata for: セックスしないと出られない部屋に娘の親友と閉じ込められたんだが… +2026-01-07 02:27:22,858 - INFO - Searching Hentai2Read for: セックスしないと出られない部屋に娘の親友と閉じ込められたんだが… +2026-01-07 02:27:23,220 - INFO - Searching MangaUpdates for: セックスしないと出られない部屋に娘の親友と閉じ込められたんだが… +2026-01-07 02:27:23,432 - INFO - Processing: (同人誌) [竿役が種付けおじさんじゃないとヌケないんだが…] セックスしないと出られない部屋に娘の親友と閉じ込められたんだが… (オリジナル).zip -> Sex_Shinai_to_Derarenai_Heya_ni_Naka_no_Warui_Imouto_to_Tojikomerareru_(2023) +2026-01-07 02:27:45,930 - INFO - Searching Mangadex for: Tsukiai Hajimetara Meccha Karada o Motomemakutte kuru Downer-kei Onee-san The Gloomy Woman Who Came to Hunger for Me Once We Started Dating +2026-01-07 02:27:47,003 - INFO - Searching metadata for: Wakamatsu Tsukiai Hajimetara Meccha Karada o Motomemakutte kuru Downer-kei Onee-san The Gloomy Woman Who Came to Hunger for Me Once We Started Dating +2026-01-07 02:27:47,251 - INFO - Fetching metadata from: https://nhentai.net/g/499706/ +2026-01-07 02:27:47,444 - INFO - Processing: [Wakamatsu] Tsukiai Hajimetara Meccha Karada o Motomemakutte kuru Downer-kei Onee-san The Gloomy Woman Who Came to Hunger for Me Once We Started Dating [English] -> [Wakamatsu]_Tsukiai_Hajimetara_Meccha_Karada_o_Motomemakutte_kuru_Downer-kei_Onee-san__The_Gloomy_Woman_Who_Came_to_Hunger_for_Me_Once_We_Started_Dating_[English]_(2024) +2026-01-07 02:27:48,556 - INFO - Searching Mangadex for: EnglishSquigglesJP] +2026-01-07 02:27:49,151 - INFO - Searching metadata for: Kakurenbo (Borusiti EnglishSquigglesJP] +2026-01-07 02:27:49,281 - INFO - Searching metadata for: EnglishSquigglesJP] +2026-01-07 02:27:49,428 - INFO - Searching Hentai2Read for: EnglishSquigglesJP] +2026-01-07 02:27:49,752 - INFO - Searching MangaUpdates for: EnglishSquigglesJP] +2026-01-07 02:27:49,871 - INFO - Processing: [Kakurenbo (Borusiti)] Nekura Kyonyuu no Onee-chan wa, Saiminshite de mo Otouto Chinpo o Netoritai [English] [SquigglesJP] -> EnglishSquigglesJP] +2026-01-07 02:27:56,098 - INFO - Searching Mangadex for: Kozukuri no Shikata o Dankai-teki ni Oshiete Kureru Onee-san An Onee-san Who Teaches Me Step by Step How to Make a Baby +2026-01-07 02:27:57,012 - INFO - Searching metadata for: Wakamatsu Kozukuri no Shikata o Dankai-teki ni Oshiete Kureru Onee-san An Onee-san Who Teaches Me Step by Step How to Make a Baby +2026-01-07 02:27:57,443 - INFO - Fetching metadata from: https://nhentai.net/g/566432/ +2026-01-07 02:27:57,643 - INFO - Processing: [Wakamatsu] Kozukuri no Shikata o Dankai-teki ni Oshiete Kureru Onee-san An Onee-san Who Teaches Me Step by Step How to Make a Baby [English] -> [Wakamatsu]_Kozukuri_no_Shikata_o_Dankai-teki_ni_Oshiete_Kureru_Onee-san__An_Onee-san_Who_Teaches_Me_Step_by_Step_How_to_Make_a_Baby_[English]_(2025) +2026-01-07 02:27:58,051 - INFO - Searching Mangadex for: TS Goods Panic ~Iritani Kyoudai no Baai~ TS Goods Panic ~The Case of the Iriya's Siblings~ +2026-01-07 02:27:58,790 - INFO - Searching metadata for: Regdic TS Goods Panic ~Iritani Kyoudai no Baai~ TS Goods Panic ~The Case of the Iriya's Siblings~ +2026-01-07 02:27:59,009 - INFO - Searching metadata for: TS Goods Panic ~Iritani Kyoudai no Baai~ TS Goods Panic ~The Case of the Iriya's Siblings~ +2026-01-07 02:27:59,209 - INFO - Searching Hentai2Read for: TS+Goods+Panic+~Iritani+Kyoudai+no+Baai~+TS+Goods+Panic+~The+Case+of+the+Iriya's+Siblings~ +2026-01-07 02:27:59,561 - INFO - Searching MangaUpdates for: TS Goods Panic ~Iritani Kyoudai no Baai~ TS Goods Panic ~The Case of the Iriya's Siblings~ +2026-01-07 02:28:00,285 - INFO - Processing: [Regdic] TS Goods Panic ~Iritani Kyoudai no Baai~ TS Goods Panic ~The Case of the Iriya's Siblings~ (COMIC Unreal 2025-08 Vol 116) [English] [Digital] -> TS_Panic_(2012) +2026-01-07 02:28:01,849 - INFO - Searching Mangadex for: Sodachi no Yosasou na Onee-san ga Ogehin Sex suru Hanashi Sono 2 A Refined and Elegant Young Woman from a Good Family Has Vulgar Sex +2026-01-07 02:28:02,878 - INFO - Searching metadata for: Wakamatsu Sodachi no Yosasou na Onee-san ga Ogehin Sex suru Hanashi Sono 2 A Refined and Elegant Young Woman from a Good Family Has Vulgar Sex +2026-01-07 02:28:03,296 - INFO - Fetching metadata from: https://nhentai.net/g/434031/ +2026-01-07 02:28:03,488 - INFO - Processing: [Wakamatsu] Sodachi no Yosasou na Onee-san ga Ogehin Sex suru Hanashi Sono 2 A Refined and Elegant Young Woman from a Good Family Has Vulgar Sex (Part 2) [English] -> [Wakamatsu]_Sodachi_no_Yosasou_na_Onee-san_ga_Ogehin_Sex_suru_Hanashi_Sono_2__A_Refined_and_Elegant_Young_Woman_from_a_Good_Family_Has_Vulgar_Sex_(Part_2)_[English]_(2022) +2026-01-07 02:28:03,997 - INFO - Searching Mangadex for: HSY7F~P +2026-01-07 02:28:04,302 - INFO - Searching metadata for: HSY7F~P +2026-01-07 02:28:04,480 - INFO - Searching Hentai2Read for: HSY7F~P +2026-01-07 02:28:04,775 - INFO - Searching MangaUpdates for: HSY7F~P +2026-01-07 02:28:05,020 - INFO - Processing: _HSY7F~P -> P.P.P!!_(2007) +2026-01-07 02:28:06,227 - INFO - Searching Mangadex for: Toshiue Lovers MTL +2026-01-07 02:28:06,554 - INFO - Searching metadata for: Ozy Toshiue Lovers MTL +2026-01-07 02:28:06,707 - INFO - Fetching metadata from: https://nhentai.net/g/613448/ +2026-01-07 02:28:06,996 - INFO - Processing: [Ozy] Toshiue Lovers [Digital] MTL -> [Ozy]_Toshiue_Lovers_+_Shitagaki_[English]_[MTL]_[Digital]_(2025) +2026-01-07 02:28:30,585 - INFO - Searching Mangadex for: Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita +2026-01-07 02:28:31,219 - INFO - Searching metadata for: Boole Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita +2026-01-07 02:28:31,519 - INFO - Fetching metadata from: https://nhentai.net/g/613220/ +2026-01-07 02:28:31,695 - INFO - Processing: [Boole] Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita 2 [English] -> [BOOLE]_Glamor_Furyou_Joshi_ni_Ijimerareta_ga_Doukyo_suru_Koto_ni_Shita_2丨曾经欺负过我的性感太妹_现在我决定与她同居2_[Chinese]_[Decensored]_(2025) +2026-01-07 02:28:32,799 - INFO - Searching Mangadex for: Mendou na Kanojo yori Kantan na Imouto de Omake My Simple Sister Over A Troublesome Gilfriend Bonus +2026-01-07 02:28:33,527 - INFO - Searching metadata for: Tsubaki Jushirou Mendou na Kanojo yori Kantan na Imouto de Omake My Simple Sister Over A Troublesome Gilfriend Bonus +2026-01-07 02:28:33,799 - INFO - Fetching metadata from: https://nhentai.net/g/437353/ +2026-01-07 02:28:33,985 - INFO - Processing: [Tsubaki Jushirou] Mendou na Kanojo yori Kantan na Imouto de Omake My Simple Sister Over A Troublesome Gilfriend Bonus (Imouto Access) [English] [MegaFagget] [Digital] -> [Tsubaki_Jushirou]_Mendou_na_Kanojo_yori_Kantan_na_Imouto_de_+_Omake__My_Simple_Sister_Over_A_Troublesome_Gilfriend_+_Bonus_(Imouto_Access)_[English]_[MegaFagget]_[Digital]_(2023) +2026-01-07 02:28:35,486 - INFO - Searching Mangadex for: 8ZEFN~U +2026-01-07 02:28:35,816 - INFO - Searching metadata for: 8ZEFN~U +2026-01-07 02:28:35,944 - INFO - Searching Hentai2Read for: 8ZEFN~U +2026-01-07 02:28:36,269 - INFO - Searching MangaUpdates for: 8ZEFN~U +2026-01-07 02:28:36,468 - INFO - Processing: _8ZEFN~U -> U-Bu_U-Bu_(1994) +2026-01-07 02:28:37,763 - INFO - Searching Mangadex for: Tsuma ni Ani to Kozukuri Shite Moraimashita +2026-01-07 02:28:38,204 - INFO - Searching metadata for: Furaimai Tsuma ni Ani to Kozukuri Shite Moraimashita +2026-01-07 02:28:38,415 - INFO - Fetching metadata from: https://nhentai.net/g/616367/ +2026-01-07 02:28:38,607 - INFO - Processing: [Furaimai] Tsuma ni Ani to Kozukuri Shite Moraimashita -> [Furaimai]_Tsuma_ni_Ani_to_Kozukuri_Shite_Moraimashita_[English]_(2025) +2026-01-07 02:28:41,759 - INFO - Searching Mangadex for: Older Step-sister Teaches Her Cheeky Little Step-brother a Lesson Namaiki Gitei o Kyoiku Suru o Gishi-chan +2026-01-07 02:28:42,606 - INFO - Searching metadata for: Wakamatsu Older Step-sister Teaches Her Cheeky Little Step-brother a Lesson Namaiki Gitei o Kyoiku Suru o Gishi-chan +2026-01-07 02:28:42,885 - INFO - Fetching metadata from: https://nhentai.net/g/540819/ +2026-01-07 02:28:43,056 - INFO - Processing: [Wakamatsu] Older Step-sister Teaches Her Cheeky Little Step-brother a Lesson Namaiki Gitei o Kyoiku Suru o Gishi-chan [English] -> [Wakamatsu]_Older_Step-sister_Teaches_Her_Cheeky_Little_Step-brother_a_Lesson__Namaiki_Gitei_o_Kyoiku_Suru_o_Gishi-chan_[English]_(2024) +2026-01-07 02:28:43,611 - INFO - Searching Mangadex for: Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room +2026-01-07 02:28:44,520 - INFO - Searching metadata for: Wakamatsu Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room +2026-01-07 02:28:44,774 - INFO - Fetching metadata from: https://nhentai.net/g/571054/ +2026-01-07 02:28:44,968 - INFO - Processing: [Wakamatsu] Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] -> [Wakamatsu]_Keitai_Choushin_Onee-san-tachi_ni_Shinkyo_o_Yaribeya_ni_Sareru_Hanashi__Tall,_Busty_Onee-sans_Turn_My_New_Place_into_Their_Sex_Room_[English]_(2025) +2026-01-07 02:28:45,339 - INFO - Searching Mangadex for: Onnanoko Atsukai Shinai to Mesu Dearu Koto o Wakarasetekuru Boyish Joshi A boyish girl who will show you that she is female if you don't treat her like one +2026-01-07 02:28:46,434 - INFO - Searching metadata for: Wakamatsu Onnanoko Atsukai Shinai to Mesu Dearu Koto o Wakarasetekuru Boyish Joshi A boyish girl who will show you that she is female if you don't treat her like one +2026-01-07 02:28:46,893 - INFO - Fetching metadata from: https://nhentai.net/g/524998/ +2026-01-07 02:28:47,071 - INFO - Processing: [Wakamatsu] Onnanoko Atsukai Shinai to Mesu Dearu Koto o Wakarasetekuru Boyish Joshi A boyish girl who will show you that she is female if you don't treat her like one [English] -> [Wakamatsu]_Onnanoko_Atsukai_Shinai_to_Mesu_Dearu_Koto_o_Wakarasetekuru_Boyish_Joshi__A_boyish_girl_who_will_show_you_that_she_is_female_if_you_don't_treat_her_like_one_[English]_(2024) +2026-01-07 02:28:48,145 - INFO - Searching Mangadex for: Fallen GamesEnglishDigital] +2026-01-07 02:28:48,520 - INFO - Searching metadata for: Molta Shouten (Molta Fallen GamesEnglishDigital] +2026-01-07 02:28:48,669 - INFO - Searching metadata for: Fallen GamesEnglishDigital] +2026-01-07 02:28:48,800 - INFO - Searching Hentai2Read for: Fallen+GamesEnglishDigital] +2026-01-07 02:28:49,082 - INFO - Searching MangaUpdates for: Fallen GamesEnglishDigital] +2026-01-07 02:28:49,361 - INFO - Processing: [Molta Shouten (Molta)] Sei ni Honpousugiru Minshuku Shimai Way too sexually open sisters at the inn [Fallen Games] [English] [Digital] -> FaLLEN_(2012) +2026-01-07 02:28:50,962 - INFO - Searching Mangadex for: Ikken Yasashisou na Personal Gym no Trainer-san ni Karada o Ijimenukareru Hanashi Sono 2 A Seemingly Gentle Personal Trainer Gives My Body a Rough Workout +2026-01-07 02:28:52,007 - INFO - Searching metadata for: Wakamatsu Ikken Yasashisou na Personal Gym no Trainer-san ni Karada o Ijimenukareru Hanashi Sono 2 A Seemingly Gentle Personal Trainer Gives My Body a Rough Workout +2026-01-07 02:28:52,354 - INFO - Fetching metadata from: https://nhentai.net/g/435012/ +2026-01-07 02:28:52,542 - INFO - Processing: [Wakamatsu] Ikken Yasashisou na Personal Gym no Trainer-san ni Karada o Ijimenukareru Hanashi Sono 2 A Seemingly Gentle Personal Trainer Gives My Body a Rough Workout (Part 2) [English] -> [Wakamatsu]_Ikken_Yasashisou_na_Personal_Gym_no_Trainer-san_ni_Karada_o_Ijimenukareru_Hanashi_Sono_2__A_Seemingly_Gentle_Personal_Trainer_Gives_My_Body_a_Rough_Workout_(Part_2)_[English]_(2023) +2026-01-07 02:28:52,767 - INFO - Searching Mangadex for: DigitalEnglishmeganekun tl] +2026-01-07 02:28:53,143 - INFO - Searching metadata for: Shin Hijiridou Honpo (Hijiri Tsukasa DigitalEnglishmeganekun tl] +2026-01-07 02:28:53,362 - INFO - Searching metadata for: DigitalEnglishmeganekun tl] +2026-01-07 02:28:53,491 - INFO - Searching Hentai2Read for: DigitalEnglishmeganekun+tl] +2026-01-07 02:28:54,124 - INFO - Searching MangaUpdates for: DigitalEnglishmeganekun tl] +2026-01-07 02:28:54,312 - INFO - Processing: [Shin Hijiridou Honpo (Hijiri Tsukasa)] H na Fuushuu ga Aru Wagaya no, Ero Sugiru Nichijou The perverted daily life in our household, which is full of naughty customs [Digital] [English] [meganekun_tl] -> Soyosoyo's_Works_(2002) +2026-01-07 02:28:58,891 - INFO - Searching Mangadex for: Namaiki Bakkari Iu kedo Sugu Wakaraserarechau Kouhai-chan no Ohanashi A Bratty Underclassman Who Quickly Learned Her Lesson +2026-01-07 02:29:00,117 - INFO - Searching metadata for: Wakamatsu Namaiki Bakkari Iu kedo Sugu Wakaraserarechau Kouhai-chan no Ohanashi A Bratty Underclassman Who Quickly Learned Her Lesson +2026-01-07 02:29:00,369 - INFO - Fetching metadata from: https://nhentai.net/g/459744/ +2026-01-07 02:29:00,553 - INFO - Processing: [Wakamatsu] Namaiki Bakkari Iu kedo Sugu Wakaraserarechau Kouhai-chan no Ohanashi A Bratty Underclassman Who Quickly Learned Her Lesson [English] -> [Wakamatsu]_Namaiki_Bakkari_Iu_kedo_Sugu_Wakaraserarechau_Kouhai-chan_no_Ohanashi__A_Bratty_Underclassman_Who_Quickly_Learned_Her_Lesson_[English]_(2023) +2026-01-07 02:29:01,109 - INFO - Searching Mangadex for: Muchi Niku Hitozuma Smash Chubby Wife Smash +2026-01-07 02:29:01,615 - INFO - Searching metadata for: Akikusa Peperon Muchi Niku Hitozuma Smash Chubby Wife Smash +2026-01-07 02:29:01,796 - INFO - Fetching metadata from: https://nhentai.net/g/612145/ +2026-01-07 02:29:01,977 - INFO - Processing: [Akikusa Peperon] Muchi Niku Hitozuma Smash Chubby Wife Smash (Mozzarella) [English] [Fated Circle] -> [Akikusa_Peperon]_Muchi_Niku_Hitozuma_Smash__Chubby_Wife_Smash_(Mozzarella)_[English]_[Fated_Circle]_(2025) +2026-01-07 02:29:03,040 - INFO - Searching Mangadex for: Kawaii Imouto to Ikenai Koto Shiteimasu! +2026-01-07 02:29:03,517 - INFO - Searching metadata for: Tsubaki Jushirou Kawaii Imouto to Ikenai Koto Shiteimasu! +2026-01-07 02:29:03,762 - INFO - Fetching metadata from: https://nhentai.net/g/618947/ +2026-01-07 02:29:04,022 - INFO - Processing: [Tsubaki Jushirou] Kawaii Imouto to Ikenai Koto Shiteimasu! [English] -> [Tsubaki_Jushirou]_Kawaii_Imouto_to_Ikenai_Koto_Shiteimasu!_[English]_(2025) +2026-01-07 02:29:16,555 - INFO - Searching Mangadex for: Living with chubby bullies3 +2026-01-07 02:29:16,981 - INFO - Searching metadata for: Boole Living with chubby bullies3 +2026-01-07 02:29:17,137 - INFO - Fetching metadata from: https://nhentai.net/g/593633/ +2026-01-07 02:29:17,330 - INFO - Processing: [Boole] Living with chubby bullies3 [English] -> [Boole]_Living_with_chubby_bullies3_[English]_(2025) +2026-01-07 02:29:18,466 - INFO - Searching Mangadex for: Darashinaku Ochiru Onee-san Wa Suki Desu Ka Do you like sloppy big sisters {Exo Subs} +2026-01-07 02:29:19,194 - INFO - Searching metadata for: Nasipasuta Darashinaku Ochiru Onee-san Wa Suki Desu Ka Do you like sloppy big sisters {Exo Subs} +2026-01-07 02:29:19,543 - INFO - Fetching metadata from: https://nhentai.net/g/347570/ +2026-01-07 02:29:19,717 - INFO - Processing: [Nasipasuta] Darashinaku Ochiru Onee-san Wa Suki Desu Ka Do you like sloppy big sisters (COMIC ExE 24) [Englsih] {Exo Subs} [Digital] -> [Nasipasuta]_Darashinaku_Ochiru_Onee-san_Wa_Suki_Desu_Ka__Do_you_like_sloppy_big_sisters_(COMIC_ExE_24)_[English]_{Exo_Subs}_[Digital]_(2021) +2026-01-07 02:29:33,171 - INFO - Searching Mangadex for: Ikken Yasashisou na Personal Gym no Trainer-san ni Karada o Ijimenukareru Hanashi A Seemingly Gentle Personal Trainer Gives My Body a Rough Workout +2026-01-07 02:29:34,289 - INFO - Searching metadata for: Wakamatsu Ikken Yasashisou na Personal Gym no Trainer-san ni Karada o Ijimenukareru Hanashi A Seemingly Gentle Personal Trainer Gives My Body a Rough Workout +2026-01-07 02:29:34,615 - INFO - Fetching metadata from: https://nhentai.net/g/435012/ +2026-01-07 02:29:34,800 - INFO - Processing: [Wakamatsu] Ikken Yasashisou na Personal Gym no Trainer-san ni Karada o Ijimenukareru Hanashi A Seemingly Gentle Personal Trainer Gives My Body a Rough Workout (Part 1) [English] -> [Wakamatsu]_Ikken_Yasashisou_na_Personal_Gym_no_Trainer-san_ni_Karada_o_Ijimenukareru_Hanashi_Sono_2__A_Seemingly_Gentle_Personal_Trainer_Gives_My_Body_a_Rough_Workout_(Part_2)_[English]_(2023) +2026-01-07 02:29:35,019 - INFO - Searching Mangadex for: Magical Girl's Bully Ex +2026-01-07 02:29:35,440 - INFO - Processing: [Boole] Magical Girl's Bully Ex [English] -> Mahou_Shoujo_Lyrical_Nanoha_EXCEEDS_(2025) +2026-01-07 02:29:36,648 - INFO - Searching Mangadex for: Ane no Seiyoku Shori wa Ototo ga Suru Monoda to, Gitei wa Omoi Hajimete Iru +2026-01-07 02:29:37,296 - INFO - Searching metadata for: English Ane no Seiyoku Shori wa Ototo ga Suru Monoda to, Gitei wa Omoi Hajimete Iru +2026-01-07 02:29:37,635 - INFO - Fetching metadata from: https://nhentai.net/g/519640/ +2026-01-07 02:29:37,805 - INFO - Processing: Ane no Seiyoku Shori wa Ototo ga Suru Monoda to, Gitei wa Omoi Hajimete Iru [English] [Decensored] -> [Shin_Hijiridou_Honpo_(Hijiri_Tsukasa)]_Ane_no_Seiyoku_Shori_wa_Ototo_ga_Suru_Monoda_to,_Gitei_wa_Omoi_Hajimete_Iru._[English]_{Hennojin}_[Decensored]_[Digital]_(2024) +2026-01-07 02:29:38,858 - INFO - Searching Mangadex for: Shussan Kanri Iinkai NATIONAL FERTILITY COMMISSION +2026-01-07 02:29:39,356 - INFO - Searching metadata for: Boole Shussan Kanri Iinkai NATIONAL FERTILITY COMMISSION +2026-01-07 02:29:39,516 - INFO - Fetching metadata from: https://nhentai.net/g/610223/ +2026-01-07 02:29:39,693 - INFO - Processing: [Boole] Shussan Kanri Iinkai NATIONAL FERTILITY COMMISSION [English] [Uncensored] -> [Boole]_Shussan_Kanri_Iinkai__NATIONAL_FERTILITY_COMMISSION_[English]_[Uncensored]_(2025) +2026-01-07 02:29:40,094 - INFO - Searching Mangadex for: Mesaki no kairaku o chiratsuka sete daraku o izanau warui onesan +2026-01-07 02:29:40,736 - INFO - Searching metadata for: Wakamatsu Mesaki no kairaku o chiratsuka sete daraku o izanau warui onesan +2026-01-07 02:29:41,039 - INFO - Fetching metadata from: https://nhentai.net/g/567384/ +2026-01-07 02:29:41,253 - INFO - Processing: [Wakamatsu] Mesaki no kairaku o chiratsuka sete daraku o izanau warui onesan [English] [Decensored] -> [Wakamatsu]_Mesaki_no_kairaku_o_chiratsuka_sete_daraku_o_izanau_warui_onesan_[Chinese]_[ANDX個人漢化_&_曙光个人重嵌]_[Decensored]_(2025) +2026-01-07 02:29:41,691 - INFO - Searching Mangadex for: EnglishKumokuDigital] +2026-01-07 02:29:42,014 - INFO - Searching metadata for: Seika Kairaku Shoten (Kawasaki EnglishKumokuDigital] +2026-01-07 02:29:42,156 - INFO - Searching metadata for: EnglishKumokuDigital] +2026-01-07 02:29:42,300 - INFO - Searching Hentai2Read for: EnglishKumokuDigital] +2026-01-07 02:29:42,648 - INFO - Searching MangaUpdates for: EnglishKumokuDigital] +2026-01-07 02:29:42,835 - INFO - Processing: [Seika Kairaku Shoten (Kawasaki)] Kyorikan ga Bagutteru Gimai ga Isshou Icharabu Shitekuru [English] [Kumoku] [Digital] -> EnglishKumokuDigital] +2026-01-07 02:29:44,512 - INFO - Searching Mangadex for: Seiso Kanojo ga Bitch ni Nacchau Hanashi The Pure Girl Became a Slut +2026-01-07 02:29:45,134 - INFO - Searching metadata for: Wakamatsu Seiso Kanojo ga Bitch ni Nacchau Hanashi The Pure Girl Became a Slut +2026-01-07 02:29:45,444 - INFO - Fetching metadata from: https://nhentai.net/g/499858/ +2026-01-07 02:29:45,612 - INFO - Processing: [Wakamatsu] Seiso Kanojo ga Bitch ni Nacchau Hanashi The Pure Girl Became a Slut [English] -> [Wakamatsu]_Seiso_Kanojo_ga_Bitch_ni_Nacchau_Hanashi__The_Pure_Girl_Became_a_Slut_[English]_(2024) +2026-01-07 02:29:46,047 - INFO - Searching Mangadex for: XB1H1~Y +2026-01-07 02:29:46,358 - INFO - Searching metadata for: XB1H1~Y +2026-01-07 02:29:46,489 - INFO - Searching Hentai2Read for: XB1H1~Y +2026-01-07 02:29:46,789 - INFO - Searching MangaUpdates for: XB1H1~Y +2026-01-07 02:29:47,002 - INFO - Processing: _XB1H1~Y -> Y+Y=Fuel!!_(2016) +2026-01-07 02:29:47,952 - INFO - Searching Mangadex for: WQQ0U~J +2026-01-07 02:29:48,256 - INFO - Searching metadata for: WQQ0U~J +2026-01-07 02:29:48,381 - INFO - Searching Hentai2Read for: WQQ0U~J +2026-01-07 02:29:48,769 - INFO - Searching MangaUpdates for: WQQ0U~J +2026-01-07 02:29:48,994 - INFO - Processing: _WQQ0U~J -> Active_Heart_(2003) +2026-01-07 02:29:49,993 - INFO - Searching Mangadex for: Tsumamigui Cherry MTL +2026-01-07 02:29:50,339 - INFO - Searching metadata for: Ozy Tsumamigui Cherry MTL +2026-01-07 02:29:50,496 - INFO - Fetching metadata from: https://nhentai.net/g/615424/ +2026-01-07 02:29:50,757 - INFO - Processing: [Ozy] Tsumamigui Cherry [Digital] MTL -> [Ozy]_Tsumamigui_Cherry_[English]_[MTL]_[Digital]_(2025) +2026-01-07 02:30:10,199 - INFO - Searching Mangadex for: Hands-On Draining with Three Succubus Sisters +2026-01-07 02:30:10,722 - INFO - Searching metadata for: Hands-On Draining with Three Succubus Sisters +2026-01-07 02:30:10,921 - INFO - Fetching metadata from: https://nhentai.net/g/619320/ +2026-01-07 02:30:11,215 - INFO - Processing: Hands-On Draining with Three Succubus Sisters 4 -> Hands-On_Draining_with_Three_Succubus_Sisters_(akatsuki_myuutoakatuki_myuuto)_(2025) +2026-01-07 02:30:16,235 - INFO - Searching Mangadex for: Shintaisou Circle Joshi ga Kansetsu Kadouiki Meippai Tsukatte H suru Hanashi The Rhythmic Gymnastics Girl Making Full Use of Her Flexibility During Sex +2026-01-07 02:30:17,437 - INFO - Searching metadata for: Wakamatsu Shintaisou Circle Joshi ga Kansetsu Kadouiki Meippai Tsukatte H suru Hanashi The Rhythmic Gymnastics Girl Making Full Use of Her Flexibility During Sex +2026-01-07 02:30:17,691 - INFO - Fetching metadata from: https://nhentai.net/g/451548/ +2026-01-07 02:30:17,869 - INFO - Processing: [Wakamatsu] Shintaisou Circle Joshi ga Kansetsu Kadouiki Meippai Tsukatte H suru Hanashi The Rhythmic Gymnastics Girl Making Full Use of Her Flexibility During Sex [English] -> [Wakamatsu]_Shintaisou_Circle_Joshi_ga_Kansetsu_Kadouiki_Meippai_Tsukatte_H_suru_Hanashi__The_Rhythmic_Gymnastics_Girl_Making_Full_Use_of_Her_Flexibility_During_Sex_[English]_(2023) +2026-01-07 02:30:18,660 - INFO - Searching Mangadex for: Reitetsu Kyonyuu Onna Joushi ni Tetteiteki ni Schedule Kanri sareru Hanashi My Cool, Large-Chested Boss Keeps Me On a Strict Schedule +2026-01-07 02:30:19,675 - INFO - Searching metadata for: Wakamatsu Reitetsu Kyonyuu Onna Joushi ni Tetteiteki ni Schedule Kanri sareru Hanashi My Cool, Large-Chested Boss Keeps Me On a Strict Schedule +2026-01-07 02:30:20,052 - INFO - Fetching metadata from: https://nhentai.net/g/460123/ +2026-01-07 02:30:20,239 - INFO - Processing: [Wakamatsu] Reitetsu Kyonyuu Onna Joushi ni Tetteiteki ni Schedule Kanri sareru Hanashi My Cool, Large-Chested Boss Keeps Me On a Strict Schedule [English] -> [Wakamatsu]_Reitetsu_Kyonyuu_Onna_Joushi_ni_Tetteiteki_ni_Schedule_Kanri_sareru_Hanashi__My_Cool,_Large-Chested_Boss_Keeps_Me_On_a_Strict_Schedule_[English]_(2023) +2026-01-07 02:30:20,983 - INFO - Searching Mangadex for: Seikatsu mo Teiso Kannen mo Darashinai Gishi Ni Ya-ra Sete Morau I Get to Fuck my Stepsister, Who's Sloppy in Both Her Lifestyle and Her Sense of Chastity +2026-01-07 02:30:22,085 - INFO - Searching metadata for: Wakamatsu Seikatsu mo Teiso Kannen mo Darashinai Gishi Ni Ya-ra Sete Morau I Get to Fuck my Stepsister, Who's Sloppy in Both Her Lifestyle and Her Sense of Chastity +2026-01-07 02:30:22,503 - INFO - Searching metadata for: Seikatsu mo Teiso Kannen mo Darashinai Gishi Ni Ya-ra Sete Morau I Get to Fuck my Stepsister, Who's Sloppy in Both Her Lifestyle and Her Sense of Chastity +2026-01-07 02:30:22,909 - INFO - Searching Hentai2Read for: Seikatsu+mo+Teiso+Kannen+mo+Darashinai+Gishi+Ni+Ya-ra+Sete+Morau+I+Get+to+Fuck+my+Stepsister,+Who's+Sloppy+in+Both+Her+Lifestyle+and+Her+Sense+of+Chastity +2026-01-07 02:30:23,267 - INFO - Searching MangaUpdates for: Seikatsu mo Teiso Kannen mo Darashinai Gishi Ni Ya-ra Sete Morau I Get to Fuck my Stepsister, Who's Sloppy in Both Her Lifestyle and Her Sense of Chastity +2026-01-07 02:30:24,503 - INFO - Processing: [Wakamatsu] Seikatsu mo Teiso Kannen mo Darashinai Gishi Ni Ya-ra Sete Morau I Get to Fuck my Stepsister, Who's Sloppy in Both Her Lifestyle and Her Sense of Chastity [English] -> Apart_no_Otonari-san_ga_Yarasete_Kureru_Hanashi_(2024) +2026-01-07 02:30:24,987 - INFO - Searching Mangadex for: Hands-On Draining with Three Succubus Sisters +2026-01-07 02:30:25,419 - INFO - Searching metadata for: Hands-On Draining with Three Succubus Sisters +2026-01-07 02:30:25,657 - INFO - Fetching metadata from: https://nhentai.net/g/619320/ +2026-01-07 02:30:26,032 - INFO - Processing: Hands-On Draining with Three Succubus Sisters 3 -> Hands-On_Draining_with_Three_Succubus_Sisters_(akatsuki_myuutoakatuki_myuuto)_(2025) +2026-01-07 02:30:34,740 - INFO - Searching Mangadex for: Megutai Choushin Onee-san-tachi ni Ryousoku kara Press Sarete Nigerarenai Sex Sex Where I'm Sandwiched Between Tall, Busty Onee-sans and Unable to Escape +2026-01-07 02:30:36,000 - INFO - Searching metadata for: Wakamatsu Megutai Choushin Onee-san-tachi ni Ryousoku kara Press Sarete Nigerarenai Sex Sex Where I'm Sandwiched Between Tall, Busty Onee-sans and Unable to Escape +2026-01-07 02:30:36,344 - INFO - Searching metadata for: Megutai Choushin Onee-san-tachi ni Ryousoku kara Press Sarete Nigerarenai Sex Sex Where I'm Sandwiched Between Tall, Busty Onee-sans and Unable to Escape +2026-01-07 02:30:36,561 - INFO - Searching Hentai2Read for: Megutai+Choushin+Onee-san-tachi+ni+Ryousoku+kara+Press+Sarete+Nigerarenai+Sex+Sex+Where+I'm+Sandwiched+Between+Tall,+Busty+Onee-sans+and+Unable+to+Escape +2026-01-07 02:30:36,992 - INFO - Searching MangaUpdates for: Megutai Choushin Onee-san-tachi ni Ryousoku kara Press Sarete Nigerarenai Sex Sex Where I'm Sandwiched Between Tall, Busty Onee-sans and Unable to Escape +2026-01-07 02:30:37,743 - INFO - Processing: [Wakamatsu] Megutai Choushin Onee-san-tachi ni Ryousoku kara Press Sarete Nigerarenai Sex Sex Where I'm Sandwiched Between Tall, Busty Onee-sans and Unable to Escape [English] -> The_Ace_of_the_Volleyball_Team_Used_Her_Tall,_Strong,_Toned_Body_to_Hold_Me_Down_and_Have_Sex_(2022) +2026-01-07 02:30:38,085 - INFO - Searching Mangadex for: MotoYan ga Dechau Onee-san An Ex-Delinquent Lets Her Old Self Slip Out +2026-01-07 02:30:38,728 - INFO - Searching metadata for: Wakamatsu MotoYan ga Dechau Onee-san An Ex-Delinquent Lets Her Old Self Slip Out +2026-01-07 02:30:38,988 - INFO - Fetching metadata from: https://nhentai.net/g/499948/ +2026-01-07 02:30:39,178 - INFO - Processing: [Wakamatsu] MotoYan ga Dechau Onee-san An Ex-Delinquent Lets Her Old Self Slip Out [English] -> [Wakamatsu]_MotoYan_ga_Dechau_Onee-san__An_Ex-Delinquent_Lets_Her_Old_Self_Slip_Out_[English]_(2024) +2026-01-07 02:30:39,963 - INFO - Searching Mangadex for: EnglishMTL] +2026-01-07 02:30:40,315 - INFO - Searching metadata for: C106 EnglishMTL] +2026-01-07 02:30:40,446 - INFO - Searching metadata for: EnglishMTL] +2026-01-07 02:30:40,595 - INFO - Fetching metadata from: https://nhentai.net/g/524748/ +2026-01-07 02:30:40,819 - INFO - Processing: (C106) [Hachimidosan (Toge Toge)] Sefure Ijou Koibito Miman ~Kanojo no Imouto JK Hen~ More Than Fuckbuddies, Less Than Lovers ~Her Younger JK Sister Edition~ [English] [MTL] -> [Chimee_House_(Takapi)]_A_perfect_day_for_exposure_of_Sakura_Kotaka_1-3_(EnglishMTL)_(2024) +2026-01-07 02:30:41,583 - INFO - Searching Mangadex for: Onna Joushi Futari ni Ryougawa kara Semerarete Nou Bug-rasareru Hanashi Beset on Either Side by My Female Superiors, My Brain Short-Circuited +2026-01-07 02:30:42,518 - INFO - Searching metadata for: Wakamatsu Onna Joushi Futari ni Ryougawa kara Semerarete Nou Bug-rasareru Hanashi Beset on Either Side by My Female Superiors, My Brain Short-Circuited +2026-01-07 02:30:42,741 - INFO - Fetching metadata from: https://nhentai.net/g/454695/ +2026-01-07 02:30:42,935 - INFO - Processing: [Wakamatsu] Onna Joushi Futari ni Ryougawa kara Semerarete Nou Bug-rasareru Hanashi Beset on Either Side by My Female Superiors, My Brain Short-Circuited [English] -> [Wakamatsu]_Onna_Joushi_Futari_ni_Ryougawa_kara_Semerarete_Nou_Bug-rasareru_Hanashi__Beset_on_Either_Side_by_My_Female_Superiors,_My_Brain_Short-Circuited_[English]_(2023) +2026-01-07 02:30:43,564 - INFO - Searching Mangadex for: Watashi ni wa Seiyoku nante Arimasen tte Kao shiteru Kanojo No Seishoku Honnou o Kakitateru Hanashi A Girlfriend Who Claimed to Have no Lust Has Her Reproductive Instincts Stirred Up +2026-01-07 02:30:44,871 - INFO - Searching metadata for: Wakamatsu Watashi ni wa Seiyoku nante Arimasen tte Kao shiteru Kanojo No Seishoku Honnou o Kakitateru Hanashi A Girlfriend Who Claimed to Have no Lust Has Her Reproductive Instincts Stirred Up +2026-01-07 02:30:45,194 - INFO - Fetching metadata from: https://nhentai.net/g/454694/ +2026-01-07 02:30:45,369 - INFO - Processing: [Wakamatsu] Watashi ni wa Seiyoku nante Arimasen tte Kao shiteru Kanojo No Seishoku Honnou o Kakitateru Hanashi A Girlfriend Who Claimed to Have no Lust Has Her Reproductive Instincts Stirred Up [English] -> [Wakamatsu]_Watashi_ni_wa_Seiyoku_nante_Arimasen_tte_Kao_shiteru_Kanojo_No_Seishoku_Honnou_o_Kakitateru_Hanashi__A_Girlfriend_Who_Claimed_to_Have_no_Lust_Has_Her_Reproductive_Instincts_Stirred_Up_[English]_(2023) +2026-01-07 02:30:46,011 - INFO - Searching Mangadex for: Hands-On Draining with Three Succubus Sisters +2026-01-07 02:30:46,464 - INFO - Searching metadata for: akatsuki myuuto akatuki myuuto Hands-On Draining with Three Succubus Sisters +2026-01-07 02:30:46,653 - INFO - Fetching metadata from: https://nhentai.net/g/619320/ +2026-01-07 02:30:46,943 - INFO - Processing: Hands-On Draining with Three Succubus Sisters (akatsuki myuuto akatuki myuuto) -> Hands-On_Draining_with_Three_Succubus_Sisters_(akatsuki_myuutoakatuki_myuuto)_(2025) +2026-01-07 02:31:04,381 - INFO - Searching Mangadex for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Kazoku-minna Hen~ +2026-01-07 02:31:05,095 - INFO - Searching metadata for: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Kazoku-minna Hen~ +2026-01-07 02:31:05,362 - INFO - Fetching metadata from: https://nhentai.net/g/596767/ +2026-01-07 02:31:05,555 - INFO - Processing: Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Kazoku-minna Hen~ -> [Tiramisu_Tart_(Kazuhiro)]_Kazoku_Ryokou_wa_Yarimoku_Beach_de_Sex_Zanmai_~Kazoku-minna_Hen~_[Chinese]_[古月个人汉化]_(2025) +2026-01-07 02:31:08,014 - INFO - Searching Mangadex for: Takuhaibin no Uketorikata ga Dandan Darashinaku Natte Iku OL-chan A Woman Whose Greetings to the Delivery Man Gradually Get Sloppier +2026-01-07 02:31:09,029 - INFO - Searching metadata for: Wakamatsu Takuhaibin no Uketorikata ga Dandan Darashinaku Natte Iku OL-chan A Woman Whose Greetings to the Delivery Man Gradually Get Sloppier +2026-01-07 02:31:09,352 - INFO - Fetching metadata from: https://nhentai.net/g/459747/ +2026-01-07 02:31:09,521 - INFO - Processing: [Wakamatsu] Takuhaibin no Uketorikata ga Dandan Darashinaku Natte Iku OL-chan ( Ura-hen) A Woman Whose Greetings to the Delivery Man Gradually Get Sloppier ( Other Side) [English] -> [Wakamatsu]_Takuhaibin_no_Uketorikata_ga_Dandan_Darashinaku_Natte_Iku_OL-chan_(+_Ura-hen)__A_Woman_Whose_Greetings_to_the_Delivery_Man_Gradually_Get_Sloppier_(+_Other_Side)_[English]_(2023) +2026-01-07 02:31:11,649 - INFO - Searching Mangadex for: Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita Living together with the buxom female bully! +2026-01-07 02:31:12,476 - INFO - Searching metadata for: BOOLE Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita Living together with the buxom female bully! +2026-01-07 02:31:12,760 - INFO - Fetching metadata from: https://nhentai.net/g/575738/ +2026-01-07 02:31:12,922 - INFO - Processing: [BOOLE] Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita Living together with the buxom female bully! [English] -> [BOOLE]_Glamor_Furyou_Joshi_ni_Ijimerareta_ga_Doukyo_suru_Koto_ni_Shita_2__Living_together_with_the_buxom_female_bully!_2_[English]_(2025) +2026-01-07 02:31:14,124 - INFO - Searching Mangadex for: The Stubborn Childhood Friends Who Argue All the Time but were Made for Each Other +2026-01-07 02:31:14,800 - INFO - Searching metadata for: Wakamatsu The Stubborn Childhood Friends Who Argue All the Time but were Made for Each Other +2026-01-07 02:31:14,990 - INFO - Fetching metadata from: https://nhentai.net/g/602230/ +2026-01-07 02:31:15,147 - INFO - Processing: [Wakamatsu] The Stubborn Childhood Friends Who Argue All the Time but were Made for Each Other [English] -> [Wakamatsu]_Sunao_ni_Narezu_Iiatte_Bakkari_dakedo_Aishou_ga_Yoi_Osananajimi__The_Stubborn_Childhood_Friends_Who_Argue_All_the_Time_but_were_Made_for_Each_Other_[English]_[pikachiu24]_(2025) +2026-01-07 02:31:15,565 - INFO - Starting organization in /comics/pendingorganization... +2026-01-07 02:31:15,610 - INFO - Searching Mangadex for: Ippai Amayakashite Boku o Dame ni Shiyou to Suru Koakuma Onee-san no Hanashi Spoiled Silly by a Naughty Older Woman +2026-01-07 02:31:16,622 - INFO - Searching metadata for: Wakamatsu Ippai Amayakashite Boku o Dame ni Shiyou to Suru Koakuma Onee-san no Hanashi Spoiled Silly by a Naughty Older Woman +2026-01-07 02:31:16,996 - INFO - Fetching metadata from: https://nhentai.net/g/460122/ +2026-01-07 02:31:17,177 - INFO - Processing: [Wakamatsu]_Ippai_Amayakashite_Boku_o_Dame_ni_Shiyou_to_Suru_Koakuma_Onee-san_no_Hanashi__Spoiled_Silly_by_a_Naughty_Older_Woman_[English]_(2023).cbz -> [Wakamatsu]_Ippai_Amayakashite_Boku_o_Dame_ni_Shiyou_to_Suru_Koakuma_Onee-san_no_Hanashi__Spoiled_Silly_by_a_Naughty_Older_Woman_[English]_(2023) +2026-01-07 02:31:17,403 - INFO - Searching Mangadex for: Mahou Shoujo Lyrical Nanoha EXCEEDS +2026-01-07 02:31:17,883 - INFO - Processing: Mahou_Shoujo_Lyrical_Nanoha_EXCEEDS_(2025).cbz -> Mahou_Shoujo_Lyrical_Nanoha_EXCEEDS_(2025) +2026-01-07 02:31:18,230 - INFO - Searching Mangadex for: Older Step-sister Teaches Her Cheeky Little Step-brother a Lesson Namaiki Gitei o Kyoiku Suru o Gishi-chan +2026-01-07 02:31:19,082 - INFO - Searching metadata for: Wakamatsu Older Step-sister Teaches Her Cheeky Little Step-brother a Lesson Namaiki Gitei o Kyoiku Suru o Gishi-chan +2026-01-07 02:31:19,341 - INFO - Fetching metadata from: https://nhentai.net/g/540819/ +2026-01-07 02:31:19,509 - INFO - Processing: [Wakamatsu]_Older_Step-sister_Teaches_Her_Cheeky_Little_Step-brother_a_Lesson__Namaiki_Gitei_o_Kyoiku_Suru_o_Gishi-chan_[English]_(2024).cbz -> [Wakamatsu]_Older_Step-sister_Teaches_Her_Cheeky_Little_Step-brother_a_Lesson__Namaiki_Gitei_o_Kyoiku_Suru_o_Gishi-chan_[English]_(2024) +2026-01-07 02:31:19,668 - INFO - Searching Mangadex for: NATIONAL FERTILITY COMMISSION –WITH MARRIED WOMEN +2026-01-07 02:31:20,171 - INFO - Searching metadata for: Boole NATIONAL FERTILITY COMMISSION –WITH MARRIED WOMEN +2026-01-07 02:31:20,350 - INFO - Fetching metadata from: https://nhentai.net/g/610224/ +2026-01-07 02:31:20,496 - INFO - Processing: [Boole]_NATIONAL_FERTILITY_COMMISSION__–WITH_MARRIED_WOMEN-_[English]_(2025).cbz -> [Boole]_NATIONAL_FERTILITY_COMMISSION__–WITH_MARRIED_WOMEN-_[English]_(2025) +2026-01-07 02:31:20,582 - INFO - Searching Mangadex for: Seiso Kanojo ga Bitch ni Nacchau Hanashi The Pure Girl Became a Slut +2026-01-07 02:31:21,114 - INFO - Searching metadata for: Wakamatsu Seiso Kanojo ga Bitch ni Nacchau Hanashi The Pure Girl Became a Slut +2026-01-07 02:31:21,376 - INFO - Fetching metadata from: https://nhentai.net/g/499858/ +2026-01-07 02:31:21,526 - INFO - Processing: [Wakamatsu]_Seiso_Kanojo_ga_Bitch_ni_Nacchau_Hanashi__The_Pure_Girl_Became_a_Slut_[English]_(2024).cbz -> [Wakamatsu]_Seiso_Kanojo_ga_Bitch_ni_Nacchau_Hanashi__The_Pure_Girl_Became_a_Slut_[English]_(2024) +2026-01-07 02:31:21,677 - INFO - Searching Mangadex for: MotoYan ga Dechau Onee-san An Ex-Delinquent Lets Her Old Self Slip Out +2026-01-07 02:31:22,289 - INFO - Searching metadata for: Wakamatsu MotoYan ga Dechau Onee-san An Ex-Delinquent Lets Her Old Self Slip Out +2026-01-07 02:31:22,570 - INFO - Fetching metadata from: https://nhentai.net/g/499948/ +2026-01-07 02:31:22,763 - INFO - Processing: [Wakamatsu]_MotoYan_ga_Dechau_Onee-san__An_Ex-Delinquent_Lets_Her_Old_Self_Slip_Out_[English]_(2024).cbz -> [Wakamatsu]_MotoYan_ga_Dechau_Onee-san__An_Ex-Delinquent_Lets_Her_Old_Self_Slip_Out_[English]_(2024) +2026-01-07 02:31:23,044 - INFO - Searching Mangadex for: Darashina Sister Careless Sister {RedLantern} +2026-01-07 02:31:23,548 - INFO - Searching metadata for: IAPOC Darashina Sister Careless Sister {RedLantern} +2026-01-07 02:31:23,699 - INFO - Fetching metadata from: https://nhentai.net/g/478336/ +2026-01-07 02:31:23,859 - INFO - Processing: [IAPOC]_Darashina_Sister__Careless_Sister_(COMIC_ExE_35)_[English]_{RedLantern}_[Digital]_(2023).cbz -> [IAPOC]_Darashina_Sister__Careless_Sister_(COMIC_ExE_35)_[English]_{RedLantern}_[Digital]_(2023) +2026-01-07 02:31:24,548 - INFO - Searching Mangadex for: Tsukiai Hajimetara Meccha Karada o Motomemakutte kuru Downer-kei Onee-san The Gloomy Woman Who Came to Hunger for Me Once We Started Dating +2026-01-07 02:32:11,560 - INFO - Starting organization in /comics/pendingorganization... +2026-01-07 02:32:11,630 - INFO - Searching Mangadex for: [Wakamatsu] Tsukiai Hajimetara Meccha Karada o Motomemakutte kuru Downer-kei Onee-san The Gloomy Woman Who Came to Hunger for Me Once We Started Dating [English] (2024) +2026-01-07 02:32:12,950 - INFO - Searching metadata for: [Wakamatsu] Tsukiai Hajimetara Meccha Karada o Motomemakutte kuru Downer-kei Onee-san The Gloomy Woman Who Came to Hunger for Me Once We Started Dating [English] (2024) +2026-01-07 02:32:13,242 - INFO - Searching Hentai2Read for: [Wakamatsu]+Tsukiai+Hajimetara+Meccha+Karada+o+Motomemakutte+kuru+Downer-kei+Onee-san++The+Gloomy+Woman+Who+Came+to+Hunger+for+Me+Once+We+Started+Dating+[English]+(2024) +2026-01-07 02:32:13,637 - INFO - Searching MangaUpdates for: [Wakamatsu] Tsukiai Hajimetara Meccha Karada o Motomemakutte kuru Downer-kei Onee-san The Gloomy Woman Who Came to Hunger for Me Once We Started Dating [English] (2024) +2026-01-07 02:32:14,628 - INFO - Processing: [Wakamatsu]_Tsukiai_Hajimetara_Meccha_Karada_o_Motomemakutte_kuru_Downer-kei_Onee-san__The_Gloomy_Woman_Who_Came_to_Hunger_for_Me_Once_We_Started_Dating_[English]_(2024).cbz -> The_Gloomy_Woman_Who_Came_to_Hunger_for_Me_Once_We_Started_Dating_(2024) +2026-01-07 02:32:14,941 - INFO - Searching Mangadex for: [BOOLE] Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita 2 Living together with the buxom female bully! 2 [English] (2025) +2026-01-07 02:32:15,874 - INFO - Searching metadata for: [BOOLE] Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita 2 Living together with the buxom female bully! 2 [English] (2025) +2026-01-07 02:32:16,165 - INFO - Searching Hentai2Read for: [BOOLE]+Glamor+Furyou+Joshi+ni+Ijimerareta+ga+Doukyo+suru+Koto+ni+Shita+2++Living+together+with+the+buxom+female+bully!+2+[English]+(2025) +2026-01-07 02:32:16,603 - INFO - Searching MangaUpdates for: [BOOLE] Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita 2 Living together with the buxom female bully! 2 [English] (2025) +2026-01-07 02:32:17,277 - INFO - Processing: [BOOLE]_Glamor_Furyou_Joshi_ni_Ijimerareta_ga_Doukyo_suru_Koto_ni_Shita_2__Living_together_with_the_buxom_female_bully!_2_[English]_(2025).cbz -> Kowamote_Kouhai-kun_to_Doukyo_suru_koto_ni_narimasu_(2021) +2026-01-07 02:32:17,798 - INFO - Searching Mangadex for: [Wakamatsu] Reitetsu Kyonyuu Onna Joushi ni Tetteiteki ni Schedule Kanri sareru Hanashi My Cool, Large-Chested Boss Keeps Me On a Strict Schedule [English] (2023) +2026-01-07 02:32:18,992 - INFO - Searching metadata for: [Wakamatsu] Reitetsu Kyonyuu Onna Joushi ni Tetteiteki ni Schedule Kanri sareru Hanashi My Cool, Large-Chested Boss Keeps Me On a Strict Schedule [English] (2023) +2026-01-07 02:32:19,210 - INFO - Searching Hentai2Read for: [Wakamatsu]+Reitetsu+Kyonyuu+Onna+Joushi+ni+Tetteiteki+ni+Schedule+Kanri+sareru+Hanashi++My+Cool,+Large-Chested+Boss+Keeps+Me+On+a+Strict+Schedule+[English]+(2023) +2026-01-07 02:32:19,537 - INFO - Searching MangaUpdates for: [Wakamatsu] Reitetsu Kyonyuu Onna Joushi ni Tetteiteki ni Schedule Kanri sareru Hanashi My Cool, Large-Chested Boss Keeps Me On a Strict Schedule [English] (2023) +2026-01-07 02:32:20,261 - INFO - Processing: [Wakamatsu]_Reitetsu_Kyonyuu_Onna_Joushi_ni_Tetteiteki_ni_Schedule_Kanri_sareru_Hanashi__My_Cool,_Large-Chested_Boss_Keeps_Me_On_a_Strict_Schedule_[English]_(2023).cbz -> My_Cool,_Large-Chested_Boss_Keeps_Me_On_a_Strict_Schedule_(2022) +2026-01-07 02:32:20,465 - INFO - Searching Mangadex for: Yahoo, Mt. Inari! (2023) +2026-01-07 02:32:20,848 - INFO - Processing: Yahoo,_Mt._Inari!_(2023).cbz -> Yahoo,_Mt._Inari!_(2023) +2026-01-07 02:32:22,285 - INFO - Searching Mangadex for: Active Heart (2003) +2026-01-07 02:32:22,692 - INFO - Searching metadata for: Active Heart (2003) +2026-01-07 02:32:22,838 - INFO - Searching Hentai2Read for: Active+Heart+(2003) +2026-01-07 02:32:23,210 - INFO - Searching MangaUpdates for: Active Heart (2003) +2026-01-07 02:32:23,452 - INFO - Processing: Active_Heart_(2003).cbz -> Active_Heart_(2003) +2026-01-07 02:32:24,355 - INFO - Searching Mangadex for: U-Bu U-Bu (1994) +2026-01-07 02:32:24,743 - INFO - Processing: U-Bu_U-Bu_(1994).cbz -> Danshi_Kokoseidakedo_Gyaru_ni_TS_Shimashita_(2024) +2026-01-07 02:32:25,262 - INFO - Searching Mangadex for: [Tsubaki Jushirou] Mendou na Kanojo yori Kantan na Imouto de + Omake My Simple Sister Over A Troublesome Gilfriend + Bonus (Imouto Access) [English] [MegaFagget] [Digital] (2023) +2026-01-07 02:32:26,349 - INFO - Searching metadata for: [Tsubaki Jushirou] Mendou na Kanojo yori Kantan na Imouto de + Omake My Simple Sister Over A Troublesome Gilfriend + Bonus (Imouto Access) [English] [MegaFagget] [Digital] (2023) +2026-01-07 02:32:26,574 - INFO - Searching Hentai2Read for: [Tsubaki+Jushirou]+Mendou+na+Kanojo+yori+Kantan+na+Imouto+de+++Omake++My+Simple+Sister+Over+A+Troublesome+Gilfriend+++Bonus+(Imouto+Access)+[English]+[MegaFagget]+[Digital]+(2023) +2026-01-07 02:32:26,905 - INFO - Searching MangaUpdates for: [Tsubaki Jushirou] Mendou na Kanojo yori Kantan na Imouto de + Omake My Simple Sister Over A Troublesome Gilfriend + Bonus (Imouto Access) [English] [MegaFagget] [Digital] (2023) +2026-01-07 02:32:28,119 - INFO - Processing: [Tsubaki_Jushirou]_Mendou_na_Kanojo_yori_Kantan_na_Imouto_de_+_Omake__My_Simple_Sister_Over_A_Troublesome_Gilfriend_+_Bonus_(Imouto_Access)_[English]_[MegaFagget]_[Digital]_(2023).cbz -> Fujoshi_na_imouto_de_sumimasen_(2019) +2026-01-07 02:32:28,985 - INFO - Searching Mangadex for: Y+Y=Fuel!! (2016) +2026-01-07 02:32:29,375 - INFO - Processing: Y+Y=Fuel!!_(2016).cbz -> Full_Marks,_Hidden_Marriage_(2019) +2026-01-07 02:32:30,169 - INFO - Searching Mangadex for: [BOOLE] Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita 2丨曾经欺负过我的性感太妹 现在我决定与她同居2 [Chinese] [Decensored] (2025) +2026-01-07 02:32:31,118 - INFO - Searching metadata for: [BOOLE] Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita 2丨曾经欺负过我的性感太妹 现在我决定与她同居2 [Chinese] [Decensored] (2025) +2026-01-07 02:32:31,398 - INFO - Searching Hentai2Read for: [BOOLE]+Glamor+Furyou+Joshi+ni+Ijimerareta+ga+Doukyo+suru+Koto+ni+Shita+2丨曾经欺负过我的性感太妹+现在我决定与她同居2+[Chinese]+[Decensored]+(2025) +2026-01-07 02:32:31,810 - INFO - Searching MangaUpdates for: [BOOLE] Glamor Furyou Joshi ni Ijimerareta ga Doukyo suru Koto ni Shita 2丨曾经欺负过我的性感太妹 现在我决定与她同居2 [Chinese] [Decensored] (2025) +2026-01-07 02:32:32,251 - INFO - Processing: [BOOLE]_Glamor_Furyou_Joshi_ni_Ijimerareta_ga_Doukyo_suru_Koto_ni_Shita_2丨曾经欺负过我的性感太妹_现在我决定与她同居2_[Chinese]_[Decensored]_(2025).cbz -> Musume_ga_Furyou_ni_Otosareteita_(2019) +2026-01-07 02:32:32,574 - INFO - Searching Mangadex for: [Wakamatsu] Kyasha to Homan no Ma Ni Tatasa Reru 3P Threesome Caught Between Slim And Voluptuous [English] (2025) +2026-01-07 02:32:33,391 - INFO - Searching metadata for: [Wakamatsu] Kyasha to Homan no Ma Ni Tatasa Reru 3P Threesome Caught Between Slim And Voluptuous [English] (2025) +2026-01-07 02:32:33,666 - INFO - Searching Hentai2Read for: [Wakamatsu]+Kyasha+to+Homan+no+Ma+Ni+Tatasa+Reru+3P++Threesome+Caught+Between+Slim+And+Voluptuous+[English]+(2025) +2026-01-07 02:32:34,019 - INFO - Searching MangaUpdates for: [Wakamatsu] Kyasha to Homan no Ma Ni Tatasa Reru 3P Threesome Caught Between Slim And Voluptuous [English] (2025) +2026-01-07 02:32:34,638 - INFO - Processing: [Wakamatsu]_Kyasha_to_Homan_no_Ma_Ni_Tatasa_Reru_3P__Threesome_Caught_Between_Slim_And_Voluptuous_[English]_(2025).cbz -> Tadashii_Seikyouiku._(2011) +2026-01-07 02:32:34,758 - INFO - Searching Mangadex for: EnglishDecensoredDigital] +2026-01-07 02:32:35,085 - INFO - Searching metadata for: EnglishDecensoredDigital] +2026-01-07 02:32:35,213 - INFO - Searching Hentai2Read for: EnglishDecensoredDigital] +2026-01-07 02:32:35,505 - INFO - Searching MangaUpdates for: EnglishDecensoredDigital] +2026-01-07 02:32:35,624 - INFO - Processing: EnglishDecensoredDigital].cbz -> EnglishDecensoredDigital] +2026-01-07 02:32:36,459 - INFO - Searching Mangadex for: FaLLEN (2012) +2026-01-07 02:32:36,782 - INFO - Searching metadata for: FaLLEN (2012) +2026-01-07 02:32:36,945 - INFO - Fetching metadata from: https://nhentai.net/g/76838/ +2026-01-07 02:32:37,140 - INFO - Processing: FaLLEN_(2012).cbz -> [Saida_Kazuaki]_Datenshi_no_Rakuen__Paradise_of_the_Fallen_Angels_(ANGEL_Club_2012-04)_[English]_=LWB=_(76838) +2026-01-07 02:32:37,545 - INFO - Searching Mangadex for: Dr. Kim of London (2024) +2026-01-07 02:32:37,944 - INFO - Processing: Dr._Kim_of_London_(2024).cbz -> Dr._Kim_of_London_(2024) +2026-01-07 02:32:39,020 - INFO - Searching Mangadex for: [Wakamatsu] Koushinchou de MeguTai na Kanojo to Turn-sei no Sex Suru Ohanashi Turn-Taking Sex With My Very Tall Girlfriend [English] (2023) +2026-01-07 02:32:40,102 - INFO - Searching metadata for: [Wakamatsu] Koushinchou de MeguTai na Kanojo to Turn-sei no Sex Suru Ohanashi Turn-Taking Sex With My Very Tall Girlfriend [English] (2023) +2026-01-07 02:32:40,439 - INFO - Searching Hentai2Read for: [Wakamatsu]+Koushinchou+de+MeguTai+na+Kanojo+to+Turn-sei+no+Sex+Suru+Ohanashi++Turn-Taking+Sex+With+My+Very+Tall+Girlfriend+[English]+(2023) +2026-01-07 02:32:40,800 - INFO - Searching MangaUpdates for: [Wakamatsu] Koushinchou de MeguTai na Kanojo to Turn-sei no Sex Suru Ohanashi Turn-Taking Sex With My Very Tall Girlfriend [English] (2023) +2026-01-07 02:32:41,588 - INFO - Processing: [Wakamatsu]_Koushinchou_de_MeguTai_na_Kanojo_to_Turn-sei_no_Sex_Suru_Ohanashi__Turn-Taking_Sex_With_My_Very_Tall_Girlfriend_[English]_(2023).cbz -> Turn-Taking_Sex_With_My_Very_Tall_Girlfriend_(2023) +2026-01-07 02:32:41,823 - INFO - Searching Mangadex for: [Shin Hijiridou Honpo (Hijiri Tsukasa)] Ane no Seiyoku Shori wa Ototo ga Suru Monoda to, Gitei wa Omoi Hajimete Iru. [English] {Hennojin} [Decensored] [Digital] (2024) +2026-01-07 02:32:42,931 - INFO - Searching metadata for: [Shin Hijiridou Honpo (Hijiri Tsukasa)] Ane no Seiyoku Shori wa Ototo ga Suru Monoda to, Gitei wa Omoi Hajimete Iru. [English] {Hennojin} [Decensored] [Digital] (2024) +2026-01-07 02:32:43,274 - INFO - Searching Hentai2Read for: [Shin+Hijiridou+Honpo+(Hijiri+Tsukasa)]+Ane+no+Seiyoku+Shori+wa+Ototo+ga+Suru+Monoda+to,+Gitei+wa+Omoi+Hajimete+Iru.+[English]+{Hennojin}+[Decensored]+[Digital]+(2024) +2026-01-07 02:32:43,692 - INFO - Searching MangaUpdates for: [Shin Hijiridou Honpo (Hijiri Tsukasa)] Ane no Seiyoku Shori wa Ototo ga Suru Monoda to, Gitei wa Omoi Hajimete Iru. [English] {Hennojin} [Decensored] [Digital] (2024) +2026-01-07 02:32:44,314 - INFO - Processing: [Shin_Hijiridou_Honpo_(Hijiri_Tsukasa)]_Ane_no_Seiyoku_Shori_wa_Ototo_ga_Suru_Monoda_to,_Gitei_wa_Omoi_Hajimete_Iru._[English]_{Hennojin}_[Decensored]_[Digital]_(2024).cbz -> Ane_no_Seiyoku_Shori_wa_Ototo_ga_Suru_Monoda_to,_Gitei_wa_Omoi_Hajimete_Iru._(2022) +2026-01-07 02:32:45,157 - INFO - Searching Mangadex for: Soyosoyo's Works (2002) +2026-01-07 02:32:45,574 - INFO - Searching metadata for: Soyosoyo's Works (2002) +2026-01-07 02:32:45,738 - INFO - Searching Hentai2Read for: Soyosoyo's+Works+(2002) +2026-01-07 02:32:46,096 - INFO - Searching MangaUpdates for: Soyosoyo's Works (2002) +2026-01-07 02:32:46,335 - INFO - Processing: Soyosoyo's_Works_(2002).cbz -> Soyosoyo's_Works_(2002) +2026-01-07 02:32:47,145 - INFO - Searching Mangadex for: [Wakamatsu] Ikemen Ouji-sama na Onnanoko, Kayowai Otome na Otokonoko The Handsome Princely Girl, The Frail Girly Femboy [English] (2023) +2026-01-07 02:32:48,178 - INFO - Searching metadata for: [Wakamatsu] Ikemen Ouji-sama na Onnanoko, Kayowai Otome na Otokonoko The Handsome Princely Girl, The Frail Girly Femboy [English] (2023) +2026-01-07 02:32:48,365 - INFO - Searching Hentai2Read for: [Wakamatsu]+Ikemen+Ouji-sama+na+Onnanoko,+Kayowai+Otome+na+Otokonoko++The+Handsome+Princely+Girl,+The+Frail+Girly+Femboy+[English]+(2023) +2026-01-07 02:32:48,652 - INFO - Searching MangaUpdates for: [Wakamatsu] Ikemen Ouji-sama na Onnanoko, Kayowai Otome na Otokonoko The Handsome Princely Girl, The Frail Girly Femboy [English] (2023) +2026-01-07 02:32:49,192 - INFO - Processing: [Wakamatsu]_Ikemen_Ouji-sama_na_Onnanoko,_Kayowai_Otome_na_Otokonoko__The_Handsome_Princely_Girl,_The_Frail_Girly_Femboy_[English]_(2023).cbz -> A_Dashing,_Handsome_Woman_and_a_Frail,_Maidenly_Boy_(2023) +2026-01-07 02:32:49,387 - INFO - Searching Mangadex for: [Chimee House (Takapi)] A perfect day for exposure of Sakura Kotaka 1-3 (EnglishMTL) (2024) +2026-01-07 02:32:50,220 - INFO - Searching metadata for: [Chimee House (Takapi)] A perfect day for exposure of Sakura Kotaka 1-3 (EnglishMTL) (2024) +2026-01-07 02:32:50,416 - INFO - Searching Hentai2Read for: [Chimee+House+(Takapi)]+A+perfect+day+for+exposure+of+Sakura+Kotaka+1-3+(EnglishMTL)+(2024) +2026-01-07 02:32:50,740 - INFO - Searching MangaUpdates for: [Chimee House (Takapi)] A perfect day for exposure of Sakura Kotaka 1-3 (EnglishMTL) (2024) +2026-01-07 02:32:51,193 - INFO - Processing: [Chimee_House_(Takapi)]_A_perfect_day_for_exposure_of_Sakura_Kotaka_1-3_(EnglishMTL)_(2024).cbz -> Kanzennaru_Kubinagaryuu_no_Hi_(2013) +2026-01-07 02:32:51,433 - INFO - Searching Mangadex for: EnglishSquigglesJP] +2026-01-07 02:32:51,754 - INFO - Searching metadata for: EnglishSquigglesJP] +2026-01-07 02:32:51,885 - INFO - Searching Hentai2Read for: EnglishSquigglesJP] +2026-01-07 02:32:52,267 - INFO - Searching MangaUpdates for: EnglishSquigglesJP] +2026-01-07 02:32:52,502 - INFO - Processing: EnglishSquigglesJP].cbz -> EnglishSquigglesJP] +2026-01-07 02:32:54,754 - INFO - Searching Mangadex for: [Wakamatsu] Jiko Hyouka Hikui Joshi ga Jibun no Karada ni Jishin Mocchau made no Katei The Way That a Low Self-Esteem Woman Gained Confidence in Her Body [English] (2023) +2026-01-07 02:32:56,000 - INFO - Searching metadata for: [Wakamatsu] Jiko Hyouka Hikui Joshi ga Jibun no Karada ni Jishin Mocchau made no Katei The Way That a Low Self-Esteem Woman Gained Confidence in Her Body [English] (2023) +2026-01-07 02:32:56,260 - INFO - Searching Hentai2Read for: [Wakamatsu]+Jiko+Hyouka+Hikui+Joshi+ga+Jibun+no+Karada+ni+Jishin+Mocchau+made+no+Katei++The+Way+That+a+Low+Self-Esteem+Woman+Gained+Confidence+in+Her+Body+[English]+(2023) +2026-01-07 02:32:56,632 - INFO - Searching MangaUpdates for: [Wakamatsu] Jiko Hyouka Hikui Joshi ga Jibun no Karada ni Jishin Mocchau made no Katei The Way That a Low Self-Esteem Woman Gained Confidence in Her Body [English] (2023) +2026-01-07 02:32:57,471 - INFO - Processing: [Wakamatsu]_Jiko_Hyouka_Hikui_Joshi_ga_Jibun_no_Karada_ni_Jishin_Mocchau_made_no_Katei__The_Way_That_a_Low_Self-Esteem_Woman_Gained_Confidence_in_Her_Body_[English]_(2023).cbz -> The_Way_That_a_Low_Self-Esteem_Woman_Gained_Confidence_in_Her_Body_(2020) +2026-01-07 02:32:57,605 - INFO - Searching Mangadex for: [Wakamatsu] Ikemen Ouji-sama na Onnanoko, Kayowai Otome na Otokonoko A Dashing, Handsome Woman and a Frail, Maidenly Boy [English] (2023) +2026-01-07 02:32:58,699 - INFO - Searching metadata for: [Wakamatsu] Ikemen Ouji-sama na Onnanoko, Kayowai Otome na Otokonoko A Dashing, Handsome Woman and a Frail, Maidenly Boy [English] (2023) +2026-01-07 02:32:58,897 - INFO - Searching Hentai2Read for: [Wakamatsu]+Ikemen+Ouji-sama+na+Onnanoko,+Kayowai+Otome+na+Otokonoko++A+Dashing,+Handsome+Woman+and+a+Frail,+Maidenly+Boy+[English]+(2023) +2026-01-07 02:32:59,357 - INFO - Searching MangaUpdates for: [Wakamatsu] Ikemen Ouji-sama na Onnanoko, Kayowai Otome na Otokonoko A Dashing, Handsome Woman and a Frail, Maidenly Boy [English] (2023) +2026-01-07 02:33:00,147 - INFO - Processing: [Wakamatsu]_Ikemen_Ouji-sama_na_Onnanoko,_Kayowai_Otome_na_Otokonoko__A_Dashing,_Handsome_Woman_and_a_Frail,_Maidenly_Boy_[English]_(2023).cbz -> A_Dashing,_Handsome_Woman_and_a_Frail,_Maidenly_Boy_(2023) +2026-01-07 02:33:00,399 - INFO - Searching Mangadex for: S's (1999) +2026-01-07 02:33:00,700 - INFO - Searching metadata for: S's (1999) +2026-01-07 02:33:01,157 - INFO - Fetching metadata from: https://nhentai.net/g/574312/ +2026-01-07 02:33:01,366 - INFO - Processing: S's_(1999).cbz -> [Hiro潶]_《1999恶女一决胜负》_(574312) +2026-01-07 02:33:02,040 - INFO - Searching Mangadex for: [Wakamatsu] Sodachi no Yosasou na Kihin Afureru Onee-san no Kotobazukai The Speech of a Refined and Elegant Young Woman from a Good Family [English] (2022) +2026-01-07 02:33:03,045 - INFO - Searching metadata for: [Wakamatsu] Sodachi no Yosasou na Kihin Afureru Onee-san no Kotobazukai The Speech of a Refined and Elegant Young Woman from a Good Family [English] (2022) +2026-01-07 02:33:03,351 - INFO - Searching Hentai2Read for: [Wakamatsu]+Sodachi+no+Yosasou+na+Kihin+Afureru+Onee-san+no+Kotobazukai++The+Speech+of+a+Refined+and+Elegant+Young+Woman+from+a+Good+Family+[English]+(2022) +2026-01-07 02:33:03,859 - INFO - Searching MangaUpdates for: [Wakamatsu] Sodachi no Yosasou na Kihin Afureru Onee-san no Kotobazukai The Speech of a Refined and Elegant Young Woman from a Good Family [English] (2022) +2026-01-07 02:33:04,641 - INFO - Processing: [Wakamatsu]_Sodachi_no_Yosasou_na_Kihin_Afureru_Onee-san_no_Kotobazukai__The_Speech_of_a_Refined_and_Elegant_Young_Woman_from_a_Good_Family_[English]_(2022).cbz -> The_Speech_of_a_Refined_and_Elegant_Young_Woman_from_a_Good_Family_(2021) +2026-01-07 02:33:04,746 - INFO - Searching Mangadex for: [Ozy] Tsumamigui Cherry [English] [MTL] [Digital] (2025) +2026-01-07 02:33:05,340 - INFO - Searching metadata for: [Ozy] Tsumamigui Cherry [English] [MTL] [Digital] (2025) +2026-01-07 02:33:05,504 - INFO - Searching Hentai2Read for: [Ozy]+Tsumamigui+Cherry+[English]+[MTL]+[Digital]+(2025) +2026-01-07 02:33:05,804 - INFO - Searching MangaUpdates for: [Ozy] Tsumamigui Cherry [English] [MTL] [Digital] (2025) +2026-01-07 02:33:06,315 - INFO - Processing: [Ozy]_Tsumamigui_Cherry_[English]_[MTL]_[Digital]_(2025).cbz -> Tsumamigui_Cherry_(2023) +2026-01-07 02:33:11,787 - INFO - Searching Mangadex for: Hands-On Draining with Three Succubus Sisters (akatsuki myuutoakatuki myuuto) (2025) +2026-01-07 02:33:12,573 - INFO - Searching metadata for: Hands-On Draining with Three Succubus Sisters (akatsuki myuutoakatuki myuuto) (2025) +2026-01-07 02:33:12,739 - INFO - Searching Hentai2Read for: Hands-On+Draining+with+Three+Succubus+Sisters+(akatsuki+myuutoakatuki+myuuto)+(2025) +2026-01-07 02:33:13,139 - INFO - Searching MangaUpdates for: Hands-On Draining with Three Succubus Sisters (akatsuki myuutoakatuki myuuto) (2025) +2026-01-07 02:33:13,831 - INFO - Processing: Hands-On_Draining_with_Three_Succubus_Sisters_(akatsuki_myuutoakatuki_myuuto)_(2025).cbz -> Yoru_no_Koibito_(2017) +2026-01-07 02:33:19,808 - INFO - Searching Mangadex for: [Hijiri Tsukasa] Ona-Ashi! ~A Job Helping Erotic Manga Artists Masturbate~ -- ONA-ASHI! ~Ero Mangaka no Onanie o Tetsudau Shigoto~ [Digital] (2026) +2026-01-07 02:33:20,800 - INFO - Searching metadata for: [Hijiri Tsukasa] Ona-Ashi! ~A Job Helping Erotic Manga Artists Masturbate~ -- ONA-ASHI! ~Ero Mangaka no Onanie o Tetsudau Shigoto~ [Digital] (2026) +2026-01-07 02:33:21,097 - INFO - Searching Hentai2Read for: [Hijiri+Tsukasa]+Ona-Ashi!+~A+Job+Helping+Erotic+Manga+Artists+Masturbate~+--+ONA-ASHI!+~Ero+Mangaka+no+Onanie+o+Tetsudau+Shigoto~+[Digital]+(2026) +2026-01-07 02:33:21,517 - INFO - Searching MangaUpdates for: [Hijiri Tsukasa] Ona-Ashi! ~A Job Helping Erotic Manga Artists Masturbate~ -- ONA-ASHI! ~Ero Mangaka no Onanie o Tetsudau Shigoto~ [Digital] (2026) +2026-01-07 02:33:22,320 - INFO - Processing: [Hijiri_Tsukasa]_Ona-Ashi!_~A_Job_Helping_Erotic_Manga_Artists_Masturbate~_--_ONA-ASHI!_~Ero_Mangaka_no_Onanie_o_Tetsudau_Shigoto~_[Digital]_(2026).cbz -> ONA-ASSI!_~Ero_Manga_Ka_no_Onanie_wo_Tetsudau_Shigoto~_(2019) +2026-01-07 02:33:22,714 - INFO - Searching Mangadex for: [Wakamatsu] Onnanoko Atsukai Shinai to Mesu Dearu Koto o Wakarasetekuru Boyish Joshi A boyish girl who will show you that she is female if you don't treat her like one [English] (2024) +2026-01-07 02:33:23,902 - INFO - Searching metadata for: [Wakamatsu] Onnanoko Atsukai Shinai to Mesu Dearu Koto o Wakarasetekuru Boyish Joshi A boyish girl who will show you that she is female if you don't treat her like one [English] (2024) +2026-01-07 02:33:24,202 - INFO - Searching Hentai2Read for: [Wakamatsu]+Onnanoko+Atsukai+Shinai+to+Mesu+Dearu+Koto+o+Wakarasetekuru+Boyish+Joshi++A+boyish+girl+who+will+show+you+that+she+is+female+if+you+don't+treat+her+like+one+[English]+(2024) +2026-01-07 02:33:24,570 - INFO - Searching MangaUpdates for: [Wakamatsu] Onnanoko Atsukai Shinai to Mesu Dearu Koto o Wakarasetekuru Boyish Joshi A boyish girl who will show you that she is female if you don't treat her like one [English] (2024) +2026-01-07 02:33:25,688 - INFO - Processing: [Wakamatsu]_Onnanoko_Atsukai_Shinai_to_Mesu_Dearu_Koto_o_Wakarasetekuru_Boyish_Joshi__A_boyish_girl_who_will_show_you_that_she_is_female_if_you_don't_treat_her_like_one_[English]_(2024).cbz -> Itsumo_Kaerimichi_ga_Isshona_Ano_Ko_(2023) +2026-01-07 02:33:26,473 - INFO - Searching Mangadex for: [Wakamatsu] Shintaisou Circle Joshi ga Kansetsu Kadouiki Meippai Tsukatte H suru Hanashi The Rhythmic Gymnastics Girl Making Full Use of Her Flexibility During Sex [English] (2023) +2026-01-07 02:33:27,848 - INFO - Searching metadata for: [Wakamatsu] Shintaisou Circle Joshi ga Kansetsu Kadouiki Meippai Tsukatte H suru Hanashi The Rhythmic Gymnastics Girl Making Full Use of Her Flexibility During Sex [English] (2023) +2026-01-07 02:33:28,086 - INFO - Searching Hentai2Read for: [Wakamatsu]+Shintaisou+Circle+Joshi+ga+Kansetsu+Kadouiki+Meippai+Tsukatte+H+suru+Hanashi++The+Rhythmic+Gymnastics+Girl+Making+Full+Use+of+Her+Flexibility+During+Sex+[English]+(2023) +2026-01-07 02:33:28,459 - INFO - Searching MangaUpdates for: [Wakamatsu] Shintaisou Circle Joshi ga Kansetsu Kadouiki Meippai Tsukatte H suru Hanashi The Rhythmic Gymnastics Girl Making Full Use of Her Flexibility During Sex [English] (2023) +2026-01-07 02:33:29,477 - INFO - Processing: [Wakamatsu]_Shintaisou_Circle_Joshi_ga_Kansetsu_Kadouiki_Meippai_Tsukatte_H_suru_Hanashi__The_Rhythmic_Gymnastics_Girl_Making_Full_Use_of_Her_Flexibility_During_Sex_[English]_(2023).cbz -> Shintaisou_Circle_Joshi_ga_Kansetsu_Kadouiki_Meippai_Tsukatte_H_suru_Hanashi_(2021) +2026-01-07 02:33:29,712 - INFO - Searching Mangadex for: [Wakamatsu] Koushinchou de MeguTai na Kanojo ga Makechau Hi The Day I Won Against My Very Tall Girlfriend [English] (2024) +2026-01-07 02:33:30,668 - INFO - Searching metadata for: [Wakamatsu] Koushinchou de MeguTai na Kanojo ga Makechau Hi The Day I Won Against My Very Tall Girlfriend [English] (2024) +2026-01-07 02:33:31,006 - INFO - Searching Hentai2Read for: [Wakamatsu]+Koushinchou+de+MeguTai+na+Kanojo+ga+Makechau+Hi++The+Day+I+Won+Against+My+Very+Tall+Girlfriend+[English]+(2024) +2026-01-07 02:33:31,404 - INFO - Searching MangaUpdates for: [Wakamatsu] Koushinchou de MeguTai na Kanojo ga Makechau Hi The Day I Won Against My Very Tall Girlfriend [English] (2024) +2026-01-07 02:33:33,032 - INFO - Processing: [Wakamatsu]_Koushinchou_de_MeguTai_na_Kanojo_ga_Makechau_Hi__The_Day_I_Won_Against_My_Very_Tall_Girlfriend_[English]_(2024).cbz -> The_Day_I_Won_Against_My_Very_Tall_Girlfriend_(2023) +2026-01-07 02:33:33,265 - INFO - Searching Mangadex for: [Wakamatsu] Takuhaibin no Uketorikata ga Dandan Darashinaku Natte Iku OL-chan (+ Ura-hen) A Woman Whose Greetings to the Delivery Man Gradually Get Sloppier (+ Other Side) [English] (2023) +2026-01-07 02:33:34,539 - INFO - Searching metadata for: [Wakamatsu] Takuhaibin no Uketorikata ga Dandan Darashinaku Natte Iku OL-chan (+ Ura-hen) A Woman Whose Greetings to the Delivery Man Gradually Get Sloppier (+ Other Side) [English] (2023) +2026-01-07 02:33:34,815 - INFO - Searching Hentai2Read for: [Wakamatsu]+Takuhaibin+no+Uketorikata+ga+Dandan+Darashinaku+Natte+Iku+OL-chan+(++Ura-hen)++A+Woman+Whose+Greetings+to+the+Delivery+Man+Gradually+Get+Sloppier+(++Other+Side)+[English]+(2023) +2026-01-07 02:33:35,178 - INFO - Searching MangaUpdates for: [Wakamatsu] Takuhaibin no Uketorikata ga Dandan Darashinaku Natte Iku OL-chan (+ Ura-hen) A Woman Whose Greetings to the Delivery Man Gradually Get Sloppier (+ Other Side) [English] (2023) +2026-01-07 02:33:36,044 - INFO - Processing: [Wakamatsu]_Takuhaibin_no_Uketorikata_ga_Dandan_Darashinaku_Natte_Iku_OL-chan_(+_Ura-hen)__A_Woman_Whose_Greetings_to_the_Delivery_Man_Gradually_Get_Sloppier_(+_Other_Side)_[English]_(2023).cbz -> A_Woman_Whose_Greetings_to_the_Delivery_Man_Gradually_Get_Sloppier_(+_Other_Side)_(2023) +2026-01-07 02:33:36,436 - INFO - Searching Mangadex for: EnglishKumokuDigital] +2026-01-07 02:33:36,757 - INFO - Searching metadata for: EnglishKumokuDigital] +2026-01-07 02:33:36,884 - INFO - Searching Hentai2Read for: EnglishKumokuDigital] +2026-01-07 02:33:37,176 - INFO - Searching MangaUpdates for: EnglishKumokuDigital] +2026-01-07 02:33:37,349 - INFO - Processing: EnglishKumokuDigital].cbz -> EnglishKumokuDigital] +2026-01-07 02:33:37,798 - INFO - Searching Mangadex for: P.P.P!! (2007) +2026-01-07 02:33:38,163 - INFO - Searching metadata for: P.P.P!! (2007) +2026-01-07 02:33:38,384 - INFO - Fetching metadata from: https://nhentai.net/g/593160/ +2026-01-07 02:33:38,745 - INFO - Processing: P.P.P!!_(2007).cbz -> COMIC_HOTMiLK_2007-10_Vol._01_(593160) +2026-01-07 02:33:39,480 - INFO - Searching Mangadex for: Apart no Otonari-san ga Yarasete Kureru Hanashi (2024) +2026-01-07 02:33:40,042 - INFO - Searching metadata for: Apart no Otonari-san ga Yarasete Kureru Hanashi (2024) +2026-01-07 02:33:40,272 - INFO - Searching Hentai2Read for: Apart+no+Otonari-san+ga+Yarasete+Kureru+Hanashi+(2024) +2026-01-07 02:33:40,653 - INFO - Searching MangaUpdates for: Apart no Otonari-san ga Yarasete Kureru Hanashi (2024) +2026-01-07 02:33:41,189 - INFO - Processing: Apart_no_Otonari-san_ga_Yarasete_Kureru_Hanashi_(2024).cbz -> Apart_no_Otonari-san_ga_Yarasete_Kureru_Hanashi_(2024) +2026-01-07 02:33:41,326 - INFO - Searching Mangadex for: TS Panic (2012) +2026-01-07 02:33:41,710 - INFO - Searching metadata for: TS Panic (2012) +2026-01-07 02:33:41,885 - INFO - Searching Hentai2Read for: TS+Panic+(2012) +2026-01-07 02:33:42,201 - INFO - Searching MangaUpdates for: TS Panic (2012) +2026-01-07 02:33:42,490 - INFO - Processing: TS_Panic_(2012).cbz -> TS_Panic_(2012) +2026-01-07 02:33:43,016 - INFO - Searching Mangadex for: [Wakamatsu] Sodachi no Yosasou na Onee-san ga Ogehin Sex suru Hanashi Sono 2 A Refined and Elegant Young Woman from a Good Family Has Vulgar Sex (Part 2) [English] (2022) +2026-01-07 02:33:44,102 - INFO - Searching metadata for: [Wakamatsu] Sodachi no Yosasou na Onee-san ga Ogehin Sex suru Hanashi Sono 2 A Refined and Elegant Young Woman from a Good Family Has Vulgar Sex (Part 2) [English] (2022) +2026-01-07 02:33:44,384 - INFO - Searching Hentai2Read for: [Wakamatsu]+Sodachi+no+Yosasou+na+Onee-san+ga+Ogehin+Sex+suru+Hanashi+Sono+2++A+Refined+and+Elegant+Young+Woman+from+a+Good+Family+Has+Vulgar+Sex+(Part+2)+[English]+(2022) +2026-01-07 02:33:44,683 - INFO - Searching MangaUpdates for: [Wakamatsu] Sodachi no Yosasou na Onee-san ga Ogehin Sex suru Hanashi Sono 2 A Refined and Elegant Young Woman from a Good Family Has Vulgar Sex (Part 2) [English] (2022) +2026-01-07 02:33:45,496 - INFO - Processing: [Wakamatsu]_Sodachi_no_Yosasou_na_Onee-san_ga_Ogehin_Sex_suru_Hanashi_Sono_2__A_Refined_and_Elegant_Young_Woman_from_a_Good_Family_Has_Vulgar_Sex_(Part_2)_[English]_(2022).cbz -> Sodachi_no_Yosasou_na_Onee-san_ga_Ogehin_Sex_suru_Hanashi_(2021) +2026-01-07 02:33:45,747 - INFO - Searching Mangadex for: [Boole] Shussan Kanri Iinkai NATIONAL FERTILITY COMMISSION [English] [Uncensored] (2025) +2026-01-07 02:33:46,512 - INFO - Searching metadata for: [Boole] Shussan Kanri Iinkai NATIONAL FERTILITY COMMISSION [English] [Uncensored] (2025) +2026-01-07 02:33:46,655 - INFO - Searching Hentai2Read for: [Boole]+Shussan+Kanri+Iinkai++NATIONAL+FERTILITY+COMMISSION+[English]+[Uncensored]+(2025) +2026-01-07 02:33:47,091 - INFO - Searching MangaUpdates for: [Boole] Shussan Kanri Iinkai NATIONAL FERTILITY COMMISSION [English] [Uncensored] (2025) +2026-01-07 02:33:47,500 - INFO - Processing: [Boole]_Shussan_Kanri_Iinkai__NATIONAL_FERTILITY_COMMISSION_[English]_[Uncensored]_(2025).cbz -> Commission_(2015) +2026-01-07 02:33:47,635 - INFO - Searching Mangadex for: [Boole] Time Loop de Kaihatsu Sareru Sister Timeloop and Sex and Nun [English] [Decensored] (2025) +2026-01-07 02:33:48,397 - INFO - Searching metadata for: [Boole] Time Loop de Kaihatsu Sareru Sister Timeloop and Sex and Nun [English] [Decensored] (2025) +2026-01-07 02:33:48,651 - INFO - Searching Hentai2Read for: [Boole]+Time+Loop+de+Kaihatsu+Sareru+Sister++Timeloop+and+Sex+and+Nun+[English]+[Decensored]+(2025) +2026-01-07 02:33:49,009 - INFO - Searching MangaUpdates for: [Boole] Time Loop de Kaihatsu Sareru Sister Timeloop and Sex and Nun [English] [Decensored] (2025) +2026-01-07 02:33:49,390 - INFO - Processing: [Boole]_Time_Loop_de_Kaihatsu_Sareru_Sister__Timeloop_and_Sex_and_Nun_[English]_[Decensored]_(2025).cbz -> Sex_and_the_Sister_(2008) +2026-01-07 02:33:49,935 - INFO - Searching Mangadex for: [Ozy] Toshiue Lovers + Shitagaki [English] [MTL] [Digital] (2025) +2026-01-07 02:33:50,522 - INFO - Searching metadata for: [Ozy] Toshiue Lovers + Shitagaki [English] [MTL] [Digital] (2025) +2026-01-07 02:33:50,674 - INFO - Searching Hentai2Read for: [Ozy]+Toshiue+Lovers+++Shitagaki+[English]+[MTL]+[Digital]+(2025) +2026-01-07 02:33:50,949 - INFO - Searching MangaUpdates for: [Ozy] Toshiue Lovers + Shitagaki [English] [MTL] [Digital] (2025) +2026-01-07 02:33:51,295 - INFO - Processing: [Ozy]_Toshiue_Lovers_+_Shitagaki_[English]_[MTL]_[Digital]_(2025).cbz -> Toshiue_Lovers_(2013) +2026-01-07 02:33:58,527 - INFO - Searching Mangadex for: [Wakamatsu] Danshi o Mukuna mama Sodatete Hoshoku suru Warui Onee-san [English] (2024) +2026-01-07 02:33:59,254 - INFO - Searching metadata for: [Wakamatsu] Danshi o Mukuna mama Sodatete Hoshoku suru Warui Onee-san [English] (2024) +2026-01-07 02:33:59,474 - INFO - Searching Hentai2Read for: [Wakamatsu]+Danshi+o+Mukuna+mama+Sodatete+Hoshoku+suru+Warui+Onee-san+[English]+(2024) +2026-01-07 02:33:59,859 - INFO - Searching MangaUpdates for: [Wakamatsu] Danshi o Mukuna mama Sodatete Hoshoku suru Warui Onee-san [English] (2024) +2026-01-07 02:34:00,523 - INFO - Processing: [Wakamatsu]_Danshi_o_Mukuna_mama_Sodatete_Hoshoku_suru_Warui_Onee-san_[English]_(2024).cbz -> Onee-san_wa_Soushoku_Danshi_ni_Hatsujou_suru_(2018) +2026-01-07 02:34:00,759 - INFO - Searching Mangadex for: [Wakamatsu] Watashi ni wa Seiyoku nante Arimasen tte Kao shiteru Kanojo No Seishoku Honnou o Kakitateru Hanashi A Girlfriend Who Claimed to Have no Lust Has Her Reproductive Instincts Stirred Up [English] (2023) +2026-01-07 02:34:02,065 - INFO - Searching metadata for: [Wakamatsu] Watashi ni wa Seiyoku nante Arimasen tte Kao shiteru Kanojo No Seishoku Honnou o Kakitateru Hanashi A Girlfriend Who Claimed to Have no Lust Has Her Reproductive Instincts Stirred Up [English] (2023) +2026-01-07 02:34:02,434 - INFO - Searching Hentai2Read for: [Wakamatsu]+Watashi+ni+wa+Seiyoku+nante+Arimasen+tte+Kao+shiteru+Kanojo+No+Seishoku+Honnou+o+Kakitateru+Hanashi++A+Girlfriend+Who+Claimed+to+Have+no+Lust+Has+Her+Reproductive+Instincts+Stirred+Up+[English]+(2023) +2026-01-07 02:34:02,774 - INFO - Searching MangaUpdates for: [Wakamatsu] Watashi ni wa Seiyoku nante Arimasen tte Kao shiteru Kanojo No Seishoku Honnou o Kakitateru Hanashi A Girlfriend Who Claimed to Have no Lust Has Her Reproductive Instincts Stirred Up [English] (2023) +2026-01-07 02:34:03,995 - INFO - Processing: [Wakamatsu]_Watashi_ni_wa_Seiyoku_nante_Arimasen_tte_Kao_shiteru_Kanojo_No_Seishoku_Honnou_o_Kakitateru_Hanashi__A_Girlfriend_Who_Claimed_to_Have_no_Lust_Has_Her_Reproductive_Instincts_Stirred_Up_[English]_(2023).cbz -> Watashi_ni_wa_Seiyoku_nante_Arimasen_tte_Kao_shiteru_Kanojo_no_Seishoku_Honnou_o_Kakitateru_Hanashi_(2022) +2026-01-07 02:34:04,219 - INFO - Searching Mangadex for: [Wakamatsu] Honne Kikareru to Dorodoro shita Yokubou o Shoujiki ni Icchau Onee-san A Young Lady Who, When Asked, Honestly Reveals Her Filthy Desires [English] (2023) +2026-01-07 02:34:05,259 - INFO - Searching metadata for: [Wakamatsu] Honne Kikareru to Dorodoro shita Yokubou o Shoujiki ni Icchau Onee-san A Young Lady Who, When Asked, Honestly Reveals Her Filthy Desires [English] (2023) +2026-01-07 02:34:05,469 - INFO - Searching Hentai2Read for: [Wakamatsu]+Honne+Kikareru+to+Dorodoro+shita+Yokubou+o+Shoujiki+ni+Icchau+Onee-san++A+Young+Lady+Who,+When+Asked,+Honestly+Reveals+Her+Filthy+Desires+[English]+(2023) +2026-01-07 02:34:05,821 - INFO - Searching MangaUpdates for: [Wakamatsu] Honne Kikareru to Dorodoro shita Yokubou o Shoujiki ni Icchau Onee-san A Young Lady Who, When Asked, Honestly Reveals Her Filthy Desires [English] (2023) +2026-01-07 02:34:06,556 - INFO - Processing: [Wakamatsu]_Honne_Kikareru_to_Dorodoro_shita_Yokubou_o_Shoujiki_ni_Icchau_Onee-san__A_Young_Lady_Who,_When_Asked,_Honestly_Reveals_Her_Filthy_Desires_[English]_(2023).cbz -> A_Young_Lady_Who,_When_Asked,_Honestly_Reveals_Her_Filthy_Desires_(2022) +2026-01-07 02:34:06,792 - INFO - Searching Mangadex for: [Wakamatsu] Taisha ga Yoi Rikujoubu Joshi to Asedaku de Taiekimamire na Noumitsu Sex Suru Hanashi Hot and Sweaty Sex With a Girl From the Track Team [English] (2023) +2026-01-07 02:34:07,822 - INFO - Searching metadata for: [Wakamatsu] Taisha ga Yoi Rikujoubu Joshi to Asedaku de Taiekimamire na Noumitsu Sex Suru Hanashi Hot and Sweaty Sex With a Girl From the Track Team [English] (2023) +2026-01-07 02:34:08,125 - INFO - Searching Hentai2Read for: [Wakamatsu]+Taisha+ga+Yoi+Rikujoubu+Joshi+to+Asedaku+de+Taiekimamire+na+Noumitsu+Sex+Suru+Hanashi++Hot+and+Sweaty+Sex+With+a+Girl+From+the+Track+Team+[English]+(2023) +2026-01-07 02:34:08,569 - INFO - Searching MangaUpdates for: [Wakamatsu] Taisha ga Yoi Rikujoubu Joshi to Asedaku de Taiekimamire na Noumitsu Sex Suru Hanashi Hot and Sweaty Sex With a Girl From the Track Team [English] (2023) +2026-01-07 02:34:09,895 - INFO - Processing: [Wakamatsu]_Taisha_ga_Yoi_Rikujoubu_Joshi_to_Asedaku_de_Taiekimamire_na_Noumitsu_Sex_Suru_Hanashi__Hot_and_Sweaty_Sex_With_a_Girl_From_the_Track_Team_[English]_(2023).cbz -> Hot_and_Sweaty_Sex_With_a_Girl_From_the_Track_Team_(2023) +2026-01-07 02:34:10,085 - INFO - Searching Mangadex for: [Boole] PREGNANCY MANAGEMENT [English] (2025) +2026-01-07 02:34:10,618 - INFO - Searching metadata for: [Boole] PREGNANCY MANAGEMENT [English] (2025) +2026-01-07 02:34:10,755 - INFO - Searching Hentai2Read for: [Boole]+PREGNANCY+MANAGEMENT+[English]+(2025) +2026-01-07 02:34:11,099 - INFO - Searching MangaUpdates for: [Boole] PREGNANCY MANAGEMENT [English] (2025) +2026-01-07 02:34:11,515 - INFO - Processing: [Boole]_PREGNANCY_MANAGEMENT_[English]_(2025).cbz -> Hara_(2006) +2026-01-07 02:34:11,894 - INFO - Searching Mangadex for: 2x2xX (2025) +2026-01-07 02:34:12,232 - INFO - Searching metadata for: 2x2xX (2025) +2026-01-07 02:34:12,366 - INFO - Searching Hentai2Read for: 2x2xX+(2025) +2026-01-07 02:34:12,653 - INFO - Searching MangaUpdates for: 2x2xX (2025) +2026-01-07 02:34:12,870 - INFO - Processing: 2x2xX_(2025).cbz -> 2x2xX_(2025) +2026-01-07 02:34:13,700 - INFO - Searching Mangadex for: 0x0 Memories (2007) +2026-01-07 02:34:14,047 - INFO - Searching metadata for: 0x0 Memories (2007) +2026-01-07 02:34:14,184 - INFO - Searching Hentai2Read for: 0x0+Memories+(2007) +2026-01-07 02:34:14,517 - INFO - Searching MangaUpdates for: 0x0 Memories (2007) +2026-01-07 02:34:14,794 - INFO - Processing: 0x0_Memories_(2007).cbz -> Clannad_(SHAA)_(2008) +2026-01-07 02:34:16,562 - INFO - Searching Mangadex for: [Mogudan] Tatsumaki-ppoi Tsuma (One Punch Man) [English] (2025) +2026-01-07 02:34:17,163 - INFO - Searching metadata for: [Mogudan] Tatsumaki-ppoi Tsuma (One Punch Man) [English] (2025) +2026-01-07 02:34:17,342 - INFO - Searching Hentai2Read for: [Mogudan]+Tatsumaki-ppoi+Tsuma+(One+Punch+Man)+[English]+(2025) +2026-01-07 02:34:17,624 - INFO - Searching MangaUpdates for: [Mogudan] Tatsumaki-ppoi Tsuma (One Punch Man) [English] (2025) +2026-01-07 02:34:17,934 - INFO - Processing: [Mogudan]_Tatsumaki-ppoi_Tsuma_(One_Punch_Man)_[English]_(2025).cbz -> One_Punch-Man_(2012) +2026-01-07 02:34:18,367 - INFO - Searching Mangadex for: [Furaimai] Tsuma ni Ani to Kozukuri Shite Moraimashita [English] (2025) +2026-01-07 02:34:18,974 - INFO - Searching metadata for: [Furaimai] Tsuma ni Ani to Kozukuri Shite Moraimashita [English] (2025) +2026-01-07 02:34:19,151 - INFO - Searching Hentai2Read for: [Furaimai]+Tsuma+ni+Ani+to+Kozukuri+Shite+Moraimashita+[English]+(2025) +2026-01-07 02:34:19,524 - INFO - Searching MangaUpdates for: [Furaimai] Tsuma ni Ani to Kozukuri Shite Moraimashita [English] (2025) +2026-01-07 02:34:19,959 - INFO - Processing: [Furaimai]_Tsuma_ni_Ani_to_Kozukuri_Shite_Moraimashita_[English]_(2025).cbz -> Tsuma_o_Kachiku_ni_Shite_Kudasai_(2013) +2026-01-07 02:34:21,339 - INFO - Searching Mangadex for: [Ozy] Tsuyatsuma Jouji [English] [MTL] (2025) +2026-01-07 02:34:21,862 - INFO - Searching metadata for: [Ozy] Tsuyatsuma Jouji [English] [MTL] (2025) +2026-01-07 02:34:22,004 - INFO - Searching Hentai2Read for: [Ozy]+Tsuyatsuma+Jouji+[English]+[MTL]+(2025) +2026-01-07 02:34:22,374 - INFO - Searching MangaUpdates for: [Ozy] Tsuyatsuma Jouji [English] [MTL] (2025) +2026-01-07 02:34:22,751 - INFO - Processing: [Ozy]_Tsuyatsuma_Jouji_[English]_[MTL]_(2025).cbz -> Tsuyatsuma_Jouji_(2017) +2026-01-07 02:34:29,899 - INFO - Searching Mangadex for: [Wakamatsu] Mesaki no kairaku o chiratsuka sete daraku o izanau warui onesan [Chinese] [ANDX個人漢化 & 曙光个人重嵌] [Decensored] (2025) +2026-01-07 02:34:30,909 - INFO - Searching metadata for: [Wakamatsu] Mesaki no kairaku o chiratsuka sete daraku o izanau warui onesan [Chinese] [ANDX個人漢化 & 曙光个人重嵌] [Decensored] (2025) +2026-01-07 02:34:31,096 - INFO - Fetching metadata from: https://nhentai.net/g/567384/ +2026-01-07 02:34:31,299 - INFO - Processing: [Wakamatsu]_Mesaki_no_kairaku_o_chiratsuka_sete_daraku_o_izanau_warui_onesan_[Chinese]_[ANDX個人漢化_&_曙光个人重嵌]_[Decensored]_(2025).cbz -> [Wakamatsu]_Mesaki_no_kairaku_o_chiratsuka_sete_daraku_o_izanau_warui_onesan_[Chinese]_[ANDX個人漢化_&_曙光个人重嵌]_[Decensored]_(567384) +2026-01-07 02:34:31,477 - INFO - Searching Mangadex for: [Wakamatsu] Namaiki Bakkari Iu kedo Sugu Wakaraserarechau Kouhai-chan no Ohanashi A Bratty Underclassman Who Quickly Learned Her Lesson [English] (2023) +2026-01-07 02:34:32,509 - INFO - Searching metadata for: [Wakamatsu] Namaiki Bakkari Iu kedo Sugu Wakaraserarechau Kouhai-chan no Ohanashi A Bratty Underclassman Who Quickly Learned Her Lesson [English] (2023) +2026-01-07 02:34:32,700 - INFO - Searching Hentai2Read for: [Wakamatsu]+Namaiki+Bakkari+Iu+kedo+Sugu+Wakaraserarechau+Kouhai-chan+no+Ohanashi++A+Bratty+Underclassman+Who+Quickly+Learned+Her+Lesson+[English]+(2023) +2026-01-07 02:34:33,064 - INFO - Searching MangaUpdates for: [Wakamatsu] Namaiki Bakkari Iu kedo Sugu Wakaraserarechau Kouhai-chan no Ohanashi A Bratty Underclassman Who Quickly Learned Her Lesson [English] (2023) +2026-01-07 02:34:33,827 - INFO - Processing: [Wakamatsu]_Namaiki_Bakkari_Iu_kedo_Sugu_Wakaraserarechau_Kouhai-chan_no_Ohanashi__A_Bratty_Underclassman_Who_Quickly_Learned_Her_Lesson_[English]_(2023).cbz -> A_Bratty_Underclassman_Who_Quickly_Learned_Her_Lesson_(2023) +2026-01-07 02:34:34,071 - INFO - Searching Mangadex for: [Akikusa Peperon] Muchi Niku Hitozuma Smash Chubby Wife Smash (Mozzarella) [English] [Fated Circle] (2025) +2026-01-07 02:34:34,871 - INFO - Searching metadata for: [Akikusa Peperon] Muchi Niku Hitozuma Smash Chubby Wife Smash (Mozzarella) [English] [Fated Circle] (2025) +2026-01-07 02:34:35,027 - INFO - Searching Hentai2Read for: [Akikusa+Peperon]+Muchi+Niku+Hitozuma+Smash++Chubby+Wife+Smash+(Mozzarella)+[English]+[Fated+Circle]+(2025) +2026-01-07 02:34:35,402 - INFO - Searching MangaUpdates for: [Akikusa Peperon] Muchi Niku Hitozuma Smash Chubby Wife Smash (Mozzarella) [English] [Fated Circle] (2025) +2026-01-07 02:34:35,961 - INFO - Processing: [Akikusa_Peperon]_Muchi_Niku_Hitozuma_Smash__Chubby_Wife_Smash_(Mozzarella)_[English]_[Fated_Circle]_(2025).cbz -> Smash_Smash_(2015) +2026-01-07 02:34:37,088 - INFO - Searching Mangadex for: [Wakamatsu] Sunao ni Narezu Iiatte Bakkari dakedo Aishou ga Yoi Osananajimi The Stubborn Childhood Friends Who Argue All the Time but were Made for Each Other [English] [pikachiu24] (2025) +2026-01-07 02:34:38,462 - INFO - Searching metadata for: [Wakamatsu] Sunao ni Narezu Iiatte Bakkari dakedo Aishou ga Yoi Osananajimi The Stubborn Childhood Friends Who Argue All the Time but were Made for Each Other [English] [pikachiu24] (2025) +2026-01-07 02:34:38,690 - INFO - Searching Hentai2Read for: [Wakamatsu]+Sunao+ni+Narezu+Iiatte+Bakkari+dakedo+Aishou+ga+Yoi+Osananajimi++The+Stubborn+Childhood+Friends+Who+Argue+All+the+Time+but+were+Made+for+Each+Other+[English]+[pikachiu24]+(2025) +2026-01-07 02:34:39,054 - INFO - Searching MangaUpdates for: [Wakamatsu] Sunao ni Narezu Iiatte Bakkari dakedo Aishou ga Yoi Osananajimi The Stubborn Childhood Friends Who Argue All the Time but were Made for Each Other [English] [pikachiu24] (2025) +2026-01-07 02:34:39,939 - INFO - Processing: [Wakamatsu]_Sunao_ni_Narezu_Iiatte_Bakkari_dakedo_Aishou_ga_Yoi_Osananajimi__The_Stubborn_Childhood_Friends_Who_Argue_All_the_Time_but_were_Made_for_Each_Other_[English]_[pikachiu24]_(2025).cbz -> Doll_House_no_Koibito_(2011) +2026-01-07 02:34:40,048 - INFO - Searching Mangadex for: [True Seido☆Honpo (Sei☆Shi)] The story of having sex with a cousin whom she has never met before in her mother-in-law's countryside where there is an H custom. [DL version] (2024) +2026-01-07 02:34:41,176 - INFO - Searching metadata for: [True Seido☆Honpo (Sei☆Shi)] The story of having sex with a cousin whom she has never met before in her mother-in-law's countryside where there is an H custom. [DL version] (2024) +2026-01-07 02:34:41,684 - INFO - Searching Hentai2Read for: [True+Seido☆Honpo+(Sei☆Shi)]+The+story+of+having+sex+with+a+cousin+whom+she+has+never+met+before+in+her+mother-in-law's+countryside+where+there+is+an+H+custom.+[DL+version]+(2024) +2026-01-07 02:34:42,050 - INFO - Searching MangaUpdates for: [True Seido☆Honpo (Sei☆Shi)] The story of having sex with a cousin whom she has never met before in her mother-in-law's countryside where there is an H custom. [DL version] (2024) +2026-01-07 02:34:43,159 - INFO - Processing: [True_Seido☆Honpo_(Sei☆Shi)]_The_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother-in-law's_countryside_where_there_is_an_H_custom._[DL_version]_(2024).cbz -> Kage_Aru_Tokoro_ni_(2005) +2026-01-07 02:34:44,120 - INFO - Searching Mangadex for: 8 Banme no Prince (1995) +2026-01-07 02:34:44,513 - INFO - Searching metadata for: 8 Banme no Prince (1995) +2026-01-07 02:34:44,684 - INFO - Searching Hentai2Read for: 8+Banme+no+Prince+(1995) +2026-01-07 02:34:45,036 - INFO - Searching MangaUpdates for: 8 Banme no Prince (1995) +2026-01-07 02:34:45,422 - INFO - Processing: 8_Banme_no_Prince_(1995).cbz -> 8_Banme_no_Prince_(1995) +2026-01-07 02:34:46,251 - INFO - Searching Mangadex for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru (2023) +2026-01-07 02:34:46,966 - INFO - Searching metadata for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru (2023) +2026-01-07 02:34:47,240 - INFO - Searching Hentai2Read for: Sex+Shinai+to+Derarenai+Heya+ni+Naka+no+Warui+Imouto+to+Tojikomerareru+(2023) +2026-01-07 02:34:47,584 - INFO - Searching MangaUpdates for: Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru (2023) +2026-01-07 02:34:48,040 - INFO - Processing: Sex_Shinai_to_Derarenai_Heya_ni_Naka_no_Warui_Imouto_to_Tojikomerareru_(2023).cbz -> Sex_Shinai_to_Derarenai_Heya_ni_Naka_no_Warui_Imouto_to_Tojikomerareru_(2023) +2026-01-07 02:35:10,397 - INFO - Searching Mangadex for: [Wakamatsu] Otouto o Isei to Shite Isshiki Shite Shimau Mukuchi na Onee-chan A Quiet Older Sister Who Has Come to See Her Brother as a Man [English] (2023) +2026-01-07 02:35:11,538 - INFO - Searching metadata for: [Wakamatsu] Otouto o Isei to Shite Isshiki Shite Shimau Mukuchi na Onee-chan A Quiet Older Sister Who Has Come to See Her Brother as a Man [English] (2023) +2026-01-07 02:35:11,889 - INFO - Searching Hentai2Read for: [Wakamatsu]+Otouto+o+Isei+to+Shite+Isshiki+Shite+Shimau+Mukuchi+na+Onee-chan++A+Quiet+Older+Sister+Who+Has+Come+to+See+Her+Brother+as+a+Man+[English]+(2023) +2026-01-07 02:35:12,260 - INFO - Searching MangaUpdates for: [Wakamatsu] Otouto o Isei to Shite Isshiki Shite Shimau Mukuchi na Onee-chan A Quiet Older Sister Who Has Come to See Her Brother as a Man [English] (2023) +2026-01-07 02:35:13,697 - INFO - Processing: [Wakamatsu]_Otouto_o_Isei_to_Shite_Isshiki_Shite_Shimau_Mukuchi_na_Onee-chan__A_Quiet_Older_Sister_Who_Has_Come_to_See_Her_Brother_as_a_Man_[English]_(2023).cbz -> Quiet_Older_Sister_That's_Conscious_of_Her_Younger_Brother_as_the_Opposite_Sex_(2021) +2026-01-07 02:35:13,935 - INFO - Searching Mangadex for: [ICE] Matching Joushi Aishou wa Karada de Check Matched up with my Boss ~ Checking the Compatibility of our Bodies ~ (ANGEL Club 2022-03) [English] [Digital] (2022) +2026-01-07 02:35:15,031 - INFO - Searching metadata for: [ICE] Matching Joushi Aishou wa Karada de Check Matched up with my Boss ~ Checking the Compatibility of our Bodies ~ (ANGEL Club 2022-03) [English] [Digital] (2022) +2026-01-07 02:35:15,286 - INFO - Fetching metadata from: https://nhentai.net/g/408257/ +2026-01-07 02:35:15,578 - INFO - Processing: [ICE]_Matching_Joushi_Aishou_wa_Karada_de_Check__Matched_up_with_my_Boss_~_Checking_the_Compatibility_of_our_Bodies_~_(ANGEL_Club_2022-03)_[English]_[Digital]_(2022).cbz -> [ICE]_Matching_Joushi_Aishou_wa_Karada_de_Check__Matched_up_with_my_Boss_~_Checking_the_Compatibility_of_our_Bodies_~_(ANGEL_Club_2022-03)_[English]_[Digital]_(408257) +2026-01-07 02:35:16,027 - INFO - Searching Mangadex for: [Wakamatsu] Kozukuri no Shikata o Dankai-teki ni Oshiete Kureru Onee-san An Onee-san Who Teaches Me Step by Step How to Make a Baby [English] (2025) +2026-01-07 02:35:17,015 - INFO - Searching metadata for: [Wakamatsu] Kozukuri no Shikata o Dankai-teki ni Oshiete Kureru Onee-san An Onee-san Who Teaches Me Step by Step How to Make a Baby [English] (2025) +2026-01-07 02:35:17,540 - INFO - Searching Hentai2Read for: [Wakamatsu]+Kozukuri+no+Shikata+o+Dankai-teki+ni+Oshiete+Kureru+Onee-san++An+Onee-san+Who+Teaches+Me+Step+by+Step+How+to+Make+a+Baby+[English]+(2025) +2026-01-07 02:35:17,885 - INFO - Searching MangaUpdates for: [Wakamatsu] Kozukuri no Shikata o Dankai-teki ni Oshiete Kureru Onee-san An Onee-san Who Teaches Me Step by Step How to Make a Baby [English] (2025) +2026-01-07 02:35:18,915 - INFO - Processing: [Wakamatsu]_Kozukuri_no_Shikata_o_Dankai-teki_ni_Oshiete_Kureru_Onee-san__An_Onee-san_Who_Teaches_Me_Step_by_Step_How_to_Make_a_Baby_[English]_(2025).cbz -> Oshiete_Onee-san_(2003) +2026-01-07 02:35:19,049 - INFO - Searching Mangadex for: Mahouka Koukou no Rettousei - Nankai Soujou-hen (2021) +2026-01-07 02:35:19,661 - INFO - Processing: Mahouka_Koukou_no_Rettousei_-_Nankai_Soujou-hen_(2021).cbz -> Mahouka_Koukou_no_Rettousei_-_Nankai_Soujou-hen_(2021) +2026-01-07 02:35:19,752 - INFO - Searching Mangadex for: [Nasipasuta] Darashinaku Ochiru Onee-san Wa Suki Desu Ka Do you like sloppy big sisters (COMIC ExE 24) [English] {Exo Subs} [Digital] (2021) +2026-01-07 02:35:20,631 - INFO - Searching metadata for: [Nasipasuta] Darashinaku Ochiru Onee-san Wa Suki Desu Ka Do you like sloppy big sisters (COMIC ExE 24) [English] {Exo Subs} [Digital] (2021) +2026-01-07 02:35:20,899 - INFO - Searching Hentai2Read for: [Nasipasuta]+Darashinaku+Ochiru+Onee-san+Wa+Suki+Desu+Ka++Do+you+like+sloppy+big+sisters+(COMIC+ExE+24)+[English]+{Exo+Subs}+[Digital]+(2021) +2026-01-07 02:35:21,275 - INFO - Searching MangaUpdates for: [Nasipasuta] Darashinaku Ochiru Onee-san Wa Suki Desu Ka Do you like sloppy big sisters (COMIC ExE 24) [English] {Exo Subs} [Digital] (2021) +2026-01-07 02:35:22,063 - INFO - Processing: [Nasipasuta]_Darashinaku_Ochiru_Onee-san_Wa_Suki_Desu_Ka__Do_you_like_sloppy_big_sisters_(COMIC_ExE_24)_[English]_{Exo_Subs}_[Digital]_(2021).cbz -> Ibitsu_na_Ai_no_Su_(2017) +2026-01-07 02:35:23,034 - INFO - Searching Mangadex for: [Shin Hijiridou Honpo (Hijiri Tsukasa)] Tomodachi ga Urayamu H Sugiru Boku no Mama to Onee–chan wa, Tokoro Kamawazu Boku o Yuuwaku o Shite Kimasu. [English] {Hennojin} [Decensored] [Digital] (2025) +2026-01-07 02:35:24,289 - INFO - Searching metadata for: [Shin Hijiridou Honpo (Hijiri Tsukasa)] Tomodachi ga Urayamu H Sugiru Boku no Mama to Onee–chan wa, Tokoro Kamawazu Boku o Yuuwaku o Shite Kimasu. [English] {Hennojin} [Decensored] [Digital] (2025) +2026-01-07 02:35:24,678 - INFO - Searching Hentai2Read for: [Shin+Hijiridou+Honpo+(Hijiri+Tsukasa)]+Tomodachi+ga+Urayamu+H+Sugiru+Boku+no+Mama+to+Onee–chan+wa,+Tokoro+Kamawazu+Boku+o+Yuuwaku+o+Shite+Kimasu.+[English]+{Hennojin}+[Decensored]+[Digital]+(2025) +2026-01-07 02:35:25,090 - INFO - Searching MangaUpdates for: [Shin Hijiridou Honpo (Hijiri Tsukasa)] Tomodachi ga Urayamu H Sugiru Boku no Mama to Onee–chan wa, Tokoro Kamawazu Boku o Yuuwaku o Shite Kimasu. [English] {Hennojin} [Decensored] [Digital] (2025) +2026-01-07 02:35:26,747 - INFO - Processing: [Shin_Hijiridou_Honpo_(Hijiri_Tsukasa)]_Tomodachi_ga_Urayamu_H_Sugiru_Boku_no_Mama_to_Onee–chan_wa,_Tokoro_Kamawazu_Boku_o_Yuuwaku_o_Shite_Kimasu._[English]_{Hennojin}_[Decensored]_[Digital]_(2025).cbz -> Tomodachi_ga_Urayamu_H_Sugiru_Boku_no_Mama_to_Onee–chan_wa,_Tokoro_Kamawazu_Boku_o_Yuuwaku_o_Shite_Kimasu._(2022) +2026-01-07 02:35:27,651 - INFO - Searching Mangadex for: [Wakamatsu] Doutei-kun to Keiken Houfu na Onee-san ga Turn-sei Sex Suru Hanashi Turn-Taking Sex Between a Virgin and an Experienced Older Woman [English] (2023) +2026-01-07 02:35:28,956 - INFO - Searching metadata for: [Wakamatsu] Doutei-kun to Keiken Houfu na Onee-san ga Turn-sei Sex Suru Hanashi Turn-Taking Sex Between a Virgin and an Experienced Older Woman [English] (2023) +2026-01-07 02:35:29,254 - INFO - Searching Hentai2Read for: [Wakamatsu]+Doutei-kun+to+Keiken+Houfu+na+Onee-san+ga+Turn-sei+Sex+Suru+Hanashi++Turn-Taking+Sex+Between+a+Virgin+and+an+Experienced+Older+Woman+[English]+(2023) +2026-01-07 02:35:29,646 - INFO - Searching MangaUpdates for: [Wakamatsu] Doutei-kun to Keiken Houfu na Onee-san ga Turn-sei Sex Suru Hanashi Turn-Taking Sex Between a Virgin and an Experienced Older Woman [English] (2023) +2026-01-07 02:35:30,351 - INFO - Processing: [Wakamatsu]_Doutei-kun_to_Keiken_Houfu_na_Onee-san_ga_Turn-sei_Sex_Suru_Hanashi__Turn-Taking_Sex_Between_a_Virgin_and_an_Experienced_Older_Woman_[English]_(2023).cbz -> Turn-Taking_Sex_Between_a_Virgin_and_an_Experienced_Older_Woman_(2022) +2026-01-07 02:35:30,610 - INFO - Searching Mangadex for: [Kiliu] Okasare Imouto Misaki (Haha mo Okasareru yo!) Violated little sister Misaki (The mother gets raped too!) (COMIC Masyo 2025-12) [English] [Digital] (2025) +2026-01-07 02:35:31,704 - INFO - Searching metadata for: [Kiliu] Okasare Imouto Misaki (Haha mo Okasareru yo!) Violated little sister Misaki (The mother gets raped too!) (COMIC Masyo 2025-12) [English] [Digital] (2025) +2026-01-07 02:35:31,977 - INFO - Fetching metadata from: https://nhentai.net/g/611722/ +2026-01-07 02:35:32,167 - INFO - Processing: [Kiliu]_Okasare_Imouto_Misaki_(Haha_mo_Okasareru_yo!)__Violated_little_sister_Misaki_(The_mother_gets_raped_too!)_(COMIC_Masyo_2025-12)_[English]_[Digital]_(2025).cbz -> [Kiliu]_Okasare_Imouto_Misaki_(Haha_mo_Okasareru_yo!)__Violated_little_sister_Misaki_(The_mother_gets_raped_too!)_(COMIC_Masyo_2025-12)_[English]_[Digital]_(611722) +2026-01-07 02:35:32,611 - INFO - Searching Mangadex for: [Wakamatsu] Rikutsuppoi Kouhai-chan to Rikutsunuki de Majiwaru made no Hanashi Having Sex with My Hyperrational Junior Until She Loses All Rationality [English] (2023) +2026-01-07 02:35:33,917 - INFO - Searching metadata for: [Wakamatsu] Rikutsuppoi Kouhai-chan to Rikutsunuki de Majiwaru made no Hanashi Having Sex with My Hyperrational Junior Until She Loses All Rationality [English] (2023) +2026-01-07 02:35:34,105 - INFO - Searching Hentai2Read for: [Wakamatsu]+Rikutsuppoi+Kouhai-chan+to+Rikutsunuki+de+Majiwaru+made+no+Hanashi++Having+Sex+with+My+Hyperrational+Junior+Until+She+Loses+All+Rationality+[English]+(2023) +2026-01-07 02:35:34,477 - INFO - Searching MangaUpdates for: [Wakamatsu] Rikutsuppoi Kouhai-chan to Rikutsunuki de Majiwaru made no Hanashi Having Sex with My Hyperrational Junior Until She Loses All Rationality [English] (2023) +2026-01-07 02:35:35,228 - INFO - Processing: [Wakamatsu]_Rikutsuppoi_Kouhai-chan_to_Rikutsunuki_de_Majiwaru_made_no_Hanashi__Having_Sex_with_My_Hyperrational_Junior_Until_She_Loses_All_Rationality_[English]_(2023).cbz -> Having_Sex_with_My_Hyperrational_Junior_Until_She_Loses_All_Rationality_(2021) +2026-01-07 02:35:35,454 - INFO - Searching Mangadex for: [Wakamatsu] Mukashi wa Dousei no You ni Sesshiteta Osananajimi no Koto o Isei to Shite Ninshiki Shita Hi [English] [Uncle Bane] (2023) +2026-01-07 02:35:36,463 - INFO - Searching metadata for: [Wakamatsu] Mukashi wa Dousei no You ni Sesshiteta Osananajimi no Koto o Isei to Shite Ninshiki Shita Hi [English] [Uncle Bane] (2023) +2026-01-07 02:35:36,759 - INFO - Searching Hentai2Read for: [Wakamatsu]+Mukashi+wa+Dousei+no+You+ni+Sesshiteta+Osananajimi+no+Koto+o+Isei+to+Shite+Ninshiki+Shita+Hi+[English]+[Uncle+Bane]+(2023) +2026-01-07 02:35:37,147 - INFO - Searching MangaUpdates for: [Wakamatsu] Mukashi wa Dousei no You ni Sesshiteta Osananajimi no Koto o Isei to Shite Ninshiki Shita Hi [English] [Uncle Bane] (2023) +2026-01-07 02:35:37,805 - INFO - Processing: [Wakamatsu]_Mukashi_wa_Dousei_no_You_ni_Sesshiteta_Osananajimi_no_Koto_o_Isei_to_Shite_Ninshiki_Shita_Hi_[English]_[Uncle_Bane]_(2023).cbz -> The_Story_of_the_Day_I_Recognized_My_Childhood_Friend,_Whom_I_Used_to_Treat_as_of_the_Same_Sex,_Now_of_the_Opposite_Sex_(2022) +2026-01-07 02:35:37,991 - INFO - Searching Mangadex for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Kazoku-minna Hen~ [Chinese] [古月个人汉化] (2025) +2026-01-07 02:35:38,814 - INFO - Searching metadata for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Kazoku-minna Hen~ [Chinese] [古月个人汉化] (2025) +2026-01-07 02:35:39,051 - INFO - Searching Hentai2Read for: [Tiramisu+Tart+(Kazuhiro)]+Kazoku+Ryokou+wa+Yarimoku+Beach+de+Sex+Zanmai+~Kazoku-minna+Hen~+[Chinese]+[古月个人汉化]+(2025) +2026-01-07 02:35:39,428 - INFO - Searching MangaUpdates for: [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Kazoku-minna Hen~ [Chinese] [古月个人汉化] (2025) +2026-01-07 02:35:39,933 - INFO - Processing: [Tiramisu_Tart_(Kazuhiro)]_Kazoku_Ryokou_wa_Yarimoku_Beach_de_Sex_Zanmai_~Kazoku-minna_Hen~_[Chinese]_[古月个人汉化]_(2025).cbz -> Kazoku_Ryokou_wa_Yarimoku_Beach_de_Sex_Zanmai_(2021) +2026-01-07 02:35:40,530 - INFO - Searching Mangadex for: [Ozy] Dain Kazoku - Falling Lewd Family [English] [MTL] [Digital] (2025) +2026-01-07 02:35:41,117 - INFO - Searching metadata for: [Ozy] Dain Kazoku - Falling Lewd Family [English] [MTL] [Digital] (2025) +2026-01-07 02:35:41,259 - INFO - Searching Hentai2Read for: [Ozy]+Dain+Kazoku+-+Falling+Lewd+Family+[English]+[MTL]+[Digital]+(2025) +2026-01-07 02:35:41,656 - INFO - Searching MangaUpdates for: [Ozy] Dain Kazoku - Falling Lewd Family [English] [MTL] [Digital] (2025) +2026-01-07 02:35:42,079 - INFO - Processing: [Ozy]_Dain_Kazoku_-_Falling_Lewd_Family_[English]_[MTL]_[Digital]_(2025).cbz -> Dain_Kazoku_(2024) +2026-01-07 02:35:46,323 - INFO - Searching Mangadex for: [Wakamatsu] Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] (2025) +2026-01-07 02:35:47,431 - INFO - Searching metadata for: [Wakamatsu] Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] (2025) +2026-01-07 02:35:47,684 - INFO - Searching Hentai2Read for: [Wakamatsu]+Keitai+Choushin+Onee-san-tachi+ni+Shinkyo+o+Yaribeya+ni+Sareru+Hanashi++Tall,+Busty+Onee-sans+Turn+My+New+Place+into+Their+Sex+Room+[English]+(2025) +2026-01-07 02:35:48,001 - INFO - Searching MangaUpdates for: [Wakamatsu] Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English] (2025) +2026-01-07 02:35:48,631 - INFO - Processing: [Wakamatsu]_Keitai_Choushin_Onee-san-tachi_ni_Shinkyo_o_Yaribeya_ni_Sareru_Hanashi__Tall,_Busty_Onee-sans_Turn_My_New_Place_into_Their_Sex_Room_[English]_(2025).cbz -> Shokushu_ni_Zenritsusen_Sandoitchi_Sareru_Hanashi_(2023) +2026-01-07 02:35:48,756 - INFO - Searching Mangadex for: [Wakamatsu] Ikken Yasashisou na Personal Gym no Trainer-san ni Karada o Ijimenukareru Hanashi Sono 2 A Seemingly Gentle Personal Trainer Gives My Body a Rough Workout (Part 2) [English] (2023) +2026-01-07 02:35:50,130 - INFO - Searching metadata for: [Wakamatsu] Ikken Yasashisou na Personal Gym no Trainer-san ni Karada o Ijimenukareru Hanashi Sono 2 A Seemingly Gentle Personal Trainer Gives My Body a Rough Workout (Part 2) [English] (2023) +2026-01-07 02:35:50,462 - INFO - Searching Hentai2Read for: [Wakamatsu]+Ikken+Yasashisou+na+Personal+Gym+no+Trainer-san+ni+Karada+o+Ijimenukareru+Hanashi+Sono+2++A+Seemingly+Gentle+Personal+Trainer+Gives+My+Body+a+Rough+Workout+(Part+2)+[English]+(2023) +2026-01-07 02:35:50,860 - INFO - Searching MangaUpdates for: [Wakamatsu] Ikken Yasashisou na Personal Gym no Trainer-san ni Karada o Ijimenukareru Hanashi Sono 2 A Seemingly Gentle Personal Trainer Gives My Body a Rough Workout (Part 2) [English] (2023) +2026-01-07 02:35:51,533 - INFO - Processing: [Wakamatsu]_Ikken_Yasashisou_na_Personal_Gym_no_Trainer-san_ni_Karada_o_Ijimenukareru_Hanashi_Sono_2__A_Seemingly_Gentle_Personal_Trainer_Gives_My_Body_a_Rough_Workout_(Part_2)_[English]_(2023).cbz -> A_Seemingly_Gentle_Personal_Trainer_Gives_My_Body_a_Rough_Workout_(2021) +2026-01-07 02:35:51,745 - INFO - Searching Mangadex for: [Boole] Living with chubby bullies3 [English] (2025) +2026-01-07 02:35:52,259 - INFO - Searching metadata for: [Boole] Living with chubby bullies3 [English] (2025) +2026-01-07 02:35:52,409 - INFO - Searching Hentai2Read for: [Boole]+Living+with+chubby+bullies3+[English]+(2025) +2026-01-07 02:35:52,744 - INFO - Searching MangaUpdates for: [Boole] Living with chubby bullies3 [English] (2025) +2026-01-07 02:35:53,058 - INFO - Processing: [Boole]_Living_with_chubby_bullies3_[English]_(2025).cbz -> Living_With_Magicians_(2021) +2026-01-07 02:35:53,516 - INFO - Searching Mangadex for: Watashi-tachi ga Watanare Doujinshi Tsukuru Wake Nai jan, Murimuri!! (※Muri ja Nakatta!) (2025) +2026-01-07 02:35:54,317 - INFO - Processing: Watashi-tachi_ga_Watanare_Doujinshi_Tsukuru_Wake_Nai_jan,_Murimuri!!_(※Muri_ja_Nakatta!)_(2025).cbz -> Watashi-tachi_ga_Watanare_Doujinshi_Tsukuru_Wake_Nai_jan,_Murimuri!!_(※Muri_ja_Nakatta!)_(2025) +2026-01-07 02:36:02,651 - INFO - Searching Mangadex for: [Wakamatsu] Smapho Satsuei ni Hamatteru SeFri Joshi to Hamedori suru Ohanashi Filming a Sextape with My Sexfriend Who's Really into Selfies [English] (2023) +2026-01-07 02:36:03,864 - INFO - Searching metadata for: [Wakamatsu] Smapho Satsuei ni Hamatteru SeFri Joshi to Hamedori suru Ohanashi Filming a Sextape with My Sexfriend Who's Really into Selfies [English] (2023) +2026-01-07 02:36:04,165 - INFO - Searching Hentai2Read for: [Wakamatsu]+Smapho+Satsuei+ni+Hamatteru+SeFri+Joshi+to+Hamedori+suru+Ohanashi++Filming+a+Sextape+with+My+Sexfriend+Who's+Really+into+Selfies+[English]+(2023) +2026-01-07 02:36:04,531 - INFO - Searching MangaUpdates for: [Wakamatsu] Smapho Satsuei ni Hamatteru SeFri Joshi to Hamedori suru Ohanashi Filming a Sextape with My Sexfriend Who's Really into Selfies [English] (2023) +2026-01-07 02:36:05,544 - INFO - Processing: [Wakamatsu]_Smapho_Satsuei_ni_Hamatteru_SeFri_Joshi_to_Hamedori_suru_Ohanashi__Filming_a_Sextape_with_My_Sexfriend_Who's_Really_into_Selfies_[English]_(2023).cbz -> Filming_a_Sextape_with_My_Sexfriend_Who's_Really_into_Selfies_(2021) +2026-01-07 02:36:05,689 - INFO - Searching Mangadex for: The Ace of the Volleyball Team Used Her Tall, Strong, Toned Body to Hold Me Down and Have Sex (2022) +2026-01-07 02:36:06,448 - INFO - Searching metadata for: The Ace of the Volleyball Team Used Her Tall, Strong, Toned Body to Hold Me Down and Have Sex (2022) +2026-01-07 02:36:06,758 - INFO - Searching Hentai2Read for: The+Ace+of+the+Volleyball+Team+Used+Her+Tall,+Strong,+Toned+Body+to+Hold+Me+Down+and+Have+Sex+(2022) +2026-01-07 02:36:07,172 - INFO - Searching MangaUpdates for: The Ace of the Volleyball Team Used Her Tall, Strong, Toned Body to Hold Me Down and Have Sex (2022) +2026-01-07 02:36:07,621 - INFO - Processing: The_Ace_of_the_Volleyball_Team_Used_Her_Tall,_Strong,_Toned_Body_to_Hold_Me_Down_and_Have_Sex_(2022).cbz -> The_Ace_of_the_Volleyball_Team_Used_Her_Tall,_Strong,_Toned_Body_to_Hold_Me_Down_and_Have_Sex_(2022) +2026-01-07 02:36:07,758 - INFO - Searching Mangadex for: EnglishTeam Rabu2Digital] +2026-01-07 02:36:08,222 - INFO - Searching metadata for: EnglishTeam Rabu2Digital] +2026-01-07 02:36:08,354 - INFO - Searching Hentai2Read for: EnglishTeam+Rabu2Digital] +2026-01-07 02:36:08,768 - INFO - Searching MangaUpdates for: EnglishTeam Rabu2Digital] +2026-01-07 02:36:08,910 - INFO - Processing: EnglishTeam_Rabu2Digital].cbz -> EnglishTeam_Rabu2Digital] +2026-01-07 02:36:09,571 - INFO - Searching Mangadex for: [Wakamatsu] Onna Joushi Futari ni Ryougawa kara Semerarete Nou Bug-rasareru Hanashi Beset on Either Side by My Female Superiors, My Brain Short-Circuited [English] (2023) +2026-01-07 02:36:10,738 - INFO - Searching metadata for: [Wakamatsu] Onna Joushi Futari ni Ryougawa kara Semerarete Nou Bug-rasareru Hanashi Beset on Either Side by My Female Superiors, My Brain Short-Circuited [English] (2023) +2026-01-07 02:36:10,962 - INFO - Searching Hentai2Read for: [Wakamatsu]+Onna+Joushi+Futari+ni+Ryougawa+kara+Semerarete+Nou+Bug-rasareru+Hanashi++Beset+on+Either+Side+by+My+Female+Superiors,+My+Brain+Short-Circuited+[English]+(2023) +2026-01-07 02:36:11,319 - INFO - Searching MangaUpdates for: [Wakamatsu] Onna Joushi Futari ni Ryougawa kara Semerarete Nou Bug-rasareru Hanashi Beset on Either Side by My Female Superiors, My Brain Short-Circuited [English] (2023) +2026-01-07 02:36:12,019 - INFO - Processing: [Wakamatsu]_Onna_Joushi_Futari_ni_Ryougawa_kara_Semerarete_Nou_Bug-rasareru_Hanashi__Beset_on_Either_Side_by_My_Female_Superiors,_My_Brain_Short-Circuited_[English]_(2023).cbz -> Onna_Joushi_Futari_ni_Ryougawa_kara_Semerarete_Nou_Bug-rasareru_Hanashi_(2021) +2026-01-07 02:36:12,225 - INFO - Searching Mangadex for: Zhuo Dao Ren (2024) +2026-01-07 02:36:12,595 - INFO - Searching metadata for: Zhuo Dao Ren (2024) +2026-01-07 02:36:12,734 - INFO - Searching Hentai2Read for: Zhuo+Dao+Ren+(2024) +2026-01-07 02:36:13,081 - INFO - Searching MangaUpdates for: Zhuo Dao Ren (2024) +2026-01-07 02:36:13,363 - INFO - Processing: Zhuo_Dao_Ren_(2024).cbz -> Zhuo_Dao_Ren_(2024) +2026-01-07 02:36:14,032 - INFO - Searching Mangadex for: [Boole] NATIONAL FERTILITY COMMISSION 2 [English] (2025) +2026-01-07 02:36:14,627 - INFO - Searching metadata for: [Boole] NATIONAL FERTILITY COMMISSION 2 [English] (2025) +2026-01-07 02:36:14,788 - INFO - Searching Hentai2Read for: [Boole]+NATIONAL+FERTILITY+COMMISSION+2+[English]+(2025) +2026-01-07 02:36:15,184 - INFO - Searching MangaUpdates for: [Boole] NATIONAL FERTILITY COMMISSION 2 [English] (2025) +2026-01-07 02:36:15,468 - INFO - Processing: [Boole]_NATIONAL_FERTILITY_COMMISSION_2_[English]_(2025).cbz -> Commission_(2015) +2026-01-07 02:36:15,581 - INFO - Searching Mangadex for: [Aoto Kage] Inran Shimai Seikatsu [Chinese] [MTL] [Digital] (2026) +2026-01-07 02:36:16,156 - INFO - Searching metadata for: [Aoto Kage] Inran Shimai Seikatsu [Chinese] [MTL] [Digital] (2026) +2026-01-07 02:36:16,308 - INFO - Searching Hentai2Read for: [Aoto+Kage]+Inran+Shimai+Seikatsu+[Chinese]+[MTL]+[Digital]+(2026) +2026-01-07 02:36:16,668 - INFO - Searching MangaUpdates for: [Aoto Kage] Inran Shimai Seikatsu [Chinese] [MTL] [Digital] (2026) +2026-01-07 02:36:17,067 - INFO - Processing: [Aoto_Kage]_Inran_Shimai_Seikatsu_[Chinese]_[MTL]_[Digital]_(2026).cbz -> Inran_Seikatsu_(1999) +2026-01-07 02:36:22,383 - INFO - Searching Mangadex for: Jukujo Sukina Ore No Atarashii Tobira (2025) +2026-01-07 02:36:22,968 - INFO - Searching metadata for: Jukujo Sukina Ore No Atarashii Tobira (2025) +2026-01-07 02:36:23,161 - INFO - Searching Hentai2Read for: Jukujo+Sukina+Ore+No+Atarashii+Tobira+(2025) +2026-01-07 02:36:23,474 - INFO - Searching MangaUpdates for: Jukujo Sukina Ore No Atarashii Tobira (2025) +2026-01-07 02:36:23,977 - INFO - Processing: Jukujo_Sukina_Ore_No_Atarashii_Tobira_(2025).cbz -> Jukujo_Sukina_Ore_No_Atarashii_Tobira_(2025) +2026-01-07 02:36:25,541 - INFO - Searching Mangadex for: Kanojo Kanojo Kanojo!!! (2023) +2026-01-07 02:36:25,996 - INFO - Processing: Kanojo_Kanojo_Kanojo!!!_(2023).cbz -> Apparently_I_Have_a_Gyaru_Girlfriend_After_Getting_Memory_Loss_(2023) +2026-01-07 02:36:27,179 - INFO - Searching Mangadex for: [Tsubaki Jushirou] Kawaii Imouto to Ikenai Koto Shiteimasu! [English] (2025) +2026-01-07 02:36:28,095 - INFO - Searching metadata for: [Tsubaki Jushirou] Kawaii Imouto to Ikenai Koto Shiteimasu! [English] (2025) +2026-01-07 02:36:28,295 - INFO - Searching Hentai2Read for: [Tsubaki+Jushirou]+Kawaii+Imouto+to+Ikenai+Koto+Shiteimasu!+[English]+(2025) +2026-01-07 02:36:28,662 - INFO - Searching MangaUpdates for: [Tsubaki Jushirou] Kawaii Imouto to Ikenai Koto Shiteimasu! [English] (2025) +2026-01-07 02:36:29,269 - INFO - Processing: [Tsubaki_Jushirou]_Kawaii_Imouto_to_Ikenai_Koto_Shiteimasu!_[English]_(2025).cbz -> Kawaii_Imouto_to_Ikenai_Koto_Shiteimasu!_(2015) +2026-01-07 02:36:33,647 - INFO - Searching Mangadex for: EnglishPenguin PiperDigital] +2026-01-07 02:36:34,072 - INFO - Searching metadata for: EnglishPenguin PiperDigital] +2026-01-07 02:36:34,207 - INFO - Searching Hentai2Read for: EnglishPenguin+PiperDigital] +2026-01-07 02:36:34,588 - INFO - Searching MangaUpdates for: EnglishPenguin PiperDigital] +2026-01-07 02:36:34,713 - INFO - Processing: EnglishPenguin_PiperDigital].cbz -> EnglishPenguin_PiperDigital] +2026-01-07 02:36:35,543 - INFO - Searching Mangadex for: [Wakamatsu] Shikarikata ga Yasashi Sugiru Onee-san ga Kairaku Semesarechau Hanashi A Lady With a Soft Approach to Discipline is Assailed by Pleasure [English] (2023) +2026-01-07 02:36:36,762 - INFO - Searching metadata for: [Wakamatsu] Shikarikata ga Yasashi Sugiru Onee-san ga Kairaku Semesarechau Hanashi A Lady With a Soft Approach to Discipline is Assailed by Pleasure [English] (2023) +2026-01-07 02:36:36,974 - INFO - Searching Hentai2Read for: [Wakamatsu]+Shikarikata+ga+Yasashi+Sugiru+Onee-san+ga+Kairaku+Semesarechau+Hanashi++A+Lady+With+a+Soft+Approach+to+Discipline+is+Assailed+by+Pleasure+[English]+(2023) +2026-01-07 02:36:37,351 - INFO - Searching MangaUpdates for: [Wakamatsu] Shikarikata ga Yasashi Sugiru Onee-san ga Kairaku Semesarechau Hanashi A Lady With a Soft Approach to Discipline is Assailed by Pleasure [English] (2023) +2026-01-07 02:36:38,125 - INFO - Processing: [Wakamatsu]_Shikarikata_ga_Yasashi_Sugiru_Onee-san_ga_Kairaku_Semesarechau_Hanashi__A_Lady_With_a_Soft_Approach_to_Discipline_is_Assailed_by_Pleasure_[English]_(2023).cbz -> A_Lady_With_a_Soft_Approach_to_Discipline_Is_Assailed_by_Pleasure_(2022) +2026-01-07 02:36:38,352 - INFO - Searching Mangadex for: [Tiramisu Tart (Kazuhiro)] Gyaku Bunny Cast no Namaiki Anal o Namete Sutte Hametaoshitai [English] (2025) +2026-01-07 02:36:39,116 - INFO - Searching metadata for: [Tiramisu Tart (Kazuhiro)] Gyaku Bunny Cast no Namaiki Anal o Namete Sutte Hametaoshitai [English] (2025) +2026-01-07 02:36:39,352 - INFO - Searching Hentai2Read for: [Tiramisu+Tart+(Kazuhiro)]+Gyaku+Bunny+Cast+no+Namaiki+Anal+o+Namete+Sutte+Hametaoshitai+[English]+(2025) +2026-01-07 02:36:39,714 - INFO - Searching MangaUpdates for: [Tiramisu Tart (Kazuhiro)] Gyaku Bunny Cast no Namaiki Anal o Namete Sutte Hametaoshitai [English] (2025) +2026-01-07 02:36:40,278 - INFO - Processing: [Tiramisu_Tart_(Kazuhiro)]_Gyaku_Bunny_Cast_no_Namaiki_Anal_o_Namete_Sutte_Hametaoshitai_[English]_(2025).cbz -> Futanari_no_Onee-chan_ni_Shasei_Kanri_Sarete_Gyaku_Anal_Saretemasu!_(2020) +2026-01-07 02:36:40,921 - INFO - Searching Mangadex for: [IAPOC] DA RA SHI NA SISTER Ch.2 Careless Sister Ch.2 (COMIC ExE 37) [English] (2026) +2026-01-07 02:36:41,583 - INFO - Searching metadata for: [IAPOC] DA RA SHI NA SISTER Ch.2 Careless Sister Ch.2 (COMIC ExE 37) [English] (2026) +2026-01-07 02:36:41,949 - INFO - Searching Hentai2Read for: [IAPOC]+DA+RA+SHI+NA+SISTER+Ch.2++Careless+Sister+Ch.2+(COMIC+ExE+37)+[English]+(2026) +2026-01-07 02:36:42,312 - INFO - Searching MangaUpdates for: [IAPOC] DA RA SHI NA SISTER Ch.2 Careless Sister Ch.2 (COMIC ExE 37) [English] (2026) +2026-01-07 02:36:43,017 - INFO - Processing: [IAPOC]_DA_RA_SHI_NA_SISTER_Ch.2__Careless_Sister_Ch.2_(COMIC_ExE_37)_[English]_(2026).cbz -> Sister_-_Sister_(2012) +2026-01-07 02:40:40,769 - INFO - Moved [Wakamatsu]_Ippai_Amayakashite_Boku_o_Dame_ni_Shiyou_to_Suru_Koakuma_Onee-san_no_Hanashi__Spoiled_Silly_by_a_Naughty_Older_Woman_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Ippai_Amayakashite_Boku_o_Dame_ni_Shiyou_to_Suru_Koakuma_Onee-san_no_Hanashi__Spoiled_Silly_by_a_Naughty_Older_Woman_[English]_(2023) +2026-01-07 02:40:40,866 - INFO - Moved The_Gloomy_Woman_Who_Came_to_Hunger_for_Me_Once_We_Started_Dating_(2024) to isolation:/comics/manga/The_Gloomy_Woman_Who_Came_to_Hunger_for_Me_Once_We_Started_Dating_(2024) +2026-01-07 02:40:40,937 - INFO - Moved A_Dashing,_Handsome_Woman_and_a_Frail,_Maidenly_Boy_(2023) to isolation:/comics/manga/A_Dashing,_Handsome_Woman_and_a_Frail,_Maidenly_Boy_(2023) +2026-01-07 02:40:40,991 - INFO - Moved [Wakamatsu]_Mesaki_no_kairaku_o_chiratsuka_sete_daraku_o_izanau_warui_onesan_[Chinese]_[ANDX個人漢化_&_曙光个人重嵌]_[Decensored]_(567384) to isolation:/comics/manga/[Wakamatsu]_Mesaki_no_kairaku_o_chiratsuka_sete_daraku_o_izanau_warui_onesan_[Chinese]_[ANDX個人漢化_&_曙光个人重嵌]_[Decensored]_(567384) +2026-01-07 02:40:41,124 - INFO - Moved [Kiliu]_Okasare_Imouto_Misaki_(Haha_mo_Okasareru_yo!)__Violated_little_sister_Misaki_(The_mother_gets_raped_too!)_(COMIC_Masyo_2025-12)_[English]_[Digital]_(611722) to isolation:/comics/manga/[Kiliu]_Okasare_Imouto_Misaki_(Haha_mo_Okasareru_yo!)__Violated_little_sister_Misaki_(The_mother_gets_raped_too!)_(COMIC_Masyo_2025-12)_[English]_[Digital]_(611722) +2026-01-07 02:40:41,205 - INFO - Moved A_Young_Lady_Who,_When_Asked,_Honestly_Reveals_Her_Filthy_Desires_(2022) to isolation:/comics/manga/A_Young_Lady_Who,_When_Asked,_Honestly_Reveals_Her_Filthy_Desires_(2022) +2026-01-07 02:40:41,425 - INFO - Moved Futanari_no_Onee-chan_ni_Shasei_Kanri_Sarete_Gyaku_Anal_Saretemasu!_(2020) to isolation:/comics/manga/Futanari_no_Onee-chan_ni_Shasei_Kanri_Sarete_Gyaku_Anal_Saretemasu!_(2020) +2026-01-07 02:40:41,442 - INFO - Moved Mahou_Shoujo_Lyrical_Nanoha_EXCEEDS_(2025) to isolation:/comics/manga/Mahou_Shoujo_Lyrical_Nanoha_EXCEEDS_(2025) +2026-01-07 02:40:41,458 - INFO - Moved [Wakamatsu]_Older_Step-sister_Teaches_Her_Cheeky_Little_Step-brother_a_Lesson__Namaiki_Gitei_o_Kyoiku_Suru_o_Gishi-chan_[English]_(2024) to isolation:/comics/manga/[Wakamatsu]_Older_Step-sister_Teaches_Her_Cheeky_Little_Step-brother_a_Lesson__Namaiki_Gitei_o_Kyoiku_Suru_o_Gishi-chan_[English]_(2024) +2026-01-07 02:40:41,623 - INFO - Moved Fujoshi_na_imouto_de_sumimasen_(2019) to isolation:/comics/manga/Fujoshi_na_imouto_de_sumimasen_(2019) +2026-01-07 02:40:41,641 - INFO - Moved [Boole]_NATIONAL_FERTILITY_COMMISSION__–WITH_MARRIED_WOMEN-_[English]_(2025) to isolation:/comics/manga/[Boole]_NATIONAL_FERTILITY_COMMISSION__–WITH_MARRIED_WOMEN-_[English]_(2025) +2026-01-07 02:40:41,653 - INFO - Moved [Wakamatsu]_Seiso_Kanojo_ga_Bitch_ni_Nacchau_Hanashi__The_Pure_Girl_Became_a_Slut_[English]_(2024) to isolation:/comics/manga/[Wakamatsu]_Seiso_Kanojo_ga_Bitch_ni_Nacchau_Hanashi__The_Pure_Girl_Became_a_Slut_[English]_(2024) +2026-01-07 02:40:41,664 - INFO - Moved [Wakamatsu]_MotoYan_ga_Dechau_Onee-san__An_Ex-Delinquent_Lets_Her_Old_Self_Slip_Out_[English]_(2024) to isolation:/comics/manga/[Wakamatsu]_MotoYan_ga_Dechau_Onee-san__An_Ex-Delinquent_Lets_Her_Old_Self_Slip_Out_[English]_(2024) +2026-01-07 02:40:41,715 - INFO - Moved Commission_(2015) to isolation:/comics/manga/Commission_(2015) +2026-01-07 02:40:41,730 - INFO - Moved [IAPOC]_Darashina_Sister__Careless_Sister_(COMIC_ExE_35)_[English]_{RedLantern}_[Digital]_(2023) to isolation:/comics/manga/[IAPOC]_Darashina_Sister__Careless_Sister_(COMIC_ExE_35)_[English]_{RedLantern}_[Digital]_(2023) +2026-01-07 02:40:43,424 - INFO - Moved Inran_Seikatsu_(1999) to isolation:/comics/manga/Inran_Seikatsu_(1999) +2026-01-07 02:40:43,440 - INFO - Moved [Wakamatsu]_Tsukiai_Hajimetara_Meccha_Karada_o_Motomemakutte_kuru_Downer-kei_Onee-san__The_Gloomy_Woman_Who_Came_to_Hunger_for_Me_Once_We_Started_Dating_[English]_(2024) to isolation:/comics/manga/[Wakamatsu]_Tsukiai_Hajimetara_Meccha_Karada_o_Motomemakutte_kuru_Downer-kei_Onee-san__The_Gloomy_Woman_Who_Came_to_Hunger_for_Me_Once_We_Started_Dating_[English]_(2024) +2026-01-07 02:40:43,461 - INFO - Moved [BOOLE]_Glamor_Furyou_Joshi_ni_Ijimerareta_ga_Doukyo_suru_Koto_ni_Shita_2__Living_together_with_the_buxom_female_bully!_2_[English]_(2025) to isolation:/comics/manga/[BOOLE]_Glamor_Furyou_Joshi_ni_Ijimerareta_ga_Doukyo_suru_Koto_ni_Shita_2__Living_together_with_the_buxom_female_bully!_2_[English]_(2025) +2026-01-07 02:40:43,475 - INFO - Moved [Wakamatsu]_Reitetsu_Kyonyuu_Onna_Joushi_ni_Tetteiteki_ni_Schedule_Kanri_sareru_Hanashi__My_Cool,_Large-Chested_Boss_Keeps_Me_On_a_Strict_Schedule_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Reitetsu_Kyonyuu_Onna_Joushi_ni_Tetteiteki_ni_Schedule_Kanri_sareru_Hanashi__My_Cool,_Large-Chested_Boss_Keeps_Me_On_a_Strict_Schedule_[English]_(2023) +2026-01-07 02:40:45,175 - INFO - Moved Tsumamigui_Cherry_(2023) to isolation:/comics/manga/Tsumamigui_Cherry_(2023) +2026-01-07 02:40:45,192 - INFO - Moved Yahoo,_Mt._Inari!_(2023) to isolation:/comics/manga/Yahoo,_Mt._Inari!_(2023) +2026-01-07 02:40:45,203 - INFO - Moved Active_Heart_(2003) to isolation:/comics/manga/Active_Heart_(2003) +2026-01-07 02:40:45,356 - INFO - Moved Hara_(2006) to isolation:/comics/manga/Hara_(2006) +2026-01-07 02:40:45,440 - INFO - Moved Hot_and_Sweaty_Sex_With_a_Girl_From_the_Track_Team_(2023) to isolation:/comics/manga/Hot_and_Sweaty_Sex_With_a_Girl_From_the_Track_Team_(2023) +2026-01-07 02:40:45,563 - INFO - Moved One_Punch-Man_(2012) to isolation:/comics/manga/One_Punch-Man_(2012) +2026-01-07 02:40:45,634 - INFO - Moved My_Cool,_Large-Chested_Boss_Keeps_Me_On_a_Strict_Schedule_(2022) to isolation:/comics/manga/My_Cool,_Large-Chested_Boss_Keeps_Me_On_a_Strict_Schedule_(2022) +2026-01-07 02:40:45,648 - INFO - Moved U-Bu_U-Bu_(1994) to isolation:/comics/manga/U-Bu_U-Bu_(1994) +2026-01-07 02:40:45,934 - INFO - Moved Full_Marks,_Hidden_Marriage_(2019) to isolation:/comics/manga/Full_Marks,_Hidden_Marriage_(2019) +2026-01-07 02:40:46,082 - INFO - Moved [Saida_Kazuaki]_Datenshi_no_Rakuen__Paradise_of_the_Fallen_Angels_(ANGEL_Club_2012-04)_[English]_=LWB=_(76838) to isolation:/comics/manga/[Saida_Kazuaki]_Datenshi_no_Rakuen__Paradise_of_the_Fallen_Angels_(ANGEL_Club_2012-04)_[English]_=LWB=_(76838) +2026-01-07 02:40:46,196 - INFO - Moved ONA-ASSI!_~Ero_Manga_Ka_no_Onanie_wo_Tetsudau_Shigoto~_(2019) to isolation:/comics/manga/ONA-ASSI!_~Ero_Manga_Ka_no_Onanie_wo_Tetsudau_Shigoto~_(2019) +2026-01-07 02:40:46,209 - INFO - Moved [Tsubaki_Jushirou]_Mendou_na_Kanojo_yori_Kantan_na_Imouto_de_+_Omake__My_Simple_Sister_Over_A_Troublesome_Gilfriend_+_Bonus_(Imouto_Access)_[English]_[MegaFagget]_[Digital]_(2023) to isolation:/comics/manga/[Tsubaki_Jushirou]_Mendou_na_Kanojo_yori_Kantan_na_Imouto_de_+_Omake__My_Simple_Sister_Over_A_Troublesome_Gilfriend_+_Bonus_(Imouto_Access)_[English]_[MegaFagget]_[Digital]_(2023) +2026-01-07 02:40:46,287 - INFO - Moved A_Bratty_Underclassman_Who_Quickly_Learned_Her_Lesson_(2023) to isolation:/comics/manga/A_Bratty_Underclassman_Who_Quickly_Learned_Her_Lesson_(2023) +2026-01-07 02:40:46,473 - INFO - Moved COMIC_HOTMiLK_2007-10_Vol._01_(593160) to isolation:/comics/manga/COMIC_HOTMiLK_2007-10_Vol._01_(593160) +2026-01-07 02:40:46,486 - INFO - Moved Y+Y=Fuel!!_(2016) to isolation:/comics/manga/Y+Y=Fuel!!_(2016) +2026-01-07 02:40:46,507 - INFO - Moved [BOOLE]_Glamor_Furyou_Joshi_ni_Ijimerareta_ga_Doukyo_suru_Koto_ni_Shita_2丨曾经欺负过我的性感太妹_现在我决定与她同居2_[Chinese]_[Decensored]_(2025) to isolation:/comics/manga/[BOOLE]_Glamor_Furyou_Joshi_ni_Ijimerareta_ga_Doukyo_suru_Koto_ni_Shita_2丨曾经欺负过我的性感太妹_现在我决定与她同居2_[Chinese]_[Decensored]_(2025) +2026-01-07 02:40:46,565 - INFO - Moved A_Seemingly_Gentle_Personal_Trainer_Gives_My_Body_a_Rough_Workout_(2021) to isolation:/comics/manga/A_Seemingly_Gentle_Personal_Trainer_Gives_My_Body_a_Rough_Workout_(2021) +2026-01-07 02:40:46,630 - INFO - Moved Quiet_Older_Sister_That's_Conscious_of_Her_Younger_Brother_as_the_Opposite_Sex_(2021) to isolation:/comics/manga/Quiet_Older_Sister_That's_Conscious_of_Her_Younger_Brother_as_the_Opposite_Sex_(2021) +2026-01-07 02:40:46,712 - INFO - Moved Turn-Taking_Sex_With_My_Very_Tall_Girlfriend_(2023) to isolation:/comics/manga/Turn-Taking_Sex_With_My_Very_Tall_Girlfriend_(2023) +2026-01-07 02:40:46,723 - INFO - Moved [Wakamatsu]_Kyasha_to_Homan_no_Ma_Ni_Tatasa_Reru_3P__Threesome_Caught_Between_Slim_And_Voluptuous_[English]_(2025) to isolation:/comics/manga/[Wakamatsu]_Kyasha_to_Homan_no_Ma_Ni_Tatasa_Reru_3P__Threesome_Caught_Between_Slim_And_Voluptuous_[English]_(2025) +2026-01-07 02:40:46,734 - INFO - Moved EnglishDecensoredDigital] to isolation:/comics/manga/EnglishDecensoredDigital] +2026-01-07 02:40:46,749 - INFO - Moved FaLLEN_(2012) to isolation:/comics/manga/FaLLEN_(2012) +2026-01-07 02:40:46,762 - INFO - Moved Dr._Kim_of_London_(2024) to isolation:/comics/manga/Dr._Kim_of_London_(2024) +2026-01-07 02:40:46,821 - INFO - Moved A_Lady_With_a_Soft_Approach_to_Discipline_Is_Assailed_by_Pleasure_(2022) to isolation:/comics/manga/A_Lady_With_a_Soft_Approach_to_Discipline_Is_Assailed_by_Pleasure_(2022) +2026-01-07 02:40:46,832 - INFO - Moved [Wakamatsu]_Koushinchou_de_MeguTai_na_Kanojo_to_Turn-sei_no_Sex_Suru_Ohanashi__Turn-Taking_Sex_With_My_Very_Tall_Girlfriend_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Koushinchou_de_MeguTai_na_Kanojo_to_Turn-sei_no_Sex_Suru_Ohanashi__Turn-Taking_Sex_With_My_Very_Tall_Girlfriend_[English]_(2023) +2026-01-07 02:40:46,851 - INFO - Moved [Shin_Hijiridou_Honpo_(Hijiri_Tsukasa)]_Ane_no_Seiyoku_Shori_wa_Ototo_ga_Suru_Monoda_to,_Gitei_wa_Omoi_Hajimete_Iru._[English]_{Hennojin}_[Decensored]_[Digital]_(2024) to isolation:/comics/manga/[Shin_Hijiridou_Honpo_(Hijiri_Tsukasa)]_Ane_no_Seiyoku_Shori_wa_Ototo_ga_Suru_Monoda_to,_Gitei_wa_Omoi_Hajimete_Iru._[English]_{Hennojin}_[Decensored]_[Digital]_(2024) +2026-01-07 02:40:46,874 - INFO - Moved Soyosoyo's_Works_(2002) to isolation:/comics/manga/Soyosoyo's_Works_(2002) +2026-01-07 02:40:46,900 - INFO - Moved [Wakamatsu]_Ikemen_Ouji-sama_na_Onnanoko,_Kayowai_Otome_na_Otokonoko__The_Handsome_Princely_Girl,_The_Frail_Girly_Femboy_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Ikemen_Ouji-sama_na_Onnanoko,_Kayowai_Otome_na_Otokonoko__The_Handsome_Princely_Girl,_The_Frail_Girly_Femboy_[English]_(2023) +2026-01-07 02:40:46,917 - INFO - Moved [Chimee_House_(Takapi)]_A_perfect_day_for_exposure_of_Sakura_Kotaka_1-3_(EnglishMTL)_(2024) to isolation:/comics/manga/[Chimee_House_(Takapi)]_A_perfect_day_for_exposure_of_Sakura_Kotaka_1-3_(EnglishMTL)_(2024) +2026-01-07 02:40:47,058 - INFO - Moved Danshi_Kokoseidakedo_Gyaru_ni_TS_Shimashita_(2024) to isolation:/comics/manga/Danshi_Kokoseidakedo_Gyaru_ni_TS_Shimashita_(2024) +2026-01-07 02:40:47,131 - INFO - Moved Shokushu_ni_Zenritsusen_Sandoitchi_Sareru_Hanashi_(2023) to isolation:/comics/manga/Shokushu_ni_Zenritsusen_Sandoitchi_Sareru_Hanashi_(2023) +2026-01-07 02:40:47,147 - INFO - Moved EnglishSquigglesJP] to isolation:/comics/manga/EnglishSquigglesJP] +2026-01-07 02:40:47,376 - INFO - Moved Kazoku_Ryokou_wa_Yarimoku_Beach_de_Sex_Zanmai_(2021) to isolation:/comics/manga/Kazoku_Ryokou_wa_Yarimoku_Beach_de_Sex_Zanmai_(2021) +2026-01-07 02:40:47,385 - INFO - Moved [Wakamatsu]_Jiko_Hyouka_Hikui_Joshi_ga_Jibun_no_Karada_ni_Jishin_Mocchau_made_no_Katei__The_Way_That_a_Low_Self-Esteem_Woman_Gained_Confidence_in_Her_Body_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Jiko_Hyouka_Hikui_Joshi_ga_Jibun_no_Karada_ni_Jishin_Mocchau_made_no_Katei__The_Way_That_a_Low_Self-Esteem_Woman_Gained_Confidence_in_Her_Body_[English]_(2023) +2026-01-07 02:40:47,470 - INFO - Moved The_Day_I_Won_Against_My_Very_Tall_Girlfriend_(2023) to isolation:/comics/manga/The_Day_I_Won_Against_My_Very_Tall_Girlfriend_(2023) +2026-01-07 02:40:47,515 - INFO - Moved The_Speech_of_a_Refined_and_Elegant_Young_Woman_from_a_Good_Family_(2021) to isolation:/comics/manga/The_Speech_of_a_Refined_and_Elegant_Young_Woman_from_a_Good_Family_(2021) +2026-01-07 02:40:47,531 - INFO - Moved [Wakamatsu]_Ikemen_Ouji-sama_na_Onnanoko,_Kayowai_Otome_na_Otokonoko__A_Dashing,_Handsome_Woman_and_a_Frail,_Maidenly_Boy_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Ikemen_Ouji-sama_na_Onnanoko,_Kayowai_Otome_na_Otokonoko__A_Dashing,_Handsome_Woman_and_a_Frail,_Maidenly_Boy_[English]_(2023) +2026-01-07 02:40:47,596 - INFO - Moved Filming_a_Sextape_with_My_Sexfriend_Who's_Really_into_Selfies_(2021) to isolation:/comics/manga/Filming_a_Sextape_with_My_Sexfriend_Who's_Really_into_Selfies_(2021) +2026-01-07 02:40:47,928 - INFO - Moved Ibitsu_na_Ai_no_Su_(2017) to isolation:/comics/manga/Ibitsu_na_Ai_no_Su_(2017) +2026-01-07 02:40:47,956 - INFO - Moved S's_(1999) to isolation:/comics/manga/S's_(1999) +2026-01-07 02:40:48,149 - INFO - Moved [Hiro潶]_《1999恶女一决胜负》_(574312) to isolation:/comics/manga/[Hiro潶]_《1999恶女一决胜负》_(574312) +2026-01-07 02:40:48,160 - INFO - Moved [Wakamatsu]_Sodachi_no_Yosasou_na_Kihin_Afureru_Onee-san_no_Kotobazukai__The_Speech_of_a_Refined_and_Elegant_Young_Woman_from_a_Good_Family_[English]_(2022) to isolation:/comics/manga/[Wakamatsu]_Sodachi_no_Yosasou_na_Kihin_Afureru_Onee-san_no_Kotobazukai__The_Speech_of_a_Refined_and_Elegant_Young_Woman_from_a_Good_Family_[English]_(2022) +2026-01-07 02:40:48,170 - INFO - Moved [Ozy]_Tsumamigui_Cherry_[English]_[MTL]_[Digital]_(2025) to isolation:/comics/manga/[Ozy]_Tsumamigui_Cherry_[English]_[MTL]_[Digital]_(2025) +2026-01-07 02:40:50,049 - INFO - Moved Yoru_no_Koibito_(2017) to isolation:/comics/manga/Yoru_no_Koibito_(2017) +2026-01-07 02:40:50,097 - INFO - Moved The_Way_That_a_Low_Self-Esteem_Woman_Gained_Confidence_in_Her_Body_(2020) to isolation:/comics/manga/The_Way_That_a_Low_Self-Esteem_Woman_Gained_Confidence_in_Her_Body_(2020) +2026-01-07 02:40:50,107 - INFO - Moved Hands-On_Draining_with_Three_Succubus_Sisters_(akatsuki_myuutoakatuki_myuuto)_(2025) to isolation:/comics/manga/Hands-On_Draining_with_Three_Succubus_Sisters_(akatsuki_myuutoakatuki_myuuto)_(2025) +2026-01-07 02:40:50,119 - INFO - Moved [Hijiri_Tsukasa]_Ona-Ashi!_~A_Job_Helping_Erotic_Manga_Artists_Masturbate~_--_ONA-ASHI!_~Ero_Mangaka_no_Onanie_o_Tetsudau_Shigoto~_[Digital]_(2026) to isolation:/comics/manga/[Hijiri_Tsukasa]_Ona-Ashi!_~A_Job_Helping_Erotic_Manga_Artists_Masturbate~_--_ONA-ASHI!_~Ero_Mangaka_no_Onanie_o_Tetsudau_Shigoto~_[Digital]_(2026) +2026-01-07 02:40:50,167 - INFO - Moved Tadashii_Seikyouiku._(2011) to isolation:/comics/manga/Tadashii_Seikyouiku._(2011) +2026-01-07 02:40:50,579 - INFO - Moved Clannad_(SHAA)_(2008) to isolation:/comics/manga/Clannad_(SHAA)_(2008) +2026-01-07 02:40:50,593 - INFO - Moved [Wakamatsu]_Onnanoko_Atsukai_Shinai_to_Mesu_Dearu_Koto_o_Wakarasetekuru_Boyish_Joshi__A_boyish_girl_who_will_show_you_that_she_is_female_if_you_don't_treat_her_like_one_[English]_(2024) to isolation:/comics/manga/[Wakamatsu]_Onnanoko_Atsukai_Shinai_to_Mesu_Dearu_Koto_o_Wakarasetekuru_Boyish_Joshi__A_boyish_girl_who_will_show_you_that_she_is_female_if_you_don't_treat_her_like_one_[English]_(2024) +2026-01-07 02:40:50,663 - INFO - Moved Shintaisou_Circle_Joshi_ga_Kansetsu_Kadouiki_Meippai_Tsukatte_H_suru_Hanashi_(2021) to isolation:/comics/manga/Shintaisou_Circle_Joshi_ga_Kansetsu_Kadouiki_Meippai_Tsukatte_H_suru_Hanashi_(2021) +2026-01-07 02:40:50,675 - INFO - Moved [Wakamatsu]_Shintaisou_Circle_Joshi_ga_Kansetsu_Kadouiki_Meippai_Tsukatte_H_suru_Hanashi__The_Rhythmic_Gymnastics_Girl_Making_Full_Use_of_Her_Flexibility_During_Sex_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Shintaisou_Circle_Joshi_ga_Kansetsu_Kadouiki_Meippai_Tsukatte_H_suru_Hanashi__The_Rhythmic_Gymnastics_Girl_Making_Full_Use_of_Her_Flexibility_During_Sex_[English]_(2023) +2026-01-07 02:40:50,695 - INFO - Moved [Wakamatsu]_Koushinchou_de_MeguTai_na_Kanojo_ga_Makechau_Hi__The_Day_I_Won_Against_My_Very_Tall_Girlfriend_[English]_(2024) to isolation:/comics/manga/[Wakamatsu]_Koushinchou_de_MeguTai_na_Kanojo_ga_Makechau_Hi__The_Day_I_Won_Against_My_Very_Tall_Girlfriend_[English]_(2024) +2026-01-07 02:40:50,708 - INFO - Moved [Wakamatsu]_Takuhaibin_no_Uketorikata_ga_Dandan_Darashinaku_Natte_Iku_OL-chan_(+_Ura-hen)__A_Woman_Whose_Greetings_to_the_Delivery_Man_Gradually_Get_Sloppier_(+_Other_Side)_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Takuhaibin_no_Uketorikata_ga_Dandan_Darashinaku_Natte_Iku_OL-chan_(+_Ura-hen)__A_Woman_Whose_Greetings_to_the_Delivery_Man_Gradually_Get_Sloppier_(+_Other_Side)_[English]_(2023) +2026-01-07 02:40:50,756 - INFO - Moved Oshiete_Onee-san_(2003) to isolation:/comics/manga/Oshiete_Onee-san_(2003) +2026-01-07 02:40:50,901 - INFO - Moved Kowamote_Kouhai-kun_to_Doukyo_suru_koto_ni_narimasu_(2021) to isolation:/comics/manga/Kowamote_Kouhai-kun_to_Doukyo_suru_koto_ni_narimasu_(2021) +2026-01-07 02:40:51,133 - INFO - Moved Kage_Aru_Tokoro_ni_(2005) to isolation:/comics/manga/Kage_Aru_Tokoro_ni_(2005) +2026-01-07 02:40:51,143 - INFO - Moved EnglishKumokuDigital] to isolation:/comics/manga/EnglishKumokuDigital] +2026-01-07 02:40:51,204 - INFO - Moved The_Story_of_the_Day_I_Recognized_My_Childhood_Friend,_Whom_I_Used_to_Treat_as_of_the_Same_Sex,_Now_of_the_Opposite_Sex_(2022) to isolation:/comics/manga/The_Story_of_the_Day_I_Recognized_My_Childhood_Friend,_Whom_I_Used_to_Treat_as_of_the_Same_Sex,_Now_of_the_Opposite_Sex_(2022) +2026-01-07 02:40:51,217 - INFO - Moved P.P.P!!_(2007) to isolation:/comics/manga/P.P.P!!_(2007) +2026-01-07 02:40:51,228 - INFO - Moved Apart_no_Otonari-san_ga_Yarasete_Kureru_Hanashi_(2024) to isolation:/comics/manga/Apart_no_Otonari-san_ga_Yarasete_Kureru_Hanashi_(2024) +2026-01-07 02:40:51,241 - INFO - Moved TS_Panic_(2012) to isolation:/comics/manga/TS_Panic_(2012) +2026-01-07 02:40:51,255 - INFO - Moved [Wakamatsu]_Sodachi_no_Yosasou_na_Onee-san_ga_Ogehin_Sex_suru_Hanashi_Sono_2__A_Refined_and_Elegant_Young_Woman_from_a_Good_Family_Has_Vulgar_Sex_(Part_2)_[English]_(2022) to isolation:/comics/manga/[Wakamatsu]_Sodachi_no_Yosasou_na_Onee-san_ga_Ogehin_Sex_suru_Hanashi_Sono_2__A_Refined_and_Elegant_Young_Woman_from_a_Good_Family_Has_Vulgar_Sex_(Part_2)_[English]_(2022) +2026-01-07 02:40:53,212 - INFO - Moved Tsuyatsuma_Jouji_(2017) to isolation:/comics/manga/Tsuyatsuma_Jouji_(2017) +2026-01-07 02:40:53,225 - INFO - Moved [Boole]_Shussan_Kanri_Iinkai__NATIONAL_FERTILITY_COMMISSION_[English]_[Uncensored]_(2025) to isolation:/comics/manga/[Boole]_Shussan_Kanri_Iinkai__NATIONAL_FERTILITY_COMMISSION_[English]_[Uncensored]_(2025) +2026-01-07 02:40:53,237 - INFO - Moved [Boole]_Time_Loop_de_Kaihatsu_Sareru_Sister__Timeloop_and_Sex_and_Nun_[English]_[Decensored]_(2025) to isolation:/comics/manga/[Boole]_Time_Loop_de_Kaihatsu_Sareru_Sister__Timeloop_and_Sex_and_Nun_[English]_[Decensored]_(2025) +2026-01-07 02:40:53,251 - INFO - Moved [Ozy]_Toshiue_Lovers_+_Shitagaki_[English]_[MTL]_[Digital]_(2025) to isolation:/comics/manga/[Ozy]_Toshiue_Lovers_+_Shitagaki_[English]_[MTL]_[Digital]_(2025) +2026-01-07 02:40:53,264 - INFO - Moved [Wakamatsu]_Danshi_o_Mukuna_mama_Sodatete_Hoshoku_suru_Warui_Onee-san_[English]_(2024) to isolation:/comics/manga/[Wakamatsu]_Danshi_o_Mukuna_mama_Sodatete_Hoshoku_suru_Warui_Onee-san_[English]_(2024) +2026-01-07 02:40:53,276 - INFO - Moved [Wakamatsu]_Watashi_ni_wa_Seiyoku_nante_Arimasen_tte_Kao_shiteru_Kanojo_No_Seishoku_Honnou_o_Kakitateru_Hanashi__A_Girlfriend_Who_Claimed_to_Have_no_Lust_Has_Her_Reproductive_Instincts_Stirred_Up_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Watashi_ni_wa_Seiyoku_nante_Arimasen_tte_Kao_shiteru_Kanojo_No_Seishoku_Honnou_o_Kakitateru_Hanashi__A_Girlfriend_Who_Claimed_to_Have_no_Lust_Has_Her_Reproductive_Instincts_Stirred_Up_[English]_(2023) +2026-01-07 02:40:53,288 - INFO - Moved [Wakamatsu]_Honne_Kikareru_to_Dorodoro_shita_Yokubou_o_Shoujiki_ni_Icchau_Onee-san__A_Young_Lady_Who,_When_Asked,_Honestly_Reveals_Her_Filthy_Desires_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Honne_Kikareru_to_Dorodoro_shita_Yokubou_o_Shoujiki_ni_Icchau_Onee-san__A_Young_Lady_Who,_When_Asked,_Honestly_Reveals_Her_Filthy_Desires_[English]_(2023) +2026-01-07 02:40:53,301 - INFO - Moved [Wakamatsu]_Taisha_ga_Yoi_Rikujoubu_Joshi_to_Asedaku_de_Taiekimamire_na_Noumitsu_Sex_Suru_Hanashi__Hot_and_Sweaty_Sex_With_a_Girl_From_the_Track_Team_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Taisha_ga_Yoi_Rikujoubu_Joshi_to_Asedaku_de_Taiekimamire_na_Noumitsu_Sex_Suru_Hanashi__Hot_and_Sweaty_Sex_With_a_Girl_From_the_Track_Team_[English]_(2023) +2026-01-07 02:40:53,315 - INFO - Moved [Boole]_PREGNANCY_MANAGEMENT_[English]_(2025) to isolation:/comics/manga/[Boole]_PREGNANCY_MANAGEMENT_[English]_(2025) +2026-01-07 02:40:53,341 - INFO - Moved 2x2xX_(2025) to isolation:/comics/manga/2x2xX_(2025) +2026-01-07 02:40:53,655 - INFO - Moved Sister_-_Sister_(2012) to isolation:/comics/manga/Sister_-_Sister_(2012) +2026-01-07 02:40:53,786 - INFO - Moved Living_With_Magicians_(2021) to isolation:/comics/manga/Living_With_Magicians_(2021) +2026-01-07 02:40:53,799 - INFO - Moved 0x0_Memories_(2007) to isolation:/comics/manga/0x0_Memories_(2007) +2026-01-07 02:40:53,809 - INFO - Moved [Mogudan]_Tatsumaki-ppoi_Tsuma_(One_Punch_Man)_[English]_(2025) to isolation:/comics/manga/[Mogudan]_Tatsumaki-ppoi_Tsuma_(One_Punch_Man)_[English]_(2025) +2026-01-07 02:40:53,819 - INFO - Moved [Furaimai]_Tsuma_ni_Ani_to_Kozukuri_Shite_Moraimashita_[English]_(2025) to isolation:/comics/manga/[Furaimai]_Tsuma_ni_Ani_to_Kozukuri_Shite_Moraimashita_[English]_(2025) +2026-01-07 02:40:53,830 - INFO - Moved [Ozy]_Tsuyatsuma_Jouji_[English]_[MTL]_(2025) to isolation:/comics/manga/[Ozy]_Tsuyatsuma_Jouji_[English]_[MTL]_(2025) +2026-01-07 02:40:53,843 - INFO - Moved [Wakamatsu]_Mesaki_no_kairaku_o_chiratsuka_sete_daraku_o_izanau_warui_onesan_[Chinese]_[ANDX個人漢化_&_曙光个人重嵌]_[Decensored]_(2025) to isolation:/comics/manga/[Wakamatsu]_Mesaki_no_kairaku_o_chiratsuka_sete_daraku_o_izanau_warui_onesan_[Chinese]_[ANDX個人漢化_&_曙光个人重嵌]_[Decensored]_(2025) +2026-01-07 02:40:53,858 - INFO - Moved [Wakamatsu]_Namaiki_Bakkari_Iu_kedo_Sugu_Wakaraserarechau_Kouhai-chan_no_Ohanashi__A_Bratty_Underclassman_Who_Quickly_Learned_Her_Lesson_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Namaiki_Bakkari_Iu_kedo_Sugu_Wakaraserarechau_Kouhai-chan_no_Ohanashi__A_Bratty_Underclassman_Who_Quickly_Learned_Her_Lesson_[English]_(2023) +2026-01-07 02:40:53,920 - INFO - Moved Onee-san_wa_Soushoku_Danshi_ni_Hatsujou_suru_(2018) to isolation:/comics/manga/Onee-san_wa_Soushoku_Danshi_ni_Hatsujou_suru_(2018) +2026-01-07 02:40:56,099 - INFO - Moved Toshiue_Lovers_(2013) to isolation:/comics/manga/Toshiue_Lovers_(2013) +2026-01-07 02:40:56,110 - INFO - Moved [Akikusa_Peperon]_Muchi_Niku_Hitozuma_Smash__Chubby_Wife_Smash_(Mozzarella)_[English]_[Fated_Circle]_(2025) to isolation:/comics/manga/[Akikusa_Peperon]_Muchi_Niku_Hitozuma_Smash__Chubby_Wife_Smash_(Mozzarella)_[English]_[Fated_Circle]_(2025) +2026-01-07 02:40:56,121 - INFO - Moved [Wakamatsu]_Sunao_ni_Narezu_Iiatte_Bakkari_dakedo_Aishou_ga_Yoi_Osananajimi__The_Stubborn_Childhood_Friends_Who_Argue_All_the_Time_but_were_Made_for_Each_Other_[English]_[pikachiu24]_(2025) to isolation:/comics/manga/[Wakamatsu]_Sunao_ni_Narezu_Iiatte_Bakkari_dakedo_Aishou_ga_Yoi_Osananajimi__The_Stubborn_Childhood_Friends_Who_Argue_All_the_Time_but_were_Made_for_Each_Other_[English]_[pikachiu24]_(2025) +2026-01-07 02:40:56,137 - INFO - Moved [True_Seido☆Honpo_(Sei☆Shi)]_The_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother-in-law's_countryside_where_there_is_an_H_custom._[DL_version]_(2024) to isolation:/comics/manga/[True_Seido☆Honpo_(Sei☆Shi)]_The_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother-in-law's_countryside_where_there_is_an_H_custom._[DL_version]_(2024) +2026-01-07 02:40:56,149 - INFO - Moved 8_Banme_no_Prince_(1995) to isolation:/comics/manga/8_Banme_no_Prince_(1995) +2026-01-07 02:40:56,161 - INFO - Moved Sex_Shinai_to_Derarenai_Heya_ni_Naka_no_Warui_Imouto_to_Tojikomerareru_(2023) to isolation:/comics/manga/Sex_Shinai_to_Derarenai_Heya_ni_Naka_no_Warui_Imouto_to_Tojikomerareru_(2023) +2026-01-07 02:40:56,176 - INFO - Moved [Wakamatsu]_Otouto_o_Isei_to_Shite_Isshiki_Shite_Shimau_Mukuchi_na_Onee-chan__A_Quiet_Older_Sister_Who_Has_Come_to_See_Her_Brother_as_a_Man_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Otouto_o_Isei_to_Shite_Isshiki_Shite_Shimau_Mukuchi_na_Onee-chan__A_Quiet_Older_Sister_Who_Has_Come_to_See_Her_Brother_as_a_Man_[English]_(2023) +2026-01-07 02:40:56,439 - INFO - Moved Tsuma_o_Kachiku_ni_Shite_Kudasai_(2013) to isolation:/comics/manga/Tsuma_o_Kachiku_ni_Shite_Kudasai_(2013) +2026-01-07 02:40:56,451 - INFO - Moved [ICE]_Matching_Joushi_Aishou_wa_Karada_de_Check__Matched_up_with_my_Boss_~_Checking_the_Compatibility_of_our_Bodies_~_(ANGEL_Club_2022-03)_[English]_[Digital]_(2022) to isolation:/comics/manga/[ICE]_Matching_Joushi_Aishou_wa_Karada_de_Check__Matched_up_with_my_Boss_~_Checking_the_Compatibility_of_our_Bodies_~_(ANGEL_Club_2022-03)_[English]_[Digital]_(2022) +2026-01-07 02:40:56,463 - INFO - Moved [Wakamatsu]_Kozukuri_no_Shikata_o_Dankai-teki_ni_Oshiete_Kureru_Onee-san__An_Onee-san_Who_Teaches_Me_Step_by_Step_How_to_Make_a_Baby_[English]_(2025) to isolation:/comics/manga/[Wakamatsu]_Kozukuri_no_Shikata_o_Dankai-teki_ni_Oshiete_Kureru_Onee-san__An_Onee-san_Who_Teaches_Me_Step_by_Step_How_to_Make_a_Baby_[English]_(2025) +2026-01-07 02:40:56,530 - INFO - Moved Turn-Taking_Sex_Between_a_Virgin_and_an_Experienced_Older_Woman_(2022) to isolation:/comics/manga/Turn-Taking_Sex_Between_a_Virgin_and_an_Experienced_Older_Woman_(2022) +2026-01-07 02:40:56,545 - INFO - Moved Mahouka_Koukou_no_Rettousei_-_Nankai_Soujou-hen_(2021) to isolation:/comics/manga/Mahouka_Koukou_no_Rettousei_-_Nankai_Soujou-hen_(2021) +2026-01-07 02:40:56,686 - INFO - Moved Itsumo_Kaerimichi_ga_Isshona_Ano_Ko_(2023) to isolation:/comics/manga/Itsumo_Kaerimichi_ga_Isshona_Ano_Ko_(2023) +2026-01-07 02:40:56,697 - INFO - Moved [Nasipasuta]_Darashinaku_Ochiru_Onee-san_Wa_Suki_Desu_Ka__Do_you_like_sloppy_big_sisters_(COMIC_ExE_24)_[English]_{Exo_Subs}_[Digital]_(2021) to isolation:/comics/manga/[Nasipasuta]_Darashinaku_Ochiru_Onee-san_Wa_Suki_Desu_Ka__Do_you_like_sloppy_big_sisters_(COMIC_ExE_24)_[English]_{Exo_Subs}_[Digital]_(2021) +2026-01-07 02:40:56,847 - INFO - Moved Sex_and_the_Sister_(2008) to isolation:/comics/manga/Sex_and_the_Sister_(2008) +2026-01-07 02:40:56,858 - INFO - Moved [Shin_Hijiridou_Honpo_(Hijiri_Tsukasa)]_Tomodachi_ga_Urayamu_H_Sugiru_Boku_no_Mama_to_Onee–chan_wa,_Tokoro_Kamawazu_Boku_o_Yuuwaku_o_Shite_Kimasu._[English]_{Hennojin}_[Decensored]_[Digital]_(2025) to isolation:/comics/manga/[Shin_Hijiridou_Honpo_(Hijiri_Tsukasa)]_Tomodachi_ga_Urayamu_H_Sugiru_Boku_no_Mama_to_Onee–chan_wa,_Tokoro_Kamawazu_Boku_o_Yuuwaku_o_Shite_Kimasu._[English]_{Hennojin}_[Decensored]_[Digital]_(2025) +2026-01-07 02:40:57,121 - INFO - Moved Tomodachi_ga_Urayamu_H_Sugiru_Boku_no_Mama_to_Onee–chan_wa,_Tokoro_Kamawazu_Boku_o_Yuuwaku_o_Shite_Kimasu._(2022) to isolation:/comics/manga/Tomodachi_ga_Urayamu_H_Sugiru_Boku_no_Mama_to_Onee–chan_wa,_Tokoro_Kamawazu_Boku_o_Yuuwaku_o_Shite_Kimasu._(2022) +2026-01-07 02:40:57,134 - INFO - Moved [Wakamatsu]_Doutei-kun_to_Keiken_Houfu_na_Onee-san_ga_Turn-sei_Sex_Suru_Hanashi__Turn-Taking_Sex_Between_a_Virgin_and_an_Experienced_Older_Woman_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Doutei-kun_to_Keiken_Houfu_na_Onee-san_ga_Turn-sei_Sex_Suru_Hanashi__Turn-Taking_Sex_Between_a_Virgin_and_an_Experienced_Older_Woman_[English]_(2023) +2026-01-07 02:40:57,148 - INFO - Moved [Kiliu]_Okasare_Imouto_Misaki_(Haha_mo_Okasareru_yo!)__Violated_little_sister_Misaki_(The_mother_gets_raped_too!)_(COMIC_Masyo_2025-12)_[English]_[Digital]_(2025) to isolation:/comics/manga/[Kiliu]_Okasare_Imouto_Misaki_(Haha_mo_Okasareru_yo!)__Violated_little_sister_Misaki_(The_mother_gets_raped_too!)_(COMIC_Masyo_2025-12)_[English]_[Digital]_(2025) +2026-01-07 02:40:57,159 - INFO - Moved [Wakamatsu]_Rikutsuppoi_Kouhai-chan_to_Rikutsunuki_de_Majiwaru_made_no_Hanashi__Having_Sex_with_My_Hyperrational_Junior_Until_She_Loses_All_Rationality_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Rikutsuppoi_Kouhai-chan_to_Rikutsunuki_de_Majiwaru_made_no_Hanashi__Having_Sex_with_My_Hyperrational_Junior_Until_She_Loses_All_Rationality_[English]_(2023) +2026-01-07 02:40:57,169 - INFO - Moved [Wakamatsu]_Mukashi_wa_Dousei_no_You_ni_Sesshiteta_Osananajimi_no_Koto_o_Isei_to_Shite_Ninshiki_Shita_Hi_[English]_[Uncle_Bane]_(2023) to isolation:/comics/manga/[Wakamatsu]_Mukashi_wa_Dousei_no_You_ni_Sesshiteta_Osananajimi_no_Koto_o_Isei_to_Shite_Ninshiki_Shita_Hi_[English]_[Uncle_Bane]_(2023) +2026-01-07 02:40:57,253 - INFO - Moved Kanzennaru_Kubinagaryuu_no_Hi_(2013) to isolation:/comics/manga/Kanzennaru_Kubinagaryuu_no_Hi_(2013) +2026-01-07 02:40:57,385 - INFO - Moved Musume_ga_Furyou_ni_Otosareteita_(2019) to isolation:/comics/manga/Musume_ga_Furyou_ni_Otosareteita_(2019) +2026-01-07 02:40:57,472 - INFO - Moved Watashi_ni_wa_Seiyoku_nante_Arimasen_tte_Kao_shiteru_Kanojo_no_Seishoku_Honnou_o_Kakitateru_Hanashi_(2022) to isolation:/comics/manga/Watashi_ni_wa_Seiyoku_nante_Arimasen_tte_Kao_shiteru_Kanojo_no_Seishoku_Honnou_o_Kakitateru_Hanashi_(2022) +2026-01-07 02:40:57,486 - INFO - Moved [Tiramisu_Tart_(Kazuhiro)]_Kazoku_Ryokou_wa_Yarimoku_Beach_de_Sex_Zanmai_~Kazoku-minna_Hen~_[Chinese]_[古月个人汉化]_(2025) to isolation:/comics/manga/[Tiramisu_Tart_(Kazuhiro)]_Kazoku_Ryokou_wa_Yarimoku_Beach_de_Sex_Zanmai_~Kazoku-minna_Hen~_[Chinese]_[古月个人汉化]_(2025) +2026-01-07 02:40:57,501 - INFO - Moved [Ozy]_Dain_Kazoku_-_Falling_Lewd_Family_[English]_[MTL]_[Digital]_(2025) to isolation:/comics/manga/[Ozy]_Dain_Kazoku_-_Falling_Lewd_Family_[English]_[MTL]_[Digital]_(2025) +2026-01-07 02:40:57,516 - INFO - Moved [Wakamatsu]_Keitai_Choushin_Onee-san-tachi_ni_Shinkyo_o_Yaribeya_ni_Sareru_Hanashi__Tall,_Busty_Onee-sans_Turn_My_New_Place_into_Their_Sex_Room_[English]_(2025) to isolation:/comics/manga/[Wakamatsu]_Keitai_Choushin_Onee-san-tachi_ni_Shinkyo_o_Yaribeya_ni_Sareru_Hanashi__Tall,_Busty_Onee-sans_Turn_My_New_Place_into_Their_Sex_Room_[English]_(2025) +2026-01-07 02:40:57,530 - INFO - Moved [Wakamatsu]_Ikken_Yasashisou_na_Personal_Gym_no_Trainer-san_ni_Karada_o_Ijimenukareru_Hanashi_Sono_2__A_Seemingly_Gentle_Personal_Trainer_Gives_My_Body_a_Rough_Workout_(Part_2)_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Ikken_Yasashisou_na_Personal_Gym_no_Trainer-san_ni_Karada_o_Ijimenukareru_Hanashi_Sono_2__A_Seemingly_Gentle_Personal_Trainer_Gives_My_Body_a_Rough_Workout_(Part_2)_[English]_(2023) +2026-01-07 02:40:57,581 - INFO - Moved Doll_House_no_Koibito_(2011) to isolation:/comics/manga/Doll_House_no_Koibito_(2011) +2026-01-07 02:40:57,592 - INFO - Moved [Boole]_Living_with_chubby_bullies3_[English]_(2025) to isolation:/comics/manga/[Boole]_Living_with_chubby_bullies3_[English]_(2025) +2026-01-07 02:40:57,605 - INFO - Moved Watashi-tachi_ga_Watanare_Doujinshi_Tsukuru_Wake_Nai_jan,_Murimuri!!_(※Muri_ja_Nakatta!)_(2025) to isolation:/comics/manga/Watashi-tachi_ga_Watanare_Doujinshi_Tsukuru_Wake_Nai_jan,_Murimuri!!_(※Muri_ja_Nakatta!)_(2025) +2026-01-07 02:40:57,857 - INFO - Moved Smash_Smash_(2015) to isolation:/comics/manga/Smash_Smash_(2015) +2026-01-07 02:40:57,876 - INFO - Moved [Wakamatsu]_Smapho_Satsuei_ni_Hamatteru_SeFri_Joshi_to_Hamedori_suru_Ohanashi__Filming_a_Sextape_with_My_Sexfriend_Who's_Really_into_Selfies_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Smapho_Satsuei_ni_Hamatteru_SeFri_Joshi_to_Hamedori_suru_Ohanashi__Filming_a_Sextape_with_My_Sexfriend_Who's_Really_into_Selfies_[English]_(2023) +2026-01-07 02:40:57,890 - INFO - Moved The_Ace_of_the_Volleyball_Team_Used_Her_Tall,_Strong,_Toned_Body_to_Hold_Me_Down_and_Have_Sex_(2022) to isolation:/comics/manga/The_Ace_of_the_Volleyball_Team_Used_Her_Tall,_Strong,_Toned_Body_to_Hold_Me_Down_and_Have_Sex_(2022) +2026-01-07 02:40:57,906 - INFO - Moved EnglishTeam_Rabu2Digital] to isolation:/comics/manga/EnglishTeam_Rabu2Digital] +2026-01-07 02:40:57,919 - INFO - Moved [Wakamatsu]_Onna_Joushi_Futari_ni_Ryougawa_kara_Semerarete_Nou_Bug-rasareru_Hanashi__Beset_on_Either_Side_by_My_Female_Superiors,_My_Brain_Short-Circuited_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Onna_Joushi_Futari_ni_Ryougawa_kara_Semerarete_Nou_Bug-rasareru_Hanashi__Beset_on_Either_Side_by_My_Female_Superiors,_My_Brain_Short-Circuited_[English]_(2023) +2026-01-07 02:40:58,056 - INFO - Moved A_Woman_Whose_Greetings_to_the_Delivery_Man_Gradually_Get_Sloppier_(+_Other_Side)_(2023) to isolation:/comics/manga/A_Woman_Whose_Greetings_to_the_Delivery_Man_Gradually_Get_Sloppier_(+_Other_Side)_(2023) +2026-01-07 02:40:58,071 - INFO - Moved Zhuo_Dao_Ren_(2024) to isolation:/comics/manga/Zhuo_Dao_Ren_(2024) +2026-01-07 02:40:58,083 - INFO - Moved [Boole]_NATIONAL_FERTILITY_COMMISSION_2_[English]_(2025) to isolation:/comics/manga/[Boole]_NATIONAL_FERTILITY_COMMISSION_2_[English]_(2025) +2026-01-07 02:40:58,092 - INFO - Moved [Aoto_Kage]_Inran_Shimai_Seikatsu_[Chinese]_[MTL]_[Digital]_(2026) to isolation:/comics/manga/[Aoto_Kage]_Inran_Shimai_Seikatsu_[Chinese]_[MTL]_[Digital]_(2026) +2026-01-07 02:40:58,102 - INFO - Moved Jukujo_Sukina_Ore_No_Atarashii_Tobira_(2025) to isolation:/comics/manga/Jukujo_Sukina_Ore_No_Atarashii_Tobira_(2025) +2026-01-07 02:40:58,115 - INFO - Moved Kanojo_Kanojo_Kanojo!!!_(2023) to isolation:/comics/manga/Kanojo_Kanojo_Kanojo!!!_(2023) +2026-01-07 02:40:58,128 - INFO - Moved [Tsubaki_Jushirou]_Kawaii_Imouto_to_Ikenai_Koto_Shiteimasu!_[English]_(2025) to isolation:/comics/manga/[Tsubaki_Jushirou]_Kawaii_Imouto_to_Ikenai_Koto_Shiteimasu!_[English]_(2025) +2026-01-07 02:40:58,141 - INFO - Moved EnglishPenguin_PiperDigital] to isolation:/comics/manga/EnglishPenguin_PiperDigital] +2026-01-07 02:40:58,206 - INFO - Moved Onna_Joushi_Futari_ni_Ryougawa_kara_Semerarete_Nou_Bug-rasareru_Hanashi_(2021) to isolation:/comics/manga/Onna_Joushi_Futari_ni_Ryougawa_kara_Semerarete_Nou_Bug-rasareru_Hanashi_(2021) +2026-01-07 02:40:58,592 - INFO - Moved Apparently_I_Have_a_Gyaru_Girlfriend_After_Getting_Memory_Loss_(2023) to isolation:/comics/manga/Apparently_I_Have_a_Gyaru_Girlfriend_After_Getting_Memory_Loss_(2023) +2026-01-07 02:41:00,003 - INFO - Moved Kawaii_Imouto_to_Ikenai_Koto_Shiteimasu!_(2015) to isolation:/comics/manga/Kawaii_Imouto_to_Ikenai_Koto_Shiteimasu!_(2015) +2026-01-07 02:41:00,114 - INFO - Moved [ICE]_Matching_Joushi_Aishou_wa_Karada_de_Check__Matched_up_with_my_Boss_~_Checking_the_Compatibility_of_our_Bodies_~_(ANGEL_Club_2022-03)_[English]_[Digital]_(408257) to isolation:/comics/manga/[ICE]_Matching_Joushi_Aishou_wa_Karada_de_Check__Matched_up_with_my_Boss_~_Checking_the_Compatibility_of_our_Bodies_~_(ANGEL_Club_2022-03)_[English]_[Digital]_(408257) +2026-01-07 02:41:00,127 - INFO - Moved [Wakamatsu]_Shikarikata_ga_Yasashi_Sugiru_Onee-san_ga_Kairaku_Semesarechau_Hanashi__A_Lady_With_a_Soft_Approach_to_Discipline_is_Assailed_by_Pleasure_[English]_(2023) to isolation:/comics/manga/[Wakamatsu]_Shikarikata_ga_Yasashi_Sugiru_Onee-san_ga_Kairaku_Semesarechau_Hanashi__A_Lady_With_a_Soft_Approach_to_Discipline_is_Assailed_by_Pleasure_[English]_(2023) +2026-01-07 02:41:00,195 - INFO - Moved Having_Sex_with_My_Hyperrational_Junior_Until_She_Loses_All_Rationality_(2021) to isolation:/comics/manga/Having_Sex_with_My_Hyperrational_Junior_Until_She_Loses_All_Rationality_(2021) +2026-01-07 02:41:01,496 - INFO - Moved Dain_Kazoku_(2024) to isolation:/comics/manga/Dain_Kazoku_(2024) +2026-01-07 02:41:01,512 - INFO - Moved [Tiramisu_Tart_(Kazuhiro)]_Gyaku_Bunny_Cast_no_Namaiki_Anal_o_Namete_Sutte_Hametaoshitai_[English]_(2025) to isolation:/comics/manga/[Tiramisu_Tart_(Kazuhiro)]_Gyaku_Bunny_Cast_no_Namaiki_Anal_o_Namete_Sutte_Hametaoshitai_[English]_(2025) +2026-01-07 02:41:01,588 - INFO - Moved Sodachi_no_Yosasou_na_Onee-san_ga_Ogehin_Sex_suru_Hanashi_(2021) to isolation:/comics/manga/Sodachi_no_Yosasou_na_Onee-san_ga_Ogehin_Sex_suru_Hanashi_(2021) +2026-01-07 02:41:01,603 - INFO - Moved [IAPOC]_DA_RA_SHI_NA_SISTER_Ch.2__Careless_Sister_Ch.2_(COMIC_ExE_37)_[English]_(2026) to isolation:/comics/manga/[IAPOC]_DA_RA_SHI_NA_SISTER_Ch.2__Careless_Sister_Ch.2_(COMIC_ExE_37)_[English]_(2026) +2026-01-07 02:41:01,812 - INFO - Moved Ane_no_Seiyoku_Shori_wa_Ototo_ga_Suru_Monoda_to,_Gitei_wa_Omoi_Hajimete_Iru._(2022) to isolation:/comics/manga/Ane_no_Seiyoku_Shori_wa_Ototo_ga_Suru_Monoda_to,_Gitei_wa_Omoi_Hajimete_Iru._(2022) +2026-01-07 17:43:32,277 - INFO - Starting organization in /comics/pendingorganization... +2026-01-07 19:20:22,695 - INFO - Starting organization in /comics/pendingorganization... +2026-01-07 19:20:41,266 - INFO - Starting organization in /comics/pendingorganization... +2026-01-07 19:21:19,157 - INFO - Starting metadata update in /comics/manga (Force: False)... +2026-01-07 19:21:20,338 - INFO - Updating metadata for: _Unknown +2026-01-07 19:21:20,339 - INFO - Searching Mangadex for: Unknown +2026-01-07 19:23:27,757 - INFO - Sorting by Artist in /comics/manga... +2026-01-07 19:23:27,828 - INFO - Moving 'catch_you_at_the_indoor_beach' to Artist folder '_Unknown' +2026-01-07 19:23:27,834 - INFO - Moving '[Omapuu] Mama ni Oshiro wo Namerarete Getting My Butt Licked By Mom [English] [Poranya]' to Artist folder 'nakajima_fumio' +2026-01-07 19:23:27,841 - INFO - Moving '[Kazuhiro] Mesuiki ~Hame Trip~ [English] [N04h]' to Artist folder 'kazuhiro' +2026-01-07 19:23:27,847 - INFO - Moving 'Injoku_no_Kizuna_(2006)' to Artist folder '_Unknown' +2026-01-07 19:23:27,851 - INFO - Moving 'shounen_ga_otona_ni_natta_natsu' to Artist folder 'jairou' +2026-01-07 19:23:27,857 - INFO - Moving 'i_have_no_choice_but_to_have_sex_with_my_mother_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:27,867 - INFO - Moving '[Airandou] Imouto-tachi o Haramasenai to Derarenai Mura You Must Breed Your Sisters to Leave This Village [English] [head empty] [Decensored]' to Artist folder 'airandou' +2026-01-07 19:23:27,874 - INFO - Moving 'Clannad_(SHAA)_(2008)' to Artist folder '_Unknown' +2026-01-07 19:23:27,882 - INFO - Moving 'Tsuma_o_Kachiku_ni_Shite_Kudasai_(2013)' to Artist folder '_Unknown' +2026-01-07 19:23:27,889 - INFO - Moving 'on_a_stormy_night' to Artist folder 'abe_morioka' +2026-01-07 19:23:27,903 - INFO - Moving '[Wakamatsu]_Onna_Joushi_Futari_ni_Ryougawa_kara_Semerarete_Nou_Bug-rasareru_Hanashi__Beset_on_Either_Side_by_My_Female_Superiors,_My_Brain_Short-Circuited_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:27,912 - INFO - Moving 'jibakureichan_wa_oppai_ga_yowai_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:27,919 - INFO - Moving '(C97) [Mousou Deguchi] (Unou) My succubuss Neighbour,the Mother and Daughter Case of the Onomiya Family [ENG]' to Artist folder '_Unknown' +2026-01-07 19:23:27,927 - INFO - Moving '[Furaimai]_Tsuma_ni_Ani_to_Kozukuri_Shite_Moraimashita_[English]_(2025)' to Artist folder 'furaimai' +2026-01-07 19:23:27,935 - INFO - Moving 'last_day_of_summer_vacation_sex_sex_sex' to Artist folder '_Unknown' +2026-01-07 19:23:27,942 - INFO - Moving 'SEX Shinai to Derarenai Heya desu. _ The Room You Can't Leave Until You Have Sex' to Artist folder '_Unknown' +2026-01-07 19:23:27,948 - INFO - Moving '[Utsutsu Minoru] Naka Mutsumajiku Love Among Family (COMIC Anthurium 2018-10) [English] [Sydin] [Digital]' to Artist folder 'utsutsu_minoru' +2026-01-07 19:23:27,960 - INFO - Moving 'mama_nge' to Artist folder 'n.o._chachamaru' +2026-01-07 19:23:27,970 - INFO - Moving 'a_story_about_getting_trained_by_my_older_sister' to Artist folder 'k8on' +2026-01-07 19:23:27,979 - INFO - Moving 'shake_hip' to Artist folder 'abe_morioka' +2026-01-07 19:23:27,985 - INFO - Moving '[Hannya san] Mom son' to Artist folder 'hannya-san' +2026-01-07 19:23:27,994 - INFO - Moving 'Frustrated Share House Residents' to Artist folder 'ruzi' +2026-01-07 19:23:28,002 - INFO - Moving 'a room you can't leave without having lovey-dovey sex with fuyuko chan' to Artist folder 'mr.peanut' +2026-01-07 19:23:28,013 - INFO - Moving 'oni_no_kyouiku_mama_ga_musuko_to_amaama_sex_made' to Artist folder '_Unknown' +2026-01-07 19:23:28,022 - INFO - Moving 'immoral_relationship' to Artist folder 'umino_sachi' +2026-01-07 19:23:28,032 - INFO - Moving 'quick_return_home' to Artist folder 'n.o._chachamaru' +2026-01-07 19:23:28,040 - INFO - Moving 'sister_succubus' to Artist folder 'torororo' +2026-01-07 19:23:28,048 - INFO - Moving 'i_fell_for_a_female_ghost' to Artist folder '_Unknown' +2026-01-07 19:23:28,055 - INFO - Moving '[Mata Ashita (Oohira Sunset)] Vacances wa Sex Shinaito Derarenai Heya de Vacation in a room you can't leave until you have sex [English] [meganekun_tl] [Digital]' to Artist folder 'Mata_Ashita_(Oohira_Sunset)' +2026-01-07 19:23:28,065 - INFO - Moving 'shrine_maidens_of_injin' to Artist folder 'cinnamon' +2026-01-07 19:23:28,073 - INFO - Moving 'the_daily_lives_of_an_older_brother_x_four_younger_sister' to Artist folder '_Unknown' +2026-01-07 19:23:28,079 - INFO - Moving 'all_eyes_on_me' to Artist folder 'echigoya_takeru' +2026-01-07 19:23:28,086 - INFO - Moving 'EnglishKumokuDigital]' to Artist folder '_Unknown' +2026-01-07 19:23:28,090 - INFO - Moving 'sister_was_thinking_about_her_younger_brothers_sexual_desire_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:28,095 - INFO - Moving 'two_big_tit_gals_find_a_bored_boy' to Artist folder 'bu-chan' +2026-01-07 19:23:28,101 - INFO - Moving 'a_sulky_older_sister_who_wants_to_concentrate_on_her_studies' to Artist folder '_Unknown' +2026-01-07 19:23:28,106 - INFO - Moving 'asekaki_nee_no_neteiru_aida_ni' to Artist folder 'ramanda' +2026-01-07 19:23:28,116 - INFO - Moving 'Sex_Shinai_to_Derarenai_Heya_ni_Naka_no_Warui_Imouto_to_Tojikomerareru_(2023)' to Artist folder '_Unknown' +2026-01-07 19:23:28,126 - INFO - Moving 'siblings_matchup_secret_mating_sex_life' to Artist folder 'borusiti' +2026-01-07 19:23:28,137 - INFO - Moving 'Siblings having sex in the living room like it's normal' to Artist folder '_Unknown' +2026-01-07 19:23:28,144 - INFO - Moving 'enveloped_by_a_ghost' to Artist folder 'rage' +2026-01-07 19:23:28,154 - INFO - Moving 'papa_is_a_loser' to Artist folder '_Unknown' +2026-01-07 19:23:28,164 - INFO - Moving 'hari_x2_honey' to Artist folder '_Unknown' +2026-01-07 19:23:28,173 - INFO - Moving 'first_sperm_loving_succubus_dinner_of_cowgirl_and_creampie_sex' to Artist folder '_Unknown' +2026-01-07 19:23:28,180 - INFO - Moving 'i_want_it_nurse_me' to Artist folder 'abe_morioka' +2026-01-07 19:23:28,189 - INFO - Moving 'fairy_feature_the_mayors_secret' to Artist folder '_Unknown' +2026-01-07 19:23:28,195 - INFO - Moving 'starting_today_im' to Artist folder '_Unknown' +2026-01-07 19:23:28,211 - INFO - Moving 'naive_little_sister_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:28,235 - INFO - Moving 'boku_no_kaasan_ga_amari_ni_mo_erosugite' to Artist folder '_Unknown' +2026-01-07 19:23:28,241 - INFO - Moving 'autumn_lovers' to Artist folder 'kurona' +2026-01-07 19:23:28,252 - INFO - Moving 'training_the_older_sister_momomadoka' to Artist folder '_Unknown' +2026-01-07 19:23:28,264 - INFO - Moving 'doukyuusei_gal_3_ningumi_to' to Artist folder '_Unknown' +2026-01-07 19:23:28,277 - INFO - Moving 'Hitoduma Ane _ Married Sister' to Artist folder '_Unknown' +2026-01-07 19:23:28,288 - INFO - Moving '[Chimee_House_(Takapi)]_A_perfect_day_for_exposure_of_Sakura_Kotaka_1-3_(EnglishMTL)_(2024)' to Artist folder 'takapi' +2026-01-07 19:23:28,296 - INFO - Moving '[Wakamatsu]_Smapho_Satsuei_ni_Hamatteru_SeFri_Joshi_to_Hamedori_suru_Ohanashi__Filming_a_Sextape_with_My_Sexfriend_Who's_Really_into_Selfies_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:28,302 - INFO - Moving 'winter_omake_bon' to Artist folder 'morimiya_masayuki' +2026-01-07 19:23:28,310 - INFO - Moving 'perverted_hypnosis_experiment' to Artist folder 'akitsuki_itsuki' +2026-01-07 19:23:28,321 - INFO - Moving 'kyoudai_no_naka' to Artist folder 'kakugari_kyoudai' +2026-01-07 19:23:28,329 - INFO - Moving 'sometimes_i_draw_manga' to Artist folder 'tao' +2026-01-07 19:23:28,336 - INFO - Moving 'Stigmatized_Property_(2019)' to Artist folder '_Unknown' +2026-01-07 19:23:28,343 - INFO - Moving '[IAPOC]_Darashina_Sister__Careless_Sister_(COMIC_ExE_35)_[English]_{RedLantern}_[Digital]_(2023)' to Artist folder 'iapoc' +2026-01-07 19:23:28,349 - INFO - Moving 'apron' to Artist folder '_Unknown' +2026-01-07 19:23:28,353 - INFO - Moving 'namaiki_na_hahaoya_o_honnin_ni_mo_kizukarezu_ni_minkan_suru_houhou' to Artist folder 'junk_kameyoko' +2026-01-07 19:23:28,359 - INFO - Moving 'haha_ga_saikon_shitara_gikei_ga_chou_kuzu' to Artist folder 'sake-chan' +2026-01-07 19:23:28,368 - INFO - Moving 'lets_do_it' to Artist folder 'fukuhara_takaya' +2026-01-07 19:23:28,377 - INFO - Moving 'naomi san wa ore no sefri ch 1' to Artist folder 'juna_juna_juice' +2026-01-07 19:23:28,387 - INFO - Moving 'namaiki_sanshimai' to Artist folder 'airandou' +2026-01-07 19:23:28,396 - INFO - Moving '[Wakamatsu]_Ikemen_Ouji-sama_na_Onnanoko,_Kayowai_Otome_na_Otokonoko__A_Dashing,_Handsome_Woman_and_a_Frail,_Maidenly_Boy_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:28,408 - INFO - Moving 'a_story_about_my_little_sister_giving_me_titjobs' to Artist folder 'hanpatsu_zokusei' +2026-01-07 19:23:28,415 - INFO - Moving 'fuyu_yui' to Artist folder 'toyama_teiji' +2026-01-07 19:23:28,421 - INFO - Moving 'Sex_and_the_Sister_(2008)' to Artist folder '_Unknown' +2026-01-07 19:23:28,427 - INFO - Moving '[Wakamatsu]_Namaiki_Bakkari_Iu_kedo_Sugu_Wakaraserarechau_Kouhai-chan_no_Ohanashi__A_Bratty_Underclassman_Who_Quickly_Learned_Her_Lesson_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:28,431 - INFO - Moving 'Imouto_wa_minna_Oniichan_ga_Suki!_(2010)' to Artist folder '_Unknown' +2026-01-07 19:23:28,436 - INFO - Moving 'i_matched_with_my_friends_mom_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:28,441 - INFO - Moving '[Ozy]_Dain_Kazoku_-_Falling_Lewd_Family_[English]_[MTL]_[Digital]_(2025)' to Artist folder 'ozy' +2026-01-07 19:23:28,446 - INFO - Moving '8_Banme_no_Prince_(1995)' to Artist folder '_Unknown' +2026-01-07 19:23:28,451 - INFO - Moving 'love_wheel' to Artist folder 'ohbaric' +2026-01-07 19:23:28,457 - INFO - Moving '[Heart Manju Mania (Akata Izuki)] Cocoro Controller 2 [English]' to Artist folder 'akata_izuki' +2026-01-07 19:23:28,462 - INFO - Moving 'the_sex_life_of_andy_and_leyley' to Artist folder '_Unknown' +2026-01-07 19:23:28,467 - INFO - Moving 'mozzarella_the_new_slutty_pussy' to Artist folder '_Unknown' +2026-01-07 19:23:28,471 - INFO - Moving '[ABBB] How to make a family using hypnosis app [English] [Decensored]' to Artist folder 'abbb' +2026-01-07 19:23:28,477 - INFO - Moving 'wife_pickle' to Artist folder 'sunagawa_tara' +2026-01-07 19:23:28,482 - INFO - Moving '[MN] My Big Breast Sister' to Artist folder 'mn' +2026-01-07 19:23:28,491 - INFO - Moving 'you_must_breed_your_sisters_to_leave_this_village' to Artist folder 'airandou' +2026-01-07 19:23:28,496 - INFO - Moving 'mother_and_son_and_father_and_daughter_tonight_is_incest_night' to Artist folder 'point_takashi' +2026-01-07 19:23:28,501 - INFO - Moving '[Takashima] FANBOX Matome Bangaihen Hamerare Daisuki Bitch-chan Extra! ~Atashi Senyou no Sao Ikusei Keikaku~ FANBOX Collection Extra [English] [Project Valvrein]' to Artist folder 'takashima' +2026-01-07 19:23:28,507 - INFO - Moving 'teasing_big_sis' to Artist folder 'shijima_yukio' +2026-01-07 19:23:28,512 - INFO - Moving 'forward' to Artist folder 'kizuka_kazuki' +2026-01-07 19:23:28,517 - INFO - Moving 'my_sister_doesnt_laugh' to Artist folder '_Unknown' +2026-01-07 19:23:28,523 - INFO - Moving 'One_Punch-Man_(2012)' to Artist folder '_Unknown' +2026-01-07 19:23:28,527 - INFO - Moving 'big_sis_wants_to_convince_her_lil_bro' to Artist folder 'torigoshi_crow' +2026-01-07 19:23:28,532 - INFO - Moving 'misato_x_shinji_baby_making' to Artist folder '_Unknown' +2026-01-07 19:23:28,537 - INFO - Moving 'my_wife_left_me_because_i_was' to Artist folder 'special_g' +2026-01-07 19:23:28,542 - INFO - Moving 'Yoru_no_Koibito_(2017)' to Artist folder '_Unknown' +2026-01-07 19:23:28,546 - INFO - Moving 'human_manipulating_remote_control' to Artist folder 'kakuninii' +2026-01-07 19:23:28,552 - INFO - Moving 'bitch_na_inanesama' to Artist folder '_Unknown' +2026-01-07 19:23:28,556 - INFO - Moving '[Wakamatsu]_Takuhaibin_no_Uketorikata_ga_Dandan_Darashinaku_Natte_Iku_OL-chan_(+_Ura-hen)__A_Woman_Whose_Greetings_to_the_Delivery_Man_Gradually_Get_Sloppier_(+_Other_Side)_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:28,560 - INFO - Moving 'family_mischief_lewd' to Artist folder 'sukage' +2026-01-07 19:23:28,565 - INFO - Moving '[Wakamatsu]_Rikutsuppoi_Kouhai-chan_to_Rikutsunuki_de_Majiwaru_made_no_Hanashi__Having_Sex_with_My_Hyperrational_Junior_Until_She_Loses_All_Rationality_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:28,570 - INFO - Moving '[Poriuretan] Kotatsu Suki no Giri Kyoudai Kotatsu-loving Step-siblings [English]' to Artist folder 'poriuretan' +2026-01-07 19:23:28,575 - INFO - Moving 'Active_Heart_(2003)' to Artist folder '_Unknown' +2026-01-07 19:23:28,589 - INFO - Moving 'my_daily_life_taking_care_of_sexual_urges_with_my_naughty_sister' to Artist folder '_Unknown' +2026-01-07 19:23:28,599 - INFO - Moving 'a_history_of_no_boyfriends_equal_me_at_my_age' to Artist folder '_Unknown' +2026-01-07 19:23:28,607 - INFO - Moving 'one_familys_plan_to_save_electricty' to Artist folder '_Unknown' +2026-01-07 19:23:28,612 - INFO - Moving 'what_we_have_is_strictly_business' to Artist folder 'awan' +2026-01-07 19:23:28,619 - INFO - Moving '[Juna Juna Juice] Pokemon Series (Pokemon) [English]' to Artist folder 'juna_juna_juice' +2026-01-07 19:23:28,623 - INFO - Moving 'bitch_dirty_sister' to Artist folder 'type.90' +2026-01-07 19:23:28,652 - INFO - Moving 'kayanee_and_the_old_man_memories_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:28,657 - INFO - Moving 'momojiri_ocean' to Artist folder 'methonium' +2026-01-07 19:23:28,662 - INFO - Moving 'daily_life_with_my_sexy_stepmom' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:28,667 - INFO - Moving 'older_stepsister_teaches_her_cheeky_little_stepbrother' to Artist folder '_Unknown' +2026-01-07 19:23:28,672 - INFO - Moving 'falling_in_love_at_the_brothel.5' to Artist folder 'kondo_yume' +2026-01-07 19:23:28,677 - INFO - Moving 'okaasan_to_naisho' to Artist folder 'spark_utamaro' +2026-01-07 19:23:28,682 - INFO - Moving 'punishment_for_the_feral_hound_in_heat' to Artist folder 'enryu' +2026-01-07 19:23:28,688 - INFO - Moving 'my_little_sister_has_a_big_body_and_a_big_heart' to Artist folder 'kazunoko' +2026-01-07 19:23:28,693 - INFO - Moving '[Emori Uki] Fugou Ichizoku no Muko ~Tsuma Igai Zenin Ore no Onna~ Sono 1 I married into a wealthy family ~All the women in the family except my wife are mine~ Part 1 [English] [joobuspaidatr]' to Artist folder 'Emori_Uki' +2026-01-07 19:23:28,699 - INFO - Moving '[Kazuhiro] Deisui Anaru wa Ane no Aji (COMIC HOTMILK 2021-01) [English] [snapte] [Digital]' to Artist folder 'kazuhiro' +2026-01-07 19:23:28,704 - INFO - Moving '[Fence14] Giji SEX Kyoudai 0~4 ENGLISH 1-164 [Machine Translation with Edits]' to Artist folder 'fence_14' +2026-01-07 19:23:28,710 - INFO - Moving 'sakusei_shuki_shuki_sisters' to Artist folder 'tokinobutt' +2026-01-07 19:23:28,715 - INFO - Moving 'dosukebe_saimin_revenge' to Artist folder 'drain' +2026-01-07 19:23:28,721 - INFO - Moving 'A Son's Choice' to Artist folder '_Unknown' +2026-01-07 19:23:28,726 - INFO - Moving '[Kawamori Mizaki] Mainichi uwakidzuma {English]' to Artist folder 'kawamori_misaki' +2026-01-07 19:23:28,734 - INFO - Moving 'skin_tight_sticky_intercourse' to Artist folder 'hanabi' +2026-01-07 19:23:28,744 - INFO - Moving '[Tokyo Ereki Studio (Azuma Ryo)] JK no Otoshikata -Jou- [English] [Ruru Scanlations]' to Artist folder 'azuma_ryo' +2026-01-07 19:23:28,752 - INFO - Moving 'Ai_ga_Ippai_Ero_wa_Oppai_(2010)' to Artist folder 'asuhiro' +2026-01-07 19:23:28,759 - INFO - Moving 'supplementary_sex_education' to Artist folder '_Unknown' +2026-01-07 19:23:28,764 - INFO - Moving 'taimanin_shinobu_series' to Artist folder '_Unknown' +2026-01-07 19:23:28,768 - INFO - Moving '[Sakai Hamachi] Okaasan Ha Soap No Nioi Mommy Smells Like Soap (Okinimesu Mama) [English] [menospeaknihongo] [Decensored] [Digital]' to Artist folder 'sakai_hamachi' +2026-01-07 19:23:28,773 - INFO - Moving 'a_molester_took_everything_from_me_chapter_' to Artist folder '_Unknown' +2026-01-07 19:23:28,778 - INFO - Moving 'Hoken_Shitsu_no_Aisare_Sensei_(2020)' to Artist folder '_Unknown' +2026-01-07 19:23:28,782 - INFO - Moving 'a_loner_makes_the_right_choices_and_goes_out_with_a_seiso_girl_of_course_theres_sex_as_well' to Artist folder '_Unknown' +2026-01-07 19:23:28,787 - INFO - Moving 'maho_shojo_ointo_seba_mazu_haha_o_iyo' to Artist folder 'rim' +2026-01-07 19:23:28,792 - INFO - Moving 'paiotsu_kaede_live' to Artist folder '_Unknown' +2026-01-07 19:23:28,796 - INFO - Moving 'otakuhime_and_the_lovey_dovey_bath' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:28,803 - INFO - Moving 'Musume_ga_Furyou_ni_Otosareteita_(2019)' to Artist folder '_Unknown' +2026-01-07 19:23:28,808 - INFO - Moving '[Kasou Genjitsu (Hasekura Noise)] THE Haramase Isami Kaede The Breeding Record of Isami Kaede (Blue Archive) [English] [Shiromaru] [Digital]' to Artist folder 'hasekura_noise' +2026-01-07 19:23:28,813 - INFO - Moving 'virginity_prohibition_act_mandatory_baby_making' to Artist folder '_Unknown' +2026-01-07 19:23:28,818 - INFO - Moving '[Juna Juna Juice] Mukatsuku Imouto wa Chanto Shikaranakucha 1-30 Matome Annoying Little Sister Needs to be Scolded 1-30 [English]' to Artist folder 'juna_juna_juice' +2026-01-07 19:23:28,822 - INFO - Moving 'the_lazy_and_naughty_achan_is_inviting_me' to Artist folder '_Unknown' +2026-01-07 19:23:28,827 - INFO - Moving 'Watashi_no_Kawaii_Mochizuki-kun_(2020)' to Artist folder '_Unknown' +2026-01-07 19:23:28,832 - INFO - Moving 'The_Ace_of_the_Volleyball_Team_Used_Her_Tall,_Strong,_Toned_Body_to_Hold_Me_Down_and_Have_Sex_(2022)' to Artist folder '_Unknown' +2026-01-07 19:23:28,839 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Dosukebe Osananajimi to Yarimakuri Hamemakuri Sex Zanmai Fucking My Lewd Childhood Friend Over and Over [English] {Stopittarpit}' to Artist folder 'kazuhiro' +2026-01-07 19:23:28,851 - INFO - Moving '[ICE]_Matching_Joushi_Aishou_wa_Karada_de_Check__Matched_up_with_my_Boss_~_Checking_the_Compatibility_of_our_Bodies_~_(ANGEL_Club_2022-03)_[English]_[Digital]_(408257)' to Artist folder 'ice' +2026-01-07 19:23:28,859 - INFO - Moving '[Wakamatsu]_Seiso_Kanojo_ga_Bitch_ni_Nacchau_Hanashi__The_Pure_Girl_Became_a_Slut_[English]_(2024)' to Artist folder 'wakamatsu' +2026-01-07 19:23:28,866 - INFO - Moving '[Nedoko de Nidone (Nashio )] Sex Shinai to Derarenai Heya Lv 100 Sex-Locked Room Lv 100 [English] [sakurei]' to Artist folder '_Unknown' +2026-01-07 19:23:28,872 - INFO - Moving 'from_nipple_bumps_to_erotic_play_with_my_sister' to Artist folder 'yokoya_manjirou' +2026-01-07 19:23:28,886 - INFO - Moving 'heart_mark_oome' to Artist folder 'miyamoto_issa' +2026-01-07 19:23:28,902 - INFO - Moving '[Airandou] Imouto o Haramasenaito Derarenai Shima 2 [English] [Team Rabu2]' to Artist folder 'Airandou' +2026-01-07 19:23:28,914 - INFO - Moving 'everyday_conversations_with_my_big_sister' to Artist folder '_Unknown' +2026-01-07 19:23:28,928 - INFO - Moving '[Ozy]_Tsumamigui_Cherry_[English]_[MTL]_[Digital]_(2025)' to Artist folder 'ozy' +2026-01-07 19:23:28,941 - INFO - Moving '[R Koubou (Ruzi)] Onee-chan to Nakayoshi Seikatsu Getting Along Well With My Sister [Digital] [English] {Doujins com}' to Artist folder 'R_Koubou_(Ruzi)' +2026-01-07 19:23:28,957 - INFO - Moving 'aneoto' to Artist folder 'kmvt' +2026-01-07 19:23:28,968 - INFO - Moving 'Watashi-tachi_ga_Watanare_Doujinshi_Tsukuru_Wake_Nai_jan,_Murimuri!!_(※Muri_ja_Nakatta!)_(2025)' to Artist folder 'Takeshima_Eku' +2026-01-07 19:23:28,975 - INFO - Moving 'the_making_of_a_cultt_leader' to Artist folder '_Unknown' +2026-01-07 19:23:28,979 - INFO - Moving 'Hara_(2006)' to Artist folder '_Unknown' +2026-01-07 19:23:28,984 - INFO - Moving 'watashi_de_sukkiri_saasechaina_hatsukoi_aite_ni_tsurareru_ore' to Artist folder '_Unknown' +2026-01-07 19:23:28,989 - INFO - Moving 'ONA-ASSI!_~Ero_Manga_Ka_no_Onanie_wo_Tetsudau_Shigoto~_(2019)' to Artist folder '_Unknown' +2026-01-07 19:23:28,995 - INFO - Moving 'perverted_body_tight_mama_monster' to Artist folder 'tikubin' +2026-01-07 19:23:29,000 - INFO - Moving '(C102) [Kasou Genjitsu (Hasekura Noise)] Megane x Kyonyuu Archive Glasses x Big Tits Archive (Blue Archive) [English] [Shiromaru]' to Artist folder 'hasekura_noise' +2026-01-07 19:23:29,005 - INFO - Moving 'gishi_ni_shiborareru_hanashi' to Artist folder 'kuronyan' +2026-01-07 19:23:29,010 - INFO - Moving '[Nishikawa Kou] Haha no Miru Midarana Yume Mom's Dirty Dream (COMIC Penguin Club 2025-11 [Digital]) [English] [menospeaknihongo]' to Artist folder 'Nishikawa_Kou' +2026-01-07 19:23:29,016 - INFO - Moving 'call_me_a_slut' to Artist folder 'noripachi' +2026-01-07 19:23:29,021 - INFO - Moving 'rental_mama_rental_mom' to Artist folder 'inomoto_rikako' +2026-01-07 19:23:29,027 - INFO - Moving 'oshi_to_ecchina_koto_nante_muri_muri_muri' to Artist folder '_Unknown' +2026-01-07 19:23:29,031 - INFO - Moving 'Kateinai Henai' to Artist folder 'satsuki_imonet' +2026-01-07 19:23:29,037 - INFO - Moving 'Shokushu_ni_Zenritsusen_Sandoitchi_Sareru_Hanashi_(2023)' to Artist folder '_Unknown' +2026-01-07 19:23:29,041 - INFO - Moving 'devi_navi' to Artist folder 'abe_morioka' +2026-01-07 19:23:29,046 - INFO - Moving '[Chiguchi Miri] Renai Nanka Shinaide Kyoudaikan Dakede Ikitai I'll Lay Off the Love, I Just Wanna Get Off Being Raped by Onii-chan! (Ikenai Koto kamo ) [English] [Learn JP with H]' to Artist folder 'Chiguchi_Miri' +2026-01-07 19:23:29,051 - INFO - Moving '[Muufa] One Room, Chichi Musume-Seikatsu One Roon, Father and Daughter Living Together [English] [Poranya]' to Artist folder 'Muufa' +2026-01-07 19:23:29,056 - INFO - Moving 'leave_me_alone' to Artist folder 'super_zombie' +2026-01-07 19:23:29,064 - INFO - Moving 'the_day_the_youngest_son_lost_his_virginity_thanks_to_his_mother_in_a_swimsuit' to Artist folder '_Unknown' +2026-01-07 19:23:29,076 - INFO - Moving 'misaesan_no_shiri_ass' to Artist folder '_Unknown' +2026-01-07 19:23:29,081 - INFO - Moving 'and_then_i_will_be_a_mom' to Artist folder '_Unknown' +2026-01-07 19:23:29,090 - INFO - Moving 'a_molester_took_everything_from_me' to Artist folder '_Unknown' +2026-01-07 19:23:29,103 - INFO - Moving '[Wakamatsu]_Ikemen_Ouji-sama_na_Onnanoko,_Kayowai_Otome_na_Otokonoko__The_Handsome_Princely_Girl,_The_Frail_Girly_Femboy_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:29,115 - INFO - Moving 'Shintaisou_Circle_Joshi_ga_Kansetsu_Kadouiki_Meippai_Tsukatte_H_suru_Hanashi_(2021)' to Artist folder '_Unknown' +2026-01-07 19:23:29,127 - INFO - Moving 'will_you_help_me' to Artist folder '_Unknown' +2026-01-07 19:23:29,140 - INFO - Moving '[Manbou Shoten] Shitei ga Ryokousaki de Mechakucha Sex suru Ohanashi (English)' to Artist folder 'manbou_syoten' +2026-01-07 19:23:29,156 - INFO - Moving 'katamichi_catchball' to Artist folder 'gentsuki' +2026-01-07 19:23:29,170 - INFO - Moving 'bareback_sex_life_with_da_vinci' to Artist folder 'ozy' +2026-01-07 19:23:29,182 - INFO - Moving 'my_defenseless_mothers' to Artist folder '_Unknown' +2026-01-07 19:23:29,194 - INFO - Moving 'a_day_for_incest' to Artist folder 'karukiya' +2026-01-07 19:23:29,209 - INFO - Moving 'jagan_no_saimin_inryoku_de_seitokai_les_joshitachi' to Artist folder '_Unknown' +2026-01-07 19:23:29,220 - INFO - Moving 'Fujoshi_na_imouto_de_sumimasen_(2019)' to Artist folder '_Unknown' +2026-01-07 19:23:29,233 - INFO - Moving 'boku_no_kaasan_ga_amari_ni_mo_erosugite_chapter_' to Artist folder '_Unknown' +2026-01-07 19:23:29,242 - INFO - Moving 'Kanzennaru_Kubinagaryuu_no_Hi_(2013)' to Artist folder '_Unknown' +2026-01-07 19:23:29,248 - INFO - Moving 'making_a_bet_with_a_competitive_niece' to Artist folder '_Unknown' +2026-01-07 19:23:29,253 - INFO - Moving '[k8on] It's A Given! Siblings Have Incestuous Sex!!! 2 [English] [The People With No Name]' to Artist folder 'k8on' +2026-01-07 19:23:29,257 - INFO - Moving 'the_twins_next_door_were_former_super_sentai' to Artist folder 'fan' +2026-01-07 19:23:29,263 - INFO - Moving 'nureane_batsuichi_no_ane_to_sex_o_shita_natsu_no_yoru' to Artist folder 'tsusauto' +2026-01-07 19:23:29,270 - INFO - Moving '[Juna Juna Juice] Supergirl From The JJJ Universe (The Flash) [English]' to Artist folder 'juna_juna_juice' +2026-01-07 19:23:29,281 - INFO - Moving 'shes_always_obstinate' to Artist folder '_Unknown' +2026-01-07 19:23:29,287 - INFO - Moving 'Dain_Kazoku_(2024)' to Artist folder '_Unknown' +2026-01-07 19:23:29,292 - INFO - Moving 'mikamikuns_incestuous_situation' to Artist folder '_Unknown' +2026-01-07 19:23:29,296 - INFO - Moving '[Yue] Idol-chan A Hypersensitive, Saggy Breasted Underground Idol Blanks Out on Network TV' to Artist folder 'yue' +2026-01-07 19:23:29,302 - INFO - Moving '[Pentacle(Shimipan)] I guess I have no choice but to have sex with my mom (The story so far) [WaterKujo] [English]' to Artist folder 'shimipan' +2026-01-07 19:23:29,308 - INFO - Moving 'my_big_little_sister' to Artist folder 'acbins' +2026-01-07 19:23:29,316 - INFO - Moving '[Zandoro] A story about an Onee-san being impregnated by an incubus and her Onii-chan being made into a succubus' pet' to Artist folder 'zandoro' +2026-01-07 19:23:29,325 - INFO - Moving 'Having_Sex_with_My_Hyperrational_Junior_Until_She_Loses_All_Rationality_(2021)' to Artist folder '_Unknown' +2026-01-07 19:23:29,334 - INFO - Moving 'awakening_of_the_female_instinct' to Artist folder 'urico_take' +2026-01-07 19:23:29,344 - INFO - Moving 'Onna_Joushi_Futari_ni_Ryougawa_kara_Semerarete_Nou_Bug-rasareru_Hanashi_(2021)' to Artist folder '_Unknown' +2026-01-07 19:23:29,351 - INFO - Moving 'Apparently_I_Have_a_Gyaru_Girlfriend_After_Getting_Memory_Loss_(2023)' to Artist folder 'Kuga_Tsuniya' +2026-01-07 19:23:29,356 - INFO - Moving 'Hitozuma,_Uwaki,_Danchi_Nite._-37-Sai_Miho-_(2025)' to Artist folder '_Unknown' +2026-01-07 19:23:29,361 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Mesu Ogre wa Kentauros Chinpo o Musabori Okasu The Ogre Glutton That Feasts on Horse Cock [Digital] [English]' to Artist folder 'kazuhiro' +2026-01-07 19:23:29,367 - INFO - Moving 'friendly_brother_and_sister' to Artist folder '_Unknown' +2026-01-07 19:23:29,373 - INFO - Moving '[Manbou Shoten] Shitei ga Mechakucha Sex suru Ohanashi' to Artist folder 'manbou_syoten' +2026-01-07 19:23:29,378 - INFO - Moving 'Family_Plan_(2024)' to Artist folder 'toono_suika' +2026-01-07 19:23:29,385 - INFO - Moving 'you_must_breed_your_sister_to_leave_this_island' to Artist folder 'airandou' +2026-01-07 19:23:29,391 - INFO - Moving 'fence14' to Artist folder 'fence_14' +2026-01-07 19:23:29,397 - INFO - Moving 'Erosugiru Doukyonin ~Dosukebe Shimai to 1K Doukyo Seikatsu~ _ My Roommates Are Way Too Lewd ~Living in a One-Room Apartment With Two Perverted Sisters~' to Artist folder 'kirimoto_yuuji' +2026-01-07 19:23:29,403 - INFO - Moving 'elder_sis_cosplay' to Artist folder 'shiun' +2026-01-07 19:23:29,410 - INFO - Moving 'maiyasans_money_issues' to Artist folder '_Unknown' +2026-01-07 19:23:29,416 - INFO - Moving 'mama_cos' to Artist folder 'neko_no_mimi' +2026-01-07 19:23:29,429 - INFO - Moving '[Shirono Mahiro] Kazoku no Hate End of a Family (Kono Sukebe ni Shite Kono Sukebe Ari) [English] [friggo]' to Artist folder 'takaku_tubby' +2026-01-07 19:23:29,438 - INFO - Moving 'im_being_sex_educated_by_my_overprotective_mother_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:29,446 - INFO - Moving 'Apart_no_Otonari-san_ga_Yarasete_Kureru_Hanashi_(2024)' to Artist folder '_Unknown' +2026-01-07 19:23:29,456 - INFO - Moving '[Wakamatsu]_Kozukuri_no_Shikata_o_Dankai-teki_ni_Oshiete_Kureru_Onee-san__An_Onee-san_Who_Teaches_Me_Step_by_Step_How_to_Make_a_Baby_[English]_(2025)' to Artist folder 'wakamatsu' +2026-01-07 19:23:29,462 - INFO - Moving 'imouto_ookiindamon_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:29,472 - INFO - Moving '[Wakamatsu]_Ippai_Amayakashite_Boku_o_Dame_ni_Shiyou_to_Suru_Koakuma_Onee-san_no_Hanashi__Spoiled_Silly_by_a_Naughty_Older_Woman_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:29,481 - INFO - Moving 'Onee-san_wa_Soushoku_Danshi_ni_Hatsujou_suru_(2018)' to Artist folder '_Unknown' +2026-01-07 19:23:29,494 - INFO - Moving 'my_dear_sister_is_mine' to Artist folder '92m' +2026-01-07 19:23:29,506 - INFO - Moving '[Qdou Kei] Kaa-chan to Nee-chan ga Hidoin da yo My mom and big sister are cruel (COMIC MILF 2016-08 Vol 31) [English] [Januz]' to Artist folder 'qdou_kei' +2026-01-07 19:23:29,517 - INFO - Moving '[nounanka (Abubu)] Fuuzoku Gakuensai e Youkoso! 2-kame Welcome To The School Brothel Festival! 2nd Day [English]' to Artist folder 'abubu' +2026-01-07 19:23:29,527 - INFO - Moving 'story_about_how_i_fucked_cucked_and_brought_to_bliss_some_languid_wives' to Artist folder 'dadacco_racco-chan' +2026-01-07 19:23:29,536 - INFO - Moving '[Shiki] Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 Guess Which One's Your Naked Busty JK Daughter Or Else! 2 [English]' to Artist folder 'Shiki' +2026-01-07 19:23:29,547 - INFO - Moving 'uchi_ni_kaettara_mama_ga_zenra_de_hatsujou_shiteta_ken' to Artist folder 'abe_morioka' +2026-01-07 19:23:29,556 - INFO - Moving '[Teoi] Youmu-chan hypnosis sex' to Artist folder 'Teoi' +2026-01-07 19:23:29,566 - INFO - Moving '[Kazuhiro] Gal's Bitch Shijou Shugi! Ch 1 Gal Bitch Supremacy Ch 1 [English] {Doujins com}' to Artist folder 'Kazuhiro' +2026-01-07 19:23:29,575 - INFO - Moving 'similar_siblings' to Artist folder '_Unknown' +2026-01-07 19:23:29,585 - INFO - Moving '[Wakamatsu]_Mesaki_no_kairaku_o_chiratsuka_sete_daraku_o_izanau_warui_onesan_[Chinese]_[ANDX個人漢化_&_曙光个人重嵌]_[Decensored]_(567384)' to Artist folder 'wakamatsu' +2026-01-07 19:23:29,595 - INFO - Moving 'kiyoshiros_last_hours' to Artist folder '_Unknown' +2026-01-07 19:23:29,606 - INFO - Moving 'otaku_ni_rikai_aru_gal_yome_ga_otashop' to Artist folder '_Unknown' +2026-01-07 19:23:29,618 - INFO - Moving '[CHOMA] Mama Haha Tsukushi Kouhen (COMIC Kuriberon DUMA 2023-07 Vol 50) [English] [JusenkyoTL]' to Artist folder 'choma' +2026-01-07 19:23:29,626 - INFO - Moving 'muchi_niku_jokyoushi_tomomi_mama' to Artist folder '_Unknown' +2026-01-07 19:23:29,633 - INFO - Moving 'Sex Shinai to Derarenai Heya ni Naka no Warui Imouto to Tojikomerareru _ Trapped in a Sex-locked Room with your Bitchy Little Sister' to Artist folder 'norisuke' +2026-01-07 19:23:29,641 - INFO - Moving 'michelle_to_icha_love' to Artist folder 'mucc' +2026-01-07 19:23:29,648 - INFO - Moving 'toshi_densetsu_bitch_joshikai' to Artist folder 'satsuki_imonet' +2026-01-07 19:23:29,657 - INFO - Moving 'A room I can't leave without having incestuous sex with my mom' to Artist folder '_Unknown' +2026-01-07 19:23:29,664 - INFO - Moving 'after_a_mouth' to Artist folder 'tirotata' +2026-01-07 19:23:29,670 - INFO - Moving 'incestism' to Artist folder 'natsu_no_oyatsu' +2026-01-07 19:23:29,679 - INFO - Moving 'life_of_passionate_pleasures' to Artist folder 'huwahuwa_raidou' +2026-01-07 19:23:29,689 - INFO - Moving 'carnal_siblings' to Artist folder 'borusiti' +2026-01-07 19:23:29,700 - INFO - Moving 'naughty_bunny_and_doctor' to Artist folder 'iso_nogi' +2026-01-07 19:23:29,707 - INFO - Moving 'hiyake_rikujoubu_oneechan_ni_neteiru_toku_ni_itazura_suru_ecchi_manga' to Artist folder '_Unknown' +2026-01-07 19:23:29,718 - INFO - Moving 'reiwas_penis_growth_training_chapter_1' to Artist folder '_Unknown' +2026-01-07 19:23:29,729 - INFO - Moving '[Ginshio Honpo (Ginen)] Nagachichi Haha no Naedoko (Long Titty Mother Seedbed ~Diligent and Loving Mother's Cognitive Alteration x Servitude Sex)' to Artist folder 'Ginshio_Honpo_(Ginen)' +2026-01-07 19:23:29,739 - INFO - Moving 'ninshin_wa_kinshin_de_to_iu_hou_ga_dekita_node_haha_to_imouto_to_oba_mainichi_ore_no_chi_po_o_neratte_kuru' to Artist folder '_Unknown' +2026-01-07 19:23:29,749 - INFO - Moving '[BOOLE]_Glamor_Furyou_Joshi_ni_Ijimerareta_ga_Doukyo_suru_Koto_ni_Shita_2__Living_together_with_the_buxom_female_bully!_2_[English]_(2025)' to Artist folder 'boole' +2026-01-07 19:23:29,756 - INFO - Moving 'ani_no_kimoi_gendou_ni_honki' to Artist folder 'hotate-chan' +2026-01-07 19:23:29,766 - INFO - Moving 'Roujin_to_Neko_(2024)' to Artist folder '_Unknown' +2026-01-07 19:23:29,774 - INFO - Moving 'gal_bitch_supremacy' to Artist folder 'kazuhiro' +2026-01-07 19:23:29,786 - INFO - Moving 'ane_de_shikoru_otouto_to_onaritai' to Artist folder 'shuumatsu' +2026-01-07 19:23:29,793 - INFO - Moving '[Saida_Kazuaki]_Datenshi_no_Rakuen__Paradise_of_the_Fallen_Angels_(ANGEL_Club_2012-04)_[English]_=LWB=_(76838)' to Artist folder 'saida_kazuaki' +2026-01-07 19:23:29,800 - INFO - Moving 'video_memories' to Artist folder '_Unknown' +2026-01-07 19:23:29,806 - INFO - Moving 'Hitozuma Max! Oku-sama wa Game & Sex Friend - English - [Yokatyoro 42-ryou (Yokatyoro)]' to Artist folder '_Unknown' +2026-01-07 19:23:29,815 - INFO - Moving '[Niramikko Koujou] Tanetsuke Matsuri ga Aru Mura de A Village That Has A Breeding Festival [Nipis Family]' to Artist folder '_Unknown' +2026-01-07 19:23:29,823 - INFO - Moving 'kanojo_no_ane_wa_gal_de_bitch_de_yariman_de' to Artist folder 'kazuhiro' +2026-01-07 19:23:29,831 - INFO - Moving 'Mahou_Shoujo_Lyrical_Nanoha_EXCEEDS_(2025)' to Artist folder 'Kawakami_Shuuichi' +2026-01-07 19:23:29,846 - INFO - Moving '[Sakurama Haruomi] Succubus Kingdom Ch 1-8 [English] [biribiri] [Digital]' to Artist folder 'sakurama_haruomi' +2026-01-07 19:23:29,855 - INFO - Moving 'musclehead_girl_cant_resist_orgasm_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:29,865 - INFO - Moving 'oneechan_wa_sore_o_yurusanai' to Artist folder '_Unknown' +2026-01-07 19:23:29,873 - INFO - Moving 'pet_mimamori_camera_ni_ane_to_otouto_no_sex_ga_utsutteta' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:29,881 - INFO - Moving '[Juicebox Koujou (Juna Juna Juice)] Tsuma wa Tokidoki Ecchi Panda Mating with Red [English]' to Artist folder 'juna_juna_juice' +2026-01-07 19:23:29,888 - INFO - Moving 'sisters_after_mozu' to Artist folder '_Unknown' +2026-01-07 19:23:29,895 - INFO - Moving 'otaku_hime_ga_kita_heya' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:29,905 - INFO - Moving 'dream_mama_vs_real_mother_chapter_1b' to Artist folder '_Unknown' +2026-01-07 19:23:29,916 - INFO - Moving 'day_only_for_two' to Artist folder 'pija' +2026-01-07 19:23:29,925 - INFO - Moving '[Tohzai] Imitation Family Ch.1-2 [English] [Lazarus H]' to Artist folder 'tohzai' +2026-01-07 19:23:29,933 - INFO - Moving 'whats_a_bond' to Artist folder '_Unknown' +2026-01-07 19:23:29,938 - INFO - Moving '[Kira Hiroyoshi] Marry Me, Ill Fuck You Until You're Pregnant! Vol 1-3 [English] [Decensored] [Ongoing]' to Artist folder 'Kira_Hiroyoshi' +2026-01-07 19:23:29,947 - INFO - Moving 'ore_ga_daiteru_onna_wa_imouto_kamo_shirenai' to Artist folder '_Unknown' +2026-01-07 19:23:29,958 - INFO - Moving '(C96) [Tiramisu Tart (Kazuhiro)] Kanojo no Ane wa Gal de Bitch de Yariman de [English] [CGrascal]' to Artist folder 'kazuhiro' +2026-01-07 19:23:29,964 - INFO - Moving 'lethargic_sister_tolerates_her_brothers_pranks' to Artist folder 'issi-13' +2026-01-07 19:23:29,976 - INFO - Moving 'Breeder Room That You Can't Leave Until You Make A Baby With The Wet Shiba Doggy-Girl Iroha (Wonderful Precure!)' to Artist folder 'shiwo.' +2026-01-07 19:23:29,985 - INFO - Moving 'bitch_mamas_depraved_adultery' to Artist folder '_Unknown' +2026-01-07 19:23:29,995 - INFO - Moving 'onee_sama_likes_anal' to Artist folder 'abe_morioka' +2026-01-07 19:23:30,009 - INFO - Moving 'camellia_the_first' to Artist folder 'cessa' +2026-01-07 19:23:30,017 - INFO - Moving 'sudou_siblings_sexual_circumstances' to Artist folder 'uzukinoko' +2026-01-07 19:23:30,025 - INFO - Moving 'mama_and_john' to Artist folder '_Unknown' +2026-01-07 19:23:30,035 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Omase na Imouto to Ecchi na Saimin Pakopako Life My Sex Life After Putting My Precocious Little Sister Under Hypnosis [English] {doujins com} [Digital]' to Artist folder 'Tiramisu_Tart_(Kazuhiro)' +2026-01-07 19:23:30,045 - INFO - Moving 'bakunyuu_bijukujo_wa_soku_hame_koubiana' to Artist folder 'u-1' +2026-01-07 19:23:30,063 - INFO - Moving 'Tomodachi_ga_Urayamu_H_Sugiru_Boku_no_Mama_to_Onee–chan_wa,_Tokoro_Kamawazu_Boku_o_Yuuwaku_o_Shite_Kimasu._(2022)' to Artist folder '_Unknown' +2026-01-07 19:23:30,073 - INFO - Moving 'joshi_seito_o_suki_houdai_ni_hame_botebara_ni_shite_ok_na_sekai' to Artist folder 'taka' +2026-01-07 19:23:30,086 - INFO - Moving '[Boole]_Shussan_Kanri_Iinkai__NATIONAL_FERTILITY_COMMISSION_[English]_[Uncensored]_(2025)' to Artist folder 'boole' +2026-01-07 19:23:30,096 - INFO - Moving '[Wakamatsu]_Reitetsu_Kyonyuu_Onna_Joushi_ni_Tetteiteki_ni_Schedule_Kanri_sareru_Hanashi__My_Cool,_Large-Chested_Boss_Keeps_Me_On_a_Strict_Schedule_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:30,105 - INFO - Moving '[Puranpuman] A House Full of Defenseless Women Is Full of Danger Muteikou-san Chi ni wa Kiken ga Ippai [English] [Vivid Rabbit Translation]' to Artist folder 'puranpuman' +2026-01-07 19:23:30,119 - INFO - Moving 'Smash_Smash_(2015)' to Artist folder '_Unknown' +2026-01-07 19:23:30,125 - INFO - Moving 'Tadashii_Seikyouiku._(2011)' to Artist folder '_Unknown' +2026-01-07 19:23:30,136 - INFO - Moving '[Mustard Teikoku (Europia)] A Room I Can't Leave Without Having Incestuous Sex With My Mom My Nagging Mother and Rebellious Me' to Artist folder '_Unknown' +2026-01-07 19:23:30,151 - INFO - Moving 'hitozuma_saimin_appli_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:30,165 - INFO - Moving 'dagashi_wa_sake_ni_au' to Artist folder 'shimantogawa' +2026-01-07 19:23:30,171 - INFO - Moving 'S's_(1999)' to Artist folder '_Unknown' +2026-01-07 19:23:30,176 - INFO - Moving 'the_night_my_sister_disappeared_i_made_love_to_my_mother' to Artist folder 'point_takashi' +2026-01-07 19:23:30,182 - INFO - Moving 'Sodachi_no_Yosasou_na_Onee-san_ga_Ogehin_Sex_suru_Hanashi_(2021)' to Artist folder '_Unknown' +2026-01-07 19:23:30,187 - INFO - Moving 'tsubaki_democracy' to Artist folder 'takatsu' +2026-01-07 19:23:30,192 - INFO - Moving '[Boole]_PREGNANCY_MANAGEMENT_[English]_(2025)' to Artist folder 'boole' +2026-01-07 19:23:30,197 - INFO - Moving '[ICE]_Matching_Joushi_Aishou_wa_Karada_de_Check__Matched_up_with_my_Boss_~_Checking_the_Compatibility_of_our_Bodies_~_(ANGEL_Club_2022-03)_[English]_[Digital]_(2022)' to Artist folder 'ice' +2026-01-07 19:23:30,201 - INFO - Moving 'Kumiko_to_Warui_Musuko_(2015)' to Artist folder 'izayoi_no_kiki' +2026-01-07 19:23:30,211 - INFO - Moving 'this_teacher_in_her_fourtys_is_acting_like_a_young_girl_in_the_prime_if_her_life' to Artist folder '_Unknown' +2026-01-07 19:23:30,220 - INFO - Moving 'the_story_of_a_single_career_woman_in_hers_getting_addicted_to_a_relationship' to Artist folder '_Unknown' +2026-01-07 19:23:30,227 - INFO - Moving 'EnglishTeam_Rabu2Digital]' to Artist folder '_Unknown' +2026-01-07 19:23:30,235 - INFO - Moving '[Kouda Tomohiro] Sorede Iinoka! My Sister!! (COMIC AUN 2021-02) [English] [QuickAndDirty]' to Artist folder 'kouda_tomohiro' +2026-01-07 19:23:30,244 - INFO - Moving '[Wakamatsu]_Koushinchou_de_MeguTai_na_Kanojo_to_Turn-sei_no_Sex_Suru_Ohanashi__Turn-Taking_Sex_With_My_Very_Tall_Girlfriend_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:30,252 - INFO - Moving '[Ozy]_Tsuyatsuma_Jouji_[English]_[MTL]_(2025)' to Artist folder 'ozy' +2026-01-07 19:23:30,264 - INFO - Moving '[Hikagemon (Tenpiboshi)] Asuna to Toki to Sex Shinai to Derarenai Heya (Blue Archive) [English] [SnowDogScripts] [Digital]' to Artist folder 'tenpiboshi' +2026-01-07 19:23:30,271 - INFO - Moving 'rural_stories' to Artist folder 'hon' +2026-01-07 19:23:30,280 - INFO - Moving '[Sunagawa Tara] Gikei ni Dakarete Mesu ni Naru I To Be Embraced by My Brother-in-Law and Turned into His Breeding Bitch (Waisetsu Box - Obscene Box) [English] [Aishi21] [Digital]' to Artist folder 'sunagawa_tara' +2026-01-07 19:23:30,288 - INFO - Moving '[Ginshio Honpo (Ginen)] Kinpatsu Kuro Gal no Hahaoya ga, Yami Beit de Damasarete Musuko to AV Satsuei [English] [SDTLs]' to Artist folder 'ginen' +2026-01-07 19:23:30,300 - INFO - Moving 'EnglishSquigglesJP]' to Artist folder '_Unknown' +2026-01-07 19:23:30,307 - INFO - Moving '[Wakamatsu]_Mukashi_wa_Dousei_no_You_ni_Sesshiteta_Osananajimi_no_Koto_o_Isei_to_Shite_Ninshiki_Shita_Hi_[English]_[Uncle_Bane]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:30,317 - INFO - Moving 'my_daily_life_as_a_streamer' to Artist folder '_Unknown' +2026-01-07 19:23:30,326 - INFO - Moving 'possessed_and_thrusting' to Artist folder 'polier' +2026-01-07 19:23:30,335 - INFO - Moving 'mrs_miho_cant_stop_cheating_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:30,342 - INFO - Moving '[Wakamatsu]_Watashi_ni_wa_Seiyoku_nante_Arimasen_tte_Kao_shiteru_Kanojo_No_Seishoku_Honnou_o_Kakitateru_Hanashi__A_Girlfriend_Who_Claimed_to_Have_no_Lust_Has_Her_Reproductive_Instincts_Stirred_Up_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:30,356 - INFO - Moving 'a_story_about_an_oneesan_being_impregnated_by_an_incubus' to Artist folder '_Unknown' +2026-01-07 19:23:30,363 - INFO - Moving 'wrung_dry_by_my_sister_every_night_under_the_sheets' to Artist folder 'ikinari' +2026-01-07 19:23:30,372 - INFO - Moving '[Yue] Idol A Determined, Saggy Breasted Underground Idol Gets Punished with Sex for Underreporting Her Bust Size' to Artist folder 'yue' +2026-01-07 19:23:30,378 - INFO - Moving 'a_country_mother_who_makes_her_son_horny' to Artist folder '_Unknown' +2026-01-07 19:23:30,388 - INFO - Moving '[Tiramisu_Tart_(Kazuhiro)]_Gyaku_Bunny_Cast_no_Namaiki_Anal_o_Namete_Sutte_Hametaoshitai_[English]_(2025)' to Artist folder 'kazuhiro' +2026-01-07 19:23:30,394 - INFO - Moving 'sister_complex' to Artist folder '_Unknown' +2026-01-07 19:23:30,402 - INFO - Moving 'nao_hanpatsu_zokusei' to Artist folder '_Unknown' +2026-01-07 19:23:30,410 - INFO - Moving 'The_Day_I_Won_Against_My_Very_Tall_Girlfriend_(2023)' to Artist folder '_Unknown' +2026-01-07 19:23:30,417 - INFO - Moving 'masochist_little_brothers_training' to Artist folder '_Unknown' +2026-01-07 19:23:30,426 - INFO - Moving 'SISUANA - sister hole' to Artist folder 'nakano_sora' +2026-01-07 19:23:30,433 - INFO - Moving 'my_neet_older_sister' to Artist folder 'momokumo' +2026-01-07 19:23:30,441 - INFO - Moving 'Kazoku_Ryokou_wa_Yarimoku_Beach_de_Sex_Zanmai_(2021)' to Artist folder '_Unknown' +2026-01-07 19:23:30,451 - INFO - Moving 'narmaya_attack' to Artist folder 'sakida_saki' +2026-01-07 19:23:30,461 - INFO - Moving 'the_country_little_sister_and_the_tempation_of_innocence' to Artist folder '_Unknown' +2026-01-07 19:23:30,467 - INFO - Moving 'blood_lunch' to Artist folder 'yamamoto' +2026-01-07 19:23:30,472 - INFO - Moving 'toppatsusei_bokki_shoukougun_jii_fuzen_o_soete' to Artist folder 'kawahagitei' +2026-01-07 19:23:30,478 - INFO - Moving 'Between Heave and Hell' to Artist folder 'miyabi_tsuzuru' +2026-01-07 19:23:30,485 - INFO - Moving 'A_Woman_Whose_Greetings_to_the_Delivery_Man_Gradually_Get_Sloppier_(+_Other_Side)_(2023)' to Artist folder '_Unknown' +2026-01-07 19:23:30,492 - INFO - Moving 'is_my_sister_seriously_ill' to Artist folder 'arsenal' +2026-01-07 19:23:30,501 - INFO - Moving 'mucchiri_megaton' to Artist folder 'akikusa_peperon' +2026-01-07 19:23:30,515 - INFO - Moving '[Kikunosukemaru] Dasu Made Derenai Tanetsuke Heya - You Can't Leave Until You Cum, The Mating Room (COMIC Anthurium 015 2014-07) [English] [Danicco]' to Artist folder 'kikunosukemaru' +2026-01-07 19:23:30,525 - INFO - Moving 'the_sex_life_of_the_tachibanas' to Artist folder '_Unknown' +2026-01-07 19:23:30,532 - INFO - Moving 'jitsu_wa_midara_na_chounyuu_sensei_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:30,539 - INFO - Moving 'Inran_Seikatsu_(1999)' to Artist folder '_Unknown' +2026-01-07 19:23:30,546 - INFO - Moving 'gumi_chocolate_pine_koma_mangashuu' to Artist folder 'gumi_chocolate_pine' +2026-01-07 19:23:30,553 - INFO - Moving 'Kawaii_Imouto_to_Ikenai_Koto_Shiteimasu!_(2015)' to Artist folder '_Unknown' +2026-01-07 19:23:30,559 - INFO - Moving 'temptation_downtime' to Artist folder 'ozy' +2026-01-07 19:23:30,565 - INFO - Moving 'welcome_to_greenwood' to Artist folder 'kurokoshi_you' +2026-01-07 19:23:30,571 - INFO - Moving 'passionate_coriander' to Artist folder 'cessa' +2026-01-07 19:23:30,576 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ A sex-filled family trip to a hookup beach 3 ~Mom edition~ [English] [joobuspaidatr]' to Artist folder 'kazuhiro' +2026-01-07 19:23:30,581 - INFO - Moving '[Wakamatsu]_Otouto_o_Isei_to_Shite_Isshiki_Shite_Shimau_Mukuchi_na_Onee-chan__A_Quiet_Older_Sister_Who_Has_Come_to_See_Her_Brother_as_a_Man_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:30,585 - INFO - Moving '[Wakamatsu]_Doutei-kun_to_Keiken_Houfu_na_Onee-san_ga_Turn-sei_Sex_Suru_Hanashi__Turn-Taking_Sex_Between_a_Virgin_and_an_Experienced_Older_Woman_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:30,590 - INFO - Moving 'big_sister_with_drooping_tits_wants_to_fuck_her_little_brother' to Artist folder 'oritsuki_fumio' +2026-01-07 19:23:30,596 - INFO - Moving 'FaLLEN_(2012)' to Artist folder 'Molta_Shouten_(Molta' +2026-01-07 19:23:30,603 - INFO - Moving 'sister_control' to Artist folder 'drain' +2026-01-07 19:23:30,608 - INFO - Moving 'a_book_about_using_hypno_to_fuck_my_little_sister' to Artist folder 'karory' +2026-01-07 19:23:30,613 - INFO - Moving 'moms_body_is_mine_mother_and_son_incest_sex_behind_dads_back' to Artist folder '_Unknown' +2026-01-07 19:23:30,618 - INFO - Moving 'dysfunctional_family' to Artist folder 'itaba_hiroshi' +2026-01-07 19:23:30,624 - INFO - Moving 'pldk' to Artist folder '_Unknown' +2026-01-07 19:23:30,628 - INFO - Moving 'a_sticky_harem_full_of_mother_and_sisters_milk' to Artist folder '_Unknown' +2026-01-07 19:23:30,633 - INFO - Moving 'Kowamote_Kouhai-kun_to_Doukyo_suru_koto_ni_narimasu_(2021)' to Artist folder '_Unknown' +2026-01-07 19:23:30,638 - INFO - Moving '[Kazuhiro] InCha no Kuse ni Even Though You're a Dork (COMIC HOTMILK 2020-09) [English] [desudesu] [Digital]' to Artist folder 'Kazuhiro' +2026-01-07 19:23:30,643 - INFO - Moving 'Turn-Taking_Sex_With_My_Very_Tall_Girlfriend_(2023)' to Artist folder '_Unknown' +2026-01-07 19:23:30,648 - INFO - Moving 'Tsuyatsuma_Jouji_(2017)' to Artist folder '_Unknown' +2026-01-07 19:23:30,652 - INFO - Moving '[True_Seido☆Honpo_(Sei☆Shi)]_The_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother-in-law's_countryside_where_there_is_an_H_custom._[DL_version]_(2024)' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:30,658 - INFO - Moving 'big_boobs_shadowy_character_takes_revenge' to Artist folder 'akabane_aomori' +2026-01-07 19:23:30,663 - INFO - Moving '[Kiliu]_Okasare_Imouto_Misaki_(Haha_mo_Okasareru_yo!)__Violated_little_sister_Misaki_(The_mother_gets_raped_too!)_(COMIC_Masyo_2025-12)_[English]_[Digital]_(611722)' to Artist folder 'kiliu' +2026-01-07 19:23:30,675 - INFO - Moving '[Shiraishi Nagisa] Sotsugyou Shiki Graduation Ceremony [English] [Thennos Scans]' to Artist folder 'shiraishi_nagisa' +2026-01-07 19:23:30,687 - INFO - Moving '[Juna Juna Juice] Starting tonight Baby bear will become [English]' to Artist folder 'juna_juna_juice' +2026-01-07 19:23:30,697 - INFO - Moving '[BOOLE]_Glamor_Furyou_Joshi_ni_Ijimerareta_ga_Doukyo_suru_Koto_ni_Shita_2丨曾经欺负过我的性感太妹_现在我决定与她同居2_[Chinese]_[Decensored]_(2025)' to Artist folder 'boole' +2026-01-07 19:23:30,707 - INFO - Moving '20_years_from_now_you_make_me_a_little_nervous_chapter_1' to Artist folder '_Unknown' +2026-01-07 19:23:30,717 - INFO - Moving 'neteiru_okaasan_o_yaritai_houdai' to Artist folder '_Unknown' +2026-01-07 19:23:30,727 - INFO - Moving '[Mizu] Jumble Family [English] (Decensored)' to Artist folder 'mizu' +2026-01-07 19:23:30,739 - INFO - Moving '[Boole]_NATIONAL_FERTILITY_COMMISSION_2_[English]_(2025)' to Artist folder 'boole' +2026-01-07 19:23:30,749 - INFO - Moving '[IAPOC]_DA_RA_SHI_NA_SISTER_Ch.2__Careless_Sister_Ch.2_(COMIC_ExE_37)_[English]_(2026)' to Artist folder 'iapoc' +2026-01-07 19:23:30,758 - INFO - Moving 'Ebony Family mating practices (english)' to Artist folder '5t' +2026-01-07 19:23:30,767 - INFO - Moving '[Kasou Genjitsu (Hasekura Noise)] THE Haramase Izayoi Nonomi The Breeding Record of Izayoi Nonomi (Blue Archive) [English] [Shiromaru] [Digital]' to Artist folder 'hasekura_noise' +2026-01-07 19:23:30,773 - INFO - Moving 'Furachina_Jukujo_(2021)' to Artist folder '_Unknown' +2026-01-07 19:23:30,778 - INFO - Moving 'Full_Marks,_Hidden_Marriage_(2019)' to Artist folder 'Daxingdao_Anime_(大行道动漫_or_EON_COMICS)' +2026-01-07 19:23:30,783 - INFO - Moving 'Kosmos ga Saita Hi ni Ch' to Artist folder 'arai_kei' +2026-01-07 19:23:30,788 - INFO - Moving '[Wakamatsu]_Onnanoko_Atsukai_Shinai_to_Mesu_Dearu_Koto_o_Wakarasetekuru_Boyish_Joshi__A_boyish_girl_who_will_show_you_that_she_is_female_if_you_don't_treat_her_like_one_[English]_(2024)' to Artist folder 'wakamatsu' +2026-01-07 19:23:30,793 - INFO - Moving '[Airandou] Bath Loving Introvert Girl becomes Femine in her first love with a boyfriend' to Artist folder 'airandou' +2026-01-07 19:23:30,799 - INFO - Moving 'oni_no_musume_datte_konkatsu_shitai' to Artist folder 'sion' +2026-01-07 19:23:30,804 - INFO - Moving 'answer_checking' to Artist folder 'toujou_tsukushi' +2026-01-07 19:23:30,813 - INFO - Moving 'big_sis_masturbation_life_my_masturbation_right_belongs_to_my_older_step_sisters' to Artist folder '_Unknown' +2026-01-07 19:23:30,819 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai 3 ~Okaa-san Hen~ [English] [Doujins com] [Digital]' to Artist folder 'Tiramisu_Tart_(Kazuhiro)' +2026-01-07 19:23:30,825 - INFO - Moving '[Kasou Genjitsu (Hasekura Noise)] Nakadashi Kozukuri Onsen Ryokou Hinomiya Chinatsu Baby Making with Hinomiya Chinatsu at the Hot Spring (Blue Archive) [English] [Shiromaru] [Digital]' to Artist folder 'hasekura_noise' +2026-01-07 19:23:30,831 - INFO - Moving 'maid_slave_collection' to Artist folder 'leveen' +2026-01-07 19:23:30,846 - INFO - Moving 'lemon_honeymoon' to Artist folder '_Unknown' +2026-01-07 19:23:30,853 - INFO - Moving '[Wakamatsu]_Jiko_Hyouka_Hikui_Joshi_ga_Jibun_no_Karada_ni_Jishin_Mocchau_made_no_Katei__The_Way_That_a_Low_Self-Esteem_Woman_Gained_Confidence_in_Her_Body_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:30,857 - INFO - Moving 'shall_i_get_it_out_for_you_mom' to Artist folder 'ero_no_teishokuya' +2026-01-07 19:23:30,862 - INFO - Moving 'family_plan_toono_suika_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:30,867 - INFO - Moving 'temptation_of_big_tits_elder_sister' to Artist folder 'yamamoto_yoshifumi' +2026-01-07 19:23:30,872 - INFO - Moving 'Tsumamigui_Cherry_(2023)' to Artist folder '_Unknown' +2026-01-07 19:23:30,880 - INFO - Moving 'musuko_no_tomodachi_incubus_ni_miryou_sareta_yanmama_wa_mesu_ni_naru' to Artist folder 'kazuhiro' +2026-01-07 19:23:30,885 - INFO - Moving 'jukujo_sentai_paiters_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:30,890 - INFO - Moving 'ane_to_kanojo_to_hamedori_3p_shitemita' to Artist folder '_Unknown' +2026-01-07 19:23:30,894 - INFO - Moving 'ogre_girl_tades_favorite_things' to Artist folder '_Unknown' +2026-01-07 19:23:30,900 - INFO - Moving 'A_Lady_With_a_Soft_Approach_to_Discipline_Is_Assailed_by_Pleasure_(2022)' to Artist folder '_Unknown' +2026-01-07 19:23:30,904 - INFO - Moving '[Izayoi no Kiki] Incest Room [English] [Tigoris Translates]' to Artist folder 'izayoi_no_kiki' +2026-01-07 19:23:30,909 - INFO - Moving 'trap_shiki_hunting' to Artist folder '_Unknown' +2026-01-07 19:23:30,914 - INFO - Moving 'hetappi_whiteday' to Artist folder '_Unknown' +2026-01-07 19:23:30,918 - INFO - Moving 'family_control' to Artist folder 'hiiragi_hajime' +2026-01-07 19:23:30,924 - INFO - Moving 'a_story_of_my_oneesan_who_loves_me_too_much' to Artist folder '_Unknown' +2026-01-07 19:23:30,928 - INFO - Moving 'anemone_yuusuke_chapter_1x' to Artist folder '_Unknown' +2026-01-07 19:23:30,933 - INFO - Moving 'Oshiete_Onee-san_(2003)' to Artist folder '_Unknown' +2026-01-07 19:23:30,937 - INFO - Moving 'Turn-Taking_Sex_Between_a_Virgin_and_an_Experienced_Older_Woman_(2022)' to Artist folder '_Unknown' +2026-01-07 19:23:30,942 - INFO - Moving '[Shirono Mahiro] Tane no Nai Hachi A Seedless Flowerpot [English] [Yad-Scans]' to Artist folder 'takaku_tubby' +2026-01-07 19:23:30,953 - INFO - Moving '[Akikusa_Peperon]_Muchi_Niku_Hitozuma_Smash__Chubby_Wife_Smash_(Mozzarella)_[English]_[Fated_Circle]_(2025)' to Artist folder 'akikusa_peperon' +2026-01-07 19:23:30,961 - INFO - Moving '[Itaba Hiroshi] Houkai Kazoku Dysfunctional Family (Kazoku Soukanzu) [English] [menospeaknihongo]' to Artist folder 'itaba_hiroshi' +2026-01-07 19:23:30,969 - INFO - Moving '[Shirono Mahiro] Yokumakezuma no Sukebegao [English] {Doujins com}' to Artist folder 'Shirono_Mahiro' +2026-01-07 19:23:30,976 - INFO - Moving 'Commission_(2015)' to Artist folder '_Unknown' +2026-01-07 19:23:30,982 - INFO - Moving 'twentyfour_seven_sex_with_my_stepsister' to Artist folder '_Unknown' +2026-01-07 19:23:30,988 - INFO - Moving 'Jukujo_Sukina_Ore_No_Atarashii_Tobira_(2025)' to Artist folder '_Unknown' +2026-01-07 19:23:30,996 - INFO - Moving '[Wakamatsu]_Mesaki_no_kairaku_o_chiratsuka_sete_daraku_o_izanau_warui_onesan_[Chinese]_[ANDX個人漢化_&_曙光个人重嵌]_[Decensored]_(2025)' to Artist folder 'wakamatsu' +2026-01-07 19:23:31,001 - INFO - Moving 'summer_stay_in' to Artist folder 'abe_morioka' +2026-01-07 19:23:31,007 - INFO - Moving 'the_romantic_ritual_with_fox_goddess_yuukosan_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:31,014 - INFO - Moving 'ookii_gimai' to Artist folder '_Unknown' +2026-01-07 19:23:31,022 - INFO - Moving 'Living_With_Magicians_(2021)' to Artist folder '_Unknown' +2026-01-07 19:23:31,029 - INFO - Moving 'Mahouka_Koukou_no_Rettousei_-_Nankai_Soujou-hen_(2021)' to Artist folder 'Aonagi_Nobu' +2026-01-07 19:23:31,037 - INFO - Moving 'sleepwalk_sex_with_your_crazy_stepbrother' to Artist folder 'gurida_soumu' +2026-01-07 19:23:31,049 - INFO - Moving '[Shirono Mahiro] Tsumatorare Wife Taking Ch 1-9 [English] {Doujins com}' to Artist folder 'Shirono_Mahiro' +2026-01-07 19:23:31,058 - INFO - Moving 'selfish_boyfriend_and_the_gentle_girlfriend' to Artist folder 'pija' +2026-01-07 19:23:31,067 - INFO - Moving '[Wakamatsu]_Shintaisou_Circle_Joshi_ga_Kansetsu_Kadouiki_Meippai_Tsukatte_H_suru_Hanashi__The_Rhythmic_Gymnastics_Girl_Making_Full_Use_of_Her_Flexibility_During_Sex_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:31,075 - INFO - Moving '[NT Labo (NT Robo)] Aisai, Doui no Ue, Netorare 3 ~Ogawa-ke no Baai~ Beloved Wife - Netorare After Consent 3 ~ Ogawa family case [English] [Netorare Nation]' to Artist folder 'nt_robo' +2026-01-07 19:23:31,086 - INFO - Moving 'until_my_mother_in_law_is_pregnant' to Artist folder 'kizaru' +2026-01-07 19:23:31,096 - INFO - Moving 'grand_discovery_of_kink' to Artist folder '_Unknown' +2026-01-07 19:23:31,105 - INFO - Moving 'happy_life_amagami' to Artist folder '_Unknown' +2026-01-07 19:23:31,114 - INFO - Moving 'one_shot_a_summer' to Artist folder 'yunosato_souko' +2026-01-07 19:23:31,125 - INFO - Moving 'bath_time_with_big_sis' to Artist folder '_Unknown' +2026-01-07 19:23:31,135 - INFO - Moving 'family_x' to Artist folder 'giga' +2026-01-07 19:23:31,145 - INFO - Moving '[Ginshio Honpo (Ginen)] Yokkyuu Fuman Miboujin ga Musumemuko no Dekamara ni Netorareru made [Chinese]' to Artist folder 'ginen' +2026-01-07 19:23:31,155 - INFO - Moving '[Chotto B-sen] A Room You Can't Leave After Having Sex [English] [Black raven]' to Artist folder '_Unknown' +2026-01-07 19:23:31,165 - INFO - Moving 'haunted_property_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:31,174 - INFO - Moving '[Shin_Hijiridou_Honpo_(Hijiri_Tsukasa)]_Ane_no_Seiyoku_Shori_wa_Ototo_ga_Suru_Monoda_to,_Gitei_wa_Omoi_Hajimete_Iru._[English]_{Hennojin}_[Decensored]_[Digital]_(2024)' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:31,182 - INFO - Moving 'imouto_aoba' to Artist folder '_Unknown' +2026-01-07 19:23:31,190 - INFO - Moving 'onehundred_my_older_sister_who_is_sick_after_illness' to Artist folder '_Unknown' +2026-01-07 19:23:31,199 - INFO - Moving 'that_person_and_my_queen_special_edition' to Artist folder 'taba' +2026-01-07 19:23:31,208 - INFO - Moving 'U-Bu_U-Bu_(1994)' to Artist folder '_Unknown' +2026-01-07 19:23:31,216 - INFO - Moving 'delima' to Artist folder 'maimu-maimu' +2026-01-07 19:23:31,225 - INFO - Moving 'that_bitchy_boss_is_my_fuck_buddy' to Artist folder 'creople' +2026-01-07 19:23:31,234 - INFO - Moving 'The_Story_of_the_Day_I_Recognized_My_Childhood_Friend,_Whom_I_Used_to_Treat_as_of_the_Same_Sex,_Now_of_the_Opposite_Sex_(2022)' to Artist folder '_Unknown' +2026-01-07 19:23:31,242 - INFO - Moving 'a_slutty_old_lady_will_tell_how_to_make_her_slutty_daughter_fall_for_you' to Artist folder 'kazuhiro' +2026-01-07 19:23:31,249 - INFO - Moving '[Mogudan]_Tatsumaki-ppoi_Tsuma_(One_Punch_Man)_[English]_(2025)' to Artist folder 'mogudan' +2026-01-07 19:23:31,257 - INFO - Moving 'erotic_teacher_desperately' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:31,265 - INFO - Moving '[36p] Ippu Tasai Seido Houan ga Kaketsusaremashita (English)' to Artist folder '36p' +2026-01-07 19:23:31,273 - INFO - Moving '[Wakamatsu]_Ikken_Yasashisou_na_Personal_Gym_no_Trainer-san_ni_Karada_o_Ijimenukareru_Hanashi_Sono_2__A_Seemingly_Gentle_Personal_Trainer_Gives_My_Body_a_Rough_Workout_(Part_2)_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:31,281 - INFO - Moving 'P.P.P!!_(2007)' to Artist folder '_Unknown' +2026-01-07 19:23:31,288 - INFO - Moving 'the_housewives_of_the_luxury_apartment_are_to_dissatisfied_with_their_desires' to Artist folder '_Unknown' +2026-01-07 19:23:31,295 - INFO - Moving 'Ane_no_Seiyoku_Shori_wa_Ototo_ga_Suru_Monoda_to,_Gitei_wa_Omoi_Hajimete_Iru._(2022)' to Artist folder '_Unknown' +2026-01-07 19:23:31,301 - INFO - Moving 'surrogacy_the_case_of_yuka_shirakawa' to Artist folder '_Unknown' +2026-01-07 19:23:31,308 - INFO - Moving '[Yue] Living de Atarimae no You ni Sex Suru Nee-chan to Otouto (It's Sister's Job to Take Care of Her Younger Brother!) [MY English Translation]' to Artist folder 'Yue' +2026-01-07 19:23:31,315 - INFO - Moving 'my_relationship_with_my_sister' to Artist folder 'ohtomo_takuji' +2026-01-07 19:23:31,322 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Papakatsu Bitch no Atashi-ra ga Anta no Otouto o Katte Mesuiki Yarichin-kun ni Shite Kawaigatte Ageru [English] [CulturedCommissions]' to Artist folder 'kazuhiro' +2026-01-07 19:23:31,328 - INFO - Moving 'living_together_with_the_buxom_female_bully' to Artist folder 'boole' +2026-01-07 19:23:31,334 - INFO - Moving 'how_to_build_cock' to Artist folder 'n.o._chachamaru' +2026-01-07 19:23:31,340 - INFO - Moving '[BNO (Utagawa Yosiero)] My Friend Dragged Me to a MILF Soapland and My Mom Came Out - Akuyuu ni Sasowarete Jukujo Soap ni Itte Mitara, Detekita Jou ga Kaa-san datta' to Artist folder 'utagawa_yosiero' +2026-01-07 19:23:31,347 - INFO - Moving 'my_oyakodon' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:31,352 - INFO - Moving 'Futanari_no_Onee-chan_ni_Shasei_Kanri_Sarete_Gyaku_Anal_Saretemasu!_(2020)' to Artist folder '_Unknown' +2026-01-07 19:23:31,358 - INFO - Moving 'daisuki_na_classmate_ni_shikottemorautame' to Artist folder '_Unknown' +2026-01-07 19:23:31,364 - INFO - Moving 'enji_ni_somaru' to Artist folder 'etuzan_jakusui' +2026-01-07 19:23:31,378 - INFO - Moving 'daily_life_with_my_sister_who_i_dont' to Artist folder '_Unknown' +2026-01-07 19:23:31,392 - INFO - Moving 'better_than_sex' to Artist folder 'ken_sogen' +2026-01-07 19:23:31,405 - INFO - Moving '[Wakamatsu]_Sodachi_no_Yosasou_na_Onee-san_ga_Ogehin_Sex_suru_Hanashi_Sono_2__A_Refined_and_Elegant_Young_Woman_from_a_Good_Family_Has_Vulgar_Sex_(Part_2)_[English]_(2022)' to Artist folder 'wakamatsu' +2026-01-07 19:23:31,417 - INFO - Moving 'do_you_like_an_untidy_older_sister' to Artist folder '_Unknown' +2026-01-07 19:23:31,426 - INFO - Moving 'Filming_a_Sextape_with_My_Sexfriend_Who's_Really_into_Selfies_(2021)' to Artist folder '_Unknown' +2026-01-07 19:23:31,435 - INFO - Moving '[R Koubou (Ruzi)] Tomodachi no Okaa-san ni Sasowarete Seduced By A Friend's Mother [English] [korafu] [Digital]' to Artist folder 'R_Koubou_(Ruzi)' +2026-01-07 19:23:31,443 - INFO - Moving 'sibling_with_sister' to Artist folder 'k8on' +2026-01-07 19:23:31,451 - INFO - Moving 'gikei_ni_netorare_ochita_tsubaki' to Artist folder '_Unknown' +2026-01-07 19:23:31,459 - INFO - Moving 'the_festival_of_summers_lustful_traditions' to Artist folder '_Unknown' +2026-01-07 19:23:31,471 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [SDTLs]' to Artist folder 'kazuhiro' +2026-01-07 19:23:31,481 - INFO - Moving 'can_you_really_use_this_app_to_fuck_different_species' to Artist folder 'maihara_matsuge' +2026-01-07 19:23:31,490 - INFO - Moving '(C104) [MAIDOLL (Fei)] SNS de Daininki na Layer ga Watashi o Sasotte Off-Pako no Hanashi ~Kisekae SEX Hen~ Fucking a Famous Online Cosplayer After a Con - Dress-Up SEX Edition (SPY x FAMILY) [English] [cutegyaruTL]' to Artist folder 'fei' +2026-01-07 19:23:31,503 - INFO - Moving 'boku_no_misatan' to Artist folder '_Unknown' +2026-01-07 19:23:31,513 - INFO - Moving '[Wakamatsu]_Koushinchou_de_MeguTai_na_Kanojo_ga_Makechau_Hi__The_Day_I_Won_Against_My_Very_Tall_Girlfriend_[English]_(2024)' to Artist folder 'wakamatsu' +2026-01-07 19:23:31,519 - INFO - Moving '[Wakamatsu] Keitai Choushin Onee-san-tachi ni Shinkyo o Yaribeya ni Sareru Hanashi Tall, Busty Onee-sans Turn My New Place into Their Sex Room [English]' to Artist folder 'wakamatsu' +2026-01-07 19:23:31,529 - INFO - Moving 'thats_my_girl' to Artist folder '_Unknown' +2026-01-07 19:23:31,536 - INFO - Moving 'Yahoo,_Mt._Inari!_(2023)' to Artist folder 'Sorajirou' +2026-01-07 19:23:31,545 - INFO - Moving '[Juna Juna Juice] Also Tonight, Baby Bear will become Carnivorous [English]' to Artist folder 'juna_juna_juice' +2026-01-07 19:23:31,553 - INFO - Moving '2x2xX_(2025)' to Artist folder '_Unknown' +2026-01-07 19:23:31,561 - INFO - Moving 'Hot_and_Sweaty_Sex_With_a_Girl_From_the_Track_Team_(2023)' to Artist folder '_Unknown' +2026-01-07 19:23:31,573 - INFO - Moving 'when_i_confessed_to_the_girl_im_interested_in_i_wasnt_allowed_to_go_out_with_her_but_was_given_the_ok_for_childmaking' to Artist folder '_Unknown' +2026-01-07 19:23:31,580 - INFO - Moving 'the_mother_of_the_oba_household' to Artist folder '_Unknown' +2026-01-07 19:23:31,587 - INFO - Moving '[UC] Koibito wa Gibo My Lover Is Mother-In-Law (COMIC Kuriberon DUMA 2021-07 Vol 27) [English]' to Artist folder 'uc' +2026-01-07 19:23:31,595 - INFO - Moving '[Kudamono Monogatari (Kuroishi Ringo)] Puraibe to Joousama - Private Queen [Eng]' to Artist folder 'kuroishi_ringo' +2026-01-07 19:23:31,604 - INFO - Moving '[Hakukoukai (Shiramizu Mizuchi)] Nakunatta Tsuma ga Succubus ni Natte Kaettekita [English] [Doujins com]' to Artist folder 'Hakukoukai_(Shiramizu_Mizuchi)' +2026-01-07 19:23:31,613 - INFO - Moving '[Sakai Hamachi] Bonds or Ties [English] [shaddy746] [Uncensored] [Digital]' to Artist folder 'sakai_hamachi' +2026-01-07 19:23:31,622 - INFO - Moving 'cock_that_makes_tomboy_sisters_tap_out' to Artist folder 'terasu_mc' +2026-01-07 19:23:31,630 - INFO - Moving 'big_sis_ayaka' to Artist folder 'ayakase_chiyoko' +2026-01-07 19:23:31,637 - INFO - Moving 'Mom and Sis Clean Up [English] [rewrite]' to Artist folder 'makibe_kataru' +2026-01-07 19:23:31,670 - INFO - Moving 'big_boobs_shadowy_character_takes_revenge_chapter_' to Artist folder '_Unknown' +2026-01-07 19:23:31,675 - INFO - Moving '[Shirono Mahiro] Kaika ~Ninenme no Aki~ Zenpen Flowers Blooming ~Autumn of Second Year~ First Part (COMIC Shingeki 2015-11) [English] [TripleSevenScans]' to Artist folder 'takaku_tubby' +2026-01-07 19:23:31,680 - INFO - Moving 'TS_Panic_(2012)' to Artist folder '_Unknown' +2026-01-07 19:23:31,684 - INFO - Moving 'im_his_little_sister_slave' to Artist folder '_Unknown' +2026-01-07 19:23:31,689 - INFO - Moving 'Oretachi,_Kore_Kara_(2024)' to Artist folder '_Unknown' +2026-01-07 19:23:31,702 - INFO - Moving '[Juicebox Koujou (Juna Juna Juice)] Mukatsuku Imouto wa Chanto Shikaranakucha!!' to Artist folder 'juna_juna_juice' +2026-01-07 19:23:31,714 - INFO - Moving 'Sunday Funday [AI GENERATED]' to Artist folder '_Unknown' +2026-01-07 19:23:31,726 - INFO - Moving 'Soyosoyo's_Works_(2002)' to Artist folder '_Unknown' +2026-01-07 19:23:31,736 - INFO - Moving 'succubus_pearl_bonus_book' to Artist folder 'kazuhiro' +2026-01-07 19:23:31,742 - INFO - Moving 'Y+Y=Fuel!!_(2016)' to Artist folder '_Unknown' +2026-01-07 19:23:31,747 - INFO - Moving 'sibling_switch' to Artist folder 'kirimoto_yuuji' +2026-01-07 19:23:31,756 - INFO - Moving 'pantsu_o_haita_dake_nanoni' to Artist folder 'umino_ryo' +2026-01-07 19:23:31,765 - INFO - Moving '[Shiraishi Nagisa] Oyako Soukan Shima Parent Child Incest Island (Tsuma no Naka no Shoufu to Shukujo) [English] [Amoskandy] [Digital]' to Artist folder 'shiraishi_nagisa' +2026-01-07 19:23:31,773 - INFO - Moving 'Kanojo_Kanojo_Kanojo!!!_(2023)' to Artist folder 'Hachinuki_Tessei' +2026-01-07 19:23:31,779 - INFO - Moving 'gyan_colle' to Artist folder 'date' +2026-01-07 19:23:31,790 - INFO - Moving 'didnt_you_know' to Artist folder '_Unknown' +2026-01-07 19:23:31,800 - INFO - Moving 'My_Cool,_Large-Chested_Boss_Keeps_Me_On_a_Strict_Schedule_(2022)' to Artist folder '_Unknown' +2026-01-07 19:23:31,809 - INFO - Moving '[Yue] Christmas Live de Yarakashita Chounyuu Chika Idol-chan ni Oshioki Sex Punishment Sex for the Saggy Breasted Underground Idol Who Screwed Up a Live Christmas Event [English] [korafu] [Colorized]' to Artist folder 'yue' +2026-01-07 19:23:31,819 - INFO - Moving '[Wakamatsu]_Taisha_ga_Yoi_Rikujoubu_Joshi_to_Asedaku_de_Taiekimamire_na_Noumitsu_Sex_Suru_Hanashi__Hot_and_Sweaty_Sex_With_a_Girl_From_the_Track_Team_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:31,828 - INFO - Moving 'steamed_bun_kiss' to Artist folder 'rocket_monkey' +2026-01-07 19:23:31,836 - INFO - Moving 'madam_complex' to Artist folder 'unou' +2026-01-07 19:23:31,849 - INFO - Moving '[Puppukupu (Kawaisaw)] Taimano haha, Go Demon Slaying Mother Go [Digital] [English] {Doujins com}' to Artist folder 'Puppukupu_(Kawaisaw)' +2026-01-07 19:23:31,858 - INFO - Moving 'aggressive_mama' to Artist folder 'tensei-kun' +2026-01-07 19:23:31,868 - INFO - Moving '[Wakamatsu]_Honne_Kikareru_to_Dorodoro_shita_Yokubou_o_Shoujiki_ni_Icchau_Onee-san__A_Young_Lady_Who,_When_Asked,_Honestly_Reveals_Her_Filthy_Desires_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:31,874 - INFO - Moving '[Natsuzo] The Story of a Couple Neglecting Study to Have Sex [English] [QuickAndDirty]' to Artist folder 'natsuzo' +2026-01-07 19:23:31,882 - INFO - Moving 'in_a_room_where_you_cant_leave_unless_you_have_sex' to Artist folder '_Unknown' +2026-01-07 19:23:31,891 - INFO - Moving 'cattle_sister' to Artist folder 'dawalixi' +2026-01-07 19:23:31,899 - INFO - Moving 'we_went_overboard_with_our_home_work_this_evening' to Artist folder '_Unknown' +2026-01-07 19:23:31,906 - INFO - Moving '[Tiramisu_Tart_(Kazuhiro)]_Kazoku_Ryokou_wa_Yarimoku_Beach_de_Sex_Zanmai_~Kazoku-minna_Hen~_[Chinese]_[古月个人汉化]_(2025)' to Artist folder 'kazuhiro' +2026-01-07 19:23:31,914 - INFO - Moving 'Untitled Folder' to Artist folder '_Unknown' +2026-01-07 19:23:31,921 - INFO - Moving 'nozo_nico_don' to Artist folder 'chirumakuro' +2026-01-07 19:23:31,928 - INFO - Moving 'tonari_no_elf_mama' to Artist folder 'drachef' +2026-01-07 19:23:31,933 - INFO - Moving 'Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite 2 _ Guess Which One's Your Naked Busty JK Daughter Or Else! 2' to Artist folder '_Unknown' +2026-01-07 19:23:31,938 - INFO - Moving '(Doujinshi) [Manbou Bookstore] Big-breasted Onee and Shota with a huge penis (original) [Download version]' to Artist folder '_Unknown' +2026-01-07 19:23:31,943 - INFO - Moving '0x0_Memories_(2007)' to Artist folder '_Unknown' +2026-01-07 19:23:31,948 - INFO - Moving 'boshi_syndrome' to Artist folder '_Unknown' +2026-01-07 19:23:31,953 - INFO - Moving 'a_trip_back_home' to Artist folder 'e-musu_aki' +2026-01-07 19:23:31,958 - INFO - Moving '[Boole]_NATIONAL_FERTILITY_COMMISSION__–WITH_MARRIED_WOMEN-_[English]_(2025)' to Artist folder 'boole' +2026-01-07 19:23:31,967 - INFO - Moving 'obaman_aneman_harem' to Artist folder 'nagaikusa' +2026-01-07 19:23:31,976 - INFO - Moving 'Take a break from working to fuck' to Artist folder '_Unknown' +2026-01-07 19:23:31,985 - INFO - Moving '[Wakamatsu]_Sodachi_no_Yosasou_na_Kihin_Afureru_Onee-san_no_Kotobazukai__The_Speech_of_a_Refined_and_Elegant_Young_Woman_from_a_Good_Family_[English]_(2022)' to Artist folder 'wakamatsu' +2026-01-07 19:23:31,990 - INFO - Moving '[Wakamatsu]_Tsukiai_Hajimetara_Meccha_Karada_o_Motomemakutte_kuru_Downer-kei_Onee-san__The_Gloomy_Woman_Who_Came_to_Hunger_for_Me_Once_We_Started_Dating_[English]_(2024)' to Artist folder 'wakamatsu' +2026-01-07 19:23:31,999 - INFO - Moving 'paipai_mashimashi_gal_bitch' to Artist folder 'achumuchi' +2026-01-07 19:23:32,008 - INFO - Moving '[Okashi Koujou] That time when my cousin came over to play Itoko no Onee-chan ga Asobi ni Kuru Yatsu [English] [Tamamo]' to Artist folder '_Unknown' +2026-01-07 19:23:32,016 - INFO - Moving 'gal_ga_saimin_kakeyou_to_shitara_kaeriuchi_saremashita' to Artist folder 'aburamachine' +2026-01-07 19:23:32,028 - INFO - Moving '[Tsubaki_Jushirou]_Mendou_na_Kanojo_yori_Kantan_na_Imouto_de_+_Omake__My_Simple_Sister_Over_A_Troublesome_Gilfriend_+_Bonus_(Imouto_Access)_[English]_[MegaFagget]_[Digital]_(2023)' to Artist folder 'tsubaki_jushirou' +2026-01-07 19:23:32,036 - INFO - Moving '[Kazuhiro] Gal's Bitch Shijou Shugi! Gal Bitch Supremacy [English] {Doujins com} [Digital]' to Artist folder 'Kazuhiro' +2026-01-07 19:23:32,048 - INFO - Moving 'Ikiiki Dasshutsu Game with Chou Chirou Oji-san _ Lively Escape Game with Super Late Ejaculation Ojisan' to Artist folder 'minegami_aya' +2026-01-07 19:23:32,056 - INFO - Moving '(Uncensored)[Jinrikisha (Komusou )]My Older Cousin Is Too Big!! [English][Digital]' to Artist folder 'komusou' +2026-01-07 19:23:32,065 - INFO - Moving 'the_succubus_army_invasion' to Artist folder 'edogawa_nitro_king' +2026-01-07 19:23:32,073 - INFO - Moving 'boku_no_misatan_chapter_' to Artist folder '_Unknown' +2026-01-07 19:23:32,079 - INFO - Moving 'Abukano_-_Shinrai_Shiteta_Gaikokujin_ni_Hamerare_Ochita_Kikoku_Kanojo_to_Boku' to Artist folder '_Unknown' +2026-01-07 19:23:32,087 - INFO - Moving 'Watashi_ni_wa_Seiyoku_nante_Arimasen_tte_Kao_shiteru_Kanojo_no_Seishoku_Honnou_o_Kakitateru_Hanashi_(2022)' to Artist folder '_Unknown' +2026-01-07 19:23:32,098 - INFO - Moving 'my_tall_and_busty_step_sister_gives' to Artist folder '_Unknown' +2026-01-07 19:23:32,105 - INFO - Moving 'about_sadako_being_stuck_on_the_computer_screen' to Artist folder '_Unknown' +2026-01-07 19:23:32,116 - INFO - Moving 'when_i_lost_the_use_of_my_arms_my_brother_started' to Artist folder '_Unknown' +2026-01-07 19:23:32,126 - INFO - Moving 'sister_ss_short_story' to Artist folder 'ama_natsuna' +2026-01-07 19:23:32,134 - INFO - Moving '(C99) [Tiramisu Tart (Kazuhiro)] Kazoku Ryokou wa Yarimoku Beach de Sex Zanmai ~Onee-chan Hen~ [English] (LSC_TRANSLATIONS)' to Artist folder '_Unknown' +2026-01-07 19:23:32,143 - INFO - Moving 'motherly_love' to Artist folder 'shiun' +2026-01-07 19:23:32,149 - INFO - Moving '[Boole]_Time_Loop_de_Kaihatsu_Sareru_Sister__Timeloop_and_Sex_and_Nun_[English]_[Decensored]_(2025)' to Artist folder 'boole' +2026-01-07 19:23:32,156 - INFO - Moving '[Satsuki Imonet] Tsuma Fes ~Aniyome Netorase Kounin Tanetsuke~ Wife Fes ~Breeding My Brother's Wife By His Request~ Ch 1-4 [English] {Doujins com} [Digital]' to Artist folder 'Satsuki_Imonet' +2026-01-07 19:23:32,164 - INFO - Moving 'Sister_-_Sister_(2012)' to Artist folder '_Unknown' +2026-01-07 19:23:32,172 - INFO - Moving 'Danshi_Kokoseidakedo_Gyaru_ni_TS_Shimashita_(2024)' to Artist folder 'Taiyou_Marii' +2026-01-07 19:23:32,178 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Changing a Chaste Upperclass School Girl into an Obedient Analholic Nympho with the Power of Hypnotism and Indulging in Anal Sex [English] [Brolen]' to Artist folder 'kazuhiro' +2026-01-07 19:23:32,182 - INFO - Moving '[Ginshio Honpo (Ginen)] My Airheaded Mom Was Too Adorably Sexy, So I Had Hypnotized Onahole Sex with Her! [English] [Dummie]' to Artist folder 'ginen' +2026-01-07 19:23:32,187 - INFO - Moving 'playing_the_kings_game_with_a_tanned_jk_oneesan' to Artist folder '_Unknown' +2026-01-07 19:23:32,192 - INFO - Moving '7days_toono_esuke' to Artist folder 'toono_esuke' +2026-01-07 19:23:32,197 - INFO - Moving '[Megitune Works] Guigui Kuru Gibo to AV Kanshou ~Love Hotel Hen~ Watching Porn with my Pushy Stepmom ~The Love Hotel~ [English] [WitzMacher]' to Artist folder '_Unknown' +2026-01-07 19:23:32,203 - INFO - Moving 'Sex_With_Many_Mamas_(2016)' to Artist folder '_Unknown' +2026-01-07 19:23:32,212 - INFO - Moving '[Kurogane Kenn] Tae-chan to Jimiko-san Tae-chan and Jimiko-san Ch 38 (COMIC HOTMILK 2024-03) [English] [Digital]' to Artist folder 'kurogane_kenn' +2026-01-07 19:23:32,220 - INFO - Moving 'oneechans_toy' to Artist folder '_Unknown' +2026-01-07 19:23:32,229 - INFO - Moving '[Ginshio Honpo (Ginen)] Seedbed Mother ~I enthrall my busty mother, alter her mind, and creampie sex her up~ [English] [sakurei]' to Artist folder 'ginen' +2026-01-07 19:23:32,237 - INFO - Moving 'when_dad_and_mom_arent_home' to Artist folder '_Unknown' +2026-01-07 19:23:32,247 - INFO - Moving 'succubus_kingdom' to Artist folder 'sakurama_haruomi' +2026-01-07 19:23:32,256 - INFO - Moving 'liko_the_mommy_pokemon' to Artist folder '_Unknown' +2026-01-07 19:23:32,266 - INFO - Moving 'FireShot' to Artist folder '_Unknown' +2026-01-07 19:23:32,275 - INFO - Moving 'getting_along_well_with_my_sister' to Artist folder 'ruzi' +2026-01-07 19:23:32,283 - INFO - Moving '[Hiro潶]_《1999恶女一决胜负》_(574312)' to Artist folder 'hiroki00' +2026-01-07 19:23:32,295 - INFO - Moving 'hypnosis_satisfaction' to Artist folder '_Unknown' +2026-01-07 19:23:32,304 - INFO - Moving 'otto_no_tame_no_ranshi_o_tanin_no_seishi' to Artist folder 'gaburi' +2026-01-07 19:23:32,310 - INFO - Moving '[Milkdou Shoukai (Milk Koubou)] Haha x Musuko Chichi x Musume! Konya mo Kinshinsoukan (Sex) Shinai to! Saa, Kazoku Minna de! Mother And Son, And Father And Daughter - Tonight is incest night - The Whole Family [English]' to Artist folder 'point_takashi' +2026-01-07 19:23:32,319 - INFO - Moving 'hikki_mother_fucker' to Artist folder 'otochichi' +2026-01-07 19:23:32,330 - INFO - Moving 'meaty_minxes' to Artist folder '_Unknown' +2026-01-07 19:23:32,338 - INFO - Moving '[Zero no Mono] Dark Family (COMIC Shigekiteki SQUIRT!! Vol 20) [English]' to Artist folder 'zero_no_mono' +2026-01-07 19:23:32,348 - INFO - Moving 'mob_reipu' to Artist folder 'seki' +2026-01-07 19:23:32,356 - INFO - Moving 'dosukebe_youkai_midaraga_no_goshujinsama' to Artist folder '_Unknown' +2026-01-07 19:23:32,367 - INFO - Moving '[Tobe] Spider Family 2 (Kimetsu no Yaiba) [English] [Alyssaquenn]' to Artist folder 'tobe' +2026-01-07 19:23:32,377 - INFO - Moving '[Sakurama Haruomi] Succubus Kingdom Ch 1-7 [English] [biribiri] [Digital]' to Artist folder 'sakurama_haruomi' +2026-01-07 19:23:32,387 - INFO - Moving 'thermometer_boy_measuring_beast' to Artist folder '_Unknown' +2026-01-07 19:23:32,395 - INFO - Moving 'broconflict' to Artist folder '_Unknown' +2026-01-07 19:23:32,401 - INFO - Moving 'Dr._Kim_of_London_(2024)' to Artist folder 'OCHEN_(오첸)' +2026-01-07 19:23:32,410 - INFO - Moving 'my_little_sisters_are_slutty_orcs' to Artist folder 'muneshiro' +2026-01-07 19:23:32,419 - INFO - Moving '[Merenge Tenmondai (Kugurofu)] D no D wa Dosukebe no D (Goddess Of Victory Nikke)' to Artist folder 'kugurofu' +2026-01-07 19:23:32,425 - INFO - Moving '[Wakamatsu]_Keitai_Choushin_Onee-san-tachi_ni_Shinkyo_o_Yaribeya_ni_Sareru_Hanashi__Tall,_Busty_Onee-sans_Turn_My_New_Place_into_Their_Sex_Room_[English]_(2025)' to Artist folder 'wakamatsu' +2026-01-07 19:23:32,434 - INFO - Moving '[Nishikawa Kou] Musume no Kawari ni Watashi ga (COMIC Penguin Club 2022-01) [English] [Digital]' to Artist folder 'nishikawa_kou' +2026-01-07 19:23:32,440 - INFO - Moving 'The_Gloomy_Woman_Who_Came_to_Hunger_for_Me_Once_We_Started_Dating_(2024)' to Artist folder '_Unknown' +2026-01-07 19:23:32,446 - INFO - Moving 'Gachikoi_shinai_to_Derarenai_Heya___The_Room_You_Cant_Leave_Unless_You_Fall_in_True_Love' to Artist folder '_Unknown' +2026-01-07 19:23:32,453 - INFO - Moving 'my_sister_uses_my_trash_as_masturbation_material' to Artist folder '_Unknown' +2026-01-07 19:23:32,458 - INFO - Moving '[Pino] Boin [English]' to Artist folder 'pino' +2026-01-07 19:23:32,464 - INFO - Moving 'future_detective' to Artist folder 'nas-o' +2026-01-07 19:23:32,470 - INFO - Moving 'The_Way_That_a_Low_Self-Esteem_Woman_Gained_Confidence_in_Her_Body_(2020)' to Artist folder '_Unknown' +2026-01-07 19:23:32,476 - INFO - Moving 'what_the_mother_does_for_the_sake_of_the_son' to Artist folder 'n.o._chachamaru' +2026-01-07 19:23:32,486 - INFO - Moving 'gifu_to_shimai_no_kizuna' to Artist folder 'kazuhiro' +2026-01-07 19:23:32,502 - INFO - Moving 'omae_no_you_na_maou_ga_iru_kai' to Artist folder '_Unknown' +2026-01-07 19:23:32,510 - INFO - Moving 'Kage_Aru_Tokoro_ni_(2005)' to Artist folder '_Unknown' +2026-01-07 19:23:32,516 - INFO - Moving '[Nasipasuta]_Darashinaku_Ochiru_Onee-san_Wa_Suki_Desu_Ka__Do_you_like_sloppy_big_sisters_(COMIC_ExE_24)_[English]_{Exo_Subs}_[Digital]_(2021)' to Artist folder 'nasipasuta' +2026-01-07 19:23:32,523 - INFO - Moving '[Wakamatsu]_Shikarikata_ga_Yasashi_Sugiru_Onee-san_ga_Kairaku_Semesarechau_Hanashi__A_Lady_With_a_Soft_Approach_to_Discipline_is_Assailed_by_Pleasure_[English]_(2023)' to Artist folder 'wakamatsu' +2026-01-07 19:23:32,528 - INFO - Moving 'if_seems_like_everyone_except_me_has_lost_their_concept_of_eroticism' to Artist folder '_Unknown' +2026-01-07 19:23:32,534 - INFO - Moving 'oneechan_no_dokusho_jijou' to Artist folder '_Unknown' +2026-01-07 19:23:32,541 - INFO - Moving 'what_friend_do' to Artist folder 'etuzan_jakusui' +2026-01-07 19:23:32,545 - INFO - Moving 'kinyoku_ake_no_kyoudai_kankei' to Artist folder '_Unknown' +2026-01-07 19:23:32,550 - INFO - Moving 'aniyome_milk_elder_sisterinlaws_milk' to Artist folder '_Unknown' +2026-01-07 19:23:32,557 - INFO - Moving 'Otouto_Imouto_(2007)' to Artist folder 'magurono_yukinao' +2026-01-07 19:23:32,564 - INFO - Moving 'idiopathic_erectile_syndrome_when_masturbation_fails' to Artist folder 'kawahagitei' +2026-01-07 19:23:32,569 - INFO - Moving 'sluttification_virus_anywhere_anytime_lets_fuck_already' to Artist folder '_Unknown' +2026-01-07 19:23:32,575 - INFO - Moving 'absurd_mother_and_son_incest' to Artist folder 'bu-chan' +2026-01-07 19:23:32,582 - INFO - Moving '[Ringoya (Alp)] Otaku Tomodachi to no Sex wa Saikou ni Kimochi Ii Sex with Your Otaku Friend is Mindblowing [English] [COMPLETE]' to Artist folder 'alp' +2026-01-07 19:23:32,592 - INFO - Moving 'idol_wa_fan_no_semen_tank_ninshinderella_girls' to Artist folder '_Unknown' +2026-01-07 19:23:32,602 - INFO - Moving '[Tawawa Delivery] Girl Dash - Family Diner (x3200) [FAKKU]' to Artist folder 'Tawawa_Delivery' +2026-01-07 19:23:32,611 - INFO - Moving 'Zhuo_Dao_Ren_(2024)' to Artist folder '_Unknown' +2026-01-07 19:23:32,622 - INFO - Moving 'A_Young_Lady_Who,_When_Asked,_Honestly_Reveals_Her_Filthy_Desires_(2022)' to Artist folder '_Unknown' +2026-01-07 19:23:32,632 - INFO - Moving 'Doll_House_no_Koibito_(2011)' to Artist folder '_Unknown' +2026-01-07 19:23:32,641 - INFO - Moving 'incha_otouto_ga_nangoku_beach_de_kinpatsu' to Artist folder '_Unknown' +2026-01-07 19:23:32,650 - INFO - Moving '[Wakamatsu]_Older_Step-sister_Teaches_Her_Cheeky_Little_Step-brother_a_Lesson__Namaiki_Gitei_o_Kyoiku_Suru_o_Gishi-chan_[English]_(2024)' to Artist folder 'wakamatsu' +2026-01-07 19:23:32,657 - INFO - Moving 'akira_nii_chan_who_ive_always_admired' to Artist folder '_Unknown' +2026-01-07 19:23:32,666 - INFO - Moving '[NesZ] My farmer aunt is having a problem [English]' to Artist folder 'nesz' +2026-01-07 19:23:32,675 - INFO - Moving 'my_ar_glasses_can_see_various_stats_about_my_foster_sister' to Artist folder 'pz-x' +2026-01-07 19:23:32,685 - INFO - Moving 'dirty_lessons_improving_your_manhood_chapter_' to Artist folder '_Unknown' +2026-01-07 19:23:32,695 - INFO - Moving 'the_story_about_how_i_found_my_soulmate_when' to Artist folder '_Unknown' +2026-01-07 19:23:32,710 - INFO - Moving '[Hannya san] Forbidden lust' to Artist folder 'hannya-san' +2026-01-07 19:23:32,723 - INFO - Moving 'The_Speech_of_a_Refined_and_Elegant_Young_Woman_from_a_Good_Family_(2021)' to Artist folder '_Unknown' +2026-01-07 19:23:32,736 - INFO - Moving 'shojo_ane_kangaeru' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:32,750 - INFO - Moving 'neechan_to_sei_shori_shiteru' to Artist folder '_Unknown' +2026-01-07 19:23:32,763 - INFO - Moving '[moNmomo] Kono sensei yowasou w karakatte miyou~ w [English]' to Artist folder 'monmomo' +2026-01-07 19:23:32,778 - INFO - Moving 'fushoku_tensei_tamashii_kawattara_honki_dasu' to Artist folder 'toku' +2026-01-07 19:23:32,793 - INFO - Moving '[Mochi-ya (Karoti)] Mesugaki Rina-chan VOL 3 [English] [COHQ] [Digital]' to Artist folder 'karoti' +2026-01-07 19:23:32,812 - INFO - Moving 'i_woke_up_to_my_naked_apron_sister_and_tried_fucking_her' to Artist folder 'yuna' +2026-01-07 19:23:32,821 - INFO - Moving 'little_sister_paradise' to Artist folder 'chanpon_miyabi' +2026-01-07 19:23:32,826 - INFO - Moving 'my_mature_older_sister_the_crazy_convenient_relationship_of_an_older_sister_and_younger_brother_in_their_thirtys' to Artist folder '_Unknown' +2026-01-07 19:23:32,831 - INFO - Moving 'sex_season' to Artist folder 'xboy' +2026-01-07 19:23:32,836 - INFO - Moving 'Kyonyuu JK o Tasuketakereba Musume no Hadaka Atete mite _ Guess Which One's Your Naked Busty JK Daughter Or Else!' to Artist folder '_Unknown' +2026-01-07 19:23:32,840 - INFO - Moving 'that_pov_sex_thing' to Artist folder 'satsuki_imonet' +2026-01-07 19:23:32,850 - INFO - Moving 'hot_teacher' to Artist folder 'sakagami_umi' +2026-01-07 19:23:32,856 - INFO - Moving 'A_Dashing,_Handsome_Woman_and_a_Frail,_Maidenly_Boy_(2023)' to Artist folder '_Unknown' +2026-01-07 19:23:32,863 - INFO - Moving '[Wakamatsu]_Sunao_ni_Narezu_Iiatte_Bakkari_dakedo_Aishou_ga_Yoi_Osananajimi__The_Stubborn_Childhood_Friends_Who_Argue_All_the_Time_but_were_Made_for_Each_Other_[English]_[pikachiu24]_(2025)' to Artist folder 'wakamatsu' +2026-01-07 19:23:32,867 - INFO - Moving 'two_siblings_fela_pure' to Artist folder 'fue' +2026-01-07 19:23:32,872 - INFO - Moving 'on_the_night_of_the_ceremony' to Artist folder 'minamida_usuke' +2026-01-07 19:23:32,877 - INFO - Moving '[Takasugi Kou] Aigan Mesu Haha (Kindan no Haha-Ana) [English] [Eureka7] [Colorized] [R0art] [Ongoing]' to Artist folder 'takasugi_kou' +2026-01-07 19:23:32,885 - INFO - Moving '[Mustard Teikoku (Europia)] Trapped in a room until we've had enough sex, part 2 ~My annoying mother and me, in my rebellious phase' to Artist folder 'Mustard_Teikoku_(Europia)' +2026-01-07 19:23:32,890 - INFO - Moving '[Ozy]_Toshiue_Lovers_+_Shitagaki_[English]_[MTL]_[Digital]_(2025)' to Artist folder 'ozy' +2026-01-07 19:23:32,898 - INFO - Moving 'father_stop_it' to Artist folder 'mafuyu_hemp' +2026-01-07 19:23:32,908 - INFO - Moving 'organize' to Artist folder 'wabuki' +2026-01-07 19:23:32,915 - INFO - Moving 'seventy_two' to Artist folder 'kiasa' +2026-01-07 19:23:32,923 - INFO - Moving 'a_sister_who_wants_to_watch_siblings' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:32,929 - INFO - Moving '[Aoto_Kage]_Inran_Shimai_Seikatsu_[Chinese]_[MTL]_[Digital]_(2026)' to Artist folder '_Unknown' +2026-01-07 19:23:32,937 - INFO - Moving '[Boole]_Living_with_chubby_bullies3_[English]_(2025)' to Artist folder 'boole' +2026-01-07 19:23:32,943 - INFO - Moving 'dirty_lessons_improving_your_manhood_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:32,949 - INFO - Moving 'from_now_on_you_are_my_livestock_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:32,955 - INFO - Moving 'a_room_you_cant_leave_after_having_sex' to Artist folder '_Unknown' +2026-01-07 19:23:32,961 - INFO - Moving 'narikawari_chapter_1' to Artist folder '_Unknown' +2026-01-07 19:23:32,967 - INFO - Moving '[Ookami Shoujo Dan (Mukoujima Tenro)] Sharing a Room With My Junior on a Business Trip A Night Her Wet Yukata Skin Drained Me Dry' to Artist folder 'mukoujima_tenro' +2026-01-07 19:23:32,975 - INFO - Moving 'welcome_to_the_brothel_school_festival' to Artist folder 'abubu' +2026-01-07 19:23:32,981 - INFO - Moving '[Oroshi Ponzu] A Story About Being Locked In a Room Where You Can't Leave Unless I Do Perverted Stuff With My Apathetic, Boyfriend-Having Student [English] {Doujins com}' to Artist folder 'Oroshi_Ponzu' +2026-01-07 19:23:32,988 - INFO - Moving 'Ibitsu_na_Ai_no_Su_(2017)' to Artist folder '_Unknown' +2026-01-07 19:23:32,995 - INFO - Moving 'step_child_swapping_satsuki_imonet' to Artist folder '_Unknown' +2026-01-07 19:23:33,002 - INFO - Moving 'the_story_of_having_sex_with_a_cousin_whom_she_has_never_met_before_in_her_mother_in_laws_countryside_where_there_is_an_h_custom' to Artist folder '_Unknown' +2026-01-07 19:23:33,009 - INFO - Moving 'The big sister who always takes cares of his little brother's sexual needs wants to do it in a love hotel today' to Artist folder '_Unknown' +2026-01-07 19:23:33,016 - INFO - Moving 'friends_forever' to Artist folder 'cock_robin' +2026-01-07 19:23:33,024 - INFO - Moving 'were_siblings_but_lets_tie_the_knot' to Artist folder '_Unknown' +2026-01-07 19:23:33,031 - INFO - Moving 'takebe_saorichan_to_iu_kanojo' to Artist folder '_Unknown' +2026-01-07 19:23:33,039 - INFO - Moving 'mega_milk' to Artist folder 'nishida_megane' +2026-01-07 19:23:33,046 - INFO - Moving '[Gomikasu Tarou] Tomodachi no Gibo to Ane ni Yuuwaku sareru Hanashi A tale of the temptation of my friend's stepmom and sister [English]' to Artist folder 'Gomikasu_Tarou' +2026-01-07 19:23:33,054 - INFO - Moving '[Shin_Hijiridou_Honpo_(Hijiri_Tsukasa)]_Tomodachi_ga_Urayamu_H_Sugiru_Boku_no_Mama_to_Onee–chan_wa,_Tokoro_Kamawazu_Boku_o_Yuuwaku_o_Shite_Kimasu._[English]_{Hennojin}_[Decensored]_[Digital]_(2025)' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:33,060 - INFO - Moving 'a_gentle_mommy_who_secret_makes' to Artist folder 'pastaskii' +2026-01-07 19:23:33,068 - INFO - Moving 'i_got_an_elf_little_sister' to Artist folder 'type.90' +2026-01-07 19:23:33,073 - INFO - Moving '[Yue] Siblings having sex in the living room like it's normal[English](Carl)[LumaNH][AI Colored]' to Artist folder 'Yue' +2026-01-07 19:23:33,078 - INFO - Moving 'i_became_kirarachans_manager' to Artist folder '_Unknown' +2026-01-07 19:23:33,093 - INFO - Moving 'Sensei_wa_Ore_no_Dorei_Danshikou_wa_Midara_na_Kangoku_(2014)' to Artist folder '_Unknown' +2026-01-07 19:23:33,106 - INFO - Moving 'A_Seemingly_Gentle_Personal_Trainer_Gives_My_Body_a_Rough_Workout_(2021)' to Artist folder '_Unknown' +2026-01-07 19:23:33,119 - INFO - Moving 'Itsumo_Kaerimichi_ga_Isshona_Ano_Ko_(2023)' to Artist folder '_Unknown' +2026-01-07 19:23:33,131 - INFO - Moving 'i_am_to_record_a_video_with_two_sadistic_women' to Artist folder 'ohkami_ryosuke' +2026-01-07 19:23:33,145 - INFO - Moving 'COMIC_HOTMiLK_2007-10_Vol._01_(593160)' to Artist folder 'yasui_riosuke' +2026-01-07 19:23:33,158 - INFO - Moving 'kusabi' to Artist folder 'yao' +2026-01-07 19:23:33,167 - INFO - Moving '[OVing (Obui)] Paihame Kazoku 4 Ikkadanran [Digital] Titfuck Family 4 Family Reunion [English] [Fallen Games]' to Artist folder 'obui' +2026-01-07 19:23:33,180 - INFO - Moving '[Wakamatsu]_Danshi_o_Mukuna_mama_Sodatete_Hoshoku_suru_Warui_Onee-san_[English]_(2024)' to Artist folder 'wakamatsu' +2026-01-07 19:23:33,192 - INFO - Moving 'the_imprisoned_flower' to Artist folder 'tsubaki_jushirou' +2026-01-07 19:23:33,205 - INFO - Moving 'semi_pro_racing_stars' to Artist folder 'abe_morioka' +2026-01-07 19:23:33,219 - INFO - Moving 'A SISTER WHO WANTS TO WATCH SIBLINGS' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:33,231 - INFO - Moving 'Stalker MILF and Me, Her Sex Toy' to Artist folder 'ginen' +2026-01-07 19:23:33,242 - INFO - Moving '[Kiliu]_Okasare_Imouto_Misaki_(Haha_mo_Okasareru_yo!)__Violated_little_sister_Misaki_(The_mother_gets_raped_too!)_(COMIC_Masyo_2025-12)_[English]_[Digital]_(2025)' to Artist folder 'kiliu' +2026-01-07 19:23:33,254 - INFO - Moving 'crossdressing_hero_and_dancer_priestess_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:33,267 - INFO - Moving 'tsugumonotachi_hachi_hen' to Artist folder '_Unknown' +2026-01-07 19:23:33,279 - INFO - Moving 'leave_it_all_to_me_little_brother' to Artist folder 'hiroya' +2026-01-07 19:23:33,292 - INFO - Moving 'imouto_to_rekawatta_oniichan_wa_chapter' to Artist folder '_Unknown' +2026-01-07 19:23:33,307 - INFO - Moving 'Kanojo_ni_Naritai_Kimi_to_Boku_(2018)' to Artist folder '_Unknown' +2026-01-07 19:23:33,321 - INFO - Moving 'Saimin_Appli_(Yuma)_(2024)' to Artist folder '_Unknown' +2026-01-07 19:23:33,334 - INFO - Moving 'Toshiue_Lovers_(2013)' to Artist folder '_Unknown' +2026-01-07 19:23:33,347 - INFO - Moving 'the_demon_lords_bride' to Artist folder '_Unknown' +2026-01-07 19:23:33,360 - INFO - Moving 'special_tit_envoy' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:33,371 - INFO - Moving 'hot_spring_sex_with_mama_raikou' to Artist folder 'abe_morioka' +2026-01-07 19:23:33,383 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Succubus Shoukan [English][Fan trad]' to Artist folder 'Tiramisu_Tart_(Kazuhiro)' +2026-01-07 19:23:33,395 - INFO - Moving 'nanjamo_no_botebaraive_nanjamo_vs_metamonjamo' to Artist folder '_Unknown' +2026-01-07 19:23:33,409 - INFO - Moving 'akos_and_nozomis_discussion_of_masturbation_addictions' to Artist folder '_Unknown' +2026-01-07 19:23:33,421 - INFO - Moving '[Wakamatsu]_Kyasha_to_Homan_no_Ma_Ni_Tatasa_Reru_3P__Threesome_Caught_Between_Slim_And_Voluptuous_[English]_(2025)' to Artist folder 'wakamatsu' +2026-01-07 19:23:33,435 - INFO - Moving 'Shitei ga Mechakucha Sex suru Ohanashi' to Artist folder 'manbou_syoten' +2026-01-07 19:23:33,447 - INFO - Moving 'A_Bratty_Underclassman_Who_Quickly_Learned_Her_Lesson_(2023)' to Artist folder '_Unknown' +2026-01-07 19:23:33,458 - INFO - Moving '[Tiramisu Tart (Kazuhiro)] Papakatsu SeFri Gal ga Tomodachi o Tsurete kita node Kuttetara Gyaku ni Kakomare Yowasare Shiboritorare Ie o Yaribeya Atsukai sareru Hanashi [English] [Doujins com]' to Artist folder 'Tiramisu_Tart_(Kazuhiro)' +2026-01-07 19:23:33,466 - INFO - Moving 'Hands-On_Draining_with_Three_Succubus_Sisters_(akatsuki_myuutoakatuki_myuuto)_(2025)' to Artist folder 'akatsuki_myuuto' +2026-01-07 19:23:33,476 - INFO - Moving 'Quiet_Older_Sister_That's_Conscious_of_Her_Younger_Brother_as_the_Opposite_Sex_(2021)' to Artist folder '_Unknown' +2026-01-07 19:23:33,489 - INFO - Moving '[Tsubaki_Jushirou]_Kawaii_Imouto_to_Ikenai_Koto_Shiteimasu!_[English]_(2025)' to Artist folder 'tsubaki_jushirou' +2026-01-07 19:23:33,502 - INFO - Moving 'my_cool_friend' to Artist folder 'gamogamo' +2026-01-07 19:23:33,515 - INFO - Moving 'EnglishPenguin_PiperDigital]' to Artist folder '_Unknown' +2026-01-07 19:23:33,528 - INFO - Moving 'Akogare_no_Tomo_Mama_to_Matching_Shita_Kudan_(2024)' to Artist folder '_Unknown' +2026-01-07 19:23:33,541 - INFO - Moving 'EnglishDecensoredDigital]' to Artist folder '_Unknown' +2026-01-07 19:23:33,553 - INFO - Moving 'non_stop_fucking_with_my_friends_mom' to Artist folder '_Unknown' +2026-01-07 19:23:33,565 - INFO - Moving 'Mama Haha Tsukushi Kouhen (' to Artist folder 'choma' +2026-01-07 19:23:33,576 - INFO - Moving 'Koyoi,_Gishiki_de_Hatemashou_(2019)' to Artist folder '_Unknown' +2026-01-07 19:23:33,590 - INFO - Moving 'I will make a single mother my wife' to Artist folder '_Unknown' +2026-01-07 19:23:33,606 - INFO - Moving 'barenai_you_ni' to Artist folder 'hatsuyasumi' +2026-01-07 19:23:33,624 - INFO - Moving 'adolescent_calculation' to Artist folder 'tohzai' +2026-01-07 19:23:33,638 - INFO - Moving '[Wakamatsu]_MotoYan_ga_Dechau_Onee-san__An_Ex-Delinquent_Lets_Her_Old_Self_Slip_Out_[English]_(2024)' to Artist folder 'wakamatsu' +2026-01-07 19:23:33,651 - INFO - Moving 'moto_incha_no_kyonyuu_yariman_imouto_ga_erosugite_oniichan_wa_mou' to Artist folder '_Unknown' +2026-01-07 19:23:33,665 - INFO - Moving '[Hijiri_Tsukasa]_Ona-Ashi!_~A_Job_Helping_Erotic_Manga_Artists_Masturbate~_--_ONA-ASHI!_~Ero_Mangaka_no_Onanie_o_Tetsudau_Shigoto~_[Digital]_(2026)' to Artist folder 'hijiri_tsukasa' +2026-01-07 19:23:33,678 - INFO - Moving 'karinsans_hidden_side_and_her_naughty_videos_chapter' to Artist folder '_Unknown' +2026-01-08 16:09:02,189 - INFO - Starting organization in /comics/pendingorganization... +2026-01-08 16:09:02,231 - INFO - Searching Mangadex for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-08 16:09:03,078 - INFO - Searching metadata for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-08 16:09:03,324 - INFO - Searching Hentai2Read for: Abukano+-+Shinrai+Shiteta+Gaikokujin+ni+Hamerare+Ochita+Kikoku+Kanojo+to+Boku +2026-01-08 16:09:03,789 - INFO - Searching MangaUpdates for: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku +2026-01-08 16:09:06,845 - INFO - Processing: Abukano - Shinrai Shiteta Gaikokujin ni Hamerare Ochita Kikoku Kanojo to Boku.zip -> Kanojo_ni_Naritai_Kimi_to_Boku_(2018) +2026-01-08 16:09:09,682 - INFO - Searching Mangadex for: haunted property chapter 1 +2026-01-08 16:09:10,120 - INFO - Searching metadata for: haunted property chapter 1 +2026-01-08 16:09:10,285 - INFO - Searching Hentai2Read for: haunted+property+chapter+1 +2026-01-08 16:09:10,692 - INFO - Searching MangaUpdates for: haunted property chapter 1 +2026-01-08 16:09:12,094 - INFO - Processing: haunted_property_chapter_1.zip -> Stigmatized_Property_(2019) +2026-01-08 16:09:12,986 - INFO - Searching Mangadex for: hitozuma saimin appli chapter 1 +2026-01-08 16:09:13,393 - INFO - Searching metadata for: hitozuma saimin appli chapter 1 +2026-01-08 16:09:13,570 - INFO - Searching Hentai2Read for: hitozuma+saimin+appli+chapter+1 +2026-01-08 16:09:13,972 - INFO - Searching MangaUpdates for: hitozuma saimin appli chapter 1 +2026-01-08 16:09:15,278 - INFO - Processing: hitozuma_saimin_appli_chapter_1.zip -> Saimin_Appli_(Yuma)_(2024) +2026-01-08 16:09:17,090 - INFO - Searching Mangadex for: kayanee and the old man memories chapter 1 +2026-01-08 16:09:17,623 - INFO - Searching metadata for: kayanee and the old man memories chapter 1 +2026-01-08 16:09:17,776 - INFO - Searching Hentai2Read for: kayanee+and+the+old+man+memories+chapter+1 +2026-01-08 16:09:18,139 - INFO - Searching MangaUpdates for: kayanee and the old man memories chapter 1 +2026-01-08 16:09:18,659 - INFO - Processing: kayanee_and_the_old_man_memories_chapter_1.zip -> Roujin_to_Neko_(2024) +2026-01-08 16:09:20,657 - INFO - Searching Mangadex for: jibakureichan wa oppai ga yowai chapter 1 +2026-01-08 16:09:21,208 - INFO - Searching metadata for: jibakureichan wa oppai ga yowai chapter 1 +2026-01-08 16:09:21,355 - INFO - Searching Hentai2Read for: jibakureichan+wa+oppai+ga+yowai+chapter+1 +2026-01-08 16:09:21,786 - INFO - Searching MangaUpdates for: jibakureichan wa oppai ga yowai chapter 1 +2026-01-08 16:09:22,490 - INFO - Processing: jibakureichan_wa_oppai_ga_yowai_chapter_1.zip -> Ai_ga_Ippai_Ero_wa_Oppai_(2010) +2026-01-08 16:09:24,365 - INFO - Searching Mangadex for: dream mama vs real mother chapter 1b +2026-01-08 16:09:24,881 - INFO - Searching metadata for: dream mama vs real mother chapter 1b +2026-01-08 16:09:25,087 - INFO - Searching Hentai2Read for: dream+mama+vs+real+mother+chapter+1b +2026-01-08 16:09:25,471 - INFO - Searching MangaUpdates for: dream mama vs real mother chapter 1b +2026-01-08 16:09:26,321 - INFO - Processing: dream_mama_vs_real_mother_chapter_1b.zip -> Sex_With_Many_Mamas_(2016) +2026-01-08 16:09:27,442 - INFO - Searching Mangadex for: imouto to rekawatta oniichan wa chapter 1 +2026-01-08 16:09:27,910 - INFO - Searching metadata for: imouto to rekawatta oniichan wa chapter 1 +2026-01-08 16:09:28,124 - INFO - Searching Hentai2Read for: imouto+to+rekawatta+oniichan+wa+chapter+1 +2026-01-08 16:09:28,425 - INFO - Searching MangaUpdates for: imouto to rekawatta oniichan wa chapter 1 +2026-01-08 16:09:29,881 - INFO - Processing: imouto_to_rekawatta_oniichan_wa_chapter_1.zip -> Imouto_wa_minna_Oniichan_ga_Suki!_(2010) +2026-01-08 16:09:30,863 - INFO - Searching Mangadex for: jukujo sentai paiters chapter 1 +2026-01-08 16:09:31,376 - INFO - Searching metadata for: jukujo sentai paiters chapter 1 +2026-01-08 16:09:31,527 - INFO - Searching Hentai2Read for: jukujo+sentai+paiters+chapter+1 +2026-01-08 16:09:31,903 - INFO - Searching MangaUpdates for: jukujo sentai paiters chapter 1 +2026-01-08 16:09:32,366 - INFO - Processing: jukujo_sentai_paiters_chapter_1.zip -> Shigino_to_Shijima_Dai_Ichi_Wa_Hodasarete_Tamaru_ka_(2025) +2026-01-08 16:09:33,533 - INFO - Searching Mangadex for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-08 16:09:34,251 - INFO - Searching metadata for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-08 16:09:34,562 - INFO - Searching Hentai2Read for: Gachikoi+shinai+to+Derarenai+Heya+++The+Room+You+Cant+Leave+Unless+You+Fall+in+True+Love +2026-01-08 16:09:34,976 - INFO - Searching MangaUpdates for: Gachikoi shinai to Derarenai Heya The Room You Cant Leave Unless You Fall in True Love +2026-01-08 16:09:35,901 - INFO - Processing: Gachikoi shinai to Derarenai Heya _ The Room You Cant Leave Unless You Fall in True Love.zip -> Jujutsu_Kaisen_dj_-_○○○_Shinai_to_Derarenai_Heya_√A_(2021) +2026-01-08 16:09:36,840 - INFO - Searching Mangadex for: mrs miho cant stop cheating chapter 1 +2026-01-08 16:09:37,333 - INFO - Searching metadata for: mrs miho cant stop cheating chapter 1 +2026-01-08 16:09:37,496 - INFO - Searching Hentai2Read for: mrs+miho+cant+stop+cheating+chapter+1 +2026-01-08 16:09:37,851 - INFO - Searching MangaUpdates for: mrs miho cant stop cheating chapter 1 +2026-01-08 16:09:38,902 - INFO - Processing: mrs_miho_cant_stop_cheating_chapter_1.zip -> Hitozuma,_Uwaki,_Danchi_Nite._-37-Sai_Miho-_(2025) +2026-01-08 16:09:41,147 - INFO - Searching Mangadex for: jitsu wa midara na chounyuu sensei chapter 1 +2026-01-08 16:09:41,769 - INFO - Searching metadata for: jitsu wa midara na chounyuu sensei chapter 1 +2026-01-08 16:09:42,036 - INFO - Searching Hentai2Read for: jitsu+wa+midara+na+chounyuu+sensei+chapter+1 +2026-01-08 16:09:42,395 - INFO - Searching MangaUpdates for: jitsu wa midara na chounyuu sensei chapter 1 +2026-01-08 16:09:43,939 - INFO - Processing: jitsu_wa_midara_na_chounyuu_sensei_chapter_1.zip -> Sensei_wa_Ore_no_Dorei_Danshikou_wa_Midara_na_Kangoku_(2014) +2026-01-08 16:09:44,766 - INFO - Searching Mangadex for: from now on you are my livestock chapter 1 +2026-01-08 16:09:45,269 - INFO - Searching metadata for: from now on you are my livestock chapter 1 +2026-01-08 16:09:45,535 - INFO - Searching Hentai2Read for: from+now+on+you+are+my+livestock+chapter+1 +2026-01-08 16:09:45,911 - INFO - Searching MangaUpdates for: from now on you are my livestock chapter 1 +2026-01-08 16:09:46,875 - INFO - Processing: from_now_on_you_are_my_livestock_chapter_1.zip -> Oretachi,_Kore_Kara_(2024) +2026-01-08 16:09:48,744 - INFO - Searching Mangadex for: family plan toono suika chapter 1 +2026-01-08 16:09:49,276 - INFO - Searching metadata for: family plan toono suika chapter 1 +2026-01-08 16:09:49,457 - INFO - Searching Hentai2Read for: family+plan+toono+suika+chapter+1 +2026-01-08 16:09:49,852 - INFO - Searching MangaUpdates for: family plan toono suika chapter 1 +2026-01-08 16:09:51,039 - INFO - Processing: family_plan_toono_suika_chapter_1.zip -> Family_Plan_(2024) +2026-01-08 16:09:51,772 - INFO - Searching Mangadex for: crossdressing hero and dancer priestess chapter 1 +2026-01-08 16:09:52,310 - INFO - Searching metadata for: crossdressing hero and dancer priestess chapter 1 +2026-01-08 16:09:52,536 - INFO - Searching Hentai2Read for: crossdressing+hero+and+dancer+priestess+chapter+1 +2026-01-08 16:09:52,881 - INFO - Searching MangaUpdates for: crossdressing hero and dancer priestess chapter 1 +2026-01-08 16:09:54,096 - INFO - Processing: crossdressing_hero_and_dancer_priestess_chapter_1.zip -> Watashi_no_Kawaii_Mochizuki-kun_(2020) +2026-01-08 16:09:55,066 - INFO - Searching Mangadex for: im being sex educated by my overprotective mother chapter 1 +2026-01-08 16:09:55,701 - INFO - Searching metadata for: im being sex educated by my overprotective mother chapter 1 +2026-01-08 16:09:55,905 - INFO - Searching Hentai2Read for: im+being+sex+educated+by+my+overprotective+mother+chapter+1 +2026-01-08 16:09:56,241 - INFO - Searching MangaUpdates for: im being sex educated by my overprotective mother chapter 1 +2026-01-08 16:09:57,284 - INFO - Processing: im_being_sex_educated_by_my_overprotective_mother_chapter_1.zip -> Injoku_no_Kizuna_(2006) +2026-01-08 16:09:58,749 - INFO - Searching Mangadex for: i matched with my friends mom chapter 1 +2026-01-08 16:09:59,378 - INFO - Searching metadata for: i matched with my friends mom chapter 1 +2026-01-08 16:09:59,599 - INFO - Searching Hentai2Read for: i+matched+with+my+friends+mom+chapter+1 +2026-01-08 16:09:59,925 - INFO - Searching MangaUpdates for: i matched with my friends mom chapter 1 +2026-01-08 16:10:01,284 - INFO - Processing: i_matched_with_my_friends_mom_chapter_1.zip -> Akogare_no_Tomo_Mama_to_Matching_Shita_Kudan_(2024) +2026-01-08 16:10:02,638 - INFO - Searching Mangadex for: karinsans hidden side and her naughty videos chapter 1 +2026-01-08 16:10:03,333 - INFO - Searching metadata for: karinsans hidden side and her naughty videos chapter 1 +2026-01-08 16:10:03,486 - INFO - Searching Hentai2Read for: karinsans+hidden+side+and+her+naughty+videos+chapter+1 +2026-01-08 16:10:03,911 - INFO - Searching MangaUpdates for: karinsans hidden side and her naughty videos chapter 1 +2026-01-08 16:10:05,404 - INFO - Processing: karinsans_hidden_side_and_her_naughty_videos_chapter_1.zip -> Kumiko_to_Warui_Musuko_(2015) +2026-01-08 16:10:05,947 - INFO - Searching Mangadex for: dirty lessons improving your manhood chapter 1 +2026-01-08 16:10:06,480 - INFO - Searching metadata for: dirty lessons improving your manhood chapter 1 +2026-01-08 16:10:06,645 - INFO - Searching Hentai2Read for: dirty+lessons+improving+your+manhood+chapter+1 +2026-01-08 16:10:07,039 - INFO - Searching MangaUpdates for: dirty lessons improving your manhood chapter 1 +2026-01-08 16:10:07,709 - INFO - Processing: dirty_lessons_improving_your_manhood_chapter_1 -> Short_Stories_(Mentaiko)_(2012) +2026-01-08 16:10:08,766 - INFO - Searching Mangadex for: imouto ookiindamon chapter 1 +2026-01-08 16:10:09,215 - INFO - Searching metadata for: imouto ookiindamon chapter 1 +2026-01-08 16:10:09,370 - INFO - Searching Hentai2Read for: imouto+ookiindamon+chapter+1 +2026-01-08 16:10:09,774 - INFO - Searching MangaUpdates for: imouto ookiindamon chapter 1 +2026-01-08 16:10:10,136 - INFO - Processing: imouto_ookiindamon_chapter_1.zip -> Shigino_to_Shijima_Dai_Ichi_Wa_Hodasarete_Tamaru_ka_(2025) +2026-01-08 16:10:11,079 - INFO - Searching Mangadex for: the romantic ritual with fox goddess yuukosan chapter 1 +2026-01-08 16:10:11,662 - INFO - Searching metadata for: the romantic ritual with fox goddess yuukosan chapter 1 +2026-01-08 16:10:11,843 - INFO - Searching Hentai2Read for: the+romantic+ritual+with+fox+goddess+yuukosan+chapter+1 +2026-01-08 16:10:12,258 - INFO - Searching MangaUpdates for: the romantic ritual with fox goddess yuukosan chapter 1 +2026-01-08 16:10:15,035 - INFO - Processing: the_romantic_ritual_with_fox_goddess_yuukosan_chapter_1.zip -> Koyoi,_Gishiki_de_Hatemashou_(2019) +2026-01-08 16:14:32,702 - INFO - Moved Koyoi,_Gishiki_de_Hatemashou_(2019) to isolation:/comics/manga/Koyoi,_Gishiki_de_Hatemashou_(2019) +2026-01-08 16:14:32,896 - INFO - Moved Stigmatized_Property_(2019) to isolation:/comics/manga/Stigmatized_Property_(2019) +2026-01-08 16:14:33,050 - INFO - Moved Sensei_wa_Ore_no_Dorei_Danshikou_wa_Midara_na_Kangoku_(2014) to isolation:/comics/manga/Sensei_wa_Ore_no_Dorei_Danshikou_wa_Midara_na_Kangoku_(2014) +2026-01-08 16:14:33,429 - INFO - Moved Roujin_to_Neko_(2024) to isolation:/comics/manga/Roujin_to_Neko_(2024) +2026-01-08 16:14:33,747 - INFO - Moved Akogare_no_Tomo_Mama_to_Matching_Shita_Kudan_(2024) to isolation:/comics/manga/Akogare_no_Tomo_Mama_to_Matching_Shita_Kudan_(2024) +2026-01-08 16:14:33,921 - INFO - Moved Jujutsu_Kaisen_dj_-_○○○_Shinai_to_Derarenai_Heya_√A_(2021) to isolation:/comics/manga/Jujutsu_Kaisen_dj_-_○○○_Shinai_to_Derarenai_Heya_√A_(2021) +2026-01-08 16:14:34,071 - INFO - Moved Short_Stories_(Mentaiko)_(2012) to isolation:/comics/manga/Short_Stories_(Mentaiko)_(2012) +2026-01-08 16:14:34,461 - INFO - Moved Ai_ga_Ippai_Ero_wa_Oppai_(2010) to isolation:/comics/manga/Ai_ga_Ippai_Ero_wa_Oppai_(2010) +2026-01-08 16:14:34,599 - INFO - Moved Shigino_to_Shijima_Dai_Ichi_Wa_Hodasarete_Tamaru_ka_(2025) to isolation:/comics/manga/Shigino_to_Shijima_Dai_Ichi_Wa_Hodasarete_Tamaru_ka_(2025) +2026-01-08 16:14:35,393 - INFO - Moved Kanojo_ni_Naritai_Kimi_to_Boku_(2018) to isolation:/comics/manga/Kanojo_ni_Naritai_Kimi_to_Boku_(2018) +2026-01-08 16:14:35,640 - INFO - Moved Imouto_wa_minna_Oniichan_ga_Suki!_(2010) to isolation:/comics/manga/Imouto_wa_minna_Oniichan_ga_Suki!_(2010) +2026-01-08 16:14:35,997 - INFO - Moved Oretachi,_Kore_Kara_(2024) to isolation:/comics/manga/Oretachi,_Kore_Kara_(2024) +2026-01-08 16:14:36,633 - INFO - Moved Hitozuma,_Uwaki,_Danchi_Nite._-37-Sai_Miho-_(2025) to isolation:/comics/manga/Hitozuma,_Uwaki,_Danchi_Nite._-37-Sai_Miho-_(2025) +2026-01-08 16:14:36,979 - INFO - Moved Sex_With_Many_Mamas_(2016) to isolation:/comics/manga/Sex_With_Many_Mamas_(2016) +2026-01-08 16:14:37,172 - INFO - Moved Family_Plan_(2024) to isolation:/comics/manga/Family_Plan_(2024) +2026-01-08 16:14:37,518 - INFO - Moved Watashi_no_Kawaii_Mochizuki-kun_(2020) to isolation:/comics/manga/Watashi_no_Kawaii_Mochizuki-kun_(2020) +2026-01-08 16:14:37,973 - INFO - Moved Saimin_Appli_(Yuma)_(2024) to isolation:/comics/manga/Saimin_Appli_(Yuma)_(2024) +2026-01-08 16:14:38,122 - INFO - Moved Kumiko_to_Warui_Musuko_(2015) to isolation:/comics/manga/Kumiko_to_Warui_Musuko_(2015) +2026-01-08 16:14:38,492 - INFO - Moved Injoku_no_Kizuna_(2006) to isolation:/comics/manga/Injoku_no_Kizuna_(2006) +2026-01-08 16:14:47,421 - INFO - Starting metadata update in /comics/manga (Force: False)... +2026-01-08 16:14:47,481 - INFO - Updating metadata for: toono_suika +2026-01-08 16:14:47,482 - INFO - Searching Mangadex for: toono suika +2026-01-08 16:14:47,872 - INFO - Searching metadata for: toono suika +2026-01-08 16:14:48,086 - INFO - Fetching metadata from: https://nhentai.net/g/614717/ +2026-01-08 16:14:48,308 - INFO - Updating metadata for: tikubin +2026-01-08 16:14:48,308 - INFO - Searching Mangadex for: tikubin +2026-01-08 16:14:48,629 - INFO - Searching metadata for: tikubin +2026-01-08 16:14:48,799 - INFO - Fetching metadata from: https://nhentai.net/g/616442/ +2026-01-08 16:14:48,954 - INFO - Updating metadata for: sunagawa_tara +2026-01-08 16:14:48,955 - INFO - Searching Mangadex for: sunagawa tara +2026-01-08 16:14:49,265 - INFO - Searching metadata for: sunagawa tara +2026-01-08 16:14:49,426 - INFO - Fetching metadata from: https://nhentai.net/g/615455/ +2026-01-08 16:14:49,816 - INFO - Updating metadata for: manbou_syoten +2026-01-08 16:14:49,816 - INFO - Searching Mangadex for: manbou syoten +2026-01-08 16:14:50,113 - INFO - Searching metadata for: manbou syoten +2026-01-08 16:14:50,260 - INFO - Fetching metadata from: https://nhentai.net/g/600162/ +2026-01-08 16:14:50,440 - INFO - Updating metadata for: fan +2026-01-08 16:14:50,441 - INFO - Searching Mangadex for: fan +2026-01-08 16:14:50,769 - INFO - Updating metadata for: norisuke +2026-01-08 16:14:50,769 - INFO - Searching Mangadex for: norisuke +2026-01-08 16:14:51,072 - INFO - Searching metadata for: norisuke +2026-01-08 16:14:51,214 - INFO - Fetching metadata from: https://nhentai.net/g/583574/ +2026-01-08 16:14:51,790 - INFO - Updating metadata for: karory +2026-01-08 16:14:51,791 - INFO - Searching Mangadex for: karory +2026-01-08 16:14:52,101 - INFO - Searching metadata for: karory +2026-01-08 16:14:52,281 - INFO - Fetching metadata from: https://nhentai.net/g/617951/ +2026-01-08 16:14:52,479 - INFO - Updating metadata for: nishida_megane +2026-01-08 16:14:52,480 - INFO - Searching Mangadex for: nishida megane +2026-01-08 16:14:52,821 - INFO - Searching metadata for: nishida megane +2026-01-08 16:14:53,001 - INFO - Fetching metadata from: https://nhentai.net/g/617243/ +2026-01-08 16:14:53,193 - INFO - Updating metadata for: tsusauto +2026-01-08 16:14:53,193 - INFO - Searching Mangadex for: tsusauto +2026-01-08 16:14:53,529 - INFO - Searching metadata for: tsusauto +2026-01-08 16:14:53,687 - INFO - Fetching metadata from: https://nhentai.net/g/617553/ +2026-01-08 16:14:54,148 - INFO - Updating metadata for: zero_no_mono +2026-01-08 16:14:54,149 - INFO - Searching Mangadex for: zero no mono +2026-01-08 16:14:54,491 - INFO - Updating metadata for: natsu_no_oyatsu +2026-01-08 16:14:54,491 - INFO - Searching Mangadex for: natsu no oyatsu +2026-01-08 16:14:54,831 - INFO - Searching metadata for: natsu no oyatsu +2026-01-08 16:14:55,089 - INFO - Fetching metadata from: https://nhentai.net/g/618004/ +2026-01-08 16:14:55,280 - INFO - Updating metadata for: ginen +2026-01-08 16:14:55,280 - INFO - Searching Mangadex for: ginen +2026-01-08 16:14:55,622 - INFO - Updating metadata for: izayoi_no_kiki +2026-01-08 16:14:55,623 - INFO - Searching Mangadex for: izayoi no kiki +2026-01-08 16:14:56,001 - INFO - Searching metadata for: izayoi no kiki +2026-01-08 16:14:56,216 - INFO - Fetching metadata from: https://nhentai.net/g/618987/ +2026-01-08 16:14:56,377 - INFO - Updating metadata for: hatsuyasumi +2026-01-08 16:14:56,378 - INFO - Searching Mangadex for: hatsuyasumi +2026-01-08 16:14:56,690 - INFO - Searching metadata for: hatsuyasumi +2026-01-08 16:14:56,846 - INFO - Fetching metadata from: https://nhentai.net/g/617049/ +2026-01-08 16:14:57,309 - INFO - Updating metadata for: borusiti +2026-01-08 16:14:57,309 - INFO - Searching Mangadex for: borusiti +2026-01-08 16:14:57,631 - INFO - Searching metadata for: borusiti +2026-01-08 16:14:57,824 - INFO - Fetching metadata from: https://nhentai.net/g/602074/ +2026-01-08 16:14:58,001 - INFO - Updating metadata for: sakurama_haruomi +2026-01-08 16:14:58,002 - INFO - Searching Mangadex for: sakurama haruomi +2026-01-08 16:14:58,333 - INFO - Searching metadata for: sakurama haruomi +2026-01-08 16:14:58,503 - INFO - Fetching metadata from: https://nhentai.net/g/614436/ +2026-01-08 16:14:58,743 - INFO - Updating metadata for: issi-13 +2026-01-08 16:14:58,743 - INFO - Searching Mangadex for: issi-13 +2026-01-08 16:14:59,050 - INFO - Searching metadata for: issi-13 +2026-01-08 16:14:59,232 - INFO - Fetching metadata from: https://nhentai.net/g/595554/ +2026-01-08 16:14:59,452 - INFO - Updating metadata for: cinnamon +2026-01-08 16:14:59,453 - INFO - Searching Mangadex for: cinnamon +2026-01-08 16:14:59,794 - INFO - Updating metadata for: cock_robin +2026-01-08 16:14:59,794 - INFO - Searching Mangadex for: cock robin +2026-01-08 16:15:00,129 - INFO - Updating metadata for: umino_ryo +2026-01-08 16:15:00,129 - INFO - Searching Mangadex for: umino ryo +2026-01-08 16:15:00,465 - INFO - Updating metadata for: satsuki_imonet +2026-01-08 16:15:00,466 - INFO - Searching Mangadex for: satsuki imonet +2026-01-08 16:15:00,805 - INFO - Searching metadata for: satsuki imonet +2026-01-08 16:15:00,966 - INFO - Fetching metadata from: https://nhentai.net/g/621338/ +2026-01-08 16:15:01,187 - INFO - Updating metadata for: kawahagitei +2026-01-08 16:15:01,187 - INFO - Searching Mangadex for: kawahagitei +2026-01-08 16:15:01,527 - INFO - Searching metadata for: kawahagitei +2026-01-08 16:15:01,686 - INFO - Fetching metadata from: https://nhentai.net/g/611340/ +2026-01-08 16:15:02,064 - INFO - Updating metadata for: Sorajirou +2026-01-08 16:15:02,064 - INFO - Searching Mangadex for: Sorajirou +2026-01-08 16:15:02,371 - INFO - Updating metadata for: takatsu +2026-01-08 16:15:02,372 - INFO - Searching Mangadex for: takatsu +2026-01-08 16:15:02,747 - INFO - Updating metadata for: junk_kameyoko +2026-01-08 16:15:02,748 - INFO - Searching Mangadex for: junk kameyoko +2026-01-08 16:15:03,055 - INFO - Searching metadata for: junk kameyoko +2026-01-08 16:15:03,226 - INFO - Fetching metadata from: https://nhentai.net/g/528337/ +2026-01-08 16:15:03,452 - INFO - Updating metadata for: u-1 +2026-01-08 16:15:03,453 - INFO - Searching Mangadex for: u-1 +2026-01-08 16:15:03,811 - INFO - Updating metadata for: Chiguchi_Miri +2026-01-08 16:15:03,812 - INFO - Searching Mangadex for: Chiguchi Miri +2026-01-08 16:15:04,117 - INFO - Searching metadata for: Chiguchi Miri +2026-01-08 16:15:04,310 - INFO - Fetching metadata from: https://nhentai.net/g/619500/ +2026-01-08 16:15:04,475 - INFO - Updating metadata for: choma +2026-01-08 16:15:04,475 - INFO - Searching Mangadex for: choma +2026-01-08 16:15:04,796 - INFO - Searching metadata for: choma +2026-01-08 16:15:04,960 - INFO - Fetching metadata from: https://nhentai.net/g/617588/ +2026-01-08 16:15:05,132 - INFO - Updating metadata for: nesz +2026-01-08 16:15:05,133 - INFO - Searching Mangadex for: nesz +2026-01-08 16:15:05,429 - INFO - Searching metadata for: nesz +2026-01-08 16:15:05,586 - INFO - Fetching metadata from: https://nhentai.net/g/607421/ +2026-01-08 16:15:05,771 - INFO - Updating metadata for: sakai_hamachi +2026-01-08 16:15:05,772 - INFO - Searching Mangadex for: sakai hamachi +2026-01-08 16:15:06,102 - INFO - Searching metadata for: sakai hamachi +2026-01-08 16:15:06,303 - INFO - Fetching metadata from: https://nhentai.net/g/619231/ +2026-01-08 16:15:06,482 - INFO - Updating metadata for: xboy +2026-01-08 16:15:06,483 - INFO - Searching Mangadex for: xboy +2026-01-08 16:15:06,783 - INFO - Searching metadata for: xboy +2026-01-08 16:15:06,942 - INFO - Fetching metadata from: https://nhentai.net/g/618390/ +2026-01-08 16:15:07,176 - INFO - Updating metadata for: Kawakami_Shuuichi +2026-01-08 16:15:07,177 - INFO - Searching Mangadex for: Kawakami Shuuichi +2026-01-08 16:15:07,519 - INFO - Searching metadata for: Kawakami Shuuichi +2026-01-08 16:15:07,650 - INFO - Searching Hentai2Read for: Kawakami Shuuichi +2026-01-08 16:15:08,139 - INFO - Searching MangaUpdates for: Kawakami Shuuichi +2026-01-08 16:15:09,136 - INFO - Updating metadata for: karoti +2026-01-08 16:15:09,136 - INFO - Searching Mangadex for: karoti +2026-01-08 16:15:09,439 - INFO - Searching metadata for: karoti +2026-01-08 16:15:09,598 - INFO - Fetching metadata from: https://nhentai.net/g/620624/ +2026-01-08 16:15:09,807 - INFO - Updating metadata for: polier +2026-01-08 16:15:09,808 - INFO - Searching Mangadex for: polier +2026-01-08 16:15:10,129 - INFO - Searching metadata for: polier +2026-01-08 16:15:10,284 - INFO - Fetching metadata from: https://nhentai.net/g/619346/ +2026-01-08 16:15:10,634 - INFO - Updating metadata for: tao +2026-01-08 16:15:10,634 - INFO - Searching Mangadex for: tao +2026-01-08 16:15:10,956 - INFO - Updating metadata for: akitsuki_itsuki +2026-01-08 16:15:10,956 - INFO - Searching Mangadex for: akitsuki itsuki +2026-01-08 16:15:11,259 - INFO - Searching metadata for: akitsuki itsuki +2026-01-08 16:15:11,440 - INFO - Fetching metadata from: https://nhentai.net/g/620933/ +2026-01-08 16:15:11,613 - INFO - Updating metadata for: otochichi +2026-01-08 16:15:11,613 - INFO - Searching Mangadex for: otochichi +2026-01-08 16:15:11,934 - INFO - Searching metadata for: otochichi +2026-01-08 16:15:12,108 - INFO - Fetching metadata from: https://nhentai.net/g/621098/ +2026-01-08 16:15:12,278 - INFO - Updating metadata for: type.90 +2026-01-08 16:15:12,278 - INFO - Searching Mangadex for: type.90 +2026-01-08 16:15:12,598 - INFO - Updating metadata for: shimipan +2026-01-08 16:15:12,598 - INFO - Searching Mangadex for: shimipan +2026-01-08 16:15:12,916 - INFO - Searching metadata for: shimipan +2026-01-08 16:15:13,070 - INFO - Fetching metadata from: https://nhentai.net/g/621225/ +2026-01-08 16:15:13,276 - INFO - Updating metadata for: gentsuki +2026-01-08 16:15:13,276 - INFO - Searching Mangadex for: gentsuki +2026-01-08 16:15:13,567 - INFO - Searching metadata for: gentsuki +2026-01-08 16:15:13,728 - INFO - Fetching metadata from: https://nhentai.net/g/613486/ +2026-01-08 16:15:13,914 - INFO - Updating metadata for: mizu +2026-01-08 16:15:13,914 - INFO - Searching Mangadex for: mizu +2026-01-08 16:15:14,261 - INFO - Updating metadata for: e-musu_aki +2026-01-08 16:15:14,263 - INFO - Searching Mangadex for: e-musu aki +2026-01-08 16:15:14,589 - INFO - Searching metadata for: e-musu aki +2026-01-08 16:15:14,866 - INFO - Fetching metadata from: https://nhentai.net/g/592267/ +2026-01-08 16:15:15,133 - INFO - Updating metadata for: monmomo +2026-01-08 16:15:15,134 - INFO - Searching Mangadex for: monmomo +2026-01-08 16:15:15,459 - INFO - Searching metadata for: monmomo +2026-01-08 16:15:15,597 - INFO - Fetching metadata from: https://nhentai.net/g/618662/ +2026-01-08 16:15:15,850 - INFO - Updating metadata for: arsenal +2026-01-08 16:15:15,851 - INFO - Searching Mangadex for: arsenal +2026-01-08 16:15:16,164 - INFO - Searching metadata for: arsenal +2026-01-08 16:15:16,320 - INFO - Fetching metadata from: https://nhentai.net/g/614915/ +2026-01-08 16:15:16,629 - INFO - Updating metadata for: sukage +2026-01-08 16:15:16,629 - INFO - Searching Mangadex for: sukage +2026-01-08 16:15:16,945 - INFO - Searching metadata for: sukage +2026-01-08 16:15:17,122 - INFO - Fetching metadata from: https://nhentai.net/g/619488/ +2026-01-08 16:15:17,290 - INFO - Updating metadata for: komusou +2026-01-08 16:15:17,290 - INFO - Searching Mangadex for: komusou +2026-01-08 16:15:17,597 - INFO - Searching metadata for: komusou +2026-01-08 16:15:17,747 - INFO - Fetching metadata from: https://nhentai.net/g/599736/ +2026-01-08 16:15:17,975 - INFO - Updating metadata for: nasipasuta +2026-01-08 16:15:17,976 - INFO - Searching Mangadex for: nasipasuta +2026-01-08 16:15:18,276 - INFO - Searching metadata for: nasipasuta +2026-01-08 16:15:18,446 - INFO - Fetching metadata from: https://nhentai.net/g/598497/ +2026-01-08 16:15:18,843 - INFO - Updating metadata for: dawalixi +2026-01-08 16:15:18,843 - INFO - Searching Mangadex for: dawalixi +2026-01-08 16:15:19,186 - INFO - Searching metadata for: dawalixi +2026-01-08 16:15:19,338 - INFO - Fetching metadata from: https://nhentai.net/g/619363/ +2026-01-08 16:15:19,537 - INFO - Updating metadata for: Muufa +2026-01-08 16:15:19,538 - INFO - Searching Mangadex for: Muufa +2026-01-08 16:15:19,822 - INFO - Searching metadata for: Muufa +2026-01-08 16:15:19,967 - INFO - Fetching metadata from: https://nhentai.net/g/595553/ +2026-01-08 16:15:20,147 - INFO - Updating metadata for: boole +2026-01-08 16:15:20,147 - INFO - Searching Mangadex for: boole +2026-01-08 16:15:20,470 - INFO - Searching metadata for: boole +2026-01-08 16:15:20,626 - INFO - Fetching metadata from: https://nhentai.net/g/613220/ +2026-01-08 16:15:20,802 - INFO - Updating metadata for: utsutsu_minoru +2026-01-08 16:15:20,802 - INFO - Searching Mangadex for: utsutsu minoru +2026-01-08 16:15:21,095 - INFO - Searching metadata for: utsutsu minoru +2026-01-08 16:15:21,258 - INFO - Fetching metadata from: https://nhentai.net/g/469795/ +2026-01-08 16:15:21,448 - INFO - Updating metadata for: Takeshima_Eku +2026-01-08 16:15:21,449 - INFO - Searching Mangadex for: Takeshima Eku +2026-01-08 16:15:21,792 - INFO - Searching metadata for: Takeshima Eku +2026-01-08 16:15:21,920 - INFO - Searching Hentai2Read for: Takeshima Eku +2026-01-08 16:15:22,256 - INFO - Searching MangaUpdates for: Takeshima Eku +2026-01-08 16:15:29,846 - INFO - Updating metadata for: nagaikusa +2026-01-08 16:15:29,846 - INFO - Searching Mangadex for: nagaikusa +2026-01-08 16:15:30,261 - INFO - Searching metadata for: nagaikusa +2026-01-08 16:15:30,423 - INFO - Fetching metadata from: https://nhentai.net/g/607013/ +2026-01-08 16:15:30,888 - INFO - Updating metadata for: alp +2026-01-08 16:15:30,888 - INFO - Searching Mangadex for: alp +2026-01-08 16:15:31,228 - INFO - Updating metadata for: torigoshi_crow +2026-01-08 16:15:31,229 - INFO - Searching Mangadex for: torigoshi crow +2026-01-08 16:15:31,552 - INFO - Searching metadata for: torigoshi crow +2026-01-08 16:15:31,702 - INFO - Fetching metadata from: https://nhentai.net/g/604483/ +2026-01-08 16:15:31,875 - INFO - Updating metadata for: azuma_ryo +2026-01-08 16:15:31,875 - INFO - Searching Mangadex for: azuma ryo +2026-01-08 16:15:32,194 - INFO - Updating metadata for: kizuka_kazuki +2026-01-08 16:15:32,195 - INFO - Searching Mangadex for: kizuka kazuki +2026-01-08 16:15:32,525 - INFO - Searching metadata for: kizuka kazuki +2026-01-08 16:15:32,719 - INFO - Fetching metadata from: https://nhentai.net/g/611338/ +2026-01-08 16:15:32,918 - INFO - Updating metadata for: kurona +2026-01-08 16:15:32,919 - INFO - Searching Mangadex for: kurona +2026-01-08 16:15:33,273 - INFO - Updating metadata for: shiraishi_nagisa +2026-01-08 16:15:33,273 - INFO - Searching Mangadex for: shiraishi nagisa +2026-01-08 16:15:33,605 - INFO - Searching metadata for: shiraishi nagisa +2026-01-08 16:15:33,765 - INFO - Fetching metadata from: https://nhentai.net/g/602399/ +2026-01-08 16:15:34,158 - INFO - Updating metadata for: minamida_usuke +2026-01-08 16:15:34,159 - INFO - Searching Mangadex for: minamida usuke +2026-01-08 16:15:34,487 - INFO - Searching metadata for: minamida usuke +2026-01-08 16:15:34,649 - INFO - Fetching metadata from: https://nhentai.net/g/619346/ +2026-01-08 16:15:35,106 - INFO - Updating metadata for: Daxingdao_Anime_(大行道动漫_or_EON_COMICS) +2026-01-08 16:15:35,107 - INFO - Searching Mangadex for: Daxingdao Anime (大行道动漫 or EON COMICS) +2026-01-08 16:15:35,634 - INFO - Searching metadata for: Daxingdao Anime (大行道动漫 or EON COMICS) +2026-01-08 16:15:35,774 - INFO - Searching Hentai2Read for: Daxingdao Anime (大行道动漫 or EON COMICS) +2026-01-08 16:15:36,196 - INFO - Searching MangaUpdates for: Daxingdao Anime (大行道动漫 or EON COMICS) +2026-01-08 16:15:36,803 - INFO - Updating metadata for: umino_sachi +2026-01-08 16:15:36,803 - INFO - Searching Mangadex for: umino sachi +2026-01-08 16:15:37,355 - INFO - Updating metadata for: uc +2026-01-08 16:15:37,356 - INFO - Searching Mangadex for: uc +2026-01-08 16:15:37,734 - INFO - Updating metadata for: fence_14 +2026-01-08 16:15:37,734 - INFO - Searching Mangadex for: fence 14 +2026-01-08 16:15:38,029 - INFO - Searching metadata for: fence 14 +2026-01-08 16:15:38,205 - INFO - Fetching metadata from: https://nhentai.net/g/621432/ +2026-01-08 16:15:38,451 - INFO - Updating metadata for: iso_nogi +2026-01-08 16:15:38,451 - INFO - Searching Mangadex for: iso nogi +2026-01-08 16:15:38,839 - INFO - Updating metadata for: fukuhara_takaya +2026-01-08 16:15:38,839 - INFO - Searching Mangadex for: fukuhara takaya +2026-01-08 16:15:39,164 - INFO - Searching metadata for: fukuhara takaya +2026-01-08 16:15:39,355 - INFO - Fetching metadata from: https://nhentai.net/g/619932/ +2026-01-08 16:15:39,532 - INFO - Updating metadata for: takapi +2026-01-08 16:15:39,532 - INFO - Searching Mangadex for: takapi +2026-01-08 16:15:40,065 - INFO - Searching metadata for: takapi +2026-01-08 16:15:40,219 - INFO - Fetching metadata from: https://nhentai.net/g/607466/ +2026-01-08 16:15:40,393 - INFO - Updating metadata for: maihara_matsuge +2026-01-08 16:15:40,393 - INFO - Searching Mangadex for: maihara matsuge +2026-01-08 16:15:40,718 - INFO - Searching metadata for: maihara matsuge +2026-01-08 16:15:40,875 - INFO - Fetching metadata from: https://nhentai.net/g/620959/ +2026-01-08 16:15:41,031 - INFO - Updating metadata for: kazuhiro +2026-01-08 16:15:41,031 - INFO - Searching Mangadex for: kazuhiro +2026-01-08 16:15:41,402 - INFO - Updating metadata for: Ginshio_Honpo_(Ginen) +2026-01-08 16:15:41,403 - INFO - Searching Mangadex for: Ginshio Honpo (Ginen) +2026-01-08 16:15:41,801 - INFO - Searching metadata for: Ginshio Honpo (Ginen) +2026-01-08 16:15:41,960 - INFO - Fetching metadata from: https://nhentai.net/g/618043/ +2026-01-08 16:15:42,117 - INFO - Updating metadata for: ohkami_ryosuke +2026-01-08 16:15:42,117 - INFO - Searching Mangadex for: ohkami ryosuke +2026-01-08 16:15:42,437 - INFO - Searching metadata for: ohkami ryosuke +2026-01-08 16:15:42,598 - INFO - Fetching metadata from: https://nhentai.net/g/617530/ +2026-01-08 16:15:42,799 - INFO - Updating metadata for: mn +2026-01-08 16:15:42,799 - INFO - Searching Mangadex for: mn +2026-01-08 16:15:43,153 - INFO - Updating metadata for: Kira_Hiroyoshi +2026-01-08 16:15:43,154 - INFO - Searching Mangadex for: Kira Hiroyoshi +2026-01-08 16:15:43,472 - INFO - Searching metadata for: Kira Hiroyoshi +2026-01-08 16:15:43,672 - INFO - Fetching metadata from: https://nhentai.net/g/619485/ +2026-01-08 16:15:44,017 - INFO - Updating metadata for: fue +2026-01-08 16:15:44,018 - INFO - Searching Mangadex for: fue +2026-01-08 16:15:44,331 - INFO - Updating metadata for: iapoc +2026-01-08 16:15:44,331 - INFO - Searching Mangadex for: iapoc +2026-01-08 16:15:44,630 - INFO - Searching metadata for: iapoc +2026-01-08 16:15:44,801 - INFO - Fetching metadata from: https://nhentai.net/g/620692/ +2026-01-08 16:15:44,974 - INFO - Updating metadata for: tokinobutt +2026-01-08 16:15:44,974 - INFO - Searching Mangadex for: tokinobutt +2026-01-08 16:15:45,332 - INFO - Searching metadata for: tokinobutt +2026-01-08 16:15:45,513 - INFO - Fetching metadata from: https://nhentai.net/g/617535/ +2026-01-08 16:15:45,875 - INFO - Updating metadata for: toujou_tsukushi +2026-01-08 16:15:45,875 - INFO - Searching Mangadex for: toujou tsukushi +2026-01-08 16:15:46,230 - INFO - Searching metadata for: toujou tsukushi +2026-01-08 16:15:46,412 - INFO - Fetching metadata from: https://nhentai.net/g/604889/ +2026-01-08 16:15:46,847 - INFO - Updating metadata for: Tiramisu_Tart_(Kazuhiro) +2026-01-08 16:15:46,848 - INFO - Searching Mangadex for: Tiramisu Tart (Kazuhiro) +2026-01-08 16:15:47,262 - INFO - Searching metadata for: Tiramisu Tart (Kazuhiro) +2026-01-08 16:15:47,427 - INFO - Fetching metadata from: https://nhentai.net/g/619635/ +2026-01-08 16:15:47,618 - INFO - Updating metadata for: yasui_riosuke +2026-01-08 16:15:47,618 - INFO - Searching Mangadex for: yasui riosuke +2026-01-08 16:15:47,942 - INFO - Searching metadata for: yasui riosuke +2026-01-08 16:15:48,116 - INFO - Fetching metadata from: https://nhentai.net/g/596068/ +2026-01-08 16:15:48,330 - INFO - Updating metadata for: yue +2026-01-08 16:15:48,331 - INFO - Searching Mangadex for: yue +2026-01-08 16:15:48,716 - INFO - Updating metadata for: wakamatsu +2026-01-08 16:15:48,717 - INFO - Searching Mangadex for: wakamatsu +2026-01-08 16:15:49,030 - INFO - Searching metadata for: wakamatsu +2026-01-08 16:15:49,189 - INFO - Fetching metadata from: https://nhentai.net/g/618419/ +2026-01-08 16:15:49,358 - INFO - Updating metadata for: zandoro +2026-01-08 16:15:49,358 - INFO - Searching Mangadex for: zandoro +2026-01-08 16:15:49,672 - INFO - Searching metadata for: zandoro +2026-01-08 16:15:49,929 - INFO - Fetching metadata from: https://nhentai.net/g/618948/ +2026-01-08 16:15:50,227 - INFO - Updating metadata for: tobe +2026-01-08 16:15:50,228 - INFO - Searching Mangadex for: tobe +2026-01-08 16:15:50,607 - INFO - Updating metadata for: poriuretan +2026-01-08 16:15:50,607 - INFO - Searching Mangadex for: poriuretan +2026-01-08 16:15:50,901 - INFO - Searching metadata for: poriuretan +2026-01-08 16:15:51,067 - INFO - Fetching metadata from: https://nhentai.net/g/621105/ +2026-01-08 16:15:51,294 - INFO - Updating metadata for: tsubaki_jushirou +2026-01-08 16:15:51,295 - INFO - Searching Mangadex for: tsubaki jushirou +2026-01-08 16:15:51,606 - INFO - Searching metadata for: tsubaki jushirou +2026-01-08 16:15:51,785 - INFO - Fetching metadata from: https://nhentai.net/g/618947/ +2026-01-08 16:15:52,087 - INFO - Updating metadata for: ramanda +2026-01-08 16:15:52,088 - INFO - Searching Mangadex for: ramanda +2026-01-08 16:15:52,394 - INFO - Searching metadata for: ramanda +2026-01-08 16:15:52,593 - INFO - Fetching metadata from: https://nhentai.net/g/620708/ +2026-01-08 16:15:52,921 - INFO - Updating metadata for: takaku_tubby +2026-01-08 16:15:52,921 - INFO - Searching Mangadex for: takaku tubby +2026-01-08 16:15:53,247 - INFO - Searching metadata for: takaku tubby +2026-01-08 16:15:53,400 - INFO - Fetching metadata from: https://nhentai.net/g/607513/ +2026-01-08 16:15:53,572 - INFO - Updating metadata for: Aonagi_Nobu +2026-01-08 16:15:53,572 - INFO - Searching Mangadex for: Aonagi Nobu +2026-01-08 16:15:53,882 - INFO - Searching metadata for: Aonagi Nobu +2026-01-08 16:15:54,022 - INFO - Searching Hentai2Read for: Aonagi Nobu +2026-01-08 16:15:54,416 - INFO - Searching MangaUpdates for: Aonagi Nobu +2026-01-08 16:15:56,378 - INFO - Updating metadata for: Hachinuki_Tessei +2026-01-08 16:15:56,379 - INFO - Searching Mangadex for: Hachinuki Tessei +2026-01-08 16:15:56,726 - INFO - Searching metadata for: Hachinuki Tessei +2026-01-08 16:15:56,868 - INFO - Searching Hentai2Read for: Hachinuki Tessei +2026-01-08 16:15:57,253 - INFO - Searching MangaUpdates for: Hachinuki Tessei +2026-01-08 16:15:58,602 - INFO - Updating metadata for: huwahuwa_raidou +2026-01-08 16:15:58,603 - INFO - Searching Mangadex for: huwahuwa raidou +2026-01-08 16:15:58,924 - INFO - Searching metadata for: huwahuwa raidou +2026-01-08 16:15:59,078 - INFO - Fetching metadata from: https://nhentai.net/g/612670/ +2026-01-08 16:15:59,350 - INFO - Updating metadata for: giga +2026-01-08 16:15:59,350 - INFO - Searching Mangadex for: giga +2026-01-08 16:15:59,693 - INFO - Updating metadata for: toku +2026-01-08 16:15:59,693 - INFO - Searching Mangadex for: toku +2026-01-08 16:16:00,064 - INFO - Updating metadata for: dadacco_racco-chan +2026-01-08 16:16:00,064 - INFO - Searching Mangadex for: dadacco racco-chan +2026-01-08 16:16:00,431 - INFO - Searching metadata for: dadacco racco-chan +2026-01-08 16:16:00,584 - INFO - Fetching metadata from: https://nhentai.net/g/593003/ +2026-01-08 16:16:00,816 - INFO - Updating metadata for: Gomikasu_Tarou +2026-01-08 16:16:00,816 - INFO - Searching Mangadex for: Gomikasu Tarou +2026-01-08 16:16:01,144 - INFO - Searching metadata for: Gomikasu Tarou +2026-01-08 16:16:01,348 - INFO - Fetching metadata from: https://nhentai.net/g/533286/ +2026-01-08 16:16:01,528 - INFO - Updating metadata for: urico_take +2026-01-08 16:16:01,528 - INFO - Searching Mangadex for: urico take +2026-01-08 16:16:01,831 - INFO - Searching metadata for: urico take +2026-01-08 16:16:02,012 - INFO - Fetching metadata from: https://nhentai.net/g/615347/ +2026-01-08 16:16:02,199 - INFO - Updating metadata for: Hakukoukai_(Shiramizu_Mizuchi) +2026-01-08 16:16:02,199 - INFO - Searching Mangadex for: Hakukoukai (Shiramizu Mizuchi) +2026-01-08 16:16:02,629 - INFO - Searching metadata for: Hakukoukai (Shiramizu Mizuchi) +2026-01-08 16:16:02,801 - INFO - Fetching metadata from: https://nhentai.net/g/552930/ +2026-01-08 16:16:02,995 - INFO - Updating metadata for: bu-chan +2026-01-08 16:16:02,995 - INFO - Searching Mangadex for: bu-chan +2026-01-08 16:16:03,348 - INFO - Updating metadata for: leveen +2026-01-08 16:16:03,348 - INFO - Searching Mangadex for: leveen +2026-01-08 16:16:03,685 - INFO - Searching metadata for: leveen +2026-01-08 16:16:03,830 - INFO - Fetching metadata from: https://nhentai.net/g/601115/ +2026-01-08 16:16:04,227 - INFO - Updating metadata for: pastaskii +2026-01-08 16:16:04,227 - INFO - Searching Mangadex for: pastaskii +2026-01-08 16:16:04,521 - INFO - Searching metadata for: pastaskii +2026-01-08 16:16:04,663 - INFO - Fetching metadata from: https://nhentai.net/g/619734/ +2026-01-08 16:16:04,827 - INFO - Updating metadata for: acbins +2026-01-08 16:16:04,827 - INFO - Searching Mangadex for: acbins +2026-01-08 16:16:05,203 - INFO - Searching metadata for: acbins +2026-01-08 16:16:05,372 - INFO - Fetching metadata from: https://nhentai.net/g/619667/ +2026-01-08 16:16:05,531 - INFO - Updating metadata for: rage +2026-01-08 16:16:05,531 - INFO - Searching Mangadex for: rage +2026-01-08 16:16:05,860 - INFO - Updating metadata for: morimiya_masayuki +2026-01-08 16:16:05,860 - INFO - Searching Mangadex for: morimiya masayuki +2026-01-08 16:16:06,196 - INFO - Searching metadata for: morimiya masayuki +2026-01-08 16:16:06,373 - INFO - Fetching metadata from: https://nhentai.net/g/617996/ +2026-01-08 16:16:06,606 - INFO - Updating metadata for: ruzi +2026-01-08 16:16:06,606 - INFO - Searching Mangadex for: ruzi +2026-01-08 16:16:06,898 - INFO - Searching metadata for: ruzi +2026-01-08 16:16:07,051 - INFO - Fetching metadata from: https://nhentai.net/g/613821/ +2026-01-08 16:16:07,338 - INFO - Updating metadata for: drain +2026-01-08 16:16:07,338 - INFO - Searching Mangadex for: drain +2026-01-08 16:16:07,703 - INFO - Updating metadata for: Shiki +2026-01-08 16:16:07,703 - INFO - Searching Mangadex for: Shiki +2026-01-08 16:16:08,028 - INFO - Updating metadata for: 92m +2026-01-08 16:16:08,029 - INFO - Searching Mangadex for: 92m +2026-01-08 16:16:08,329 - INFO - Searching metadata for: 92m +2026-01-08 16:16:08,493 - INFO - Fetching metadata from: https://nhentai.net/g/617850/ +2026-01-08 16:16:08,709 - INFO - Updating metadata for: hiiragi_hajime +2026-01-08 16:16:08,709 - INFO - Searching Mangadex for: hiiragi hajime +2026-01-08 16:16:09,038 - INFO - Searching metadata for: hiiragi hajime +2026-01-08 16:16:09,250 - INFO - Fetching metadata from: https://nhentai.net/g/619463/ +2026-01-08 16:16:09,445 - INFO - Updating metadata for: n.o._chachamaru +2026-01-08 16:16:09,446 - INFO - Searching Mangadex for: n.o. chachamaru +2026-01-08 16:16:09,788 - INFO - Searching metadata for: n.o. chachamaru +2026-01-08 16:16:10,055 - INFO - Fetching metadata from: https://nhentai.net/g/604483/ +2026-01-08 16:16:10,247 - INFO - Updating metadata for: mukoujima_tenro +2026-01-08 16:16:10,247 - INFO - Searching Mangadex for: mukoujima tenro +2026-01-08 16:16:10,571 - INFO - Searching metadata for: mukoujima tenro +2026-01-08 16:16:10,726 - INFO - Fetching metadata from: https://nhentai.net/g/617181/ +2026-01-08 16:16:10,913 - INFO - Updating metadata for: shimantogawa +2026-01-08 16:16:10,914 - INFO - Searching Mangadex for: shimantogawa +2026-01-08 16:16:11,220 - INFO - Searching metadata for: shimantogawa +2026-01-08 16:16:11,367 - INFO - Fetching metadata from: https://nhentai.net/g/573905/ +2026-01-08 16:16:11,548 - INFO - Updating metadata for: sake-chan +2026-01-08 16:16:11,548 - INFO - Searching Mangadex for: sake-chan +2026-01-08 16:16:11,896 - INFO - Updating metadata for: kikunosukemaru +2026-01-08 16:16:11,897 - INFO - Searching Mangadex for: kikunosukemaru +2026-01-08 16:16:12,188 - INFO - Searching metadata for: kikunosukemaru +2026-01-08 16:16:12,357 - INFO - Fetching metadata from: https://nhentai.net/g/597665/ +2026-01-08 16:16:12,548 - INFO - Updating metadata for: nt_robo +2026-01-08 16:16:12,548 - INFO - Searching Mangadex for: nt robo +2026-01-08 16:16:12,849 - INFO - Searching metadata for: nt robo +2026-01-08 16:16:13,017 - INFO - Fetching metadata from: https://nhentai.net/g/587483/ +2026-01-08 16:16:13,279 - INFO - Updating metadata for: kuroishi_ringo +2026-01-08 16:16:13,280 - INFO - Searching Mangadex for: kuroishi ringo +2026-01-08 16:16:13,600 - INFO - Searching metadata for: kuroishi ringo +2026-01-08 16:16:13,764 - INFO - Fetching metadata from: https://nhentai.net/g/618477/ +2026-01-08 16:16:13,980 - INFO - Updating metadata for: OCHEN_(오첸) +2026-01-08 16:16:13,981 - INFO - Searching Mangadex for: OCHEN (오첸) +2026-01-08 16:16:14,291 - INFO - Searching metadata for: OCHEN (오첸) +2026-01-08 16:16:14,416 - INFO - Searching Hentai2Read for: OCHEN (오첸) +2026-01-08 16:16:14,790 - INFO - Searching MangaUpdates for: OCHEN (오첸) +2026-01-08 16:16:15,797 - INFO - Updating metadata for: rim +2026-01-08 16:16:15,798 - INFO - Searching Mangadex for: rim +2026-01-08 16:16:16,132 - INFO - Updating metadata for: Emori_Uki +2026-01-08 16:16:16,132 - INFO - Searching Mangadex for: Emori Uki +2026-01-08 16:16:16,476 - INFO - Updating metadata for: pino +2026-01-08 16:16:16,476 - INFO - Searching Mangadex for: pino +2026-01-08 16:16:16,849 - INFO - Updating metadata for: toono_esuke +2026-01-08 16:16:16,850 - INFO - Searching Mangadex for: toono esuke +2026-01-08 16:16:17,172 - INFO - Searching metadata for: toono esuke +2026-01-08 16:16:17,341 - INFO - Fetching metadata from: https://nhentai.net/g/618065/ +2026-01-08 16:16:17,541 - INFO - Updating metadata for: Shirono_Mahiro +2026-01-08 16:16:17,542 - INFO - Searching Mangadex for: Shirono Mahiro +2026-01-08 16:16:17,872 - INFO - Searching metadata for: Shirono Mahiro +2026-01-08 16:16:18,040 - INFO - Fetching metadata from: https://nhentai.net/g/577056/ +2026-01-08 16:16:18,342 - INFO - Updating metadata for: kakugari_kyoudai +2026-01-08 16:16:18,343 - INFO - Searching Mangadex for: kakugari kyoudai +2026-01-08 16:16:18,676 - INFO - Updating metadata for: 5t +2026-01-08 16:16:18,678 - INFO - Searching Mangadex for: 5t +2026-01-08 16:16:19,035 - INFO - Updating metadata for: unou +2026-01-08 16:16:19,036 - INFO - Searching Mangadex for: unou +2026-01-08 16:16:19,368 - INFO - Searching metadata for: unou +2026-01-08 16:16:19,526 - INFO - Fetching metadata from: https://nhentai.net/g/609744/ +2026-01-08 16:16:19,717 - INFO - Updating metadata for: Tawawa_Delivery +2026-01-08 16:16:19,718 - INFO - Searching Mangadex for: Tawawa Delivery +2026-01-08 16:16:20,043 - INFO - Searching metadata for: Tawawa Delivery +2026-01-08 16:16:20,793 - INFO - Fetching metadata from: https://nhentai.net/g/505265/ +2026-01-08 16:16:21,059 - INFO - Updating metadata for: takashima +2026-01-08 16:16:21,060 - INFO - Searching Mangadex for: takashima +2026-01-08 16:16:21,400 - INFO - Updating metadata for: hiroki00 +2026-01-08 16:16:21,400 - INFO - Searching Mangadex for: hiroki00 +2026-01-08 16:16:21,716 - INFO - Searching metadata for: hiroki00 +2026-01-08 16:16:21,887 - INFO - Fetching metadata from: https://nhentai.net/g/619456/ +2026-01-08 16:16:22,056 - INFO - Updating metadata for: Nishikawa_Kou +2026-01-08 16:16:22,057 - INFO - Searching Mangadex for: Nishikawa Kou +2026-01-08 16:16:22,372 - INFO - Searching metadata for: Nishikawa Kou +2026-01-08 16:16:22,570 - INFO - Fetching metadata from: https://nhentai.net/g/620495/ +2026-01-08 16:16:22,877 - INFO - Updating metadata for: edogawa_nitro_king +2026-01-08 16:16:22,877 - INFO - Searching Mangadex for: edogawa nitro king +2026-01-08 16:16:23,209 - INFO - Searching metadata for: edogawa nitro king +2026-01-08 16:16:23,384 - INFO - Fetching metadata from: https://nhentai.net/g/614173/ +2026-01-08 16:16:23,560 - INFO - Updating metadata for: furaimai +2026-01-08 16:16:23,560 - INFO - Searching Mangadex for: furaimai +2026-01-08 16:16:23,853 - INFO - Searching metadata for: furaimai +2026-01-08 16:16:24,010 - INFO - Fetching metadata from: https://nhentai.net/g/618565/ +2026-01-08 16:16:24,209 - INFO - Updating metadata for: k8on +2026-01-08 16:16:24,209 - INFO - Searching Mangadex for: k8on +2026-01-08 16:16:24,527 - INFO - Searching metadata for: k8on +2026-01-08 16:16:24,711 - INFO - Fetching metadata from: https://nhentai.net/g/602348/ +2026-01-08 16:16:24,909 - INFO - Updating metadata for: tirotata +2026-01-08 16:16:24,909 - INFO - Searching Mangadex for: tirotata +2026-01-08 16:16:25,227 - INFO - Searching metadata for: tirotata +2026-01-08 16:16:25,423 - INFO - Fetching metadata from: https://nhentai.net/g/619765/ +2026-01-08 16:16:25,591 - INFO - Updating metadata for: uzukinoko +2026-01-08 16:16:25,591 - INFO - Searching Mangadex for: uzukinoko +2026-01-08 16:16:25,888 - INFO - Searching metadata for: uzukinoko +2026-01-08 16:16:26,051 - INFO - Fetching metadata from: https://nhentai.net/g/578650/ +2026-01-08 16:16:26,272 - INFO - Updating metadata for: cessa +2026-01-08 16:16:26,272 - INFO - Searching Mangadex for: cessa +2026-01-08 16:16:26,615 - INFO - Searching metadata for: cessa +2026-01-08 16:16:26,773 - INFO - Fetching metadata from: https://nhentai.net/g/611272/ +2026-01-08 16:16:26,945 - INFO - Updating metadata for: shuumatsu +2026-01-08 16:16:26,945 - INFO - Searching Mangadex for: shuumatsu +2026-01-08 16:16:27,293 - INFO - Updating metadata for: nakajima_fumio +2026-01-08 16:16:27,293 - INFO - Searching Mangadex for: nakajima fumio +2026-01-08 16:16:27,618 - INFO - Searching metadata for: nakajima fumio +2026-01-08 16:16:27,789 - INFO - Fetching metadata from: https://nhentai.net/g/608752/ +2026-01-08 16:16:28,056 - INFO - Updating metadata for: tensei-kun +2026-01-08 16:16:28,056 - INFO - Searching Mangadex for: tensei-kun +2026-01-08 16:16:28,401 - INFO - Updating metadata for: awan +2026-01-08 16:16:28,401 - INFO - Searching Mangadex for: awan +2026-01-08 16:16:28,776 - INFO - Updating metadata for: taka +2026-01-08 16:16:28,776 - INFO - Searching Mangadex for: taka +2026-01-08 16:16:29,096 - INFO - Updating metadata for: echigoya_takeru +2026-01-08 16:16:29,096 - INFO - Searching Mangadex for: echigoya takeru +2026-01-08 16:16:29,422 - INFO - Searching metadata for: echigoya takeru +2026-01-08 16:16:29,583 - INFO - Fetching metadata from: https://nhentai.net/g/612669/ +2026-01-08 16:16:30,119 - INFO - Updating metadata for: abubu +2026-01-08 16:16:30,120 - INFO - Searching Mangadex for: abubu +2026-01-08 16:16:30,421 - INFO - Searching metadata for: abubu +2026-01-08 16:16:30,578 - INFO - Fetching metadata from: https://nhentai.net/g/604198/ +2026-01-08 16:16:30,781 - INFO - Updating metadata for: hon +2026-01-08 16:16:30,781 - INFO - Searching Mangadex for: hon +2026-01-08 16:16:31,154 - INFO - Updating metadata for: kondo_yume +2026-01-08 16:16:31,155 - INFO - Searching Mangadex for: kondo yume +2026-01-08 16:16:31,535 - INFO - Updating metadata for: ayakase_chiyoko +2026-01-08 16:16:31,535 - INFO - Searching Mangadex for: ayakase chiyoko +2026-01-08 16:16:31,863 - INFO - Searching metadata for: ayakase chiyoko +2026-01-08 16:16:32,031 - INFO - Fetching metadata from: https://nhentai.net/g/617539/ +2026-01-08 16:16:32,395 - INFO - Updating metadata for: akikusa_peperon +2026-01-08 16:16:32,395 - INFO - Searching Mangadex for: akikusa peperon +2026-01-08 16:16:32,692 - INFO - Searching metadata for: akikusa peperon +2026-01-08 16:16:32,853 - INFO - Fetching metadata from: https://nhentai.net/g/619612/ +2026-01-08 16:16:33,034 - INFO - Updating metadata for: inomoto_rikako +2026-01-08 16:16:33,035 - INFO - Searching Mangadex for: inomoto rikako +2026-01-08 16:16:33,368 - INFO - Updating metadata for: kurokoshi_you +2026-01-08 16:16:33,368 - INFO - Searching Mangadex for: kurokoshi you +2026-01-08 16:16:33,690 - INFO - Searching metadata for: kurokoshi you +2026-01-08 16:16:33,870 - INFO - Fetching metadata from: https://nhentai.net/g/582641/ +2026-01-08 16:16:34,064 - INFO - Updating metadata for: enryu +2026-01-08 16:16:34,065 - INFO - Searching Mangadex for: enryu +2026-01-08 16:16:34,407 - INFO - Searching metadata for: enryu +2026-01-08 16:16:34,577 - INFO - Fetching metadata from: https://nhentai.net/g/617678/ +2026-01-08 16:16:34,754 - INFO - Updating metadata for: hiroya +2026-01-08 16:16:34,754 - INFO - Searching Mangadex for: hiroya +2026-01-08 16:16:35,104 - INFO - Updating metadata for: sakida_saki +2026-01-08 16:16:35,105 - INFO - Searching Mangadex for: sakida saki +2026-01-08 16:16:35,465 - INFO - Updating metadata for: oritsuki_fumio +2026-01-08 16:16:35,465 - INFO - Searching Mangadex for: oritsuki fumio +2026-01-08 16:16:35,788 - INFO - Searching metadata for: oritsuki fumio +2026-01-08 16:16:35,958 - INFO - Fetching metadata from: https://nhentai.net/g/616627/ +2026-01-08 16:16:36,138 - INFO - Updating metadata for: etuzan_jakusui +2026-01-08 16:16:36,138 - INFO - Searching Mangadex for: etuzan jakusui +2026-01-08 16:16:36,441 - INFO - Searching metadata for: etuzan jakusui +2026-01-08 16:16:36,624 - INFO - Fetching metadata from: https://nhentai.net/g/618367/ +2026-01-08 16:16:36,856 - INFO - Updating metadata for: Oroshi_Ponzu +2026-01-08 16:16:36,857 - INFO - Searching Mangadex for: Oroshi Ponzu +2026-01-08 16:16:37,202 - INFO - Searching metadata for: Oroshi Ponzu +2026-01-08 16:16:37,357 - INFO - Fetching metadata from: https://nhentai.net/g/585842/ +2026-01-08 16:16:37,554 - INFO - Updating metadata for: R_Koubou_(Ruzi) +2026-01-08 16:16:37,554 - INFO - Searching Mangadex for: R Koubou (Ruzi) +2026-01-08 16:16:37,967 - INFO - Searching metadata for: R Koubou (Ruzi) +2026-01-08 16:16:38,211 - INFO - Fetching metadata from: https://nhentai.net/g/613821/ +2026-01-08 16:16:38,395 - INFO - Updating metadata for: kirimoto_yuuji +2026-01-08 16:16:38,395 - INFO - Searching Mangadex for: kirimoto yuuji +2026-01-08 16:16:38,703 - INFO - Searching metadata for: kirimoto yuuji +2026-01-08 16:16:38,893 - INFO - Fetching metadata from: https://nhentai.net/g/612350/ +2026-01-08 16:16:39,086 - INFO - Updating metadata for: drachef +2026-01-08 16:16:39,086 - INFO - Searching Mangadex for: drachef +2026-01-08 16:16:39,392 - INFO - Searching metadata for: drachef +2026-01-08 16:16:39,594 - INFO - Fetching metadata from: https://nhentai.net/g/615455/ +2026-01-08 16:16:39,939 - INFO - Updating metadata for: kouda_tomohiro +2026-01-08 16:16:39,939 - INFO - Searching Mangadex for: kouda tomohiro +2026-01-08 16:16:40,241 - INFO - Searching metadata for: kouda tomohiro +2026-01-08 16:16:40,426 - INFO - Fetching metadata from: https://nhentai.net/g/604149/ +2026-01-08 16:16:40,596 - INFO - Updating metadata for: toyama_teiji +2026-01-08 16:16:40,596 - INFO - Searching Mangadex for: toyama teiji +2026-01-08 16:16:40,906 - INFO - Searching metadata for: toyama teiji +2026-01-08 16:16:41,099 - INFO - Fetching metadata from: https://nhentai.net/g/602106/ +2026-01-08 16:16:41,277 - INFO - Updating metadata for: akabane_aomori +2026-01-08 16:16:41,277 - INFO - Searching Mangadex for: akabane aomori +2026-01-08 16:16:41,589 - INFO - Searching metadata for: akabane aomori +2026-01-08 16:16:41,798 - INFO - Fetching metadata from: https://nhentai.net/g/618338/ +2026-01-08 16:16:42,015 - INFO - Updating metadata for: super_zombie +2026-01-08 16:16:42,015 - INFO - Searching Mangadex for: super zombie +2026-01-08 16:16:42,366 - INFO - Updating metadata for: arai_kei +2026-01-08 16:16:42,366 - INFO - Searching Mangadex for: arai kei +2026-01-08 16:16:42,685 - INFO - Updating metadata for: neko_no_mimi +2026-01-08 16:16:42,685 - INFO - Searching Mangadex for: neko no mimi +2026-01-08 16:16:42,990 - INFO - Searching metadata for: neko no mimi +2026-01-08 16:16:43,302 - INFO - Fetching metadata from: https://nhentai.net/g/618775/ +2026-01-08 16:16:43,541 - INFO - Updating metadata for: momokumo +2026-01-08 16:16:43,542 - INFO - Searching Mangadex for: momokumo +2026-01-08 16:16:43,835 - INFO - Searching metadata for: momokumo +2026-01-08 16:16:43,993 - INFO - Fetching metadata from: https://nhentai.net/g/617427/ +2026-01-08 16:16:44,175 - INFO - Updating metadata for: terasu_mc +2026-01-08 16:16:44,176 - INFO - Searching Mangadex for: terasu mc +2026-01-08 16:16:44,505 - INFO - Searching metadata for: terasu mc +2026-01-08 16:16:44,746 - INFO - Fetching metadata from: https://nhentai.net/g/619926/ +2026-01-08 16:16:44,913 - INFO - Updating metadata for: Kuga_Tsuniya +2026-01-08 16:16:44,914 - INFO - Searching Mangadex for: Kuga Tsuniya +2026-01-08 16:16:45,242 - INFO - Searching metadata for: Kuga Tsuniya +2026-01-08 16:16:45,402 - INFO - Fetching metadata from: https://nhentai.net/g/620863/ +2026-01-08 16:16:45,587 - INFO - Updating metadata for: hasekura_noise +2026-01-08 16:16:45,587 - INFO - Searching Mangadex for: hasekura noise +2026-01-08 16:16:45,902 - INFO - Searching metadata for: hasekura noise +2026-01-08 16:16:46,055 - INFO - Fetching metadata from: https://nhentai.net/g/620694/ +2026-01-08 16:16:46,216 - INFO - Updating metadata for: sakagami_umi +2026-01-08 16:16:46,216 - INFO - Searching Mangadex for: sakagami umi +2026-01-08 16:16:46,595 - INFO - Searching metadata for: sakagami umi +2026-01-08 16:16:46,834 - INFO - Fetching metadata from: https://nhentai.net/g/620990/ +2026-01-08 16:16:47,017 - INFO - Updating metadata for: shijima_yukio +2026-01-08 16:16:47,017 - INFO - Searching Mangadex for: shijima yukio +2026-01-08 16:16:47,349 - INFO - Searching metadata for: shijima yukio +2026-01-08 16:16:47,548 - INFO - Fetching metadata from: https://nhentai.net/g/621170/ +2026-01-08 16:16:47,855 - INFO - Updating metadata for: miyabi_tsuzuru +2026-01-08 16:16:47,856 - INFO - Searching Mangadex for: miyabi tsuzuru +2026-01-08 16:16:48,157 - INFO - Searching metadata for: miyabi tsuzuru +2026-01-08 16:16:48,335 - INFO - Fetching metadata from: https://nhentai.net/g/584210/ +2026-01-08 16:16:48,500 - INFO - Updating metadata for: ken_sogen +2026-01-08 16:16:48,500 - INFO - Searching Mangadex for: ken sogen +2026-01-08 16:16:48,824 - INFO - Searching metadata for: ken sogen +2026-01-08 16:16:49,015 - INFO - Fetching metadata from: https://nhentai.net/g/580485/ +2026-01-08 16:16:49,283 - INFO - Updating metadata for: puranpuman +2026-01-08 16:16:49,284 - INFO - Searching Mangadex for: puranpuman +2026-01-08 16:16:49,582 - INFO - Searching metadata for: puranpuman +2026-01-08 16:16:49,754 - INFO - Fetching metadata from: https://nhentai.net/g/618277/ +2026-01-08 16:16:50,036 - INFO - Updating metadata for: akata_izuki +2026-01-08 16:16:50,036 - INFO - Searching Mangadex for: akata izuki +2026-01-08 16:16:50,387 - INFO - Searching metadata for: akata izuki +2026-01-08 16:16:50,547 - INFO - Fetching metadata from: https://nhentai.net/g/603198/ +2026-01-08 16:16:50,733 - INFO - Updating metadata for: rocket_monkey +2026-01-08 16:16:50,734 - INFO - Searching Mangadex for: rocket monkey +2026-01-08 16:16:51,103 - INFO - Updating metadata for: yao +2026-01-08 16:16:51,103 - INFO - Searching Mangadex for: yao +2026-01-08 16:16:51,428 - INFO - Updating metadata for: creople +2026-01-08 16:16:51,428 - INFO - Searching Mangadex for: creople +2026-01-08 16:16:51,756 - INFO - Searching metadata for: creople +2026-01-08 16:16:51,914 - INFO - Fetching metadata from: https://nhentai.net/g/607624/ +2026-01-08 16:16:52,136 - INFO - Updating metadata for: kakuninii +2026-01-08 16:16:52,136 - INFO - Searching Mangadex for: kakuninii +2026-01-08 16:16:52,447 - INFO - Searching metadata for: kakuninii +2026-01-08 16:16:52,642 - INFO - Fetching metadata from: https://nhentai.net/g/621281/ +2026-01-08 16:16:52,850 - INFO - Updating metadata for: date +2026-01-08 16:16:52,851 - INFO - Searching Mangadex for: date +2026-01-08 16:16:53,214 - INFO - Updating metadata for: chanpon_miyabi +2026-01-08 16:16:53,215 - INFO - Searching Mangadex for: chanpon miyabi +2026-01-08 16:16:53,537 - INFO - Searching metadata for: chanpon miyabi +2026-01-08 16:16:53,722 - INFO - Fetching metadata from: https://nhentai.net/g/567713/ +2026-01-08 16:16:53,890 - INFO - Updating metadata for: nas-o +2026-01-08 16:16:53,890 - INFO - Searching Mangadex for: nas-o +2026-01-08 16:16:54,253 - INFO - Updating metadata for: yuna +2026-01-08 16:16:54,253 - INFO - Searching Mangadex for: yuna +2026-01-08 16:16:54,620 - INFO - Updating metadata for: asuhiro +2026-01-08 16:16:54,620 - INFO - Searching Mangadex for: asuhiro +2026-01-08 16:16:54,931 - INFO - Searching metadata for: asuhiro +2026-01-08 16:16:55,099 - INFO - Fetching metadata from: https://nhentai.net/g/608815/ +2026-01-08 16:16:55,265 - INFO - Updating metadata for: akatsuki_myuuto +2026-01-08 16:16:55,266 - INFO - Searching Mangadex for: akatsuki myuuto +2026-01-08 16:16:55,618 - INFO - Searching metadata for: akatsuki myuuto +2026-01-08 16:16:55,779 - INFO - Fetching metadata from: https://nhentai.net/g/619320/ +2026-01-08 16:16:56,159 - INFO - Updating metadata for: nakano_sora +2026-01-08 16:16:56,159 - INFO - Searching Mangadex for: nakano sora +2026-01-08 16:16:56,478 - INFO - Searching metadata for: nakano sora +2026-01-08 16:16:56,673 - INFO - Fetching metadata from: https://nhentai.net/g/588692/ +2026-01-08 16:16:56,981 - INFO - Updating metadata for: aburamachine +2026-01-08 16:16:56,981 - INFO - Searching Mangadex for: aburamachine +2026-01-08 16:16:57,316 - INFO - Searching metadata for: aburamachine +2026-01-08 16:16:57,492 - INFO - Fetching metadata from: https://nhentai.net/g/620128/ +2026-01-08 16:16:57,697 - INFO - Updating metadata for: jairou +2026-01-08 16:16:57,697 - INFO - Searching Mangadex for: jairou +2026-01-08 16:16:58,035 - INFO - Searching metadata for: jairou +2026-01-08 16:16:58,195 - INFO - Fetching metadata from: https://nhentai.net/g/611872/ +2026-01-08 16:16:58,385 - INFO - Updating metadata for: qdou_kei +2026-01-08 16:16:58,385 - INFO - Searching Mangadex for: qdou kei +2026-01-08 16:16:58,728 - INFO - Searching metadata for: qdou kei +2026-01-08 16:16:58,910 - INFO - Fetching metadata from: https://nhentai.net/g/571239/ +2026-01-08 16:16:59,082 - INFO - Updating metadata for: mafuyu_hemp +2026-01-08 16:16:59,083 - INFO - Searching Mangadex for: mafuyu hemp +2026-01-08 16:16:59,418 - INFO - Searching metadata for: mafuyu hemp +2026-01-08 16:16:59,601 - INFO - Fetching metadata from: https://nhentai.net/g/616826/ +2026-01-08 16:16:59,844 - INFO - Updating metadata for: sion +2026-01-08 16:16:59,845 - INFO - Searching Mangadex for: sion +2026-01-08 16:17:00,163 - INFO - Updating metadata for: shiun +2026-01-08 16:17:00,163 - INFO - Searching Mangadex for: shiun +2026-01-08 16:17:00,500 - INFO - Updating metadata for: hanpatsu_zokusei +2026-01-08 16:17:00,501 - INFO - Searching Mangadex for: hanpatsu zokusei +2026-01-08 16:17:00,831 - INFO - Searching metadata for: hanpatsu zokusei +2026-01-08 16:17:00,974 - INFO - Fetching metadata from: https://nhentai.net/g/524952/ +2026-01-08 16:17:01,194 - INFO - Updating metadata for: muneshiro +2026-01-08 16:17:01,195 - INFO - Searching Mangadex for: muneshiro +2026-01-08 16:17:01,514 - INFO - Searching metadata for: muneshiro +2026-01-08 16:17:01,715 - INFO - Fetching metadata from: https://nhentai.net/g/620291/ +2026-01-08 16:17:01,920 - INFO - Updating metadata for: SV6DBM~R +2026-01-08 16:17:01,920 - INFO - Searching Mangadex for: SV6DBM~R +2026-01-08 16:17:02,236 - INFO - Searching metadata for: SV6DBM~R +2026-01-08 16:17:02,367 - INFO - Searching Hentai2Read for: SV6DBM~R +2026-01-08 16:17:02,739 - INFO - Searching MangaUpdates for: SV6DBM~R +2026-01-08 16:17:03,363 - INFO - Updating metadata for: ohbaric +2026-01-08 16:17:03,364 - INFO - Searching Mangadex for: ohbaric +2026-01-08 16:17:03,687 - INFO - Searching metadata for: ohbaric +2026-01-08 16:17:03,869 - INFO - Fetching metadata from: https://nhentai.net/g/620753/ +2026-01-08 16:17:04,083 - INFO - Updating metadata for: natsuzo +2026-01-08 16:17:04,083 - INFO - Searching Mangadex for: natsuzo +2026-01-08 16:17:04,441 - INFO - Updating metadata for: kuronyan +2026-01-08 16:17:04,441 - INFO - Searching Mangadex for: kuronyan +2026-01-08 16:17:04,761 - INFO - Searching metadata for: kuronyan +2026-01-08 16:17:04,930 - INFO - Fetching metadata from: https://nhentai.net/g/591034/ +2026-01-08 16:17:05,099 - INFO - Updating metadata for: gaburi +2026-01-08 16:17:05,100 - INFO - Searching Mangadex for: gaburi +2026-01-08 16:17:05,424 - INFO - Searching metadata for: gaburi +2026-01-08 16:17:05,615 - INFO - Fetching metadata from: https://nhentai.net/g/620993/ +2026-01-08 16:17:05,803 - INFO - Updating metadata for: kurogane_kenn +2026-01-08 16:17:05,804 - INFO - Searching Mangadex for: kurogane kenn +2026-01-08 16:17:06,126 - INFO - Searching metadata for: kurogane kenn +2026-01-08 16:17:06,311 - INFO - Fetching metadata from: https://nhentai.net/g/620808/ +2026-01-08 16:17:06,497 - INFO - Updating metadata for: noripachi +2026-01-08 16:17:06,497 - INFO - Searching Mangadex for: noripachi +2026-01-08 16:17:06,825 - INFO - Searching metadata for: noripachi +2026-01-08 16:17:07,005 - INFO - Fetching metadata from: https://nhentai.net/g/620060/ +2026-01-08 16:17:07,191 - INFO - Updating metadata for: Mata_Ashita_(Oohira_Sunset) +2026-01-08 16:17:07,192 - INFO - Searching Mangadex for: Mata Ashita (Oohira Sunset) +2026-01-08 16:17:07,587 - INFO - Searching metadata for: Mata Ashita (Oohira Sunset) +2026-01-08 16:17:07,819 - INFO - Fetching metadata from: https://nhentai.net/g/621205/ +2026-01-08 16:17:08,008 - INFO - Updating metadata for: pija +2026-01-08 16:17:08,008 - INFO - Searching Mangadex for: pija +2026-01-08 16:17:08,303 - INFO - Searching metadata for: pija +2026-01-08 16:17:08,480 - INFO - Fetching metadata from: https://nhentai.net/g/619230/ +2026-01-08 16:17:08,692 - INFO - Updating metadata for: taba +2026-01-08 16:17:08,692 - INFO - Searching Mangadex for: taba +2026-01-08 16:17:09,040 - INFO - Updating metadata for: hanabi +2026-01-08 16:17:09,040 - INFO - Searching Mangadex for: hanabi +2026-01-08 16:17:09,375 - INFO - Updating metadata for: ice +2026-01-08 16:17:09,375 - INFO - Searching Mangadex for: ice +2026-01-08 16:17:09,752 - INFO - Updating metadata for: kawamori_misaki +2026-01-08 16:17:09,753 - INFO - Searching Mangadex for: kawamori misaki +2026-01-08 16:17:10,083 - INFO - Searching metadata for: kawamori misaki +2026-01-08 16:17:10,250 - INFO - Fetching metadata from: https://nhentai.net/g/620618/ +2026-01-08 16:17:10,417 - INFO - Updating metadata for: mogudan +2026-01-08 16:17:10,417 - INFO - Searching Mangadex for: mogudan +2026-01-08 16:17:10,744 - INFO - Searching metadata for: mogudan +2026-01-08 16:17:10,902 - INFO - Fetching metadata from: https://nhentai.net/g/619279/ +2026-01-08 16:17:11,184 - INFO - Updating metadata for: mr.peanut +2026-01-08 16:17:11,184 - INFO - Searching Mangadex for: mr.peanut +2026-01-08 16:17:11,489 - INFO - Searching metadata for: mr.peanut +2026-01-08 16:17:11,656 - INFO - Fetching metadata from: https://nhentai.net/g/589529/ +2026-01-08 16:17:11,826 - INFO - Updating metadata for: ama_natsuna +2026-01-08 16:17:11,827 - INFO - Searching Mangadex for: ama natsuna +2026-01-08 16:17:12,135 - INFO - Searching metadata for: ama natsuna +2026-01-08 16:17:12,347 - INFO - Fetching metadata from: https://nhentai.net/g/615854/ +2026-01-08 16:17:12,553 - INFO - Updating metadata for: karukiya +2026-01-08 16:17:12,553 - INFO - Searching Mangadex for: karukiya +2026-01-08 16:17:12,858 - INFO - Searching metadata for: karukiya +2026-01-08 16:17:13,032 - INFO - Fetching metadata from: https://nhentai.net/g/576517/ +2026-01-08 16:17:13,235 - INFO - Updating metadata for: ohtomo_takuji +2026-01-08 16:17:13,235 - INFO - Searching Mangadex for: ohtomo takuji +2026-01-08 16:17:13,566 - INFO - Searching metadata for: ohtomo takuji +2026-01-08 16:17:13,743 - INFO - Fetching metadata from: https://nhentai.net/g/599723/ +2026-01-08 16:17:13,930 - INFO - Updating metadata for: minegami_aya +2026-01-08 16:17:13,931 - INFO - Searching Mangadex for: minegami aya +2026-01-08 16:17:14,257 - INFO - Searching metadata for: minegami aya +2026-01-08 16:17:14,451 - INFO - Fetching metadata from: https://nhentai.net/g/620296/ +2026-01-08 16:17:14,652 - INFO - Updating metadata for: kugurofu +2026-01-08 16:17:14,652 - INFO - Searching Mangadex for: kugurofu +2026-01-08 16:17:15,014 - INFO - Searching metadata for: kugurofu +2026-01-08 16:17:15,191 - INFO - Fetching metadata from: https://nhentai.net/g/620725/ +2026-01-08 16:17:15,533 - INFO - Updating metadata for: gumi_chocolate_pine +2026-01-08 16:17:15,534 - INFO - Searching Mangadex for: gumi chocolate pine +2026-01-08 16:17:15,904 - INFO - Searching metadata for: gumi chocolate pine +2026-01-08 16:17:16,119 - INFO - Fetching metadata from: https://nhentai.net/g/605835/ +2026-01-08 16:17:16,294 - INFO - Updating metadata for: seki +2026-01-08 16:17:16,295 - INFO - Searching Mangadex for: seki +2026-01-08 16:17:16,610 - INFO - Updating metadata for: juna_juna_juice +2026-01-08 16:17:16,610 - INFO - Searching Mangadex for: juna juna juice +2026-01-08 16:17:16,924 - INFO - Searching metadata for: juna juna juice +2026-01-08 16:17:17,107 - INFO - Fetching metadata from: https://nhentai.net/g/601989/ +2026-01-08 16:17:17,392 - INFO - Updating metadata for: kizaru +2026-01-08 16:17:17,393 - INFO - Searching Mangadex for: kizaru +2026-01-08 16:17:17,699 - INFO - Searching metadata for: kizaru +2026-01-08 16:17:17,918 - INFO - Fetching metadata from: https://nhentai.net/g/607166/ +2026-01-08 16:17:18,199 - INFO - Updating metadata for: pz-x +2026-01-08 16:17:18,199 - INFO - Searching Mangadex for: pz-x +2026-01-08 16:17:18,506 - INFO - Searching metadata for: pz-x +2026-01-08 16:17:18,738 - INFO - Fetching metadata from: https://nhentai.net/g/607033/ +2026-01-08 16:17:18,933 - INFO - Updating metadata for: yokoya_manjirou +2026-01-08 16:17:18,933 - INFO - Searching Mangadex for: yokoya manjirou +2026-01-08 16:17:19,249 - INFO - Searching metadata for: yokoya manjirou +2026-01-08 16:17:19,442 - INFO - Fetching metadata from: https://nhentai.net/g/617116/ +2026-01-08 16:17:19,646 - INFO - Updating metadata for: kiliu +2026-01-08 16:17:19,646 - INFO - Searching Mangadex for: kiliu +2026-01-08 16:17:19,973 - INFO - Searching metadata for: kiliu +2026-01-08 16:17:20,158 - INFO - Fetching metadata from: https://nhentai.net/g/619239/ +2026-01-08 16:17:20,356 - INFO - Updating metadata for: tenpiboshi +2026-01-08 16:17:20,356 - INFO - Searching Mangadex for: tenpiboshi +2026-01-08 16:17:20,687 - INFO - Searching metadata for: tenpiboshi +2026-01-08 16:17:20,875 - INFO - Fetching metadata from: https://nhentai.net/g/621480/ +2026-01-08 16:17:21,121 - INFO - Updating metadata for: Teoi +2026-01-08 16:17:21,121 - INFO - Searching Mangadex for: Teoi +2026-01-08 16:17:21,437 - INFO - Searching metadata for: Teoi +2026-01-08 16:17:21,586 - INFO - Fetching metadata from: https://nhentai.net/g/264492/ +2026-01-08 16:17:21,847 - INFO - Updating metadata for: ozy +2026-01-08 16:17:21,847 - INFO - Searching Mangadex for: ozy +2026-01-08 16:17:22,180 - INFO - Updating metadata for: abe_morioka +2026-01-08 16:17:22,180 - INFO - Searching Mangadex for: abe morioka +2026-01-08 16:17:22,512 - INFO - Searching metadata for: abe morioka +2026-01-08 16:17:22,731 - INFO - Fetching metadata from: https://nhentai.net/g/616543/ +2026-01-08 16:17:22,958 - INFO - Updating metadata for: itaba_hiroshi +2026-01-08 16:17:22,958 - INFO - Searching Mangadex for: itaba hiroshi +2026-01-08 16:17:23,318 - INFO - Updating metadata for: kazunoko +2026-01-08 16:17:23,319 - INFO - Searching Mangadex for: kazunoko +2026-01-08 16:17:23,642 - INFO - Searching metadata for: kazunoko +2026-01-08 16:17:23,800 - INFO - Fetching metadata from: https://nhentai.net/g/613870/ +2026-01-08 16:17:23,972 - INFO - Updating metadata for: gurida_soumu +2026-01-08 16:17:23,972 - INFO - Searching Mangadex for: gurida soumu +2026-01-08 16:17:24,290 - INFO - Searching metadata for: gurida soumu +2026-01-08 16:17:24,446 - INFO - Fetching metadata from: https://nhentai.net/g/600940/ +2026-01-08 16:17:24,636 - INFO - Updating metadata for: special_g +2026-01-08 16:17:24,636 - INFO - Searching Mangadex for: special g +2026-01-08 16:17:25,019 - INFO - Updating metadata for: yamamoto_yoshifumi +2026-01-08 16:17:25,019 - INFO - Searching Mangadex for: yamamoto yoshifumi +2026-01-08 16:17:25,333 - INFO - Searching metadata for: yamamoto yoshifumi +2026-01-08 16:17:25,552 - INFO - Fetching metadata from: https://nhentai.net/g/602399/ +2026-01-08 16:17:26,017 - INFO - Updating metadata for: gamogamo +2026-01-08 16:17:26,017 - INFO - Searching Mangadex for: gamogamo +2026-01-08 16:17:26,331 - INFO - Searching metadata for: gamogamo +2026-01-08 16:17:26,493 - INFO - Fetching metadata from: https://nhentai.net/g/606599/ +2026-01-08 16:17:26,690 - INFO - Updating metadata for: obui +2026-01-08 16:17:26,690 - INFO - Searching Mangadex for: obui +2026-01-08 16:17:27,006 - INFO - Searching metadata for: obui +2026-01-08 16:17:27,203 - INFO - Fetching metadata from: https://nhentai.net/g/613009/ +2026-01-08 16:17:27,387 - INFO - Updating metadata for: takasugi_kou +2026-01-08 16:17:27,387 - INFO - Searching Mangadex for: takasugi kou +2026-01-08 16:17:27,751 - INFO - Updating metadata for: hijiri_tsukasa +2026-01-08 16:17:27,753 - INFO - Searching Mangadex for: hijiri tsukasa +2026-01-08 16:17:28,077 - INFO - Searching metadata for: hijiri tsukasa +2026-01-08 16:17:28,297 - INFO - Fetching metadata from: https://nhentai.net/g/620789/ +2026-01-08 16:17:28,487 - INFO - Updating metadata for: tohzai +2026-01-08 16:17:28,488 - INFO - Searching Mangadex for: tohzai +2026-01-08 16:17:28,796 - INFO - Searching metadata for: tohzai +2026-01-08 16:17:29,026 - INFO - Fetching metadata from: https://nhentai.net/g/618791/ +2026-01-08 16:17:29,295 - INFO - Updating metadata for: yamamoto +2026-01-08 16:17:29,295 - INFO - Searching Mangadex for: yamamoto +2026-01-08 16:17:29,675 - INFO - Updating metadata for: abbb +2026-01-08 16:17:29,675 - INFO - Searching Mangadex for: abbb +2026-01-08 16:17:30,010 - INFO - Searching metadata for: abbb +2026-01-08 16:17:30,180 - INFO - Fetching metadata from: https://nhentai.net/g/613308/ +2026-01-08 16:17:30,412 - INFO - Updating metadata for: yunosato_souko +2026-01-08 16:17:30,412 - INFO - Searching Mangadex for: yunosato souko +2026-01-08 16:17:30,728 - INFO - Searching metadata for: yunosato souko +2026-01-08 16:17:30,882 - INFO - Fetching metadata from: https://nhentai.net/g/500042/ +2026-01-08 16:17:31,055 - INFO - Updating metadata for: kiasa +2026-01-08 16:17:31,056 - INFO - Searching Mangadex for: kiasa +2026-01-08 16:17:31,388 - INFO - Searching metadata for: kiasa +2026-01-08 16:17:31,572 - INFO - Fetching metadata from: https://nhentai.net/g/563051/ +2026-01-08 16:17:31,758 - INFO - Updating metadata for: point_takashi +2026-01-08 16:17:31,758 - INFO - Searching Mangadex for: point takashi +2026-01-08 16:17:32,070 - INFO - Searching metadata for: point takashi +2026-01-08 16:17:32,307 - INFO - Fetching metadata from: https://nhentai.net/g/600929/ +2026-01-08 16:17:32,532 - INFO - Updating metadata for: magurono_yukinao +2026-01-08 16:17:32,533 - INFO - Searching Mangadex for: magurono yukinao +2026-01-08 16:17:32,851 - INFO - Searching metadata for: magurono yukinao +2026-01-08 16:17:33,034 - INFO - Fetching metadata from: https://nhentai.net/g/617219/ +2026-01-08 16:17:33,251 - INFO - Updating metadata for: utagawa_yosiero +2026-01-08 16:17:33,252 - INFO - Searching Mangadex for: utagawa yosiero +2026-01-08 16:17:33,563 - INFO - Searching metadata for: utagawa yosiero +2026-01-08 16:17:33,715 - INFO - Fetching metadata from: https://nhentai.net/g/607694/ +2026-01-08 16:17:33,913 - INFO - Updating metadata for: spark_utamaro +2026-01-08 16:17:33,913 - INFO - Searching Mangadex for: spark utamaro +2026-01-08 16:17:34,222 - INFO - Searching metadata for: spark utamaro +2026-01-08 16:17:34,415 - INFO - Fetching metadata from: https://nhentai.net/g/502100/ +2026-01-08 16:17:34,688 - INFO - Updating metadata for: torororo +2026-01-08 16:17:34,688 - INFO - Searching Mangadex for: torororo +2026-01-08 16:17:34,995 - INFO - Searching metadata for: torororo +2026-01-08 16:17:35,149 - INFO - Fetching metadata from: https://nhentai.net/g/620689/ +2026-01-08 16:17:35,367 - INFO - Updating metadata for: wabuki +2026-01-08 16:17:35,368 - INFO - Searching Mangadex for: wabuki +2026-01-08 16:17:35,666 - INFO - Searching metadata for: wabuki +2026-01-08 16:17:35,861 - INFO - Fetching metadata from: https://nhentai.net/g/580316/ +2026-01-08 16:17:36,037 - INFO - Updating metadata for: chirumakuro +2026-01-08 16:17:36,038 - INFO - Searching Mangadex for: chirumakuro +2026-01-08 16:17:36,354 - INFO - Searching metadata for: chirumakuro +2026-01-08 16:17:36,548 - INFO - Fetching metadata from: https://nhentai.net/g/607766/ +2026-01-08 16:17:36,764 - INFO - Updating metadata for: saida_kazuaki +2026-01-08 16:17:36,764 - INFO - Searching Mangadex for: saida kazuaki +2026-01-08 16:17:37,060 - INFO - Searching metadata for: saida kazuaki +2026-01-08 16:17:37,218 - INFO - Fetching metadata from: https://nhentai.net/g/615760/ +2026-01-08 16:17:37,684 - INFO - Updating metadata for: methonium +2026-01-08 16:17:37,685 - INFO - Searching Mangadex for: methonium +2026-01-08 16:17:37,997 - INFO - Searching metadata for: methonium +2026-01-08 16:17:38,190 - INFO - Fetching metadata from: https://nhentai.net/g/606668/ +2026-01-08 16:17:38,444 - INFO - Updating metadata for: achumuchi +2026-01-08 16:17:38,445 - INFO - Searching Mangadex for: achumuchi +2026-01-08 16:17:38,744 - INFO - Searching metadata for: achumuchi +2026-01-08 16:17:38,905 - INFO - Fetching metadata from: https://nhentai.net/g/601432/ +2026-01-08 16:17:39,111 - INFO - Updating metadata for: hotate-chan +2026-01-08 16:17:39,112 - INFO - Searching Mangadex for: hotate-chan +2026-01-08 16:17:39,421 - INFO - Searching metadata for: hotate-chan +2026-01-08 16:17:39,598 - INFO - Fetching metadata from: https://nhentai.net/g/621375/ +2026-01-08 16:17:39,816 - INFO - Updating metadata for: Puppukupu_(Kawaisaw) +2026-01-08 16:17:39,816 - INFO - Searching Mangadex for: Puppukupu (Kawaisaw) +2026-01-08 16:17:40,181 - INFO - Searching metadata for: Puppukupu (Kawaisaw) +2026-01-08 16:17:40,424 - INFO - Fetching metadata from: https://nhentai.net/g/620603/ +2026-01-08 16:17:40,592 - INFO - Updating metadata for: fei +2026-01-08 16:17:40,592 - INFO - Searching Mangadex for: fei +2026-01-08 16:17:40,938 - INFO - Updating metadata for: hannya-san +2026-01-08 16:17:40,938 - INFO - Searching Mangadex for: hannya-san +2026-01-08 16:17:41,273 - INFO - Updating metadata for: ikinari +2026-01-08 16:17:41,274 - INFO - Searching Mangadex for: ikinari +2026-01-08 16:17:41,629 - INFO - Updating metadata for: kmvt +2026-01-08 16:17:41,629 - INFO - Searching Mangadex for: kmvt +2026-01-08 16:17:41,967 - INFO - Searching metadata for: kmvt +2026-01-08 16:17:42,121 - INFO - Fetching metadata from: https://nhentai.net/g/578213/ +2026-01-08 16:17:42,300 - INFO - Updating metadata for: Taiyou_Marii +2026-01-08 16:17:42,300 - INFO - Searching Mangadex for: Taiyou Marii +2026-01-08 16:17:42,612 - INFO - Searching metadata for: Taiyou Marii +2026-01-08 16:17:42,767 - INFO - Searching Hentai2Read for: Taiyou Marii +2026-01-08 16:17:43,178 - INFO - Searching MangaUpdates for: Taiyou Marii +2026-01-08 16:17:44,263 - INFO - Updating metadata for: 36p +2026-01-08 16:17:44,264 - INFO - Searching Mangadex for: 36p +2026-01-08 16:17:44,579 - INFO - Searching metadata for: 36p +2026-01-08 16:17:44,738 - INFO - Fetching metadata from: https://nhentai.net/g/597821/ +2026-01-08 16:17:44,932 - INFO - Updating metadata for: makibe_kataru +2026-01-08 16:17:44,932 - INFO - Searching Mangadex for: makibe kataru +2026-01-08 16:17:45,257 - INFO - Searching metadata for: makibe kataru +2026-01-08 16:17:45,416 - INFO - Fetching metadata from: https://nhentai.net/g/619343/ +2026-01-08 16:17:45,759 - INFO - Updating metadata for: ero_no_teishokuya +2026-01-08 16:17:45,760 - INFO - Searching Mangadex for: ero no teishokuya +2026-01-08 16:17:46,095 - INFO - Searching metadata for: ero no teishokuya +2026-01-08 16:17:46,337 - INFO - Fetching metadata from: https://nhentai.net/g/619343/ +2026-01-08 16:17:46,677 - INFO - Updating metadata for: maimu-maimu +2026-01-08 16:17:46,678 - INFO - Searching Mangadex for: maimu-maimu +2026-01-08 16:17:46,969 - INFO - Searching metadata for: maimu-maimu +2026-01-08 16:17:47,123 - INFO - Fetching metadata from: https://nhentai.net/g/618948/ +2026-01-08 16:17:47,480 - INFO - Updating metadata for: mucc +2026-01-08 16:17:47,480 - INFO - Searching Mangadex for: mucc +2026-01-08 16:17:47,810 - INFO - Updating metadata for: Mustard_Teikoku_(Europia) +2026-01-08 16:17:47,811 - INFO - Searching Mangadex for: Mustard Teikoku (Europia) +2026-01-08 16:17:48,234 - INFO - Searching metadata for: Mustard Teikoku (Europia) +2026-01-08 16:17:48,404 - INFO - Fetching metadata from: https://nhentai.net/g/607074/ +2026-01-08 16:17:48,606 - INFO - Updating metadata for: Molta_Shouten_(Molta +2026-01-08 16:17:48,606 - INFO - Searching Mangadex for: Molta Shouten (Molta +2026-01-08 16:17:48,975 - INFO - Searching metadata for: Molta Shouten (Molta +2026-01-08 16:17:49,132 - INFO - Fetching metadata from: https://nhentai.net/g/613417/ +2026-01-08 16:17:49,341 - INFO - Updating metadata for: miyamoto_issa +2026-01-08 16:17:49,341 - INFO - Searching Mangadex for: miyamoto issa +2026-01-08 16:17:49,674 - INFO - Searching metadata for: miyamoto issa +2026-01-08 16:17:49,837 - INFO - Fetching metadata from: https://nhentai.net/g/610029/ +2026-01-09 16:22:05,955 - INFO - Scanning for duplicate folders in /comics/manga... +2026-01-09 16:22:33,380 - INFO - Found 1013 directories. Comparing... +2026-01-09 16:24:07,007 - INFO - Scanning for duplicate folders in /comics/manga... +2026-01-09 16:24:08,714 - INFO - Found 1013 directories. Comparing... +2026-01-09 16:26:01,612 - INFO - Scanning for duplicate folders in /comics/manga... +2026-01-09 16:26:03,359 - INFO - Found 1013 directories. Comparing... diff --git a/ServerManagerWebApp/backend/logs/duplicates_scan.json b/ServerManagerWebApp/backend/logs/duplicates_scan.json new file mode 100644 index 0000000..e8dcdf3 --- /dev/null +++ b/ServerManagerWebApp/backend/logs/duplicates_scan.json @@ -0,0 +1 @@ +{"status": "scanning", "current": "/videos/jav/incest/HUNTC/hhd800.com@HUNTC-328.mp4", "processed": 4309} \ No newline at end of file diff --git a/ServerManagerWebApp/backend/logs/duplicates_scan.log b/ServerManagerWebApp/backend/logs/duplicates_scan.log index 3cc8188..fb6df12 100644 --- a/ServerManagerWebApp/backend/logs/duplicates_scan.log +++ b/ServerManagerWebApp/backend/logs/duplicates_scan.log @@ -1,867 +1,9230 @@ -2025-12-29 10:34:48,029 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 10:34:48,044 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 10:34:48,044 - INFO - SMB2 dialect negotiation successful -2025-12-29 10:34:48,047 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'9286c445fa58dac6'" -2025-12-29 10:34:48,047 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'9286c445fa58dac6'" -2025-12-29 10:34:48,048 - INFO - Server supports SMB signing -2025-12-29 10:34:48,048 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 10:34:48,054 - INFO - Authentication (on SMB2) successful! -2025-12-29 10:34:53,833 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 10:34:53,864 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 10:34:53,864 - INFO - SMB2 dialect negotiation successful -2025-12-29 10:34:53,868 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'61053209eb26997b'" -2025-12-29 10:34:53,868 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'61053209eb26997b'" -2025-12-29 10:34:53,868 - INFO - Server supports SMB signing -2025-12-29 10:34:53,868 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 10:34:53,874 - INFO - Authentication (on SMB2) successful! -2025-12-29 10:34:59,823 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 10:34:59,838 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 10:34:59,839 - INFO - SMB2 dialect negotiation successful -2025-12-29 10:34:59,842 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'7b4daa663b706ea0'" -2025-12-29 10:34:59,842 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'7b4daa663b706ea0'" -2025-12-29 10:34:59,842 - INFO - Server supports SMB signing -2025-12-29 10:34:59,842 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 10:34:59,848 - INFO - Authentication (on SMB2) successful! -2025-12-29 10:34:59,848 - INFO - Starting scan for videos in /videos on share 'isolation' -2025-12-29 10:34:59,848 - INFO - Scanning directory: /videos -2025-12-29 10:34:59,920 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips -2025-12-29 10:34:59,937 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Preparing For The Big Game - Ashley Fires Fetish Clips.mp4 (Ashley Fires - Preparing For The Big Game - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,945 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires - Preparing For The Big Game - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,945 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires in Elder Sister Fucks Her Virgin Brother.mp4 (Ashley Fires in Elder Sister Fucks Her Virgin Brother.mp4) -2025-12-29 10:34:59,945 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires in Elder Sister Fucks Her Virgin Brother.mp4 -2025-12-29 10:34:59,945 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - My Sister Needs Me - Ashley Fires Fetish Clips.mp4 (Anya Olsen - My Sister Needs Me - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,946 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Anya Olsen - My Sister Needs Me - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,946 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen gives a make-out lesson to her Brother.mp4 (Lacy Vixxen gives a make-out lesson to her Brother.mp4) -2025-12-29 10:34:59,946 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Lacy Vixxen gives a make-out lesson to her Brother.mp4 -2025-12-29 10:34:59,946 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 1 - Ashley Fires Fetish Clips. Dad made Son fuck Mom after he caught him watching his parents have sex.mp4 (Lux Orchid - The Lake House Part 1 - Ashley Fires Fetish Clips. Dad made Son fuck Mom after he caught him watching his parents have sex.mp4) -2025-12-29 10:34:59,946 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 1 - Ashley Fires Fetish Clips. Dad made Son fuck Mom after he caught him watching his parents have sex.mp4 -2025-12-29 10:34:59,947 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy needs Him - Modern Taboo Family.mp4 (Ashley Fires - Mommy needs Him - Modern Taboo Family.mp4) -2025-12-29 10:34:59,947 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy needs Him - Modern Taboo Family.mp4 -2025-12-29 10:34:59,947 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (1) - Modern Taboo Family.mp4 (Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (1) - Modern Taboo Family.mp4) -2025-12-29 10:34:59,947 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (1) - Modern Taboo Family.mp4 -2025-12-29 10:34:59,947 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Family Picnic - Part 3 - Modern Taboo Family-(Anya Olsen, Ashley Fires)-{Ashley Fires Fetish Clips}.mp4 (Family Picnic - Part 3 - Modern Taboo Family-(Anya Olsen, Ashley Fires)-{Ashley Fires Fetish Clips}.mp4) -2025-12-29 10:34:59,948 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Family Picnic - Part 3 - Modern Taboo Family-(Anya Olsen, Ashley Fires)-{Ashley Fires Fetish Clips}.mp4 -2025-12-29 10:34:59,948 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen, Harlo Adams in Family Playdate by Ashley Fires Fetish Clips.mp4 (Ashley Fires, Anya Olsen, Harlo Adams in Family Playdate by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,948 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen, Harlo Adams in Family Playdate by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,948 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Doctor Mom Gets Double Penetrated By Her Brother and Son - Ashley Fires Fetish Clips.mp4 (Doctor Mom Gets Double Penetrated By Her Brother and Son - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,948 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Doctor Mom Gets Double Penetrated By Her Brother and Son - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,948 - INFO - Processing video: /videos/ashley-fires-fetish-clips/A Daughters Family Initiation - Modern Taboo Family - HD VERSION-(Anya Olsen, Madeline Blue)-{Ashley Fires Fetish Clips}-[Cum Swapping, Older Woman - Younger Man, Step Dad, Step Daughter, Step Mother].mp4 (A Daughters Family Initiation - Modern Taboo Family - HD VERSION-(Anya Olsen, Madeline Blue)-{Ashley Fires Fetish Clips}-[Cum Swapping, Older Woman - Younger Man, Step Dad, Step Daughter, Step Mother].mp4) -2025-12-29 10:34:59,949 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/A Daughters Family Initiation - Modern Taboo Family - HD VERSION-(Anya Olsen, Madeline Blue)-{Ashley Fires Fetish Clips}-[Cum Swapping, Older Woman - Younger Man, Step Dad, Step Daughter, Step Mother].mp4 -2025-12-29 10:34:59,949 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Elder Sister punishes younger Sister for sleeping with Dad. Lacy Vixxen, Lexy Lynne in Little Sister gets Airtight by Ashley Fires Fetish Clips.mp4 (Elder Sister punishes younger Sister for sleeping with Dad. Lacy Vixxen, Lexy Lynne in Little Sister gets Airtight by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,949 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Elder Sister punishes younger Sister for sleeping with Dad. Lacy Vixxen, Lexy Lynne in Little Sister gets Airtight by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,949 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Dad caught Anya making out with her Brother. Anya Olsen - Mommy Made Me Do It.mp4 (Dad caught Anya making out with her Brother. Anya Olsen - Mommy Made Me Do It.mp4) -2025-12-29 10:34:59,949 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Dad caught Anya making out with her Brother. Anya Olsen - Mommy Made Me Do It.mp4 -2025-12-29 10:34:59,949 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - Daughter Exchange Club - Teaching Daughter To Be A Whore - Ashley Fires Fetish Clips.mp4 (Anya Olsen - Daughter Exchange Club - Teaching Daughter To Be A Whore - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,950 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Anya Olsen - Daughter Exchange Club - Teaching Daughter To Be A Whore - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,950 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Brother force-fucks Lacy Vixxen in bathroom, get caught by their Moms friend, then tries to comfort her by fucking her again.mp4 (Brother force-fucks Lacy Vixxen in bathroom, get caught by their Moms friend, then tries to comfort her by fucking her again.mp4) -2025-12-29 10:34:59,950 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Brother force-fucks Lacy Vixxen in bathroom, get caught by their Moms friend, then tries to comfort her by fucking her again.mp4 -2025-12-29 10:34:59,950 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - She Lets Daddy Inside - Ashley Fires Fetish Clips.mp4 (Anya Olsen - She Lets Daddy Inside - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,950 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Anya Olsen - She Lets Daddy Inside - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,950 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 2.mp4 (Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 2.mp4) -2025-12-29 10:34:59,951 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 2.mp4 -2025-12-29 10:34:59,951 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (2) - Modern Taboo Family.mp4 (Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (2) - Modern Taboo Family.mp4) -2025-12-29 10:34:59,951 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (2) - Modern Taboo Family.mp4 -2025-12-29 10:34:59,951 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen, Ashley Fires - Homewrecking Daughter Punished By Mom.mp4 (Anya Olsen, Ashley Fires - Homewrecking Daughter Punished By Mom.mp4) -2025-12-29 10:34:59,951 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Anya Olsen, Ashley Fires - Homewrecking Daughter Punished By Mom.mp4 -2025-12-29 10:34:59,951 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Special Diet.mp4 (Ashley Fires - Mommys Special Diet.mp4) -2025-12-29 10:34:59,952 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Special Diet.mp4 -2025-12-29 10:34:59,952 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Megan Maiden - Mom Is Clueless - Ashley Fires Fetish Clips.mp4 (Megan Maiden - Mom Is Clueless - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,952 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Megan Maiden - Mom Is Clueless - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,952 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Step-Brother Gets His Christmas Wish - PART 1-(Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, From Chapter, Pussy Licking, Step Brother, taboo].mp4 (Step-Brother Gets His Christmas Wish - PART 1-(Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, From Chapter, Pussy Licking, Step Brother, taboo].mp4) -2025-12-29 10:34:59,952 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Step-Brother Gets His Christmas Wish - PART 1-(Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, From Chapter, Pussy Licking, Step Brother, taboo].mp4 -2025-12-29 10:34:59,952 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Sadie Holmes, Ashley Fires - Brothers Homecoming - Ashley Fires Fetish Clips.mp4 (Sadie Holmes, Ashley Fires - Brothers Homecoming - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,953 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Sadie Holmes, Ashley Fires - Brothers Homecoming - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,953 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Turns Her Boy Into A Man - A Mothers Love - Modern Taboo Family.mp4 (Ashley Fires - Mommy Turns Her Boy Into A Man - A Mothers Love - Modern Taboo Family.mp4) -2025-12-29 10:34:59,953 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Turns Her Boy Into A Man - A Mothers Love - Modern Taboo Family.mp4 -2025-12-29 10:34:59,953 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid in Son Gets Anal With Mom And Aunt.mp4 (Ashley Fires, Lux Orchid in Son Gets Anal With Mom And Aunt.mp4) -2025-12-29 10:34:59,953 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid in Son Gets Anal With Mom And Aunt.mp4 -2025-12-29 10:34:59,953 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen, Lux Orchid in Mommy and Brothers House Rules by Ashley Fires Fetish Clips.mp4 (Anya Olsen, Lux Orchid in Mommy and Brothers House Rules by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,954 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Anya Olsen, Lux Orchid in Mommy and Brothers House Rules by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,954 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid in My Mother My Whore by Ashley Fires Fetish Clips.mp4 (Lux Orchid in My Mother My Whore by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,954 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Lux Orchid in My Mother My Whore by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,954 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Brother creampies his Sister Chi. Brother Gets His Christmas Wish Part 2 by Ashley Fires Fetish Clips.mp4 (Brother creampies his Sister Chi. Brother Gets His Christmas Wish Part 2 by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,954 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Brother creampies his Sister Chi. Brother Gets His Christmas Wish Part 2 by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,955 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires in Dont Leave Mommy - Modern Taboo Family.mp4 (Ashley Fires in Dont Leave Mommy - Modern Taboo Family.mp4) -2025-12-29 10:34:59,955 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires in Dont Leave Mommy - Modern Taboo Family.mp4 -2025-12-29 10:34:59,955 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid in Mommy Says Good Night by Ashley Fires Fetish Clips.mp4 (Lux Orchid in Mommy Says Good Night by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,955 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Lux Orchid in Mommy Says Good Night by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,955 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen returns the favour to her Brother.mp4 (Lacy Vixxen returns the favour to her Brother.mp4) -2025-12-29 10:34:59,955 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Lacy Vixxen returns the favour to her Brother.mp4 -2025-12-29 10:34:59,956 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - Mommy Says Good Morning - Ashley Fires Fetish Clips.mp4 (Lux Orchid - Mommy Says Good Morning - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,956 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Lux Orchid - Mommy Says Good Morning - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,956 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - This Hurts Mommy More - Ashley Fires Fetish Clips.mp4 (Lux Orchid - This Hurts Mommy More - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,956 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Lux Orchid - This Hurts Mommy More - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,956 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen in Family Picnic Part 2 by Ashley Fires Fetish Clips.mp4 (Ashley Fires, Anya Olsen in Family Picnic Part 2 by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,956 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen in Family Picnic Part 2 by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,956 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 2 - Ashley Fires Fetish Clips. Son Is The Man Of The House Now.mp4 (Lux Orchid - The Lake House Part 2 - Ashley Fires Fetish Clips. Son Is The Man Of The House Now.mp4) -2025-12-29 10:34:59,957 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 2 - Ashley Fires Fetish Clips. Son Is The Man Of The House Now.mp4 -2025-12-29 10:34:59,957 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Forced-feminization of Brother. Lacy Vixxen - My Brother is My Sister.mp4 (Forced-feminization of Brother. Lacy Vixxen - My Brother is My Sister.mp4) -2025-12-29 10:34:59,957 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Forced-feminization of Brother. Lacy Vixxen - My Brother is My Sister.mp4 -2025-12-29 10:34:59,957 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Sister has to do the unthinkable. Anya Olsen in Modern Taboo Family by Ashley Fires Fetish Clips.mp4 (Sister has to do the unthinkable. Anya Olsen in Modern Taboo Family by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,957 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Sister has to do the unthinkable. Anya Olsen in Modern Taboo Family by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,957 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Mommy Makes Her Sons Cum Together. Ashley Fires in A Mothers Love.mp4 (Mommy Makes Her Sons Cum Together. Ashley Fires in A Mothers Love.mp4) -2025-12-29 10:34:59,957 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Mommy Makes Her Sons Cum Together. Ashley Fires in A Mothers Love.mp4 -2025-12-29 10:34:59,957 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anal Lessons From Step-Mom-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Anal Creampie, Cum Swapping, MILF (30+), Rimming, creampie, taboo].mp4 (Anal Lessons From Step-Mom-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Anal Creampie, Cum Swapping, MILF (30+), Rimming, creampie, taboo].mp4) -2025-12-29 10:34:59,958 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Anal Lessons From Step-Mom-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Anal Creampie, Cum Swapping, MILF (30+), Rimming, creampie, taboo].mp4 -2025-12-29 10:34:59,958 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Daughter blows her asleep Daddy. Chi in Waking Daddy by Ashley Fires Fetish Clips.mp4 (Daughter blows her asleep Daddy. Chi in Waking Daddy by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,958 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Daughter blows her asleep Daddy. Chi in Waking Daddy by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,958 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Family Fraternity-(Ashley Fires, Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Doggy Style, Missionary, Pussy Licking, cowgirl, taboo].mp4 (Family Fraternity-(Ashley Fires, Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Doggy Style, Missionary, Pussy Licking, cowgirl, taboo].mp4) -2025-12-29 10:34:59,958 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Family Fraternity-(Ashley Fires, Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Doggy Style, Missionary, Pussy Licking, cowgirl, taboo].mp4 -2025-12-29 10:34:59,958 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Modern Taboo Family - Step-Brother Step-Sister Prom Date-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Foursome].mp4 (Modern Taboo Family - Step-Brother Step-Sister Prom Date-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Foursome].mp4) -2025-12-29 10:34:59,958 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Modern Taboo Family - Step-Brother Step-Sister Prom Date-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Foursome].mp4 -2025-12-29 10:34:59,958 - INFO - Processing video: /videos/ashley-fires-fetish-clips/The Manchurian Step-Son - Modern Family Taboo-(Ashley Fires)-{Ashley Fires Fetish Clips}-[Kissing, Mind Fuck, Smoking Fetish].mp4 (The Manchurian Step-Son - Modern Family Taboo-(Ashley Fires)-{Ashley Fires Fetish Clips}-[Kissing, Mind Fuck, Smoking Fetish].mp4) -2025-12-29 10:34:59,959 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/The Manchurian Step-Son - Modern Family Taboo-(Ashley Fires)-{Ashley Fires Fetish Clips}-[Kissing, Mind Fuck, Smoking Fetish].mp4 -2025-12-29 10:34:59,959 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - My Son Joins The Service.mp4 (Ashley Fires - My Son Joins The Service.mp4) -2025-12-29 10:34:59,959 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires - My Son Joins The Service.mp4 -2025-12-29 10:34:59,959 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 1.mp4 (Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 1.mp4) -2025-12-29 10:34:59,959 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 1.mp4 -2025-12-29 10:34:59,959 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen - Brother Fucker.mp4 (Lacy Vixxen - Brother Fucker.mp4) -2025-12-29 10:34:59,959 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Lacy Vixxen - Brother Fucker.mp4 -2025-12-29 10:34:59,959 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Party - Ashley Fires Fetish Clips.mp4 (Ashley Fires - Mommys Party - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,959 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Party - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,960 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen looks up to her Brother after getting zero action at the party.mp4 (Lacy Vixxen looks up to her Brother after getting zero action at the party.mp4) -2025-12-29 10:34:59,960 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Lacy Vixxen looks up to her Brother after getting zero action at the party.mp4 -2025-12-29 10:34:59,960 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - My Son Is Ashamed Of Me - Modern Taboo Family ⁄ Ashley Fires Fetish Clips.mp4 (Lux Orchid - My Son Is Ashamed Of Me - Modern Taboo Family ⁄ Ashley Fires Fetish Clips.mp4) -2025-12-29 10:34:59,960 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Lux Orchid - My Son Is Ashamed Of Me - Modern Taboo Family ⁄ Ashley Fires Fetish Clips.mp4 -2025-12-29 10:34:59,960 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Gets Married.mp4 (Ashley Fires - Mommy Gets Married.mp4) -2025-12-29 10:34:59,960 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Gets Married.mp4 -2025-12-29 10:34:59,960 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen -2025-12-29 10:34:59,972 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomsTeachSex.25.07.07.Anya.Olsen.Going.Around.The.World.With.Stepmom.XXX.1080p.MP4-WRB[XC] -2025-12-29 10:34:59,983 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomsTeachSex.25.07.07.Anya.Olsen.Going.Around.The.World.With.Stepmom.XXX.1080p.MP4-WRB[XC]/momsteachsex.25.07.07.anya.olsen.going.around.the.world.with.stepmom.mp4 (momsteachsex.25.07.07.anya.olsen.going.around.the.world.with.stepmom.mp4) -2025-12-29 10:34:59,983 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/anya.olsen/MomsTeachSex.25.07.07.Anya.Olsen.Going.Around.The.World.With.Stepmom.XXX.1080p.MP4-WRB[XC]/momsteachsex.25.07.07.anya.olsen.going.around.the.world.with.stepmom.mp4 -2025-12-29 10:34:59,983 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Sweet Step Mom Vacation Sex-(Anya Olsen)-{Household Fantasy}-[Blond Hair, Blowjob, Cumshot, Male - POV, cowgirl, creampie].mp4 (Sweet Step Mom Vacation Sex-(Anya Olsen)-{Household Fantasy}-[Blond Hair, Blowjob, Cumshot, Male - POV, cowgirl, creampie].mp4) -2025-12-29 10:34:59,984 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/anya.olsen/Sweet Step Mom Vacation Sex-(Anya Olsen)-{Household Fantasy}-[Blond Hair, Blowjob, Cumshot, Male - POV, cowgirl, creampie].mp4 -2025-12-29 10:34:59,984 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Watching Porn with Anya-(Anya Olsen)-{MissaX}-[Blowjob, Handjob, Natural Tits, Short Woman, creampie].mp4 (Watching Porn with Anya-(Anya Olsen)-{MissaX}-[Blowjob, Handjob, Natural Tits, Short Woman, creampie].mp4) -2025-12-29 10:36:28,967 - ERROR - ffprobe failed for /tmp/tmpvovve7b3: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmpvovve7b3']' returned non-zero exit status 1. -2025-12-29 10:36:28,984 - ERROR - ffmpeg failed for /tmp/tmpvovve7b3: Command '['ffmpeg', '-i', '/tmp/tmpvovve7b3', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpd413jt2_.jpg']' returned non-zero exit status 183. -2025-12-29 10:36:28,984 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/Watching Porn with Anya-(Anya Olsen)-{MissaX}-[Blowjob, Handjob, Natural Tits, Short Woman, creampie].mp4 -2025-12-29 10:36:29,053 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT -2025-12-29 10:36:29,065 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT.mp4 (MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT.mp4) -2025-12-29 10:36:29,065 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/anya.olsen/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT.mp4 -2025-12-29 10:36:29,065 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.HEVC.x265.PRT -2025-12-29 10:36:29,075 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.MP4-WRB[XC] -2025-12-29 10:36:29,086 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.MP4-WRB[XC]/momwantstobreed.25.07.04.anya.olsen.if.you.cum.in.me.ill.get.pregnant.mp4 (momwantstobreed.25.07.04.anya.olsen.if.you.cum.in.me.ill.get.pregnant.mp4) -2025-12-29 10:37:59,992 - ERROR - ffmpeg failed for /tmp/tmpdgnd9l3n: Command '['ffmpeg', '-i', '/tmp/tmpdgnd9l3n', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpub8uelee.jpg']' returned non-zero exit status 228. -2025-12-29 10:37:59,992 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.MP4-WRB[XC]/momwantstobreed.25.07.04.anya.olsen.if.you.cum.in.me.ill.get.pregnant.mp4 -2025-12-29 10:38:00,064 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Anya Olsen Sophia Locke - Our Hot Moms Know How To Play - MomSwa.mp4 (Anya Olsen Sophia Locke - Our Hot Moms Know How To Play - MomSwa.mp4) -2025-12-29 10:38:00,065 - INFO - Skipping already processed video: /videos/ashley-fires-fetish-clips/anya.olsen/Anya Olsen Sophia Locke - Our Hot Moms Know How To Play - MomSwa.mp4 -2025-12-29 10:38:00,065 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsCreampie.25.10.11.Anya.Olsen.Your.Turn.To.Take.Care.Of.Me.Stepson.XXX.1080p.MP4-WRB[XC] -2025-12-29 10:38:00,085 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsCreampie.25.10.11.Anya.Olsen.Your.Turn.To.Take.Care.Of.Me.Stepson.XXX.1080p.MP4-WRB[XC]/momwantscreampie.25.10.11.anya.olsen.your.turn.to.take.care.of.me.stepson.mp4 (momwantscreampie.25.10.11.anya.olsen.your.turn.to.take.care.of.me.stepson.mp4) -2025-12-29 10:39:30,394 - ERROR - ffmpeg failed for /tmp/tmpaw9s6qjt: Command '['ffmpeg', '-i', '/tmp/tmpaw9s6qjt', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpq3cppq9z.jpg']' returned non-zero exit status 228. -2025-12-29 10:39:30,394 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsCreampie.25.10.11.Anya.Olsen.Your.Turn.To.Take.Care.Of.Me.Stepson.XXX.1080p.MP4-WRB[XC]/momwantscreampie.25.10.11.anya.olsen.your.turn.to.take.care.of.me.stepson.mp4 -2025-12-29 10:39:30,459 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.HEVC.x265.PRT -2025-12-29 10:39:30,470 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Lonely Step-Mom Needs Attention ~ Anya Olsen-{Household Fantasy}.mp4 (Lonely Step-Mom Needs Attention ~ Anya Olsen-{Household Fantasy}.mp4) -2025-12-29 10:41:01,691 - ERROR - ffprobe failed for /tmp/tmpyod2c_93: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmpyod2c_93']' returned non-zero exit status 1. -2025-12-29 10:41:01,709 - ERROR - ffmpeg failed for /tmp/tmpyod2c_93: Command '['ffmpeg', '-i', '/tmp/tmpyod2c_93', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmp258hzy7q.jpg']' returned non-zero exit status 183. -2025-12-29 10:41:01,709 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/Lonely Step-Mom Needs Attention ~ Anya Olsen-{Household Fantasy}.mp4 -2025-12-29 10:41:01,786 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.mp4 (FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.mp4) -2025-12-29 10:42:02,468 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 10:42:02,486 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 10:42:02,487 - INFO - SMB2 dialect negotiation successful -2025-12-29 10:42:02,490 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'271eb3fbbdfa31d2'" -2025-12-29 10:42:02,490 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'271eb3fbbdfa31d2'" -2025-12-29 10:42:02,490 - INFO - Server supports SMB signing -2025-12-29 10:42:02,490 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 10:42:02,496 - INFO - Authentication (on SMB2) successful! -2025-12-29 10:42:05,777 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 10:42:05,797 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 10:42:05,797 - INFO - SMB2 dialect negotiation successful -2025-12-29 10:42:05,801 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'661dea0b55af1633'" -2025-12-29 10:42:05,801 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'661dea0b55af1633'" -2025-12-29 10:42:05,801 - INFO - Server supports SMB signing -2025-12-29 10:42:05,801 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 10:42:05,806 - INFO - Authentication (on SMB2) successful! -2025-12-29 10:42:05,806 - INFO - Starting scan for videos in /videos on share 'isolation' -2025-12-29 10:42:05,806 - INFO - Scanning directory: /videos -2025-12-29 10:42:05,857 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips -2025-12-29 10:42:05,872 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Preparing For The Big Game - Ashley Fires Fetish Clips.mp4 (Ashley Fires - Preparing For The Big Game - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,879 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Preparing For The Big Game - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,879 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires in Elder Sister Fucks Her Virgin Brother.mp4 (Ashley Fires in Elder Sister Fucks Her Virgin Brother.mp4) -2025-12-29 10:42:05,879 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires in Elder Sister Fucks Her Virgin Brother.mp4 -2025-12-29 10:42:05,879 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - My Sister Needs Me - Ashley Fires Fetish Clips.mp4 (Anya Olsen - My Sister Needs Me - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,879 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen - My Sister Needs Me - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,879 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen gives a make-out lesson to her Brother.mp4 (Lacy Vixxen gives a make-out lesson to her Brother.mp4) -2025-12-29 10:42:05,880 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lacy Vixxen gives a make-out lesson to her Brother.mp4 -2025-12-29 10:42:05,880 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 1 - Ashley Fires Fetish Clips. Dad made Son fuck Mom after he caught him watching his parents have sex.mp4 (Lux Orchid - The Lake House Part 1 - Ashley Fires Fetish Clips. Dad made Son fuck Mom after he caught him watching his parents have sex.mp4) -2025-12-29 10:42:05,880 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 1 - Ashley Fires Fetish Clips. Dad made Son fuck Mom after he caught him watching his parents have sex.mp4 -2025-12-29 10:42:05,880 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy needs Him - Modern Taboo Family.mp4 (Ashley Fires - Mommy needs Him - Modern Taboo Family.mp4) -2025-12-29 10:42:05,880 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy needs Him - Modern Taboo Family.mp4 -2025-12-29 10:42:05,880 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (1) - Modern Taboo Family.mp4 (Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (1) - Modern Taboo Family.mp4) -2025-12-29 10:42:05,880 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (1) - Modern Taboo Family.mp4 -2025-12-29 10:42:05,880 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Family Picnic - Part 3 - Modern Taboo Family-(Anya Olsen, Ashley Fires)-{Ashley Fires Fetish Clips}.mp4 (Family Picnic - Part 3 - Modern Taboo Family-(Anya Olsen, Ashley Fires)-{Ashley Fires Fetish Clips}.mp4) -2025-12-29 10:42:05,881 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Family Picnic - Part 3 - Modern Taboo Family-(Anya Olsen, Ashley Fires)-{Ashley Fires Fetish Clips}.mp4 -2025-12-29 10:42:05,881 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen, Harlo Adams in Family Playdate by Ashley Fires Fetish Clips.mp4 (Ashley Fires, Anya Olsen, Harlo Adams in Family Playdate by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,881 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen, Harlo Adams in Family Playdate by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,881 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Doctor Mom Gets Double Penetrated By Her Brother and Son - Ashley Fires Fetish Clips.mp4 (Doctor Mom Gets Double Penetrated By Her Brother and Son - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,881 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Doctor Mom Gets Double Penetrated By Her Brother and Son - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,881 - INFO - Processing video: /videos/ashley-fires-fetish-clips/A Daughters Family Initiation - Modern Taboo Family - HD VERSION-(Anya Olsen, Madeline Blue)-{Ashley Fires Fetish Clips}-[Cum Swapping, Older Woman - Younger Man, Step Dad, Step Daughter, Step Mother].mp4 (A Daughters Family Initiation - Modern Taboo Family - HD VERSION-(Anya Olsen, Madeline Blue)-{Ashley Fires Fetish Clips}-[Cum Swapping, Older Woman - Younger Man, Step Dad, Step Daughter, Step Mother].mp4) -2025-12-29 10:42:05,882 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/A Daughters Family Initiation - Modern Taboo Family - HD VERSION-(Anya Olsen, Madeline Blue)-{Ashley Fires Fetish Clips}-[Cum Swapping, Older Woman - Younger Man, Step Dad, Step Daughter, Step Mother].mp4 -2025-12-29 10:42:05,882 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Elder Sister punishes younger Sister for sleeping with Dad. Lacy Vixxen, Lexy Lynne in Little Sister gets Airtight by Ashley Fires Fetish Clips.mp4 (Elder Sister punishes younger Sister for sleeping with Dad. Lacy Vixxen, Lexy Lynne in Little Sister gets Airtight by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,882 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Elder Sister punishes younger Sister for sleeping with Dad. Lacy Vixxen, Lexy Lynne in Little Sister gets Airtight by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,882 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Dad caught Anya making out with her Brother. Anya Olsen - Mommy Made Me Do It.mp4 (Dad caught Anya making out with her Brother. Anya Olsen - Mommy Made Me Do It.mp4) -2025-12-29 10:42:05,882 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Dad caught Anya making out with her Brother. Anya Olsen - Mommy Made Me Do It.mp4 -2025-12-29 10:42:05,882 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - Daughter Exchange Club - Teaching Daughter To Be A Whore - Ashley Fires Fetish Clips.mp4 (Anya Olsen - Daughter Exchange Club - Teaching Daughter To Be A Whore - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,882 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen - Daughter Exchange Club - Teaching Daughter To Be A Whore - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,882 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Brother force-fucks Lacy Vixxen in bathroom, get caught by their Moms friend, then tries to comfort her by fucking her again.mp4 (Brother force-fucks Lacy Vixxen in bathroom, get caught by their Moms friend, then tries to comfort her by fucking her again.mp4) -2025-12-29 10:42:05,883 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Brother force-fucks Lacy Vixxen in bathroom, get caught by their Moms friend, then tries to comfort her by fucking her again.mp4 -2025-12-29 10:42:05,883 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - She Lets Daddy Inside - Ashley Fires Fetish Clips.mp4 (Anya Olsen - She Lets Daddy Inside - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,883 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen - She Lets Daddy Inside - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,883 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 2.mp4 (Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 2.mp4) -2025-12-29 10:42:05,883 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 2.mp4 -2025-12-29 10:42:05,883 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (2) - Modern Taboo Family.mp4 (Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (2) - Modern Taboo Family.mp4) -2025-12-29 10:42:05,883 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (2) - Modern Taboo Family.mp4 -2025-12-29 10:42:05,883 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen, Ashley Fires - Homewrecking Daughter Punished By Mom.mp4 (Anya Olsen, Ashley Fires - Homewrecking Daughter Punished By Mom.mp4) -2025-12-29 10:42:05,884 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen, Ashley Fires - Homewrecking Daughter Punished By Mom.mp4 -2025-12-29 10:42:05,884 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Special Diet.mp4 (Ashley Fires - Mommys Special Diet.mp4) -2025-12-29 10:42:05,884 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Special Diet.mp4 -2025-12-29 10:42:05,884 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Megan Maiden - Mom Is Clueless - Ashley Fires Fetish Clips.mp4 (Megan Maiden - Mom Is Clueless - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,884 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Megan Maiden - Mom Is Clueless - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,884 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Step-Brother Gets His Christmas Wish - PART 1-(Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, From Chapter, Pussy Licking, Step Brother, taboo].mp4 (Step-Brother Gets His Christmas Wish - PART 1-(Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, From Chapter, Pussy Licking, Step Brother, taboo].mp4) -2025-12-29 10:42:05,884 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Step-Brother Gets His Christmas Wish - PART 1-(Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, From Chapter, Pussy Licking, Step Brother, taboo].mp4 -2025-12-29 10:42:05,884 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Sadie Holmes, Ashley Fires - Brothers Homecoming - Ashley Fires Fetish Clips.mp4 (Sadie Holmes, Ashley Fires - Brothers Homecoming - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,885 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Sadie Holmes, Ashley Fires - Brothers Homecoming - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,885 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Turns Her Boy Into A Man - A Mothers Love - Modern Taboo Family.mp4 (Ashley Fires - Mommy Turns Her Boy Into A Man - A Mothers Love - Modern Taboo Family.mp4) -2025-12-29 10:42:05,885 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Turns Her Boy Into A Man - A Mothers Love - Modern Taboo Family.mp4 -2025-12-29 10:42:05,885 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid in Son Gets Anal With Mom And Aunt.mp4 (Ashley Fires, Lux Orchid in Son Gets Anal With Mom And Aunt.mp4) -2025-12-29 10:42:05,885 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid in Son Gets Anal With Mom And Aunt.mp4 -2025-12-29 10:42:05,885 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen, Lux Orchid in Mommy and Brothers House Rules by Ashley Fires Fetish Clips.mp4 (Anya Olsen, Lux Orchid in Mommy and Brothers House Rules by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,885 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen, Lux Orchid in Mommy and Brothers House Rules by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,885 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid in My Mother My Whore by Ashley Fires Fetish Clips.mp4 (Lux Orchid in My Mother My Whore by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,886 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid in My Mother My Whore by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,886 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Brother creampies his Sister Chi. Brother Gets His Christmas Wish Part 2 by Ashley Fires Fetish Clips.mp4 (Brother creampies his Sister Chi. Brother Gets His Christmas Wish Part 2 by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,886 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Brother creampies his Sister Chi. Brother Gets His Christmas Wish Part 2 by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,886 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires in Dont Leave Mommy - Modern Taboo Family.mp4 (Ashley Fires in Dont Leave Mommy - Modern Taboo Family.mp4) -2025-12-29 10:42:05,886 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires in Dont Leave Mommy - Modern Taboo Family.mp4 -2025-12-29 10:42:05,886 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid in Mommy Says Good Night by Ashley Fires Fetish Clips.mp4 (Lux Orchid in Mommy Says Good Night by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,886 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid in Mommy Says Good Night by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,886 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen returns the favour to her Brother.mp4 (Lacy Vixxen returns the favour to her Brother.mp4) -2025-12-29 10:42:05,887 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lacy Vixxen returns the favour to her Brother.mp4 -2025-12-29 10:42:05,887 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - Mommy Says Good Morning - Ashley Fires Fetish Clips.mp4 (Lux Orchid - Mommy Says Good Morning - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,887 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - Mommy Says Good Morning - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,887 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - This Hurts Mommy More - Ashley Fires Fetish Clips.mp4 (Lux Orchid - This Hurts Mommy More - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,887 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - This Hurts Mommy More - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,887 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen in Family Picnic Part 2 by Ashley Fires Fetish Clips.mp4 (Ashley Fires, Anya Olsen in Family Picnic Part 2 by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,887 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen in Family Picnic Part 2 by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,887 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 2 - Ashley Fires Fetish Clips. Son Is The Man Of The House Now.mp4 (Lux Orchid - The Lake House Part 2 - Ashley Fires Fetish Clips. Son Is The Man Of The House Now.mp4) -2025-12-29 10:42:05,888 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 2 - Ashley Fires Fetish Clips. Son Is The Man Of The House Now.mp4 -2025-12-29 10:42:05,888 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Forced-feminization of Brother. Lacy Vixxen - My Brother is My Sister.mp4 (Forced-feminization of Brother. Lacy Vixxen - My Brother is My Sister.mp4) -2025-12-29 10:42:05,888 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Forced-feminization of Brother. Lacy Vixxen - My Brother is My Sister.mp4 -2025-12-29 10:42:05,888 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Sister has to do the unthinkable. Anya Olsen in Modern Taboo Family by Ashley Fires Fetish Clips.mp4 (Sister has to do the unthinkable. Anya Olsen in Modern Taboo Family by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,888 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Sister has to do the unthinkable. Anya Olsen in Modern Taboo Family by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,888 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Mommy Makes Her Sons Cum Together. Ashley Fires in A Mothers Love.mp4 (Mommy Makes Her Sons Cum Together. Ashley Fires in A Mothers Love.mp4) -2025-12-29 10:42:05,888 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Mommy Makes Her Sons Cum Together. Ashley Fires in A Mothers Love.mp4 -2025-12-29 10:42:05,888 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anal Lessons From Step-Mom-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Anal Creampie, Cum Swapping, MILF (30+), Rimming, creampie, taboo].mp4 (Anal Lessons From Step-Mom-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Anal Creampie, Cum Swapping, MILF (30+), Rimming, creampie, taboo].mp4) -2025-12-29 10:42:05,888 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anal Lessons From Step-Mom-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Anal Creampie, Cum Swapping, MILF (30+), Rimming, creampie, taboo].mp4 -2025-12-29 10:42:05,889 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Daughter blows her asleep Daddy. Chi in Waking Daddy by Ashley Fires Fetish Clips.mp4 (Daughter blows her asleep Daddy. Chi in Waking Daddy by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,889 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Daughter blows her asleep Daddy. Chi in Waking Daddy by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,889 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Family Fraternity-(Ashley Fires, Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Doggy Style, Missionary, Pussy Licking, cowgirl, taboo].mp4 (Family Fraternity-(Ashley Fires, Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Doggy Style, Missionary, Pussy Licking, cowgirl, taboo].mp4) -2025-12-29 10:42:05,889 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Family Fraternity-(Ashley Fires, Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Doggy Style, Missionary, Pussy Licking, cowgirl, taboo].mp4 -2025-12-29 10:42:05,889 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Modern Taboo Family - Step-Brother Step-Sister Prom Date-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Foursome].mp4 (Modern Taboo Family - Step-Brother Step-Sister Prom Date-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Foursome].mp4) -2025-12-29 10:42:05,889 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Modern Taboo Family - Step-Brother Step-Sister Prom Date-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Foursome].mp4 -2025-12-29 10:42:05,889 - INFO - Processing video: /videos/ashley-fires-fetish-clips/The Manchurian Step-Son - Modern Family Taboo-(Ashley Fires)-{Ashley Fires Fetish Clips}-[Kissing, Mind Fuck, Smoking Fetish].mp4 (The Manchurian Step-Son - Modern Family Taboo-(Ashley Fires)-{Ashley Fires Fetish Clips}-[Kissing, Mind Fuck, Smoking Fetish].mp4) -2025-12-29 10:42:05,889 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/The Manchurian Step-Son - Modern Family Taboo-(Ashley Fires)-{Ashley Fires Fetish Clips}-[Kissing, Mind Fuck, Smoking Fetish].mp4 -2025-12-29 10:42:05,890 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - My Son Joins The Service.mp4 (Ashley Fires - My Son Joins The Service.mp4) -2025-12-29 10:42:05,890 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - My Son Joins The Service.mp4 -2025-12-29 10:42:05,890 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 1.mp4 (Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 1.mp4) -2025-12-29 10:42:05,890 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 1.mp4 -2025-12-29 10:42:05,890 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen - Brother Fucker.mp4 (Lacy Vixxen - Brother Fucker.mp4) -2025-12-29 10:42:05,890 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lacy Vixxen - Brother Fucker.mp4 -2025-12-29 10:42:05,890 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Party - Ashley Fires Fetish Clips.mp4 (Ashley Fires - Mommys Party - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,890 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Party - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,890 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen looks up to her Brother after getting zero action at the party.mp4 (Lacy Vixxen looks up to her Brother after getting zero action at the party.mp4) -2025-12-29 10:42:05,891 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lacy Vixxen looks up to her Brother after getting zero action at the party.mp4 -2025-12-29 10:42:05,891 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - My Son Is Ashamed Of Me - Modern Taboo Family ⁄ Ashley Fires Fetish Clips.mp4 (Lux Orchid - My Son Is Ashamed Of Me - Modern Taboo Family ⁄ Ashley Fires Fetish Clips.mp4) -2025-12-29 10:42:05,891 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - My Son Is Ashamed Of Me - Modern Taboo Family ⁄ Ashley Fires Fetish Clips.mp4 -2025-12-29 10:42:05,891 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Gets Married.mp4 (Ashley Fires - Mommy Gets Married.mp4) -2025-12-29 10:42:05,891 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Gets Married.mp4 -2025-12-29 10:42:05,891 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen -2025-12-29 10:42:05,903 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomsTeachSex.25.07.07.Anya.Olsen.Going.Around.The.World.With.Stepmom.XXX.1080p.MP4-WRB[XC] -2025-12-29 10:42:05,914 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomsTeachSex.25.07.07.Anya.Olsen.Going.Around.The.World.With.Stepmom.XXX.1080p.MP4-WRB[XC]/momsteachsex.25.07.07.anya.olsen.going.around.the.world.with.stepmom.mp4 (momsteachsex.25.07.07.anya.olsen.going.around.the.world.with.stepmom.mp4) -2025-12-29 10:42:05,915 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/anya.olsen/MomsTeachSex.25.07.07.Anya.Olsen.Going.Around.The.World.With.Stepmom.XXX.1080p.MP4-WRB[XC]/momsteachsex.25.07.07.anya.olsen.going.around.the.world.with.stepmom.mp4 -2025-12-29 10:42:05,915 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Sweet Step Mom Vacation Sex-(Anya Olsen)-{Household Fantasy}-[Blond Hair, Blowjob, Cumshot, Male - POV, cowgirl, creampie].mp4 (Sweet Step Mom Vacation Sex-(Anya Olsen)-{Household Fantasy}-[Blond Hair, Blowjob, Cumshot, Male - POV, cowgirl, creampie].mp4) -2025-12-29 10:42:05,915 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/anya.olsen/Sweet Step Mom Vacation Sex-(Anya Olsen)-{Household Fantasy}-[Blond Hair, Blowjob, Cumshot, Male - POV, cowgirl, creampie].mp4 -2025-12-29 10:42:05,915 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Watching Porn with Anya-(Anya Olsen)-{MissaX}-[Blowjob, Handjob, Natural Tits, Short Woman, creampie].mp4 (Watching Porn with Anya-(Anya Olsen)-{MissaX}-[Blowjob, Handjob, Natural Tits, Short Woman, creampie].mp4) -2025-12-29 10:43:07,736 - ERROR - ffprobe failed for /tmp/tmp8elfmo_d: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmp8elfmo_d']' returned non-zero exit status 1. -2025-12-29 10:43:07,753 - ERROR - ffmpeg failed for /tmp/tmp8elfmo_d: Command '['ffmpeg', '-i', '/tmp/tmp8elfmo_d', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpk4g_dtuv.jpg']' returned non-zero exit status 183. -2025-12-29 10:43:07,753 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/Watching Porn with Anya-(Anya Olsen)-{MissaX}-[Blowjob, Handjob, Natural Tits, Short Woman, creampie].mp4 -2025-12-29 10:43:07,790 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT -2025-12-29 10:43:07,801 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT.mp4 (MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT.mp4) -2025-12-29 10:43:07,802 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/anya.olsen/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT.mp4 -2025-12-29 10:43:07,802 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.HEVC.x265.PRT -2025-12-29 10:43:07,811 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.MP4-WRB[XC] -2025-12-29 10:43:07,822 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.MP4-WRB[XC]/momwantstobreed.25.07.04.anya.olsen.if.you.cum.in.me.ill.get.pregnant.mp4 (momwantstobreed.25.07.04.anya.olsen.if.you.cum.in.me.ill.get.pregnant.mp4) -2025-12-29 10:44:18,948 - ERROR - ffmpeg failed for /tmp/tmplbtvlnf1: Command '['ffmpeg', '-i', '/tmp/tmplbtvlnf1', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpilwelnr2.jpg']' returned non-zero exit status 228. -2025-12-29 10:44:18,948 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.MP4-WRB[XC]/momwantstobreed.25.07.04.anya.olsen.if.you.cum.in.me.ill.get.pregnant.mp4 -2025-12-29 10:44:18,986 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Anya Olsen Sophia Locke - Our Hot Moms Know How To Play - MomSwa.mp4 (Anya Olsen Sophia Locke - Our Hot Moms Know How To Play - MomSwa.mp4) -2025-12-29 10:44:18,987 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/anya.olsen/Anya Olsen Sophia Locke - Our Hot Moms Know How To Play - MomSwa.mp4 -2025-12-29 10:44:18,987 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsCreampie.25.10.11.Anya.Olsen.Your.Turn.To.Take.Care.Of.Me.Stepson.XXX.1080p.MP4-WRB[XC] -2025-12-29 10:44:18,997 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsCreampie.25.10.11.Anya.Olsen.Your.Turn.To.Take.Care.Of.Me.Stepson.XXX.1080p.MP4-WRB[XC]/momwantscreampie.25.10.11.anya.olsen.your.turn.to.take.care.of.me.stepson.mp4 (momwantscreampie.25.10.11.anya.olsen.your.turn.to.take.care.of.me.stepson.mp4) -2025-12-29 10:45:28,839 - ERROR - ffmpeg failed for /tmp/tmpure0vviv: Command '['ffmpeg', '-i', '/tmp/tmpure0vviv', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpmejhwzfc.jpg']' returned non-zero exit status 228. -2025-12-29 10:45:28,839 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsCreampie.25.10.11.Anya.Olsen.Your.Turn.To.Take.Care.Of.Me.Stepson.XXX.1080p.MP4-WRB[XC]/momwantscreampie.25.10.11.anya.olsen.your.turn.to.take.care.of.me.stepson.mp4 -2025-12-29 10:45:28,881 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.HEVC.x265.PRT -2025-12-29 10:45:28,891 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Lonely Step-Mom Needs Attention ~ Anya Olsen-{Household Fantasy}.mp4 (Lonely Step-Mom Needs Attention ~ Anya Olsen-{Household Fantasy}.mp4) -2025-12-29 10:46:39,179 - ERROR - ffprobe failed for /tmp/tmpre5gc0t1: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmpre5gc0t1']' returned non-zero exit status 1. -2025-12-29 10:46:39,197 - ERROR - ffmpeg failed for /tmp/tmpre5gc0t1: Command '['ffmpeg', '-i', '/tmp/tmpre5gc0t1', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmp08x00qyz.jpg']' returned non-zero exit status 183. -2025-12-29 10:46:39,197 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/Lonely Step-Mom Needs Attention ~ Anya Olsen-{Household Fantasy}.mp4 -2025-12-29 10:46:39,247 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.mp4 (FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.mp4) -2025-12-29 10:47:49,922 - ERROR - ffmpeg failed for /tmp/tmpxd2bebby: Command '['ffmpeg', '-i', '/tmp/tmpxd2bebby', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpnxp0i0zi.jpg']' returned non-zero exit status 228. -2025-12-29 10:47:49,922 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.mp4 -2025-12-29 10:47:49,965 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid in Mommy Helps Her Son Study by Ashley Fires Fetish Clips.mp4 (Lux Orchid in Mommy Helps Her Son Study by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:47:49,966 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid in Mommy Helps Her Son Study by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:47:49,966 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen in Family Picnic Part 1 by Ashley Fires Fetish Clips.mp4 (Ashley Fires, Anya Olsen in Family Picnic Part 1 by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:47:49,966 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen in Family Picnic Part 1 by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:47:49,966 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid in Mom works at strip club.mp4 (Ashley Fires, Lux Orchid in Mom works at strip club.mp4) -2025-12-29 10:47:49,966 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid in Mom works at strip club.mp4 -2025-12-29 10:47:49,966 - INFO - Processing video: /videos/ashley-fires-fetish-clips/My Two Brothers - Modern Taboo Family-(Anya Olsen)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, Double Blowjob, Family Roleplay, Missing Performer (Male), Step Brother, Step Sister, Threesome (BGG), creampie].mp4 (My Two Brothers - Modern Taboo Family-(Anya Olsen)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, Double Blowjob, Family Roleplay, Missing Performer (Male), Step Brother, Step Sister, Threesome (BGG), creampie].mp4) -2025-12-29 10:47:49,967 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/My Two Brothers - Modern Taboo Family-(Anya Olsen)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, Double Blowjob, Family Roleplay, Missing Performer (Male), Step Brother, Step Sister, Threesome (BGG), creampie].mp4 -2025-12-29 10:47:49,967 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Mint Rose - The Devil In My Daughter.mp4 (Ashley Fires, Mint Rose - The Devil In My Daughter.mp4) -2025-12-29 10:47:49,967 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Mint Rose - The Devil In My Daughter.mp4 -2025-12-29 10:47:49,967 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - Mommy is A Street Walking Whore - Ashley Fires Fetish Clips.mp4 (Lux Orchid - Mommy is A Street Walking Whore - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:47:49,967 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - Mommy is A Street Walking Whore - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:47:49,967 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Brother In Charge-(Anya Olsen)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, Gagging, Handjob, Step Sister].mp4 (Brother In Charge-(Anya Olsen)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, Gagging, Handjob, Step Sister].mp4) -2025-12-29 10:47:49,967 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Brother In Charge-(Anya Olsen)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, Gagging, Handjob, Step Sister].mp4 -2025-12-29 10:47:49,967 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid, Anya Olsen - Aunt, Mother, Daughter Threesome - The Weekend.mp4 (Ashley Fires, Lux Orchid, Anya Olsen - Aunt, Mother, Daughter Threesome - The Weekend.mp4) -2025-12-29 10:47:49,967 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid, Anya Olsen - Aunt, Mother, Daughter Threesome - The Weekend.mp4 -2025-12-29 10:47:49,967 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - Daughter Exchange Club - Daddy Does Daughter First - Ashley Fires Fetish Clips.mp4 (Anya Olsen - Daughter Exchange Club - Daddy Does Daughter First - Ashley Fires Fetish Clips.mp4) -2025-12-29 10:47:49,968 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen - Daughter Exchange Club - Daddy Does Daughter First - Ashley Fires Fetish Clips.mp4 -2025-12-29 10:47:49,968 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Chi in Daddy Knows Her Secret by Ashley Fires Fetish Clips.mp4 (Chi in Daddy Knows Her Secret by Ashley Fires Fetish Clips.mp4) -2025-12-29 10:47:49,968 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Chi in Daddy Knows Her Secret by Ashley Fires Fetish Clips.mp4 -2025-12-29 10:47:49,968 - INFO - Scanning directory: /videos/lenna.lux -2025-12-29 10:47:49,979 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Impregnate the College Virgin – Taboofantazy.mp4 (Lenna Lux - Impregnate the College Virgin – Taboofantazy.mp4) -2025-12-29 10:47:49,979 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Impregnate the College Virgin – Taboofantazy.mp4 -2025-12-29 10:47:49,979 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Step Sister Tit Fuck & Tease – Taboofantazy.mp4 (Lenna Lux - Step Sister Tit Fuck & Tease – Taboofantazy.mp4) -2025-12-29 10:47:49,980 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Step Sister Tit Fuck & Tease – Taboofantazy.mp4 -2025-12-29 10:47:49,980 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Vacation with Daddy – Taboofantazy.mp4 (Lenna Lux - Vacation with Daddy – Taboofantazy.mp4) -2025-12-29 10:47:59,228 - ERROR - ffprobe failed for /tmp/tmpbxhisoz9: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmpbxhisoz9']' returned non-zero exit status 1. -2025-12-29 10:47:59,247 - ERROR - ffmpeg failed for /tmp/tmpbxhisoz9: Command '['ffmpeg', '-i', '/tmp/tmpbxhisoz9', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmppdgwpj_v.jpg']' returned non-zero exit status 183. -2025-12-29 10:47:59,247 - WARNING - Could not get duration or hash for /videos/lenna.lux/Lenna Lux - Vacation with Daddy – Taboofantazy.mp4 -2025-12-29 10:47:59,253 - INFO - Processing video: /videos/lenna.lux/Lenna Lux, Carmen Valentina - Truth or Dare with Mom And Sis - Fifi Foxx Fantasies.mp4 (Lenna Lux, Carmen Valentina - Truth or Dare with Mom And Sis - Fifi Foxx Fantasies.mp4) -2025-12-29 10:47:59,254 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux, Carmen Valentina - Truth or Dare with Mom And Sis - Fifi Foxx Fantasies.mp4 -2025-12-29 10:47:59,254 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Stepbrother Blackmail Brat into Creampie – Taboo.mp4 (Lenna Lux - Stepbrother Blackmail Brat into Creampie – Taboo.mp4) -2025-12-29 10:47:59,254 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Stepbrother Blackmail Brat into Creampie – Taboo.mp4 -2025-12-29 10:47:59,254 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Teaching My Step Brother About Sex – Taboofantaz.mp4 (Lenna Lux - Teaching My Step Brother About Sex – Taboofantaz.mp4) -2025-12-29 10:47:59,254 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Teaching My Step Brother About Sex – Taboofantaz.mp4 -2025-12-29 10:47:59,254 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Daddys impregnation secret – Taboofantazy.mp4 (Lenna Lux - Daddys impregnation secret – Taboofantazy.mp4) -2025-12-29 10:48:09,145 - ERROR - ffprobe failed for /tmp/tmpdox3y74p: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmpdox3y74p']' returned non-zero exit status 1. -2025-12-29 10:48:09,163 - ERROR - ffmpeg failed for /tmp/tmpdox3y74p: Command '['ffmpeg', '-i', '/tmp/tmpdox3y74p', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmp4g7mqjhc.jpg']' returned non-zero exit status 183. -2025-12-29 10:48:09,164 - WARNING - Could not get duration or hash for /videos/lenna.lux/Lenna Lux - Daddys impregnation secret – Taboofantazy.mp4 -2025-12-29 10:48:09,170 - INFO - Processing video: /videos/lenna.lux/Lenna Lux, Carmen Valentina - Mother, Sister and Brother in Quarantine - Fifi Foxx Fantasies.mp4 (Lenna Lux, Carmen Valentina - Mother, Sister and Brother in Quarantine - Fifi Foxx Fantasies.mp4) -2025-12-29 10:48:09,171 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux, Carmen Valentina - Mother, Sister and Brother in Quarantine - Fifi Foxx Fantasies.mp4 -2025-12-29 10:48:09,171 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Daddy Can I Have Your Baby – Taboofantazy.mp4 (Lenna Lux - Daddy Can I Have Your Baby – Taboofantazy.mp4) -2025-12-29 10:48:09,171 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Daddy Can I Have Your Baby – Taboofantazy.mp4 -2025-12-29 10:48:09,171 - INFO - Processing video: /videos/lenna.lux/The Deal-(Lenna Lux)-{Family Therapy XXX}-[Blowjob, Cumshot].mp4 (The Deal-(Lenna Lux)-{Family Therapy XXX}-[Blowjob, Cumshot].mp4) -2025-12-29 10:48:09,172 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/The Deal-(Lenna Lux)-{Family Therapy XXX}-[Blowjob, Cumshot].mp4 -2025-12-29 10:48:09,172 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Shrunk My Step Brother – Taboofantazy.mp4 (Lenna Lux - Shrunk My Step Brother – Taboofantazy.mp4) -2025-12-29 10:48:09,172 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Shrunk My Step Brother – Taboofantazy.mp4 -2025-12-29 10:48:09,172 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Teen in Cosplay Begs Daddy to Cum – Taboofantazy.mp4 (Lenna Lux - Teen in Cosplay Begs Daddy to Cum – Taboofantazy.mp4) -2025-12-29 10:48:09,172 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Teen in Cosplay Begs Daddy to Cum – Taboofantazy.mp4 -2025-12-29 10:48:09,172 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Fucking Your Brat Step Sister – Taboofantazy.mp4 (Lenna Lux - Fucking Your Brat Step Sister – Taboofantazy.mp4) -2025-12-29 10:48:09,172 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Fucking Your Brat Step Sister – Taboofantazy.mp4 -2025-12-29 10:48:09,172 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Daddy's Perfect Virgin – Taboofantazy.mp4 (Lenna Lux - Daddy's Perfect Virgin – Taboofantazy.mp4) -2025-12-29 10:48:09,172 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Daddy's Perfect Virgin – Taboofantazy.mp4 -2025-12-29 10:48:09,172 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Step Brother Seduction – Taboofantazy.mp4 (Lenna Lux - Step Brother Seduction – Taboofantazy.mp4) -2025-12-29 10:48:09,173 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Step Brother Seduction – Taboofantazy.mp4 -2025-12-29 10:48:09,173 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Daddys Perving On Me – Taboofantazy.mp4 (Lenna Lux - Daddys Perving On Me – Taboofantazy.mp4) -2025-12-29 10:48:09,173 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Daddys Perving On Me – Taboofantazy.mp4 -2025-12-29 10:48:09,173 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Breed Me Step Brother I Need Your Cum – Taboofan.mp4 (Lenna Lux - Breed Me Step Brother I Need Your Cum – Taboofan.mp4) -2025-12-29 10:48:09,173 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Breed Me Step Brother I Need Your Cum – Taboofan.mp4 -2025-12-29 10:48:09,173 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Daddy Fucks His Teen Daughter – Taboofantazy.mp4 (Lenna Lux - Daddy Fucks His Teen Daughter – Taboofantazy.mp4) -2025-12-29 10:48:09,173 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Daddy Fucks His Teen Daughter – Taboofantazy.mp4 -2025-12-29 10:48:09,173 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - My Panty Sniffing Step Brother – Taboofantazy.mp4 (Lenna Lux - My Panty Sniffing Step Brother – Taboofantazy.mp4) -2025-12-29 10:48:09,174 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - My Panty Sniffing Step Brother – Taboofantazy.mp4 -2025-12-29 10:48:09,174 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - The Night Before - Brother And Sister Find Out They Had Drunken Sex - Fifi Foxx Fantasies.mp4 (Lenna Lux - The Night Before - Brother And Sister Find Out They Had Drunken Sex - Fifi Foxx Fantasies.mp4) -2025-12-29 10:48:09,174 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - The Night Before - Brother And Sister Find Out They Had Drunken Sex - Fifi Foxx Fantasies.mp4 -2025-12-29 10:48:09,174 - INFO - Scanning directory: /videos/lilibet.saunders -2025-12-29 10:48:09,185 - INFO - Processing video: /videos/lilibet.saunders/FamilyTherapyXXX - Lilibet Saunders - Little Step Sis Vs Boner (29.10.2025) rq.mp4 (FamilyTherapyXXX - Lilibet Saunders - Little Step Sis Vs Boner (29.10.2025) rq.mp4) -2025-12-29 10:48:09,186 - INFO - Skipping already processed and unaltered video: /videos/lilibet.saunders/FamilyTherapyXXX - Lilibet Saunders - Little Step Sis Vs Boner (29.10.2025) rq.mp4 -2025-12-29 10:48:09,186 - INFO - Scanning directory: /videos/lilibet.saunders/BangBus.25.05.21.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] -2025-12-29 10:48:09,196 - INFO - Processing video: /videos/lilibet.saunders/BangBus.25.05.21.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC]/bangbus.25.05.21.lilibet.saunders.mp4 (bangbus.25.05.21.lilibet.saunders.mp4) -2025-12-29 10:49:17,630 - ERROR - ffmpeg failed for /tmp/tmpdhjx8rby: Command '['ffmpeg', '-i', '/tmp/tmpdhjx8rby', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmp2_liyjae.jpg']' returned non-zero exit status 228. -2025-12-29 10:49:17,630 - WARNING - Could not get duration or hash for /videos/lilibet.saunders/BangBus.25.05.21.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC]/bangbus.25.05.21.lilibet.saunders.mp4 -2025-12-29 10:49:17,678 - INFO - Scanning directory: /videos/lilibet.saunders/TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.MP4-Narcos[XC] -2025-12-29 10:49:17,689 - INFO - Processing video: /videos/lilibet.saunders/TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.MP4-Narcos[XC]/TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.mp4 (TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.mp4) -2025-12-29 10:50:29,845 - ERROR - ffmpeg failed for /tmp/tmpp4s7f72i: Command '['ffmpeg', '-i', '/tmp/tmpp4s7f72i', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpf8at90lw.jpg']' returned non-zero exit status 228. -2025-12-29 10:50:29,845 - WARNING - Could not get duration or hash for /videos/lilibet.saunders/TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.MP4-Narcos[XC]/TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.mp4 -2025-12-29 10:50:29,895 - INFO - Processing video: /videos/lilibet.saunders/Little Step Sis Wants To Try Sex ~ Lilibet Saunders-{Household Fantasy}-[Amateur, Big Ass, Big Tits, Brown Hair, Male - POV, Multiple Cumshots, Pawg, Roleplay, Teen Girl (18–22), creampie].mp4 (Little Step Sis Wants To Try Sex ~ Lilibet Saunders-{Household Fantasy}-[Amateur, Big Ass, Big Tits, Brown Hair, Male - POV, Multiple Cumshots, Pawg, Roleplay, Teen Girl (18–22), creampie].mp4) -2025-12-29 10:51:03,934 - INFO - Processed video: /videos/lilibet.saunders/Little Step Sis Wants To Try Sex ~ Lilibet Saunders-{Household Fantasy}-[Amateur, Big Ass, Big Tits, Brown Hair, Male - POV, Multiple Cumshots, Pawg, Roleplay, Teen Girl (18–22), creampie].mp4 -2025-12-29 10:51:03,959 - INFO - Scanning directory: /videos/lilibet.saunders/TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.MP4-Narcos[XC] -2025-12-29 10:51:03,971 - INFO - Processing video: /videos/lilibet.saunders/TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.MP4-Narcos[XC]/TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.mp4 (TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.mp4) -2025-12-29 10:51:38,595 - INFO - Processed video: /videos/lilibet.saunders/TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.MP4-Narcos[XC]/TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.mp4 -2025-12-29 10:51:38,620 - INFO - Scanning directory: /videos/lilibet.saunders/SisLovesMe.25.09.06.Nicole.Kitt.And.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] -2025-12-29 10:51:38,629 - INFO - Processing video: /videos/lilibet.saunders/SisLovesMe.25.09.06.Nicole.Kitt.And.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC]/Let’s Fuck Dad’s New Girlfriend Like Good Step-Siblings-(Nicole Kitt, Lilibet Saunders)-{Sis Loves Me}.mp4 (Let’s Fuck Dad’s New Girlfriend Like Good Step-Siblings-(Nicole Kitt, Lilibet Saunders)-{Sis Loves Me}.mp4) -2025-12-29 10:52:50,197 - ERROR - ffmpeg failed for /tmp/tmp1idpo5vk: Command '['ffmpeg', '-i', '/tmp/tmp1idpo5vk', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpl64ql73q.jpg']' returned non-zero exit status 228. -2025-12-29 10:52:50,198 - WARNING - Could not get duration or hash for /videos/lilibet.saunders/SisLovesMe.25.09.06.Nicole.Kitt.And.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC]/Let’s Fuck Dad’s New Girlfriend Like Good Step-Siblings-(Nicole Kitt, Lilibet Saunders)-{Sis Loves Me}.mp4 -2025-12-29 10:52:50,246 - INFO - Processing video: /videos/lilibet.saunders/BFFS - Brina Scarlet, Fun Sized Megan, Lil Bet Saunders (08.06.2025) rq.mp4 (BFFS - Brina Scarlet, Fun Sized Megan, Lil Bet Saunders (08.06.2025) rq.mp4) -2025-12-29 10:53:09,378 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 10:53:09,396 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 10:53:09,396 - INFO - SMB2 dialect negotiation successful -2025-12-29 10:53:09,399 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'fa523d1e971a197d'" -2025-12-29 10:53:09,399 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'fa523d1e971a197d'" -2025-12-29 10:53:09,400 - INFO - Server supports SMB signing -2025-12-29 10:53:09,400 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 10:53:09,406 - INFO - Authentication (on SMB2) successful! -2025-12-29 10:53:12,385 - INFO - Processed video: /videos/lilibet.saunders/BFFS - Brina Scarlet, Fun Sized Megan, Lil Bet Saunders (08.06.2025) rq.mp4 -2025-12-29 10:53:12,398 - INFO - Processing video: /videos/lilibet.saunders/I Normally Don't Fuck Like This-(Lilibet Saunders)-{Exploited College Girls}-[Big Tits, Brown Hair, Deepthroat, Face Fuck, Facial, Freckles, Gagging, High School, Innocent, Rough, Shy, Teen (18–22), Titjob, Toys, squirting].mp4 (I Normally Don't Fuck Like This-(Lilibet Saunders)-{Exploited College Girls}-[Big Tits, Brown Hair, Deepthroat, Face Fuck, Facial, Freckles, Gagging, High School, Innocent, Rough, Shy, Teen (18–22), Titjob, Toys, squirting].mp4) -2025-12-29 10:53:15,156 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 10:53:15,172 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 10:53:15,172 - INFO - SMB2 dialect negotiation successful -2025-12-29 10:53:15,175 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'e2e940ec41a4a265'" -2025-12-29 10:53:15,175 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'e2e940ec41a4a265'" -2025-12-29 10:53:15,175 - INFO - Server supports SMB signing -2025-12-29 10:53:15,175 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 10:53:15,182 - INFO - Authentication (on SMB2) successful! -2025-12-29 10:53:15,292 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 10:53:15,304 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 10:53:15,304 - INFO - SMB2 dialect negotiation successful -2025-12-29 10:53:15,308 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'aa54c65a2daf96dc'" -2025-12-29 10:53:15,308 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'aa54c65a2daf96dc'" -2025-12-29 10:53:15,308 - INFO - Server supports SMB signing -2025-12-29 10:53:15,308 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 10:53:15,314 - INFO - Authentication (on SMB2) successful! -2025-12-29 10:54:00,938 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 10:54:00,946 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 10:54:00,954 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 10:54:00,954 - INFO - SMB2 dialect negotiation successful -2025-12-29 10:54:00,957 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'd545388655935b0b'" -2025-12-29 10:54:00,957 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'd545388655935b0b'" -2025-12-29 10:54:00,958 - INFO - Server supports SMB signing -2025-12-29 10:54:00,958 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 10:54:00,962 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 10:54:00,962 - INFO - SMB2 dialect negotiation successful -2025-12-29 10:54:00,965 - INFO - Authentication (on SMB2) successful! -2025-12-29 10:54:00,965 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'346f4e81cec46200'" -2025-12-29 10:54:00,965 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'346f4e81cec46200'" -2025-12-29 10:54:00,966 - INFO - Server supports SMB signing -2025-12-29 10:54:00,966 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 10:54:00,971 - INFO - Authentication (on SMB2) successful! -2025-12-29 10:54:23,719 - ERROR - ffprobe failed for /tmp/tmp7_2u7tz8: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmp7_2u7tz8']' returned non-zero exit status 1. -2025-12-29 10:54:23,737 - ERROR - ffmpeg failed for /tmp/tmp7_2u7tz8: Command '['ffmpeg', '-i', '/tmp/tmp7_2u7tz8', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmp4rsurfzo.jpg']' returned non-zero exit status 183. -2025-12-29 10:54:23,737 - WARNING - Could not get duration or hash for /videos/lilibet.saunders/I Normally Don't Fuck Like This-(Lilibet Saunders)-{Exploited College Girls}-[Big Tits, Brown Hair, Deepthroat, Face Fuck, Facial, Freckles, Gagging, High School, Innocent, Rough, Shy, Teen (18–22), Titjob, Toys, squirting].mp4 -2025-12-29 10:54:23,787 - INFO - Scanning directory: /videos/lilibet.saunders/TeenFidelity.E683.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] -2025-12-29 10:54:23,797 - INFO - Processing video: /videos/lilibet.saunders/TeenFidelity.E683.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC]/A Little Bit-(Lilibet Saunders)-{Teenfidelity}-[18+, Big Dick, Big Tits, Bouncing Tits, Brown Hair, Corset, Hairless Pussy, Natural Tits, creampie].mp4 (A Little Bit-(Lilibet Saunders)-{Teenfidelity}-[18+, Big Dick, Big Tits, Bouncing Tits, Brown Hair, Corset, Hairless Pussy, Natural Tits, creampie].mp4) -2025-12-29 10:55:35,637 - ERROR - ffmpeg failed for /tmp/tmprsv2woao: Command '['ffmpeg', '-i', '/tmp/tmprsv2woao', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmp60klseoi.jpg']' returned non-zero exit status 228. -2025-12-29 10:55:35,637 - WARNING - Could not get duration or hash for /videos/lilibet.saunders/TeenFidelity.E683.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC]/A Little Bit-(Lilibet Saunders)-{Teenfidelity}-[18+, Big Dick, Big Tits, Bouncing Tits, Brown Hair, Corset, Hairless Pussy, Natural Tits, creampie].mp4 -2025-12-29 10:55:35,687 - INFO - Processing video: /videos/lilibet.saunders/Redhead Horny Teen Gets Massage Creampie from her Step Daddy Par.mp4 (Redhead Horny Teen Gets Massage Creampie from her Step Daddy Par.mp4) -2025-12-29 10:55:51,200 - INFO - Processed video: /videos/lilibet.saunders/Redhead Horny Teen Gets Massage Creampie from her Step Daddy Par.mp4 -2025-12-29 10:55:51,211 - INFO - Scanning directory: /videos/lilibet.saunders/TeenyTaboo.25.08.22.Lilibet.Saunders.XXX.1080p.HEVC.x265.PRT -2025-12-29 10:55:51,221 - INFO - Processing video: /videos/lilibet.saunders/Step Daddy Fucks Teen Step Daughter Leaving Mess on her Face and.mp4 (Step Daddy Fucks Teen Step Daughter Leaving Mess on her Face and.mp4) -2025-12-29 10:55:57,366 - ERROR - ffprobe failed for /tmp/tmpmpsynumn: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmpmpsynumn']' returned non-zero exit status 1. -2025-12-29 10:55:57,385 - ERROR - ffmpeg failed for /tmp/tmpmpsynumn: Command '['ffmpeg', '-i', '/tmp/tmpmpsynumn', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpqkjc5ltg.jpg']' returned non-zero exit status 183. -2025-12-29 10:55:57,385 - WARNING - Could not get duration or hash for /videos/lilibet.saunders/Step Daddy Fucks Teen Step Daughter Leaving Mess on her Face and.mp4 -2025-12-29 10:55:57,389 - INFO - Scanning directory: /videos/lilibet.saunders/TabooHeat.25.10.06.Cory.Chase.Lilibet.Saunders.XXX.1080p.MP4-Narcos[XC] -2025-12-29 10:55:57,400 - INFO - Processing video: /videos/lilibet.saunders/TabooHeat.25.10.06.Cory.Chase.Lilibet.Saunders.XXX.1080p.MP4-Narcos[XC]/TabooHeat.25.10.06.Cory.Chase.Lilibet.Saunders.XXX.1080p.mp4 (TabooHeat.25.10.06.Cory.Chase.Lilibet.Saunders.XXX.1080p.mp4) -2025-12-29 10:57:10,935 - ERROR - ffmpeg failed for /tmp/tmpcadhq0i4: Command '['ffmpeg', '-i', '/tmp/tmpcadhq0i4', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpkpr8_16l.jpg']' returned non-zero exit status 228. -2025-12-29 10:57:10,935 - WARNING - Could not get duration or hash for /videos/lilibet.saunders/TabooHeat.25.10.06.Cory.Chase.Lilibet.Saunders.XXX.1080p.MP4-Narcos[XC]/TabooHeat.25.10.06.Cory.Chase.Lilibet.Saunders.XXX.1080p.mp4 -2025-12-29 10:57:10,984 - INFO - Scanning directory: /videos/lilibet.saunders/ATKGalleria.25.06.23.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] -2025-12-29 10:57:10,995 - INFO - Processing video: /videos/lilibet.saunders/ATKGalleria.25.06.23.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC]/Lilibet Saunders Talks Sex And Porn-{ATK Galleria}-[Big Ass, Big Tits, Brown Hair, Curvy, Hairless Pussy, Interview, Leggings, Long Hair, Medium Skin, Pale Skin, Spread Ass, White Woman].mp4 (Lilibet Saunders Talks Sex And Porn-{ATK Galleria}-[Big Ass, Big Tits, Brown Hair, Curvy, Hairless Pussy, Interview, Leggings, Long Hair, Medium Skin, Pale Skin, Spread Ass, White Woman].mp4) -2025-12-29 10:58:05,916 - INFO - Processed video: /videos/lilibet.saunders/ATKGalleria.25.06.23.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC]/Lilibet Saunders Talks Sex And Porn-{ATK Galleria}-[Big Ass, Big Tits, Brown Hair, Curvy, Hairless Pussy, Interview, Leggings, Long Hair, Medium Skin, Pale Skin, Spread Ass, White Woman].mp4 -2025-12-29 10:58:05,958 - INFO - Processing video: /videos/lilibet.saunders/Lilibet Saunders In Me & Step Dad Always Fuck When Step Mom Leaves - Parts (1-2)-{Taboo Heat}.mp4 (Lilibet Saunders In Me & Step Dad Always Fuck When Step Mom Leaves - Parts (1-2)-{Taboo Heat}.mp4) -2025-12-29 10:58:50,258 - INFO - Processed video: /videos/lilibet.saunders/Lilibet Saunders In Me & Step Dad Always Fuck When Step Mom Leaves - Parts (1-2)-{Taboo Heat}.mp4 -2025-12-29 10:58:50,296 - INFO - Processing video: /videos/lilibet.saunders/EXCOGI Girls - Lilibet Ophelia Fae in Ive Never Kissed A Girl Before.mp4 (EXCOGI Girls - Lilibet Ophelia Fae in Ive Never Kissed A Girl Before.mp4) -2025-12-29 10:59:54,000 - INFO - Processed video: /videos/lilibet.saunders/EXCOGI Girls - Lilibet Ophelia Fae in Ive Never Kissed A Girl Before.mp4 -2025-12-29 10:59:54,040 - INFO - Processing video: /videos/lilibet.saunders/BangBus - Lilibet Saunders - It's Too Big (21.05.2025) rq.mp4 (BangBus - Lilibet Saunders - It's Too Big (21.05.2025) rq.mp4) -2025-12-29 11:00:29,184 - INFO - Processed video: /videos/lilibet.saunders/BangBus - Lilibet Saunders - It's Too Big (21.05.2025) rq.mp4 -2025-12-29 11:00:29,215 - INFO - Processing video: /videos/lilibet.saunders/Stepdaughter Psychology-(Lilibet Saunders)-{Taboo}.mp4 (Stepdaughter Psychology-(Lilibet Saunders)-{Taboo}.mp4) -2025-12-29 11:01:41,672 - ERROR - ffprobe failed for /tmp/tmp9r6cgpoz: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmp9r6cgpoz']' returned non-zero exit status 1. -2025-12-29 11:01:41,690 - ERROR - ffmpeg failed for /tmp/tmp9r6cgpoz: Command '['ffmpeg', '-i', '/tmp/tmp9r6cgpoz', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmp_hxp86id.jpg']' returned non-zero exit status 183. -2025-12-29 11:01:41,690 - WARNING - Could not get duration or hash for /videos/lilibet.saunders/Stepdaughter Psychology-(Lilibet Saunders)-{Taboo}.mp4 -2025-12-29 11:01:41,746 - INFO - Scanning directory: /videos/lilibet.saunders/ATKGalleria.25.07.07.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] -2025-12-29 11:01:41,755 - INFO - Processing video: /videos/lilibet.saunders/ATKGalleria.25.07.07.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC]/Lilibet Saunders is spreading wide-{ATK Galleria}-[Big Ass, Big Tits, Brown Hair (Female), Curvy, Hairless Pussy, Long Hair, Pale Skin, Panties, Solo Female, Striptease, White, Yoga].mp4 (Lilibet Saunders is spreading wide-{ATK Galleria}-[Big Ass, Big Tits, Brown Hair (Female), Curvy, Hairless Pussy, Long Hair, Pale Skin, Panties, Solo Female, Striptease, White, Yoga].mp4) -2025-12-29 11:02:28,417 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 11:02:28,433 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 11:02:28,433 - INFO - SMB2 dialect negotiation successful -2025-12-29 11:02:28,436 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'6036e66cbef97048'" -2025-12-29 11:02:28,437 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'6036e66cbef97048'" -2025-12-29 11:02:28,437 - INFO - Server supports SMB signing -2025-12-29 11:02:28,437 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 11:02:28,443 - INFO - Authentication (on SMB2) successful! -2025-12-29 11:02:56,325 - INFO - No compatible GPU or ffmpeg build detected. Falling back to CPU-based processing. -2025-12-29 11:02:56,326 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 11:02:56,341 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 11:02:56,341 - INFO - SMB2 dialect negotiation successful -2025-12-29 11:02:56,344 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'b1db293491ebc338'" -2025-12-29 11:02:56,344 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'b1db293491ebc338'" -2025-12-29 11:02:56,345 - INFO - Server supports SMB signing -2025-12-29 11:02:56,345 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 11:02:56,353 - INFO - Authentication (on SMB2) successful! -2025-12-29 11:02:56,353 - INFO - Starting scan for videos in /videos on share 'isolation' -2025-12-29 11:02:56,353 - INFO - Scanning directory: /videos -2025-12-29 11:02:56,417 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips -2025-12-29 11:02:56,434 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Preparing For The Big Game - Ashley Fires Fetish Clips.mp4 (Ashley Fires - Preparing For The Big Game - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,441 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Preparing For The Big Game - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,441 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires in Elder Sister Fucks Her Virgin Brother.mp4 (Ashley Fires in Elder Sister Fucks Her Virgin Brother.mp4) -2025-12-29 11:02:56,441 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires in Elder Sister Fucks Her Virgin Brother.mp4 -2025-12-29 11:02:56,441 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - My Sister Needs Me - Ashley Fires Fetish Clips.mp4 (Anya Olsen - My Sister Needs Me - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,442 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen - My Sister Needs Me - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,442 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen gives a make-out lesson to her Brother.mp4 (Lacy Vixxen gives a make-out lesson to her Brother.mp4) -2025-12-29 11:02:56,442 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lacy Vixxen gives a make-out lesson to her Brother.mp4 -2025-12-29 11:02:56,442 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 1 - Ashley Fires Fetish Clips. Dad made Son fuck Mom after he caught him watching his parents have sex.mp4 (Lux Orchid - The Lake House Part 1 - Ashley Fires Fetish Clips. Dad made Son fuck Mom after he caught him watching his parents have sex.mp4) -2025-12-29 11:02:56,442 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 1 - Ashley Fires Fetish Clips. Dad made Son fuck Mom after he caught him watching his parents have sex.mp4 -2025-12-29 11:02:56,442 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy needs Him - Modern Taboo Family.mp4 (Ashley Fires - Mommy needs Him - Modern Taboo Family.mp4) -2025-12-29 11:02:56,442 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy needs Him - Modern Taboo Family.mp4 -2025-12-29 11:02:56,442 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (1) - Modern Taboo Family.mp4 (Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (1) - Modern Taboo Family.mp4) -2025-12-29 11:02:56,442 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (1) - Modern Taboo Family.mp4 -2025-12-29 11:02:56,443 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Family Picnic - Part 3 - Modern Taboo Family-(Anya Olsen, Ashley Fires)-{Ashley Fires Fetish Clips}.mp4 (Family Picnic - Part 3 - Modern Taboo Family-(Anya Olsen, Ashley Fires)-{Ashley Fires Fetish Clips}.mp4) -2025-12-29 11:02:56,443 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Family Picnic - Part 3 - Modern Taboo Family-(Anya Olsen, Ashley Fires)-{Ashley Fires Fetish Clips}.mp4 -2025-12-29 11:02:56,443 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen, Harlo Adams in Family Playdate by Ashley Fires Fetish Clips.mp4 (Ashley Fires, Anya Olsen, Harlo Adams in Family Playdate by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,443 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen, Harlo Adams in Family Playdate by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,443 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Doctor Mom Gets Double Penetrated By Her Brother and Son - Ashley Fires Fetish Clips.mp4 (Doctor Mom Gets Double Penetrated By Her Brother and Son - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,443 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Doctor Mom Gets Double Penetrated By Her Brother and Son - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,443 - INFO - Processing video: /videos/ashley-fires-fetish-clips/A Daughters Family Initiation - Modern Taboo Family - HD VERSION-(Anya Olsen, Madeline Blue)-{Ashley Fires Fetish Clips}-[Cum Swapping, Older Woman - Younger Man, Step Dad, Step Daughter, Step Mother].mp4 (A Daughters Family Initiation - Modern Taboo Family - HD VERSION-(Anya Olsen, Madeline Blue)-{Ashley Fires Fetish Clips}-[Cum Swapping, Older Woman - Younger Man, Step Dad, Step Daughter, Step Mother].mp4) -2025-12-29 11:02:56,443 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/A Daughters Family Initiation - Modern Taboo Family - HD VERSION-(Anya Olsen, Madeline Blue)-{Ashley Fires Fetish Clips}-[Cum Swapping, Older Woman - Younger Man, Step Dad, Step Daughter, Step Mother].mp4 -2025-12-29 11:02:56,443 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Elder Sister punishes younger Sister for sleeping with Dad. Lacy Vixxen, Lexy Lynne in Little Sister gets Airtight by Ashley Fires Fetish Clips.mp4 (Elder Sister punishes younger Sister for sleeping with Dad. Lacy Vixxen, Lexy Lynne in Little Sister gets Airtight by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,444 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Elder Sister punishes younger Sister for sleeping with Dad. Lacy Vixxen, Lexy Lynne in Little Sister gets Airtight by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,444 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Dad caught Anya making out with her Brother. Anya Olsen - Mommy Made Me Do It.mp4 (Dad caught Anya making out with her Brother. Anya Olsen - Mommy Made Me Do It.mp4) -2025-12-29 11:02:56,444 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Dad caught Anya making out with her Brother. Anya Olsen - Mommy Made Me Do It.mp4 -2025-12-29 11:02:56,444 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - Daughter Exchange Club - Teaching Daughter To Be A Whore - Ashley Fires Fetish Clips.mp4 (Anya Olsen - Daughter Exchange Club - Teaching Daughter To Be A Whore - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,444 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen - Daughter Exchange Club - Teaching Daughter To Be A Whore - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,444 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Brother force-fucks Lacy Vixxen in bathroom, get caught by their Moms friend, then tries to comfort her by fucking her again.mp4 (Brother force-fucks Lacy Vixxen in bathroom, get caught by their Moms friend, then tries to comfort her by fucking her again.mp4) -2025-12-29 11:02:56,444 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Brother force-fucks Lacy Vixxen in bathroom, get caught by their Moms friend, then tries to comfort her by fucking her again.mp4 -2025-12-29 11:02:56,444 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - She Lets Daddy Inside - Ashley Fires Fetish Clips.mp4 (Anya Olsen - She Lets Daddy Inside - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,445 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen - She Lets Daddy Inside - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,445 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 2.mp4 (Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 2.mp4) -2025-12-29 11:02:56,445 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 2.mp4 -2025-12-29 11:02:56,445 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (2) - Modern Taboo Family.mp4 (Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (2) - Modern Taboo Family.mp4) -2025-12-29 11:02:56,445 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (2) - Modern Taboo Family.mp4 -2025-12-29 11:02:56,445 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen, Ashley Fires - Homewrecking Daughter Punished By Mom.mp4 (Anya Olsen, Ashley Fires - Homewrecking Daughter Punished By Mom.mp4) -2025-12-29 11:02:56,445 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen, Ashley Fires - Homewrecking Daughter Punished By Mom.mp4 -2025-12-29 11:02:56,445 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Special Diet.mp4 (Ashley Fires - Mommys Special Diet.mp4) -2025-12-29 11:02:56,446 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Special Diet.mp4 -2025-12-29 11:02:56,446 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Megan Maiden - Mom Is Clueless - Ashley Fires Fetish Clips.mp4 (Megan Maiden - Mom Is Clueless - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,446 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Megan Maiden - Mom Is Clueless - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,446 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Step-Brother Gets His Christmas Wish - PART 1-(Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, From Chapter, Pussy Licking, Step Brother, taboo].mp4 (Step-Brother Gets His Christmas Wish - PART 1-(Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, From Chapter, Pussy Licking, Step Brother, taboo].mp4) -2025-12-29 11:02:56,446 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Step-Brother Gets His Christmas Wish - PART 1-(Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, From Chapter, Pussy Licking, Step Brother, taboo].mp4 -2025-12-29 11:02:56,446 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Sadie Holmes, Ashley Fires - Brothers Homecoming - Ashley Fires Fetish Clips.mp4 (Sadie Holmes, Ashley Fires - Brothers Homecoming - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,446 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Sadie Holmes, Ashley Fires - Brothers Homecoming - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,446 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Turns Her Boy Into A Man - A Mothers Love - Modern Taboo Family.mp4 (Ashley Fires - Mommy Turns Her Boy Into A Man - A Mothers Love - Modern Taboo Family.mp4) -2025-12-29 11:02:56,446 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Turns Her Boy Into A Man - A Mothers Love - Modern Taboo Family.mp4 -2025-12-29 11:02:56,446 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid in Son Gets Anal With Mom And Aunt.mp4 (Ashley Fires, Lux Orchid in Son Gets Anal With Mom And Aunt.mp4) -2025-12-29 11:02:56,446 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid in Son Gets Anal With Mom And Aunt.mp4 -2025-12-29 11:02:56,446 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen, Lux Orchid in Mommy and Brothers House Rules by Ashley Fires Fetish Clips.mp4 (Anya Olsen, Lux Orchid in Mommy and Brothers House Rules by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,447 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen, Lux Orchid in Mommy and Brothers House Rules by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,447 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid in My Mother My Whore by Ashley Fires Fetish Clips.mp4 (Lux Orchid in My Mother My Whore by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,447 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid in My Mother My Whore by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,447 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Brother creampies his Sister Chi. Brother Gets His Christmas Wish Part 2 by Ashley Fires Fetish Clips.mp4 (Brother creampies his Sister Chi. Brother Gets His Christmas Wish Part 2 by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,447 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Brother creampies his Sister Chi. Brother Gets His Christmas Wish Part 2 by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,447 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires in Dont Leave Mommy - Modern Taboo Family.mp4 (Ashley Fires in Dont Leave Mommy - Modern Taboo Family.mp4) -2025-12-29 11:02:56,447 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires in Dont Leave Mommy - Modern Taboo Family.mp4 -2025-12-29 11:02:56,447 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid in Mommy Says Good Night by Ashley Fires Fetish Clips.mp4 (Lux Orchid in Mommy Says Good Night by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,447 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid in Mommy Says Good Night by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,447 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen returns the favour to her Brother.mp4 (Lacy Vixxen returns the favour to her Brother.mp4) -2025-12-29 11:02:56,448 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lacy Vixxen returns the favour to her Brother.mp4 -2025-12-29 11:02:56,448 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - Mommy Says Good Morning - Ashley Fires Fetish Clips.mp4 (Lux Orchid - Mommy Says Good Morning - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,448 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - Mommy Says Good Morning - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,448 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - This Hurts Mommy More - Ashley Fires Fetish Clips.mp4 (Lux Orchid - This Hurts Mommy More - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,448 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - This Hurts Mommy More - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,448 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen in Family Picnic Part 2 by Ashley Fires Fetish Clips.mp4 (Ashley Fires, Anya Olsen in Family Picnic Part 2 by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,448 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen in Family Picnic Part 2 by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,448 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 2 - Ashley Fires Fetish Clips. Son Is The Man Of The House Now.mp4 (Lux Orchid - The Lake House Part 2 - Ashley Fires Fetish Clips. Son Is The Man Of The House Now.mp4) -2025-12-29 11:02:56,448 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 2 - Ashley Fires Fetish Clips. Son Is The Man Of The House Now.mp4 -2025-12-29 11:02:56,448 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Forced-feminization of Brother. Lacy Vixxen - My Brother is My Sister.mp4 (Forced-feminization of Brother. Lacy Vixxen - My Brother is My Sister.mp4) -2025-12-29 11:02:56,449 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Forced-feminization of Brother. Lacy Vixxen - My Brother is My Sister.mp4 -2025-12-29 11:02:56,449 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Sister has to do the unthinkable. Anya Olsen in Modern Taboo Family by Ashley Fires Fetish Clips.mp4 (Sister has to do the unthinkable. Anya Olsen in Modern Taboo Family by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,449 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Sister has to do the unthinkable. Anya Olsen in Modern Taboo Family by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,449 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Mommy Makes Her Sons Cum Together. Ashley Fires in A Mothers Love.mp4 (Mommy Makes Her Sons Cum Together. Ashley Fires in A Mothers Love.mp4) -2025-12-29 11:02:56,449 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Mommy Makes Her Sons Cum Together. Ashley Fires in A Mothers Love.mp4 -2025-12-29 11:02:56,449 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anal Lessons From Step-Mom-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Anal Creampie, Cum Swapping, MILF (30+), Rimming, creampie, taboo].mp4 (Anal Lessons From Step-Mom-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Anal Creampie, Cum Swapping, MILF (30+), Rimming, creampie, taboo].mp4) -2025-12-29 11:02:56,449 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anal Lessons From Step-Mom-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Anal Creampie, Cum Swapping, MILF (30+), Rimming, creampie, taboo].mp4 -2025-12-29 11:02:56,449 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Daughter blows her asleep Daddy. Chi in Waking Daddy by Ashley Fires Fetish Clips.mp4 (Daughter blows her asleep Daddy. Chi in Waking Daddy by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,450 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Daughter blows her asleep Daddy. Chi in Waking Daddy by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,450 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Family Fraternity-(Ashley Fires, Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Doggy Style, Missionary, Pussy Licking, cowgirl, taboo].mp4 (Family Fraternity-(Ashley Fires, Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Doggy Style, Missionary, Pussy Licking, cowgirl, taboo].mp4) -2025-12-29 11:02:56,450 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Family Fraternity-(Ashley Fires, Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Doggy Style, Missionary, Pussy Licking, cowgirl, taboo].mp4 -2025-12-29 11:02:56,450 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Modern Taboo Family - Step-Brother Step-Sister Prom Date-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Foursome].mp4 (Modern Taboo Family - Step-Brother Step-Sister Prom Date-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Foursome].mp4) -2025-12-29 11:02:56,450 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Modern Taboo Family - Step-Brother Step-Sister Prom Date-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Foursome].mp4 -2025-12-29 11:02:56,450 - INFO - Processing video: /videos/ashley-fires-fetish-clips/The Manchurian Step-Son - Modern Family Taboo-(Ashley Fires)-{Ashley Fires Fetish Clips}-[Kissing, Mind Fuck, Smoking Fetish].mp4 (The Manchurian Step-Son - Modern Family Taboo-(Ashley Fires)-{Ashley Fires Fetish Clips}-[Kissing, Mind Fuck, Smoking Fetish].mp4) -2025-12-29 11:02:56,450 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/The Manchurian Step-Son - Modern Family Taboo-(Ashley Fires)-{Ashley Fires Fetish Clips}-[Kissing, Mind Fuck, Smoking Fetish].mp4 -2025-12-29 11:02:56,450 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - My Son Joins The Service.mp4 (Ashley Fires - My Son Joins The Service.mp4) -2025-12-29 11:02:56,450 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - My Son Joins The Service.mp4 -2025-12-29 11:02:56,451 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 1.mp4 (Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 1.mp4) -2025-12-29 11:02:56,451 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 1.mp4 -2025-12-29 11:02:56,451 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen - Brother Fucker.mp4 (Lacy Vixxen - Brother Fucker.mp4) -2025-12-29 11:02:56,451 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lacy Vixxen - Brother Fucker.mp4 -2025-12-29 11:02:56,451 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Party - Ashley Fires Fetish Clips.mp4 (Ashley Fires - Mommys Party - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,451 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Party - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,451 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen looks up to her Brother after getting zero action at the party.mp4 (Lacy Vixxen looks up to her Brother after getting zero action at the party.mp4) -2025-12-29 11:02:56,451 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lacy Vixxen looks up to her Brother after getting zero action at the party.mp4 -2025-12-29 11:02:56,451 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - My Son Is Ashamed Of Me - Modern Taboo Family ⁄ Ashley Fires Fetish Clips.mp4 (Lux Orchid - My Son Is Ashamed Of Me - Modern Taboo Family ⁄ Ashley Fires Fetish Clips.mp4) -2025-12-29 11:02:56,452 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - My Son Is Ashamed Of Me - Modern Taboo Family ⁄ Ashley Fires Fetish Clips.mp4 -2025-12-29 11:02:56,452 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Gets Married.mp4 (Ashley Fires - Mommy Gets Married.mp4) -2025-12-29 11:02:56,452 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Gets Married.mp4 -2025-12-29 11:02:56,452 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen -2025-12-29 11:02:56,464 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomsTeachSex.25.07.07.Anya.Olsen.Going.Around.The.World.With.Stepmom.XXX.1080p.MP4-WRB[XC] -2025-12-29 11:02:56,479 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomsTeachSex.25.07.07.Anya.Olsen.Going.Around.The.World.With.Stepmom.XXX.1080p.MP4-WRB[XC]/momsteachsex.25.07.07.anya.olsen.going.around.the.world.with.stepmom.mp4 (momsteachsex.25.07.07.anya.olsen.going.around.the.world.with.stepmom.mp4) -2025-12-29 11:02:56,479 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/anya.olsen/MomsTeachSex.25.07.07.Anya.Olsen.Going.Around.The.World.With.Stepmom.XXX.1080p.MP4-WRB[XC]/momsteachsex.25.07.07.anya.olsen.going.around.the.world.with.stepmom.mp4 -2025-12-29 11:02:56,479 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Sweet Step Mom Vacation Sex-(Anya Olsen)-{Household Fantasy}-[Blond Hair, Blowjob, Cumshot, Male - POV, cowgirl, creampie].mp4 (Sweet Step Mom Vacation Sex-(Anya Olsen)-{Household Fantasy}-[Blond Hair, Blowjob, Cumshot, Male - POV, cowgirl, creampie].mp4) -2025-12-29 11:02:56,479 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/anya.olsen/Sweet Step Mom Vacation Sex-(Anya Olsen)-{Household Fantasy}-[Blond Hair, Blowjob, Cumshot, Male - POV, cowgirl, creampie].mp4 -2025-12-29 11:02:56,479 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Watching Porn with Anya-(Anya Olsen)-{MissaX}-[Blowjob, Handjob, Natural Tits, Short Woman, creampie].mp4 (Watching Porn with Anya-(Anya Olsen)-{MissaX}-[Blowjob, Handjob, Natural Tits, Short Woman, creampie].mp4) -2025-12-29 11:03:30,298 - ERROR - ffprobe failed for /tmp/tmpim3mwqj_: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmpim3mwqj_']' returned non-zero exit status 1. -2025-12-29 11:03:30,316 - ERROR - ffmpeg failed for /tmp/tmpim3mwqj_: Command '['ffmpeg', '-i', '/tmp/tmpim3mwqj_', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpmqw0iy01.jpg']' returned non-zero exit status 183. -2025-12-29 11:03:30,316 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/Watching Porn with Anya-(Anya Olsen)-{MissaX}-[Blowjob, Handjob, Natural Tits, Short Woman, creampie].mp4 -2025-12-29 11:03:30,344 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT -2025-12-29 11:03:30,355 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT.mp4 (MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT.mp4) -2025-12-29 11:03:30,356 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/anya.olsen/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT.mp4 -2025-12-29 11:03:30,356 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.HEVC.x265.PRT -2025-12-29 11:03:30,367 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.MP4-WRB[XC] -2025-12-29 11:03:30,377 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.MP4-WRB[XC]/momwantstobreed.25.07.04.anya.olsen.if.you.cum.in.me.ill.get.pregnant.mp4 (momwantstobreed.25.07.04.anya.olsen.if.you.cum.in.me.ill.get.pregnant.mp4) -2025-12-29 11:04:04,359 - ERROR - ffmpeg failed for /tmp/tmpins41oud: Command '['ffmpeg', '-i', '/tmp/tmpins41oud', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmp33ljw_9u.jpg']' returned non-zero exit status 228. -2025-12-29 11:04:04,359 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.MP4-WRB[XC]/momwantstobreed.25.07.04.anya.olsen.if.you.cum.in.me.ill.get.pregnant.mp4 -2025-12-29 11:04:04,388 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Anya Olsen Sophia Locke - Our Hot Moms Know How To Play - MomSwa.mp4 (Anya Olsen Sophia Locke - Our Hot Moms Know How To Play - MomSwa.mp4) -2025-12-29 11:04:04,389 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/anya.olsen/Anya Olsen Sophia Locke - Our Hot Moms Know How To Play - MomSwa.mp4 -2025-12-29 11:04:04,389 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsCreampie.25.10.11.Anya.Olsen.Your.Turn.To.Take.Care.Of.Me.Stepson.XXX.1080p.MP4-WRB[XC] -2025-12-29 11:04:04,399 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsCreampie.25.10.11.Anya.Olsen.Your.Turn.To.Take.Care.Of.Me.Stepson.XXX.1080p.MP4-WRB[XC]/momwantscreampie.25.10.11.anya.olsen.your.turn.to.take.care.of.me.stepson.mp4 (momwantscreampie.25.10.11.anya.olsen.your.turn.to.take.care.of.me.stepson.mp4) -2025-12-29 11:04:38,563 - ERROR - ffmpeg failed for /tmp/tmpr9708rc0: Command '['ffmpeg', '-i', '/tmp/tmpr9708rc0', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpyjugp197.jpg']' returned non-zero exit status 228. -2025-12-29 11:04:38,563 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsCreampie.25.10.11.Anya.Olsen.Your.Turn.To.Take.Care.Of.Me.Stepson.XXX.1080p.MP4-WRB[XC]/momwantscreampie.25.10.11.anya.olsen.your.turn.to.take.care.of.me.stepson.mp4 -2025-12-29 11:04:38,587 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.HEVC.x265.PRT -2025-12-29 11:04:38,598 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Lonely Step-Mom Needs Attention ~ Anya Olsen-{Household Fantasy}.mp4 (Lonely Step-Mom Needs Attention ~ Anya Olsen-{Household Fantasy}.mp4) -2025-12-29 11:05:11,582 - ERROR - ffprobe failed for /tmp/tmp79aaspyq: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmp79aaspyq']' returned non-zero exit status 1. -2025-12-29 11:05:11,599 - ERROR - ffmpeg failed for /tmp/tmp79aaspyq: Command '['ffmpeg', '-i', '/tmp/tmp79aaspyq', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmp4j3174ia.jpg']' returned non-zero exit status 183. -2025-12-29 11:05:11,599 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/Lonely Step-Mom Needs Attention ~ Anya Olsen-{Household Fantasy}.mp4 -2025-12-29 11:05:11,626 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.mp4 (FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.mp4) -2025-12-29 11:05:44,924 - ERROR - ffmpeg failed for /tmp/tmp08lq9xns: Command '['ffmpeg', '-i', '/tmp/tmp08lq9xns', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpmqesa0ju.jpg']' returned non-zero exit status 228. -2025-12-29 11:05:44,925 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.mp4 -2025-12-29 11:05:44,949 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid in Mommy Helps Her Son Study by Ashley Fires Fetish Clips.mp4 (Lux Orchid in Mommy Helps Her Son Study by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:05:44,949 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid in Mommy Helps Her Son Study by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:05:44,949 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen in Family Picnic Part 1 by Ashley Fires Fetish Clips.mp4 (Ashley Fires, Anya Olsen in Family Picnic Part 1 by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:05:44,949 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen in Family Picnic Part 1 by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:05:44,949 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid in Mom works at strip club.mp4 (Ashley Fires, Lux Orchid in Mom works at strip club.mp4) -2025-12-29 11:05:44,950 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid in Mom works at strip club.mp4 -2025-12-29 11:05:44,950 - INFO - Processing video: /videos/ashley-fires-fetish-clips/My Two Brothers - Modern Taboo Family-(Anya Olsen)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, Double Blowjob, Family Roleplay, Missing Performer (Male), Step Brother, Step Sister, Threesome (BGG), creampie].mp4 (My Two Brothers - Modern Taboo Family-(Anya Olsen)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, Double Blowjob, Family Roleplay, Missing Performer (Male), Step Brother, Step Sister, Threesome (BGG), creampie].mp4) -2025-12-29 11:05:44,950 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/My Two Brothers - Modern Taboo Family-(Anya Olsen)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, Double Blowjob, Family Roleplay, Missing Performer (Male), Step Brother, Step Sister, Threesome (BGG), creampie].mp4 -2025-12-29 11:05:44,950 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Mint Rose - The Devil In My Daughter.mp4 (Ashley Fires, Mint Rose - The Devil In My Daughter.mp4) -2025-12-29 11:05:44,950 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Mint Rose - The Devil In My Daughter.mp4 -2025-12-29 11:05:44,950 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - Mommy is A Street Walking Whore - Ashley Fires Fetish Clips.mp4 (Lux Orchid - Mommy is A Street Walking Whore - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:05:44,950 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - Mommy is A Street Walking Whore - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:05:44,950 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Brother In Charge-(Anya Olsen)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, Gagging, Handjob, Step Sister].mp4 (Brother In Charge-(Anya Olsen)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, Gagging, Handjob, Step Sister].mp4) -2025-12-29 11:05:44,951 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Brother In Charge-(Anya Olsen)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, Gagging, Handjob, Step Sister].mp4 -2025-12-29 11:05:44,951 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid, Anya Olsen - Aunt, Mother, Daughter Threesome - The Weekend.mp4 (Ashley Fires, Lux Orchid, Anya Olsen - Aunt, Mother, Daughter Threesome - The Weekend.mp4) -2025-12-29 11:05:44,951 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid, Anya Olsen - Aunt, Mother, Daughter Threesome - The Weekend.mp4 -2025-12-29 11:05:44,951 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - Daughter Exchange Club - Daddy Does Daughter First - Ashley Fires Fetish Clips.mp4 (Anya Olsen - Daughter Exchange Club - Daddy Does Daughter First - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:05:44,951 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen - Daughter Exchange Club - Daddy Does Daughter First - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:05:44,951 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Chi in Daddy Knows Her Secret by Ashley Fires Fetish Clips.mp4 (Chi in Daddy Knows Her Secret by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:05:44,953 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Chi in Daddy Knows Her Secret by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:05:44,953 - INFO - Scanning directory: /videos/lenna.lux -2025-12-29 11:05:44,964 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Impregnate the College Virgin – Taboofantazy.mp4 (Lenna Lux - Impregnate the College Virgin – Taboofantazy.mp4) -2025-12-29 11:05:44,964 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Impregnate the College Virgin – Taboofantazy.mp4 -2025-12-29 11:05:44,964 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Step Sister Tit Fuck & Tease – Taboofantazy.mp4 (Lenna Lux - Step Sister Tit Fuck & Tease – Taboofantazy.mp4) -2025-12-29 11:05:44,964 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Step Sister Tit Fuck & Tease – Taboofantazy.mp4 -2025-12-29 11:05:44,964 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Vacation with Daddy – Taboofantazy.mp4 (Lenna Lux - Vacation with Daddy – Taboofantazy.mp4) -2025-12-29 11:05:53,049 - ERROR - ffprobe failed for /tmp/tmpufqiyj_s: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmpufqiyj_s']' returned non-zero exit status 1. -2025-12-29 11:05:53,067 - ERROR - ffmpeg failed for /tmp/tmpufqiyj_s: Command '['ffmpeg', '-i', '/tmp/tmpufqiyj_s', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpj449933c.jpg']' returned non-zero exit status 183. -2025-12-29 11:05:53,067 - WARNING - Could not get duration or hash for /videos/lenna.lux/Lenna Lux - Vacation with Daddy – Taboofantazy.mp4 -2025-12-29 11:05:53,074 - INFO - Processing video: /videos/lenna.lux/Lenna Lux, Carmen Valentina - Truth or Dare with Mom And Sis - Fifi Foxx Fantasies.mp4 (Lenna Lux, Carmen Valentina - Truth or Dare with Mom And Sis - Fifi Foxx Fantasies.mp4) -2025-12-29 11:05:53,075 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux, Carmen Valentina - Truth or Dare with Mom And Sis - Fifi Foxx Fantasies.mp4 -2025-12-29 11:05:53,075 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Stepbrother Blackmail Brat into Creampie – Taboo.mp4 (Lenna Lux - Stepbrother Blackmail Brat into Creampie – Taboo.mp4) -2025-12-29 11:05:53,075 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Stepbrother Blackmail Brat into Creampie – Taboo.mp4 -2025-12-29 11:05:53,075 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Teaching My Step Brother About Sex – Taboofantaz.mp4 (Lenna Lux - Teaching My Step Brother About Sex – Taboofantaz.mp4) -2025-12-29 11:05:53,076 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Teaching My Step Brother About Sex – Taboofantaz.mp4 -2025-12-29 11:05:53,076 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Daddys impregnation secret – Taboofantazy.mp4 (Lenna Lux - Daddys impregnation secret – Taboofantazy.mp4) -2025-12-29 11:06:01,215 - ERROR - ffprobe failed for /tmp/tmp2mkk8eav: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmp2mkk8eav']' returned non-zero exit status 1. -2025-12-29 11:06:01,234 - ERROR - ffmpeg failed for /tmp/tmp2mkk8eav: Command '['ffmpeg', '-i', '/tmp/tmp2mkk8eav', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpvh1v_uva.jpg']' returned non-zero exit status 183. -2025-12-29 11:06:01,234 - WARNING - Could not get duration or hash for /videos/lenna.lux/Lenna Lux - Daddys impregnation secret – Taboofantazy.mp4 -2025-12-29 11:06:01,241 - INFO - Processing video: /videos/lenna.lux/Lenna Lux, Carmen Valentina - Mother, Sister and Brother in Quarantine - Fifi Foxx Fantasies.mp4 (Lenna Lux, Carmen Valentina - Mother, Sister and Brother in Quarantine - Fifi Foxx Fantasies.mp4) -2025-12-29 11:06:01,241 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux, Carmen Valentina - Mother, Sister and Brother in Quarantine - Fifi Foxx Fantasies.mp4 -2025-12-29 11:06:01,241 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Daddy Can I Have Your Baby – Taboofantazy.mp4 (Lenna Lux - Daddy Can I Have Your Baby – Taboofantazy.mp4) -2025-12-29 11:06:01,242 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Daddy Can I Have Your Baby – Taboofantazy.mp4 -2025-12-29 11:06:01,242 - INFO - Processing video: /videos/lenna.lux/The Deal-(Lenna Lux)-{Family Therapy XXX}-[Blowjob, Cumshot].mp4 (The Deal-(Lenna Lux)-{Family Therapy XXX}-[Blowjob, Cumshot].mp4) -2025-12-29 11:06:01,242 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/The Deal-(Lenna Lux)-{Family Therapy XXX}-[Blowjob, Cumshot].mp4 -2025-12-29 11:06:01,242 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Shrunk My Step Brother – Taboofantazy.mp4 (Lenna Lux - Shrunk My Step Brother – Taboofantazy.mp4) -2025-12-29 11:06:01,242 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Shrunk My Step Brother – Taboofantazy.mp4 -2025-12-29 11:06:01,242 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Teen in Cosplay Begs Daddy to Cum – Taboofantazy.mp4 (Lenna Lux - Teen in Cosplay Begs Daddy to Cum – Taboofantazy.mp4) -2025-12-29 11:06:01,242 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Teen in Cosplay Begs Daddy to Cum – Taboofantazy.mp4 -2025-12-29 11:06:01,242 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Fucking Your Brat Step Sister – Taboofantazy.mp4 (Lenna Lux - Fucking Your Brat Step Sister – Taboofantazy.mp4) -2025-12-29 11:06:01,242 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Fucking Your Brat Step Sister – Taboofantazy.mp4 -2025-12-29 11:06:01,243 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Daddy's Perfect Virgin – Taboofantazy.mp4 (Lenna Lux - Daddy's Perfect Virgin – Taboofantazy.mp4) -2025-12-29 11:06:01,243 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Daddy's Perfect Virgin – Taboofantazy.mp4 -2025-12-29 11:06:01,243 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Step Brother Seduction – Taboofantazy.mp4 (Lenna Lux - Step Brother Seduction – Taboofantazy.mp4) -2025-12-29 11:06:01,243 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Step Brother Seduction – Taboofantazy.mp4 -2025-12-29 11:06:01,243 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Daddys Perving On Me – Taboofantazy.mp4 (Lenna Lux - Daddys Perving On Me – Taboofantazy.mp4) -2025-12-29 11:06:01,243 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Daddys Perving On Me – Taboofantazy.mp4 -2025-12-29 11:06:01,243 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Breed Me Step Brother I Need Your Cum – Taboofan.mp4 (Lenna Lux - Breed Me Step Brother I Need Your Cum – Taboofan.mp4) -2025-12-29 11:06:01,243 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Breed Me Step Brother I Need Your Cum – Taboofan.mp4 -2025-12-29 11:06:01,243 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - Daddy Fucks His Teen Daughter – Taboofantazy.mp4 (Lenna Lux - Daddy Fucks His Teen Daughter – Taboofantazy.mp4) -2025-12-29 11:06:01,244 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - Daddy Fucks His Teen Daughter – Taboofantazy.mp4 -2025-12-29 11:06:01,244 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - My Panty Sniffing Step Brother – Taboofantazy.mp4 (Lenna Lux - My Panty Sniffing Step Brother – Taboofantazy.mp4) -2025-12-29 11:06:01,244 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - My Panty Sniffing Step Brother – Taboofantazy.mp4 -2025-12-29 11:06:01,244 - INFO - Processing video: /videos/lenna.lux/Lenna Lux - The Night Before - Brother And Sister Find Out They Had Drunken Sex - Fifi Foxx Fantasies.mp4 (Lenna Lux - The Night Before - Brother And Sister Find Out They Had Drunken Sex - Fifi Foxx Fantasies.mp4) -2025-12-29 11:06:01,244 - INFO - Skipping already processed and unaltered video: /videos/lenna.lux/Lenna Lux - The Night Before - Brother And Sister Find Out They Had Drunken Sex - Fifi Foxx Fantasies.mp4 -2025-12-29 11:06:01,244 - INFO - Scanning directory: /videos/lilibet.saunders -2025-12-29 11:06:01,260 - INFO - Processing video: /videos/lilibet.saunders/FamilyTherapyXXX - Lilibet Saunders - Little Step Sis Vs Boner (29.10.2025) rq.mp4 (FamilyTherapyXXX - Lilibet Saunders - Little Step Sis Vs Boner (29.10.2025) rq.mp4) -2025-12-29 11:06:01,260 - INFO - Skipping already processed and unaltered video: /videos/lilibet.saunders/FamilyTherapyXXX - Lilibet Saunders - Little Step Sis Vs Boner (29.10.2025) rq.mp4 -2025-12-29 11:06:01,260 - INFO - Scanning directory: /videos/lilibet.saunders/BangBus.25.05.21.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] -2025-12-29 11:06:01,272 - INFO - Processing video: /videos/lilibet.saunders/BangBus.25.05.21.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC]/bangbus.25.05.21.lilibet.saunders.mp4 (bangbus.25.05.21.lilibet.saunders.mp4) -2025-12-29 11:06:33,727 - ERROR - ffmpeg failed for /tmp/tmpi57liwas: Command '['ffmpeg', '-i', '/tmp/tmpi57liwas', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpgw1gikui.jpg']' returned non-zero exit status 228. -2025-12-29 11:06:33,727 - WARNING - Could not get duration or hash for /videos/lilibet.saunders/BangBus.25.05.21.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC]/bangbus.25.05.21.lilibet.saunders.mp4 -2025-12-29 11:06:33,755 - INFO - Scanning directory: /videos/lilibet.saunders/TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.MP4-Narcos[XC] -2025-12-29 11:06:33,765 - INFO - Processing video: /videos/lilibet.saunders/TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.MP4-Narcos[XC]/TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.mp4 (TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.mp4) -2025-12-29 11:07:06,828 - ERROR - ffmpeg failed for /tmp/tmp91ul5cov: Command '['ffmpeg', '-i', '/tmp/tmp91ul5cov', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmp5l7z9ch8.jpg']' returned non-zero exit status 228. -2025-12-29 11:07:06,828 - WARNING - Could not get duration or hash for /videos/lilibet.saunders/TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.MP4-Narcos[XC]/TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.mp4 -2025-12-29 11:07:06,857 - INFO - Processing video: /videos/lilibet.saunders/Little Step Sis Wants To Try Sex ~ Lilibet Saunders-{Household Fantasy}-[Amateur, Big Ass, Big Tits, Brown Hair, Male - POV, Multiple Cumshots, Pawg, Roleplay, Teen Girl (18–22), creampie].mp4 (Little Step Sis Wants To Try Sex ~ Lilibet Saunders-{Household Fantasy}-[Amateur, Big Ass, Big Tits, Brown Hair, Male - POV, Multiple Cumshots, Pawg, Roleplay, Teen Girl (18–22), creampie].mp4) -2025-12-29 11:07:06,857 - INFO - Skipping already processed and unaltered video: /videos/lilibet.saunders/Little Step Sis Wants To Try Sex ~ Lilibet Saunders-{Household Fantasy}-[Amateur, Big Ass, Big Tits, Brown Hair, Male - POV, Multiple Cumshots, Pawg, Roleplay, Teen Girl (18–22), creampie].mp4 -2025-12-29 11:07:06,857 - INFO - Scanning directory: /videos/lilibet.saunders/TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.MP4-Narcos[XC] -2025-12-29 11:07:06,867 - INFO - Processing video: /videos/lilibet.saunders/TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.MP4-Narcos[XC]/TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.mp4 (TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.mp4) -2025-12-29 11:07:06,868 - INFO - Skipping already processed and unaltered video: /videos/lilibet.saunders/TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.MP4-Narcos[XC]/TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.mp4 -2025-12-29 11:07:06,868 - INFO - Scanning directory: /videos/lilibet.saunders/SisLovesMe.25.09.06.Nicole.Kitt.And.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] -2025-12-29 11:07:06,877 - INFO - Processing video: /videos/lilibet.saunders/SisLovesMe.25.09.06.Nicole.Kitt.And.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC]/Let’s Fuck Dad’s New Girlfriend Like Good Step-Siblings-(Nicole Kitt, Lilibet Saunders)-{Sis Loves Me}.mp4 (Let’s Fuck Dad’s New Girlfriend Like Good Step-Siblings-(Nicole Kitt, Lilibet Saunders)-{Sis Loves Me}.mp4) -2025-12-29 11:07:39,621 - ERROR - ffmpeg failed for /tmp/tmp3fhmxlfb: Command '['ffmpeg', '-i', '/tmp/tmp3fhmxlfb', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmp68owufqj.jpg']' returned non-zero exit status 228. -2025-12-29 11:07:39,621 - WARNING - Could not get duration or hash for /videos/lilibet.saunders/SisLovesMe.25.09.06.Nicole.Kitt.And.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC]/Let’s Fuck Dad’s New Girlfriend Like Good Step-Siblings-(Nicole Kitt, Lilibet Saunders)-{Sis Loves Me}.mp4 -2025-12-29 11:07:39,649 - INFO - Processing video: /videos/lilibet.saunders/BFFS - Brina Scarlet, Fun Sized Megan, Lil Bet Saunders (08.06.2025) rq.mp4 (BFFS - Brina Scarlet, Fun Sized Megan, Lil Bet Saunders (08.06.2025) rq.mp4) -2025-12-29 11:07:39,650 - INFO - Skipping already processed and unaltered video: /videos/lilibet.saunders/BFFS - Brina Scarlet, Fun Sized Megan, Lil Bet Saunders (08.06.2025) rq.mp4 -2025-12-29 11:07:39,650 - INFO - Processing video: /videos/lilibet.saunders/I Normally Don't Fuck Like This-(Lilibet Saunders)-{Exploited College Girls}-[Big Tits, Brown Hair, Deepthroat, Face Fuck, Facial, Freckles, Gagging, High School, Innocent, Rough, Shy, Teen (18–22), Titjob, Toys, squirting].mp4 (I Normally Don't Fuck Like This-(Lilibet Saunders)-{Exploited College Girls}-[Big Tits, Brown Hair, Deepthroat, Face Fuck, Facial, Freckles, Gagging, High School, Innocent, Rough, Shy, Teen (18–22), Titjob, Toys, squirting].mp4) -2025-12-29 11:08:34,093 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 11:08:34,109 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 11:08:34,109 - INFO - SMB2 dialect negotiation successful -2025-12-29 11:08:34,113 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'6c943596e16b474b'" -2025-12-29 11:08:34,113 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'6c943596e16b474b'" -2025-12-29 11:08:34,113 - INFO - Server supports SMB signing -2025-12-29 11:08:34,113 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 11:08:34,121 - INFO - Authentication (on SMB2) successful! -2025-12-29 11:08:41,125 - INFO - No compatible GPU or ffmpeg build detected. Falling back to CPU-based processing. -2025-12-29 11:08:41,125 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 11:08:41,138 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 11:08:41,139 - INFO - SMB2 dialect negotiation successful -2025-12-29 11:08:41,142 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'd513e0b6030dc991'" -2025-12-29 11:08:41,142 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'd513e0b6030dc991'" -2025-12-29 11:08:41,142 - INFO - Server supports SMB signing -2025-12-29 11:08:41,143 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 11:08:41,149 - INFO - Authentication (on SMB2) successful! -2025-12-29 11:08:41,149 - INFO - Starting scan for videos in /videos on share 'isolation' -2025-12-29 11:08:41,149 - INFO - Scanning directory: /videos -2025-12-29 11:08:41,211 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips -2025-12-29 11:08:41,227 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Preparing For The Big Game - Ashley Fires Fetish Clips.mp4 (Ashley Fires - Preparing For The Big Game - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,233 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Preparing For The Big Game - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,233 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires in Elder Sister Fucks Her Virgin Brother.mp4 (Ashley Fires in Elder Sister Fucks Her Virgin Brother.mp4) -2025-12-29 11:08:41,233 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires in Elder Sister Fucks Her Virgin Brother.mp4 -2025-12-29 11:08:41,233 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - My Sister Needs Me - Ashley Fires Fetish Clips.mp4 (Anya Olsen - My Sister Needs Me - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,233 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen - My Sister Needs Me - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,233 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen gives a make-out lesson to her Brother.mp4 (Lacy Vixxen gives a make-out lesson to her Brother.mp4) -2025-12-29 11:08:41,233 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lacy Vixxen gives a make-out lesson to her Brother.mp4 -2025-12-29 11:08:41,233 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 1 - Ashley Fires Fetish Clips. Dad made Son fuck Mom after he caught him watching his parents have sex.mp4 (Lux Orchid - The Lake House Part 1 - Ashley Fires Fetish Clips. Dad made Son fuck Mom after he caught him watching his parents have sex.mp4) -2025-12-29 11:08:41,234 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 1 - Ashley Fires Fetish Clips. Dad made Son fuck Mom after he caught him watching his parents have sex.mp4 -2025-12-29 11:08:41,234 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy needs Him - Modern Taboo Family.mp4 (Ashley Fires - Mommy needs Him - Modern Taboo Family.mp4) -2025-12-29 11:08:41,234 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy needs Him - Modern Taboo Family.mp4 -2025-12-29 11:08:41,234 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (1) - Modern Taboo Family.mp4 (Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (1) - Modern Taboo Family.mp4) -2025-12-29 11:08:41,234 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (1) - Modern Taboo Family.mp4 -2025-12-29 11:08:41,234 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Family Picnic - Part 3 - Modern Taboo Family-(Anya Olsen, Ashley Fires)-{Ashley Fires Fetish Clips}.mp4 (Family Picnic - Part 3 - Modern Taboo Family-(Anya Olsen, Ashley Fires)-{Ashley Fires Fetish Clips}.mp4) -2025-12-29 11:08:41,234 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Family Picnic - Part 3 - Modern Taboo Family-(Anya Olsen, Ashley Fires)-{Ashley Fires Fetish Clips}.mp4 -2025-12-29 11:08:41,234 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen, Harlo Adams in Family Playdate by Ashley Fires Fetish Clips.mp4 (Ashley Fires, Anya Olsen, Harlo Adams in Family Playdate by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,234 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen, Harlo Adams in Family Playdate by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,234 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Doctor Mom Gets Double Penetrated By Her Brother and Son - Ashley Fires Fetish Clips.mp4 (Doctor Mom Gets Double Penetrated By Her Brother and Son - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,235 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Doctor Mom Gets Double Penetrated By Her Brother and Son - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,235 - INFO - Processing video: /videos/ashley-fires-fetish-clips/A Daughters Family Initiation - Modern Taboo Family - HD VERSION-(Anya Olsen, Madeline Blue)-{Ashley Fires Fetish Clips}-[Cum Swapping, Older Woman - Younger Man, Step Dad, Step Daughter, Step Mother].mp4 (A Daughters Family Initiation - Modern Taboo Family - HD VERSION-(Anya Olsen, Madeline Blue)-{Ashley Fires Fetish Clips}-[Cum Swapping, Older Woman - Younger Man, Step Dad, Step Daughter, Step Mother].mp4) -2025-12-29 11:08:41,235 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/A Daughters Family Initiation - Modern Taboo Family - HD VERSION-(Anya Olsen, Madeline Blue)-{Ashley Fires Fetish Clips}-[Cum Swapping, Older Woman - Younger Man, Step Dad, Step Daughter, Step Mother].mp4 -2025-12-29 11:08:41,235 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Elder Sister punishes younger Sister for sleeping with Dad. Lacy Vixxen, Lexy Lynne in Little Sister gets Airtight by Ashley Fires Fetish Clips.mp4 (Elder Sister punishes younger Sister for sleeping with Dad. Lacy Vixxen, Lexy Lynne in Little Sister gets Airtight by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,235 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Elder Sister punishes younger Sister for sleeping with Dad. Lacy Vixxen, Lexy Lynne in Little Sister gets Airtight by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,235 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Dad caught Anya making out with her Brother. Anya Olsen - Mommy Made Me Do It.mp4 (Dad caught Anya making out with her Brother. Anya Olsen - Mommy Made Me Do It.mp4) -2025-12-29 11:08:41,235 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Dad caught Anya making out with her Brother. Anya Olsen - Mommy Made Me Do It.mp4 -2025-12-29 11:08:41,235 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - Daughter Exchange Club - Teaching Daughter To Be A Whore - Ashley Fires Fetish Clips.mp4 (Anya Olsen - Daughter Exchange Club - Teaching Daughter To Be A Whore - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,235 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen - Daughter Exchange Club - Teaching Daughter To Be A Whore - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,235 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Brother force-fucks Lacy Vixxen in bathroom, get caught by their Moms friend, then tries to comfort her by fucking her again.mp4 (Brother force-fucks Lacy Vixxen in bathroom, get caught by their Moms friend, then tries to comfort her by fucking her again.mp4) -2025-12-29 11:08:41,235 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Brother force-fucks Lacy Vixxen in bathroom, get caught by their Moms friend, then tries to comfort her by fucking her again.mp4 -2025-12-29 11:08:41,235 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen - She Lets Daddy Inside - Ashley Fires Fetish Clips.mp4 (Anya Olsen - She Lets Daddy Inside - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,236 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen - She Lets Daddy Inside - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,236 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 2.mp4 (Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 2.mp4) -2025-12-29 11:08:41,236 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 2.mp4 -2025-12-29 11:08:41,236 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (2) - Modern Taboo Family.mp4 (Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (2) - Modern Taboo Family.mp4) -2025-12-29 11:08:41,236 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Krystal Star - Help Mommy Get Pregnant Part (2) - Modern Taboo Family.mp4 -2025-12-29 11:08:41,236 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen, Ashley Fires - Homewrecking Daughter Punished By Mom.mp4 (Anya Olsen, Ashley Fires - Homewrecking Daughter Punished By Mom.mp4) -2025-12-29 11:08:41,236 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen, Ashley Fires - Homewrecking Daughter Punished By Mom.mp4 -2025-12-29 11:08:41,236 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Special Diet.mp4 (Ashley Fires - Mommys Special Diet.mp4) -2025-12-29 11:08:41,236 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Special Diet.mp4 -2025-12-29 11:08:41,236 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Megan Maiden - Mom Is Clueless - Ashley Fires Fetish Clips.mp4 (Megan Maiden - Mom Is Clueless - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,237 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Megan Maiden - Mom Is Clueless - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,237 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Step-Brother Gets His Christmas Wish - PART 1-(Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, From Chapter, Pussy Licking, Step Brother, taboo].mp4 (Step-Brother Gets His Christmas Wish - PART 1-(Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, From Chapter, Pussy Licking, Step Brother, taboo].mp4) -2025-12-29 11:08:41,237 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Step-Brother Gets His Christmas Wish - PART 1-(Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Cum in Mouth, From Chapter, Pussy Licking, Step Brother, taboo].mp4 -2025-12-29 11:08:41,237 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Sadie Holmes, Ashley Fires - Brothers Homecoming - Ashley Fires Fetish Clips.mp4 (Sadie Holmes, Ashley Fires - Brothers Homecoming - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,237 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Sadie Holmes, Ashley Fires - Brothers Homecoming - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,237 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Turns Her Boy Into A Man - A Mothers Love - Modern Taboo Family.mp4 (Ashley Fires - Mommy Turns Her Boy Into A Man - A Mothers Love - Modern Taboo Family.mp4) -2025-12-29 11:08:41,237 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Turns Her Boy Into A Man - A Mothers Love - Modern Taboo Family.mp4 -2025-12-29 11:08:41,237 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid in Son Gets Anal With Mom And Aunt.mp4 (Ashley Fires, Lux Orchid in Son Gets Anal With Mom And Aunt.mp4) -2025-12-29 11:08:41,237 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Lux Orchid in Son Gets Anal With Mom And Aunt.mp4 -2025-12-29 11:08:41,237 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anya Olsen, Lux Orchid in Mommy and Brothers House Rules by Ashley Fires Fetish Clips.mp4 (Anya Olsen, Lux Orchid in Mommy and Brothers House Rules by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,238 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anya Olsen, Lux Orchid in Mommy and Brothers House Rules by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,238 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid in My Mother My Whore by Ashley Fires Fetish Clips.mp4 (Lux Orchid in My Mother My Whore by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,238 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid in My Mother My Whore by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,238 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Brother creampies his Sister Chi. Brother Gets His Christmas Wish Part 2 by Ashley Fires Fetish Clips.mp4 (Brother creampies his Sister Chi. Brother Gets His Christmas Wish Part 2 by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,238 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Brother creampies his Sister Chi. Brother Gets His Christmas Wish Part 2 by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,238 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires in Dont Leave Mommy - Modern Taboo Family.mp4 (Ashley Fires in Dont Leave Mommy - Modern Taboo Family.mp4) -2025-12-29 11:08:41,238 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires in Dont Leave Mommy - Modern Taboo Family.mp4 -2025-12-29 11:08:41,238 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid in Mommy Says Good Night by Ashley Fires Fetish Clips.mp4 (Lux Orchid in Mommy Says Good Night by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,238 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid in Mommy Says Good Night by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,238 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen returns the favour to her Brother.mp4 (Lacy Vixxen returns the favour to her Brother.mp4) -2025-12-29 11:08:41,238 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lacy Vixxen returns the favour to her Brother.mp4 -2025-12-29 11:08:41,238 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - Mommy Says Good Morning - Ashley Fires Fetish Clips.mp4 (Lux Orchid - Mommy Says Good Morning - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,239 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - Mommy Says Good Morning - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,239 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - This Hurts Mommy More - Ashley Fires Fetish Clips.mp4 (Lux Orchid - This Hurts Mommy More - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,239 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - This Hurts Mommy More - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,239 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen in Family Picnic Part 2 by Ashley Fires Fetish Clips.mp4 (Ashley Fires, Anya Olsen in Family Picnic Part 2 by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,239 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Anya Olsen in Family Picnic Part 2 by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,239 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 2 - Ashley Fires Fetish Clips. Son Is The Man Of The House Now.mp4 (Lux Orchid - The Lake House Part 2 - Ashley Fires Fetish Clips. Son Is The Man Of The House Now.mp4) -2025-12-29 11:08:41,239 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - The Lake House Part 2 - Ashley Fires Fetish Clips. Son Is The Man Of The House Now.mp4 -2025-12-29 11:08:41,239 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Forced-feminization of Brother. Lacy Vixxen - My Brother is My Sister.mp4 (Forced-feminization of Brother. Lacy Vixxen - My Brother is My Sister.mp4) -2025-12-29 11:08:41,239 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Forced-feminization of Brother. Lacy Vixxen - My Brother is My Sister.mp4 -2025-12-29 11:08:41,239 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Sister has to do the unthinkable. Anya Olsen in Modern Taboo Family by Ashley Fires Fetish Clips.mp4 (Sister has to do the unthinkable. Anya Olsen in Modern Taboo Family by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,239 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Sister has to do the unthinkable. Anya Olsen in Modern Taboo Family by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,239 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Mommy Makes Her Sons Cum Together. Ashley Fires in A Mothers Love.mp4 (Mommy Makes Her Sons Cum Together. Ashley Fires in A Mothers Love.mp4) -2025-12-29 11:08:41,240 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Mommy Makes Her Sons Cum Together. Ashley Fires in A Mothers Love.mp4 -2025-12-29 11:08:41,240 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Anal Lessons From Step-Mom-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Anal Creampie, Cum Swapping, MILF (30+), Rimming, creampie, taboo].mp4 (Anal Lessons From Step-Mom-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Anal Creampie, Cum Swapping, MILF (30+), Rimming, creampie, taboo].mp4) -2025-12-29 11:08:41,240 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Anal Lessons From Step-Mom-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Anal Creampie, Cum Swapping, MILF (30+), Rimming, creampie, taboo].mp4 -2025-12-29 11:08:41,240 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Daughter blows her asleep Daddy. Chi in Waking Daddy by Ashley Fires Fetish Clips.mp4 (Daughter blows her asleep Daddy. Chi in Waking Daddy by Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,240 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Daughter blows her asleep Daddy. Chi in Waking Daddy by Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,240 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Family Fraternity-(Ashley Fires, Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Doggy Style, Missionary, Pussy Licking, cowgirl, taboo].mp4 (Family Fraternity-(Ashley Fires, Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Doggy Style, Missionary, Pussy Licking, cowgirl, taboo].mp4) -2025-12-29 11:08:41,240 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Family Fraternity-(Ashley Fires, Chi)-{Ashley Fires Fetish Clips}-[Blowjob, Doggy Style, Missionary, Pussy Licking, cowgirl, taboo].mp4 -2025-12-29 11:08:41,240 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Modern Taboo Family - Step-Brother Step-Sister Prom Date-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Foursome].mp4 (Modern Taboo Family - Step-Brother Step-Sister Prom Date-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Foursome].mp4) -2025-12-29 11:08:41,240 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Modern Taboo Family - Step-Brother Step-Sister Prom Date-(Ashley Fires, Riley Reyes)-{Ashley Fires Fetish Clips}-[Foursome].mp4 -2025-12-29 11:08:41,240 - INFO - Processing video: /videos/ashley-fires-fetish-clips/The Manchurian Step-Son - Modern Family Taboo-(Ashley Fires)-{Ashley Fires Fetish Clips}-[Kissing, Mind Fuck, Smoking Fetish].mp4 (The Manchurian Step-Son - Modern Family Taboo-(Ashley Fires)-{Ashley Fires Fetish Clips}-[Kissing, Mind Fuck, Smoking Fetish].mp4) -2025-12-29 11:08:41,240 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/The Manchurian Step-Son - Modern Family Taboo-(Ashley Fires)-{Ashley Fires Fetish Clips}-[Kissing, Mind Fuck, Smoking Fetish].mp4 -2025-12-29 11:08:41,241 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - My Son Joins The Service.mp4 (Ashley Fires - My Son Joins The Service.mp4) -2025-12-29 11:08:41,241 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - My Son Joins The Service.mp4 -2025-12-29 11:08:41,241 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 1.mp4 (Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 1.mp4) -2025-12-29 11:08:41,241 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires, Alana X, Andreina Deluxe - The Unfortunate Orphan - Last Chance Part 1.mp4 -2025-12-29 11:08:41,241 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen - Brother Fucker.mp4 (Lacy Vixxen - Brother Fucker.mp4) -2025-12-29 11:08:41,241 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lacy Vixxen - Brother Fucker.mp4 -2025-12-29 11:08:41,241 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Party - Ashley Fires Fetish Clips.mp4 (Ashley Fires - Mommys Party - Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,241 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommys Party - Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,241 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lacy Vixxen looks up to her Brother after getting zero action at the party.mp4 (Lacy Vixxen looks up to her Brother after getting zero action at the party.mp4) -2025-12-29 11:08:41,241 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lacy Vixxen looks up to her Brother after getting zero action at the party.mp4 -2025-12-29 11:08:41,241 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Lux Orchid - My Son Is Ashamed Of Me - Modern Taboo Family ⁄ Ashley Fires Fetish Clips.mp4 (Lux Orchid - My Son Is Ashamed Of Me - Modern Taboo Family ⁄ Ashley Fires Fetish Clips.mp4) -2025-12-29 11:08:41,242 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Lux Orchid - My Son Is Ashamed Of Me - Modern Taboo Family ⁄ Ashley Fires Fetish Clips.mp4 -2025-12-29 11:08:41,242 - INFO - Processing video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Gets Married.mp4 (Ashley Fires - Mommy Gets Married.mp4) -2025-12-29 11:08:41,242 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/Ashley Fires - Mommy Gets Married.mp4 -2025-12-29 11:08:41,242 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen -2025-12-29 11:08:41,253 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomsTeachSex.25.07.07.Anya.Olsen.Going.Around.The.World.With.Stepmom.XXX.1080p.MP4-WRB[XC] -2025-12-29 11:08:41,264 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomsTeachSex.25.07.07.Anya.Olsen.Going.Around.The.World.With.Stepmom.XXX.1080p.MP4-WRB[XC]/momsteachsex.25.07.07.anya.olsen.going.around.the.world.with.stepmom.mp4 (momsteachsex.25.07.07.anya.olsen.going.around.the.world.with.stepmom.mp4) -2025-12-29 11:08:41,264 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/anya.olsen/MomsTeachSex.25.07.07.Anya.Olsen.Going.Around.The.World.With.Stepmom.XXX.1080p.MP4-WRB[XC]/momsteachsex.25.07.07.anya.olsen.going.around.the.world.with.stepmom.mp4 -2025-12-29 11:08:41,264 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Sweet Step Mom Vacation Sex-(Anya Olsen)-{Household Fantasy}-[Blond Hair, Blowjob, Cumshot, Male - POV, cowgirl, creampie].mp4 (Sweet Step Mom Vacation Sex-(Anya Olsen)-{Household Fantasy}-[Blond Hair, Blowjob, Cumshot, Male - POV, cowgirl, creampie].mp4) -2025-12-29 11:08:41,264 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/anya.olsen/Sweet Step Mom Vacation Sex-(Anya Olsen)-{Household Fantasy}-[Blond Hair, Blowjob, Cumshot, Male - POV, cowgirl, creampie].mp4 -2025-12-29 11:08:41,265 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Watching Porn with Anya-(Anya Olsen)-{MissaX}-[Blowjob, Handjob, Natural Tits, Short Woman, creampie].mp4 (Watching Porn with Anya-(Anya Olsen)-{MissaX}-[Blowjob, Handjob, Natural Tits, Short Woman, creampie].mp4) -2025-12-29 11:08:46,712 - ERROR - ffprobe failed for /tmp/tmpabos2dgk: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmpabos2dgk']' returned non-zero exit status 1. -2025-12-29 11:08:46,730 - ERROR - ffmpeg failed for /tmp/tmpabos2dgk: Command '['ffmpeg', '-i', '/tmp/tmpabos2dgk', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpqa60b3sf.jpg']' returned non-zero exit status 183. -2025-12-29 11:08:46,730 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/Watching Porn with Anya-(Anya Olsen)-{MissaX}-[Blowjob, Handjob, Natural Tits, Short Woman, creampie].mp4 -2025-12-29 11:08:46,735 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT -2025-12-29 11:08:46,749 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT.mp4 (MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT.mp4) -2025-12-29 11:08:46,750 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/anya.olsen/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT/MomSwapped.25.01.09.Anya.Olsen.And.Sophia.Locke.XXX.1080p.HEVC.x265.PRT.mp4 -2025-12-29 11:08:46,750 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.HEVC.x265.PRT -2025-12-29 11:08:46,760 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.MP4-WRB[XC] -2025-12-29 11:08:46,770 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.MP4-WRB[XC]/momwantstobreed.25.07.04.anya.olsen.if.you.cum.in.me.ill.get.pregnant.mp4 (momwantstobreed.25.07.04.anya.olsen.if.you.cum.in.me.ill.get.pregnant.mp4) -2025-12-29 11:08:52,465 - ERROR - ffmpeg failed for /tmp/tmppetijreb: Command '['ffmpeg', '-i', '/tmp/tmppetijreb', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpgr0a_hkd.jpg']' returned non-zero exit status 228. -2025-12-29 11:08:52,465 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.MP4-WRB[XC]/momwantstobreed.25.07.04.anya.olsen.if.you.cum.in.me.ill.get.pregnant.mp4 -2025-12-29 11:08:52,469 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Anya Olsen Sophia Locke - Our Hot Moms Know How To Play - MomSwa.mp4 (Anya Olsen Sophia Locke - Our Hot Moms Know How To Play - MomSwa.mp4) -2025-12-29 11:08:52,469 - INFO - Skipping already processed and unaltered video: /videos/ashley-fires-fetish-clips/anya.olsen/Anya Olsen Sophia Locke - Our Hot Moms Know How To Play - MomSwa.mp4 -2025-12-29 11:08:52,469 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsCreampie.25.10.11.Anya.Olsen.Your.Turn.To.Take.Care.Of.Me.Stepson.XXX.1080p.MP4-WRB[XC] -2025-12-29 11:08:52,480 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsCreampie.25.10.11.Anya.Olsen.Your.Turn.To.Take.Care.Of.Me.Stepson.XXX.1080p.MP4-WRB[XC]/momwantscreampie.25.10.11.anya.olsen.your.turn.to.take.care.of.me.stepson.mp4 (momwantscreampie.25.10.11.anya.olsen.your.turn.to.take.care.of.me.stepson.mp4) -2025-12-29 11:08:58,432 - ERROR - ffmpeg failed for /tmp/tmp9y8vgze3: Command '['ffmpeg', '-i', '/tmp/tmp9y8vgze3', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmpx2og8fkq.jpg']' returned non-zero exit status 228. -2025-12-29 11:08:58,432 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsCreampie.25.10.11.Anya.Olsen.Your.Turn.To.Take.Care.Of.Me.Stepson.XXX.1080p.MP4-WRB[XC]/momwantscreampie.25.10.11.anya.olsen.your.turn.to.take.care.of.me.stepson.mp4 -2025-12-29 11:08:58,436 - INFO - Scanning directory: /videos/ashley-fires-fetish-clips/anya.olsen/MomWantsToBreed.25.07.04.Anya.Olsen.If.You.Cum.In.Me.Ill.Get.Pregnant.XXX.1080p.HEVC.x265.PRT -2025-12-29 11:08:58,448 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/Lonely Step-Mom Needs Attention ~ Anya Olsen-{Household Fantasy}.mp4 (Lonely Step-Mom Needs Attention ~ Anya Olsen-{Household Fantasy}.mp4) -2025-12-29 11:09:04,262 - ERROR - ffprobe failed for /tmp/tmpcqsdiwex: Command '['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', '/tmp/tmpcqsdiwex']' returned non-zero exit status 1. -2025-12-29 11:09:04,279 - ERROR - ffmpeg failed for /tmp/tmpcqsdiwex: Command '['ffmpeg', '-i', '/tmp/tmpcqsdiwex', '-ss', '00:00:10', '-vframes', '1', '-y', '/tmp/tmp5gyv9jbe.jpg']' returned non-zero exit status 183. -2025-12-29 11:09:04,279 - WARNING - Could not get duration or hash for /videos/ashley-fires-fetish-clips/anya.olsen/Lonely Step-Mom Needs Attention ~ Anya Olsen-{Household Fantasy}.mp4 -2025-12-29 11:09:04,284 - INFO - Processing video: /videos/ashley-fires-fetish-clips/anya.olsen/FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.mp4 (FamilySwap.25.02.04.Anya.Olsen.And.Kimmy.Kimm.Coming.Together.On.Valentines.Day.XXX.1080p.mp4) -2025-12-29 11:30:40,557 - INFO - Authentication with remote machine "SERVER_NAME" for user "home" will be using NTLM v2 authentication (with extended security) -2025-12-29 11:30:40,573 - INFO - Now switching over to SMB2 protocol communication -2025-12-29 11:30:40,573 - INFO - SMB2 dialect negotiation successful -2025-12-29 11:30:40,576 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'3ae84ce30004e356'" -2025-12-29 11:30:40,576 - INFO - Performing NTLMv2 authentication (on SMB2) with server challenge "b'3ae84ce30004e356'" -2025-12-29 11:30:40,577 - INFO - Server supports SMB signing -2025-12-29 11:30:40,577 - INFO - SMB signing deactivated. SMB messages will NOT be signed. -2025-12-29 11:30:40,583 - INFO - Authentication (on SMB2) successful! +Scan started... +Scanning directory: /videos +Scanning directory: /videos/lenna.lux +Updating Lenna Lux - Impregnate the College Virgin – Taboofantazy.mp4 with contact sheet +Processing: Lenna Lux - Impregnate the College Virgin – Taboofantazy.mp4 (Mode: scene) +Downloading Lenna Lux - Impregnate the College Virgin – Taboofantazy.mp4 (76.70 MB)... +Updating Lenna Lux - Step Sister Tit Fuck & Tease – Taboofantazy.mp4 with contact sheet +Processing: Lenna Lux - Step Sister Tit Fuck & Tease – Taboofantazy.mp4 (Mode: scene) +Downloading Lenna Lux - Step Sister Tit Fuck & Tease – Taboofantazy.mp4 (68.24 MB)... +Updating Lenna Lux - Vacation with Daddy – Taboofantazy.mp4 with contact sheet +Processing: Lenna Lux - Vacation with Daddy – Taboofantazy.mp4 (Mode: scene) +Downloading Lenna Lux - Vacation with Daddy – Taboofantazy.mp4 (121.63 MB)... +Updating Lenna Lux, Carmen Valentina - Truth or Dare with Mom And Sis - Fifi Foxx Fantasies.mp4 with contact sheet +Processing: Lenna Lux, Carmen Valentina - Truth or Dare with Mom And Sis - Fifi Foxx Fantasies.mp4 (Mode: scene) +Downloading Lenna Lux, Carmen Valentina - Truth or Dare with Mom And Sis - Fifi Foxx Fantasies.mp4 (85.04 MB)... +Updating Lenna Lux - Stepbrother Blackmail Brat into Creampie – Taboo.mp4 with contact sheet +Processing: Lenna Lux - Stepbrother Blackmail Brat into Creampie – Taboo.mp4 (Mode: scene) +Downloading Lenna Lux - Stepbrother Blackmail Brat into Creampie – Taboo.mp4 (89.84 MB)... +Updating Lenna Lux - Teaching My Step Brother About Sex – Taboofantaz.mp4 with contact sheet +Processing: Lenna Lux - Teaching My Step Brother About Sex – Taboofantaz.mp4 (Mode: scene) +Downloading Lenna Lux - Teaching My Step Brother About Sex – Taboofantaz.mp4 (83.46 MB)... +Updating Lenna Lux - Daddys impregnation secret – Taboofantazy.mp4 with contact sheet +Processing: Lenna Lux - Daddys impregnation secret – Taboofantazy.mp4 (Mode: scene) +Downloading Lenna Lux - Daddys impregnation secret – Taboofantazy.mp4 (121.63 MB)... +Updating Lenna Lux, Carmen Valentina - Mother, Sister and Brother in Quarantine - Fifi Foxx Fantasies.mp4 with contact sheet +Processing: Lenna Lux, Carmen Valentina - Mother, Sister and Brother in Quarantine - Fifi Foxx Fantasies.mp4 (Mode: scene) +Downloading Lenna Lux, Carmen Valentina - Mother, Sister and Brother in Quarantine - Fifi Foxx Fantasies.mp4 (98.91 MB)... +Updating Lenna Lux - Daddy Can I Have Your Baby – Taboofantazy.mp4 with contact sheet +Processing: Lenna Lux - Daddy Can I Have Your Baby – Taboofantazy.mp4 (Mode: scene) +Downloading Lenna Lux - Daddy Can I Have Your Baby – Taboofantazy.mp4 (63.46 MB)... +Updating The Deal-(Lenna Lux)-{Family Therapy XXX}-[Blowjob, Cumshot].mp4 with contact sheet +Processing: The Deal-(Lenna Lux)-{Family Therapy XXX}-[Blowjob, Cumshot].mp4 (Mode: scene) +Downloading The Deal-(Lenna Lux)-{Family Therapy XXX}-[Blowjob, Cumshot].mp4 (1580.76 MB)... +Updating Lenna Lux - Shrunk My Step Brother – Taboofantazy.mp4 with contact sheet +Processing: Lenna Lux - Shrunk My Step Brother – Taboofantazy.mp4 (Mode: scene) +Downloading Lenna Lux - Shrunk My Step Brother – Taboofantazy.mp4 (41.69 MB)... +Updating Lenna Lux - Teen in Cosplay Begs Daddy to Cum – Taboofantazy.mp4 with contact sheet +Processing: Lenna Lux - Teen in Cosplay Begs Daddy to Cum – Taboofantazy.mp4 (Mode: scene) +Downloading Lenna Lux - Teen in Cosplay Begs Daddy to Cum – Taboofantazy.mp4 (61.52 MB)... +Updating Lenna Lux - Fucking Your Brat Step Sister – Taboofantazy.mp4 with contact sheet +Processing: Lenna Lux - Fucking Your Brat Step Sister – Taboofantazy.mp4 (Mode: scene) +Downloading Lenna Lux - Fucking Your Brat Step Sister – Taboofantazy.mp4 (92.15 MB)... +Updating Lenna Lux - Daddy's Perfect Virgin – Taboofantazy.mp4 with contact sheet +Processing: Lenna Lux - Daddy's Perfect Virgin – Taboofantazy.mp4 (Mode: scene) +Downloading Lenna Lux - Daddy's Perfect Virgin – Taboofantazy.mp4 (108.81 MB)... +Updating Lenna Lux - Step Brother Seduction – Taboofantazy.mp4 with contact sheet +Processing: Lenna Lux - Step Brother Seduction – Taboofantazy.mp4 (Mode: scene) +Downloading Lenna Lux - Step Brother Seduction – Taboofantazy.mp4 (147.20 MB)... +Updating Lenna Lux - Daddys Perving On Me – Taboofantazy.mp4 with contact sheet +Processing: Lenna Lux - Daddys Perving On Me – Taboofantazy.mp4 (Mode: scene) +Downloading Lenna Lux - Daddys Perving On Me – Taboofantazy.mp4 (102.31 MB)... +Updating Lenna Lux - Breed Me Step Brother I Need Your Cum – Taboofan.mp4 with contact sheet +Processing: Lenna Lux - Breed Me Step Brother I Need Your Cum – Taboofan.mp4 (Mode: scene) +Downloading Lenna Lux - Breed Me Step Brother I Need Your Cum – Taboofan.mp4 (242.43 MB)... +Updating Lenna Lux - Daddy Fucks His Teen Daughter – Taboofantazy.mp4 with contact sheet +Processing: Lenna Lux - Daddy Fucks His Teen Daughter – Taboofantazy.mp4 (Mode: scene) +Downloading Lenna Lux - Daddy Fucks His Teen Daughter – Taboofantazy.mp4 (124.46 MB)... +Updating Lenna Lux - My Panty Sniffing Step Brother – Taboofantazy.mp4 with contact sheet +Processing: Lenna Lux - My Panty Sniffing Step Brother – Taboofantazy.mp4 (Mode: scene) +Downloading Lenna Lux - My Panty Sniffing Step Brother – Taboofantazy.mp4 (68.39 MB)... +Updating Lenna Lux - The Night Before - Brother And Sister Find Out They Had Drunken Sex - Fifi Foxx Fantasies.mp4 with contact sheet +Processing: Lenna Lux - The Night Before - Brother And Sister Find Out They Had Drunken Sex - Fifi Foxx Fantasies.mp4 (Mode: scene) +Downloading Lenna Lux - The Night Before - Brother And Sister Find Out They Had Drunken Sex - Fifi Foxx Fantasies.mp4 (90.36 MB)... +Scanning directory: /videos/lilibet.saunders +Updating FamilyTherapyXXX - Lilibet Saunders - Little Step Sis Vs Boner (29.10.2025) rq.mp4 with contact sheet +Processing: FamilyTherapyXXX - Lilibet Saunders - Little Step Sis Vs Boner (29.10.2025) rq.mp4 (Mode: scene) +Downloading FamilyTherapyXXX - Lilibet Saunders - Little Step Sis Vs Boner (29.10.2025) rq.mp4 (278.73 MB)... +Updating Little Step Sis Wants To Try Sex ~ Lilibet Saunders-{Household Fantasy}-[Amateur, Big Ass, Big Tits, Brown Hair, Male - POV, Multiple Cumshots, Pawg, Roleplay, Teen Girl (18–22), creampie].mp4 with contact sheet +Processing: Little Step Sis Wants To Try Sex ~ Lilibet Saunders-{Household Fantasy}-[Amateur, Big Ass, Big Tits, Brown Hair, Male - POV, Multiple Cumshots, Pawg, Roleplay, Teen Girl (18–22), creampie].mp4 (Mode: scene) +Downloading Little Step Sis Wants To Try Sex ~ Lilibet Saunders-{Household Fantasy}-[Amateur, Big Ass, Big Tits, Brown Hair, Male - POV, Multiple Cumshots, Pawg, Roleplay, Teen Girl (18–22), creampie].mp4 (452.99 MB)... +Updating BFFS - Brina Scarlet, Fun Sized Megan, Lil Bet Saunders (08.06.2025) rq.mp4 with contact sheet +Processing: BFFS - Brina Scarlet, Fun Sized Megan, Lil Bet Saunders (08.06.2025) rq.mp4 (Mode: scene) +Downloading BFFS - Brina Scarlet, Fun Sized Megan, Lil Bet Saunders (08.06.2025) rq.mp4 (277.09 MB)... +Updating I Normally Don't Fuck Like This-(Lilibet Saunders)-{Exploited College Girls}-[Big Tits, Brown Hair, Deepthroat, Face Fuck, Facial, Freckles, Gagging, High School, Innocent, Rough, Shy, Teen (18–22), Titjob, Toys, squirting].mp4 with contact sheet +Processing: I Normally Don't Fuck Like This-(Lilibet Saunders)-{Exploited College Girls}-[Big Tits, Brown Hair, Deepthroat, Face Fuck, Facial, Freckles, Gagging, High School, Innocent, Rough, Shy, Teen (18–22), Titjob, Toys, squirting].mp4 (Mode: scene) +Downloading I Normally Don't Fuck Like This-(Lilibet Saunders)-{Exploited College Girls}-[Big Tits, Brown Hair, Deepthroat, Face Fuck, Facial, Freckles, Gagging, High School, Innocent, Rough, Shy, Teen (18–22), Titjob, Toys, squirting].mp4 (4744.17 MB)... +Updating Redhead Horny Teen Gets Massage Creampie from her Step Daddy Par.mp4 with contact sheet +Processing: Redhead Horny Teen Gets Massage Creampie from her Step Daddy Par.mp4 (Mode: scene) +Downloading Redhead Horny Teen Gets Massage Creampie from her Step Daddy Par.mp4 (199.31 MB)... +Updating Step Daddy Fucks Teen Step Daughter Leaving Mess on her Face and.mp4 with contact sheet +Processing: Step Daddy Fucks Teen Step Daughter Leaving Mess on her Face and.mp4 (Mode: scene) +Downloading Step Daddy Fucks Teen Step Daughter Leaving Mess on her Face and.mp4 (70.19 MB)... +Updating Lilibet Saunders In Me & Step Dad Always Fuck When Step Mom Leaves - Parts (1-2)-{Taboo Heat}.mp4 with contact sheet +Processing: Lilibet Saunders In Me & Step Dad Always Fuck When Step Mom Leaves - Parts (1-2)-{Taboo Heat}.mp4 (Mode: scene) +Downloading Lilibet Saunders In Me & Step Dad Always Fuck When Step Mom Leaves - Parts (1-2)-{Taboo Heat}.mp4 (528.47 MB)... +Processing: EXCOGI Girls - Lilibet Ophelia Fae in Ive Never Kissed A Girl Before.mp4 (Mode: scene) +Downloading EXCOGI Girls - Lilibet Ophelia Fae in Ive Never Kissed A Girl Before.mp4 (769.50 MB)... +Processing: BangBus - Lilibet Saunders - It's Too Big (21.05.2025) rq.mp4 (Mode: scene) +Downloading BangBus - Lilibet Saunders - It's Too Big (21.05.2025) rq.mp4 (449.98 MB)... +Scanning directory: /videos/wifeymichelle +Scanning directory: /videos/lolo.punzel +Processing: Cherie DeVille's Homeschool Sex Ed-(Lolo Punzel)-{Primal's Taboo Family Relations}.mp4 (Mode: scene) +Downloading Cherie DeVille's Homeschool Sex Ed-(Lolo Punzel)-{Primal's Taboo Family Relations}.mp4 (1992.47 MB)... +Processing: Lolo in Love-(Lolo Punzel)-{Family Therapy XXX}.mp4 (Mode: scene) +Downloading Lolo in Love-(Lolo Punzel)-{Family Therapy XXX}.mp4 (303.49 MB)... +Processing: Friendly Fuck - Dylan Daniels Lolo Punzel Parker Swayze - Tnafli.mp4 (Mode: scene) +Downloading Friendly Fuck - Dylan Daniels Lolo Punzel Parker Swayze - Tnafli.mp4 (331.11 MB)... +Scanning directory: /videos/castingcurvy +Scanning directory: /videos/videodownloads1 +Processing: Watch Oshikake Bakunyuu Gyaru Harem Seikatsu 2 Hentai Video in 1.mp4 (Mode: scene) +Downloading Watch Oshikake Bakunyuu Gyaru Harem Seikatsu 2 Hentai Video in 1.mp4 (170.04 MB)... +Processing: Watch Oshikake Bakunyuu Gyaru Harem Seikatsu 1 Hentai Video in 1.mp4 (Mode: scene) +Downloading Watch Oshikake Bakunyuu Gyaru Harem Seikatsu 1 Hentai Video in 1.mp4 (150.27 MB)... +Processing: Katie Cummings - Sex ed with my lil Bro - Taboo Tube XXX.mp4 (Mode: scene) +Downloading Katie Cummings - Sex ed with my lil Bro - Taboo Tube XXX.mp4 (145.40 MB)... +Scanning directory: /videos/lana.lovett +Processing: Watch This Big Booty Mom Takes Daughters Place in Porn Lana Love.mp4 (Mode: scene) +Downloading Watch This Big Booty Mom Takes Daughters Place in Porn Lana Love.mp4 (412.52 MB)... +Scanning directory: /videos/melanie.hicks +Processing: Melanie Hicks - Helping Out My Mom - Moms Teach Sex Nubiles Porn.mp4 (Mode: scene) +Downloading Melanie Hicks - Helping Out My Mom - Moms Teach Sex Nubiles Porn.mp4 (152.47 MB)... +Scanning directory: /videos/tifa.quinn +Processing: Boxed And Bound-(Tifa Quinn)-{Brazzers Exxtra}.mp4 (Mode: scene) +Downloading Boxed And Bound-(Tifa Quinn)-{Brazzers Exxtra}.mp4 (377.68 MB)... +Scanning directory: /videos/josie.jaxxon +Processing: Prolapse Anal Creampie-(Josie Jaxxon)-{Thirst Trap XXX}-[Anal Sex, BBW, Big Tits, Curvy, MILF (30+), Male - POV, Twosome (Straight)].mp4 (Mode: scene) +Downloading Prolapse Anal Creampie-(Josie Jaxxon)-{Thirst Trap XXX}-[Anal Sex, BBW, Big Tits, Curvy, MILF (30+), Male - POV, Twosome (Straight)].mp4 (1394.05 MB)... +Processing: Josie.Jaxxon.Samanthas.Secretxo.Threesome.BigTits.BigAss.mp4 (Mode: scene) +Downloading Josie.Jaxxon.Samanthas.Secretxo.Threesome.BigTits.BigAss.mp4 (326.34 MB)... +Processing: OnlyFans.Josie.Jaxxon.11.Person.Orgy.with.Facials.bigtits.lesbian.milf.teens.threesome.artporn.double.gangbang.blowjob.orgy.anal.group.foursome.lingerie.hardcore.bigass.deepthroat.mature.amateur.squirt.FULL.HD.https.lulustream.com.08g7ghx1c.mp4 (Mode: scene) +Downloading OnlyFans.Josie.Jaxxon.11.Person.Orgy.with.Facials.bigtits.lesbian.milf.teens.threesome.artporn.double.gangbang.blowjob.orgy.anal.group.foursome.lingerie.hardcore.bigass.deepthroat.mature.amateur.squirt.FULL.HD.https.lulustream.com.08g7ghx1c.mp4 (533.65 MB)... +Processing: Josie Jaxxon - Mom Creampied - INCESTFLIX COM-01.mp4 (Mode: scene) +Downloading Josie Jaxxon - Mom Creampied - INCESTFLIX COM-01.mp4 (374.24 MB)... +Processing: New.Josie.Jaxxon.Mom.Creampie.2025.Hardcore.Milf.Bigtits.Creampie.StepMom.ILUVY.https.lulustream.com.js94weny38ct.https.savefiles.com.embed.66ap1iwb8p6t.html.mp4 (Mode: scene) +Downloading New.Josie.Jaxxon.Mom.Creampie.2025.Hardcore.Milf.Bigtits.Creampie.StepMom.ILUVY.https.lulustream.com.js94weny38ct.https.savefiles.com.embed.66ap1iwb8p6t.html.mp4 (317.31 MB)... +Scanning directory: /videos/unsorted +Scanning directory: /videos/katie.cummings +Processing: OIL_JOI.mp4 (Mode: scene) +Downloading OIL_JOI.mp4 (233.27 MB)... +Processing: Katie Cummings Rest Sins 2- Payback-{Fetish Cartel}.mp4 (Mode: scene) +Downloading Katie Cummings Rest Sins 2- Payback-{Fetish Cartel}.mp4 (668.73 MB)... +Processing: KATIE CUMMINGS - HORNY STEPMOM GETS MASSAGE.mp4 (Mode: scene) +Downloading KATIE CUMMINGS - HORNY STEPMOM GETS MASSAGE.mp4 (307.58 MB)... +Processing: Katie Cummings - Remote Controlled 2.mp4 (Mode: scene) +Downloading Katie Cummings - Remote Controlled 2.mp4 (450.88 MB)... +Processing: Katie C Kitchen Manyvids.mp4 (Mode: scene) +Downloading Katie C Kitchen Manyvids.mp4 (44.36 MB)... +Processing: Watch Busty Maid Pov - Katie Cummings, Katie Cummings Pov, P.mp4 (Mode: scene) +Downloading Watch Busty Maid Pov - Katie Cummings, Katie Cummings Pov, P.mp4 (65.32 MB)... +Processing: LATINA-(Katie Cummings)-{Katie Cummings - ManyVids}.mp4 (Mode: scene) +Downloading LATINA-(Katie Cummings)-{Katie Cummings - ManyVids}.mp4 (93.33 MB)... +Processing: KC hits 200lbs-(-).mp4 (Mode: scene) +Downloading KC hits 200lbs-(-).mp4 (57.55 MB)... +Processing: the milf becca pov pregnant cum fiending demon pt 1 xxx video.mp4 (Mode: scene) +Downloading the milf becca pov pregnant cum fiending demon pt 1 xxx video.mp4 (77.41 MB)... +Processing: katie cummings - hot tub sis.mp4 (Mode: scene) +Downloading katie cummings - hot tub sis.mp4 (417.75 MB)... +Processing: Katie Cummings - Oiled JOI.mp4 (Mode: scene) +Downloading Katie Cummings - Oiled JOI.mp4 (246.82 MB)... +Processing: Cardio.mp4 (Mode: scene) +Downloading Cardio.mp4 (291.46 MB)... +Processing: Katie Cummings - The Fuck DOLL 14.07.2017.mp4 (Mode: scene) +Downloading Katie Cummings - The Fuck DOLL 14.07.2017.mp4 (377.55 MB)... +Processing: Katie Cummings - trying on outfits.mp4 (Mode: scene) +Downloading Katie Cummings - trying on outfits.mp4 (72.74 MB)... +Processing: 03976 Katie Cummings - Stepmom Shows Me Her Moves.mp4 (Mode: scene) +Downloading 03976 Katie Cummings - Stepmom Shows Me Her Moves.mp4 (1881.31 MB)... +Processing: Milf Joi-(-).mov (Mode: scene) +Downloading Milf Joi-(-).mov (193.44 MB)... +Processing: Fucking My Ass In The Fur When I Was 18 (114) - Katie Cummings.mp4 (Mode: scene) +Downloading Fucking My Ass In The Fur When I Was 18 (114) - Katie Cummings.mp4 (129.64 MB)... +Processing: Katie Cummings - Hot Babe FUCKS Plumber.mp4 (Mode: scene) +Downloading Katie Cummings - Hot Babe FUCKS Plumber.mp4 (77.13 MB)... +Processing: 10684 Katie Cummings - Pumpkin Spice And Everything Naughty Stream Only.mp4 (Mode: scene) +Downloading 10684 Katie Cummings - Pumpkin Spice And Everything Naughty Stream Only.mp4 (2137.86 MB)... +Processing: Katie Cummings - Katie3000.mp4 (Mode: scene) +Downloading Katie Cummings - Katie3000.mp4 (350.35 MB)... +Processing: katie cummings 18 cambrotv.mp4 (Mode: scene) +Downloading katie cummings 18 cambrotv.mp4 (186.39 MB)... +Processing: Watch GOAT - Katie Cummings, Bbw, Pawg Porn - SpankBang.mp4 (Mode: scene) +Downloading Watch GOAT - Katie Cummings, Bbw, Pawg Porn - SpankBang.mp4 (10.64 MB)... +Processing: Katie Cummings - Big Sisters Pregnancy Conspiracy 1080p.mp4 (Mode: scene) +Downloading Katie Cummings - Big Sisters Pregnancy Conspiracy 1080p.mp4 (646.04 MB)... +Processing: Katie Cummings - Sex Contest - Who Wins---{Fetish Cartel}.mp4 (Mode: scene) +Downloading Katie Cummings - Sex Contest - Who Wins---{Fetish Cartel}.mp4 (222.56 MB)... +Processing: LewdestBunnie - Finally 18 - Extreme Taboo Movie - INCESTFLI.mp4 (Mode: scene) +Downloading LewdestBunnie - Finally 18 - Extreme Taboo Movie - INCESTFLI.mp4 (468.61 MB)... +Processing: Katie Cummings - Sex Slave Ft. Nikki Brooks and Melanie Hicks.mp4 (Mode: scene) +Downloading Katie Cummings - Sex Slave Ft. Nikki Brooks and Melanie Hicks.mp4 (86.80 MB)... +Processing: sister has huge tits JOI_1080p.mp4 (Mode: scene) +Downloading sister has huge tits JOI_1080p.mp4 (248.04 MB)... +Processing: Compressed_KATIE CUMMINGS_KATIE-IN-WONDERLAND-full-movie.mp4 (Mode: scene) +Downloading Compressed_KATIE CUMMINGS_KATIE-IN-WONDERLAND-full-movie.mp4 (2484.62 MB)... +Processing: KATIE CUMMINGS - Shower Sex.mp4 (Mode: scene) +Downloading KATIE CUMMINGS - Shower Sex.mp4 (559.16 MB)... +Processing: KC thinking about you.mp4 (Mode: scene) +Downloading KC thinking about you.mp4 (10.16 MB)... +Processing: First Date.mp4 (Mode: scene) +Downloading First Date.mp4 (1891.92 MB)... +Processing: HOME ALONE-(Katie Cummings)-{Katie Cummings - ManyVids}.mp4 (Mode: scene) +Downloading HOME ALONE-(Katie Cummings)-{Katie Cummings - ManyVids}.mp4 (321.21 MB)... +Processing: Easter Eggs.mp4 (Mode: scene) +Downloading Easter Eggs.mp4 (344.50 MB)... +Processing: KATIE CUMMINGS & NITO-{Homegrown Video}.mp4 (Mode: scene) +Downloading KATIE CUMMINGS & NITO-{Homegrown Video}.mp4 (876.04 MB)... +Processing: NO SNITCHING STEP SIS JOI-(Katie Cummings)-{Katie Cummings - ManyVids}.mp4 (Mode: scene) +Downloading NO SNITCHING STEP SIS JOI-(Katie Cummings)-{Katie Cummings - ManyVids}.mp4 (174.76 MB)... +Processing: KATIE CUMMINGS_MY-STEPBROS-BIRTHDAY-GIFT.mov (Mode: scene) +Downloading KATIE CUMMINGS_MY-STEPBROS-BIRTHDAY-GIFT.mov (2355.73 MB)... +Processing: Weighs & measures for you-(-).mov (Mode: scene) +Downloading Weighs & measures for you-(-).mov (135.37 MB)... +Processing: THE NEIGHBOR PART2.mp4 (Mode: scene) +Downloading THE NEIGHBOR PART2.mp4 (268.45 MB)... +Processing: Gorgeous Pornstar in Hialeah, Hialeah-(Katie Cummings)-{Industry Invaders}.mp4 (Mode: scene) +Downloading Gorgeous Pornstar in Hialeah, Hialeah-(Katie Cummings)-{Industry Invaders}.mp4 (753.62 MB)... +Processing: A wild west story katie cummings - Thothub.mp4 (Mode: scene) +Downloading A wild west story katie cummings - Thothub.mp4 (114.45 MB)... +Processing: KC - UNCONTROLLABLE - ManyVids.mp4 (Mode: scene) +Downloading KC - UNCONTROLLABLE - ManyVids.mp4 (273.00 MB)... +Processing: katie cummings pumpkin spice and everything naughty xxx premium porn videos2.mp4 (Mode: scene) +Downloading katie cummings pumpkin spice and everything naughty xxx premium porn videos2.mp4 (250.38 MB)... +Processing: Katie Cummings - Maid Service.mp4 (Mode: scene) +Downloading Katie Cummings - Maid Service.mp4 (407.93 MB)... +Processing: KATIE CUMMINGS_SUPERHERO-BLACKMAIL-LIVE.mov (Mode: scene) +Downloading KATIE CUMMINGS_SUPERHERO-BLACKMAIL-LIVE.mov (2166.66 MB)... +Processing: Katie Cummings - Eeeww Why is there CUM on me - Katie Cummings Remote Controlled.mp4 (Mode: scene) +Downloading Katie Cummings - Eeeww Why is there CUM on me - Katie Cummings Remote Controlled.mp4 (384.71 MB)... +Processing: 04926 Katie Cummings - New Girl Next Door.mp4 (Mode: scene) +Downloading 04926 Katie Cummings - New Girl Next Door.mp4 (466.73 MB)... +Processing: My Step Mom is my Birthday Present Starring Amiee Cambridge .mp4 (Mode: scene) +Downloading My Step Mom is my Birthday Present Starring Amiee Cambridge .mp4 (176.33 MB)... +Processing: katie cummings18.mp4 (Mode: scene) +Downloading katie cummings18.mp4 (161.91 MB)... +Processing: Watch K@t13 Cumm1ngs camshow - Katie Cummings, Bbw, Camshow .mp4 (Mode: scene) +Downloading Watch K@t13 Cumm1ngs camshow - Katie Cummings, Bbw, Camshow .mp4 (111.68 MB)... +Processing: KATIE_CREAM-(-).mov (Mode: scene) +Downloading KATIE_CREAM-(-).mov (1958.73 MB)... +Processing: Fat Secretary-(-).mov (Mode: scene) +Downloading Fat Secretary-(-).mov (332.38 MB)... +Processing: Movienight_W_Hot_Mom.mp4 (Mode: scene) +Downloading Movienight_W_Hot_Mom.mp4 (259.68 MB)... +Processing: katie cummings captainkcx bouncy boobs tell me how hard you onlyfans xxx porn.mp4 (Mode: scene) +Downloading katie cummings captainkcx bouncy boobs tell me how hard you onlyfans xxx porn.mp4 (21.65 MB)... +Processing: KATIE CUMMINGS_DADDY-ISSUES.mov (Mode: scene) +Downloading KATIE CUMMINGS_DADDY-ISSUES.mov (2709.99 MB)... +Processing: Katie Cummings - I'm soooo Drunk, Little Brother - Massage my feet PLEASE.mp4 (Mode: scene) +Downloading Katie Cummings - I'm soooo Drunk, Little Brother - Massage my feet PLEASE.mp4 (264.59 MB)... +Processing: Giant Knockers Killer Face-(Katie Cummings)-{MyGF}.mp4 (Mode: scene) +Downloading Giant Knockers Killer Face-(Katie Cummings)-{MyGF}.mp4 (159.52 MB)... +Processing: Katie Cummings - Fucks Pool Boy.mp4 (Mode: scene) +Downloading Katie Cummings - Fucks Pool Boy.mp4 (301.92 MB)... +Processing: ii.13.12.24.jayla.foxx.katie.cummings.and.ryan.smiles.mp4 (Mode: scene) +Downloading ii.13.12.24.jayla.foxx.katie.cummings.and.ryan.smiles.mp4 (1026.86 MB)... +Processing: KATIE CUMMINGS_MOMMYS-BOY.mov (Mode: scene) +Downloading KATIE CUMMINGS_MOMMYS-BOY.mov (1772.03 MB)... +Processing: cupcake stuffing2-(-).mp4 (Mode: scene) +Downloading cupcake stuffing2-(-).mp4 (94.39 MB)... +Processing: katie cummings in the kitchen.mp4 (Mode: scene) +Downloading katie cummings in the kitchen.mp4 (213.57 MB)... +Processing: limp - 15992 Katie In Wonderland.mp4 (Mode: scene) +Downloading limp - 15992 Katie In Wonderland.mp4 (846.80 MB)... +Processing: Katie Cummings - Crazy Housecall.mp4 (Mode: scene) +Downloading Katie Cummings - Crazy Housecall.mp4 (116.31 MB)... +Processing: Katie Cummings #handjob.mp4 (Mode: scene) +Downloading Katie Cummings #handjob.mp4 (149.07 MB)... +Processing: Katie Cummings - A Taboo Fantasy - Cock Teased In Chastity HD.mp4 (Mode: scene) +Downloading Katie Cummings - A Taboo Fantasy - Cock Teased In Chastity HD.mp4 (349.51 MB)... +Processing: 452936.mp4 (Mode: scene) +Downloading 452936.mp4 (779.34 MB)... +Processing: Katie Cummings - PUMP IT.mp4 (Mode: scene) +Downloading Katie Cummings - PUMP IT.mp4 (290.96 MB)... +Processing: KATIE CUMMINGS_WET-SMOKE-SHOW-JOI.mov (Mode: scene) +Downloading KATIE CUMMINGS_WET-SMOKE-SHOW-JOI.mov (1349.26 MB)... +Processing: KATIE CUMMINGS_GODDESS-KATIE-JOI.mov (Mode: scene) +Downloading KATIE CUMMINGS_GODDESS-KATIE-JOI.mov (3371.94 MB)... +Processing: Katie Cummings - Maid Outfit.mp4 (Mode: scene) +Downloading Katie Cummings - Maid Outfit.mp4 (291.17 MB)... +Processing: Katie_Cummings_-_Voyeur_Shower_with_Stepmom_-_03-26-24.mp4 (Mode: scene) +Downloading Katie_Cummings_-_Voyeur_Shower_with_Stepmom_-_03-26-24.mp4 (1830.69 MB)... +Processing: Katie Cummings - Cum on her ass.mp4 (Mode: scene) +Downloading Katie Cummings - Cum on her ass.mp4 (871.75 MB)... +Processing: Katie Cummings - Sleep Sins.mp4 (Mode: scene) +Downloading Katie Cummings - Sleep Sins.mp4 (421.06 MB)... +Processing: BBW Katie Cummings - Weight Watchers 7.mp4 (Mode: scene) +Downloading BBW Katie Cummings - Weight Watchers 7.mp4 (141.87 MB)... +Processing: KATIE CUMMINGS_VIRTUAL-SEX-WITH-GODDESS-KATIE.mov (Mode: scene) +Downloading KATIE CUMMINGS_VIRTUAL-SEX-WITH-GODDESS-KATIE.mov (2114.49 MB)... +Processing: Amateur Big-Ass Busty Stepsister Homemade Fuck With Step-Brother.mp4 (Mode: scene) +Downloading Amateur Big-Ass Busty Stepsister Homemade Fuck With Step-Brother.mp4 (199.37 MB)... +Processing: Katie Cummings - Taboo Fantasy_KATIE-CUMMINGS-HOME-MOVIES.mp4 (Mode: scene) +Downloading Katie Cummings - Taboo Fantasy_KATIE-CUMMINGS-HOME-MOVIES.mp4 (1195.54 MB)... +Processing: Katie Cummings - Easter Eggs - INCESTFLIX.COM.mp4 (Mode: scene) +Downloading Katie Cummings - Easter Eggs - INCESTFLIX.COM.mp4 (193.46 MB)... +Processing: KATIE_EPISODE_II_2106-tzvOeqF0.mov (Mode: scene) +Downloading KATIE_EPISODE_II_2106-tzvOeqF0.mov (561.66 MB)... +Processing: Katie Cummings.mp4 (Mode: scene) +Downloading Katie Cummings.mp4 (285.93 MB)... +Processing: KATIE CUMMINGS_SMOKE-SHOW.mov (Mode: scene) +Downloading KATIE CUMMINGS_SMOKE-SHOW.mov (1449.75 MB)... +Processing: Watch Katie-C Collection - Weight Gain, Katie Cummings, Kati.mp4 (Mode: scene) +Downloading Watch Katie-C Collection - Weight Gain, Katie Cummings, Kati.mp4 (955.58 MB)... +Processing: Fat From Vacation-(-).mov (Mode: scene) +Downloading Fat From Vacation-(-).mov (191.15 MB)... +Processing: 375852720p mp4.mp4 (Mode: scene) +Downloading 375852720p mp4.mp4 (165.22 MB)... +Processing: Katie Cummings - Family Wars - Luke And Leia - INCESTFLIX.CO.mp4 (Mode: scene) +Downloading Katie Cummings - Family Wars - Luke And Leia - INCESTFLIX.CO.mp4 (148.95 MB)... +Processing: MY SISTER'S BIG SEXY TITS!!!-(Katie Cummings)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading MY SISTER'S BIG SEXY TITS!!!-(Katie Cummings)-{Taboo Fantasy}.mp4 (468.20 MB)... +Processing: Mischief_Managed.mov.mp4 (Mode: scene) +Downloading Mischief_Managed.mov.mp4 (5941.65 MB)... +Processing: Watch K Cummings - Katie Cummings, Bbw, Mom Porn - SpankBang.mp4 (Mode: scene) +Downloading Watch K Cummings - Katie Cummings, Bbw, Mom Porn - SpankBang.mp4 (60.02 MB)... +Processing: vid_720p.mp4 (Mode: scene) +Downloading vid_720p.mp4 (294.82 MB)... +Processing: new, abl - 6438 Halloween Night.mp4 (Mode: scene) +Downloading new, abl - 6438 Halloween Night.mp4 (224.55 MB)... +Processing: 105378.mp4.mp4 (Mode: scene) +Downloading 105378.mp4.mp4 (338.48 MB)... +Processing: kitchen bathroom jello time fat play katie cummings-(-).mp4 (Mode: scene) +Downloading kitchen bathroom jello time fat play katie cummings-(-).mp4 (201.93 MB)... +Processing: SNEAKING IN-(Katie Cummings)-{Katie Cummings - ManyVids}.mp4 (Mode: scene) +Downloading SNEAKING IN-(Katie Cummings)-{Katie Cummings - ManyVids}.mp4 (362.04 MB)... +Processing: Katie Cummings - Sexy Fat Teacher.mp4 (Mode: scene) +Downloading Katie Cummings - Sexy Fat Teacher.mp4 (57.46 MB)... +Processing: KATIE CUMMINGS_THE-GENERALS-REWARD.mov (Mode: scene) +Downloading KATIE CUMMINGS_THE-GENERALS-REWARD.mov (3536.32 MB)... +Processing: KC Fattens up nikki brooks-(-)-(-)-(-)-(-)-(-)-(-)-(-)-(-)-(-)-(-)-(-)-(-).mov (Mode: scene) +Downloading KC Fattens up nikki brooks-(-)-(-)-(-)-(-)-(-)-(-)-(-)-(-)-(-)-(-)-(-)-(-).mov (301.49 MB)... +Processing: Katie Cummings Catching my Perverted Brother wmv Watch porn .mp4 (Mode: scene) +Downloading Katie Cummings Catching my Perverted Brother wmv Watch porn .mp4 (348.00 MB)... +Processing: Chubby Anal Delicius - Riley Nixon.mp4 (Mode: scene) +Downloading Chubby Anal Delicius - Riley Nixon.mp4 (261.44 MB)... +Processing: Laundry Day - Shrunken Clothes.mov (Mode: scene) +Downloading Laundry Day - Shrunken Clothes.mov (398.92 MB)... +Processing: 849695083122.mp4 (Mode: scene) +Downloading 849695083122.mp4 (135.61 MB)... +Processing: Katie Cummings Jerk For Me.mp4 (Mode: scene) +Downloading Katie Cummings Jerk For Me.mp4 (223.99 MB)... +Processing: limp - 10413 Spooky Party.mp4 (Mode: scene) +Downloading limp - 10413 Spooky Party.mp4 (462.88 MB)... +Processing: Katie Cummings - Got her fat ass stuck.mp4 (Mode: scene) +Downloading Katie Cummings - Got her fat ass stuck.mp4 (409.56 MB)... +Processing: Katie Cummings - Daughter Fucks the Mechanic.mp4 (Mode: scene) +Downloading Katie Cummings - Daughter Fucks the Mechanic.mp4 (103.01 MB)... +Processing: Katie Cummings - Tricked my brother to INSEMINATE me.mp4 (Mode: scene) +Downloading Katie Cummings - Tricked my brother to INSEMINATE me.mp4 (93.93 MB)... +Processing: Compressed_KATIE CUMMINGS_BAKING-W-KATIE-JOI.mp4 (Mode: scene) +Downloading Compressed_KATIE CUMMINGS_BAKING-W-KATIE-JOI.mp4 (1141.06 MB)... +Processing: WHITE-BUNNY-VIRTUAL-SEX.mov (Mode: scene) +Downloading WHITE-BUNNY-VIRTUAL-SEX.mov (900.05 MB)... +Processing: Katie_Cummings_-_Love_Shakc.mp4 (Mode: scene) +Downloading Katie_Cummings_-_Love_Shakc.mp4 (228.52 MB)... +Processing: Katie Cummings - Blue Balls.mp4 (Mode: scene) +Downloading Katie Cummings - Blue Balls.mp4 (118.37 MB)... +Processing: KATIE CUMMINGS_MOMMY-GOT-STUCK-TOO.mov (Mode: scene) +Downloading KATIE CUMMINGS_MOMMY-GOT-STUCK-TOO.mov (4620.32 MB)... +Processing: LICK YOUR SISTER'S ASSHOLE-(Katie Cummings)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading LICK YOUR SISTER'S ASSHOLE-(Katie Cummings)-{Taboo Fantasy}.mp4 (396.99 MB)... +Processing: Katie Cummings - The Midnight Prowl_ Part One - #Teens #Bigtits #Bigass #Facial #Porn (Download ASAP. I WILL NOT be Re-uploading it).mp4 (Mode: scene) +Downloading Katie Cummings - The Midnight Prowl_ Part One - #Teens #Bigtits #Bigass #Facial #Porn (Download ASAP. I WILL NOT be Re-uploading it).mp4 (679.89 MB)... +Processing: UdderlyAdorable_Stepsister_5-30-2024.mov (Mode: scene) +Downloading UdderlyAdorable_Stepsister_5-30-2024.mov (687.21 MB)... +Processing: Watch Katie Cummings - Katie Cummings, Katie Cummings Bbw, B.mp4 (Mode: scene) +Downloading Watch Katie Cummings - Katie Cummings, Katie Cummings Bbw, B.mp4 (159.99 MB)... +Processing: THE GIRL FRIEND EXPERIENCE-(-).mov (Mode: scene) +Downloading THE GIRL FRIEND EXPERIENCE-(-).mov (820.44 MB)... +Processing: Twerk that booty-(-).mov (Mode: scene) +Downloading Twerk that booty-(-).mov (155.68 MB)... +Processing: Katie Cummings - Big Sister Wrecked the Car and Payoff Fuck.mp4 (Mode: scene) +Downloading Katie Cummings - Big Sister Wrecked the Car and Payoff Fuck.mp4 (346.97 MB)... +Processing: KATIE CUMMINGS – SCARECROW GETS SOME BRAIN.mp4 (Mode: scene) +Downloading KATIE CUMMINGS – SCARECROW GETS SOME BRAIN.mp4 (92.74 MB)... +Processing: Fat Stepsister Joi-(-).mov (Mode: scene) +Downloading Fat Stepsister Joi-(-).mov (72.71 MB)... +Processing: Katies Big Ass Gets Fucked by Lazy Stepbrother Katie Cummings - .mp4 (Mode: scene) +Downloading Katies Big Ass Gets Fucked by Lazy Stepbrother Katie Cummings - .mp4 (0.15 MB)... +Processing: 196. CUM DONOR-(-).mov (Mode: scene) +Downloading 196. CUM DONOR-(-).mov (1996.09 MB)... +Processing: Katie Cummings - A Taboo Fantasy - Deflowered By My Sister.mp4 (Mode: scene) +Downloading Katie Cummings - A Taboo Fantasy - Deflowered By My Sister.mp4 (377.19 MB)... +Processing: Cumming Around-(Katie Cummings)-{8th Street Latinas}.mp4 (Mode: scene) +Downloading Cumming Around-(Katie Cummings)-{8th Street Latinas}.mp4 (302.08 MB)... +Processing: Katie In A Nightie - Katie Cummings.mp4 (Mode: scene) +Downloading Katie In A Nightie - Katie Cummings.mp4 (96.82 MB)... +Processing: Katie Cummings - The Video Call.mp4 (Mode: scene) +Downloading Katie Cummings - The Video Call.mp4 (172.03 MB)... +Processing: Katie Cummings - Big Sister and Little Brother Skip the Beach and Fuck.mp4 (Mode: scene) +Downloading Katie Cummings - Big Sister and Little Brother Skip the Beach and Fuck.mp4 (364.98 MB)... +Scanning directory: /videos/annie.archer +Processing: Full Video - Sassy Annie Archer Blames Stepbro For Making Her Ni.mp4 (Mode: scene) +Downloading Full Video - Sassy Annie Archer Blames Stepbro For Making Her Ni.mp4 (543.81 MB)... +Scanning directory: /videos/jackie.hoff +Processing: I Fuck My Nerdy Step Sister's Ass For Her First Time-(Jackie Hoff).mp4 (Mode: scene) +Downloading I Fuck My Nerdy Step Sister's Ass For Her First Time-(Jackie Hoff).mp4 (695.63 MB)... +Processing: Jackie Hoff - Bossy Mom Commands I Cum On Her Face - Bratty MILF.mp4 (Mode: scene) +Downloading Jackie Hoff - Bossy Mom Commands I Cum On Her Face - Bratty MILF.mp4 (384.99 MB)... +Scanning directory: /videos/blazedstudios +Scanning directory: /videos/olivia.stark_aka_olivia.lapiedra +Scanning directory: /videos/stephie.staar +Processing: ccxxx.17.08.18.sadie.kennedy.sadie.likes.it.in.the.butt.mp4 (Mode: scene) +Downloading ccxxx.17.08.18.sadie.kennedy.sadie.likes.it.in.the.butt.mp4 (852.08 MB)... +Processing: ccxxx.18.12.28.stephie.staar.excited.fangirl.turned.into.rockstars.cock.slut.720p.mp4 (Mode: scene) +Downloading ccxxx.18.12.28.stephie.staar.excited.fangirl.turned.into.rockstars.cock.slut.720p.mp4 (1412.08 MB)... +Scanning directory: /videos/riley.jean.aka.alex.jane +Processing: Full Video - Step Sister With Plump Tits Alex Jane Gets Her Puss.mp4 (Mode: scene) +Downloading Full Video - Step Sister With Plump Tits Alex Jane Gets Her Puss.mp4 (209.17 MB)... +Scanning directory: /videos/ophelia.kaan +Processing: Ophelia Kaan Nicole Nichols - A Cock Tease Learns To Fuck Family.mp4 (Mode: scene) +Downloading Ophelia Kaan Nicole Nichols - A Cock Tease Learns To Fuck Family.mp4 (430.05 MB)... +Scanning directory: /videos/jav +Scanning directory: /videos/andi.rose +Processing: ManyVids - Andie Anderson, Hailey Rose - Creampie and Facial With Big Titty Milf (30.12.2024) rq.mp4 (Mode: scene) +Downloading ManyVids - Andie Anderson, Hailey Rose - Creampie and Facial With Big Titty Milf (30.12.2024) rq.mp4 (603.71 MB)... +Processing: [Cum Swapping Sis] (BGG) Sis Game - Maya Woulfe & Andi Rose.mp4 (Mode: scene) +Downloading [Cum Swapping Sis] (BGG) Sis Game - Maya Woulfe & Andi Rose.mp4 (2177.25 MB)... +Processing: Going Back Into The Future To Hit On My Mom - S1-E5-(Andi Rose)-{Younger Mommy}.mp4 (Mode: scene) +Downloading Going Back Into The Future To Hit On My Mom - S1-E5-(Andi Rose)-{Younger Mommy}.mp4 (4346.21 MB)... +Processing: povd.andi.rose.tempting.the.tailor.24.01.05.2160p.mp4 (Mode: scene) +Downloading povd.andi.rose.tempting.the.tailor.24.01.05.2160p.mp4 (3918.33 MB)... +Processing: brattysis_your_pussy_leaked_on_my_pants_3840.mp4 (Mode: scene) +Downloading brattysis_your_pussy_leaked_on_my_pants_3840.mp4 (2788.37 MB)... +Processing: nubilefilms.andi.rose.something.sweet.before.dinner.23.08.18.2160p.mp4 (Mode: scene) +Downloading nubilefilms.andi.rose.something.sweet.before.dinner.23.08.18.2160p.mp4 (2017.82 MB)... +Processing: princesscum.andi.rose.did.you.get.your.stepsister.pregnant.21.03.05.1080p.mp4 (Mode: scene) +Downloading princesscum.andi.rose.did.you.get.your.stepsister.pregnant.21.03.05.1080p.mp4 (1270.16 MB)... +Scanning directory: /videos/ai_generated +Processing: AI_Belle Beauty and the Beast_1920x1080.mp4 (Mode: scene) +Downloading AI_Belle Beauty and the Beast_1920x1080.mp4 (163.84 MB)... +Processing: Trio Sex VR META.mp4 (Mode: scene) +Downloading Trio Sex VR META.mp4 (4336.64 MB)... +Processing: AverageJay - AI AverageJay v4 - The Fattening.mp4 (Mode: scene) +Downloading AverageJay - AI AverageJay v4 - The Fattening.mp4 (243.86 MB)... +Processing: Aerith VR META.mp4 (Mode: scene) +Downloading Aerith VR META.mp4 (3600.23 MB)... +Processing: Pink Streamer VR.mp4 (Mode: scene) +Downloading Pink Streamer VR.mp4 (2915.73 MB)... +Processing: Sexpow - AI Sluts Real Pussies Squirts and Cumshots.mp4 (Mode: scene) +Downloading Sexpow - AI Sluts Real Pussies Squirts and Cumshots.mp4 (495.24 MB)... +Processing: Raven VR META.mp4 (Mode: scene) +Downloading Raven VR META.mp4 (1095.67 MB)... +Processing: AI Gen PMV - Ariana Grande Santa's Helper [aestheticillusions.ai].mp4 (Mode: scene) +Downloading AI Gen PMV - Ariana Grande Santa's Helper [aestheticillusions.ai].mp4 (215.85 MB)... +Processing: AI_Jinx_1080p.mp4 (Mode: scene) +Downloading AI_Jinx_1080p.mp4 (291.63 MB)... +Processing: Charming VR META.mp4 (Mode: scene) +Downloading Charming VR META.mp4 (3655.56 MB)... +Processing: Raven Temptress VR ORIGINAL_META.mp4 (Mode: scene) +Downloading Raven Temptress VR ORIGINAL_META.mp4 (3686.79 MB)... +Processing: AI_Banshee Girl_1920x1080.mp4 (Mode: scene) +Downloading AI_Banshee Girl_1920x1080.mp4 (274.48 MB)... +Processing: Taylor Swift cumshot compilation AI.mp4 (Mode: scene) +Downloading Taylor Swift cumshot compilation AI.mp4 (23.84 MB)... +Scanning directory: /videos/amelia.liddell +Processing: Amelia Liddell - The Perfect Sexretary (20.08.13).mp4 (Mode: scene) +Downloading Amelia Liddell - The Perfect Sexretary (20.08.13).mp4 (2474.05 MB)... +Processing: Amelia Liddell - Lil' Girl Turned Fucktoy By Dad's Friend.mp4 (Mode: scene) +Downloading Amelia Liddell - Lil' Girl Turned Fucktoy By Dad's Friend.mp4 (2151.95 MB)... +Processing: Amelia Liddell - Teen Fucks Stranger to To Get Out Of Fender Bender.mp4 (Mode: scene) +Downloading Amelia Liddell - Teen Fucks Stranger to To Get Out Of Fender Bender.mp4 (1043.56 MB)... +Processing: Amelia Liddell - Ankhas Anal BG (22.07.13).mp4 (Mode: scene) +Downloading Amelia Liddell - Ankhas Anal BG (22.07.13).mp4 (464.51 MB)... +Processing: Amelia Liddell - SPE From Buttslut Elf (19.08.28).mp4 (Mode: scene) +Downloading Amelia Liddell - SPE From Buttslut Elf (19.08.28).mp4 (986.50 MB)... +Processing: Amelia Liddell - Escort Fantasy - No Charge For You.mp4 (Mode: scene) +Downloading Amelia Liddell - Escort Fantasy - No Charge For You.mp4 (2759.14 MB)... +Processing: Amelia Liddell - Hot For Teacher (1080).mp4 (Mode: scene) +Downloading Amelia Liddell - Hot For Teacher (1080).mp4 (2467.29 MB)... +Processing: Amelia Liddell - Catholic school GF gives you her ass.mp4 (Mode: scene) +Downloading Amelia Liddell - Catholic school GF gives you her ass.mp4 (781.09 MB)... +Processing: Amelia Liddell - Cock Turns Wannabe Nun Into Anal Whore (20.02.16).mp4 (Mode: scene) +Downloading Amelia Liddell - Cock Turns Wannabe Nun Into Anal Whore (20.02.16).mp4 (862.38 MB)... +Processing: Amelia Liddell - Sorority Bukkake Initiation (21.02.18).mp4 (Mode: scene) +Downloading Amelia Liddell - Sorority Bukkake Initiation (21.02.18).mp4 (2822.84 MB)... +Processing: Amelia Liddell - Anal Virginity Taken By Friend's Dad (18.05.28).mp4 (Mode: scene) +Downloading Amelia Liddell - Anal Virginity Taken By Friend's Dad (18.05.28).mp4 (1460.37 MB)... +Processing: Amelia Liddell - Nerdy Friend Turned Into Ahegao Slut.mp4 (Mode: scene) +Downloading Amelia Liddell - Nerdy Friend Turned Into Ahegao Slut.mp4 (864.03 MB)... +Processing: Amelia Liddell - Personal Cum Rag and Piss Mop Maid (21.01.05).mp4 (Mode: scene) +Downloading Amelia Liddell - Personal Cum Rag and Piss Mop Maid (21.01.05).mp4 (1540.49 MB)... +Processing: Amelia Liddell - Tit Fuck Me While You Watch Porn (19.12.28).mp4 (Mode: scene) +Downloading Amelia Liddell - Tit Fuck Me While You Watch Porn (19.12.28).mp4 (665.24 MB)... +Processing: Amelia Liddell - PLEASE breed me 1080p.mp4 (Mode: scene) +Downloading Amelia Liddell - PLEASE breed me 1080p.mp4 (895.43 MB)... +Processing: Amelia Liddell - Anal orgasm with fuck machine (21.12.02).mp4 (Mode: scene) +Downloading Amelia Liddell - Anal orgasm with fuck machine (21.12.02).mp4 (198.87 MB)... +Scanning directory: /videos/redmilf +Processing: GP072 - Rachel Steele Classics. Volume 3.mp4 (Mode: scene) +Downloading GP072 - Rachel Steele Classics. Volume 3.mp4 (445.54 MB)... +Processing: DID1015- - Apologize-(Rachel Steele)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID1015- - Apologize-(Rachel Steele)-{Rachel Steele}.mp4 (172.91 MB)... +Processing: Taboo.mp4 (Mode: scene) +Downloading Taboo.mp4 (172.88 MB)... +Processing: MILF194.3 - Son Gets Birthday Present from Mom and Sisters.mp4 (Mode: scene) +Downloading MILF194.3 - Son Gets Birthday Present from Mom and Sisters.mp4 (110.94 MB)... +Processing: Taboo Tales Volume 99 1.mp4 (Mode: scene) +Downloading Taboo Tales Volume 99 1.mp4 (98.51 MB)... +Scanning directory: /videos/krystal.orchid +Processing: iifkfdm190e_Hot Step Sister Krystal Orchid into fucking her Aiden Valentine.mp4 (Mode: scene) +Downloading iifkfdm190e_Hot Step Sister Krystal Orchid into fucking her Aiden Valentine.mp4 (322.52 MB)... +Processing: khlbpudca19_Krystal Orchid Fucks stepDaddy POV Virtual.mp4 (Mode: scene) +Downloading khlbpudca19_Krystal Orchid Fucks stepDaddy POV Virtual.mp4 (174.78 MB)... +Processing: iihokvk4a0f_Little stepsis you into fucker her Krystal Orchid blond petite pov.mp4 (Mode: scene) +Downloading iihokvk4a0f_Little stepsis you into fucker her Krystal Orchid blond petite pov.mp4 (122.88 MB)... +Processing: ccxxx.17.10.20.krystal.orchid.krystals.first.big.dick.footjob.mp4 (Mode: scene) +Downloading ccxxx.17.10.20.krystal.orchid.krystals.first.big.dick.footjob.mp4 (849.17 MB)... +Processing: kmfduudba2c_I Dream Of Jeanie Parody featuring Krystal Orchid.mp4 (Mode: scene) +Downloading kmfduudba2c_I Dream Of Jeanie Parody featuring Krystal Orchid.mp4 (177.80 MB)... +Processing: kltimfv20ed_Male to Female Transformation Krystal Orchid.mp4 (Mode: scene) +Downloading kltimfv20ed_Male to Female Transformation Krystal Orchid.mp4 (184.95 MB)... +Scanning directory: /videos/sofia.lee +Processing: Super Sexy-(Sofia Lee)-{MiniskirtGirlz}.mp4 (Mode: scene) +Downloading Super Sexy-(Sofia Lee)-{MiniskirtGirlz}.mp4 (498.50 MB)... +Scanning directory: /videos/camille.black +Processing: Camille Black Maxine X - Father Daughter Seductions 2 - Mommy Qu.mp4 (Mode: scene) +Downloading Camille Black Maxine X - Father Daughter Seductions 2 - Mommy Qu.mp4 (304.47 MB)... +Processing: kmfplkk9a0c_Stripped stepSister Camille Black.mp4 (Mode: scene) +Downloading kmfplkk9a0c_Stripped stepSister Camille Black.mp4 (162.67 MB)... +Processing: kmfltmh70f2_rude bitch housewife gets facefucked by robber.mp4 (Mode: scene) +Downloading kmfltmh70f2_rude bitch housewife gets facefucked by robber.mp4 (164.63 MB)... +Processing: kmfpdldd385_Gainer Camille Black Shows Off Her Big Belly.mp4 (Mode: scene) +Downloading kmfpdldd385_Gainer Camille Black Shows Off Her Big Belly.mp4 (144.03 MB)... +Processing: Camille Black Tara Ryze - Father Daughter Seductions 2 - Mommy Q.mp4 (Mode: scene) +Downloading Camille Black Tara Ryze - Father Daughter Seductions 2 - Mommy Q.mp4 (242.51 MB)... +Scanning directory: /videos/marilyn.mayson +Scanning directory: /videos/sailor.luna_aka_rebecca.vanguard +Processing: Rebecca Vanguard - Tremor Gift From Dad - Las Vegas Amateurs - I.mp4 (Mode: scene) +Downloading Rebecca Vanguard - Tremor Gift From Dad - Las Vegas Amateurs - I.mp4 (129.88 MB)... +Processing: Sailor Luna - College Sis Teaches Little Brother Sex Ed 5 - WCA .mp4 (Mode: scene) +Downloading Sailor Luna - College Sis Teaches Little Brother Sex Ed 5 - WCA .mp4 (129.41 MB)... +Processing: Sailor Luna - College Sis Teaches Little Brother Sex Ed 1-2-3 - .mp4 (Mode: scene) +Downloading Sailor Luna - College Sis Teaches Little Brother Sex Ed 1-2-3 - .mp4 (177.37 MB)... +Processing: Sailor Luna - College Sis Teaches Little Brother Sex Ed 4 - WCA .mp4 (Mode: scene) +Downloading Sailor Luna - College Sis Teaches Little Brother Sex Ed 4 - WCA .mp4 (88.34 MB)... +Processing: Sailor Luna Step-Brother Bets Her Ass - Tnaflix com.mp4 (Mode: scene) +Downloading Sailor Luna Step-Brother Bets Her Ass - Tnaflix com.mp4 (766.74 MB)... +Processing: Rebecca Vanguard - My Stepdad Has An Onlyfans - SeazonedBeef - I.mp4 (Mode: scene) +Downloading Rebecca Vanguard - My Stepdad Has An Onlyfans - SeazonedBeef - I.mp4 (80.43 MB)... +Processing: Rebecca Vanguard - Pussy Eating With Dad On Cam - Las Vegas Amat.mp4 (Mode: scene) +Downloading Rebecca Vanguard - Pussy Eating With Dad On Cam - Las Vegas Amat.mp4 (138.72 MB)... +Processing: Birthday Sex With Sailor Luna-(Rebecca Vanguard)-{Conor Coxxx}-[Blond Hair, Cum on Pussy, Cumshot, Doggy Style, Face Down Ass Up, Fingering, Pussy Licking, Rimming, Spooning, cowgirl].mp4 (Mode: scene) +Downloading Birthday Sex With Sailor Luna-(Rebecca Vanguard)-{Conor Coxxx}-[Blond Hair, Cum on Pussy, Cumshot, Doggy Style, Face Down Ass Up, Fingering, Pussy Licking, Rimming, Spooning, cowgirl].mp4 (2450.15 MB)... +Processing: Sailor Luna - Nerdy Slut Loves Fucking Her Daddy - Slut Inspecti.mp4 (Mode: scene) +Downloading Sailor Luna - Nerdy Slut Loves Fucking Her Daddy - Slut Inspecti.mp4 (253.48 MB)... +Processing: Sailor Luna sucking stepbro's cock at the cinema-(Rebecca Vanguard)-{Primal's Taboo Family Relations}.mp4 (Mode: scene) +Downloading Sailor Luna sucking stepbro's cock at the cinema-(Rebecca Vanguard)-{Primal's Taboo Family Relations}.mp4 (200.86 MB)... +Scanning directory: /videos/olivia.kasady +Processing: ccxxx.18.10.19.olivia.kasady.pov.blowjob.facial.mp4 (Mode: scene) +Downloading ccxxx.18.10.19.olivia.kasady.pov.blowjob.facial.mp4 (987.77 MB)... +Processing: ccxxx.18.08.10.olivia.kasady.stroking.your.dick.till.you.cum.mp4 (Mode: scene) +Downloading ccxxx.18.08.10.olivia.kasady.stroking.your.dick.till.you.cum.mp4 (773.35 MB)... +Processing: imcambm1795_step Sis barges in on stepbrother stroking his cock.mp4 (Mode: scene) +Downloading imcambm1795_step Sis barges in on stepbrother stroking his cock.mp4 (275.02 MB)... +Processing: klhobfd18be_You Take Your stepDaughter Olivia Kasady's Virginity POV.mp4 (Mode: scene) +Downloading klhobfd18be_You Take Your stepDaughter Olivia Kasady's Virginity POV.mp4 (143.39 MB)... +Processing: ikmvlovbe17_Gender Swap Step Siblings Fuck Themselves.mp4 (Mode: scene) +Downloading ikmvlovbe17_Gender Swap Step Siblings Fuck Themselves.mp4 (159.54 MB)... +Processing: ccxxx.19.06.15.charlee.chase.and.olivia.kasady.two.hands.are.better.mp4 (Mode: scene) +Downloading ccxxx.19.06.15.charlee.chase.and.olivia.kasady.two.hands.are.better.mp4 (495.61 MB)... +Scanning directory: /videos/lulu.chu +Processing: Already Started, Might As Well Finish-(Lulu Chu)-{My Pervy Family}.mp4 (Mode: scene) +Downloading Already Started, Might As Well Finish-(Lulu Chu)-{My Pervy Family}.mp4 (1659.64 MB)... +Processing: Lulu Chu - Cheating On My BF With My Brother - CheatingSis Nubil.mp4 (Mode: scene) +Downloading Lulu Chu - Cheating On My BF With My Brother - CheatingSis Nubil.mp4 (228.59 MB)... +Processing: Lulu Chu - Greet your Asian stepsister - Oops Family.mp4 (Mode: scene) +Downloading Lulu Chu - Greet your Asian stepsister - Oops Family.mp4 (783.03 MB)... +Processing: Lauren Phillips Lulu Chu - Family Settles In - FamilySwap Nubile.mp4 (Mode: scene) +Downloading Lauren Phillips Lulu Chu - Family Settles In - FamilySwap Nubile.mp4 (183.66 MB)... +Scanning directory: /videos/chloe.surreal +Processing: An Unusual Vacation-(Chloe Surreal)-{Freeuse Fantasy}.mp4 (Mode: scene) +Downloading An Unusual Vacation-(Chloe Surreal)-{Freeuse Fantasy}.mp4 (665.69 MB)... +Scanning directory: /videos/melkteeth +Scanning directory: /videos/aura.joy +Processing: Aura Joy_002.mp4 (Mode: scene) +Downloading Aura Joy_002.mp4 (1004.53 MB)... +Processing: Aura Joy_005.mp4 (Mode: scene) +Downloading Aura Joy_005.mp4 (16.31 MB)... +Processing: Lexy Jerks Vol 2 Scene 2.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 2 Scene 2.mp4 (464.72 MB)... +Processing: Lexy Jerks Vol 2 Scene 5.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 2 Scene 5.mp4 (434.65 MB)... +Processing: Lexy Jerks Vol 1 Scene 1.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 1 Scene 1.mp4 (250.51 MB)... +Processing: Lexy Jerks Vol 2 Scene 3.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 2 Scene 3.mp4 (529.43 MB)... +Processing: Lexy Jerks Vol 1 Scene 6.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 1 Scene 6.mp4 (340.15 MB)... +Processing: Lexy Jerks Vol 3 Scene 3.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 3 Scene 3.mp4 (388.23 MB)... +Processing: Aura Joy_014.mp4 (Mode: scene) +Downloading Aura Joy_014.mp4 (485.61 MB)... +Processing: Aura Joy_013.mp4 (Mode: scene) +Downloading Aura Joy_013.mp4 (42.40 MB)... +Processing: Lexy Jerks Vol 3 Scene 4.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 3 Scene 4.mp4 (326.22 MB)... +Processing: Aura Joy_004.mp4 (Mode: scene) +Downloading Aura Joy_004.mp4 (12.41 MB)... +Processing: Aura Joy_003.mp4 (Mode: scene) +Downloading Aura Joy_003.mp4 (1006.34 MB)... +Processing: Aura Joy_My-Very-First-Anal-Ever.mp4 (Mode: scene) +Downloading Aura Joy_My-Very-First-Anal-Ever.mp4 (283.91 MB)... +Processing: Lexy Jerks Vol 3 Scene 2.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 3 Scene 2.mp4 (406.76 MB)... +Processing: Lexy Jerks Vol 2 Scene 4.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 2 Scene 4.mp4 (444.21 MB)... +Processing: Aura Joy_Solo.mp4 (Mode: scene) +Downloading Aura Joy_Solo.mp4 (166.14 MB)... +Processing: Lexy Jerks Vol 3 Scene 1.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 3 Scene 1.mp4 (348.65 MB)... +Processing: Aura Joy_011.mp4 (Mode: scene) +Downloading Aura Joy_011.mp4 (116.22 MB)... +Processing: Lexy Jerks Vol 1 Scene 3.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 1 Scene 3.mp4 (280.45 MB)... +Processing: Aura Joy_Naughty-Interview.mp4 (Mode: scene) +Downloading Aura Joy_Naughty-Interview.mp4 (910.86 MB)... +Processing: Lexy Jerks Vol 1 Scene 4.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 1 Scene 4.mp4 (366.50 MB)... +Processing: 1-blowjob-with-huge-dick.mp4 (Mode: scene) +Downloading 1-blowjob-with-huge-dick.mp4 (165.58 MB)... +Processing: Aura Joy_009.mp4 (Mode: scene) +Downloading Aura Joy_009.mp4 (162.31 MB)... +Processing: Aura Joy_007.mp4 (Mode: scene) +Downloading Aura Joy_007.mp4 (1576.69 MB)... +Processing: Lexy Jerks Vol 2 Scene 1.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 2 Scene 1.mp4 (592.81 MB)... +Processing: Lexy Jerks Vol 1 Scene 2.mp4 (Mode: scene) +Downloading Lexy Jerks Vol 1 Scene 2.mp4 (371.40 MB)... +Processing: Aura Joy_010.mp4 (Mode: scene) +Downloading Aura Joy_010.mp4 (38.30 MB)... +Processing: Aura Joy_006.mp4 (Mode: scene) +Downloading Aura Joy_006.mp4 (67.19 MB)... +Processing: Aura Joy_001.mp4 (Mode: scene) +Downloading Aura Joy_001.mp4 (34.59 MB)... +Processing: Aura Joy_008.mp4 (Mode: scene) +Downloading Aura Joy_008.mp4 (435.39 MB)... +Processing: Aura Joy_012.mov (Mode: scene) +Downloading Aura Joy_012.mov (479.35 MB)... +Scanning directory: /videos/tristan.summers +Scanning directory: /videos/annabel.harvey +Processing: We Make House Calls-(Annabel Harvey)-{Private Society}-[Amateur, Blonde Hair (Female), Facial, Hardcore, Standing Sex].mp4 (Mode: scene) +Downloading We Make House Calls-(Annabel Harvey)-{Private Society}-[Amateur, Blonde Hair (Female), Facial, Hardcore, Standing Sex].mp4 (135.27 MB)... +Processing: Pussy Playing Fun with Annabel Harvey - XVIDEOS COM.mp4 (Mode: scene) +Downloading Pussy Playing Fun with Annabel Harvey - XVIDEOS COM.mp4 (160.35 MB)... +Processing: Ivanta Hump and the Secret Service - XVIDEOS COM.mp4 (Mode: scene) +Downloading Ivanta Hump and the Secret Service - XVIDEOS COM.mp4 (215.66 MB)... +Scanning directory: /videos/kat.the.kunt +Processing: pink BBW doll-(Kat The Kunt)-{Pure BBW}.mp4 (Mode: scene) +Downloading pink BBW doll-(Kat The Kunt)-{Pure BBW}.mp4 (830.49 MB)... +Processing: big booty summertime fun-(Kat The Kunt)-{Pure BBW}.mp4 (Mode: scene) +Downloading big booty summertime fun-(Kat The Kunt)-{Pure BBW}.mp4 (1315.74 MB)... +Scanning directory: /videos/shelby.paris +Processing: LESBIAN GROUP SEX WITH COLLEGE GIRLS STRAP-ON, PUSSY EATING, SCISSORING_Shelby Paris_720p.mp4 (Mode: scene) +Downloading LESBIAN GROUP SEX WITH COLLEGE GIRLS STRAP-ON, PUSSY EATING, SCISSORING_Shelby Paris_720p.mp4 (85.35 MB)... +Processing: A SuperHot Double Blowjob (2019)_Sexy Nina Rivera_1080p.mp4 (Mode: scene) +Downloading A SuperHot Double Blowjob (2019)_Sexy Nina Rivera_1080p.mp4 (154.75 MB)... +Processing: Blonde Babe Shelby Paris Teases her Body during JOI_JOI Babes_1080p.mp4 (Mode: scene) +Downloading Blonde Babe Shelby Paris Teases her Body during JOI_JOI Babes_1080p.mp4 (129.66 MB)... +Processing: Kiki has Shelby Paris Squirming for More!_PUBA_1080p.mp4 (Mode: scene) +Downloading Kiki has Shelby Paris Squirming for More!_PUBA_1080p.mp4 (143.19 MB)... +Processing: Kendra and Shelby Humiliate you and your Small Pathetic Cock_Kendra Lynn_1080p.mp4 (Mode: scene) +Downloading Kendra and Shelby Humiliate you and your Small Pathetic Cock_Kendra Lynn_1080p.mp4 (126.26 MB)... +Processing: Soccer Moms Love Pink in Blue_Sofie Marie XXX_1080p.mp4 (Mode: scene) +Downloading Soccer Moms Love Pink in Blue_Sofie Marie XXX_1080p.mp4 (45.86 MB)... +Processing: Handcuffed Tattoo'd Hot Chicks Janey Doe & Shelby Paris going down_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Handcuffed Tattoo'd Hot Chicks Janey Doe & Shelby Paris going down_Shelby Paris_1080p.mp4 (348.53 MB)... +Processing: Boyfriends Mom Shows his Girlfriend how to Give an Awesome Blowjob on his Dad Feat Aubrey Black_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Boyfriends Mom Shows his Girlfriend how to Give an Awesome Blowjob on his Dad Feat Aubrey Black_Shelby Paris_1080p.mp4 (629.15 MB)... +Processing: Huge Monster Cock Fucks Teen before getting Caught by Step Dad_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Huge Monster Cock Fucks Teen before getting Caught by Step Dad_Shelby Paris_1080p.mp4 (268.03 MB)... +Processing: Sexy Big Booty White Girl Rides Big Cock - Shelby Paris & Conor Coxxx_Conor Coxxx_1080p.mp4 (Mode: scene) +Downloading Sexy Big Booty White Girl Rides Big Cock - Shelby Paris & Conor Coxxx_Conor Coxxx_1080p.mp4 (116.80 MB)... +Processing: Evolved Fights Lesbian Wrestling with Nikki Sequoia Fighting Newbie Shelby Paris with Strapon Sex_Evolved Fights Lez_1080p.mp4 (Mode: scene) +Downloading Evolved Fights Lesbian Wrestling with Nikki Sequoia Fighting Newbie Shelby Paris with Strapon Sex_Evolved Fights Lez_1080p.mp4 (194.24 MB)... +Processing: Spizoo - Shelby Paris is by a Monster Cock, Big Booty & Big Boobs_Spizoo_1080p.mp4 (Mode: scene) +Downloading Spizoo - Shelby Paris is by a Monster Cock, Big Booty & Big Boobs_Spizoo_1080p.mp4 (235.51 MB)... +Processing: Shelby Paris and her Stepsister Gets Tricked by her Stepbrother_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Shelby Paris and her Stepsister Gets Tricked by her Stepbrother_Shelby Paris_1080p.mp4 (362.78 MB)... +Processing: Submissive Slut becomes Hot Gingers Bitch ¦ LAURENPHILLIPS_Lauren Phillips_720p.mp4 (Mode: scene) +Downloading Submissive Slut becomes Hot Gingers Bitch ¦ LAURENPHILLIPS_Lauren Phillips_720p.mp4 (82.92 MB)... +Processing: Amazing Chubby Slut Throating and Fucking a Huge Cock- Spizoo_Spizoo_1080p.mp4 (Mode: scene) +Downloading Amazing Chubby Slut Throating and Fucking a Huge Cock- Spizoo_Spizoo_1080p.mp4 (246.47 MB)... +Processing: Tinder Date Turned BJ with Sex_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Tinder Date Turned BJ with Sex_Shelby Paris_1080p.mp4 (112.73 MB)... +Processing: Shelby Paris Slutty Wife Fucks a Monster Dick Logan Long_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Shelby Paris Slutty Wife Fucks a Monster Dick Logan Long_Shelby Paris_1080p.mp4 (1111.25 MB)... +Processing: Fifi Foxx and Shelby Paris Seduce Step Brother Into Fucking - XV.mp4 (Mode: scene) +Downloading Fifi Foxx and Shelby Paris Seduce Step Brother Into Fucking - XV.mp4 (390.48 MB)... +Processing: Shelby Paris - Impregnating My Mom's Sister 3 - Glazzed Studios.mp4 (Mode: scene) +Downloading Shelby Paris - Impregnating My Mom's Sister 3 - Glazzed Studios.mp4 (96.11 MB)... +Processing: Coco Vandi, Willow Grace - Cheating Mom Likes To Host Orgies - WCA Productions (Complete Series).mp4 (Mode: scene) +Downloading Coco Vandi, Willow Grace - Cheating Mom Likes To Host Orgies - WCA Productions (Complete Series).mp4 (307.57 MB)... +Processing: Mexican MILF Gabby Quinteros Lesbo Licks Young Shelby Paris!_Gabby Quinteros_1080p.mp4 (Mode: scene) +Downloading Mexican MILF Gabby Quinteros Lesbo Licks Young Shelby Paris!_Gabby Quinteros_1080p.mp4 (174.51 MB)... +Processing: ccxxx.19.02.15.shelby.paris.a.quick.fuck.while.dads.away.mp4 (Mode: scene) +Downloading ccxxx.19.02.15.shelby.paris.a.quick.fuck.while.dads.away.mp4 (1375.91 MB)... +Processing: Luna Sapphire Krystal Davis Shelby Paris - Mean Mom and Daughter.mp4 (Mode: scene) +Downloading Luna Sapphire Krystal Davis Shelby Paris - Mean Mom and Daughter.mp4 (136.84 MB)... +Processing: Cheating wife seduces stranger with big dick POV brunette big ass FULL.mp4 (Mode: scene) +Downloading Cheating wife seduces stranger with big dick POV brunette big ass FULL.mp4 (1020.21 MB)... +Processing: Giving my Tinder Date his first Leg Shaking Orgasm from a Blowjob, Cum Shot and Cum in Mouth_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Giving my Tinder Date his first Leg Shaking Orgasm from a Blowjob, Cum Shot and Cum in Mouth_Shelby Paris_1080p.mp4 (276.64 MB)... +Processing: My Boss Begged for the best Blowjob on Valentines Day came all over my Glasses Shelby Paris_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading My Boss Begged for the best Blowjob on Valentines Day came all over my Glasses Shelby Paris_Shelby Paris_1080p.mp4 (177.75 MB)... +Processing: Shelby Shoves Huge Toy up her Friends Tattoo'd Ass #kitty Jaguar_Shelby Paris_720p.mp4 (Mode: scene) +Downloading Shelby Shoves Huge Toy up her Friends Tattoo'd Ass #kitty Jaguar_Shelby Paris_720p.mp4 (146.61 MB)... +Processing: uiidcmb0753_Tinder date gets the best BJ of his life with Shelby Paris.mp4 (Mode: scene) +Downloading uiidcmb0753_Tinder date gets the best BJ of his life with Shelby Paris.mp4 (285.27 MB)... +Processing: Talented Anal Trainer Ariella Ferrera Rims Hot Shelby Paris!_Girl Girl Mania_1080p.mp4 (Mode: scene) +Downloading Talented Anal Trainer Ariella Ferrera Rims Hot Shelby Paris!_Girl Girl Mania_1080p.mp4 (218.73 MB)... +Processing: Lesbian Anal Lover Ariella Ferrera Ass Fucks Shelby Paris!_Girl Girl Mania_1080p.mp4 (Mode: scene) +Downloading Lesbian Anal Lover Ariella Ferrera Ass Fucks Shelby Paris!_Girl Girl Mania_1080p.mp4 (203.59 MB)... +Processing: I Told her I could get her Modeling Career off the Ground_ILoveDaddyIssues_1080p.mp4 (Mode: scene) +Downloading I Told her I could get her Modeling Career off the Ground_ILoveDaddyIssues_1080p.mp4 (1971.88 MB)... +Processing: MexiMilf Gabby Quinteros Tongue Fucks Younger Shelby Paris!_Gabby Quinteros_1080p.mp4 (Mode: scene) +Downloading MexiMilf Gabby Quinteros Tongue Fucks Younger Shelby Paris!_Gabby Quinteros_1080p.mp4 (176.88 MB)... +Processing: Slut Shelby makes Young Ebony Melody Squirt all over her_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Slut Shelby makes Young Ebony Melody Squirt all over her_Shelby Paris_1080p.mp4 (580.64 MB)... +Processing: Super Sloppy Double Blowjob Cum Swapping Sluts_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Super Sloppy Double Blowjob Cum Swapping Sluts_Shelby Paris_1080p.mp4 (262.49 MB)... +Processing: POV Sucking my best Friends Dads Dick at the Park and having to Cum Walk_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading POV Sucking my best Friends Dads Dick at the Park and having to Cum Walk_Shelby Paris_1080p.mp4 (284.94 MB)... +Processing: Step-Mom & Step-Daughter Share Big Cock - Payton Hall, Shelby Paris, & Conor Coxxx_Conor Coxxx_1080p.mp4 (Mode: scene) +Downloading Step-Mom & Step-Daughter Share Big Cock - Payton Hall, Shelby Paris, & Conor Coxxx_Conor Coxxx_1080p.mp4 (176.90 MB)... +Processing: Gorgeous Babe Loves Licking her Friend's Box_PUBA_1080p.mp4 (Mode: scene) +Downloading Gorgeous Babe Loves Licking her Friend's Box_PUBA_1080p.mp4 (169.81 MB)... +Processing: Brother caught dating two hot stepsisters in this family affair-(-).mp4 (Mode: scene) +Downloading Brother caught dating two hot stepsisters in this family affair-(-).mp4 (830.10 MB)... +Processing: 3 Nymphos Lauren Phillips Alix Lovell Shelby Paris Pump a Cock D.mp4 (Mode: scene) +Downloading 3 Nymphos Lauren Phillips Alix Lovell Shelby Paris Pump a Cock D.mp4 (196.29 MB)... +Processing: Shelby Paris Fucking herself with Carrots , she Cums all over them & Tastes Herself._Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Shelby Paris Fucking herself with Carrots , she Cums all over them & Tastes Herself._Shelby Paris_1080p.mp4 (29.40 MB)... +Processing: PHILAVISE-My Personal Intruder Episode 6 With Shelby Paris - EPO.mp4 (Mode: scene) +Downloading PHILAVISE-My Personal Intruder Episode 6 With Shelby Paris - EPO.mp4 (131.98 MB)... +Processing: ulluvikab78_Two hot girls, one redhead and one brunette fuck a guy for concert tickets and give him a tit job. massive cumshot..mp4 (Mode: scene) +Downloading ulluvikab78_Two hot girls, one redhead and one brunette fuck a guy for concert tickets and give him a tit job. massive cumshot..mp4 (169.10 MB)... +Processing: Shelby Paris - Impregnating My Mom's Sister 2 - Glazzed Studios.mp4 (Mode: scene) +Downloading Shelby Paris - Impregnating My Mom's Sister 2 - Glazzed Studios.mp4 (82.96 MB)... +Processing: LordBlack Dominates Shelby Paris & Squirts everywhere_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading LordBlack Dominates Shelby Paris & Squirts everywhere_Shelby Paris_1080p.mp4 (363.02 MB)... +Processing: Thigh High Hitachi Squirt Shelby Paris makes a Huge Mess Amateur_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Thigh High Hitachi Squirt Shelby Paris makes a Huge Mess Amateur_Shelby Paris_1080p.mp4 (53.88 MB)... +Processing: Busty MILFs Eat each Other's Tight Wet Pussies_PUBA_1080p.mp4 (Mode: scene) +Downloading Busty MILFs Eat each Other's Tight Wet Pussies_PUBA_1080p.mp4 (119.99 MB)... +Processing: asain gamer neighbor girl goes and fucks neighbor.mp4 (Mode: scene) +Downloading asain gamer neighbor girl goes and fucks neighbor.mp4 (607.95 MB)... +Processing: Stepbrother Tricks two Hot Stepsisters Sucking his Big Dick_Shelby Paris_1080p-(-).mp4 (Mode: scene) +Downloading Stepbrother Tricks two Hot Stepsisters Sucking his Big Dick_Shelby Paris_1080p-(-).mp4 (869.36 MB)... +Processing: Shelby Paris & Aria Khaide Suck a Big Dick and Cum Swap his Load- Sloppy Double Blowjob_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Shelby Paris & Aria Khaide Suck a Big Dick and Cum Swap his Load- Sloppy Double Blowjob_Shelby Paris_1080p.mp4 (267.25 MB)... +Processing: Devil may Cry_Pervfect_1080p.mp4 (Mode: scene) +Downloading Devil may Cry_Pervfect_1080p.mp4 (568.98 MB)... +Processing: shelby Paris Eats out Mature MILF Cyndi Sinclair!_Girl Girl Mania_1080p.mp4 (Mode: scene) +Downloading shelby Paris Eats out Mature MILF Cyndi Sinclair!_Girl Girl Mania_1080p.mp4 (182.98 MB)... +Processing: Australian Aubrey Black Dominates her sub Shelby with Strap on_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Australian Aubrey Black Dominates her sub Shelby with Strap on_Shelby Paris_1080p.mp4 (692.09 MB)... +Processing: Briana Banks and Shelby Paris suck their lifeguards cock with cumshot.mp4 (Mode: scene) +Downloading Briana Banks and Shelby Paris suck their lifeguards cock with cumshot.mp4 (428.57 MB)... +Processing: Two Hot Friends Suck & Fuck Cuckold to get Concert Tickets with a Titty Job_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Two Hot Friends Suck & Fuck Cuckold to get Concert Tickets with a Titty Job_Shelby Paris_1080p.mp4 (201.13 MB)... +Processing: Public Pool Party with two Sluts Blowing a Stranger Cumswap_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Public Pool Party with two Sluts Blowing a Stranger Cumswap_Shelby Paris_1080p.mp4 (454.74 MB)... +Processing: Alexis Fawx gives Shelby Paris a Sensual Massage_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Alexis Fawx gives Shelby Paris a Sensual Massage_Shelby Paris_1080p.mp4 (450.63 MB)... +Processing: Behind the Scenes Ass Worship with Kendra and Shelby_Kendra Lynn_1080p.mp4 (Mode: scene) +Downloading Behind the Scenes Ass Worship with Kendra and Shelby_Kendra Lynn_1080p.mp4 (112.69 MB)... +Processing: Taboo stepBrother Fucking his Step Sisters Fifi Foxx and Shelby .mp4 (Mode: scene) +Downloading Taboo stepBrother Fucking his Step Sisters Fifi Foxx and Shelby .mp4 (373.47 MB)... +Processing: Two Girlfriends Give each other Happy ending Massage_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Two Girlfriends Give each other Happy ending Massage_Shelby Paris_1080p.mp4 (412.05 MB)... +Processing: Tied up Shelby Paris Tongue Fucks Mature Muff Cyndi Sinclair_Girl Girl Mania_1080p.mp4 (Mode: scene) +Downloading Tied up Shelby Paris Tongue Fucks Mature Muff Cyndi Sinclair_Girl Girl Mania_1080p.mp4 (175.56 MB)... +Processing: Mexi MILF Gabby Quinteros Pussy Fucks Lesbian Shelby Paris!_Gabby Quinteros_1080p.mp4 (Mode: scene) +Downloading Mexi MILF Gabby Quinteros Pussy Fucks Lesbian Shelby Paris!_Gabby Quinteros_1080p.mp4 (101.74 MB)... +Processing: Wrapped up Shelby Paris Pussy Fucks Hot Muff Cyndi Sinclair!_Girl Girl Mania_1080p.mp4 (Mode: scene) +Downloading Wrapped up Shelby Paris Pussy Fucks Hot Muff Cyndi Sinclair!_Girl Girl Mania_1080p.mp4 (180.35 MB)... +Processing: Shelby Paris - Impregnating My Mom's Sister 1 - Glazzed Studios.mp4 (Mode: scene) +Downloading Shelby Paris - Impregnating My Mom's Sister 1 - Glazzed Studios.mp4 (66.36 MB)... +Processing: Hot Sex Encounter with Sexy Shelby Paris & Logan Long_Real Sensual_1080p.mp4 (Mode: scene) +Downloading Hot Sex Encounter with Sexy Shelby Paris & Logan Long_Real Sensual_1080p.mp4 (193.88 MB)... +Processing: PORNSTARPLATINUM POV BJ with Naughty MILF Ariella Ferrera_Pornstar Platinum_1080p.mp4 (Mode: scene) +Downloading PORNSTARPLATINUM POV BJ with Naughty MILF Ariella Ferrera_Pornstar Platinum_1080p.mp4 (248.42 MB)... +Processing: Girl Teaches Granny how to Suck and Fuck a Big Dick_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Girl Teaches Granny how to Suck and Fuck a Big Dick_Shelby Paris_1080p.mp4 (688.45 MB)... +Processing: Shelby Paris gets creampied dressed as Snow White - XVIDEOS COM.mp4 (Mode: scene) +Downloading Shelby Paris gets creampied dressed as Snow White - XVIDEOS COM.mp4 (643.32 MB)... +Processing: Footjob Turned Creampie by Foreign Stranger. Fucked me in Nylons!_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Footjob Turned Creampie by Foreign Stranger. Fucked me in Nylons!_Shelby Paris_1080p.mp4 (396.78 MB)... +Processing: Tattoo Lesbian Sluts get Fucked with a Strap on for the first Time with MASSIVE Squirt_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Tattoo Lesbian Sluts get Fucked with a Strap on for the first Time with MASSIVE Squirt_Shelby Paris_1080p.mp4 (469.10 MB)... +Processing: Hot MILF Stepmom Shows off Lingerie to her Slutty Step Daughter, Licking and Fucking each other_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Hot MILF Stepmom Shows off Lingerie to her Slutty Step Daughter, Licking and Fucking each other_Shelby Paris_1080p.mp4 (283.70 MB)... +Processing: Outdoors Deep Throat Blowjob with a Guy from Tinder in his Car_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Outdoors Deep Throat Blowjob with a Guy from Tinder in his Car_Shelby Paris_1080p.mp4 (143.40 MB)... +Processing: Patient in Quarantine Gets Creampied by Doctor, Coronavirus COVID-19_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Patient in Quarantine Gets Creampied by Doctor, Coronavirus COVID-19_Shelby Paris_1080p.mp4 (576.04 MB)... +Processing: Kinky Hot Teen Slut Sucks a Big Fat Dick and Licks his Ass Cum Shot_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Kinky Hot Teen Slut Sucks a Big Fat Dick and Licks his Ass Cum Shot_Shelby Paris_1080p.mp4 (434.66 MB)... +Processing: Shelby Paris Gloryhole Cumshot Compilation_Shelby Paris_720p.mp4 (Mode: scene) +Downloading Shelby Paris Gloryhole Cumshot Compilation_Shelby Paris_720p.mp4 (175.82 MB)... +Processing: My Creepy Boss Seduced me into Fucking Him. Creampie_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading My Creepy Boss Seduced me into Fucking Him. Creampie_Shelby Paris_1080p.mp4 (329.53 MB)... +Processing: Shelby Paris and Febby Twigs Start Playing with each other and their Friend Joins in POV_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Shelby Paris and Febby Twigs Start Playing with each other and their Friend Joins in POV_Shelby Paris_1080p.mp4 (1004.37 MB)... +Processing: Anal Slut Girlfriends Fuck & Eat each other out Feat Nadia White, Shelby Paris_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Anal Slut Girlfriends Fuck & Eat each other out Feat Nadia White, Shelby Paris_Shelby Paris_1080p.mp4 (528.52 MB)... +Processing: cuckold records hot teen wife fucking a stranger homemade amateur unedited.mp4 (Mode: scene) +Downloading cuckold records hot teen wife fucking a stranger homemade amateur unedited.mp4 (787.65 MB)... +Processing: Cum Slut Brunette Suck and Fucks Italian Mark White POV_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Cum Slut Brunette Suck and Fucks Italian Mark White POV_Shelby Paris_1080p.mp4 (607.93 MB)... +Processing: Shelby Paris - Sibling Sinsations Volume 2 Sis wants Bro to not .mp4 (Mode: scene) +Downloading Shelby Paris - Sibling Sinsations Volume 2 Sis wants Bro to not .mp4 (325.77 MB)... +Processing: BIG TIT MILF STEP MOM BUSH TEACHES girl TO USE TOYS AND FUCK HERSELF.mp4 (Mode: scene) +Downloading BIG TIT MILF STEP MOM BUSH TEACHES girl TO USE TOYS AND FUCK HERSELF.mp4 (335.21 MB)... +Processing: Pussy Licking Toy Fuck Summer Hart Shelby Paris_Summer Hart_1080p.mp4 (Mode: scene) +Downloading Pussy Licking Toy Fuck Summer Hart Shelby Paris_Summer Hart_1080p.mp4 (253.00 MB)... +Processing: Shelby Paris Blows her Stepbrother and two Friends_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Shelby Paris Blows her Stepbrother and two Friends_Shelby Paris_1080p.mp4 (524.19 MB)... +Processing: Shelby Paris Shows Step-mom how to Fuck Shelbys Boyfriend_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Shelby Paris Shows Step-mom how to Fuck Shelbys Boyfriend_Shelby Paris_1080p.mp4 (710.53 MB)... +Processing: Shelby Paris & Briana Banks MILF try out new Toys Big Tits Juicy Big Ass_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Shelby Paris & Briana Banks MILF try out new Toys Big Tits Juicy Big Ass_Shelby Paris_1080p.mp4 (458.57 MB)... +Processing: Payton Hall Shelby Paris - Taboo Threeway - Mom fucks Daughter a.mp4 (Mode: scene) +Downloading Payton Hall Shelby Paris - Taboo Threeway - Mom fucks Daughter a.mp4 (305.25 MB)... +Processing: Shelby Paris Lauren Phillips in Your Cock Stars In This Pov 3way.mp4 (Mode: scene) +Downloading Shelby Paris Lauren Phillips in Your Cock Stars In This Pov 3way.mp4 (256.92 MB)... +Processing: Luna Star Punches her Slutty Slave Dildo Fuck and Pussy Eating Shoe Licking_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Luna Star Punches her Slutty Slave Dildo Fuck and Pussy Eating Shoe Licking_Shelby Paris_1080p.mp4 (487.28 MB)... +Processing: Impregnating My Stepmoms Sister.mp4 (Mode: scene) +Downloading Impregnating My Stepmoms Sister.mp4 (507.51 MB)... +Processing: Hot Cheating Neighbor Wives Sneak over for a Sleepover & Suck & Fuck a Big Dick_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Hot Cheating Neighbor Wives Sneak over for a Sleepover & Suck & Fuck a Big Dick_Shelby Paris_1080p.mp4 (285.25 MB)... +Processing: uikoapk26e8_Shelby Paris fucks herself with carrots. Cums all over them and tastes herself.mp4 (Mode: scene) +Downloading uikoapk26e8_Shelby Paris fucks herself with carrots. Cums all over them and tastes herself.mp4 (59.75 MB)... +Processing: PORNSTARPLATINUM Lesbian Alix Lovell Strapon Fucked in 3way_Pornstar Platinum_1080p.mp4 (Mode: scene) +Downloading PORNSTARPLATINUM Lesbian Alix Lovell Strapon Fucked in 3way_Pornstar Platinum_1080p.mp4 (273.48 MB)... +Processing: Asian Girls Sucking and Fucking our Neighbor during our over_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Asian Girls Sucking and Fucking our Neighbor during our over_Shelby Paris_1080p.mp4 (1187.55 MB)... +Processing: My Wife Filmed me Fucking Shelby Paris_Dan Ferrari_1080p.mp4 (Mode: scene) +Downloading My Wife Filmed me Fucking Shelby Paris_Dan Ferrari_1080p.mp4 (224.25 MB)... +Processing: Shelby Paris & Coco Vandi Fuck Kyle Balls in the Sex Swing_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Shelby Paris & Coco Vandi Fuck Kyle Balls in the Sex Swing_Shelby Paris_1080p.mp4 (192.78 MB)... +Processing: koabbfdcc6b_Valentines Day Orgy with Krystal Davis, Summer Hart, Gorgeous Aphro, Luna Sapphire, Luci Power, and Shelby Paris fucking strap ons, tribbing, eating pussy and having lesbian orgasms..mp4 (Mode: scene) +Downloading koabbfdcc6b_Valentines Day Orgy with Krystal Davis, Summer Hart, Gorgeous Aphro, Luna Sapphire, Luci Power, and Shelby Paris fucking strap ons, tribbing, eating pussy and having lesbian orgasms..mp4 (146.88 MB)... +Processing: PORNSTARPLATINUM Shelby Paris and Ariella Ferrera make Love_Pornstar Platinum_1080p.mp4 (Mode: scene) +Downloading PORNSTARPLATINUM Shelby Paris and Ariella Ferrera make Love_Pornstar Platinum_1080p.mp4 (264.88 MB)... +Processing: Explicit Truth or Dare with Step Sister Kim Stroker and Shelby P.mp4 (Mode: scene) +Downloading Explicit Truth or Dare with Step Sister Kim Stroker and Shelby P.mp4 (519.08 MB)... +Processing: Threesome Blow Jobs Riding Shelby Paris Summer Hart_Summer Hart_1080p.mp4 (Mode: scene) +Downloading Threesome Blow Jobs Riding Shelby Paris Summer Hart_Summer Hart_1080p.mp4 (220.58 MB)... +Processing: PORNSTARPLATINUM Wild Alix Lovell Rides Big Cock in Foursome_Pornstar Platinum_1080p.mp4 (Mode: scene) +Downloading PORNSTARPLATINUM Wild Alix Lovell Rides Big Cock in Foursome_Pornstar Platinum_1080p.mp4 (252.88 MB)... +Processing: Three way Lesbian Girl Play with Strapons_LiliMissarab_1080p.mp4 (Mode: scene) +Downloading Three way Lesbian Girl Play with Strapons_LiliMissarab_1080p.mp4 (9.38 MB)... +Processing: Hot Lesbian Neighbor Jada Kai Fucks Gamer Girl Shelby Paris Scissoring, Tribbing, Doggy Pussy Eating_Shelby Paris_1080p.mp4 (Mode: scene) +Downloading Hot Lesbian Neighbor Jada Kai Fucks Gamer Girl Shelby Paris Scissoring, Tribbing, Doggy Pussy Eating_Shelby Paris_1080p.mp4 (534.22 MB)... +Scanning directory: /videos/kelly.payne +Scanning directory: /videos/khloe.kapri +Scanning directory: /videos/savannahsolo +Scanning directory: /videos/dahlia.dee +Processing: Blowjob Missionary and Riding to Earn a BIG Creampie - Pornhub c.mp4 (Mode: scene) +Downloading Blowjob Missionary and Riding to Earn a BIG Creampie - Pornhub c.mp4 (146.20 MB)... +Scanning directory: /videos/red.eviee +Processing: Red Eviee - The Concerned Mother - Household Fantasy - INCESTFLI.mp4 (Mode: scene) +Downloading Red Eviee - The Concerned Mother - Household Fantasy - INCESTFLI.mp4 (538.49 MB)... +Processing: Red Eviee - Caught Jerking Off By Busty Redhead Step Mom - Famil.mp4 (Mode: scene) +Downloading Red Eviee - Caught Jerking Off By Busty Redhead Step Mom - Famil.mp4 (1546.01 MB)... +Processing: Red Eviee - Piping Hot Sweaty Tits - BigTitsRoundAsses Bang Bros.mp4 (Mode: scene) +Downloading Red Eviee - Piping Hot Sweaty Tits - BigTitsRoundAsses Bang Bros.mp4 (520.51 MB)... +Processing: Red Eviee - Slutty Redheaded Daughter Drains My Balls On Her Tit.mp4 (Mode: scene) +Downloading Red Eviee - Slutty Redheaded Daughter Drains My Balls On Her Tit.mp4 (393.06 MB)... +Processing: Red Eviee - Stepdads Cock Solves Problems - Bang Bros - INCESTFL.mp4 (Mode: scene) +Downloading Red Eviee - Stepdads Cock Solves Problems - Bang Bros - INCESTFL.mp4 (431.51 MB)... +Processing: NetVideoGirls.24.10.29.Eviee.XXX.1080p.mp4 (Mode: scene) +Downloading NetVideoGirls.24.10.29.Eviee.XXX.1080p.mp4 (711.91 MB)... +Processing: Redhead Step Mom Takes Care of You-(Red Eviee)-{Household Fantasy}-[Big Tits, Curvy, Daddy Roleplay, Doggy Style, Doggy Style - POV, Incest, Lactation, Male - POV, Natural Tits, Red Hair, Red Head, Twosome (Straight), creampie, taboo].mp4 (Mode: scene) +Downloading Redhead Step Mom Takes Care of You-(Red Eviee)-{Household Fantasy}-[Big Tits, Curvy, Daddy Roleplay, Doggy Style, Doggy Style - POV, Incest, Lactation, Male - POV, Natural Tits, Red Hair, Red Head, Twosome (Straight), creampie, taboo].mp4 (569.90 MB)... +Processing: Redhead Step Mom Lactates on Your Cock Red Eviee Full HD Video h.mp4 (Mode: scene) +Downloading Redhead Step Mom Lactates on Your Cock Red Eviee Full HD Video h.mp4 (231.84 MB)... +Processing: Red Eviee - Redhead Step Mom Finds You Goth Girlfriend - Househo.mp4 (Mode: scene) +Downloading Red Eviee - Redhead Step Mom Finds You Goth Girlfriend - Househo.mp4 (1194.96 MB)... +Processing: Slumber Party With Goth Step Sister And Her Flirty Friends - Fam.mp4 (Mode: scene) +Downloading Slumber Party With Goth Step Sister And Her Flirty Friends - Fam.mp4 (863.19 MB)... +Processing: Lactating Step Mom Gives You Her Milk-(Red Eviee)-{Household Fantasy}-[Big Tits, Curvy, Glasses, Lactation, Male - POV, Red Hair, Trimmed Pussy, Twosome (Straight)].mp4 (Mode: scene) +Downloading Lactating Step Mom Gives You Her Milk-(Red Eviee)-{Household Fantasy}-[Big Tits, Curvy, Glasses, Lactation, Male - POV, Red Hair, Trimmed Pussy, Twosome (Straight)].mp4 (530.24 MB)... +Processing: Red Head Step Mom Lactates On Your Cock-(Red Eviee)-{Household Fantasy}-[Big Tits, Fantasy, Lactation, Mother, Natural, Natural Tits, Step Mother].mp4 (Mode: scene) +Downloading Red Head Step Mom Lactates On Your Cock-(Red Eviee)-{Household Fantasy}-[Big Tits, Fantasy, Lactation, Mother, Natural, Natural Tits, Step Mother].mp4 (641.74 MB)... +Processing: Red Head Step Mom Lactates On Your Cock-(Red Eviee)-{Household Fantasy}-[Big Tits, Lactation, Natural Tits, Redhead, Step Mother].mp4 (Mode: scene) +Downloading Red Head Step Mom Lactates On Your Cock-(Red Eviee)-{Household Fantasy}-[Big Tits, Lactation, Natural Tits, Redhead, Step Mother].mp4 (416.45 MB)... +Processing: Red Eviee - Mom Caught Dad Cheating - DirtyTale - INCESTFLIX COM.mp4 (Mode: scene) +Downloading Red Eviee - Mom Caught Dad Cheating - DirtyTale - INCESTFLIX COM.mp4 (351.20 MB)... +Processing: Red Eviee - Mom Takes Care Of You - Household Fantasy - INCESTFL.mp4 (Mode: scene) +Downloading Red Eviee - Mom Takes Care Of You - Household Fantasy - INCESTFL.mp4 (362.88 MB)... +Processing: Lactating Step Mom Gets Sex During Nap-(Red Eviee)-{Household Fantasy}-[Big Tits, Lactation, Step Mother, creampie].mp4 (Mode: scene) +Downloading Lactating Step Mom Gets Sex During Nap-(Red Eviee)-{Household Fantasy}-[Big Tits, Lactation, Step Mother, creampie].mp4 (447.13 MB)... +Processing: Krissy Knight Red Eviee - Make Mardi Gras Kinky Again - Daughter.mp4 (Mode: scene) +Downloading Krissy Knight Red Eviee - Make Mardi Gras Kinky Again - Daughter.mp4 (774.13 MB)... +Scanning directory: /videos/freya.von.doom +Processing: Nosey Little Step Sister Freya Von Doom Finds Dick Pics - Family.mp4 (Mode: scene) +Downloading Nosey Little Step Sister Freya Von Doom Finds Dick Pics - Family.mp4 (683.59 MB)... +Processing: Freya Von Doom Kira Fox - No Clothes Policy - AskYourMother MYLF.mp4 (Mode: scene) +Downloading Freya Von Doom Kira Fox - No Clothes Policy - AskYourMother MYLF.mp4 (753.85 MB)... +Processing: Freya Von Doom Misty Meaner - A Dick A Day Keeps The Chastity Aw.mp4 (Mode: scene) +Downloading Freya Von Doom Misty Meaner - A Dick A Day Keeps The Chastity Aw.mp4 (725.26 MB)... +Processing: Freya Von Doom - Sex Freak Visits Her Dad And His New Wife - All.mp4 (Mode: scene) +Downloading Freya Von Doom - Sex Freak Visits Her Dad And His New Wife - All.mp4 (418.10 MB)... +Processing: Freya Von Doom - Pussy Stretching - Step Household Team Skeet - .mp4 (Mode: scene) +Downloading Freya Von Doom - Pussy Stretching - Step Household Team Skeet - .mp4 (518.28 MB)... +Scanning directory: /videos/sunny.bunny +Processing: Mandi May and Sunny Bunny are enjoying FFM sex so much.mp4 (Mode: scene) +Downloading Mandi May and Sunny Bunny are enjoying FFM sex so much.mp4 (261.18 MB)... +Processing: Drill My Ass - Sunny Bunny.mp4 (Mode: scene) +Downloading Drill My Ass - Sunny Bunny.mp4 (956.77 MB)... +Processing: (Watch This) Big Booty MILF Thanks Young Guy By Letting Him CUM IN HER!!! Sunny Bunny Fucks.mp4 (Mode: scene) +Downloading (Watch This) Big Booty MILF Thanks Young Guy By Letting Him CUM IN HER!!! Sunny Bunny Fucks.mp4 (170.54 MB)... +Processing: hot curvy phat booty brunette milf needs a good fuck to stop getting stuck.mp4 (Mode: scene) +Downloading hot curvy phat booty brunette milf needs a good fuck to stop getting stuck.mp4 (327.87 MB)... +Processing: Sunny Bunny Anal.mp4 (Mode: scene) +Downloading Sunny Bunny Anal.mp4 (368.38 MB)... +Processing: Blackstar Bangs Bubble Booty hussy Sunny Bunny on Balcony-{Hood Hunnies}-[Big Black Cock (BBC), Fishnet One-Piece, Hardcore, Interracial, Latina Woman, Male - POV, Pawg, Reality Porn, Tattoos & Piercings, Twerking Sex, creampie].mp4 (Mode: scene) +Downloading Blackstar Bangs Bubble Booty hussy Sunny Bunny on Balcony-{Hood Hunnies}-[Big Black Cock (BBC), Fishnet One-Piece, Hardcore, Interracial, Latina Woman, Male - POV, Pawg, Reality Porn, Tattoos & Piercings, Twerking Sex, creampie].mp4 (2905.56 MB)... +Processing: Big Ass Sunny Bunny.mp4 (Mode: scene) +Downloading Big Ass Sunny Bunny.mp4 (1179.92 MB)... +Processing: otkodumbf7b_Big Booty Babe Caught Filming and Gets FUCKED!!! Sunny Bunny will make you cum.mp4 (Mode: scene) +Downloading otkodumbf7b_Big Booty Babe Caught Filming and Gets FUCKED!!! Sunny Bunny will make you cum.mp4 (360.22 MB)... +Processing: Big Tit Drea - Sunny Bunny.mp4 (Mode: scene) +Downloading Big Tit Drea - Sunny Bunny.mp4 (426.96 MB)... +Processing: Thick Redbone take 11 inch BBC up the ass.mp4 (Mode: scene) +Downloading Thick Redbone take 11 inch BBC up the ass.mp4 (24.12 MB)... +Processing: sunny bunny ass so damm phat fuck her hard rome major.mp4 (Mode: scene) +Downloading sunny bunny ass so damm phat fuck her hard rome major.mp4 (45.28 MB)... +Processing: cannonprod sunny bunny makes her big booty bounce.mp4 (Mode: scene) +Downloading cannonprod sunny bunny makes her big booty bounce.mp4 (277.91 MB)... +Processing: Big Booty Ny Cutie Sunny Bunny.mp4 (Mode: scene) +Downloading Big Booty Ny Cutie Sunny Bunny.mp4 (13.81 MB)... +Processing: umehmhmf32c_sunny bunny is so thick big booty freak fucked hard bbc rome major.mp4 (Mode: scene) +Downloading umehmhmf32c_sunny bunny is so thick big booty freak fucked hard bbc rome major.mp4 (237.43 MB)... +Processing: ubeillo4c48_Cumming inside big ass babe on date night.mp4 (Mode: scene) +Downloading ubeillo4c48_Cumming inside big ass babe on date night.mp4 (223.47 MB)... +Processing: large booty freaks who love bbc monsters sweetheart tsunami virgo peridot sunny bunny bianca bailee.mp4 (Mode: scene) +Downloading large booty freaks who love bbc monsters sweetheart tsunami virgo peridot sunny bunny bianca bailee.mp4 (417.57 MB)... +Processing: #LINKS MORE In The Description !!! Check It ! - Sunny Bunny.mp4 (Mode: scene) +Downloading #LINKS MORE In The Description !!! Check It ! - Sunny Bunny.mp4 (442.37 MB)... +Processing: umuppam769f_so damm thick newbie sunny bunny all natural phat booty fucks bbc rome major.mp4 (Mode: scene) +Downloading umuppam769f_so damm thick newbie sunny bunny all natural phat booty fucks bbc rome major.mp4 (295.51 MB)... +Processing: Baby Face Maxxi Bangs Sunny Bunny-{Hood Hunnies}-[Amateur, BBW, Big Ass, Big Black Cock (BBC), Deepthroat, Face Fuck, Hardcore, Homemade, Missing Performer (Male), Reality Porn, Young (22–30), creampie].mp4 (Mode: scene) +Downloading Baby Face Maxxi Bangs Sunny Bunny-{Hood Hunnies}-[Amateur, BBW, Big Ass, Big Black Cock (BBC), Deepthroat, Face Fuck, Hardcore, Homemade, Missing Performer (Male), Reality Porn, Young (22–30), creampie].mp4 (630.43 MB)... +Processing: PervertedPOV E24 Sunny Bunny XXX 2160p MP4 WRB mp4 PornHoarder t.mp4 (Mode: scene) +Downloading PervertedPOV E24 Sunny Bunny XXX 2160p MP4 WRB mp4 PornHoarder t.mp4 (1078.48 MB)... +Processing: Sharing Is Caring 7 - Sunny Bunny.mp4 (Mode: scene) +Downloading Sharing Is Caring 7 - Sunny Bunny.mp4 (1950.40 MB)... +Processing: Sunny Bunny.mp4 (Mode: scene) +Downloading Sunny Bunny.mp4 (891.21 MB)... +Processing: Sunny Bunny Creampie.mp4 (Mode: scene) +Downloading Sunny Bunny Creampie.mp4 (987.63 MB)... +Processing: sunny bunny s epic ass shakin show.mp4 (Mode: scene) +Downloading sunny bunny s epic ass shakin show.mp4 (269.34 MB)... +Processing: Sunny Bunny Rabbit Hea.mp4 (Mode: scene) +Downloading Sunny Bunny Rabbit Hea.mp4 (125.79 MB)... +Processing: Sunny Bunny FMM.mp4 (Mode: scene) +Downloading Sunny Bunny FMM.mp4 (189.49 MB)... +Processing: uevfcava527_Milf Teaches Young Guy How To Fuck A Bitch!!! LaBellaDiablaX & Sunny Bunny Get CreamPied!.mp4 (Mode: scene) +Downloading uevfcava527_Milf Teaches Young Guy How To Fuck A Bitch!!! LaBellaDiablaX & Sunny Bunny Get CreamPied!.mp4 (578.67 MB)... +Processing: Help For Sweet Neighbor - Latina Bunny.mp4 (Mode: scene) +Downloading Help For Sweet Neighbor - Latina Bunny.mp4 (1705.67 MB)... +Processing: amateur milf gets stuck and filled with cum by young buck.mp4 (Mode: scene) +Downloading amateur milf gets stuck and filled with cum by young buck.mp4 (150.37 MB)... +Processing: assfucking creampie for sunny bunny.mp4 (Mode: scene) +Downloading assfucking creampie for sunny bunny.mp4 (1196.87 MB)... +Processing: Big Booty Anal Freak Sunny Bunny Fucked by Black Christ-{The Habib Show}.mp4 (Mode: scene) +Downloading Big Booty Anal Freak Sunny Bunny Fucked by Black Christ-{The Habib Show}.mp4 (766.03 MB)... +Processing: Big Booty Latina Sunny Bunny.mp4 (Mode: scene) +Downloading Big Booty Latina Sunny Bunny.mp4 (659.16 MB)... +Processing: Redbone Sunny Bunny.mp4 (Mode: scene) +Downloading Redbone Sunny Bunny.mp4 (785.70 MB)... +Processing: sunny bunny beast interracial porn.mp4 (Mode: scene) +Downloading sunny bunny beast interracial porn.mp4 (399.18 MB)... +Processing: Sunny Bunny [4K].mp4 (Mode: scene) +Downloading Sunny Bunny [4K].mp4 (3178.37 MB)... +Scanning directory: /videos/coomerparty +Scanning directory: /videos/rosedkush +Processing: RoseDKush - Big Booty BBW Rose Kush Does BBC__28id_2711788_29.mp4 (Mode: scene) +Downloading RoseDKush - Big Booty BBW Rose Kush Does BBC__28id_2711788_29.mp4 (2164.27 MB)... +Processing: RoseDKush - BBW Rose Kush Plays With Pussy Outdoors__28id_2691761_29.mp4 (Mode: scene) +Downloading RoseDKush - BBW Rose Kush Plays With Pussy Outdoors__28id_2691761_29.mp4 (401.46 MB)... +Processing: RoseDKush - Friends Rose and Stella Ride Black Cock__28id_2786874_29.mp4 (Mode: scene) +Downloading RoseDKush - Friends Rose and Stella Ride Black Cock__28id_2786874_29.mp4 (1263.55 MB)... +Processing: RoseDKush_-_fucking_BBW_slut_till_you_cum_POV_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_fucking_BBW_slut_till_you_cum_POV_-_ManyVids.mp4 (346.41 MB)... +Processing: RoseDKush_-_Bones_&_Rose_have_a_good_morning_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Bones_&_Rose_have_a_good_morning_-_ManyVids.mp4 (233.97 MB)... +Processing: RoseDKush_-_Stranger_from_the_room_next_door_pt.1_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Stranger_from_the_room_next_door_pt.1_-_ManyVids.mp4 (178.41 MB)... +Processing: RoseDKush_-_Pool_side_cutie-_rose_strips_by_the_pool_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Pool_side_cutie-_rose_strips_by_the_pool_-_ManyVids.mp4 (49.49 MB)... +Processing: RoseDKush - BBW Babe Rose Kush Sucks off BBC Cameram__28id_2711764_29.mp4 (Mode: scene) +Downloading RoseDKush - BBW Babe Rose Kush Sucks off BBC Cameram__28id_2711764_29.mp4 (409.61 MB)... +Processing: RoseDKush_-_Out_Of_This_World_Alien_Sex_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Out_Of_This_World_Alien_Sex_-_ManyVids.mp4 (269.25 MB)... +Processing: RoseDKush - BBW Rose Kush Strokes and Sucks Dick__28id_2827330_29.mp4 (Mode: scene) +Downloading RoseDKush - BBW Rose Kush Strokes and Sucks Dick__28id_2827330_29.mp4 (824.27 MB)... +Processing: RoseDKush - Santa Thor and his hoe hoe hoes__28id_2455098_29.mp4 (Mode: scene) +Downloading RoseDKush - Santa Thor and his hoe hoe hoes__28id_2455098_29.mp4 (333.37 MB)... +Processing: RoseDKush_-_3_BBWs_playing_on_a_pool_table_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_3_BBWs_playing_on_a_pool_table_-_ManyVids.mp4 (166.35 MB)... +Processing: RoseDKush - BBW Rose Kush Fucks An Ogre__28id_2802107_29.mp4 (Mode: scene) +Downloading RoseDKush - BBW Rose Kush Fucks An Ogre__28id_2802107_29.mp4 (616.17 MB)... +Processing: RoseDKush_-_Girls_just_wanna_have_fun_in_the_pool_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Girls_just_wanna_have_fun_in_the_pool_-_ManyVids.mp4 (398.46 MB)... +Processing: RoseDKush_-_Rose_takes_Phillys_huge_BBC_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Rose_takes_Phillys_huge_BBC_-_ManyVids.mp4 (212.23 MB)... +Processing: RoseDKush - BBW Princess Rose Kush Is Awaken By__28id_2861207_29.mp4 (Mode: scene) +Downloading RoseDKush - BBW Princess Rose Kush Is Awaken By__28id_2861207_29.mp4 (1347.76 MB)... +Processing: RoseDKush - Betty Bang Squirts on BBW While Fucking__28id_2840412_29.mp4 (Mode: scene) +Downloading RoseDKush - Betty Bang Squirts on BBW While Fucking__28id_2840412_29.mp4 (522.03 MB)... +Processing: RoseDKush - Rose Kush And Friends Reverse Gangbang__28id_2750524_29.mp4 (Mode: scene) +Downloading RoseDKush - Rose Kush And Friends Reverse Gangbang__28id_2750524_29.mp4 (3035.62 MB)... +Processing: RoseDKush_-_bbw_showing_off_on_the_street_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_bbw_showing_off_on_the_street_-_ManyVids.mp4 (15.54 MB)... +Processing: RoseDKush_-_oiled_up_long_nail_handjob_ASMR_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_oiled_up_long_nail_handjob_ASMR_-_ManyVids.mp4 (171.01 MB)... +Processing: RoseDKush_-_play_time_with_our_boy_toy_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_play_time_with_our_boy_toy_-_ManyVids.mp4 (152.16 MB)... +Processing: RoseDKush_-_Roses_makes_waves_in_the_pool_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Roses_makes_waves_in_the_pool_-_ManyVids.mp4 (41.29 MB)... +Processing: RoseDKush_-_Random_Hotel_Room_Threesome_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Random_Hotel_Room_Threesome_-_ManyVids.mp4 (421.34 MB)... +Processing: RoseDKush_-_BBW_girlfriend_sloppy_BJ_after_work_POV_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_BBW_girlfriend_sloppy_BJ_after_work_POV_-_ManyVids.mp4 (156.54 MB)... +Processing: RoseDKush - BBW Rose Kush Licks Studs Nipples__28id_2793234_29.mp4 (Mode: scene) +Downloading RoseDKush - BBW Rose Kush Licks Studs Nipples__28id_2793234_29.mp4 (249.82 MB)... +Processing: RoseDKush - BBC Chef gets Blowjob from Latina BBW__28id_2832090_29.mp4 (Mode: scene) +Downloading RoseDKush - BBC Chef gets Blowjob from Latina BBW__28id_2832090_29.mp4 (351.79 MB)... +Processing: RoseDKush_-_Pussy_Eating_BTS_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Pussy_Eating_BTS_-_ManyVids.mp4 (19.24 MB)... +Processing: RoseDKush - BBW Babe Rose D Kush Eats Carrots__28id_2689247_29.mp4 (Mode: scene) +Downloading RoseDKush - BBW Babe Rose D Kush Eats Carrots__28id_2689247_29.mp4 (508.88 MB)... +Processing: RoseDKush - Naked Gingerbread building__28id_2455085_29.mp4 (Mode: scene) +Downloading RoseDKush - Naked Gingerbread building__28id_2455085_29.mp4 (169.87 MB)... +Processing: RoseDKush - Latina Maid Rose Cleans Cock__28id_2806169_29.mp4 (Mode: scene) +Downloading RoseDKush - Latina Maid Rose Cleans Cock__28id_2806169_29.mp4 (1673.45 MB)... +Processing: Lonely Wives Hire BBC Stripper-(Rose D. Kush, Virgo Peridot, Betty Bang, Kendra Kox)-{Girls Gone Wireless}-[BBW, Big Black Cock (BBC), Interracial, Orgy].mp4 (Mode: scene) +Downloading Lonely Wives Hire BBC Stripper-(Rose D. Kush, Virgo Peridot, Betty Bang, Kendra Kox)-{Girls Gone Wireless}-[BBW, Big Black Cock (BBC), Interracial, Orgy].mp4 (945.62 MB)... +Processing: RoseDKush - BBW Rose Kush Entertains Old White Guy__28id_2851323_29.mp4 (Mode: scene) +Downloading RoseDKush - BBW Rose Kush Entertains Old White Guy__28id_2851323_29.mp4 (625.01 MB)... +Processing: RoseDKush - Latina BBW Rose D Kush Takes on BBC__28id_2627275_29.mp4 (Mode: scene) +Downloading RoseDKush - Latina BBW Rose D Kush Takes on BBC__28id_2627275_29.mp4 (740.17 MB)... +Processing: RoseDKush - All I want for Christmas is a huge dick__28id_2455049_29.mp4 (Mode: scene) +Downloading RoseDKush - All I want for Christmas is a huge dick__28id_2455049_29.mp4 (124.50 MB)... +Processing: RoseDKush - Big Booty BBW Takes On Masked BBC__28id_2769289_29.mp4 (Mode: scene) +Downloading RoseDKush - Big Booty BBW Takes On Masked BBC__28id_2769289_29.mp4 (607.22 MB)... +Processing: RoseDKush_-_Teach_me_to_eat_pussy_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Teach_me_to_eat_pussy_-_ManyVids.mp4 (721.95 MB)... +Processing: RoseDKush_-_sexy_shower_threesome_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_sexy_shower_threesome_-_ManyVids.mp4 (135.81 MB)... +Processing: RoseDKush_-_Pool_Table_Fun_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Pool_Table_Fun_-_ManyVids.mp4 (132.00 MB)... +Processing: RoseDKush_-_Juans_Wet_Dream_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Juans_Wet_Dream_-_ManyVids.mp4 (163.00 MB)... +Processing: RoseDKush - StepDaugher Rose Kush Learns How to Fist__28id_2776940_29.mp4 (Mode: scene) +Downloading RoseDKush - StepDaugher Rose Kush Learns How to Fist__28id_2776940_29.mp4 (1759.28 MB)... +Processing: RoseDKush_-_Viper_The_Vixen_Domms_Rose_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Viper_The_Vixen_Domms_Rose_-_ManyVids.mp4 (241.05 MB)... +Processing: RoseDKush - Latina BBW Rose Kush Fucks Masked BBC__28id_2903127_29.mp4 (Mode: scene) +Downloading RoseDKush - Latina BBW Rose Kush Fucks Masked BBC__28id_2903127_29.mp4 (1267.16 MB)... +Processing: RoseDKush_-_Stranger_from_the_room_next_door_pt.2_-_ManyVids.mp4 (Mode: scene) +Downloading RoseDKush_-_Stranger_from_the_room_next_door_pt.2_-_ManyVids.mp4 (460.07 MB)... +Processing: RoseDKush - BBW Rose Kush and Friends Fuck Stranger__28id_2614424_29.mp4 (Mode: scene) +Downloading RoseDKush - BBW Rose Kush and Friends Fuck Stranger__28id_2614424_29.mp4 (888.11 MB)... +Scanning directory: /videos/blairebabie666 +Processing: Blaire OnlyFans_30.mp4 (Mode: scene) +Downloading Blaire OnlyFans_30.mp4 (467.66 MB)... +Processing: Blaire OnlyFans_37.mp4 (Mode: scene) +Downloading Blaire OnlyFans_37.mp4 (645.85 MB)... +Processing: Blaire OnlyFans_45.mp4 (Mode: scene) +Downloading Blaire OnlyFans_45.mp4 (378.96 MB)... +Processing: Blaire OnlyFans_39.mp4 (Mode: scene) +Downloading Blaire OnlyFans_39.mp4 (277.61 MB)... +Processing: Blaire OnlyFans_42.mp4 (Mode: scene) +Downloading Blaire OnlyFans_42.mp4 (386.60 MB)... +Processing: Blaire OnlyFans_28.mp4 (Mode: scene) +Downloading Blaire OnlyFans_28.mp4 (230.89 MB)... +Processing: Blaire OnlyFans_26.mp4 (Mode: scene) +Downloading Blaire OnlyFans_26.mp4 (439.47 MB)... +Processing: Blaire OnlyFans_21.mp4 (Mode: scene) +Downloading Blaire OnlyFans_21.mp4 (310.28 MB)... +Processing: Blaire OnlyFans_6.mp4 (Mode: scene) +Downloading Blaire OnlyFans_6.mp4 (510.02 MB)... +Processing: Blaire OnlyFans_14.mp4 (Mode: scene) +Downloading Blaire OnlyFans_14.mp4 (118.49 MB)... +Processing: Blaire OnlyFans_1.mp4 (Mode: scene) +Downloading Blaire OnlyFans_1.mp4 (572.84 MB)... +Processing: Blaire OnlyFans_13.mp4 (Mode: scene) +Downloading Blaire OnlyFans_13.mp4 (672.34 MB)... +Processing: Blaire OnlyFans_8.mp4 (Mode: scene) +Downloading Blaire OnlyFans_8.mp4 (601.63 MB)... +Processing: Blaire OnlyFans_43.mp4 (Mode: scene) +Downloading Blaire OnlyFans_43.mp4 (316.82 MB)... +Processing: Blaire OnlyFans_44.mp4 (Mode: scene) +Downloading Blaire OnlyFans_44.mp4 (238.85 MB)... +Processing: Blaire OnlyFans_38.mp4 (Mode: scene) +Downloading Blaire OnlyFans_38.mp4 (473.31 MB)... +Processing: Blaire OnlyFans_31.mp4 (Mode: scene) +Downloading Blaire OnlyFans_31.mp4 (327.79 MB)... +Processing: Blaire OnlyFans_9.mp4 (Mode: scene) +Downloading Blaire OnlyFans_9.mp4 (534.18 MB)... +Processing: Blaire OnlyFans_12.mp4 (Mode: scene) +Downloading Blaire OnlyFans_12.mp4 (473.89 MB)... +Processing: Blaire OnlyFans_7.mp4 (Mode: scene) +Downloading Blaire OnlyFans_7.mp4 (621.79 MB)... +Processing: Blaire OnlyFans_15.mp4 (Mode: scene) +Downloading Blaire OnlyFans_15.mp4 (524.52 MB)... +Processing: Blaire OnlyFans_20.mp4 (Mode: scene) +Downloading Blaire OnlyFans_20.mp4 (543.18 MB)... +Processing: Blaire OnlyFans_27.mp4 (Mode: scene) +Downloading Blaire OnlyFans_27.mp4 (397.65 MB)... +Processing: Blaire OnlyFans_29.mp4 (Mode: scene) +Downloading Blaire OnlyFans_29.mp4 (389.23 MB)... +Processing: Blaire OnlyFans_18.mp4 (Mode: scene) +Downloading Blaire OnlyFans_18.mp4 (649.32 MB)... +Processing: Blaire OnlyFans_4.mp4 (Mode: scene) +Downloading Blaire OnlyFans_4.mp4 (504.77 MB)... +Processing: Blaire OnlyFans_16.mp4 (Mode: scene) +Downloading Blaire OnlyFans_16.mp4 (558.38 MB)... +Processing: Blaire OnlyFans_3.mp4 (Mode: scene) +Downloading Blaire OnlyFans_3.mp4 (660.87 MB)... +Processing: Blaire OnlyFans_11.mp4 (Mode: scene) +Downloading Blaire OnlyFans_11.mp4 (572.07 MB)... +Processing: Blaire OnlyFans_24.mp4 (Mode: scene) +Downloading Blaire OnlyFans_24.mp4 (526.61 MB)... +Processing: Blaire OnlyFans_23.mp4 (Mode: scene) +Downloading Blaire OnlyFans_23.mp4 (308.92 MB)... +Processing: Blaire OnlyFans_47.mp4 (Mode: scene) +Downloading Blaire OnlyFans_47.mp4 (242.27 MB)... +Processing: Blaire OnlyFans_40.mp4 (Mode: scene) +Downloading Blaire OnlyFans_40.mp4 (310.90 MB)... +Processing: Blaire OnlyFans_32.mp4 (Mode: scene) +Downloading Blaire OnlyFans_32.mp4 (212.24 MB)... +Processing: Blaire OnlyFans_35.mp4 (Mode: scene) +Downloading Blaire OnlyFans_35.mp4 (345.60 MB)... +Processing: Blaire OnlyFans_22.mp4 (Mode: scene) +Downloading Blaire OnlyFans_22.mp4 (333.61 MB)... +Processing: Blaire OnlyFans_25.mp4 (Mode: scene) +Downloading Blaire OnlyFans_25.mp4 (368.61 MB)... +Processing: Blaire OnlyFans_2.mp4 (Mode: scene) +Downloading Blaire OnlyFans_2.mp4 (664.51 MB)... +Processing: Blaire OnlyFans_10.mp4 (Mode: scene) +Downloading Blaire OnlyFans_10.mp4 (482.23 MB)... +Processing: Blaire OnlyFans_5.mp4 (Mode: scene) +Downloading Blaire OnlyFans_5.mp4 (319.77 MB)... +Processing: Blaire OnlyFans_17.mp4 (Mode: scene) +Downloading Blaire OnlyFans_17.mp4 (349.16 MB)... +Processing: Blaire OnlyFans_19.mp4 (Mode: scene) +Downloading Blaire OnlyFans_19.mp4 (313.19 MB)... +Processing: Blaire OnlyFans_48.mp4 (Mode: scene) +Downloading Blaire OnlyFans_48.mp4 (768.50 MB)... +Processing: Blaire OnlyFans_34.mp4 (Mode: scene) +Downloading Blaire OnlyFans_34.mp4 (233.13 MB)... +Processing: Blaire OnlyFans_33.mp4 (Mode: scene) +Downloading Blaire OnlyFans_33.mp4 (290.12 MB)... +Processing: Blaire OnlyFans_41.mp4 (Mode: scene) +Downloading Blaire OnlyFans_41.mp4 (501.82 MB)... +Processing: Blaire OnlyFans_46.mp4 (Mode: scene) +Downloading Blaire OnlyFans_46.mp4 (480.13 MB)... +Scanning directory: /videos/remy.woods +Processing: Step Daughter needs a Place to Stay Remy Woods_Kyle Balls WCA_1080p.mp4 (Mode: scene) +Downloading Step Daughter needs a Place to Stay Remy Woods_Kyle Balls WCA_1080p.mp4 (331.34 MB)... +Processing: Face Fucking my Hot Step Sister Remy Woods ~ Xxxx_NewDaddies_1080p.mp4 (Mode: scene) +Downloading Face Fucking my Hot Step Sister Remy Woods ~ Xxxx_NewDaddies_1080p.mp4 (199.70 MB)... +Processing: Remy Woods videos on INCESTFLIX COM.mp4 (Mode: scene) +Downloading Remy Woods videos on INCESTFLIX COM.mp4 (0.16 MB)... +Processing: Remy Woods Face Fucked on her Belly ~ new Sphinx Position ~ NewDaddies_NewDaddies_1080p.mp4 (Mode: scene) +Downloading Remy Woods Face Fucked on her Belly ~ new Sphinx Position ~ NewDaddies_NewDaddies_1080p.mp4 (182.58 MB)... +Processing: Cheating Theater Room Sex with my Step Daughter Remy Woods_Kyle Balls WCA_1080p.mp4 (Mode: scene) +Downloading Cheating Theater Room Sex with my Step Daughter Remy Woods_Kyle Balls WCA_1080p.mp4 (363.64 MB)... +Processing: Remy Woods - Cheating Sex With My Daughter - WCA Productions - I.mp4 (Mode: scene) +Downloading Remy Woods - Cheating Sex With My Daughter - WCA Productions - I.mp4 (109.78 MB)... +Processing: BANGBROS - Watch Remy Woods' round Ass Bounce to the Rhythm of a Wild Doggystyle Pounding_Bang Bros Network_1080p.mp4 (Mode: scene) +Downloading BANGBROS - Watch Remy Woods' round Ass Bounce to the Rhythm of a Wild Doggystyle Pounding_Bang Bros Network_1080p.mp4 (413.94 MB)... +Processing: Step Sister Remy Woods POV Blowjob & Twerking ~ Gagging ~ Latina ~ BWC_NewDaddies_1080p.mp4 (Mode: scene) +Downloading Step Sister Remy Woods POV Blowjob & Twerking ~ Gagging ~ Latina ~ BWC_NewDaddies_1080p.mp4 (379.54 MB)... +Processing: udklkfo83ec_Kitty Lyvv and Remy Woods Phatnfyne.mp4 (Mode: scene) +Downloading udklkfo83ec_Kitty Lyvv and Remy Woods Phatnfyne.mp4 (8.69 MB)... +Processing: ufhdoio8d74_Remy Woods Phatnfyne.mp4 (Mode: scene) +Downloading ufhdoio8d74_Remy Woods Phatnfyne.mp4 (15.31 MB)... +Processing: Remy Woods - My Daughter Desperately Needs A Place To Stay - WCA.mp4 (Mode: scene) +Downloading Remy Woods - My Daughter Desperately Needs A Place To Stay - WCA.mp4 (160.89 MB)... +Processing: ucbhfbf1827_The 1000 Dollar Lap Dance.mp4 (Mode: scene) +Downloading ucbhfbf1827_The 1000 Dollar Lap Dance.mp4 (13.24 MB)... +Processing: ucbmllo22f7_Remy's Wet Booty.mp4 (Mode: scene) +Downloading ucbmllo22f7_Remy's Wet Booty.mp4 (11.28 MB)... +Processing: Fucking my Wife's little Sister Trailer Remy Woods_Kyle Balls WCA_1080p.mp4 (Mode: scene) +Downloading Fucking my Wife's little Sister Trailer Remy Woods_Kyle Balls WCA_1080p.mp4 (249.23 MB)... +Scanning directory: /videos/ophelia.purr +Scanning directory: /videos/crystal.chase +Processing: Scoreland - 2025-12-18 - Crystal Chase - The Center of Your Attention.mp4 (Mode: scene) +Downloading Scoreland - 2025-12-18 - Crystal Chase - The Center of Your Attention.mp4 (1086.17 MB)... +Processing: FAMILYXXX - 'I'm in Love With My Step Brother's Big Cock' (Crystal Chase)_FAMILYxxx_hls_1080p.mp4 (Mode: scene) +Downloading FAMILYXXX - 'I'm in Love With My Step Brother's Big Cock' (Crystal Chase)_FAMILYxxx_hls_1080p.mp4 (840.44 MB)... +Scanning directory: /videos/xvideos +Scanning directory: /videos/taboofantasy +Processing: STRICTLY TABOO 9_(20220616)_{TABOO-FANTASY}.mp4 (Mode: scene) +Downloading STRICTLY TABOO 9_(20220616)_{TABOO-FANTASY}.mp4 (1365.02 MB)... +Processing: Taboo_Fantasy.2022.Belles.Virgin….1080p.mp4 (Mode: scene) +Downloading Taboo_Fantasy.2022.Belles.Virgin….1080p.mp4 (416.75 MB)... +Processing: [clips4sale.com]mysisterhasbigtits_hd.wmv (Mode: scene) +Downloading [clips4sale.com]mysisterhasbigtits_hd.wmv (607.19 MB)... +Scanning directory: /videos/kimmy.kimm +Processing: Payton Preslee Kimmy Kimm - Peyton Kimmys Evil Plot for Cock - M.mp4 (Mode: scene) +Downloading Payton Preslee Kimmy Kimm - Peyton Kimmys Evil Plot for Cock - M.mp4 (1046.31 MB)... +Processing: Trying Sex With Asian Best Friend-(Kimmy Kimm)-{Perfect Girlfriend}-[All Natural, Big Ass, Blowjob, Cumshot, Friends, Male - POV, Romance, Schoolgirl, Short Woman, Teen (18–22), Tiny Woman].mp4 (Mode: scene) +Downloading Trying Sex With Asian Best Friend-(Kimmy Kimm)-{Perfect Girlfriend}-[All Natural, Big Ass, Blowjob, Cumshot, Friends, Male - POV, Romance, Schoolgirl, Short Woman, Teen (18–22), Tiny Woman].mp4 (883.33 MB)... +Processing: Swap Family Gets Sticky - S6-E6-(Kimmy Kimm, Christy Love)-{Family Swap}.mp4 (Mode: scene) +Downloading Swap Family Gets Sticky - S6-E6-(Kimmy Kimm, Christy Love)-{Family Swap}.mp4 (173.17 MB)... +Processing: Stepsisters Scary Halloween Sleepover - Step Siblings Caught.mp4 (Mode: scene) +Downloading Stepsisters Scary Halloween Sleepover - Step Siblings Caught.mp4 (2672.48 MB)... +Processing: Asian Teen is a Flesh Light for Step Dad - Family Therapy - Alex.mp4 (Mode: scene) +Downloading Asian Teen is a Flesh Light for Step Dad - Family Therapy - Alex.mp4 (97.89 MB)... +Scanning directory: /videos/annabel.redd +Processing: primalfetish-2025.Annabelle.Redd_EncourangingHerStepbrother.mp4 (Mode: scene) +Downloading primalfetish-2025.Annabelle.Redd_EncourangingHerStepbrother.mp4 (8677.52 MB)... +Processing: New Annabel Redd Cant Resist my Seductive Stepdaughter 2024 Hard.mp4 (Mode: scene) +Downloading New Annabel Redd Cant Resist my Seductive Stepdaughter 2024 Hard.mp4 (251.89 MB)... +Processing: Annabel Redd hairy pussy deep squirt finger fuck-{Erotic Massage Institute}.mp4 (Mode: scene) +Downloading Annabel Redd hairy pussy deep squirt finger fuck-{Erotic Massage Institute}.mp4 (1007.36 MB)... +Processing: Good Girls Need Attention - Family Roleplay.mp4 (Mode: scene) +Downloading Good Girls Need Attention - Family Roleplay.mp4 (430.13 MB)... +Processing: Annabel Redd bigtits bigass MILF redhead deepthroat Annabel Red .mp4 (Mode: scene) +Downloading Annabel Redd bigtits bigass MILF redhead deepthroat Annabel Red .mp4 (693.54 MB)... +Scanning directory: /videos/peachy.alice +Processing: Peachy Alice - Stocks Go Down But Cock Goes Up - OnlyTarts - INC.mp4 (Mode: scene) +Downloading Peachy Alice - Stocks Go Down But Cock Goes Up - OnlyTarts - INC.mp4 (493.37 MB)... +Scanning directory: /videos/leia.lovelyn +Processing: Leia Lovelyn - Incentivizing my Stepson 2 - Free Taboo porn vide.mp4 (Mode: scene) +Downloading Leia Lovelyn - Incentivizing my Stepson 2 - Free Taboo porn vide.mp4 (110.17 MB)... +Processing: freaky-family-s3e4_720m_-190714232_456239200_720p.mp4 (Mode: scene) +Downloading freaky-family-s3e4_720m_-190714232_456239200_720p.mp4 (325.40 MB)... +Processing: Leia Lovelyn - Wild Ride - Free Taboo porn videos.mp4 (Mode: scene) +Downloading Leia Lovelyn - Wild Ride - Free Taboo porn videos.mp4 (102.92 MB)... +Processing: Leia Lovelyn a k a Princess Leia - Incentivizing My Son - INCEST.mp4 (Mode: scene) +Downloading Leia Lovelyn a k a Princess Leia - Incentivizing My Son - INCEST.mp4 (203.46 MB)... +Processing: Fucking Myself While You Watch-(Princess Leia)-{Princess Leia}-[Blue Eyes, Braids, Brown Hair (Female), Dildo, Dirty Talk, MILF (30+), Masturbation, Medium Tits, Natural Tits, Orgasm, Outie Pussy, Solo Female].mp4 (Mode: scene) +Downloading Fucking Myself While You Watch-(Princess Leia)-{Princess Leia}-[Blue Eyes, Braids, Brown Hair (Female), Dildo, Dirty Talk, MILF (30+), Masturbation, Medium Tits, Natural Tits, Orgasm, Outie Pussy, Solo Female].mp4 (72.17 MB)... +Processing: Xev Bellringer - The Love Demon.mp4 (Mode: scene) +Downloading Xev Bellringer - The Love Demon.mp4 (652.94 MB)... +Scanning directory: /videos/cadence.lux +Processing: AdultTime.25.06.20.Cadence.Lux.Kimmy.Kimm.Leana.Lovings.Remotes.For.Her.Roomies.XXX.1080p.mp4 (Mode: scene) +Downloading AdultTime.25.06.20.Cadence.Lux.Kimmy.Kimm.Leana.Lovings.Remotes.For.Her.Roomies.XXX.1080p.mp4 (839.06 MB)... +Processing: Squirting Stories Volume Two- Mopping Up-(Cadence Lux, Maddy O'Reilly)-{Girlsway}.mp4 (Mode: scene) +Downloading Squirting Stories Volume Two- Mopping Up-(Cadence Lux, Maddy O'Reilly)-{Girlsway}.mp4 (1813.53 MB)... +Processing: Cadence Luxx - Almost Caught With My Brother - Pretty Dirty - IN.mp4 (Mode: scene) +Downloading Cadence Luxx - Almost Caught With My Brother - Pretty Dirty - IN.mp4 (200.03 MB)... +Processing: 'Til Deception Do Us Part-(Cadence Lux)-{Pure Taboo}.mp4 (Mode: scene) +Downloading 'Til Deception Do Us Part-(Cadence Lux)-{Pure Taboo}.mp4 (692.12 MB)... +Scanning directory: /videos/zoey.uso +Processing: FamilyTherapyXXX - New Room.mp4 (Mode: scene) +Downloading FamilyTherapyXXX - New Room.mp4 (1140.38 MB)... +Processing: OnlyFans - Zoey and Damion Dayski.mp4 (Mode: scene) +Downloading OnlyFans - Zoey and Damion Dayski.mp4 (1700.23 MB)... +Processing: BIG TITTY PAWG ZOEY USO IS USED, CHOKED, AND FACIALED-{Max Fills}-[4k Available, BBW, Big Ass, Big Tits].mp4 (Mode: scene) +Downloading BIG TITTY PAWG ZOEY USO IS USED, CHOKED, AND FACIALED-{Max Fills}-[4k Available, BBW, Big Ass, Big Tits].mp4 (2555.73 MB)... +Processing: Lustery - Zoey & Zack From Every Angle.mp4 (Mode: scene) +Downloading Lustery - Zoey & Zack From Every Angle.mp4 (649.03 MB)... +Processing: onlyfans.2025.zoey.uso.and.baddiesonlypov.xxxx.mp4 (Mode: scene) +Downloading onlyfans.2025.zoey.uso.and.baddiesonlypov.xxxx.mp4 (1663.14 MB)... +Processing: OnlyFans - Stretchmasters.mp4 (Mode: scene) +Downloading OnlyFans - Stretchmasters.mp4 (2346.03 MB)... +Processing: New.Zoey.Uso.Curvy.Perfect.Teen.Thick.Ass.FULL.VIDEO.HD.sxyprn.Anal.bbc.Interracial.Bigdick.Bigtits.Hardcore.POV.Rough.BlackRBA.mp4 (Mode: scene) +Downloading New.Zoey.Uso.Curvy.Perfect.Teen.Thick.Ass.FULL.VIDEO.HD.sxyprn.Anal.bbc.Interracial.Bigdick.Bigtits.Hardcore.POV.Rough.BlackRBA.mp4 (599.67 MB)... +Processing: OnlyFans - Gotta Catch Them All.mp4 (Mode: scene) +Downloading OnlyFans - Gotta Catch Them All.mp4 (862.19 MB)... +Processing: OnlyFans - Amateur College Slut Gets Her Pussy Beat Up.mp4 (Mode: scene) +Downloading OnlyFans - Amateur College Slut Gets Her Pussy Beat Up.mp4 (803.84 MB)... +Processing: Zoey Uso - Stepsisters Last Fuck Before GF Returns - Family Role.mp4 (Mode: scene) +Downloading Zoey Uso - Stepsisters Last Fuck Before GF Returns - Family Role.mp4 (138.26 MB)... +Processing: OnlyFans - Thick PAWG POV Fuck.mp4 (Mode: scene) +Downloading OnlyFans - Thick PAWG POV Fuck.mp4 (2900.34 MB)... +Processing: NickMarXXX - Pastors Daughter From Georgia.mp4 (Mode: scene) +Downloading NickMarXXX - Pastors Daughter From Georgia.mp4 (1737.43 MB)... +Processing: OnlyFans - Happy 4th of July Baby BTS.mp4 (Mode: scene) +Downloading OnlyFans - Happy 4th of July Baby BTS.mp4 (1308.62 MB)... +Processing: NetVideoGirls - Amateurs Caught on Cam 25.mp4 (Mode: scene) +Downloading NetVideoGirls - Amateurs Caught on Cam 25.mp4 (3902.80 MB)... +Processing: assparade.25.09.29.zoey.uso.mp4 (Mode: scene) +Downloading assparade.25.09.29.zoey.uso.mp4 (4185.76 MB)... +Processing: mypervyfamily.25.11.29.zoey.uso.unkept.promises.4k.mp4 (Mode: scene) +Downloading mypervyfamily.25.11.29.zoey.uso.unkept.promises.4k.mp4 (4318.08 MB)... +Processing: MyPervyFamily - Tit Reduction Stepdad Seduction.mp4 (Mode: scene) +Downloading MyPervyFamily - Tit Reduction Stepdad Seduction.mp4 (1804.19 MB)... +Processing: OnlyFans - BGG With Zoey Uso And Lola Rose.mp4 (Mode: scene) +Downloading OnlyFans - BGG With Zoey Uso And Lola Rose.mp4 (1540.81 MB)... +Processing: OnlyFans - Zoey Uso & Scott Stark.mp4 (Mode: scene) +Downloading OnlyFans - Zoey Uso & Scott Stark.mp4 (1778.84 MB)... +Processing: OnlyFans - Zoey Uso & FinnysPlayhouse.mp4 (Mode: scene) +Downloading OnlyFans - Zoey Uso & FinnysPlayhouse.mp4 (1174.11 MB)... +Processing: OnlyFans - Zoey Uso and Maddiebubz - Anal Series Part 2.mp4 (Mode: scene) +Downloading OnlyFans - Zoey Uso and Maddiebubz - Anal Series Part 2.mp4 (1093.55 MB)... +Processing: OnlyFans - Happy 4th of July Baby.mp4 (Mode: scene) +Downloading OnlyFans - Happy 4th of July Baby.mp4 (2346.75 MB)... +Processing: onlyfans.25.10.02.zoey.uso.busty.step.sister.vs.horny.step.brother.xxx.mp4 (Mode: scene) +Downloading onlyfans.25.10.02.zoey.uso.busty.step.sister.vs.horny.step.brother.xxx.mp4 (1073.37 MB)... +Processing: OnlyFans - My First Ever Boy Girl Girl.mp4 (Mode: scene) +Downloading OnlyFans - My First Ever Boy Girl Girl.mp4 (2625.03 MB)... +Processing: MrLuckyRAW - Zoey Uso Makes Her Big Tits and Ass Bounce For Cock.mp4 (Mode: scene) +Downloading MrLuckyRAW - Zoey Uso Makes Her Big Tits and Ass Bounce For Cock.mp4 (1518.58 MB)... +Processing: FilthyTaboo.25.10.16.Zoey.Uso.And.Adeline.Star.XXX.1080p.HEVC.x265.PRT.mp4 (Mode: scene) +Downloading FilthyTaboo.25.10.16.Zoey.Uso.And.Adeline.Star.XXX.1080p.HEVC.x265.PRT.mp4 (1225.73 MB)... +Processing: OnlyFans - He Woke Me Up And Then Fucked The Shit Out Of Me.mp4 (Mode: scene) +Downloading OnlyFans - He Woke Me Up And Then Fucked The Shit Out Of Me.mp4 (875.27 MB)... +Processing: Zoey Uso 25.11.21 Fucking My Gamer Stepsis x265.mp4 (Mode: scene) +Downloading Zoey Uso 25.11.21 Fucking My Gamer Stepsis x265.mp4 (2347.24 MB)... +Processing: The Cool Stepmom - Zoey Uso and Milana ricci.mp4 (Mode: scene) +Downloading The Cool Stepmom - Zoey Uso and Milana ricci.mp4 (1721.21 MB)... +Scanning directory: /videos/dakota.burns +Scanning directory: /videos/summer.dayze +Processing: Casting Curvy BUSTY Step-Sis needs pictures to prove shes not a .mp4 (Mode: scene) +Downloading Casting Curvy BUSTY Step-Sis needs pictures to prove shes not a .mp4 (219.50 MB)... +Scanning directory: /videos/anastasia.rose +Processing: Nikki Brooks, Anastasia Rose - Mom And Sister Cheer You Up - Fifi Foxx Fantasies.mp4 (Mode: scene) +Downloading Nikki Brooks, Anastasia Rose - Mom And Sister Cheer You Up - Fifi Foxx Fantasies.mp4 (100.31 MB)... +Processing: Anastasia Rose - Soulmate Siblings - Fifi Foxx. Brother and Sister are Hopelessly in Love - Fifi Foxx Fantasies.mp4 (Mode: scene) +Downloading Anastasia Rose - Soulmate Siblings - Fifi Foxx. Brother and Sister are Hopelessly in Love - Fifi Foxx Fantasies.mp4 (85.06 MB)... +Processing: ccxxx.19.08.16.anastasia.rose.its.not.going.to.suck.itself.sis.mp4 (Mode: scene) +Downloading ccxxx.19.08.16.anastasia.rose.its.not.going.to.suck.itself.sis.mp4 (678.46 MB)... +Processing: iecbplbded9_StepSister Teaches Sex Ed to Stepbrother.mp4 (Mode: scene) +Downloading iecbplbded9_StepSister Teaches Sex Ed to Stepbrother.mp4 (317.84 MB)... +Processing: Carmen Valentina, Anastasia Rose - Mom And Sister Controlled With Magic Remote - Fifi Foxx Fantasies.mp4 (Mode: scene) +Downloading Carmen Valentina, Anastasia Rose - Mom And Sister Controlled With Magic Remote - Fifi Foxx Fantasies.mp4 (63.09 MB)... +Processing: ccxxx.19.04.05.anastasia.rose.and.stephie.starr.two.pornstars.suck.your.cock.mp4 (Mode: scene) +Downloading ccxxx.19.04.05.anastasia.rose.and.stephie.starr.two.pornstars.suck.your.cock.mp4 (1246.91 MB)... +Processing: ccxxx.18.02.02.anastasia.rose.i.caught.you.sis.now.blow.me.mp4 (Mode: scene) +Downloading ccxxx.18.02.02.anastasia.rose.i.caught.you.sis.now.blow.me.mp4 (1284.43 MB)... +Processing: Anastasia Rose - Mean Step-Sister Remote Control-{Primal's Mental Domination}-[All Natural, CMNF, Cum in Mouth, Foot Fetish, Mind Control].mp4 (Mode: scene) +Downloading Anastasia Rose - Mean Step-Sister Remote Control-{Primal's Mental Domination}-[All Natural, CMNF, Cum in Mouth, Foot Fetish, Mind Control].mp4 (554.06 MB)... +Processing: Carmen Valentina, Anastasia Rose - Special Bedtime Routine. You get manipulated to take care of your Mother and Sister's perverted needs.mp4 (Mode: scene) +Downloading Carmen Valentina, Anastasia Rose - Special Bedtime Routine. You get manipulated to take care of your Mother and Sister's perverted needs.mp4 (75.32 MB)... +Processing: Anastasia Rose - Seven Minutes In Heaven With Sister - Fifi Foxx Fantasies.mp4 (Mode: scene) +Downloading Anastasia Rose - Seven Minutes In Heaven With Sister - Fifi Foxx Fantasies.mp4 (76.50 MB)... +Processing: imealev2672_stepSister Anastasia Rose Wants Sextape.mp4 (Mode: scene) +Downloading imealev2672_stepSister Anastasia Rose Wants Sextape.mp4 (289.72 MB)... +Scanning directory: /videos/scarlett.venom +Processing: Accidental Creampie For Stepsister On Her First Night At College.mp4 (Mode: scene) +Downloading Accidental Creampie For Stepsister On Her First Night At College.mp4 (685.39 MB)... +Scanning directory: /videos/adaline.star +Scanning directory: /videos/ivy.plant gal +Scanning directory: /videos/jeyla.spice +Scanning directory: /videos/raeley.love +Processing: Taking Care Of Stepmom With A Threesome-(Raeley Love, Piper Press)-{Fill Up My Mom}.mp4 (Mode: scene) +Downloading Taking Care Of Stepmom With A Threesome-(Raeley Love, Piper Press)-{Fill Up My Mom}.mp4 (435.20 MB)... +Scanning directory: /videos/taylee.wood +Scanning directory: /videos/__trash__ +Scanning directory: /videos/fifi.foxx +Processing: kluufumb56a_Age Play Girl Transforms Into An Adult and Gets Facial.mp4 (Mode: scene) +Downloading kluufumb56a_Age Play Girl Transforms Into An Adult and Gets Facial.mp4 (343.60 MB)... +Processing: kltiato983f_Pot Belly; 2 Girls Gain Weight and Show Off Belly.mp4 (Mode: scene) +Downloading kltiato983f_Pot Belly; 2 Girls Gain Weight and Show Off Belly.mp4 (148.26 MB)... +Processing: kluiplva01e_Face Fucking Myself With a Vibrator Starring Fifi Foxx.mp4 (Mode: scene) +Downloading kluiplva01e_Face Fucking Myself With a Vibrator Starring Fifi Foxx.mp4 (228.69 MB)... +Processing: kmfmdtme126_Pantyhose Pussy Eating Featuring Akira Shell and Fifi Foxx.mp4 (Mode: scene) +Downloading kmfmdtme126_Pantyhose Pussy Eating Featuring Akira Shell and Fifi Foxx.mp4 (294.64 MB)... +Processing: klhtvpbe936_Fifi Foxx Teases You With Her Sexy Belly Button.mp4 (Mode: scene) +Downloading klhtvpbe936_Fifi Foxx Teases You With Her Sexy Belly Button.mp4 (165.57 MB)... +Processing: klukpuff5b6_Fembot Teacher Is Out of Control.mp4 (Mode: scene) +Downloading klukpuff5b6_Fembot Teacher Is Out of Control.mp4 (142.86 MB)... +Processing: kmebddb528d_step Daughter Taught To Give stepDaddy A Blowjob POV.mp4 (Mode: scene) +Downloading kmebddb528d_step Daughter Taught To Give stepDaddy A Blowjob POV.mp4 (399.11 MB)... +Processing: kltihtvee9f_Fifi Foxx Mouth Fetish Gum Brushing.mp4 (Mode: scene) +Downloading kltihtvee9f_Fifi Foxx Mouth Fetish Gum Brushing.mp4 (104.16 MB)... +Processing: klkfuio0da4_Fifi Foxx Mukbang Food and Soda For Weight Gain.mp4 (Mode: scene) +Downloading klkfuio0da4_Fifi Foxx Mukbang Food and Soda For Weight Gain.mp4 (261.25 MB)... +Processing: kltmpab788d_Blowing Bubblegum Bubbles While Giving Blowjob.mp4 (Mode: scene) +Downloading kltmpab788d_Blowing Bubblegum Bubbles While Giving Blowjob.mp4 (334.41 MB)... +Processing: klhluthf4c7_Blonde Tied Up And Has Belly Button Worshipped.mp4 (Mode: scene) +Downloading klhluthf4c7_Blonde Tied Up And Has Belly Button Worshipped.mp4 (171.54 MB)... +Processing: klumlmf797b_Popping Balloons While Fucking In a Sea of Loons.mp4 (Mode: scene) +Downloading klumlmf797b_Popping Balloons While Fucking In a Sea of Loons.mp4 (523.94 MB)... +Processing: klhupco7bec_Your Friend's stepDaughter Wants You To Impregnate Her POV.mp4 (Mode: scene) +Downloading klhupco7bec_Your Friend's stepDaughter Wants You To Impregnate Her POV.mp4 (253.10 MB)... +Processing: klukoad3558_Fifi Foxx Playing With Her Tits.mp4 (Mode: scene) +Downloading klukoad3558_Fifi Foxx Playing With Her Tits.mp4 (294.68 MB)... +Processing: kmfcaif0821_Fucking stepDad's Girlfriend in PVC Raincoat.mp4 (Mode: scene) +Downloading kmfcaif0821_Fucking stepDad's Girlfriend in PVC Raincoat.mp4 (252.01 MB)... +Processing: kluiuoh3a7a_Aiden Valentine Wakes Up As A Woman.mp4 (Mode: scene) +Downloading kluiuoh3a7a_Aiden Valentine Wakes Up As A Woman.mp4 (171.78 MB)... +Processing: kltfbkbc066_B2P Big Balloons and Sitting on Them.mp4 (Mode: scene) +Downloading kltfbkbc066_B2P Big Balloons and Sitting on Them.mp4 (127.73 MB)... +Processing: kmfalpd38f9_Nose Fetish Play Starring Fifi Foxx.mp4 (Mode: scene) +Downloading kmfalpd38f9_Nose Fetish Play Starring Fifi Foxx.mp4 (63.75 MB)... +Processing: kihptcd1c34_Impregnated a hooker POV.mp4 (Mode: scene) +Downloading kihptcd1c34_Impregnated a hooker POV.mp4 (196.12 MB)... +Processing: kltfbtm1666_Fifi Foxx Wax Play on Her Cute Belly.mp4 (Mode: scene) +Downloading kltfbtm1666_Fifi Foxx Wax Play on Her Cute Belly.mp4 (178.99 MB)... +Processing: kltulcv5056_Weigh In By 2 BBWs and Measuring Their Bellies.mp4 (Mode: scene) +Downloading kltulcv5056_Weigh In By 2 BBWs and Measuring Their Bellies.mp4 (117.33 MB)... +Processing: kmevucf0ff4_POV Humiliation By A Super Villian.mp4 (Mode: scene) +Downloading kmevucf0ff4_POV Humiliation By A Super Villian.mp4 (218.64 MB)... +Processing: klhpocvde4e_Bubble Gum Bubbles In White Bra.mp4 (Mode: scene) +Downloading klhpocvde4e_Bubble Gum Bubbles In White Bra.mp4 (114.40 MB)... +Processing: klthcff433b_Fifi Foxx Gaining Weight By Eating A Bunch Of Food.mp4 (Mode: scene) +Downloading klthcff433b_Fifi Foxx Gaining Weight By Eating A Bunch Of Food.mp4 (264.95 MB)... +Processing: kltffdoe3ef_Sexbot Fifi Foxx At Your Service.mp4 (Mode: scene) +Downloading kltffdoe3ef_Sexbot Fifi Foxx At Your Service.mp4 (260.49 MB)... +Processing: kltvfkmde64_Ivy Davenport, Wood, and Fifi Foxx Weight Gain and Measurements.mp4 (Mode: scene) +Downloading kltvfkmde64_Ivy Davenport, Wood, and Fifi Foxx Weight Gain and Measurements.mp4 (159.21 MB)... +Processing: kmevicdcfcf_Bondage Blowjob While Tied Up to A Chair.mp4 (Mode: scene) +Downloading kmevicdcfcf_Bondage Blowjob While Tied Up to A Chair.mp4 (226.38 MB)... +Processing: kluhdlk30d3_Fifi Foxx Gives JOI While Masturbating.mp4 (Mode: scene) +Downloading kluhdlk30d3_Fifi Foxx Gives JOI While Masturbating.mp4 (227.65 MB)... +Processing: kmflebv8280_2 BBWs Measure Themselves and Show Off Fat Bellies.mp4 (Mode: scene) +Downloading kmflebv8280_2 BBWs Measure Themselves and Show Off Fat Bellies.mp4 (141.03 MB)... +Processing: kluhcvde14d_Fifi Foxx Naked Pillow Humping.mp4 (Mode: scene) +Downloading kluhcvde14d_Fifi Foxx Naked Pillow Humping.mp4 (215.51 MB)... +Processing: kmfmmtm7b40_Pee Desperation Starring Fifi Foxx.mp4 (Mode: scene) +Downloading kmfmmtm7b40_Pee Desperation Starring Fifi Foxx.mp4 (148.85 MB)... +Processing: ikpebifc75a_Step Brother fucks stepSister Secret Relationship Taboo Family Story.mp4 (Mode: scene) +Downloading ikpebifc75a_Step Brother fucks stepSister Secret Relationship Taboo Family Story.mp4 (313.61 MB)... +Processing: kmfclhofcec_Belly Button Fetish Featuring Fifi Foxx.mp4 (Mode: scene) +Downloading kmfclhofcec_Belly Button Fetish Featuring Fifi Foxx.mp4 (130.35 MB)... +Processing: imbcupbab7d_Bondage Blowjob with Facial - KIM STROKER.mp4 (Mode: scene) +Downloading imbcupbab7d_Bondage Blowjob with Facial - KIM STROKER.mp4 (169.10 MB)... +Processing: klkeafba3e7_Blonde Chick Give POV Blowjob and Sex Off Side Of Bed.mp4 (Mode: scene) +Downloading klkeafba3e7_Blonde Chick Give POV Blowjob and Sex Off Side Of Bed.mp4 (340.99 MB)... +Processing: klumtdf8265_Belly Button Worship and Handjob.mp4 (Mode: scene) +Downloading klumtdf8265_Belly Button Worship and Handjob.mp4 (279.67 MB)... +Processing: klkfufk5dd9_2 Blondes Get Wet and Messy and Pie Eachother In The Face.mp4 (Mode: scene) +Downloading klkfufk5dd9_2 Blondes Get Wet and Messy and Pie Eachother In The Face.mp4 (440.79 MB)... +Processing: kkccmfb1cce_Blonde k. and face fucked by man.mp4 (Mode: scene) +Downloading kkccmfb1cce_Blonde k. and face fucked by man.mp4 (216.87 MB)... +Processing: imbcldhb1e9_KIM STROKER is a nurse who takes care of the patient's cock.mp4 (Mode: scene) +Downloading imbcldhb1e9_KIM STROKER is a nurse who takes care of the patient's cock.mp4 (632.42 MB)... +Processing: klkefdbef85_Fifi Foxx Possessed By Fat Goddess And Shoves Cake Down Her Throat.mp4 (Mode: scene) +Downloading klkefdbef85_Fifi Foxx Possessed By Fat Goddess And Shoves Cake Down Her Throat.mp4 (441.06 MB)... +Processing: kmfddio1b3f_Frozen Terra Mizu Gets Posed and Groped By Fifi Foxx.mp4 (Mode: scene) +Downloading kmfddio1b3f_Frozen Terra Mizu Gets Posed and Groped By Fifi Foxx.mp4 (175.59 MB)... +Processing: kluokbm8468_Blonde Cuckolds You By Fucking Lover In Front Of You.mp4 (Mode: scene) +Downloading kluokbm8468_Blonde Cuckolds You By Fucking Lover In Front Of You.mp4 (460.57 MB)... +Processing: kluhkbk3678_Fifi Foxx Teaches You How To Give A Good Blowjob.mp4 (Mode: scene) +Downloading kluhkbk3678_Fifi Foxx Teaches You How To Give A Good Blowjob.mp4 (90.62 MB)... +Processing: klukktv0731_Amateur Blowjob and Doggystyle While Tied Up.mp4 (Mode: scene) +Downloading klukktv0731_Amateur Blowjob and Doggystyle While Tied Up.mp4 (128.17 MB)... +Processing: klupbfo8ea5_Naked Facelicking A Guy.mp4 (Mode: scene) +Downloading klupbfo8ea5_Naked Facelicking A Guy.mp4 (243.93 MB)... +Processing: Smarty Kat 314, Fifi Foxx - Sisters Blackmailed By Boyfriend - Cock Ninja Studios.mp4 (Mode: scene) +Downloading Smarty Kat 314, Fifi Foxx - Sisters Blackmailed By Boyfriend - Cock Ninja Studios.mp4 (259.58 MB)... +Processing: klhtdpv2323_Supervillian Fifi Foxx Mesmerizes You and Puts A Spell On You.mp4 (Mode: scene) +Downloading klhtdpv2323_Supervillian Fifi Foxx Mesmerizes You and Puts A Spell On You.mp4 (198.14 MB)... +Processing: kmfpluk18a4_Navel Worship Handjob By Fifi Foxx.mp4 (Mode: scene) +Downloading kmfpluk18a4_Navel Worship Handjob By Fifi Foxx.mp4 (226.25 MB)... +Processing: klhothofc8c_Blonde Looner Balloon Popping.mp4 (Mode: scene) +Downloading klhothofc8c_Blonde Looner Balloon Popping.mp4 (274.05 MB)... +Processing: klteddbb739_2 Fembot Strippers Malfunction While Giving Striptease.mp4 (Mode: scene) +Downloading klteddbb739_2 Fembot Strippers Malfunction While Giving Striptease.mp4 (203.46 MB)... +Processing: kmfcbkb7cff_Blonde BBW Gainer Gains Weight Featuring Reenaye Starr.mp4 (Mode: scene) +Downloading kmfcbkb7cff_Blonde BBW Gainer Gains Weight Featuring Reenaye Starr.mp4 (157.23 MB)... +Processing: klhvvmdf5f4_step Daddys Viagra Makes step Son Fuck step Mommy.mp4 (Mode: scene) +Downloading klhvvmdf5f4_step Daddys Viagra Makes step Son Fuck step Mommy.mp4 (663.44 MB)... +Processing: hbachfob446_Atrapado en un cuerpo de mujer - transformation porn on airplane.mp4 (Mode: scene) +Downloading hbachfob446_Atrapado en un cuerpo de mujer - transformation porn on airplane.mp4 (34.83 MB)... +Processing: Study Break Turns into Creampie Doggystyle with Step-Sibling - J.mp4 (Mode: scene) +Downloading Study Break Turns into Creampie Doggystyle with Step-Sibling - J.mp4 (107.35 MB)... +Processing: klhtfcbe70e_Blonde Bitch Blow to Pop Balloons.mp4 (Mode: scene) +Downloading klhtfcbe70e_Blonde Bitch Blow to Pop Balloons.mp4 (91.48 MB)... +Processing: kltapov8fab_Girlfriend Wants To Fuck in PVC Raincoat.mp4 (Mode: scene) +Downloading kltapov8fab_Girlfriend Wants To Fuck in PVC Raincoat.mp4 (229.15 MB)... +Processing: kmfhdvv079a_MILF step Mom and step Sister Give step Son a Double Blowjob.mp4 (Mode: scene) +Downloading kmfhdvv079a_MILF step Mom and step Sister Give step Son a Double Blowjob.mp4 (346.63 MB)... +Processing: kmekcvkf002_Pee Fetish Blonde Pees into a Glass.mp4 (Mode: scene) +Downloading kmekcvkf002_Pee Fetish Blonde Pees into a Glass.mp4 (53.64 MB)... +Processing: khfvtkd38a9_Sexaholic step Mommy fucks her stepson.mp4 (Mode: scene) +Downloading khfvtkd38a9_Sexaholic step Mommy fucks her stepson.mp4 (286.62 MB)... +Processing: kltcfkh05d4_Girls Frozen in Time and Posed.mp4 (Mode: scene) +Downloading kltcfkh05d4_Girls Frozen in Time and Posed.mp4 (147.00 MB)... +Processing: klhommm0de2_2 Brainwashed Girls With Big Tits Strip For You Under Your Control.mp4 (Mode: scene) +Downloading klhommm0de2_2 Brainwashed Girls With Big Tits Strip For You Under Your Control.mp4 (186.61 MB)... +Processing: kluplahdafd_Bubblegum Bubbles While She Gets Fucked and Given Facial.mp4 (Mode: scene) +Downloading kluplahdafd_Bubblegum Bubbles While She Gets Fucked and Given Facial.mp4 (440.35 MB)... +Processing: Leilani Lei - Mom And Son Share Bed - Fifi Foxx Fantasies.mp4 (Mode: scene) +Downloading Leilani Lei - Mom And Son Share Bed - Fifi Foxx Fantasies.mp4 (63.25 MB)... +Processing: kltufcb0413_Nurse Tied Up and To Give Footjob.mp4 (Mode: scene) +Downloading kltufcb0413_Nurse Tied Up and To Give Footjob.mp4 (264.71 MB)... +Processing: Fifi Foxx - Girls Controlled Scene 2 - XXXMultimedia.mp4 (Mode: scene) +Downloading Fifi Foxx - Girls Controlled Scene 2 - XXXMultimedia.mp4 (363.80 MB)... +Processing: ihibfdhce6c_POV Double handjob Alexis Rain and Fifi Foxx dental asstepsistants mask and gloves.mp4 (Mode: scene) +Downloading ihibfdhce6c_POV Double handjob Alexis Rain and Fifi Foxx dental asstepsistants mask and gloves.mp4 (429.21 MB)... +Processing: ikkvetm23c6_Femdom Daughter Dominates Step Daddy with Shock Collar.mp4 (Mode: scene) +Downloading ikkvetm23c6_Femdom Daughter Dominates Step Daddy with Shock Collar.mp4 (614.62 MB)... +Processing: kmfcttd81ed_DDLG Babes in their diapers are topless for you stepdaddy.mp4 (Mode: scene) +Downloading kmfcttd81ed_DDLG Babes in their diapers are topless for you stepdaddy.mp4 (138.91 MB)... +Processing: kluuctb79dd_Girl Worships Guy's Belly Button.mp4 (Mode: scene) +Downloading kluuctb79dd_Girl Worships Guy's Belly Button.mp4 (80.68 MB)... +Processing: kluudom6455_Hot Blonde Hooker Humiliates You POV.mp4 (Mode: scene) +Downloading kluudom6455_Hot Blonde Hooker Humiliates You POV.mp4 (236.48 MB)... +Processing: klupeivaa23_step Daddy Fucks stepDaughter In Cute Pigtails.mp4 (Mode: scene) +Downloading klupeivaa23_step Daddy Fucks stepDaughter In Cute Pigtails.mp4 (401.83 MB)... +Processing: kluikpk33c1_Fifi Foxx Humping a Pillow and Coming So Hard She Pees.mp4 (Mode: scene) +Downloading kluikpk33c1_Fifi Foxx Humping a Pillow and Coming So Hard She Pees.mp4 (155.25 MB)... +Processing: ikkaoed61bf_Fifi Foxx Teases and gives jerk off instruction from your POV.mp4 (Mode: scene) +Downloading ikkaoed61bf_Fifi Foxx Teases and gives jerk off instruction from your POV.mp4 (213.81 MB)... +Processing: iuovbem3245_Deep throating for a job Fifi Foxx.mp4 (Mode: scene) +Downloading iuovbem3245_Deep throating for a job Fifi Foxx.mp4 (461.33 MB)... +Processing: klhaocoe00e_Bubblegum Bubbles By The Fireplace.mp4 (Mode: scene) +Downloading klhaocoe00e_Bubblegum Bubbles By The Fireplace.mp4 (266.06 MB)... +Processing: kmfccvf4188_MILF step Mom Cathes stepSon Watching Porn And Makes Him Fuck Her Instead.mp4 (Mode: scene) +Downloading kmfccvf4188_MILF step Mom Cathes stepSon Watching Porn And Makes Him Fuck Her Instead.mp4 (290.18 MB)... +Processing: kltueame8e0_Blonde Gives Teacher A Blowjob.mp4 (Mode: scene) +Downloading kltueame8e0_Blonde Gives Teacher A Blowjob.mp4 (143.15 MB)... +Processing: kltitukb545_Hypnotic Threesome With My MILF step Mom and Slut stepSister.mp4 (Mode: scene) +Downloading kltitukb545_Hypnotic Threesome With My MILF step Mom and Slut stepSister.mp4 (532.32 MB)... +Processing: klukuof434b_Amateur Girl Makes Her Tits Bounce For You.mp4 (Mode: scene) +Downloading klukuof434b_Amateur Girl Makes Her Tits Bounce For You.mp4 (115.99 MB)... +Processing: klhuvakc102_Robot Bimbo Striptease and Malfunction.mp4 (Mode: scene) +Downloading klhuvakc102_Robot Bimbo Striptease and Malfunction.mp4 (435.10 MB)... +Processing: kmfcvabb087_Supervillian POV Jerk Off Instruction featuring Fifi Foxx.mp4 (Mode: scene) +Downloading kmfcvabb087_Supervillian POV Jerk Off Instruction featuring Fifi Foxx.mp4 (173.77 MB)... +Processing: kltfpumbb7c_Fifi Foxx Bubblegum Blowing Striptease.mp4 (Mode: scene) +Downloading kltfpumbb7c_Fifi Foxx Bubblegum Blowing Striptease.mp4 (204.87 MB)... +Processing: klhvimf67af_Bitch Gets Fucking While Blowing Bubblegum Bubbles.mp4 (Mode: scene) +Downloading klhvimf67af_Bitch Gets Fucking While Blowing Bubblegum Bubbles.mp4 (466.34 MB)... +Processing: klteftm0db4_Nurse Robot Malfunction Featuring Fifi Foxx.mp4 (Mode: scene) +Downloading klteftm0db4_Nurse Robot Malfunction Featuring Fifi Foxx.mp4 (213.76 MB)... +Processing: ikkaaph0b88_Wet and Messy Pie Fight Fifi Foxx and Whitney Morgan Have a sexy naked Pie Fight.mp4 (Mode: scene) +Downloading ikkaaph0b88_Wet and Messy Pie Fight Fifi Foxx and Whitney Morgan Have a sexy naked Pie Fight.mp4 (583.53 MB)... +Processing: klhpoch1cd6_Blonde step Mommy Makes stepSon Fuck Her As Punishment.mp4 (Mode: scene) +Downloading klhpoch1cd6_Blonde step Mommy Makes stepSon Fuck Her As Punishment.mp4 (423.24 MB)... +Processing: klhtkabc27b_Fifi Foxx Masturbates and Covers Herself in Splosh Smoothie.mp4 (Mode: scene) +Downloading klhtkabc27b_Fifi Foxx Masturbates and Covers Herself in Splosh Smoothie.mp4 (229.69 MB)... +Processing: Smarty Kat 314 - Daddy Its Not Wrong - Cock Ninja Studios.mp4 (Mode: scene) +Downloading Smarty Kat 314 - Daddy Its Not Wrong - Cock Ninja Studios.mp4 (115.51 MB)... +Processing: kltfdef81b9_Blonde Girl Blows Giant Bubble Gum Bubbles.mp4 (Mode: scene) +Downloading kltfdef81b9_Blonde Girl Blows Giant Bubble Gum Bubbles.mp4 (354.02 MB)... +Processing: kltcicbe0ec_step Mom Gets Titfucked By Her stepSon.mp4 (Mode: scene) +Downloading kltcicbe0ec_step Mom Gets Titfucked By Her stepSon.mp4 (311.42 MB)... +Processing: klketom6954_Samantha Hayes and Fifi Foxx Bouncing Boobs at the Gym.mp4 (Mode: scene) +Downloading klketom6954_Samantha Hayes and Fifi Foxx Bouncing Boobs at the Gym.mp4 (151.46 MB)... +Processing: Fifi Foxx, Leilani Lei - Taking Advantage of My Drunk Mom and Sister.mp4 (Mode: scene) +Downloading Fifi Foxx, Leilani Lei - Taking Advantage of My Drunk Mom and Sister.mp4 (189.90 MB)... +Processing: iihcffd4c8c_Taboo threesome step sister and step mom fucked by step son in taboo sex movie.mp4 (Mode: scene) +Downloading iihcffd4c8c_Taboo threesome step sister and step mom fucked by step son in taboo sex movie.mp4 (465.48 MB)... +Processing: kluhudm4124_Eye Crossing Blowjob POV.mp4 (Mode: scene) +Downloading kluhudm4124_Eye Crossing Blowjob POV.mp4 (138.25 MB)... +Processing: The Perfect Love Triangle of a Nuclear Family-(Fifi Foxx, Payton Hall)-{XXXMultimedia}-[Cum Swapping, Cum in Mouth, Double Blowjob, Double Handjob, Full HD Available, HD Available, Riding, Threesome].mp4 (Mode: scene) +Downloading The Perfect Love Triangle of a Nuclear Family-(Fifi Foxx, Payton Hall)-{XXXMultimedia}-[Cum Swapping, Cum in Mouth, Double Blowjob, Double Handjob, Full HD Available, HD Available, Riding, Threesome].mp4 (363.69 MB)... +Processing: kltfhok7b1f_Georgia Peach and Fifi Foxx Weigh In and Measurements.mp4 (Mode: scene) +Downloading kltfhok7b1f_Georgia Peach and Fifi Foxx Weigh In and Measurements.mp4 (145.50 MB)... +Processing: klumomdd3c2_Bound and Facefucked With Facial.mp4 (Mode: scene) +Downloading klumomdd3c2_Bound and Facefucked With Facial.mp4 (227.31 MB)... +Processing: klthlph293e_Mouth Vore Close Up Of Fifi Foxx Eating Gummy Bears.mp4 (Mode: scene) +Downloading klthlph293e_Mouth Vore Close Up Of Fifi Foxx Eating Gummy Bears.mp4 (174.54 MB)... +Processing: Fifi Foxx - Mommy Help Me Sleep - Cock Ninja Studios.mp4 (Mode: scene) +Downloading Fifi Foxx - Mommy Help Me Sleep - Cock Ninja Studios.mp4 (127.92 MB)... +Processing: ichtkoo9c93_Giving a Blowjob While Bound With Rope.mp4 (Mode: scene) +Downloading ichtkoo9c93_Giving a Blowjob While Bound With Rope.mp4 (529.46 MB)... +Processing: kmebeeb3cc0_Looner Gives a Balloon Handjob.mp4 (Mode: scene) +Downloading kmebeeb3cc0_Looner Gives a Balloon Handjob.mp4 (246.72 MB)... +Processing: kmfalfh3b67_Belly Button Play Featuring Fifi Foxx.mp4 (Mode: scene) +Downloading kmfalfh3b67_Belly Button Play Featuring Fifi Foxx.mp4 (71.60 MB)... +Processing: klukhad7767_Slave Girl Sucks Her Master's Cock While Tied Up With Rope.mp4 (Mode: scene) +Downloading klukhad7767_Slave Girl Sucks Her Master's Cock While Tied Up With Rope.mp4 (215.67 MB)... +Processing: klhufmd2e70_Blonde PAWG Impregnation POV Virtual Sex.mp4 (Mode: scene) +Downloading klhufmd2e70_Blonde PAWG Impregnation POV Virtual Sex.mp4 (217.06 MB)... +Processing: kluhvvo2d9c_Fucking While Blowing Up Balloons.mp4 (Mode: scene) +Downloading kluhvvo2d9c_Fucking While Blowing Up Balloons.mp4 (46.36 MB)... +Processing: kltclok624f_MILF step Mom Leilani Lei and stepDaughter Lesbian Experience.mp4 (Mode: scene) +Downloading kltclok624f_MILF step Mom Leilani Lei and stepDaughter Lesbian Experience.mp4 (362.50 MB)... +Processing: Fuck Stepbrother - XNXX COM.mp4 (Mode: scene) +Downloading Fuck Stepbrother - XNXX COM.mp4 (390.48 MB)... +Processing: kluiblv3287_Girl With Rubber Gloves and Shower Cap Gives Condom Blowjob.mp4 (Mode: scene) +Downloading kluiblv3287_Girl With Rubber Gloves and Shower Cap Gives Condom Blowjob.mp4 (317.97 MB)... +Processing: kltodib1928_Fifi Foxx Gets Humiliated For Being Fat by Friends.mp4 (Mode: scene) +Downloading kltodib1928_Fifi Foxx Gets Humiliated For Being Fat by Friends.mp4 (132.69 MB)... +Processing: kmfkmuf7dd0_Gender Transformation; 2 Guys Change Into 2 Girls.mp4 (Mode: scene) +Downloading kmfkmuf7dd0_Gender Transformation; 2 Guys Change Into 2 Girls.mp4 (191.96 MB)... +Processing: Fifi Foxx - My Mom Loves To Watch - CockNinjaStudios.mp4 (Mode: scene) +Downloading Fifi Foxx - My Mom Loves To Watch - CockNinjaStudios.mp4 (154.13 MB)... +Processing: klhhtkb9495_Sexy Nurse Fucks You To Get A Job.mp4 (Mode: scene) +Downloading klhhtkb9495_Sexy Nurse Fucks You To Get A Job.mp4 (382.54 MB)... +Processing: ikmphlh6a92_Fifi Foxx and Nyxon Strip Each Other Sleepover POV.mp4 (Mode: scene) +Downloading ikmphlh6a92_Fifi Foxx and Nyxon Strip Each Other Sleepover POV.mp4 (117.48 MB)... +Processing: kltthufeb1b_Blowing Bubble Gum Bubbles and Balloons While Masturbating.mp4 (Mode: scene) +Downloading kltthufeb1b_Blowing Bubble Gum Bubbles and Balloons While Masturbating.mp4 (339.03 MB)... +Processing: klumleva7a9_Photographer Freezes Girl In Place and Strips Her.mp4 (Mode: scene) +Downloading klumleva7a9_Photographer Freezes Girl In Place and Strips Her.mp4 (312.32 MB)... +Processing: kmeepth3031_Gainer Eats Food Out In Public to Grow Her Belly.mp4 (Mode: scene) +Downloading kmeepth3031_Gainer Eats Food Out In Public to Grow Her Belly.mp4 (76.91 MB)... +Processing: imbciimedb0_Brunette Tied Up and Facefucked By Dom - KIM STROKER.mp4 (Mode: scene) +Downloading imbciimedb0_Brunette Tied Up and Facefucked By Dom - KIM STROKER.mp4 (232.20 MB)... +Processing: kluhkeve044_Teacher Fucks Failing Student.mp4 (Mode: scene) +Downloading kluhkeve044_Teacher Fucks Failing Student.mp4 (207.34 MB)... +Processing: Fifi Foxx, Leilani Lei - Girls Controlled Scene 3 - XXXMultimedia.mp4 (Mode: scene) +Downloading Fifi Foxx, Leilani Lei - Girls Controlled Scene 3 - XXXMultimedia.mp4 (254.49 MB)... +Processing: kluubok76a7_Amateur Facefucked and Spanked.mp4 (Mode: scene) +Downloading kluubok76a7_Amateur Facefucked and Spanked.mp4 (138.45 MB)... +Processing: klumiam2102_36' Balloon Sit to Pop.mp4 (Mode: scene) +Downloading klumiam2102_36' Balloon Sit to Pop.mp4 (238.21 MB)... +Processing: kitoivh9cfb_Blonde chick masturbates while wearing a pink onsie.mp4 (Mode: scene) +Downloading kitoivh9cfb_Blonde chick masturbates while wearing a pink onsie.mp4 (128.25 MB)... +Processing: klkepco1ba8_Whitney Morgan and Fifi Foxx Murga Corporal Punishment.mp4 (Mode: scene) +Downloading klkepco1ba8_Whitney Morgan and Fifi Foxx Murga Corporal Punishment.mp4 (140.77 MB)... +Processing: kluhpmbf6fa_Fifi Foxx Masturbating To Porn.mp4 (Mode: scene) +Downloading kluhpmbf6fa_Fifi Foxx Masturbating To Porn.mp4 (207.56 MB)... +Processing: kmevhko1008_Blonde Fembot Gives Owner A Blowjob.mp4 (Mode: scene) +Downloading kmevhko1008_Blonde Fembot Gives Owner A Blowjob.mp4 (506.93 MB)... +Processing: kmfihov9ae1_Family Strip Poker Game With step Mom, step Brother, and step Sister.mp4 (Mode: scene) +Downloading kmfihov9ae1_Family Strip Poker Game With step Mom, step Brother, and step Sister.mp4 (493.60 MB)... +Processing: The Perfect Step-Mommy-(Fifi Foxx)-{XXXMultimedia}.mp4 (Mode: scene) +Downloading The Perfect Step-Mommy-(Fifi Foxx)-{XXXMultimedia}.mp4 (387.21 MB)... +Processing: kluomtfa0fe_Hot Wife Fucks Lover In Front Of You and Feeds You His Cum.mp4 (Mode: scene) +Downloading kluomtfa0fe_Hot Wife Fucks Lover In Front Of You and Feeds You His Cum.mp4 (527.89 MB)... +Processing: kltbivv998b_Ignore Girlfriend and Get A Free Handjob.mp4 (Mode: scene) +Downloading kltbivv998b_Ignore Girlfriend and Get A Free Handjob.mp4 (322.60 MB)... +Processing: klkeikbcb56_Whitney Morgan and Fifi Foxx Gets Punished With Murga.mp4 (Mode: scene) +Downloading klkeikbcb56_Whitney Morgan and Fifi Foxx Gets Punished With Murga.mp4 (143.91 MB)... +Processing: kluivbf39bf_Nerd Girl With Glasses Gives POV Blowjob.mp4 (Mode: scene) +Downloading kluivbf39bf_Nerd Girl With Glasses Gives POV Blowjob.mp4 (339.36 MB)... +Processing: Fifi Foxx, Little Mina - Girls Controlled Scene 1 - XXXMultimedia. Dad, Daughter and Daughter's friend.mp4 (Mode: scene) +Downloading Fifi Foxx, Little Mina - Girls Controlled Scene 1 - XXXMultimedia. Dad, Daughter and Daughter's friend.mp4 (228.46 MB)... +Processing: kluotaof7ca_Weight Gainer Story of Fifi Foxx.mp4 (Mode: scene) +Downloading kluotaof7ca_Weight Gainer Story of Fifi Foxx.mp4 (475.21 MB)... +Processing: kmfehak41f3_POV Anal First Time Featuring Fifi Foxx.mp4 (Mode: scene) +Downloading kmfehak41f3_POV Anal First Time Featuring Fifi Foxx.mp4 (364.60 MB)... +Processing: kltudcb51ae_PAWG Fifi Foxx Exposes Butt While Cleaning.mp4 (Mode: scene) +Downloading kltudcb51ae_PAWG Fifi Foxx Exposes Butt While Cleaning.mp4 (183.21 MB)... +Processing: kltpbkd1936_POV We Want You To Gain Weight Like Us Big Girls starring Ivy Davenport, Wood, and Fifi Foxx.mp4 (Mode: scene) +Downloading kltpbkd1936_POV We Want You To Gain Weight Like Us Big Girls starring Ivy Davenport, Wood, and Fifi Foxx.mp4 (186.33 MB)... +Processing: klhtbdk042d_Fifi Foxx Sit to Pop on Balloons.mp4 (Mode: scene) +Downloading klhtbdk042d_Fifi Foxx Sit to Pop on Balloons.mp4 (156.85 MB)... +Processing: kmeemihc530_step Mommy Gives stepSon a Condom Blowjob.mp4 (Mode: scene) +Downloading kmeemihc530_step Mommy Gives stepSon a Condom Blowjob.mp4 (295.21 MB)... +Processing: kmevbld50b4_Bubblegum Fetish Blowing Giant Bubbles With Big League Chew.mp4 (Mode: scene) +Downloading kmevbld50b4_Bubblegum Fetish Blowing Giant Bubbles With Big League Chew.mp4 (288.65 MB)... +Processing: kmfmfava80c_Fifi Foxx's Big Ass Doggystyle Pounding.mp4 (Mode: scene) +Downloading kmfmfava80c_Fifi Foxx's Big Ass Doggystyle Pounding.mp4 (323.25 MB)... +Processing: klhteeh80f7_Fifi Foxx Wants To Be Impregnated By Your Cum.mp4 (Mode: scene) +Downloading klhteeh80f7_Fifi Foxx Wants To Be Impregnated By Your Cum.mp4 (197.23 MB)... +Processing: kkcplao53d7_Goth Girl Gives a POV Blowjob.mp4 (Mode: scene) +Downloading kkcplao53d7_Goth Girl Gives a POV Blowjob.mp4 (236.80 MB)... +Processing: kluicub4fdc_Breast Shrinking Transformation Starring Fifi Foxx.mp4 (Mode: scene) +Downloading kluicub4fdc_Breast Shrinking Transformation Starring Fifi Foxx.mp4 (104.33 MB)... +Processing: iuthtlv3b51_Virtual Sex BBW First Time Fifi Foxx.mp4 (Mode: scene) +Downloading iuthtlv3b51_Virtual Sex BBW First Time Fifi Foxx.mp4 (255.88 MB)... +Processing: kmfvtio24ba_Footjob Party By Blonde stepSister and Her Hot Asian Friend Little Mina.mp4 (Mode: scene) +Downloading kmfvtio24ba_Footjob Party By Blonde stepSister and Her Hot Asian Friend Little Mina.mp4 (274.08 MB)... +Processing: kltiddd3dcc_10 Girl Lesbian Orgy Featuring Maxine X, Nadia White, Fifi Foxx, Camille Black and more!.mp4 (Mode: scene) +Downloading kltiddd3dcc_10 Girl Lesbian Orgy Featuring Maxine X, Nadia White, Fifi Foxx, Camille Black and more!.mp4 (1062.30 MB)... +Processing: ihibchm1544_Step mom and sister fucked by her stepson.mp4 (Mode: scene) +Downloading ihibchm1544_Step mom and sister fucked by her stepson.mp4 (435.48 MB)... +Processing: ikfapibabb0_Homewrecker Fifi Fox Blowjob POV.mp4 (Mode: scene) +Downloading ikfapibabb0_Homewrecker Fifi Fox Blowjob POV.mp4 (449.36 MB)... +Processing: kihbebo423a_Belly Button Worship Blowjob.mp4 (Mode: scene) +Downloading kihbebo423a_Belly Button Worship Blowjob.mp4 (360.22 MB)... +Processing: kltopmm9373_BBWs Feed You POV featuring Jane Colburn and Fifi Foxx.mp4 (Mode: scene) +Downloading kltopmm9373_BBWs Feed You POV featuring Jane Colburn and Fifi Foxx.mp4 (156.62 MB)... +Processing: klhakim76a0_Fifi Foxx Giant Balloon Blow to Pop.mp4 (Mode: scene) +Downloading klhakim76a0_Fifi Foxx Giant Balloon Blow to Pop.mp4 (363.33 MB)... +Processing: kmfdcvdc369_Chubby BBW Eating Food While Her Perstepsonal Trainer Alexis Rain Isn't Looking.mp4 (Mode: scene) +Downloading kmfdcvdc369_Chubby BBW Eating Food While Her Perstepsonal Trainer Alexis Rain Isn't Looking.mp4 (259.69 MB)... +Processing: Fifi Foxx, Leilani Lei - Frozen Family - XXXMultimedia.mp4 (Mode: scene) +Downloading Fifi Foxx, Leilani Lei - Frozen Family - XXXMultimedia.mp4 (176.49 MB)... +Processing: iuttbcb2442_Tape Bondage Face Fuck Fifi Foxx.mp4 (Mode: scene) +Downloading iuttbcb2442_Tape Bondage Face Fuck Fifi Foxx.mp4 (256.45 MB)... +Processing: ikfaoab49e7_Taboo Aiden Valetine Fucks Step Sister Fifi Foxx with Step Mom.mp4 (Mode: scene) +Downloading ikfaoab49e7_Taboo Aiden Valetine Fucks Step Sister Fifi Foxx with Step Mom.mp4 (474.24 MB)... +Processing: Fifi Foxx, Leilani Lei - Mom and Sister Mesmerized - XXXMultimedia.mp4 (Mode: scene) +Downloading Fifi Foxx, Leilani Lei - Mom and Sister Mesmerized - XXXMultimedia.mp4 (415.94 MB)... +Processing: kmfiimd972d_Fembot Maid Gives Blowjob and Gets Big Facial.mp4 (Mode: scene) +Downloading kmfiimd972d_Fembot Maid Gives Blowjob and Gets Big Facial.mp4 (297.07 MB)... +Processing: kluidmfbf6e_Minnie Mouse Gets Fucked and Wet and Messy Pies.mp4 (Mode: scene) +Downloading kluidmfbf6e_Minnie Mouse Gets Fucked and Wet and Messy Pies.mp4 (177.64 MB)... +Processing: kluioahe58c_Amateur Blowjob and Cum on Birthday Cake Gets Eaten.mp4 (Mode: scene) +Downloading kluioahe58c_Amateur Blowjob and Cum on Birthday Cake Gets Eaten.mp4 (294.26 MB)... +Processing: kihvvlh9d3d_Fifi Foxx Wants You To Impregnate Her.mp4 (Mode: scene) +Downloading kihvvlh9d3d_Fifi Foxx Wants You To Impregnate Her.mp4 (193.99 MB)... +Processing: klhptebcbee_Girl Frozen Time Stop And Groped.mp4 (Mode: scene) +Downloading klhptebcbee_Girl Frozen Time Stop And Groped.mp4 (213.06 MB)... +Processing: kitoipoba23_Fucking the Maid feat. Fifi Foxx.mp4 (Mode: scene) +Downloading kitoipoba23_Fucking the Maid feat. Fifi Foxx.mp4 (258.30 MB)... +Processing: kltbtah3f02_2 stepSisters Want You to Fuck and Impregnate Them Both_fifi-foxx_and_camille-black.mp4 (Mode: scene) +Downloading kltbtah3f02_2 stepSisters Want You to Fuck and Impregnate Them Both_fifi-foxx_and_camille-black.mp4 (155.92 MB)... +Processing: iihubdb919d_Taboo threesome step mom step sister fucks step brother step son Payton Hall - Fifi Foxx - Aiden Valentine.mp4 (Mode: scene) +Downloading iihubdb919d_Taboo threesome step mom step sister fucks step brother step son Payton Hall - Fifi Foxx - Aiden Valentine.mp4 (397.26 MB)... +Processing: Fifi Foxx & Leilani Lei in Busted! My Mom and Brother Took My Virginity.mp4 (Mode: scene) +Downloading Fifi Foxx & Leilani Lei in Busted! My Mom and Brother Took My Virginity.mp4 (160.83 MB)... +Processing: kkcbpcf7edc_step Mom Gives a Double Footjob With Daughter.mp4 (Mode: scene) +Downloading kkcbpcf7edc_step Mom Gives a Double Footjob With Daughter.mp4 (276.01 MB)... +Processing: kluhetf6012_Amateur Spreads Her Pussy For You.mp4 (Mode: scene) +Downloading kluhetf6012_Amateur Spreads Her Pussy For You.mp4 (139.03 MB)... +Processing: kluihvv1f00_Slut Humiliated With Toilet Swirly and Fucked.mp4 (Mode: scene) +Downloading kluihvv1f00_Slut Humiliated With Toilet Swirly and Fucked.mp4 (284.85 MB)... +Processing: Smarty Kat 314 - Abused Brother Fucked By Sister - Cock Ninja Studios.mp4 (Mode: scene) +Downloading Smarty Kat 314 - Abused Brother Fucked By Sister - Cock Ninja Studios.mp4 (159.28 MB)... +Processing: kltefov0036_Nyxon and Fifi Foxx Are Brainwashed Bimbos Following Orders.mp4 (Mode: scene) +Downloading kltefov0036_Nyxon and Fifi Foxx Are Brainwashed Bimbos Following Orders.mp4 (163.01 MB)... +Processing: klhakhh4486_Fifi Foxx Facelicking and Coating Aiden's Face In Spit.mp4 (Mode: scene) +Downloading klhakhh4486_Fifi Foxx Facelicking and Coating Aiden's Face In Spit.mp4 (238.40 MB)... +Processing: klhokpkdc4a_Blonde Fembot Sucks Dick POV.mp4 (Mode: scene) +Downloading klhokpkdc4a_Blonde Fembot Sucks Dick POV.mp4 (453.10 MB)... +Processing: kluhpahe934_Fifi Foxx Popping Balloons In High Heels.mp4 (Mode: scene) +Downloading kluhpahe934_Fifi Foxx Popping Balloons In High Heels.mp4 (27.82 MB)... +Processing: kmevclb527b_Small Penis Humiliation By 3 Hot Girls.mp4 (Mode: scene) +Downloading kmevclb527b_Small Penis Humiliation By 3 Hot Girls.mp4 (126.18 MB)... +Processing: kluhdmv78a3_Fifi Foxx Makes You Worship Her Ass.mp4 (Mode: scene) +Downloading kluhdmv78a3_Fifi Foxx Makes You Worship Her Ass.mp4 (138.45 MB)... +Processing: kltctbv22c3_Bella Ink And Fifi Foxx Facelicking A Guy.mp4 (Mode: scene) +Downloading kltctbv22c3_Bella Ink And Fifi Foxx Facelicking A Guy.mp4 (103.18 MB)... +Processing: khfaddbbd04_step Brother fucks his stepsister in private.mp4 (Mode: scene) +Downloading khfaddbbd04_step Brother fucks his stepsister in private.mp4 (229.28 MB)... +Processing: Fifi Foxx - Son We Need To Talk - CockNinjaStudios.mp4 (Mode: scene) +Downloading Fifi Foxx - Son We Need To Talk - CockNinjaStudios.mp4 (135.47 MB)... +Processing: kmevhcf54c6_Body Swap Stealing stepMom's Body.mp4 (Mode: scene) +Downloading kmevhcf54c6_Body Swap Stealing stepMom's Body.mp4 (196.30 MB)... +Processing: khlbhlof0a4_Blonde Slut Gets Head Dunked in Toilet While Getting Fucked.mp4 (Mode: scene) +Downloading khlbhlof0a4_Blonde Slut Gets Head Dunked in Toilet While Getting Fucked.mp4 (144.23 MB)... +Processing: iuttabvbce0_Birthday Boy Fucks Step Mom Fifi Foxx POV.mp4 (Mode: scene) +Downloading iuttabvbce0_Birthday Boy Fucks Step Mom Fifi Foxx POV.mp4 (334.07 MB)... +Processing: kluobtb7536_Fembot step Mom Brainwashed To Fuck and Suck stepSon's Cock.mp4 (Mode: scene) +Downloading kluobtb7536_Fembot step Mom Brainwashed To Fuck and Suck stepSon's Cock.mp4 (543.44 MB)... +Processing: khlbfkh25ac_Fifi Foxx gets facefucked hard until she drools.mp4 (Mode: scene) +Downloading khlbfkh25ac_Fifi Foxx gets facefucked hard until she drools.mp4 (278.25 MB)... +Processing: kluievo3c56_Flashing and Peeing In Public.mp4 (Mode: scene) +Downloading kluievo3c56_Flashing and Peeing In Public.mp4 (195.08 MB)... +Processing: klukhddf615_Clown Girl Fucked and Given Facial.mp4 (Mode: scene) +Downloading klukhddf615_Clown Girl Fucked and Given Facial.mp4 (340.24 MB)... +Processing: Fifi Foxx, Payton Hall - Mom, Daughter And Sleepwalking Son Taboo Threesome - XXXMultimedia.mp4 (Mode: scene) +Downloading Fifi Foxx, Payton Hall - Mom, Daughter And Sleepwalking Son Taboo Threesome - XXXMultimedia.mp4 (145.05 MB)... +Processing: klttatb7349_Pie Fight WAM Between Payton Hall and Fifi Foxx.mp4 (Mode: scene) +Downloading klttatb7349_Pie Fight WAM Between Payton Hall and Fifi Foxx.mp4 (326.94 MB)... +Processing: Fifi Foxx - Mom Helps Son With Chronic Masturbation - CockNinjaStudios.mp4 (Mode: scene) +Downloading Fifi Foxx - Mom Helps Son With Chronic Masturbation - CockNinjaStudios.mp4 (116.98 MB)... +Processing: klumvef73e2_step Mom Gives Panty Stealing stepSon a Blowjob and Lets Him Cum in Mouth.mp4 (Mode: scene) +Downloading klumvef73e2_step Mom Gives Panty Stealing stepSon a Blowjob and Lets Him Cum in Mouth.mp4 (290.29 MB)... +Processing: klupcud1830_step Brother Fucks stepSister In Pigtails and Cums on Her Tits.mp4 (Mode: scene) +Downloading klupcud1830_step Brother Fucks stepSister In Pigtails and Cums on Her Tits.mp4 (458.46 MB)... +Processing: khvhvmd087c_Girlfriend Gets Punished By Spanking.mp4 (Mode: scene) +Downloading khvhvmd087c_Girlfriend Gets Punished By Spanking.mp4 (118.70 MB)... +Processing: kltueukdb95_Bubblegum Blowing and Makeout Session.mp4 (Mode: scene) +Downloading kltueukdb95_Bubblegum Blowing and Makeout Session.mp4 (87.29 MB)... +Processing: klupdoh983b_Magic Witch Shrinks You.mp4 (Mode: scene) +Downloading klupdoh983b_Magic Witch Shrinks You.mp4 (157.04 MB)... +Processing: kmfpdphaa8a_Mind Controlled Family Featuring Leilani Lei and Fifi Foxx.mp4 (Mode: scene) +Downloading kmfpdphaa8a_Mind Controlled Family Featuring Leilani Lei and Fifi Foxx.mp4 (301.41 MB)... +Processing: kmfduehbcd6_Fifi Foxx Mouth Fetish.mp4 (Mode: scene) +Downloading kmfduehbcd6_Fifi Foxx Mouth Fetish.mp4 (106.07 MB)... +Processing: klthtem3ff0_Blowing Balloons and Popping Them While Chewing Bubblegum.mp4 (Mode: scene) +Downloading klthtem3ff0_Blowing Balloons and Popping Them While Chewing Bubblegum.mp4 (272.81 MB)... +Processing: klthmtb9a94_Size Comparistepson Between 3 Girls Little Mina, Layla Moore, and Fifi Foxx.mp4 (Mode: scene) +Downloading klthmtb9a94_Size Comparistepson Between 3 Girls Little Mina, Layla Moore, and Fifi Foxx.mp4 (107.00 MB)... +Processing: kluiiad1149_Amateur Babe Showing Off Her Biceps.mp4 (Mode: scene) +Downloading kluiiad1149_Amateur Babe Showing Off Her Biceps.mp4 (158.79 MB)... +Processing: kmfmucd0e7d_Boston Crab Submission Holds Featuring Fifi Foxx.mp4 (Mode: scene) +Downloading kmfmucd0e7d_Boston Crab Submission Holds Featuring Fifi Foxx.mp4 (112.38 MB)... +Processing: klhhkph7934_Topless Girl Next Door Gives You a POV Handjob While On The Phone With Her stepDad.mp4 (Mode: scene) +Downloading klhhkph7934_Topless Girl Next Door Gives You a POV Handjob While On The Phone With Her stepDad.mp4 (434.43 MB)... +Processing: imeaheo73fb_step Brother Eats and Fucks ft KIM STROKER.mp4 (Mode: scene) +Downloading imeaheo73fb_step Brother Eats and Fucks ft KIM STROKER.mp4 (193.68 MB)... +Processing: kluifomc6fb_Fifi Foxx Pee In Her Jeans.mp4 (Mode: scene) +Downloading kluifomc6fb_Fifi Foxx Pee In Her Jeans.mp4 (154.14 MB)... +Processing: klhlbad4e84_Evil Stepmom Gives Tease and Denial Blowjob.mp4 (Mode: scene) +Downloading klhlbad4e84_Evil Stepmom Gives Tease and Denial Blowjob.mp4 (488.89 MB)... +Processing: kltfotv7154_2 BBWs Georgia Peach and Fifi Foxx Give You Jerk Off Instruction.mp4 (Mode: scene) +Downloading kltfotv7154_2 BBWs Georgia Peach and Fifi Foxx Give You Jerk Off Instruction.mp4 (117.70 MB)... +Processing: kmevipd6c46_Fifi Foxx Shows Off Her Stomach and Navel.mp4 (Mode: scene) +Downloading kmevipd6c46_Fifi Foxx Shows Off Her Stomach and Navel.mp4 (186.43 MB)... +Processing: kluiiim66b6_Amateur Thrusting Hips and Spreading Pussy Lips.mp4 (Mode: scene) +Downloading kluiiim66b6_Amateur Thrusting Hips and Spreading Pussy Lips.mp4 (184.87 MB)... +Processing: iiefhuo2a7a_Escort Sister Fucked By Horny Young Step Brother Looking for a cheap hoe Taboo Sex.mp4 (Mode: scene) +Downloading iiefhuo2a7a_Escort Sister Fucked By Horny Young Step Brother Looking for a cheap hoe Taboo Sex.mp4 (481.70 MB)... +Processing: klketukeda9_Fifi Foxx Gives Jerk Off Instruction Using Balloons.mp4 (Mode: scene) +Downloading klketukeda9_Fifi Foxx Gives Jerk Off Instruction Using Balloons.mp4 (105.27 MB)... +Processing: step Sister Brother to Fuck Her - XNXX COM.mp4 (Mode: scene) +Downloading step Sister Brother to Fuck Her - XNXX COM.mp4 (216.12 MB)... +Processing: kmfdikm5ab7_Footjob By Sexy Nurse.mp4 (Mode: scene) +Downloading kmfdikm5ab7_Footjob By Sexy Nurse.mp4 (215.03 MB)... +Processing: Fifi Foxx - Family Gives Into Temptation 2 - CockNinjaStudios.mp4 (Mode: scene) +Downloading Fifi Foxx - Family Gives Into Temptation 2 - CockNinjaStudios.mp4 (166.68 MB)... +Processing: kltohbkfea5_Nurse Extracts Patient's Cum With Blowjob and Oral Creampie in PVC Raincoat.mp4 (Mode: scene) +Downloading kltohbkfea5_Nurse Extracts Patient's Cum With Blowjob and Oral Creampie in PVC Raincoat.mp4 (303.48 MB)... +Processing: Fifi Foxx - Mommy Titty Fuck - Cock Ninja Studios.mp4 (Mode: scene) +Downloading Fifi Foxx - Mommy Titty Fuck - Cock Ninja Studios.mp4 (99.89 MB)... +Processing: kitufobe115_Mommy Wants to Have a b. with You.mp4 (Mode: scene) +Downloading kitufobe115_Mommy Wants to Have a b. with You.mp4 (215.16 MB)... +Processing: klukiuk7f12_Girl Facefucked and Facial With Running Makeup.mp4 (Mode: scene) +Downloading klukiuk7f12_Girl Facefucked and Facial With Running Makeup.mp4 (292.64 MB)... +Processing: kluhapm53b2_Amateurs Fuck In Pile Of Balloons.mp4 (Mode: scene) +Downloading kluhapm53b2_Amateurs Fuck In Pile Of Balloons.mp4 (58.76 MB)... +Processing: kkcimufdfc1_step Mom teaches stepson sex ed using her body.mp4 (Mode: scene) +Downloading kkcimufdfc1_step Mom teaches stepson sex ed using her body.mp4 (214.01 MB)... +Processing: Step-Sister Tempts Virgin Brother with Oral and Anal Pleasure - .mp4 (Mode: scene) +Downloading Step-Sister Tempts Virgin Brother with Oral and Anal Pleasure - .mp4 (154.72 MB)... +Processing: kmevcdmdb37_Foot Tickling featuring Fifi Foxx.mp4 (Mode: scene) +Downloading kmevcdmdb37_Foot Tickling featuring Fifi Foxx.mp4 (98.90 MB)... +Processing: kkciplob159_Two Girls Impregnated By Your Cum POV.mp4 (Mode: scene) +Downloading kkciplob159_Two Girls Impregnated By Your Cum POV.mp4 (155.09 MB)... +Processing: kmeecmk496f_Two Sexy Fembots featuring Bella Ink and Fifi Foxx.mp4 (Mode: scene) +Downloading kmeecmk496f_Two Sexy Fembots featuring Bella Ink and Fifi Foxx.mp4 (154.42 MB)... +Processing: kmflaida407_feeding Fifi Foxx.mp4 (Mode: scene) +Downloading kmflaida407_feeding Fifi Foxx.mp4 (192.12 MB)... +Processing: klupakk9acd_MILF stepMom Wants Impregnation POV.mp4 (Mode: scene) +Downloading klupakk9acd_MILF stepMom Wants Impregnation POV.mp4 (262.34 MB)... +Processing: klhombdad16_stepMom Put Into a Hypno Trace and Fucked POV Virtual Sex.mp4 (Mode: scene) +Downloading klhombdad16_stepMom Put Into a Hypno Trace and Fucked POV Virtual Sex.mp4 (166.70 MB)... +Processing: klhpimf171e_POV Humiliation By Fifi Foxx Because Of Your Tiny Cock.mp4 (Mode: scene) +Downloading klhpimf171e_POV Humiliation By Fifi Foxx Because Of Your Tiny Cock.mp4 (148.07 MB)... +Processing: kluidfbc297_Smoking Couple and Makeout Session.mp4 (Mode: scene) +Downloading kluidfbc297_Smoking Couple and Makeout Session.mp4 (219.52 MB)... +Processing: step Brother Fucks Sister with Magic Remote - XNXX COM.mp4 (Mode: scene) +Downloading step Brother Fucks Sister with Magic Remote - XNXX COM.mp4 (282.02 MB)... +Processing: kluplova78f_Xray Glasses Lets Guy Peep Through stepSister's Clothes.mp4 (Mode: scene) +Downloading kluplova78f_Xray Glasses Lets Guy Peep Through stepSister's Clothes.mp4 (224.75 MB)... +Processing: kluhfkkd26f_Amateur Licks Cum Off Her Thong.mp4 (Mode: scene) +Downloading kluhfkkd26f_Amateur Licks Cum Off Her Thong.mp4 (224.60 MB)... +Processing: kltctcv317c_Jerk Off Instruction and Fifi Foxx Licks Her Lollipop.mp4 (Mode: scene) +Downloading kltctcv317c_Jerk Off Instruction and Fifi Foxx Licks Her Lollipop.mp4 (195.41 MB)... +Processing: kluikum2f00_Giantess Stomping Around Bedroom.mp4 (Mode: scene) +Downloading kluikum2f00_Giantess Stomping Around Bedroom.mp4 (60.21 MB)... +Processing: Fifi Foxx - Girls Controlled Scene 4 - XXXMultimedia.mp4 (Mode: scene) +Downloading Fifi Foxx - Girls Controlled Scene 4 - XXXMultimedia.mp4 (297.66 MB)... +Processing: kmfpvmk3609_Fembot Gives Jerk Off Instruction While Topless.mp4 (Mode: scene) +Downloading kmfpvmk3609_Fembot Gives Jerk Off Instruction While Topless.mp4 (106.31 MB)... +Processing: kmeaifv4845_BBW Gainer Shows Off Her Big Belly.mp4 (Mode: scene) +Downloading kmeaifv4845_BBW Gainer Shows Off Her Big Belly.mp4 (251.33 MB)... +Processing: kltcioma10d_Whitney Morgan and Fifi Foxx Freeze Each Other With Freeze Guns.mp4 (Mode: scene) +Downloading kltcioma10d_Whitney Morgan and Fifi Foxx Freeze Each Other With Freeze Guns.mp4 (181.47 MB)... +Processing: kltvfpd3b8d_Fifi Foxx Nurse Jerk Off Instruction.mp4 (Mode: scene) +Downloading kltvfpd3b8d_Fifi Foxx Nurse Jerk Off Instruction.mp4 (111.22 MB)... +Processing: kluhmtb37a2_POV Assjob Starring Fifi Foxx.mp4 (Mode: scene) +Downloading kluhmtb37a2_POV Assjob Starring Fifi Foxx.mp4 (37.54 MB)... +Processing: Cougar Mom Takes Charge in Doggystyle Creampie Date Night - Jizz.mp4 (Mode: scene) +Downloading Cougar Mom Takes Charge in Doggystyle Creampie Date Night - Jizz.mp4 (151.36 MB)... +Processing: iuttltfa35f_Taboo Stood Up Fifi Foxx Fucks Step Brother Aiden.mp4 (Mode: scene) +Downloading iuttltfa35f_Taboo Stood Up Fifi Foxx Fucks Step Brother Aiden.mp4 (192.79 MB)... +Processing: iutmofd5157_Impregnation Step Mom Fifi Foxx and Lyla Aunt POV.mp4 (Mode: scene) +Downloading iutmofd5157_Impregnation Step Mom Fifi Foxx and Lyla Aunt POV.mp4 (279.16 MB)... +Processing: kkcidfmf0cb_Blonde Secretary Gives The Boss A Blowjob.mp4 (Mode: scene) +Downloading kkcidfmf0cb_Blonde Secretary Gives The Boss A Blowjob.mp4 (428.37 MB)... +Processing: kltuoam9695_Fucked In A Raincoat featuring Fifi Foxx.mp4 (Mode: scene) +Downloading kltuoam9695_Fucked In A Raincoat featuring Fifi Foxx.mp4 (242.83 MB)... +Processing: klupfhk31fe_Giantess Growth potion Starring Fifi Foxx.mp4 (Mode: scene) +Downloading klupfhk31fe_Giantess Growth potion Starring Fifi Foxx.mp4 (217.70 MB)... +Processing: imbcpfmb24b_KIM STROKER is in Trouble.mp4 (Mode: scene) +Downloading imbcpfmb24b_KIM STROKER is in Trouble.mp4 (439.67 MB)... +Processing: hlumfmd48c9_stepsister secretly wants to fuck her fifi foxx aiden valentine.mp4 (Mode: scene) +Downloading hlumfmd48c9_stepsister secretly wants to fuck her fifi foxx aiden valentine.mp4 (64.31 MB)... +Processing: ibmmaev85f2_step Mommy Fucks stepSon Because He's Sad feat. Fefe Yinka.mp4 (Mode: scene) +Downloading ibmmaev85f2_step Mommy Fucks stepSon Because He's Sad feat. Fefe Yinka.mp4 (287.13 MB)... +Processing: klhpueo1694_Fembot Under Your Control; What Would You DO With Her¿.mp4 (Mode: scene) +Downloading klhpueo1694_Fembot Under Your Control; What Would You DO With Her¿.mp4 (380.11 MB)... +Processing: kltpaub6269_Pee Desperation and Wetting Jeans By Fifi Foxx.mp4 (Mode: scene) +Downloading kltpaub6269_Pee Desperation and Wetting Jeans By Fifi Foxx.mp4 (179.77 MB)... +Processing: kltbcioe23a_4 Hot Girls Humiliate Fifi Foxx.mp4 (Mode: scene) +Downloading kltbcioe23a_4 Hot Girls Humiliate Fifi Foxx.mp4 (148.19 MB)... +Processing: kmflakd9371_Brainwashed Fembot Gives You A Handjob.mp4 (Mode: scene) +Downloading kmflakd9371_Brainwashed Fembot Gives You A Handjob.mp4 (300.80 MB)... +Processing: ikfafmme3f8_2 Harley Quinn Clones Give Double POV Handjob.mp4 (Mode: scene) +Downloading ikfafmme3f8_2 Harley Quinn Clones Give Double POV Handjob.mp4 (412.99 MB)... +Processing: kmfdmlm8b2f_Hair Fetish Featuring Fifi Foxx.mp4 (Mode: scene) +Downloading kmfdmlm8b2f_Hair Fetish Featuring Fifi Foxx.mp4 (193.81 MB)... +Processing: klhumhv0907_Tied Up Maid Gets a Big Facial From Aiden Valentine.mp4 (Mode: scene) +Downloading klhumhv0907_Tied Up Maid Gets a Big Facial From Aiden Valentine.mp4 (203.39 MB)... +Processing: kluouvo95d9_Blonde Girl Fifi Foxx Weight Gain.mp4 (Mode: scene) +Downloading kluouvo95d9_Blonde Girl Fifi Foxx Weight Gain.mp4 (149.40 MB)... +Processing: kltboio7dd0_Facesitting step Mom and step Sister Knock Out step Son.mp4 (Mode: scene) +Downloading kltboio7dd0_Facesitting step Mom and step Sister Knock Out step Son.mp4 (165.83 MB)... +Processing: klhhiod1822_Blonde Chick Give You a POV Blowjob in Lingerie.mp4 (Mode: scene) +Downloading klhhiod1822_Blonde Chick Give You a POV Blowjob in Lingerie.mp4 (383.84 MB)... +Processing: iifohav4b7a_Bound up and facefucked hard Detective in black lingerie face fucked by suspect and given huge facial cumshot.mp4 (Mode: scene) +Downloading iifohav4b7a_Bound up and facefucked hard Detective in black lingerie face fucked by suspect and given huge facial cumshot.mp4 (889.40 MB)... +Processing: kluiilf47b9_Extreme Throat Fucking With a Dildo.mp4 (Mode: scene) +Downloading kluiilf47b9_Extreme Throat Fucking With a Dildo.mp4 (223.20 MB)... +Processing: kmfhbeo7498_2 Nurses Give Their Patient a Double Handjob.mp4 (Mode: scene) +Downloading kmfhbeo7498_2 Nurses Give Their Patient a Double Handjob.mp4 (273.77 MB)... +Processing: kltabhdd0c8_Fifi Foxx Feeder Fee To Grow Her Big Belly featuring Ivy Davenport and Wood BBW.mp4 (Mode: scene) +Downloading kltabhdd0c8_Fifi Foxx Feeder Fee To Grow Her Big Belly featuring Ivy Davenport and Wood BBW.mp4 (185.64 MB)... +Processing: Fifi Foxx, Payton Hall - Family Night Foot Fetish Confessions - XXXMultimedia. Son gets a double footjob from Mom and Sister.mp4 (Mode: scene) +Downloading Fifi Foxx, Payton Hall - Family Night Foot Fetish Confessions - XXXMultimedia. Son gets a double footjob from Mom and Sister.mp4 (83.66 MB)... +Processing: kluhvthc6f1_Amateur Blowjob With Double Cumshot.mp4 (Mode: scene) +Downloading kluhvthc6f1_Amateur Blowjob With Double Cumshot.mp4 (117.30 MB)... +Processing: The Viagra Mix-up - Step-Mom & Step-Sister Tag-Team You-(Fifi Foxx, Payton Hall)-{XXXMultimedia}-[Full HD Available, MILF (30+), Missionary, Riding, Virtual Sex, taboo].mp4 (Mode: scene) +Downloading The Viagra Mix-up - Step-Mom & Step-Sister Tag-Team You-(Fifi Foxx, Payton Hall)-{XXXMultimedia}-[Full HD Available, MILF (30+), Missionary, Riding, Virtual Sex, taboo].mp4 (193.70 MB)... +Processing: kltfkcm05e6_Nurse Fifi Foxx Gives POV Condom Blowjob.mp4 (Mode: scene) +Downloading kltfkcm05e6_Nurse Fifi Foxx Gives POV Condom Blowjob.mp4 (332.78 MB)... +Processing: kmfhlmh8fac_2 Fembots Obey Orders and Strip.mp4 (Mode: scene) +Downloading kmfhlmh8fac_2 Fembots Obey Orders and Strip.mp4 (194.86 MB)... +Processing: kltudava17a_Blowjob Girl in PVC Raincoat.mp4 (Mode: scene) +Downloading kltudava17a_Blowjob Girl in PVC Raincoat.mp4 (222.45 MB)... +Processing: kluimhf8885_Mommy Makes You Jerk Off To Porn Magazine.mp4 (Mode: scene) +Downloading kluimhf8885_Mommy Makes You Jerk Off To Porn Magazine.mp4 (168.91 MB)... +Processing: ikkalhde025_dentist bondage blowjob.mp4 (Mode: scene) +Downloading ikkalhde025_dentist bondage blowjob.mp4 (941.12 MB)... +Processing: imcavib9338_Excited to see you home, she wants you to forget the condom this time.mp4 (Mode: scene) +Downloading imcavib9338_Excited to see you home, she wants you to forget the condom this time.mp4 (192.80 MB)... +Processing: kluivkkaef8_Brunette Flashing Tits and Ass Out In Public.mp4 (Mode: scene) +Downloading kluivkkaef8_Brunette Flashing Tits and Ass Out In Public.mp4 (194.24 MB)... +Processing: kluhlhv8d5a_Amateur Gives POV Blowjob.mp4 (Mode: scene) +Downloading kluhlhv8d5a_Amateur Gives POV Blowjob.mp4 (54.53 MB)... +Processing: kluivim6ddb_Brunette In High Heels Face Fucked and Cum in Mouth.mp4 (Mode: scene) +Downloading kluivim6ddb_Brunette In High Heels Face Fucked and Cum in Mouth.mp4 (211.99 MB)... +Processing: iihlaimb879_step Sister fucks stepbrother - blackmail by little stepbrother and fucks him to shut him up - Fifi Foxx.mp4 (Mode: scene) +Downloading iihlaimb879_step Sister fucks stepbrother - blackmail by little stepbrother and fucks him to shut him up - Fifi Foxx.mp4 (110.69 MB)... +Processing: Daughter deepthroats her Dad. Fifi Foxx in Daddy, Say Yes, Just This One Time.mp4 (Mode: scene) +Downloading Daughter deepthroats her Dad. Fifi Foxx in Daddy, Say Yes, Just This One Time.mp4 (135.39 MB)... +Processing: ikmumvfec30_Fifi Foxx and Constance Remote Controlled.mp4 (Mode: scene) +Downloading ikmumvfec30_Fifi Foxx and Constance Remote Controlled.mp4 (206.15 MB)... +Processing: klttuhmd4bc_First Time Anal With Fifi Foxx In A step Fantasy.mp4 (Mode: scene) +Downloading klttuhmd4bc_First Time Anal With Fifi Foxx In A step Fantasy.mp4 (364.24 MB)... +Processing: ikmuvtv6a3e_Fifi Fox Frozen Selfie Topless.mp4 (Mode: scene) +Downloading ikmuvtv6a3e_Fifi Fox Frozen Selfie Topless.mp4 (207.07 MB)... +Processing: kmebdtb28c3_Looner Humps Balloons to Masturbate.mp4 (Mode: scene) +Downloading kmebdtb28c3_Looner Humps Balloons to Masturbate.mp4 (116.59 MB)... +Processing: Fifi Foxx - Insecure Mom Fucked By Son - Cock Ninja Studios.mp4 (Mode: scene) +Downloading Fifi Foxx - Insecure Mom Fucked By Son - Cock Ninja Studios.mp4 (120.08 MB)... +Processing: kmeleodf12c_Gainer Eats Tons Of Food feat Fifi Foxx.mp4 (Mode: scene) +Downloading kmeleodf12c_Gainer Eats Tons Of Food feat Fifi Foxx.mp4 (618.13 MB)... +Processing: kmfpbvh1d26_2 Fat Girls Belly Fetish.mp4 (Mode: scene) +Downloading kmfpbvh1d26_2 Fat Girls Belly Fetish.mp4 (182.34 MB)... +Processing: kltpihva262_d. step Mom and stepSister Ride Your Cock POV.mp4 (Mode: scene) +Downloading kltpihva262_d. step Mom and stepSister Ride Your Cock POV.mp4 (228.56 MB)... +Processing: Fifi Foxx - Sex Addict Sister Seduced By Brother - CockNinjaStudios.mp4 (Mode: scene) +Downloading Fifi Foxx - Sex Addict Sister Seduced By Brother - CockNinjaStudios.mp4 (92.01 MB)... +Processing: kmfkkevc0eb_Fifi Foxx Weight Gain Progression.mp4 (Mode: scene) +Downloading kmfkkevc0eb_Fifi Foxx Weight Gain Progression.mp4 (213.77 MB)... +Processing: Fifi Foxx - Taboo Skype Mommy Blackmailed By Son - CockNinjaStudios.mp4 (Mode: scene) +Downloading Fifi Foxx - Taboo Skype Mommy Blackmailed By Son - CockNinjaStudios.mp4 (153.14 MB)... +Processing: kltbdmh3fad_Feeding Fifi Foxx To Grow Her Belly.mp4 (Mode: scene) +Downloading kltbdmh3fad_Feeding Fifi Foxx To Grow Her Belly.mp4 (183.15 MB)... +Processing: klhoodoc394_step Mommy Tied Up With Rope Tricked Into Sucking Off stepSon.mp4 (Mode: scene) +Downloading klhoodoc394_step Mommy Tied Up With Rope Tricked Into Sucking Off stepSon.mp4 (323.11 MB)... +Processing: kmeetib6e75_Girl Bound With Handcuffs Sucks Cock to Escape.mp4 (Mode: scene) +Downloading kmeetib6e75_Girl Bound With Handcuffs Sucks Cock to Escape.mp4 (607.37 MB)... +Processing: Fifi Foxx - Mom Makes It Right - Cock Ninja Studios.mp4 (Mode: scene) +Downloading Fifi Foxx - Mom Makes It Right - Cock Ninja Studios.mp4 (111.51 MB)... +Processing: Fifi Fox fucking her step-brother - XNXX COM.mp4 (Mode: scene) +Downloading Fifi Fox fucking her step-brother - XNXX COM.mp4 (376.34 MB)... +Processing: klhvihb4189_Bitch Gags Herself With Duct Tape For You.mp4 (Mode: scene) +Downloading klhvihb4189_Bitch Gags Herself With Duct Tape For You.mp4 (129.28 MB)... +Processing: klhudok6901_step Mom Gets Entranced By Mind Device and Fucks.mp4 (Mode: scene) +Downloading klhudok6901_step Mom Gets Entranced By Mind Device and Fucks.mp4 (431.10 MB)... +Processing: klkeffh7c0e_Blonde Girl With Panty Liner Fetish.mp4 (Mode: scene) +Downloading klkeffh7c0e_Blonde Girl With Panty Liner Fetish.mp4 (262.14 MB)... +Processing: kluktub911d_Girl Flashing Her Tits and Shaved Pussy in Public.mp4 (Mode: scene) +Downloading kluktub911d_Girl Flashing Her Tits and Shaved Pussy in Public.mp4 (144.33 MB)... +Processing: iefhbeobdc7_Fifi Foxx gets facefucked hard until she drools.mp4 (Mode: scene) +Downloading iefhbeobdc7_Fifi Foxx gets facefucked hard until she drools.mp4 (280.65 MB)... +Processing: kltdkofb3be_Fifi Foxx; I am Your Tickling Slave.mp4 (Mode: scene) +Downloading kltdkofb3be_Fifi Foxx; I am Your Tickling Slave.mp4 (231.65 MB)... +Processing: klukkmke7ae_Girl Fucked and Cum in Her Belly Button.mp4 (Mode: scene) +Downloading klukkmke7ae_Girl Fucked and Cum in Her Belly Button.mp4 (162.07 MB)... +Processing: kluioio0b9e_Brunette Gives POV Blowjob and Eats Cum on Cake.mp4 (Mode: scene) +Downloading kluioio0b9e_Brunette Gives POV Blowjob and Eats Cum on Cake.mp4 (237.15 MB)... +Processing: kluikif8d95_Amateur Girl Pillow Humping To Cum.mp4 (Mode: scene) +Downloading kluikif8d95_Amateur Girl Pillow Humping To Cum.mp4 (208.92 MB)... +Processing: kluhlkd057f_POV Humiliation By Amateur Girl.mp4 (Mode: scene) +Downloading kluhlkd057f_POV Humiliation By Amateur Girl.mp4 (69.14 MB)... +Processing: kluhvbk489a_Fucking In Giant Pile Of Balloons.mp4 (Mode: scene) +Downloading kluhvbk489a_Fucking In Giant Pile Of Balloons.mp4 (226.97 MB)... +Processing: ibmmbfve813_step Dad Brainwashes stepDaughter and Her Friend Then Fucks Them Both feat. Little Mina and Fefe Yinka.mp4 (Mode: scene) +Downloading ibmmbfve813_step Dad Brainwashes stepDaughter and Her Friend Then Fucks Them Both feat. Little Mina and Fefe Yinka.mp4 (433.83 MB)... +Processing: kmehbpbbb55_Fifi Foxx Tied Up Giving A BJ.mp4 (Mode: scene) +Downloading kmehbpbbb55_Fifi Foxx Tied Up Giving A BJ.mp4 (112.48 MB)... +Processing: iiatpuoc333_step Mom and stepsis fucked after being mesmerized by magic device taboo.mp4 (Mode: scene) +Downloading iiatpuoc333_step Mom and stepsis fucked after being mesmerized by magic device taboo.mp4 (483.30 MB)... +Processing: ikkvltb580f_hot lesbians making out in hot tub.mp4 (Mode: scene) +Downloading ikkvltb580f_hot lesbians making out in hot tub.mp4 (29.78 MB)... +Processing: ikhueedbb60_virtual sex stepmom pov fifi foxx.mp4 (Mode: scene) +Downloading ikhueedbb60_virtual sex stepmom pov fifi foxx.mp4 (221.85 MB)... +Processing: kkcbtko11b2_Tied Up and to Suck Cock.mp4 (Mode: scene) +Downloading kkcbtko11b2_Tied Up and to Suck Cock.mp4 (341.71 MB)... +Processing: kltomhme754_Jerk Off Instruction To My Beautiful Eyes starring Fifi Foxx.mp4 (Mode: scene) +Downloading kltomhme754_Jerk Off Instruction To My Beautiful Eyes starring Fifi Foxx.mp4 (103.47 MB)... +Processing: kmfbuem5f90_Virgin Blonde Wants You To Take Her Virginity POV.mp4 (Mode: scene) +Downloading kmfbuem5f90_Virgin Blonde Wants You To Take Her Virginity POV.mp4 (464.07 MB)... +Processing: kitokpfe81f_Blond Nerd gets Transformed into Hot Babe.mp4 (Mode: scene) +Downloading kitokpfe81f_Blond Nerd gets Transformed into Hot Babe.mp4 (288.23 MB)... +Processing: ikkvcib2470_Suprise Threesome Pantyhose Foot Job with step Sister and Mom.mp4 (Mode: scene) +Downloading ikkvcib2470_Suprise Threesome Pantyhose Foot Job with step Sister and Mom.mp4 (112.72 MB)... +Processing: kltuvfo17cd_BBW Belly Play featuring Fifi Foxx and Curvy Quinn.mp4 (Mode: scene) +Downloading kltuvfo17cd_BBW Belly Play featuring Fifi Foxx and Curvy Quinn.mp4 (121.51 MB)... +Processing: khlmkeo5c4d_Brunette chick strips and gives a handjob.mp4 (Mode: scene) +Downloading khlmkeo5c4d_Brunette chick strips and gives a handjob.mp4 (281.48 MB)... +Processing: klhtlpka37d_Blonde Bitch Blowing Hubba Bubba Bubble Gum.mp4 (Mode: scene) +Downloading klhtlpka37d_Blonde Bitch Blowing Hubba Bubba Bubble Gum.mp4 (204.21 MB)... +Processing: klumhfd679d_Roommate Gets Brainwashed Into Doing Striptease.mp4 (Mode: scene) +Downloading klumhfd679d_Roommate Gets Brainwashed Into Doing Striptease.mp4 (270.98 MB)... +Processing: klhtiikb0e3_Vanessa Davis and Fifi Foxx Compare Weight Gain and Size.mp4 (Mode: scene) +Downloading klhtiikb0e3_Vanessa Davis and Fifi Foxx Compare Weight Gain and Size.mp4 (143.68 MB)... +Processing: Akira Shell - Siblings Switch Bodies - Sister Gets Revenge on Perverted Brother - Fifi Foxx Fantasies.mp4 (Mode: scene) +Downloading Akira Shell - Siblings Switch Bodies - Sister Gets Revenge on Perverted Brother - Fifi Foxx Fantasies.mp4 (145.66 MB)... +Processing: kmfkhumad99_Pee Desperation On Her Way Home From Work.mp4 (Mode: scene) +Downloading kmfkhumad99_Pee Desperation On Her Way Home From Work.mp4 (133.13 MB)... +Processing: kltedivd13d_Vore stepSisters Starring Nyxon and Fifi Foxx.mp4 (Mode: scene) +Downloading kltedivd13d_Vore stepSisters Starring Nyxon and Fifi Foxx.mp4 (186.36 MB)... +Processing: khvhdtf015e_Fifi Foxx arrested by undercover cop and sucks cock.mp4 (Mode: scene) +Downloading khvhdtf015e_Fifi Foxx arrested by undercover cop and sucks cock.mp4 (197.31 MB)... +Processing: khlchmmf63c_Fifi Foxx gives JOI as your kitty.mp4 (Mode: scene) +Downloading khlchmmf63c_Fifi Foxx gives JOI as your kitty.mp4 (98.21 MB)... +Processing: klhtptk3e37_Fifi Foxx Blowing Green Bubblegum Bubbles.mp4 (Mode: scene) +Downloading klhtptk3e37_Fifi Foxx Blowing Green Bubblegum Bubbles.mp4 (222.06 MB)... +Processing: epmmpv79cc_A transformation dream blowjob by hot young blond with big tits.mp4 (Mode: scene) +Downloading epmmpv79cc_A transformation dream blowjob by hot young blond with big tits.mp4 (38.02 MB)... +Processing: Fifi Foxx - Mom Needs Help Cumming - CockNinjaStudios.mp4 (Mode: scene) +Downloading Fifi Foxx - Mom Needs Help Cumming - CockNinjaStudios.mp4 (169.43 MB)... +Processing: kkcpivk8603_Blonde Student Tied Up Blowjob.mp4 (Mode: scene) +Downloading kkcpivk8603_Blonde Student Tied Up Blowjob.mp4 (288.19 MB)... +Processing: kltvfofb5b3_Would You Be Our Perstepsonal Feeder¿ Starring Ivy Davenport, Wood, and Fifi Foxx.mp4 (Mode: scene) +Downloading kltvfofb5b3_Would You Be Our Perstepsonal Feeder¿ Starring Ivy Davenport, Wood, and Fifi Foxx.mp4 (103.54 MB)... +Processing: kluudov9bcd_Robot Fetish Starring Fifi Foxx.mp4 (Mode: scene) +Downloading kluudov9bcd_Robot Fetish Starring Fifi Foxx.mp4 (295.52 MB)... +Processing: iuthkod1977_Taboo Airplane Blowjob Step Sister Fifi Foxx.mp4 (Mode: scene) +Downloading iuthkod1977_Taboo Airplane Blowjob Step Sister Fifi Foxx.mp4 (325.82 MB)... +Processing: klhtpav069d_Fifi Foxx Fat Humiliation by Her Friend.mp4 (Mode: scene) +Downloading klhtpav069d_Fifi Foxx Fat Humiliation by Her Friend.mp4 (151.23 MB)... +Processing: klukklb5c87_Girl In Bright Pink Afro Wig Fucked From Behind.mp4 (Mode: scene) +Downloading klukklb5c87_Girl In Bright Pink Afro Wig Fucked From Behind.mp4 (291.60 MB)... +Processing: ikpfmpk7c64_Fifi Foxx and Nyxon Strip to Fight over Promotion.mp4 (Mode: scene) +Downloading ikpfmpk7c64_Fifi Foxx and Nyxon Strip to Fight over Promotion.mp4 (151.17 MB)... +Processing: kltuvdb5924_2 BBWs Feeder Feedee Stuffing Their Big Belly.mp4 (Mode: scene) +Downloading kltuvdb5924_2 BBWs Feeder Feedee Stuffing Their Big Belly.mp4 (144.95 MB)... +Processing: Fifi Foxx - My Mom Is My Best Friend - CockNinjaStudios.mp4 (Mode: scene) +Downloading Fifi Foxx - My Mom Is My Best Friend - CockNinjaStudios.mp4 (135.28 MB)... +Processing: kmfaluf9b7b_Mouth Tour With Fifi Foxx.mp4 (Mode: scene) +Downloading kmfaluf9b7b_Mouth Tour With Fifi Foxx.mp4 (72.77 MB)... +Processing: kmfipld0f39_Turning My step Son's Girlfriend into a Brainwashed Bimbo.mp4 (Mode: scene) +Downloading kmfipld0f39_Turning My step Son's Girlfriend into a Brainwashed Bimbo.mp4 (220.20 MB)... +Processing: klhhhib67c2_Topless Blonde Babe Sit To Pop Balloons.mp4 (Mode: scene) +Downloading klhhhib67c2_Topless Blonde Babe Sit To Pop Balloons.mp4 (178.47 MB)... +Processing: kmfdlab1494_Blowing Bubblegum Bubbles While Giving Handjob.mp4 (Mode: scene) +Downloading kmfdlab1494_Blowing Bubblegum Bubbles While Giving Handjob.mp4 (281.45 MB)... +Processing: iuttddd937e_Handjob Fifi Foxx Against a Wall.mp4 (Mode: scene) +Downloading iuttddd937e_Handjob Fifi Foxx Against a Wall.mp4 (215.14 MB)... +Processing: kmekdtm07f3_Bi Humiliation by Hot Brunette.mp4 (Mode: scene) +Downloading kmekdtm07f3_Bi Humiliation by Hot Brunette.mp4 (100.72 MB)... +Processing: kkciedf7b57_stepSister learns to give a blowjob after.mp4 (Mode: scene) +Downloading kkciedf7b57_stepSister learns to give a blowjob after.mp4 (224.73 MB)... +Processing: iidbhuv47ab_Double Blowjob POV From Two Hot Young Homewreckers Little Mina and Fifi Foxx.mp4 (Mode: scene) +Downloading iidbhuv47ab_Double Blowjob POV From Two Hot Young Homewreckers Little Mina and Fifi Foxx.mp4 (281.84 MB)... +Processing: klumtcv0f3d_Scientist Gender Transformation Experiment.mp4 (Mode: scene) +Downloading klumtcv0f3d_Scientist Gender Transformation Experiment.mp4 (298.97 MB)... +Processing: klkeuvd9ba1_step Mommy Begs For A Facial.mp4 (Mode: scene) +Downloading klkeuvd9ba1_step Mommy Begs For A Facial.mp4 (208.97 MB)... +Processing: Mind Control Slave Fifi Foxx Gets Brainwashing Session and Fucke.mp4 (Mode: scene) +Downloading Mind Control Slave Fifi Foxx Gets Brainwashing Session and Fucke.mp4 (603.98 MB)... +Processing: kltcmid92b8_Fifi Foxx Recieves Orgasm By Hitachi Magic Wand From Doctor Leilani Lei.mp4 (Mode: scene) +Downloading kltcmid92b8_Fifi Foxx Recieves Orgasm By Hitachi Magic Wand From Doctor Leilani Lei.mp4 (202.59 MB)... +Processing: iktfblk323e_Taboo family threesome - frozen fuck dolls.mp4 (Mode: scene) +Downloading iktfblk323e_Taboo family threesome - frozen fuck dolls.mp4 (423.21 MB)... +Processing: Itty Bitty Pussy, Fifi Foxx - Mother Helps Father Fuck Their Daughter - Cock Ninja Studios.mp4 (Mode: scene) +Downloading Itty Bitty Pussy, Fifi Foxx - Mother Helps Father Fuck Their Daughter - Cock Ninja Studios.mp4 (118.51 MB)... +Processing: iuolbifbfb3_Footjob with Step Sister Kim Stroker and Leilani Lei.mp4 (Mode: scene) +Downloading iuolbifbfb3_Footjob with Step Sister Kim Stroker and Leilani Lei.mp4 (505.48 MB)... +Processing: ikfaopdfb88_Escort Step Sister Fifi Foxx.mp4 (Mode: scene) +Downloading ikfaopdfb88_Escort Step Sister Fifi Foxx.mp4 (484.33 MB)... +Processing: klkekbv0d54_Harley Quinn Masturbation Cosplay.mp4 (Mode: scene) +Downloading klkekbv0d54_Harley Quinn Masturbation Cosplay.mp4 (297.97 MB)... +Processing: klhpivb4b7a_Fifi Foxx Bubblegum Bubbles With Hubba Bubba.mp4 (Mode: scene) +Downloading klhpivb4b7a_Fifi Foxx Bubblegum Bubbles With Hubba Bubba.mp4 (142.64 MB)... +Processing: kmeefub56c7_Gender Transformation; Latin Babe Makes Out With Blonde.mp4 (Mode: scene) +Downloading kmeefub56c7_Gender Transformation; Latin Babe Makes Out With Blonde.mp4 (183.05 MB)... +Processing: kmfmkaveb32_Belly Button Worship, Blowjob, and Cum on Stomach.mp4 (Mode: scene) +Downloading kmfmkaveb32_Belly Button Worship, Blowjob, and Cum on Stomach.mp4 (258.50 MB)... +Processing: kluicuv3a90_step Mom Fucks stepSon on Pile on Dirty Magazines.mp4 (Mode: scene) +Downloading kluicuv3a90_step Mom Fucks stepSon on Pile on Dirty Magazines.mp4 (342.62 MB)... +Processing: kltbtebe1ef_Whitney Morgan and Fifi Foxx Worship Belly Buttons.mp4 (Mode: scene) +Downloading kltbtebe1ef_Whitney Morgan and Fifi Foxx Worship Belly Buttons.mp4 (198.76 MB)... +Processing: kluieuof0c2_Smoking Cigarette and Masturbating In Pantyhose.mp4 (Mode: scene) +Downloading kluieuof0c2_Smoking Cigarette and Masturbating In Pantyhose.mp4 (323.77 MB)... +Processing: kmfafak3821_step Dad Smoking stepDaughter To Give Him a POV Blowjob.mp4 (Mode: scene) +Downloading kmfafak3821_step Dad Smoking stepDaughter To Give Him a POV Blowjob.mp4 (300.20 MB)... +Processing: imcaccmfcb3_Getting naked fast, she can't wait to get his cock in her hand - KIM STROKER.mp4 (Mode: scene) +Downloading imcaccmfcb3_Getting naked fast, she can't wait to get his cock in her hand - KIM STROKER.mp4 (385.06 MB)... +Processing: kltmmhhedca_WAM Pie Fight Between Busty Terra Mizu and Fifi Foxx.mp4 (Mode: scene) +Downloading kltmmhhedca_WAM Pie Fight Between Busty Terra Mizu and Fifi Foxx.mp4 (403.45 MB)... +Processing: klhhimh9e54_Sit To Pop Balloons featuring Fifi Foxx.mp4 (Mode: scene) +Downloading klhhimh9e54_Sit To Pop Balloons featuring Fifi Foxx.mp4 (280.75 MB)... +Processing: kluhaah7243_Fifi Foxx Humiliates You POV.mp4 (Mode: scene) +Downloading kluhaah7243_Fifi Foxx Humiliates You POV.mp4 (52.02 MB)... +Processing: kitvvmve6b2_Fifi Foxx Wants to be impregnated.mp4 (Mode: scene) +Downloading kitvvmve6b2_Fifi Foxx Wants to be impregnated.mp4 (302.02 MB)... +Processing: kltoukmc7b2_Giantess Vore Featuring Terra Mizu, Nyxon, and Fifi Foxx.mp4 (Mode: scene) +Downloading kltoukmc7b2_Giantess Vore Featuring Terra Mizu, Nyxon, and Fifi Foxx.mp4 (191.18 MB)... +Processing: kkcpkch305f_Stepmom Gives a Double Handjob to stepSon.mp4 (Mode: scene) +Downloading kkcpkch305f_Stepmom Gives a Double Handjob to stepSon.mp4 (224.26 MB)... +Processing: kluhevd71d8_Amateur Dances Around Topless in a Diaper.mp4 (Mode: scene) +Downloading kluhevd71d8_Amateur Dances Around Topless in a Diaper.mp4 (131.89 MB)... +Processing: kmfbktb2c73_Smoking Cigarettes on the Side of The Road.mp4 (Mode: scene) +Downloading kmfbktb2c73_Smoking Cigarettes on the Side of The Road.mp4 (63.86 MB)... +Processing: Fifi Foxx - Mom Tells Son Its Not A Sin - CockNinjaStudios.mp4 (Mode: scene) +Downloading Fifi Foxx - Mom Tells Son Its Not A Sin - CockNinjaStudios.mp4 (125.66 MB)... +Processing: iuovmiv2028_Female Training Step mom Leilani Lei and Sister Fifi Foxx.mp4 (Mode: scene) +Downloading iuovmiv2028_Female Training Step mom Leilani Lei and Sister Fifi Foxx.mp4 (839.61 MB)... +Processing: kluhfpk519a_WAM Girl Gives Blowjob and Pied In Face.mp4 (Mode: scene) +Downloading kluhfpk519a_WAM Girl Gives Blowjob and Pied In Face.mp4 (352.80 MB)... +Processing: kluopfmf035_Coating Aiden's Face In Spit With Her Tongue.mp4 (Mode: scene) +Downloading kluopfmf035_Coating Aiden's Face In Spit With Her Tongue.mp4 (224.06 MB)... +Processing: kmeeblh54d6_Facelicking Torment By 2 Hot Girls on Guy.mp4 (Mode: scene) +Downloading kmeeblh54d6_Facelicking Torment By 2 Hot Girls on Guy.mp4 (144.18 MB)... +Processing: Fifi Foxx - Mom Helps And Cures Sons Porn Addiction - CockNinjaStudios.mp4 (Mode: scene) +Downloading Fifi Foxx - Mom Helps And Cures Sons Porn Addiction - CockNinjaStudios.mp4 (146.68 MB)... +Processing: klhohhv3d3b_Fucking While Blowing Up Balloons and Cum on Tits.mp4 (Mode: scene) +Downloading klhohhv3d3b_Fucking While Blowing Up Balloons and Cum on Tits.mp4 (417.42 MB)... +Processing: klhodidcfea_Girlfriend and step Sister Give A Double Handjob To stepBrother.mp4 (Mode: scene) +Downloading klhodidcfea_Girlfriend and step Sister Give A Double Handjob To stepBrother.mp4 (176.07 MB)... +Processing: khlblif8746_Fifi Foxx Jerk Off Instruction.mp4 (Mode: scene) +Downloading khlblif8746_Fifi Foxx Jerk Off Instruction.mp4 (390.87 MB)... +Processing: kluubud0295_Amateur Slut Gets Head Dunked Into Toilet And Fucked and Humiliated.mp4 (Mode: scene) +Downloading kluubud0295_Amateur Slut Gets Head Dunked Into Toilet And Fucked and Humiliated.mp4 (73.28 MB)... +Processing: kmfbeoh8679_Fifi Foxx Blows and Pops Balloons Outdoors.mp4 (Mode: scene) +Downloading kmfbeoh8679_Fifi Foxx Blows and Pops Balloons Outdoors.mp4 (86.72 MB)... +Processing: kluhbuo46ed_Fifi Foxx Gives Amateur Blowjob.mp4 (Mode: scene) +Downloading kluhbuo46ed_Fifi Foxx Gives Amateur Blowjob.mp4 (69.32 MB)... +Processing: klhovhva20b_Topless Blonde Navel and Belly Button Worship.mp4 (Mode: scene) +Downloading klhovhva20b_Topless Blonde Navel and Belly Button Worship.mp4 (162.61 MB)... +Processing: kluimib5186_Amateur With Shaved Pussy Masturbates In Shower and Pee.mp4 (Mode: scene) +Downloading kluimib5186_Amateur With Shaved Pussy Masturbates In Shower and Pee.mp4 (215.82 MB)... +Processing: klhudufd542_Fifi Foxx Blows Big Hubba Bubba Bubbles with Gum.mp4 (Mode: scene) +Downloading klhudufd542_Fifi Foxx Blows Big Hubba Bubba Bubbles with Gum.mp4 (235.84 MB)... +Processing: kmfabkf30b5_step Mom and Sister Give You Jerk Off Instruction.mp4 (Mode: scene) +Downloading kmfabkf30b5_step Mom and Sister Give You Jerk Off Instruction.mp4 (183.47 MB)... +Processing: Daddy’s Little Entranced Girls-(Fifi Foxx, Whitney Morgan)-{XXXMultimedia}-[Eyes Rolling, Family Roleplay, Femsub, Mind Control, Step Dad, Training].mp4 (Mode: scene) +Downloading Daddy’s Little Entranced Girls-(Fifi Foxx, Whitney Morgan)-{XXXMultimedia}-[Eyes Rolling, Family Roleplay, Femsub, Mind Control, Step Dad, Training].mp4 (415.95 MB)... +Processing: kltblth6b2a_Fifi Foxx Blowing Big Bubble Gum Bubbles.mp4 (Mode: scene) +Downloading kltblth6b2a_Fifi Foxx Blowing Big Bubble Gum Bubbles.mp4 (144.57 MB)... +Processing: kluhoibd70f_Amateur Jerk Off Instruction and Masturbation.mp4 (Mode: scene) +Downloading kluhoibd70f_Amateur Jerk Off Instruction and Masturbation.mp4 (98.20 MB)... +Processing: klummvf46cc_Sit To Pop Giant Balloon Starring Fifi Foxx.mp4 (Mode: scene) +Downloading klummvf46cc_Sit To Pop Giant Balloon Starring Fifi Foxx.mp4 (257.25 MB)... +Processing: kltcoov1ff5_Fifi Foxx Lets You Jerk Off to Her Belly Button.mp4 (Mode: scene) +Downloading kltcoov1ff5_Fifi Foxx Lets You Jerk Off to Her Belly Button.mp4 (135.91 MB)... +Processing: klkemkhae45_Lizzy Lamb and Fifi Foxx Worship Each Others Belly Buttons.mp4 (Mode: scene) +Downloading klkemkhae45_Lizzy Lamb and Fifi Foxx Worship Each Others Belly Buttons.mp4 (184.14 MB)... +Processing: kltacdo7b5e_Superheroine Fifi Foxx Needs You To Fuck Her To Restore Her Magic Powers.mp4 (Mode: scene) +Downloading kltacdo7b5e_Superheroine Fifi Foxx Needs You To Fuck Her To Restore Her Magic Powers.mp4 (203.69 MB)... +Processing: klumbmb8ba5_Girl Gives POV Handjob Wearing Knit Gloves.mp4 (Mode: scene) +Downloading klumbmb8ba5_Girl Gives POV Handjob Wearing Knit Gloves.mp4 (372.21 MB)... +Processing: iuttdlddb41_Taboo POV Fuckng Caught Spying on Step Mom Fifi Foxx.mp4 (Mode: scene) +Downloading iuttdlddb41_Taboo POV Fuckng Caught Spying on Step Mom Fifi Foxx.mp4 (415.48 MB)... +Processing: khvhvkm28b2_Fifi Foxx Makeout Session and Handjob.mp4 (Mode: scene) +Downloading khvhvkm28b2_Fifi Foxx Makeout Session and Handjob.mp4 (413.05 MB)... +Processing: klhphpb690f_Boy Transformed Into Girl and Fucked With Strap On.mp4 (Mode: scene) +Downloading klhphpb690f_Boy Transformed Into Girl and Fucked With Strap On.mp4 (202.53 MB)... +Processing: imeamdm7ab9_step Sister stepBrother Full Body Swap ft Fefe Yinka.mp4 (Mode: scene) +Downloading imeamdm7ab9_step Sister stepBrother Full Body Swap ft Fefe Yinka.mp4 (484.63 MB)... +Processing: iuolcub994b_Escort Kim Stroker gets sent to Step Aunt Payton Hall.mp4 (Mode: scene) +Downloading iuolcub994b_Escort Kim Stroker gets sent to Step Aunt Payton Hall.mp4 (446.44 MB)... +Processing: kluictd22fe_Femdom Wants You To Buy Her Designer Jeans.mp4 (Mode: scene) +Downloading kluictd22fe_Femdom Wants You To Buy Her Designer Jeans.mp4 (443.52 MB)... +Processing: iifuhbocca8_MILF fucks teen boyfriend featuring Leilani Lei and Fifi Foxx - cougar fucks 18yo boy.mp4 (Mode: scene) +Downloading iifuhbocca8_MILF fucks teen boyfriend featuring Leilani Lei and Fifi Foxx - cougar fucks 18yo boy.mp4 (384.72 MB)... +Processing: kkcifdob302_Supervillian seduces her nemestepsis boyfriend with blowjob.mp4 (Mode: scene) +Downloading kkcifdob302_Supervillian seduces her nemestepsis boyfriend with blowjob.mp4 (318.18 MB)... +Processing: kkcbluo5a9a_Hogtied brunette gets facefucked by cock.mp4 (Mode: scene) +Downloading kkcbluo5a9a_Hogtied brunette gets facefucked by cock.mp4 (243.61 MB)... +Processing: klhoocm2f51_Fifi Foxx Fucks Herself With Glass Dildo.mp4 (Mode: scene) +Downloading klhoocm2f51_Fifi Foxx Fucks Herself With Glass Dildo.mp4 (216.56 MB)... +Processing: kltbpfmac3b_Fifi Foxx Pillow Humping Until She Cums.mp4 (Mode: scene) +Downloading kltbpfmac3b_Fifi Foxx Pillow Humping Until She Cums.mp4 (168.36 MB)... +Processing: kluohuo84bc_Fifi Foxx Weight Gain Story Feedee.mp4 (Mode: scene) +Downloading kluohuo84bc_Fifi Foxx Weight Gain Story Feedee.mp4 (399.58 MB)... +Processing: kluopbf79be_Gender Swap Potion Turns Man into a Girl.mp4 (Mode: scene) +Downloading kluopbf79be_Gender Swap Potion Turns Man into a Girl.mp4 (315.03 MB)... +Scanning directory: /videos/lilibet.saunders/BangBus.25.05.21.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] +Processing: bangbus.25.05.21.lilibet.saunders.mp4 (Mode: scene) +Downloading bangbus.25.05.21.lilibet.saunders.mp4 (3635.43 MB)... +Scanning directory: /videos/lilibet.saunders/TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.MP4-Narcos[XC] +Processing: TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.mp4 (Mode: scene) +Downloading TabooHeat.25.11.13.Lilibet.Saunders.Lily.Lane.XXX.1080p.mp4 (1395.63 MB)... +Scanning directory: /videos/lilibet.saunders/TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.MP4-Narcos[XC] +Processing: TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.mp4 (Mode: scene) +Downloading TabooHeat.25.07.08.Cory.Chase.Lilibet.Saunders.XXX.1080p.mp4 (438.63 MB)... +Scanning directory: /videos/lilibet.saunders/SisLovesMe.25.09.06.Nicole.Kitt.And.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] +Processing: Let’s Fuck Dad’s New Girlfriend Like Good Step-Siblings-(Nicole Kitt, Lilibet Saunders)-{Sis Loves Me}.mp4 (Mode: scene) +Downloading Let’s Fuck Dad’s New Girlfriend Like Good Step-Siblings-(Nicole Kitt, Lilibet Saunders)-{Sis Loves Me}.mp4 (2759.71 MB)... +Scanning directory: /videos/lilibet.saunders/TeenFidelity.E683.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] +Processing: A Little Bit-(Lilibet Saunders)-{Teenfidelity}-[18+, Big Dick, Big Tits, Bouncing Tits, Brown Hair, Corset, Hairless Pussy, Natural Tits, creampie].mp4 (Mode: scene) +Downloading A Little Bit-(Lilibet Saunders)-{Teenfidelity}-[18+, Big Dick, Big Tits, Bouncing Tits, Brown Hair, Corset, Hairless Pussy, Natural Tits, creampie].mp4 (5232.08 MB)... +Scanning directory: /videos/lilibet.saunders/TeenyTaboo.25.08.22.Lilibet.Saunders.XXX.1080p.HEVC.x265.PRT +Scanning directory: /videos/lilibet.saunders/TabooHeat.25.10.06.Cory.Chase.Lilibet.Saunders.XXX.1080p.MP4-Narcos[XC] +Scanning directory: /videos/lilibet.saunders/ATKGalleria.25.06.23.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] +Processing: Lilibet Saunders Talks Sex And Porn-{ATK Galleria}-[Big Ass, Big Tits, Brown Hair, Curvy, Hairless Pussy, Interview, Leggings, Long Hair, Medium Skin, Pale Skin, Spread Ass, White Woman].mp4 (Mode: scene) +Downloading Lilibet Saunders Talks Sex And Porn-{ATK Galleria}-[Big Ass, Big Tits, Brown Hair, Curvy, Hairless Pussy, Interview, Leggings, Long Hair, Medium Skin, Pale Skin, Spread Ass, White Woman].mp4 (700.06 MB)... +Scanning directory: /videos/lilibet.saunders/TeenyTaboo.25.08.22.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] +Processing: teenytaboo.25.08.22.lilibet.saunders.mp4 (Mode: scene) +Downloading teenytaboo.25.08.22.lilibet.saunders.mp4 (2016.11 MB)... +Scanning directory: /videos/lilibet.saunders/Cuckquean Lilibet +Processing: TabooHeat.25.10.07.Lilibet.Saunders.XXX.2160p_chf3.mkv (Mode: scene) +Downloading TabooHeat.25.10.07.Lilibet.Saunders.XXX.2160p_chf3.mkv (3813.33 MB)... +Processing: TabooHeat.25.10.06.Cory.Chase.Lilibet.Saunders.XXX.2160p_chf3.mkv (Mode: scene) +Downloading TabooHeat.25.10.06.Cory.Chase.Lilibet.Saunders.XXX.2160p_chf3.mkv (9771.62 MB)... +Scanning directory: /videos/lilibet.saunders/ATKGalleria.25.07.07.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] +Processing: Lilibet Saunders is spreading wide-{ATK Galleria}-[Big Ass, Big Tits, Brown Hair (Female), Curvy, Hairless Pussy, Long Hair, Pale Skin, Panties, Solo Female, Striptease, White, Yoga].mp4 (Mode: scene) +Downloading Lilibet Saunders is spreading wide-{ATK Galleria}-[Big Ass, Big Tits, Brown Hair (Female), Curvy, Hairless Pussy, Long Hair, Pale Skin, Panties, Solo Female, Striptease, White, Yoga].mp4 (671.08 MB)... +Scanning directory: /videos/lilibet.saunders/TabooHeat.25.07.21.Cory.Chase.Lilibet.Saunders.XXX.1080p.HEVC.x265.PRT +Processing: Lilibet Saunders In Me & Step Dad Always Fuck When Step Mom Leaves - Part 4-(Cory Chase)-{Taboo Heat}.mp4 (Mode: scene) +Downloading Lilibet Saunders In Me & Step Dad Always Fuck When Step Mom Leaves - Part 4-(Cory Chase)-{Taboo Heat}.mp4 (675.00 MB)... +Scanning directory: /videos/lilibet.saunders/dannydirt +Scanning directory: /videos/lilibet.saunders/ATKGalleria.25.07.16.Lilibet.Saunders.XXX.1080p.MP4-WRB[XC] +Processing: Lilibet Saunders in solo-{ATK Galleria}-[Big Ass, Big Tits, Brown Hair (Female), Curvy, Hairless Pussy, Masturbation, Natural Tits, Pale Skin, Pussy Rubbing, Solo Female, White].mp4 (Mode: scene) +Downloading Lilibet Saunders in solo-{ATK Galleria}-[Big Ass, Big Tits, Brown Hair (Female), Curvy, Hairless Pussy, Masturbation, Natural Tits, Pale Skin, Pussy Rubbing, Solo Female, White].mp4 (628.37 MB)... +Scanning directory: /videos/lilibet.saunders/TabooHeat.25.07.07.Lilibet.Saunders.XXX.1080p.MP4-Narcos[XC] +Processing: TabooHeat.25.07.07.Lilibet.Saunders.XXX.1080p.mp4 (Mode: scene) +Downloading TabooHeat.25.07.07.Lilibet.Saunders.XXX.1080p.mp4 (1073.44 MB)... +Scanning directory: /videos/wifeymichelle/Photos +Scanning directory: /videos/wifeymichelle/Videos +Processing: sex time at the old house.mp4 (Mode: scene) +Downloading sex time at the old house.mp4 (72.31 MB)... +Processing: Michelle gets out of the shower and we have sex_Trim.mp4 (Mode: scene) +Downloading Michelle gets out of the shower and we have sex_Trim.mp4 (172.02 MB)... +Processing: A sunday afternoon quickie.mp4 (Mode: scene) +Downloading A sunday afternoon quickie.mp4 (1306.43 MB)... +Processing: fucking after forever.mp4 (Mode: scene) +Downloading fucking after forever.mp4 (1807.26 MB)... +Processing: 2025-03-09.mp4 (Mode: scene) +Downloading 2025-03-09.mp4 (3565.49 MB)... +Processing: Michelle gets on Top.mp4 (Mode: scene) +Downloading Michelle gets on Top.mp4 (2057.22 MB)... +Processing: Using Michelle for sex.mp4 (Mode: scene) +Downloading Using Michelle for sex.mp4 (109.26 MB)... +Processing: We fuck and I cum inside.mp4 (Mode: scene) +Downloading We fuck and I cum inside.mp4 (119.19 MB)... +Processing: Speak easy made us frisky.mp4 (Mode: scene) +Downloading Speak easy made us frisky.mp4 (2211.33 MB)... +Processing: First Time Sex After Vacation.mp4 (Mode: scene) +Downloading First Time Sex After Vacation.mp4 (93.80 MB)... +Processing: We fuck for so long we start to dehydrate.mp4 (Mode: scene) +Downloading We fuck for so long we start to dehydrate.mp4 (2844.42 MB)... +Processing: Michelle on Top.mp4 (Mode: scene) +Downloading Michelle on Top.mp4 (1066.76 MB)... +Processing: Michelle gets a creampie on the bed.mp4 (Mode: scene) +Downloading Michelle gets a creampie on the bed.mp4 (36.45 MB)... +Processing: getting home late and eating michelles cunt then fucking doggy.mp4 (Mode: scene) +Downloading getting home late and eating michelles cunt then fucking doggy.mp4 (141.56 MB)... +Processing: michelle tries on a bathing suit.mp4 (Mode: scene) +Downloading michelle tries on a bathing suit.mp4 (267.09 MB)... +Processing: Jerking off and eating her pussy.mp4 (Mode: scene) +Downloading Jerking off and eating her pussy.mp4 (61.24 MB)... +Processing: Fucking Michelle on the Couch and Cumming Inside her.mp4 (Mode: scene) +Downloading Fucking Michelle on the Couch and Cumming Inside her.mp4 (854.97 MB)... +Processing: 2025-03-02.mp4 (Mode: scene) +Downloading 2025-03-02.mp4 (2749.35 MB)... +Processing: Eating out michelle and a quick fuck.mp4 (Mode: scene) +Downloading Eating out michelle and a quick fuck.mp4 (2004.30 MB)... +Processing: Making love while pregnant.mp4 (Mode: scene) +Downloading Making love while pregnant.mp4 (60.23 MB)... +Processing: Michelle Getting undressed.mp4 (Mode: scene) +Downloading Michelle Getting undressed.mp4 (8.12 MB)... +Processing: Fucking michelle while she's super pregnant.mp4 (Mode: scene) +Downloading Fucking michelle while she's super pregnant.mp4 (1482.13 MB)... +Processing: michelle taking a shower_Trim.mp4 (Mode: scene) +Downloading michelle taking a shower_Trim.mp4 (14.87 MB)... +Processing: We get to fuck for the first time in days.mp4 (Mode: scene) +Downloading We get to fuck for the first time in days.mp4 (1410.36 MB)... +Processing: Fucking Michelle and Coming together.mp4 (Mode: scene) +Downloading Fucking Michelle and Coming together.mp4 (1338.91 MB)... +Processing: Michelle sits on my lap naked and makes out.mp4 (Mode: scene) +Downloading Michelle sits on my lap naked and makes out.mp4 (8.91 MB)... +Processing: Michelle and I make love before reading time - Made with Clipchamp.mp4 (Mode: scene) +Downloading Michelle and I make love before reading time - Made with Clipchamp.mp4 (2487.76 MB)... +Processing: Michelle Tries on a one piece bathing suit.mp4 (Mode: scene) +Downloading Michelle Tries on a one piece bathing suit.mp4 (164.10 MB)... +Processing: michelle actually tries on a bathing suit.mp4 (Mode: scene) +Downloading michelle actually tries on a bathing suit.mp4 (664.47 MB)... +Processing: we have a quickie on a cold sunday afternoon.mp4 (Mode: scene) +Downloading we have a quickie on a cold sunday afternoon.mp4 (206.05 MB)... +Processing: Catching us having sex.mp4 (Mode: scene) +Downloading Catching us having sex.mp4 (2269.98 MB)... +Processing: Making love in black and white.mp4 (Mode: scene) +Downloading Making love in black and white.mp4 (239.91 MB)... +Scanning directory: /videos/castingcurvy/Videos +Processing: 9d013920eb78cd3f3a41cd0d83aa36ed4d47fabcdc6b81fc8fd77ddd0d287ca0.mp4 (Mode: scene) +Downloading 9d013920eb78cd3f3a41cd0d83aa36ed4d47fabcdc6b81fc8fd77ddd0d287ca0.mp4 (141.77 MB)... +Processing: fdb435a0b4f97d1ed80209a8ea0eea939eac5dc73a28c5b4de924469e002c09f.mp4 (Mode: scene) +Downloading fdb435a0b4f97d1ed80209a8ea0eea939eac5dc73a28c5b4de924469e002c09f.mp4 (1047.93 MB)... +Processing: 0hdiqy8ogga2hd31na7d5_source.mp4 (Mode: scene) +Downloading 0hdiqy8ogga2hd31na7d5_source.mp4 (263.26 MB)... +Processing: 0hjhjr9evr4fn0xe7us9b_source.mp4 (Mode: scene) +Downloading 0hjhjr9evr4fn0xe7us9b_source.mp4 (1457.78 MB)... +Processing: 0hi0bbzfx9731dfh0p6pd_source.mp4 (Mode: scene) +Downloading 0hi0bbzfx9731dfh0p6pd_source.mp4 (1883.93 MB)... +Processing: 2f4970e251d70287c0bee850a31dacca2b3fe2ff2646f28bc578069af71b4a17.mp4 (Mode: scene) +Downloading 2f4970e251d70287c0bee850a31dacca2b3fe2ff2646f28bc578069af71b4a17.mp4 (1337.44 MB)... +Processing: 5e64fe3befdfca57d47e47ff83112f0ff4da01c9b1f0dea7879f61364e054151.mp4 (Mode: scene) +Downloading 5e64fe3befdfca57d47e47ff83112f0ff4da01c9b1f0dea7879f61364e054151.mp4 (1144.86 MB)... +Processing: 317ef8fad31f8c76a44e0cdcf925066d24d15ef167ad99be26bb5445f1e6d8bf.mp4 (Mode: scene) +Downloading 317ef8fad31f8c76a44e0cdcf925066d24d15ef167ad99be26bb5445f1e6d8bf.mp4 (238.48 MB)... +Processing: 81e409f5b9324469081ec21fab69434f8040f0360a72506b106022a494d7498e.mp4 (Mode: scene) +Downloading 81e409f5b9324469081ec21fab69434f8040f0360a72506b106022a494d7498e.mp4 (1524.49 MB)... +Processing: 02379f0787a083c35db47ef2ff2bdb4ccefb7195e86c6adc7bed56364382c03b.mp4 (Mode: scene) +Downloading 02379f0787a083c35db47ef2ff2bdb4ccefb7195e86c6adc7bed56364382c03b.mp4 (2057.85 MB)... +Processing: b2ee6832e13dd4aafbc6c664f16e14aff92d2d82bb842e7da3b3b1f8b5072802.mp4 (Mode: scene) +Downloading b2ee6832e13dd4aafbc6c664f16e14aff92d2d82bb842e7da3b3b1f8b5072802.mp4 (1715.45 MB)... +Processing: 0hmlpvmd5c84qjc2r1pjx_source.mp4 (Mode: scene) +Downloading 0hmlpvmd5c84qjc2r1pjx_source.mp4 (2631.98 MB)... +Processing: 5badf7b546bbf739bcc28dd3bd8f344f0e7264d3f3102d7eb536f20f8e593dcb.mp4 (Mode: scene) +Downloading 5badf7b546bbf739bcc28dd3bd8f344f0e7264d3f3102d7eb536f20f8e593dcb.mp4 (1248.71 MB)... +Processing: e0ca9c6f9b2f720f0ffe3ee90518499e2f272068504dae4c64e04e70d965864b.mp4 (Mode: scene) +Downloading e0ca9c6f9b2f720f0ffe3ee90518499e2f272068504dae4c64e04e70d965864b.mp4 (215.97 MB)... +Processing: a716557cd7320534994aa40b16f0014c7461164d0d7f3939746cdaad08b16059.mp4 (Mode: scene) +Downloading a716557cd7320534994aa40b16f0014c7461164d0d7f3939746cdaad08b16059.mp4 (1382.49 MB)... +Processing: eecec9bc26ac8670d2a300969090045bd5ab9c7eeeab68243cc4865c731513e1.mp4 (Mode: scene) +Downloading eecec9bc26ac8670d2a300969090045bd5ab9c7eeeab68243cc4865c731513e1.mp4 (1786.56 MB)... +Processing: 480971d3159ba6f51880bdd03c210f970c4e872bf5de9c5adeed4f78aa13dafb.mp4 (Mode: scene) +Downloading 480971d3159ba6f51880bdd03c210f970c4e872bf5de9c5adeed4f78aa13dafb.mp4 (1606.59 MB)... +Processing: fa0e3c27f223f342988537d1d9b0ddf65cec585ceb649a3c9e4891f43fb70b46.mp4 (Mode: scene) +Downloading fa0e3c27f223f342988537d1d9b0ddf65cec585ceb649a3c9e4891f43fb70b46.mp4 (2165.91 MB)... +Processing: 0hj6ebl3t0f50ow3f32y5_source.mp4 (Mode: scene) +Downloading 0hj6ebl3t0f50ow3f32y5_source.mp4 (1559.43 MB)... +Processing: d2edfb45464881a89a4b51b8bfa8c502fa89637837848de508fe65f8de61d011.mp4 (Mode: scene) +Downloading d2edfb45464881a89a4b51b8bfa8c502fa89637837848de508fe65f8de61d011.mp4 (1518.99 MB)... +Processing: dd0efc9c64e020af9fc4d9c9aa5b5ebe850953ec3a19e7aecddc06a8f57fb3af.mp4 (Mode: scene) +Downloading dd0efc9c64e020af9fc4d9c9aa5b5ebe850953ec3a19e7aecddc06a8f57fb3af.mp4 (1843.38 MB)... +Processing: c88e80af7b2a6ee2a964ba393cdd2ca832474ccfd288a09d23728ea765673861.mp4 (Mode: scene) +Downloading c88e80af7b2a6ee2a964ba393cdd2ca832474ccfd288a09d23728ea765673861.mp4 (5.32 MB)... +Processing: 0ha5f7gngj5q19fuvk2qx_source.mp4 (Mode: scene) +Downloading 0ha5f7gngj5q19fuvk2qx_source.mp4 (1487.31 MB)... +Processing: a07827c1fc97db57f73d998d84ee69654bd23969cf9ba9acdda98ca473c44536.mp4 (Mode: scene) +Downloading a07827c1fc97db57f73d998d84ee69654bd23969cf9ba9acdda98ca473c44536.mp4 (1477.82 MB)... +Processing: 0hlwqgw3ej44welp9jzi4_source.mp4 (Mode: scene) +Downloading 0hlwqgw3ej44welp9jzi4_source.mp4 (2151.76 MB)... +Processing: 0d24d84b2523506bb6a94bae81bc1306d94f5b71dd7ff3645627337f896f4111.mp4 (Mode: scene) +Downloading 0d24d84b2523506bb6a94bae81bc1306d94f5b71dd7ff3645627337f896f4111.mp4 (1728.51 MB)... +Processing: 4b3639c80776d806d384461c80ac68dfe947c4ac4ba96e78c82f36abd9c54d88.mp4 (Mode: scene) +Downloading 4b3639c80776d806d384461c80ac68dfe947c4ac4ba96e78c82f36abd9c54d88.mp4 (1717.52 MB)... +Processing: fe42929c83b9b5df9668745c964561bc18e658cb15125f69cee348ec3c47a56d.mp4 (Mode: scene) +Downloading fe42929c83b9b5df9668745c964561bc18e658cb15125f69cee348ec3c47a56d.mp4 (1487.31 MB)... +Processing: 09e3634e9521292a7965dda11fa605b6e5e484a3e7ecaf913e34ef361c2ae07c.mp4 (Mode: scene) +Downloading 09e3634e9521292a7965dda11fa605b6e5e484a3e7ecaf913e34ef361c2ae07c.mp4 (1235.79 MB)... +Processing: d12bdf33cb6112ee32e1f24bc17915d6bea715ada2c574f9cb9aa83fd3494cca.mp4 (Mode: scene) +Downloading d12bdf33cb6112ee32e1f24bc17915d6bea715ada2c574f9cb9aa83fd3494cca.mp4 (1782.79 MB)... +Processing: 0hkim1pafafro3n4akevy_source.mp4 (Mode: scene) +Downloading 0hkim1pafafro3n4akevy_source.mp4 (2042.06 MB)... +Processing: 8ffa25d34bc527cfeaa07e062b9c08e7d44cdfc9ab5db4ce75233d0982fb566b.mp4 (Mode: scene) +Downloading 8ffa25d34bc527cfeaa07e062b9c08e7d44cdfc9ab5db4ce75233d0982fb566b.mp4 (1500.93 MB)... +Processing: 79de61b50e8ddfcc6b319b75a43c11924d5e8aa41b743ce4b25dde705cd3a449.mp4 (Mode: scene) +Downloading 79de61b50e8ddfcc6b319b75a43c11924d5e8aa41b743ce4b25dde705cd3a449.mp4 (263.26 MB)... +Processing: 0h248zsgpgop6ujzfc95y_source.mp4 (Mode: scene) +Downloading 0h248zsgpgop6ujzfc95y_source.mp4 (1814.44 MB)... +Processing: 2fa99fbdb241d8d50db5863c73ee6f6cfea51ebd9e870bbcdbe02e14f5b9657b.mp4 (Mode: scene) +Downloading 2fa99fbdb241d8d50db5863c73ee6f6cfea51ebd9e870bbcdbe02e14f5b9657b.mp4 (1814.44 MB)... +Processing: 1d6eedb04701b84b5b9069bc21cfc861eafca5c0cbf96efde2700f8a58af210f.mp4 (Mode: scene) +Downloading 1d6eedb04701b84b5b9069bc21cfc861eafca5c0cbf96efde2700f8a58af210f.mp4 (2151.76 MB)... +Processing: 21084cecc11108b9829bc0c390ba3df71a7c29737f4cd2fc88dd1ebc7f3e13ce.mp4 (Mode: scene) +Downloading 21084cecc11108b9829bc0c390ba3df71a7c29737f4cd2fc88dd1ebc7f3e13ce.mp4 (1871.60 MB)... +Processing: 59225e2ea98df4337c72a72eb761bb5896f034fdb79a27823f84ac5ec227712e.mp4 (Mode: scene) +Downloading 59225e2ea98df4337c72a72eb761bb5896f034fdb79a27823f84ac5ec227712e.mp4 (1701.40 MB)... +Processing: 626a4e973bcebc1f07b478be8749cd37d21921da81c5c5b2ffd18ffe63daaf35.mp4 (Mode: scene) +Downloading 626a4e973bcebc1f07b478be8749cd37d21921da81c5c5b2ffd18ffe63daaf35.mp4 (558.53 MB)... +Processing: 54645504ecb21989dec525cf760ae9789d563c83e4fb373db09a40971037980f.mp4 (Mode: scene) +Downloading 54645504ecb21989dec525cf760ae9789d563c83e4fb373db09a40971037980f.mp4 (1772.62 MB)... +Processing: f615eb041cc3d8fb3e156b75ad4748beadee6cc30430fdb8ec695b32549c4af8.mp4 (Mode: scene) +Downloading f615eb041cc3d8fb3e156b75ad4748beadee6cc30430fdb8ec695b32549c4af8.mp4 (4.37 MB)... +Processing: 0hlktlznzplv72au5hlwl_source.mp4 (Mode: scene) +Downloading 0hlktlznzplv72au5hlwl_source.mp4 (1394.46 MB)... +Processing: 0hd63ykr9iuc1j2qrk9ms_source.mp4 (Mode: scene) +Downloading 0hd63ykr9iuc1j2qrk9ms_source.mp4 (1683.37 MB)... +Processing: 0hp2hsc6eyy6l59o911ku_source.mp4 (Mode: scene) +Downloading 0hp2hsc6eyy6l59o911ku_source.mp4 (1869.84 MB)... +Processing: 8f3801b24cd081d624760c4012883372afa5920608ad06c181020b1fcd346968.mp4 (Mode: scene) +Downloading 8f3801b24cd081d624760c4012883372afa5920608ad06c181020b1fcd346968.mp4 (1883.93 MB)... +Processing: 82677d3fa66aa59636a4268568139dd2c5a2018a875af1d22f265dfc3e1e6509.mp4 (Mode: scene) +Downloading 82677d3fa66aa59636a4268568139dd2c5a2018a875af1d22f265dfc3e1e6509.mp4 (2806.81 MB)... +Processing: 0hkv2jveufmhhhffq653p_source.mp4 (Mode: scene) +Downloading 0hkv2jveufmhhhffq653p_source.mp4 (2144.43 MB)... +Processing: 0hn8v0z1nqlossizi1nrr_source.mp4 (Mode: scene) +Downloading 0hn8v0z1nqlossizi1nrr_source.mp4 (1715.45 MB)... +Processing: 9d1421040226314c7da0f295e9dfc81ee57f197e7b22ce86450da7e8faff9eda.mp4 (Mode: scene) +Downloading 9d1421040226314c7da0f295e9dfc81ee57f197e7b22ce86450da7e8faff9eda.mp4 (2304.82 MB)... +Processing: 826c03c132ed47b014c6f2b6f66385cdee7cc77dd9a6eb3bca95235758403b68.mp4 (Mode: scene) +Downloading 826c03c132ed47b014c6f2b6f66385cdee7cc77dd9a6eb3bca95235758403b68.mp4 (1788.76 MB)... +Processing: b3a46600b4ec290c3e4bac34717c31f6e06d97bd70753fab3c08928ba3f0ee04.mp4 (Mode: scene) +Downloading b3a46600b4ec290c3e4bac34717c31f6e06d97bd70753fab3c08928ba3f0ee04.mp4 (904.50 MB)... +Processing: 0hl7rx6zae0og0nkhs2w4_source.mp4 (Mode: scene) +Downloading 0hl7rx6zae0og0nkhs2w4_source.mp4 (1717.52 MB)... +Processing: 1722b1a67f3ada454e4ccba298cc5e3b58e7a3511db29792a3bd5388b8dee97f.mp4 (Mode: scene) +Downloading 1722b1a67f3ada454e4ccba298cc5e3b58e7a3511db29792a3bd5388b8dee97f.mp4 (503.53 MB)... +Processing: fc394ca4866c72dd501dbe9ae1dc9363e2b3c2d05b1c994fdbe3260c02d1ca7e.mp4 (Mode: scene) +Downloading fc394ca4866c72dd501dbe9ae1dc9363e2b3c2d05b1c994fdbe3260c02d1ca7e.mp4 (921.12 MB)... +Processing: 11ee943c392014e8011bb21fbdd425621ef404e42db7f80c61dd61a8b79bd0e3.mp4 (Mode: scene) +Downloading 11ee943c392014e8011bb21fbdd425621ef404e42db7f80c61dd61a8b79bd0e3.mp4 (1689.79 MB)... +Processing: 3da61ba74740104a510d551c6232c6f86f830bd1ac17a4b6d7d892298f745526.mp4 (Mode: scene) +Downloading 3da61ba74740104a510d551c6232c6f86f830bd1ac17a4b6d7d892298f745526.mp4 (1564.76 MB)... +Processing: 3733c0d48b4bb4a0d388956a26f2584df25e3c1ebf969c7f0f34683f7e55a213.mp4 (Mode: scene) +Downloading 3733c0d48b4bb4a0d388956a26f2584df25e3c1ebf969c7f0f34683f7e55a213.mp4 (1497.57 MB)... +Processing: 0hibzj05o8goxx0irb202_source.mp4 (Mode: scene) +Downloading 0hibzj05o8goxx0irb202_source.mp4 (1564.76 MB)... +Processing: 90e3dc104ee6b11bcad90ec260e7143fd34555346352d6a8939b4a414deeaf82.mp4 (Mode: scene) +Downloading 90e3dc104ee6b11bcad90ec260e7143fd34555346352d6a8939b4a414deeaf82.mp4 (1887.40 MB)... +Processing: 6e3c100fbe74215b69690555c93fedaa138a7a326f0052705ec7aa31068cecdb.mp4 (Mode: scene) +Downloading 6e3c100fbe74215b69690555c93fedaa138a7a326f0052705ec7aa31068cecdb.mp4 (620.30 MB)... +Processing: b83eb84f77a6e78d2cb856e2c858638bdee1f9a8fa9596a35499769c65d807b4.mp4 (Mode: scene) +Downloading b83eb84f77a6e78d2cb856e2c858638bdee1f9a8fa9596a35499769c65d807b4.mp4 (492.00 MB)... +Processing: 0ho9zr4fr1i8v2ivikwuz_source.mp4 (Mode: scene) +Downloading 0ho9zr4fr1i8v2ivikwuz_source.mp4 (904.50 MB)... +Processing: 3c57ec4e50e275ec18f90cc1dcbeb9be5779724df23439ecc9070cc889068d52.mp4 (Mode: scene) +Downloading 3c57ec4e50e275ec18f90cc1dcbeb9be5779724df23439ecc9070cc889068d52.mp4 (1707.76 MB)... +Processing: 0honq5y8j7ev2x4kh35ga_source.mp4 (Mode: scene) +Downloading 0honq5y8j7ev2x4kh35ga_source.mp4 (1477.82 MB)... +Processing: 6e42016b0f50f6672840bbb3b0665143cdd41471c33dbc8bb05aa2f62b72eedb.mp4 (Mode: scene) +Downloading 6e42016b0f50f6672840bbb3b0665143cdd41471c33dbc8bb05aa2f62b72eedb.mp4 (2144.43 MB)... +Processing: 0hnlkycjua1fkdgp1apwk_source.mp4 (Mode: scene) +Downloading 0hnlkycjua1fkdgp1apwk_source.mp4 (1842.82 MB)... +Processing: ca2f184c2ea006ca50ff0737ba1042571cf5dcdb04edb1bd049c266312a50403.mp4 (Mode: scene) +Downloading ca2f184c2ea006ca50ff0737ba1042571cf5dcdb04edb1bd049c266312a50403.mp4 (1394.46 MB)... +Processing: 0hmw0pp7rcwfvg4briqjt_source.mp4 (Mode: scene) +Downloading 0hmw0pp7rcwfvg4briqjt_source.mp4 (1248.71 MB)... +Processing: bad2f8a22d4bce2f06a78170464b6cb7806e60736a6c12a9d6ce31bc851b7408.mp4 (Mode: scene) +Downloading bad2f8a22d4bce2f06a78170464b6cb7806e60736a6c12a9d6ce31bc851b7408.mp4 (911.69 MB)... +Processing: 577888989fce8a97f3a29a9349e852dee813b56a5d4ac78e1f11f61f2d178dfd.mp4 (Mode: scene) +Downloading 577888989fce8a97f3a29a9349e852dee813b56a5d4ac78e1f11f61f2d178dfd.mp4 (2688.00 MB)... +Processing: 0hnx6qivxz0j6254uxgc1_source.mp4 (Mode: scene) +Downloading 0hnx6qivxz0j6254uxgc1_source.mp4 (1843.38 MB)... +Processing: 9229957049480f78cf596cfbefe792d7a6a98fc14b62cce14a2a3dd19ff71341.mp4 (Mode: scene) +Downloading 9229957049480f78cf596cfbefe792d7a6a98fc14b62cce14a2a3dd19ff71341.mp4 (1247.12 MB)... +Processing: e2b529db78ee3a39c7d210324f022630579fc080cf2dbf024f81aade8d741909.mp4 (Mode: scene) +Downloading e2b529db78ee3a39c7d210324f022630579fc080cf2dbf024f81aade8d741909.mp4 (2631.98 MB)... +Processing: a6250beab74cbb8fea1422325a7c6131229eecac858d107754a5a2cd3d888470.mp4 (Mode: scene) +Downloading a6250beab74cbb8fea1422325a7c6131229eecac858d107754a5a2cd3d888470.mp4 (1500.21 MB)... +Processing: f7adeb3be1742ceb9b736c4d8e0cdab9cfcb05f1e90e59ffd48a4b0de490edab.mp4 (Mode: scene) +Downloading f7adeb3be1742ceb9b736c4d8e0cdab9cfcb05f1e90e59ffd48a4b0de490edab.mp4 (2257.55 MB)... +Processing: 0hk72cemmfed9y1lo459d_source.mp4 (Mode: scene) +Downloading 0hk72cemmfed9y1lo459d_source.mp4 (3157.83 MB)... +Processing: 6dd8303fcb46dc1874e7ae603b108fa64aa1178a689e209e866d599201502ed3.mp4 (Mode: scene) +Downloading 6dd8303fcb46dc1874e7ae603b108fa64aa1178a689e209e866d599201502ed3.mp4 (1274.41 MB)... +Processing: 0his2xy6dkb1xfr2kfk52_source.mp4 (Mode: scene) +Downloading 0his2xy6dkb1xfr2kfk52_source.mp4 (1274.41 MB)... +Processing: a3c562abebbe416dc84dab45d1afdc3fe806776d326fb922f1f017ddd93b7c83.mp4 (Mode: scene) +Downloading a3c562abebbe416dc84dab45d1afdc3fe806776d326fb922f1f017ddd93b7c83.mp4 (1910.54 MB)... +Processing: d32e814642481e418e811476e202bf3e42772673dd2379ee857649fbc945605a.mp4 (Mode: scene) +Downloading d32e814642481e418e811476e202bf3e42772673dd2379ee857649fbc945605a.mp4 (304.00 MB)... +Processing: 953e7520b01a6f612e626ec0530a4c7b00d483f491dd490822c2b48e36862e1e.mp4 (Mode: scene) +Downloading 953e7520b01a6f612e626ec0530a4c7b00d483f491dd490822c2b48e36862e1e.mp4 (260.66 MB)... +Processing: 0hjuga988kj2eki2qmwsq_source.mp4 (Mode: scene) +Downloading 0hjuga988kj2eki2qmwsq_source.mp4 (2806.81 MB)... +Processing: 69f4e4c50e0cb98cf19d6ba6f78fa399a354f67142f9fac7f5be90352ca81fca.mp4 (Mode: scene) +Downloading 69f4e4c50e0cb98cf19d6ba6f78fa399a354f67142f9fac7f5be90352ca81fca.mp4 (1064.00 MB)... +Processing: 75dcf4d84c10996b70b106e4989ccc50ce792b4a48264818b2cff437e1ecd7b5.mp4 (Mode: scene) +Downloading 75dcf4d84c10996b70b106e4989ccc50ce792b4a48264818b2cff437e1ecd7b5.mp4 (1693.95 MB)... +Processing: f4d5734eef53cae30d3bf30d6e26f424f7cb604cbd02968a28aa6483e39b8cf3.mp4 (Mode: scene) +Downloading f4d5734eef53cae30d3bf30d6e26f424f7cb604cbd02968a28aa6483e39b8cf3.mp4 (1457.78 MB)... +Processing: 0hc8hq50gjw2ssrb56yb9_source.mp4 (Mode: scene) +Downloading 0hc8hq50gjw2ssrb56yb9_source.mp4 (1728.51 MB)... +Processing: 70c126491a277c4e25b1e9f29cb8213baf63381a95c19d7b9b2765bd0163c1ca.mp4 (Mode: scene) +Downloading 70c126491a277c4e25b1e9f29cb8213baf63381a95c19d7b9b2765bd0163c1ca.mp4 (1583.20 MB)... +Processing: ac4a7045c5316e03671af7180beeb6f39fb70c71e315bfd0efac5b0320f41a2a.mp4 (Mode: scene) +Downloading ac4a7045c5316e03671af7180beeb6f39fb70c71e315bfd0efac5b0320f41a2a.mp4 (1729.53 MB)... +Processing: 5a2dc88907db99d152659aee6202a17c6e870c5bc7cde1ace918c9ca7b2968df.mp4 (Mode: scene) +Downloading 5a2dc88907db99d152659aee6202a17c6e870c5bc7cde1ace918c9ca7b2968df.mp4 (1869.84 MB)... +Processing: 0hm90u7fqr6cm4xa0in10_source.mp4 (Mode: scene) +Downloading 0hm90u7fqr6cm4xa0in10_source.mp4 (1887.40 MB)... +Processing: b1982ef2919e5fddbfb0627dbdcd2d6d44d1c636022f9bb350e5a217ae43e4dc.mp4 (Mode: scene) +Downloading b1982ef2919e5fddbfb0627dbdcd2d6d44d1c636022f9bb350e5a217ae43e4dc.mp4 (1683.37 MB)... +Scanning directory: /videos/castingcurvy/CastingCurvy 2022.11.19 - 2024.09.16 Siterip +Processing: 2024.01.28 ditzygitsie step sis.mp4 (Mode: scene) +Downloading 2024.01.28 ditzygitsie step sis.mp4 (1352.50 MB)... +Processing: 2023.09.29 venussunshinevip cheating gf creampie.mp4 (Mode: scene) +Downloading 2023.09.29 venussunshinevip cheating gf creampie.mp4 (1564.76 MB)... +Processing: 2024.01.17 koochiekachow17 modeling gig.mp4 (Mode: scene) +Downloading 2024.01.17 koochiekachow17 modeling gig.mp4 (2151.76 MB)... +Processing: 2023.10.24 eulaliajones casting debut.mp4 (Mode: scene) +Downloading 2023.10.24 eulaliajones casting debut.mp4 (1559.43 MB)... +Processing: 2024.03.31 ariellovely24 step mom.mp4 (Mode: scene) +Downloading 2024.03.31 ariellovely24 step mom.mp4 (904.50 MB)... +Processing: 2023.08.25 ditzygitsie creampie.mp4 (Mode: scene) +Downloading 2023.08.25 ditzygitsie creampie.mp4 (1142.30 MB)... +Processing: 2023.03.04 marmarbebe just the tip.mp4 (Mode: scene) +Downloading 2023.03.04 marmarbebe just the tip.mp4 (1338.06 MB)... +Processing: 2022.12.19 faethefarie casting debut.mp4 (Mode: scene) +Downloading 2022.12.19 faethefarie casting debut.mp4 (1826.57 MB)... +Processing: 2023.05.08 ditzygitsie step sis.mp4 (Mode: scene) +Downloading 2023.05.08 ditzygitsie step sis.mp4 (1537.04 MB)... +Processing: 2024.07.19 koochiekachow17 step sis.mp4 (Mode: scene) +Downloading 2024.07.19 koochiekachow17 step sis.mp4 (1782.79 MB)... +Processing: 2024.04.26 solanaescobar step sis.mp4 (Mode: scene) +Downloading 2024.04.26 solanaescobar step sis.mp4 (1247.12 MB)... +Processing: 2024.03.19 smutty_bunny proof.mp4 (Mode: scene) +Downloading 2024.03.19 smutty_bunny proof.mp4 (1843.38 MB)... +Processing: 2024.07.08 mslanalovett gfs friend.mp4 (Mode: scene) +Downloading 2024.07.08 mslanalovett gfs friend.mp4 (911.69 MB)... +Processing: 2024.09.06 koochiekachow17 date night just the tip.mp4 (Mode: scene) +Downloading 2024.09.06 koochiekachow17 date night just the tip.mp4 (2057.85 MB)... +Processing: 2024.06.17 lillymcxxx casting debut.mp4 (Mode: scene) +Downloading 2024.06.17 lillymcxxx casting debut.mp4 (1689.79 MB)... +Processing: 2023.06.17 pastel_princess1292 truth or dare.mp4 (Mode: scene) +Downloading 2023.06.17 pastel_princess1292 truth or dare.mp4 (1699.23 MB)... +Processing: 2023.04.20 koochiekachow17 massage creampie.mp4 (Mode: scene) +Downloading 2023.04.20 koochiekachow17 massage creampie.mp4 (1481.15 MB)... +Processing: 2024.04.24 solanaescobar round 2.mp4 (Mode: scene) +Downloading 2024.04.24 solanaescobar round 2.mp4 (1869.84 MB)... +Processing: 2024.03.09 naominoirxx casting debut.mp4 (Mode: scene) +Downloading 2024.03.09 naominoirxx casting debut.mp4 (1842.82 MB)... +Processing: 2024.02.27 urgaystonergf666 twerk.mp4 (Mode: scene) +Downloading 2024.02.27 urgaystonergf666 twerk.mp4 (1715.45 MB)... +Processing: 2023.09.17 koochiekachow17 step cousin.mp4 (Mode: scene) +Downloading 2023.09.17 koochiekachow17 step cousin.mp4 (1883.93 MB)... +Processing: 2024.04.05 eviebobevie step sis sleepover.mp4 (Mode: scene) +Downloading 2024.04.05 eviebobevie step sis sleepover.mp4 (1497.57 MB)... +Processing: 2022.11.19 thelululilli porn audition.mp4 (Mode: scene) +Downloading 2022.11.19 thelululilli porn audition.mp4 (2026.01 MB)... +Processing: 2023.12.26 urgaystonergf666 step sis.mp4 (Mode: scene) +Downloading 2023.12.26 urgaystonergf666 step sis.mp4 (1717.52 MB)... +Processing: 2024.02.07 pastel_princess1292 shy step sister.mp4 (Mode: scene) +Downloading 2024.02.07 pastel_princess1292 shy step sister.mp4 (1886.06 MB)... +Processing: 2023.09.06 pastel_princess1292 tutoring student.mp4 (Mode: scene) +Downloading 2023.09.06 pastel_princess1292 tutoring student.mp4 (1181.42 MB)... +Processing: 2024.06.06 koochiekachow17 friends gf.mp4 (Mode: scene) +Downloading 2024.06.06 koochiekachow17 friends gf.mp4 (1144.86 MB)... +Processing: 2023.10.11 ditzygitsie dexters mom.mp4 (Mode: scene) +Downloading 2023.10.11 ditzygitsie dexters mom.mp4 (1274.41 MB)... +Processing: 2023.03.31 eviebobevie casting debut.mp4 (Mode: scene) +Downloading 2023.03.31 eviebobevie casting debut.mp4 (1406.57 MB)... +Processing: 2023.02.20 faethefarie step sis.mp4 (Mode: scene) +Downloading 2023.02.20 faethefarie step sis.mp4 (1284.10 MB)... +Processing: 2024.07.30 marmarbebe step mom.mp4 (Mode: scene) +Downloading 2024.07.30 marmarbebe step mom.mp4 (1047.93 MB)... +Processing: 2023.03.21 koochiekachow17 gf sister.mp4 (Mode: scene) +Downloading 2023.03.21 koochiekachow17 gf sister.mp4 (1728.51 MB)... +Processing: 2023.08.12 venussunshinevip bratty step sis.mp4 (Mode: scene) +Downloading 2023.08.12 venussunshinevip bratty step sis.mp4 (1849.90 MB)... +Processing: 2022.12.16 sweetbabyolive second casting.mp4 (Mode: scene) +Downloading 2022.12.16 sweetbabyolive second casting.mp4 (2071.44 MB)... +Processing: 2023.11.02 pastel_princess1292 creampie.mp4 (Mode: scene) +Downloading 2023.11.02 pastel_princess1292 creampie.mp4 (1457.78 MB)... +Processing: 2023.01.16 koochiekachow17 tipsy coworker.mp4 (Mode: scene) +Downloading 2023.01.16 koochiekachow17 tipsy coworker.mp4 (1487.31 MB)... +Processing: 2023.04.20 mimi_flowers_premium casting debut.mp4 (Mode: scene) +Downloading 2023.04.20 mimi_flowers_premium casting debut.mp4 (1683.37 MB)... +Processing: 2023.04.11 koochiekachow17 just the tip BTS.mp4 (Mode: scene) +Downloading 2023.04.11 koochiekachow17 just the tip BTS.mp4 (335.54 MB)... +Processing: 2024.09.16 venussunshinevip step sis.mp4 (Mode: scene) +Downloading 2024.09.16 venussunshinevip step sis.mp4 (1707.76 MB)... +Processing: 2023.12.05 urgaystonergf666 casting debut.mp4 (Mode: scene) +Downloading 2023.12.05 urgaystonergf666 casting debut.mp4 (2042.06 MB)... +Processing: 2023.01.02 marmarbebe big booty step sister.mp4 (Mode: scene) +Downloading 2023.01.02 marmarbebe big booty step sister.mp4 (1342.52 MB)... +Processing: 2024.02.17 urgaystonergf666 modeling gig.mp4 (Mode: scene) +Downloading 2024.02.17 urgaystonergf666 modeling gig.mp4 (1248.71 MB)... +Processing: 2023.07.22 marmarbebe step sis.mp4 (Mode: scene) +Downloading 2023.07.22 marmarbebe step sis.mp4 (2219.44 MB)... +Processing: 2024.06.27 koochiekachow17 tinder date.mp4 (Mode: scene) +Downloading 2024.06.27 koochiekachow17 tinder date.mp4 (1910.54 MB)... +Processing: 2023.11.24 ariellovely24 casting debut.mp4 (Mode: scene) +Downloading 2023.11.24 ariellovely24 casting debut.mp4 (2262.80 MB)... +Processing: 2024.04.15 vipdumb6lut casting debut.mp4 (Mode: scene) +Downloading 2024.04.15 vipdumb6lut casting debut.mp4 (1693.95 MB)... +Processing: 2023.01.27 shyoaks step sis.mp4 (Mode: scene) +Downloading 2023.01.27 shyoaks step sis.mp4 (1173.09 MB)... +Processing: 2023.05.31 pastel_princess1292 casting debut.mp4 (Mode: scene) +Downloading 2023.05.31 pastel_princess1292 casting debut.mp4 (1982.31 MB)... +Processing: 2024.08.27 mimi_flowers_premium ramona flowers.mp4 (Mode: scene) +Downloading 2024.08.27 mimi_flowers_premium ramona flowers.mp4 (1500.21 MB)... +Processing: 2024.08.10 urgaystonergf666 step sis massage.mp4 (Mode: scene) +Downloading 2024.08.10 urgaystonergf666 step sis massage.mp4 (1872.07 MB)... +Processing: 2024.04.11 ariellovely24 step sis.mp4 (Mode: scene) +Downloading 2024.04.11 ariellovely24 step sis.mp4 (1477.82 MB)... +Processing: 2023.07.02 seatownsofia casting debut.mp4 (Mode: scene) +Downloading 2023.07.02 seatownsofia casting debut.mp4 (2165.91 MB)... +Processing: 2023.12.15 ariellovely24 creampie.mp4 (Mode: scene) +Downloading 2023.12.15 ariellovely24 creampie.mp4 (1538.27 MB)... +Processing: 2023.11.13 mslanalovett casting debut.mp4 (Mode: scene) +Downloading 2023.11.13 mslanalovett casting debut.mp4 (2011.11 MB)... +Processing: 2024.08.23 koochiekachow17 BTS.mp4 (Mode: scene) +Downloading 2024.08.23 koochiekachow17 BTS.mp4 (620.30 MB)... +Scanning directory: /videos/castingcurvy/CastingCurvy 2023.02.09 - 2025.09.29 Megapack +Processing: 2024.10.15 ditzygitsie modeling job 0hums1na95ld9w5uk1nnj_source.mp4 (Mode: scene) +Downloading 2024.10.15 ditzygitsie modeling job 0hums1na95ld9w5uk1nnj_source.mp4 (1235.79 MB)... +Processing: 2024.12.11 labrisa thick mature milf casting 0hwh9h26cjzc0qy8wrvqq_source.mp4 (Mode: scene) +Downloading 2024.12.11 labrisa thick mature milf casting 0hwh9h26cjzc0qy8wrvqq_source.mp4 (503.53 MB)... +Processing: 2025.04.11 koochiekachow17 step sister needs sexy pics 0i0c9jncm2g9bqw2be4wm_source.mp4 (Mode: scene) +Downloading 2025.04.11 koochiekachow17 step sister needs sexy pics 0i0c9jncm2g9bqw2be4wm_source.mp4 (1952.63 MB)... +Processing: 2024.11.14 koochiekachow17 bts 0hvllras4izt6zwktlxdc_source.mp4 (Mode: scene) +Downloading 2024.11.14 koochiekachow17 bts 0hvllras4izt6zwktlxdc_source.mp4 (141.77 MB)... +Processing: 2025.06.05 mimi_flowers_premium milf helped me for my art project 0i253nzc9126uzw7htyep_source.mp4 (Mode: scene) +Downloading 2025.06.05 mimi_flowers_premium milf helped me for my art project 0i253nzc9126uzw7htyep_source.mp4 (1416.65 MB)... +Processing: 2023.07.11 pastel_princess1292 step sis catches me watching porn abbc3bba-b550-4a41-bd1d-35a1b5534d54.mp4 (Mode: scene) +Downloading 2023.07.11 pastel_princess1292 step sis catches me watching porn abbc3bba-b550-4a41-bd1d-35a1b5534d54.mp4 (1424.39 MB)... +Processing: 2024.11.29 smutty_bunny hotel maid 0hw2x2zpee7umzhbsfgcz_source.mp4 (Mode: scene) +Downloading 2024.11.29 smutty_bunny hotel maid 0hw2x2zpee7umzhbsfgcz_source.mp4 (1788.76 MB)... +Processing: 2025.03.10 mamamiamela sister in law nurse 0hzcoqel7yyfmvf9ylzfr_source.mp4 (Mode: scene) +Downloading 2025.03.10 mamamiamela sister in law nurse 0hzcoqel7yyfmvf9ylzfr_source.mp4 (1500.93 MB)... +Processing: 2025.08.15 koochiekachow17 trying to resist daughters roommate 0i4f5hyc490o2k81vsgos_source.mp4 (Mode: scene) +Downloading 2025.08.15 koochiekachow17 trying to resist daughters roommate 0i4f5hyc490o2k81vsgos_source.mp4 (1347.39 MB)... +Processing: 2025.08.27 koochiekachow17 sex tape 0i4t8irnl6g85m93h6vza_source.mp4 (Mode: scene) +Downloading 2025.08.27 koochiekachow17 sex tape 0i4t8irnl6g85m93h6vza_source.mp4 (210.19 MB)... +Processing: 2025.01.09 koochiekachow17 first casting bts 0hxebs2cyjetjnadh6d53_source.mp4 (Mode: scene) +Downloading 2025.01.09 koochiekachow17 first casting bts 0hxebs2cyjetjnadh6d53_source.mp4 (238.48 MB)... +Processing: 2025.07.21 emmaleebaker just the tip with my step sisters friend 0i3mfklsxs30xc2rhjavr_source.mp4 (Mode: scene) +Downloading 2025.07.21 emmaleebaker just the tip with my step sisters friend 0i3mfklsxs30xc2rhjavr_source.mp4 (1465.51 MB)... +Processing: 2025.09.03 introducing jay 0i506p8e46w49d375dgzv_source.mp4 (Mode: scene) +Downloading 2025.09.03 introducing jay 0i506p8e46w49d375dgzv_source.mp4 (1091.97 MB)... +Processing: 2024.11.05 marmarbebe step sis caught me 0hv8o5at8dhugy62t21yi_source.mp4 (Mode: scene) +Downloading 2024.11.05 marmarbebe step sis caught me 0hv8o5at8dhugy62t21yi_source.mp4 (1518.99 MB)... +Processing: 2025.05.03 lilyrainelove showering with my friends girl 0i0zrkocghcll1gphn2lp_source.mp4 (Mode: scene) +Downloading 2025.05.03 lilyrainelove showering with my friends girl 0i0zrkocghcll1gphn2lp_source.mp4 (1311.62 MB)... +Processing: 2024.10.06 seatownsofia date during vlog 0hucklcl07uhbiidlknwz_source.mp4 (Mode: scene) +Downloading 2024.10.06 seatownsofia date during vlog 0hucklcl07uhbiidlknwz_source.mp4 (921.12 MB)... +Processing: 2025.04.22 lilyrainelove sneaky best friend 0i0phtnl2jwtezgaljqw8_source.mp4 (Mode: scene) +Downloading 2025.04.22 lilyrainelove sneaky best friend 0i0phtnl2jwtezgaljqw8_source.mp4 (1507.90 MB)... +Processing: 2023.02.09 rubyreddhead casting audition d7d17cb8-b989-48e3-9b09-990d92306327.mp4 (Mode: scene) +Downloading 2023.02.09 rubyreddhead casting audition d7d17cb8-b989-48e3-9b09-990d92306327.mp4 (1772.27 MB)... +Processing: 2025.06.16 urgaystonergf666 step sister is on the phone with her man 0i2gqdsxd4l12676h9pda_source.mp4 (Mode: scene) +Downloading 2025.06.16 urgaystonergf666 step sister is on the phone with her man 0i2gqdsxd4l12676h9pda_source.mp4 (1160.83 MB)... +Processing: 2025.07.11 koochiekachow17 free use step sis 0i3ak4wscyobfif8v8krl_source.mp4 (Mode: scene) +Downloading 2025.07.11 koochiekachow17 free use step sis 0i3ak4wscyobfif8v8krl_source.mp4 (1423.86 MB)... +Processing: 2025.01.20 lilyrainelove casting 0hxqyapnlyz4aoxjaar7l_source.mp4 (Mode: scene) +Downloading 2025.01.20 lilyrainelove casting 0hxqyapnlyz4aoxjaar7l_source.mp4 (2257.55 MB)... +Processing: 2025.02.26 mamamiamela brand new pawg audition 0hyyrspxs6ibzrslq7smx_source.mp4 (Mode: scene) +Downloading 2025.02.26 mamamiamela brand new pawg audition 0hyyrspxs6ibzrslq7smx_source.mp4 (1772.62 MB)... +Processing: 2023.08.01 venussunshinevip casting b88b9a19-507e-4e28-b97b-3581a8a7d5fc.mp4 (Mode: scene) +Downloading 2023.08.01 venussunshinevip casting b88b9a19-507e-4e28-b97b-3581a8a7d5fc.mp4 (2050.53 MB)... +Processing: 2025.05.14 urgaystonergf666 roomie needs my help 0i1emult292tdrbbdbsk5_source.mp4 (Mode: scene) +Downloading 2025.05.14 urgaystonergf666 roomie needs my help 0i1emult292tdrbbdbsk5_source.mp4 (1691.77 MB)... +Processing: 2024.12.29 smutty_bunny hotel maid bts 0hx2eqfgldx6pfjnu06hi_source.mp4 (Mode: scene) +Downloading 2024.12.29 smutty_bunny hotel maid bts 0hx2eqfgldx6pfjnu06hi_source.mp4 (260.66 MB)... +Processing: 2024.09.27 koochiekachow17 daphne sex tape 0hu0uikkeii4pb7mm05ak_source.mp4 (Mode: scene) +Downloading 2024.09.27 koochiekachow17 daphne sex tape 0hu0uikkeii4pb7mm05ak_source.mp4 (1701.40 MB)... +Processing: 2025.02.09 venussunshinevip helping bros gf choose outfit 0hyf2mghkz139ar4byhou_source.mp4 (Mode: scene) +Downloading 2025.02.09 venussunshinevip helping bros gf choose outfit 0hyf2mghkz139ar4byhou_source.mp4 (1871.60 MB)... +Processing: 2024.11.19 koochiekachow17 shy rave girl helps me feel better after my break up 0hvrkgtl8bielushqlb9y_source.mp4 (Mode: scene) +Downloading 2024.11.19 koochiekachow17 shy rave girl helps me feel better after my break up 0hvrkgtl8bielushqlb9y_source.mp4 (1786.56 MB)... +Processing: 2025.04.01 onlyhazelnuts casting 0i0156y8pd8cuda9rp688_source.mp4 (Mode: scene) +Downloading 2025.04.01 onlyhazelnuts casting 0i0156y8pd8cuda9rp688_source.mp4 (1583.20 MB)... +Processing: 2024.01.07 eulaliajones just the tip with friends gf 0hlktlznzplv72au5hlwl_source.mp4 (Mode: scene) +Downloading 2024.01.07 eulaliajones just the tip with friends gf 0hlktlznzplv72au5hlwl_source.mp4 (1394.46 MB)... +Processing: 2025.06.28 emmaleebaker taking pics for school project with step sis 0i2tnssfn7957a1asoxju_source.mp4 (Mode: scene) +Downloading 2025.06.28 emmaleebaker taking pics for school project with step sis 0i2tnssfn7957a1asoxju_source.mp4 (1662.76 MB)... +Processing: 2024.10.25 junoberry first casting 0huygl9k7jcst4gpjq2pt_source.mp4 (Mode: scene) +Downloading 2024.10.25 junoberry first casting 0huygl9k7jcst4gpjq2pt_source.mp4 (2170.11 MB)... +Processing: 2025.03.21 marmarbebe nude training sesh 0hzodc2bw3pusnv6nar8x_source.mp4 (Mode: scene) +Downloading 2025.03.21 marmarbebe nude training sesh 0hzodc2bw3pusnv6nar8x_source.mp4 (1382.49 MB)... +Processing: 2025.08.05 demonic_beauty step mom helps erection issue 0i41ara79pi9t6yl7jc67_source.mp4 (Mode: scene) +Downloading 2025.08.05 demonic_beauty step mom helps erection issue 0i41ara79pi9t6yl7jc67_source.mp4 (1336.19 MB)... +Processing: 2024.12.20 ditzygitsie work trip with assistant 0hwr0dikfut0pfibp62b0_source.mp4 (Mode: scene) +Downloading 2024.12.20 ditzygitsie work trip with assistant 0hwr0dikfut0pfibp62b0_source.mp4 (1337.44 MB)... +Processing: 2025.01.29 lilyrainelove step sister boudoir photography class help 0hy2evih28sp0t9ehzgpf_source.mp4 (Mode: scene) +Downloading 2025.01.29 lilyrainelove step sister boudoir photography class help 0hy2evih28sp0t9ehzgpf_source.mp4 (1729.53 MB)... +Processing: 2025.09.29 koochiekachow17 fucking trainer for the workout 0i5uh48us2an6jocmw8jd_source.mp4 (Mode: scene) +Downloading 2025.09.29 koochiekachow17 fucking trainer for the workout 0i5uh48us2an6jocmw8jd_source.mp4 (1607.85 MB)... +Processing: 2025.09.20 urgaystonergf666 stepdaughter is a nudist 0i5jv25urk98q98os5fgd_source.mp4 (Mode: scene) +Downloading 2025.09.20 urgaystonergf666 stepdaughter is a nudist 0i5jv25urk98q98os5fgd_source.mp4 (1375.68 MB)... +Processing: 2025.05.28 urgaystonergf666 taught step sister soaking 0i1uxlo479thozh9gp4is_source.mp4 (Mode: scene) +Downloading 2025.05.28 urgaystonergf666 taught step sister soaking 0i1uxlo479thozh9gp4is_source.mp4 (1344.59 MB)... +Processing: 2025.02.21 urgaystonergf666 bj sesh 0hysyfbq4owo46ytzducl_source.mp4 (Mode: scene) +Downloading 2025.02.21 urgaystonergf666 bj sesh 0hysyfbq4owo46ytzducl_source.mp4 (558.53 MB)... +Scanning directory: /videos/castingcurvy/[OnlyFans] - @Castingcurvy +Scanning directory: /videos/melanie.hicks/TabooHeat.25.07.13.Melanie.Hicks.XXX.1080p.MP4-Narcos[XC] +Processing: TabooHeat.25.07.13.Melanie.Hicks.XXX.1080p.mp4 (Mode: scene) +Downloading TabooHeat.25.07.13.Melanie.Hicks.XXX.1080p.mp4 (1133.24 MB)... +Scanning directory: /videos/melanie.hicks/TabooHeat.25.04.15.Cory.Chase.Melanie.Hicks.XXX.1080p.MP4-Narcos[XC] +Processing: TabooHeat.25.04.15.Cory.Chase.Melanie.Hicks.XXX.1080p.mp4 (Mode: scene) +Downloading TabooHeat.25.04.15.Cory.Chase.Melanie.Hicks.XXX.1080p.mp4 (1048.24 MB)... +Scanning directory: /videos/melanie.hicks/TabooHeat.25.04.17.Cory.Chase.Melanie.Hicks.XXX.1080p.MP4-Narcos[XC] +Processing: TabooHeat.25.04.17.Cory.Chase.Melanie.Hicks.XXX.1080p.mp4 (Mode: scene) +Downloading TabooHeat.25.04.17.Cory.Chase.Melanie.Hicks.XXX.1080p.mp4 (722.65 MB)... +Scanning directory: /videos/melanie.hicks/TabooHeat.25.04.21.Melanie.Hicks.XXX.1080p.MP4-Narcos[XC] +Processing: TabooHeat.25.04.21.Melanie.Hicks.XXX.1080p.mp4 (Mode: scene) +Downloading TabooHeat.25.04.21.Melanie.Hicks.XXX.1080p.mp4 (1768.05 MB)... +Scanning directory: /videos/melanie.hicks/TabooHeat.25.07.14.Melanie.Hicks.XXX.1080p.MP4-Narcos[XC] +Processing: TabooHeat.25.07.14.Melanie.Hicks.XXX.1080p.mp4 (Mode: scene) +Downloading TabooHeat.25.07.14.Melanie.Hicks.XXX.1080p.mp4 (1189.16 MB)... +Scanning directory: /videos/melanie.hicks/[TabooHeat.com] Cory Chase, Amiee Cambridge, Melanie Hicks, London River, Lory Lace - Stepmom Reverse Anal Gangbang +Processing: TabooHeat.25.01.16.Cory.Chase.Amiee.Cambridge.and.Melanie.Hicks.XXX.1080p.mp4 (Mode: scene) +Downloading TabooHeat.25.01.16.Cory.Chase.Amiee.Cambridge.and.Melanie.Hicks.XXX.1080p.mp4 (3252.03 MB)... +Scanning directory: /videos/melanie.hicks/TabooHeat.25.03.15.Melanie.Hicks.XXX.1080p.HEVC.x265.PRT +Scanning directory: /videos/tifa.quinn/MommyJOI.25.08.01.Tifa.Quinn.Stepmommy.Wants.You.To.Jerk.It.XXX.1080p.MP4-WRB[XC] +Processing: mommyjoi.25.08.01.tifa.quinn.stepmommy.wants.you.to.jerk.it.mp4 (Mode: scene) +Downloading mommyjoi.25.08.01.tifa.quinn.stepmommy.wants.you.to.jerk.it.mp4 (849.78 MB)... +Scanning directory: /videos/tifa.quinn/PervMom.25.07.21.Tifa.Quinn.XXX.1080p.MP4-WRB[XC] +Processing: pervmom.25.07.21.tifa.quinn.mp4 (Mode: scene) +Downloading pervmom.25.07.21.tifa.quinn.mp4 (925.89 MB)... +Scanning directory: /videos/tifa.quinn/RealHotVR - FUCK! Take Your Thick 9' Cock Out Of My Wet Pussy And CUM On My Huge Tits - Tifa Quinn (Oculus, Go 4K) +Processing: SLR_RealHotVR_FUCK!_Take_Your_Thick_9in_Cock_Out_Of_My_Wet_Pussy_And_CUM_On_My_Huge_Tits_2040p_55315_LR_180.mp4 (Mode: scene) +Downloading SLR_RealHotVR_FUCK!_Take_Your_Thick_9in_Cock_Out_Of_My_Wet_Pussy_And_CUM_On_My_Huge_Tits_2040p_55315_LR_180.mp4 (4113.84 MB)... +Scanning directory: /videos/tifa.quinn/BadDaddyPOV.24.10.22.Tifa.Quinn.Entertains.Her.Stepdaddy.XXX.1080p.MP4-WRB[XC] +Processing: bdpov.24.10.22.tifa.quinn.entertains.her.stepdaddy.mp4 (Mode: scene) +Downloading bdpov.24.10.22.tifa.quinn.entertains.her.stepdaddy.mp4 (990.67 MB)... +Scanning directory: /videos/tifa.quinn/TeenFidelity.E680.Tifa.Quinn.XXX.1080p.MP4-WRB[XC] +Processing: teenfidelity.e680.tifa.quinn.mp4 (Mode: scene) +Downloading teenfidelity.e680.tifa.quinn.mp4 (5999.03 MB)... +Scanning directory: /videos/tifa.quinn/LANewGirl.25.03.04.Episode.412.Tifa.Quinn.XXX.1080p.MP4-WRB[XC] +Processing: lang.25.03.04.episode.412.tifa.quinn.mp4 (Mode: scene) +Downloading lang.25.03.04.episode.412.tifa.quinn.mp4 (5043.35 MB)... +Scanning directory: /videos/tifa.quinn/HotwifeXXX.25.06.25.Tifa.Quinn.XXX.1080p.MP4-WRB[XC] +Processing: hotwifexxx.25.06.25.tifa.quinn.mp4 (Mode: scene) +Downloading hotwifexxx.25.06.25.tifa.quinn.mp4 (1052.26 MB)... +Scanning directory: /videos/tifa.quinn/PrivateSociety.25.02.23.Tifa.Cumming.Makes.My.Pussy.Pee.XXX.1080p.MP4-WRB[XC] +Processing: prvs.25.02.23.tifa.cumming.makes.my.pussy.pee.mp4 (Mode: scene) +Downloading prvs.25.02.23.tifa.cumming.makes.my.pussy.pee.mp4 (1196.45 MB)... +Scanning directory: /videos/tifa.quinn/TadpolexStudio.25.07.29.Girl.Scout.Tifa.Quinn.Sells.Cookies.Then.Gets.A.Double.Creampie.XXX.1080p.MP4-FETiSH[XC] +Processing: tadpolexstudio.25.07.29.girl.scout.tifa.quinn.sells.cookies.then.gets.a.double.creampie.mp4 (Mode: scene) +Downloading tadpolexstudio.25.07.29.girl.scout.tifa.quinn.sells.cookies.then.gets.a.double.creampie.mp4 (2070.95 MB)... +Scanning directory: /videos/tifa.quinn/BadDaddyPOV.24.09.24.Tifa.Quinn.Fucks.Her.Stepdaddy.XXX.1080p.MP4-WRB[XC] +Processing: bdpov.24.09.24.tifa.quinn.fucks.her.stepdaddy.mp4 (Mode: scene) +Downloading bdpov.24.09.24.tifa.quinn.fucks.her.stepdaddy.mp4 (1558.93 MB)... +Scanning directory: /videos/josie.jaxxon/DrRideOut.25.07.04.Josie.Jaxxon.XXX.1080p.MP4-WRB[XC] +Scanning directory: /videos/josie.jaxxon/ManyVids.23.06.20.Josie.Jaxxon.BBW.Hotwife.Gets.A.Creampie.In.Her.Tight.Pussy.XXX.1080p.MP4-P2P[XC] +Scanning directory: /videos/josie.jaxxon/ManyVids.2024.Josie.Jaxxon.And.Rodrigo.Amor.Poolside.BBW.Hotwife.Anal.Fuck.XXX.1080p.MP4-P2P[XC] +Scanning directory: /videos/josie.jaxxon/OnlyFans.23.05.12.Josie.Jaxxon.Part.2.Anal.Slut.Wife.XXX.1080p.MP4-P2P[XC] +Scanning directory: /videos/unsorted/[Wakamatsu] Doutei-kun to Keiken Houfu na Onee-san ga Turn-sei Sex Suru Hanashi _ Turn-Taking Sex Between a Virgin and an Experienced Older Woman [English].torrent +Scanning directory: /videos/katie.cummings/captainkcx_coomer +Scanning directory: /videos/katie.cummings/buncrdump +Scanning directory: /videos/katie.cummings/manyvids +Scanning directory: /videos/jackie.hoff/ATKHairy.25.05.09.Jackie.Hoff.XXX.1080p.HEVC.x265.PRT +Processing: ATKHairy.25.05.09.Jackie.Hoff.XXX.1080p.HEVC.x265.PRT.mp4 (Mode: scene) +Downloading ATKHairy.25.05.09.Jackie.Hoff.XXX.1080p.HEVC.x265.PRT.mp4 (37.69 MB)... +Scanning directory: /videos/jackie.hoff/ATKHairy.24.04.27.Jackie.Hoff.XXX.1080p.MP4-WRB[XC] +Scanning directory: /videos/jackie.hoff/AnalMom.24.04.13.Jackie.Hoff.Quality.Time.With.Jackie.XXX.1080p.MP4-WRB[XC] +Processing: analmom.24.04.13.jackie.hoff.quality.time.with.jackie.mp4 (Mode: scene) +Downloading analmom.24.04.13.jackie.hoff.quality.time.with.jackie.mp4 (1183.32 MB)... +Scanning directory: /videos/jackie.hoff/ATKHairy.25.03.15.Jackie.Hoff.XXX.1080p.MP4-WRB[XC] +Processing: atkhairy.25.03.15.jackie.hoff.mp4 (Mode: scene) +Downloading atkhairy.25.03.15.jackie.hoff.mp4 (645.54 MB)... +Scanning directory: /videos/jackie.hoff/FilthyPOV.24.06.08.Jackie.Hoff.Stepmom.Need.Lotion.And.I.Need.Pussy.XXX.1080p.MP4-WRB[XC] +Processing: filthypov.24.06.08.jackie.hoff.stepmom.need.lotion.and.i.need.pussy.mp4 (Mode: scene) +Downloading filthypov.24.06.08.jackie.hoff.stepmom.need.lotion.and.i.need.pussy.mp4 (1828.45 MB)... +Scanning directory: /videos/jackie.hoff/SinnSage.24.10.17.Sinn.Sage.And.Jackie.Hoff.Cum.Swapping.3-Way.XXX.1080p.MP4-VSEX[XC] +Processing: SinnSage.24.10.17.Sinn.Sage.And.Jackie.Hoff.Cum.Swapping.3-Way.XXX.1080p.mp4 (Mode: scene) +Downloading SinnSage.24.10.17.Sinn.Sage.And.Jackie.Hoff.Cum.Swapping.3-Way.XXX.1080p.mp4 (1691.31 MB)... +Scanning directory: /videos/jackie.hoff/MyPOVFam.E43.Jackie.Hoff.XXX.2160p.MP4-WRB[XC] +Processing: mypovfam.e43.jackie.hoff.xxx.mp4 (Mode: scene) +Downloading mypovfam.e43.jackie.hoff.xxx.mp4 (1438.50 MB)... +Scanning directory: /videos/jackie.hoff/BrattyMILF.25.04.11.Jackie.Hoff.Bossy.Stepmom.Commands.I.Cum.On.Her.Face.XXX.1080p.MP4-WRB[XC] +Processing: Bossy Stepmom Commands I Cum On Her Face - S11-E9-(Jackie Hoff)-{Bratty MILF}-[Big Areolas, Blowjob, Brown Hair, Facial, Glasses, Hairy Pussy, Long Hair, MILF (30+), Male - POV, Massage, Twosome (Straight), cowgirl].mp4 (Mode: scene) +Downloading Bossy Stepmom Commands I Cum On Her Face - S11-E9-(Jackie Hoff)-{Bratty MILF}-[Big Areolas, Blowjob, Brown Hair, Facial, Glasses, Hairy Pussy, Long Hair, MILF (30+), Male - POV, Massage, Twosome (Straight), cowgirl].mp4 (2129.03 MB)... +Scanning directory: /videos/blazedstudios/kimmy.lee +Processing: Kimmy Lee - Sister Controlling Brother - Family Lust.mp4 (Mode: scene) +Downloading Kimmy Lee - Sister Controlling Brother - Family Lust.mp4 (135.58 MB)... +Processing: Kimmy Lee in My Mother Is My Lover by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Kimmy Lee in My Mother Is My Lover by Taboo Family Affairs.mp4 (98.91 MB)... +Processing: ccxxx.17.11.10.kimmy.lee.deepthroated.and.gagged.mp4 (Mode: scene) +Downloading ccxxx.17.11.10.kimmy.lee.deepthroated.and.gagged.mp4 (1298.24 MB)... +Scanning directory: /videos/blazedstudios/kate.england +Processing: Kate England - Family Vacation - Blazed Studios.mp4 (Mode: scene) +Downloading Kate England - Family Vacation - Blazed Studios.mp4 (792.65 MB)... +Processing: Kate England, Kenzi Foxx - Taboo Family Threesomes Vol 2 - Blazed Studios. Mom came home early.mp4 (Mode: scene) +Downloading Kate England, Kenzi Foxx - Taboo Family Threesomes Vol 2 - Blazed Studios. Mom came home early.mp4 (313.32 MB)... +Scanning directory: /videos/blazedstudios/jessica.marie +Processing: Jessica Marie - My Sister Loves Pies Creampies - Blazed Studios .mp4 (Mode: scene) +Downloading Jessica Marie - My Sister Loves Pies Creampies - Blazed Studios .mp4 (191.26 MB)... +Scanning directory: /videos/blazedstudios/alina.long +Processing: Alina Long in My Daddy is bigger than yours by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Alina Long in My Daddy is bigger than yours by Taboo Family Affairs.mp4 (115.92 MB)... +Scanning directory: /videos/blazedstudios/gianna.love +Processing: Gianna Love - Pastor Brother - Family Lust.mp4 (Mode: scene) +Downloading Gianna Love - Pastor Brother - Family Lust.mp4 (118.77 MB)... +Processing: Gianna Love, Nadia White - Sisterly Love - Family Lust.mp4 (Mode: scene) +Downloading Gianna Love, Nadia White - Sisterly Love - Family Lust.mp4 (225.53 MB)... +Scanning directory: /videos/blazedstudios/jessica.simpson +Processing: Horny cheerleader sister fucks her Brother in detention.mp4 (Mode: scene) +Downloading Horny cheerleader sister fucks her Brother in detention.mp4 (138.82 MB)... +Scanning directory: /videos/blazedstudios/jenna.marie +Processing: Jenna Marie- Dear Diary.mp4 (Mode: scene) +Downloading Jenna Marie- Dear Diary.mp4 (205.41 MB)... +Scanning directory: /videos/blazedstudios/pristine.edge +Processing: Pristine Edge fucks her Brother-in-law by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Pristine Edge fucks her Brother-in-law by Taboo Family Affairs.mp4 (164.29 MB)... +Processing: Pristine Edge - Please Daddy - Family Lust.mp4 (Mode: scene) +Downloading Pristine Edge - Please Daddy - Family Lust.mp4 (208.08 MB)... +Scanning directory: /videos/blazedstudios/joseline.kelly +Processing: Taboo Sibling Desire-(Joseline Kelly)-{Family Lust}.mp4 (Mode: scene) +Downloading Taboo Sibling Desire-(Joseline Kelly)-{Family Lust}.mp4 (188.77 MB)... +Scanning directory: /videos/blazedstudios/riley.reyes +Processing: Riley Reyes - Mom Was My Prom Date, Before She Was Dads Wife - Family Lust.mp4 (Mode: scene) +Downloading Riley Reyes - Mom Was My Prom Date, Before She Was Dads Wife - Family Lust.mp4 (181.67 MB)... +Scanning directory: /videos/blazedstudios/lenna.lux +Processing: Lenna Lux - Peeping Pervert Step-brother-{Taboo Family Affairs}-[Cumshot, Sister, Teen (18–22), creampie, taboo].mp4 (Mode: scene) +Downloading Lenna Lux - Peeping Pervert Step-brother-{Taboo Family Affairs}-[Cumshot, Sister, Teen (18–22), creampie, taboo].mp4 (173.11 MB)... +Processing: Dani Dare, Lenna Lux - Keep It In The Family With Fourway Fuck - Family Lust.mp4 (Mode: scene) +Downloading Dani Dare, Lenna Lux - Keep It In The Family With Fourway Fuck - Family Lust.mp4 (169.62 MB)... +Scanning directory: /videos/blazedstudios/renee.roulette +Processing: I Wrecked Step-Daddy's Car-(Renee Roulette)-{Taboo Family Affairs}-[Pigtails, Skinny, taboo].mp4 (Mode: scene) +Downloading I Wrecked Step-Daddy's Car-(Renee Roulette)-{Taboo Family Affairs}-[Pigtails, Skinny, taboo].mp4 (93.32 MB)... +Processing: Impaled By Step Dad-(Renee Roulette)-{Family Lust}-[Redistribution].mp4 (Mode: scene) +Downloading Impaled By Step Dad-(Renee Roulette)-{Family Lust}-[Redistribution].mp4 (111.88 MB)... +Scanning directory: /videos/blazedstudios/mia.pearl +Processing: Dad caught Daughter taking nudes. Mia Pearl - Taboo Schoolgirls - Taboo Family Affairs.mp4 (Mode: scene) +Downloading Dad caught Daughter taking nudes. Mia Pearl - Taboo Schoolgirls - Taboo Family Affairs.mp4 (77.94 MB)... +Scanning directory: /videos/blazedstudios/dani.dare +Processing: Dani Dare - Mom Practices Sex Techniques On Her Son - Family Lust.mp4 (Mode: scene) +Downloading Dani Dare - Mom Practices Sex Techniques On Her Son - Family Lust.mp4 (109.52 MB)... +Scanning directory: /videos/blazedstudios/ashlyn.taylor +Processing: Ashlynn Taylor fucks her Brother on Family Vacation. Taboo Family Affairs Vol. 7.mp4 (Mode: scene) +Downloading Ashlynn Taylor fucks her Brother on Family Vacation. Taboo Family Affairs Vol. 7.mp4 (146.15 MB)... +Processing: Ashlynn Taylor in D is for Daddy and Dick (2) by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Ashlynn Taylor in D is for Daddy and Dick (2) by Taboo Family Affairs.mp4 (94.63 MB)... +Processing: Ashlynn Taylor in D is for Daddy and Dick (3) by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Ashlynn Taylor in D is for Daddy and Dick (3) by Taboo Family Affairs.mp4 (85.65 MB)... +Scanning directory: /videos/blazedstudios/dacey.harlot +Processing: Dacey Harlot - Dad Needs Convincing To Allow Daughter To Go To Burning Man - Family Lust.mp4 (Mode: scene) +Downloading Dacey Harlot - Dad Needs Convincing To Allow Daughter To Go To Burning Man - Family Lust.mp4 (73.64 MB)... +Processing: Dacey Harlot - Sis Wants To Go To Burning Man Festival - Family Lust.mp4 (Mode: scene) +Downloading Dacey Harlot - Sis Wants To Go To Burning Man Festival - Family Lust.mp4 (101.55 MB)... +Scanning directory: /videos/blazedstudios/aubrey.gold +Processing: Step Dads Bed - Aubrey Gold-{Family Lust}-[Brother].mp4 (Mode: scene) +Downloading Step Dads Bed - Aubrey Gold-{Family Lust}-[Brother].mp4 (75.62 MB)... +Processing: Aubrey Gold in Peeping Pervert Brother by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Aubrey Gold in Peeping Pervert Brother by Taboo Family Affairs.mp4 (87.64 MB)... +Processing: Aubrey Gold - Sister Selfie Fuck - Family Lust.mp4 (Mode: scene) +Downloading Aubrey Gold - Sister Selfie Fuck - Family Lust.mp4 (127.65 MB)... +Processing: Aubrey Gold - Workout Fuck With My Brother - Family Lust.mp4 (Mode: scene) +Downloading Aubrey Gold - Workout Fuck With My Brother - Family Lust.mp4 (132.99 MB)... +Scanning directory: /videos/blazedstudios/haven.rae +Processing: Haven Rae - Getting Even With Pops 1 - Puffing Nude - INCESTFLIX.mp4 (Mode: scene) +Downloading Haven Rae - Getting Even With Pops 1 - Puffing Nude - INCESTFLIX.mp4 (31.65 MB)... +Processing: Haven Rae - Getting Even With Pops 2 - Puff On This Cigar - INCE.mp4 (Mode: scene) +Downloading Haven Rae - Getting Even With Pops 2 - Puff On This Cigar - INCE.mp4 (66.41 MB)... +Processing: Haven Rae - Mistaken Identity - PrimalFetish TabooByPrimal - INC.mp4 (Mode: scene) +Downloading Haven Rae - Mistaken Identity - PrimalFetish TabooByPrimal - INC.mp4 (134.00 MB)... +Processing: Haven Rae - Mistaken Identity 2 - PrimalFetish - INCESTFLIX COM.mp4 (Mode: scene) +Downloading Haven Rae - Mistaken Identity 2 - PrimalFetish - INCESTFLIX COM.mp4 (72.62 MB)... +Scanning directory: /videos/blazedstudios/dava.foxx +Processing: Dava Foxx - This Time It's Real - Family Lust.mp4 (Mode: scene) +Downloading Dava Foxx - This Time It's Real - Family Lust.mp4 (151.20 MB)... +Processing: Dava Foxx in My Mother Is My Lover by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Dava Foxx in My Mother Is My Lover by Taboo Family Affairs.mp4 (132.80 MB)... +Processing: Dava Foxx - Brother Can't Get Enough Of His Sister - Family Lust.mp4 (Mode: scene) +Downloading Dava Foxx - Brother Can't Get Enough Of His Sister - Family Lust.mp4 (50.47 MB)... +Scanning directory: /videos/blazedstudios/lucinda.monet +Processing: Lucinda Monet - Sister Sex Ed - Family Lust.mp4 (Mode: scene) +Downloading Lucinda Monet - Sister Sex Ed - Family Lust.mp4 (187.02 MB)... +Scanning directory: /videos/blazedstudios/christina.skye +Processing: Christina Skye, Alyssa Hart, Hope Harper - Family Foursome - Family Lust.mp4 (Mode: scene) +Downloading Christina Skye, Alyssa Hart, Hope Harper - Family Foursome - Family Lust.mp4 (129.81 MB)... +Processing: See Step-Dad Fuck-(Hope Harper, Alyssa Hart, Christina Skye)-{Family Lust}-[Horny, Step Dad, Stewardess].mp4 (Mode: scene) +Downloading See Step-Dad Fuck-(Hope Harper, Alyssa Hart, Christina Skye)-{Family Lust}-[Horny, Step Dad, Stewardess].mp4 (122.67 MB)... +Scanning directory: /videos/blazedstudios/anastasia.rose +Processing: Anastasia Rose - Pigtails and Anal - Taboo Family Affairs.mp4 (Mode: scene) +Downloading Anastasia Rose - Pigtails and Anal - Taboo Family Affairs.mp4 (138.04 MB)... +Scanning directory: /videos/blazedstudios/alyssa.hart +Processing: Alyssa Hart - Family Threesome Taboo - Taboo Family Affairs. Sister Fucks Brother and His Friend.mp4 (Mode: scene) +Downloading Alyssa Hart - Family Threesome Taboo - Taboo Family Affairs. Sister Fucks Brother and His Friend.mp4 (180.59 MB)... +Processing: Alyssa Hart - Gangbang Intervention - Family Lust.mp4 (Mode: scene) +Downloading Alyssa Hart - Gangbang Intervention - Family Lust.mp4 (243.54 MB)... +Processing: Brother Bathroom Blowjob-(Alyssa Hart)-{Taboo Family Affairs}-[Blow Job, Handjob, Incest, Missing Performer (Male), Sister, taboo].mp4 (Mode: scene) +Downloading Brother Bathroom Blowjob-(Alyssa Hart)-{Taboo Family Affairs}-[Blow Job, Handjob, Incest, Missing Performer (Male), Sister, taboo].mp4 (84.07 MB)... +Processing: Alyssa Hart, Jenna Jaded - Blow Daddy And Say You're Sorry - Blazed Studios.mp4 (Mode: scene) +Downloading Alyssa Hart, Jenna Jaded - Blow Daddy And Say You're Sorry - Blazed Studios.mp4 (191.39 MB)... +Processing: Alyssa Hart - I Fucked My Daddy - Taboo Family Affairs.mp4 (Mode: scene) +Downloading Alyssa Hart - I Fucked My Daddy - Taboo Family Affairs.mp4 (86.66 MB)... +Processing: Alyssa Hart - Alyssa Banged Her Cousin After Workout - Family Lust.mp4 (Mode: scene) +Downloading Alyssa Hart - Alyssa Banged Her Cousin After Workout - Family Lust.mp4 (141.88 MB)... +Processing: Alyssa Hart in Little Bro Bang by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Alyssa Hart in Little Bro Bang by Taboo Family Affairs.mp4 (133.52 MB)... +Processing: Alyssa Hart - Her Big Day - Family Lust.mp4 (Mode: scene) +Downloading Alyssa Hart - Her Big Day - Family Lust.mp4 (176.41 MB)... +Processing: Alyssa Hart fucks her Daddy for a slumber party by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Alyssa Hart fucks her Daddy for a slumber party by Taboo Family Affairs.mp4 (101.51 MB)... +Scanning directory: /videos/blazedstudios/cadence.luxx +Processing: Cadence Luxx - Sister Has Persistent General Arousal Disorder - Family Lust.mp4 (Mode: scene) +Downloading Cadence Luxx - Sister Has Persistent General Arousal Disorder - Family Lust.mp4 (169.62 MB)... +Scanning directory: /videos/blazedstudios/kenzi.foxx +Processing: Kenzi Foxx - Mom Creampied - Blazed Studios. Mom read Son's journal.mp4 (Mode: scene) +Downloading Kenzi Foxx - Mom Creampied - Blazed Studios. Mom read Son's journal.mp4 (216.54 MB)... +Processing: Kenzi Foxx - Forbidden Family Frolicking - Blazed Studios. Stay-at-home Mom has a job her Son doesn't know about.mp4 (Mode: scene) +Downloading Kenzi Foxx - Forbidden Family Frolicking - Blazed Studios. Stay-at-home Mom has a job her Son doesn't know about.mp4 (146.61 MB)... +Processing: Kenzi Foxx - Mom's Pandemic DP - Blazed Studios.mp4 (Mode: scene) +Downloading Kenzi Foxx - Mom's Pandemic DP - Blazed Studios.mp4 (450.72 MB)... +Scanning directory: /videos/blazedstudios/desi.dalton +Processing: Step Mom Boot Camp-(Desi Dalton)-{Family Lust}.mp4 (Mode: scene) +Downloading Step Mom Boot Camp-(Desi Dalton)-{Family Lust}.mp4 (192.53 MB)... +Processing: Unsatisfied Desi Dalton fucks her Son-in-law by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Unsatisfied Desi Dalton fucks her Son-in-law by Taboo Family Affairs.mp4 (133.37 MB)... +Processing: Desi Dalton in My Mother Is My Lover by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Desi Dalton in My Mother Is My Lover by Taboo Family Affairs.mp4 (174.03 MB)... +Scanning directory: /videos/blazedstudios/zoe.ray +Processing: Payton Hall, Zoe Ray in Mother joins Daughter and her Boyfriend by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Payton Hall, Zoe Ray in Mother joins Daughter and her Boyfriend by Taboo Family Affairs.mp4 (162.66 MB)... +Scanning directory: /videos/blazedstudios/cherry.morgan +Processing: Cherry Morgan - Blackmailed - Taboo Family Affairs. Brother caught Sister with his friend.mp4 (Mode: scene) +Downloading Cherry Morgan - Blackmailed - Taboo Family Affairs. Brother caught Sister with his friend.mp4 (209.14 MB)... +Scanning directory: /videos/blazedstudios/hailey.arper +Processing: Bella Ink, Hailey Harper - Teaching My Sister To Jerk - Blazed Studios.mp4 (Mode: scene) +Downloading Bella Ink, Hailey Harper - Teaching My Sister To Jerk - Blazed Studios.mp4 (186.24 MB)... +Scanning directory: /videos/blazedstudios/maria.jade +Processing: Maria Jade - Gangbanged And Impregnated By Brothers Friends - Blazed Studios.mp4 (Mode: scene) +Downloading Maria Jade - Gangbanged And Impregnated By Brothers Friends - Blazed Studios.mp4 (379.08 MB)... +Processing: Maria Jade - Banged To Delivery - Blazed Studios. Horny, pregnant, due anytime now Sister-in-Law wants to fuck.mp4 (Mode: scene) +Downloading Maria Jade - Banged To Delivery - Blazed Studios. Horny, pregnant, due anytime now Sister-in-Law wants to fuck.mp4 (425.24 MB)... +Scanning directory: /videos/blazedstudios/mia.monroe +Processing: Mia Monroe, Hope Harper - Daddy Knows Best - Dad fucks Daughter and her friend - Family Lust.mp4 (Mode: scene) +Downloading Mia Monroe, Hope Harper - Daddy Knows Best - Dad fucks Daughter and her friend - Family Lust.mp4 (195.52 MB)... +Scanning directory: /videos/blazedstudios/selah.rain +Processing: Selah Rain - Mom Gangbanged By Three Sons For Her Birthday - Family Lust.mp4 (Mode: scene) +Downloading Selah Rain - Mom Gangbanged By Three Sons For Her Birthday - Family Lust.mp4 (303.06 MB)... +Scanning directory: /videos/blazedstudios/shelby.paige +Processing: Shelby Paige - My Very First Anal With Daddy - Family Lust, Taboo Family Affairs.mp4 (Mode: scene) +Downloading Shelby Paige - My Very First Anal With Daddy - Family Lust, Taboo Family Affairs.mp4 (186.96 MB)... +Scanning directory: /videos/blazedstudios/bella.ink +Scanning directory: /videos/blazedstudios/isabella.gonzales +Processing: Isabella Gonzales - Tiny Daughter Hypnotized - Family Lust, Taboo Family Affairs.mp4 (Mode: scene) +Downloading Isabella Gonzales - Tiny Daughter Hypnotized - Family Lust, Taboo Family Affairs.mp4 (133.76 MB)... +Scanning directory: /videos/blazedstudios/eliza.eves +Processing: Eliza Eves - Cheating Boyfriend Payback - Blazed Studios.mp4 (Mode: scene) +Downloading Eliza Eves - Cheating Boyfriend Payback - Blazed Studios.mp4 (219.38 MB)... +Scanning directory: /videos/blazedstudios/amy.faye +Processing: Amy Faye in My Daddy is bigger than yours by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Amy Faye in My Daddy is bigger than yours by Taboo Family Affairs.mp4 (132.13 MB)... +Scanning directory: /videos/blazedstudios/gemma.nicole +Processing: Step Sister Cream Pie In Bathroom-(Gemma Nicole)-{Family Lust}-[Brother].mp4 (Mode: scene) +Downloading Step Sister Cream Pie In Bathroom-(Gemma Nicole)-{Family Lust}-[Brother].mp4 (67.67 MB)... +Processing: Gemma Nicole practices on her Dad on Valentines Day. Taboo Family Affairs Vol. 7.mp4 (Mode: scene) +Downloading Gemma Nicole practices on her Dad on Valentines Day. Taboo Family Affairs Vol. 7.mp4 (99.75 MB)... +Scanning directory: /videos/blazedstudios/lexi.lovins +Processing: Lexi Lovins - Lovin' My Son's Cock - Blazed Studios.mp4 (Mode: scene) +Downloading Lexi Lovins - Lovin' My Son's Cock - Blazed Studios.mp4 (91.08 MB)... +Scanning directory: /videos/blazedstudios/angie.noir +Processing: Angie Noir - Moms Seduction - Family Lust.mp4 (Mode: scene) +Downloading Angie Noir - Moms Seduction - Family Lust.mp4 (130.09 MB)... +Scanning directory: /videos/blazedstudios/dixie.lynn +Processing: Dixie Lynn - Family Threesome - Blazed Studios.mp4 (Mode: scene) +Downloading Dixie Lynn - Family Threesome - Blazed Studios.mp4 (268.92 MB)... +Processing: Dixie Lynn - Forbidden Family Frolicking - Blazed Studios. Sister finds Brother jerking off to porn on his phone.mp4 (Mode: scene) +Downloading Dixie Lynn - Forbidden Family Frolicking - Blazed Studios. Sister finds Brother jerking off to porn on his phone.mp4 (218.38 MB)... +Scanning directory: /videos/blazedstudios/olivia.kasady +Processing: Olivia Kasady - Daughter Got Caught Masturbating - Family Lust.mp4 (Mode: scene) +Downloading Olivia Kasady - Daughter Got Caught Masturbating - Family Lust.mp4 (158.16 MB)... +Scanning directory: /videos/blazedstudios/claire.heart +Processing: Claire Heart - Peeping Dad.mp4 (Mode: scene) +Downloading Claire Heart - Peeping Dad.mp4 (152.59 MB)... +Scanning directory: /videos/blazedstudios/natalia.monroe +Processing: Natalie Monroe - Taboo Schoolgirls - Taboo Family Affairs. Brother caught Sister taking nudes.mp4 (Mode: scene) +Downloading Natalie Monroe - Taboo Schoolgirls - Taboo Family Affairs. Brother caught Sister taking nudes.mp4 (121.79 MB)... +Processing: Natalie Monroe - OMG, I Fucked My Brother - Taboo Family Affairs.mp4 (Mode: scene) +Downloading Natalie Monroe - OMG, I Fucked My Brother - Taboo Family Affairs.mp4 (67.27 MB)... +Processing: Family Ties Be Damned-(Natalie Monroe)-{Family Lust}-[Cum Swallowing, Cum in Mouth, Socks].mp4 (Mode: scene) +Downloading Family Ties Be Damned-(Natalie Monroe)-{Family Lust}-[Cum Swallowing, Cum in Mouth, Socks].mp4 (86.70 MB)... +Scanning directory: /videos/blazedstudios/xaya.lovelle +Processing: Xaya Lovelle - Forbidden Family Frolicking - Blazed Studios. Brother and his friend fuck horny Sister.mp4 (Mode: scene) +Downloading Xaya Lovelle - Forbidden Family Frolicking - Blazed Studios. Brother and his friend fuck horny Sister.mp4 (340.24 MB)... +Scanning directory: /videos/blazedstudios/kimber.woods +Processing: Kimber Woods - Under My Control - Family Lust.mp4 (Mode: scene) +Downloading Kimber Woods - Under My Control - Family Lust.mp4 (86.49 MB)... +Scanning directory: /videos/blazedstudios/logan.lace +Processing: Logan Lace - Fatherhood Privileges - Family Lust.mp4 (Mode: scene) +Downloading Logan Lace - Fatherhood Privileges - Family Lust.mp4 (71.67 MB)... +Processing: Fatherhood Privileges-(Logan Lace)-{Taboo Family Affairs}-[Lace, Tattoos & Piercings, creampie].mp4 (Mode: scene) +Downloading Fatherhood Privileges-(Logan Lace)-{Taboo Family Affairs}-[Lace, Tattoos & Piercings, creampie].mp4 (63.57 MB)... +Scanning directory: /videos/blazedstudios/rosie.riches +Processing: Rosie Riches - Busted By Brother; The Payoff - Taboo Family Affairs.mp4 (Mode: scene) +Downloading Rosie Riches - Busted By Brother; The Payoff - Taboo Family Affairs.mp4 (167.99 MB)... +Scanning directory: /videos/blazedstudios/kimmy.kimm +Processing: Kimmy Kimm - Taboo Family Threesomes Vol 2 - Blazed Studios. Sis keeps Bro quiet.mp4 (Mode: scene) +Downloading Kimmy Kimm - Taboo Family Threesomes Vol 2 - Blazed Studios. Sis keeps Bro quiet.mp4 (249.60 MB)... +Processing: Kimmy Kimm - Smashing My Sister - Blazed Studios.mp4 (Mode: scene) +Downloading Kimmy Kimm - Smashing My Sister - Blazed Studios.mp4 (282.13 MB)... +Scanning directory: /videos/blazedstudios/samia.duarte +Processing: Samia Duarte in My Dad Is A Filthy Perv by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Samia Duarte in My Dad Is A Filthy Perv by Taboo Family Affairs.mp4 (125.73 MB)... +Scanning directory: /videos/blazedstudios/amber.nevada +Processing: Amber Nevada in My Dad Is A Filthy Perv by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Amber Nevada in My Dad Is A Filthy Perv by Taboo Family Affairs.mp4 (186.03 MB)... +Scanning directory: /videos/blazedstudios/krystal.orchid +Processing: Krystal Orchid in School Uniform by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Krystal Orchid in School Uniform by Taboo Family Affairs.mp4 (90.69 MB)... +Processing: Krystal Orchid - She Is A Brother Fucker - Taboo Family Affairs.mp4 (Mode: scene) +Downloading Krystal Orchid - She Is A Brother Fucker - Taboo Family Affairs.mp4 (139.88 MB)... +Processing: Krystal Orchid, Olivia Kasady - My BFF and I Blew My Brother - Taboo Family Affairs.mp4 (Mode: scene) +Downloading Krystal Orchid, Olivia Kasady - My BFF and I Blew My Brother - Taboo Family Affairs.mp4 (103.53 MB)... +Processing: First Time with Daddy. Krystal Orchid in Pendant by Taboo Family Affairs.mp4 (Mode: scene) +Downloading First Time with Daddy. Krystal Orchid in Pendant by Taboo Family Affairs.mp4 (104.64 MB)... +Processing: Daughter becomes Daddys Slut. Krystal Orchid in Pendant by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Daughter becomes Daddys Slut. Krystal Orchid in Pendant by Taboo Family Affairs.mp4 (96.87 MB)... +Scanning directory: /videos/blazedstudios/odette.delacroix +Processing: Brother fucks his prostitute Sister. Odette Delacroix - Taboo Schoolgirls - Taboo Family Affairs.mp4 (Mode: scene) +Downloading Brother fucks his prostitute Sister. Odette Delacroix - Taboo Schoolgirls - Taboo Family Affairs.mp4 (95.54 MB)... +Scanning directory: /videos/blazedstudios/stacey.saran +Processing: Stacey Saran in My Dad Is A Filthy Perv by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Stacey Saran in My Dad Is A Filthy Perv by Taboo Family Affairs.mp4 (172.08 MB)... +Scanning directory: /videos/blazedstudios/hope.harper +Processing: Hope Harper gets caught masturbating by her Brother. Taboo Family Affairs Vol. 7.mp4 (Mode: scene) +Downloading Hope Harper gets caught masturbating by her Brother. Taboo Family Affairs Vol. 7.mp4 (94.12 MB)... +Processing: Step Dads Birthday W- Hope and Alyssa-(Hope Harper, Alyssa Hart, Harper)-{Family Lust}.mp4 (Mode: scene) +Downloading Step Dads Birthday W- Hope and Alyssa-(Hope Harper, Alyssa Hart, Harper)-{Family Lust}.mp4 (131.68 MB)... +Processing: Sister has a crush on her Brother. Hope Harper in Taboo Schoolgirls by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Sister has a crush on her Brother. Hope Harper in Taboo Schoolgirls by Taboo Family Affairs.mp4 (87.48 MB)... +Processing: Hope Harper tricks her Brother into fucking her in Incestual Fantasies by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Hope Harper tricks her Brother into fucking her in Incestual Fantasies by Taboo Family Affairs.mp4 (103.61 MB)... +Processing: Hope Harper in My Daddy is bigger than yours by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Hope Harper in My Daddy is bigger than yours by Taboo Family Affairs.mp4 (161.30 MB)... +Scanning directory: /videos/blazedstudios/rikki.rumor +Processing: Rikki Rumor - Be Careful What You Wish For - Family Lust.mp4 (Mode: scene) +Downloading Rikki Rumor - Be Careful What You Wish For - Family Lust.mp4 (161.00 MB)... +Scanning directory: /videos/blazedstudios/abby.paradise +Processing: Abby Paradise - My Brother Gave Me A Creampie - Family Lust.mp4 (Mode: scene) +Downloading Abby Paradise - My Brother Gave Me A Creampie - Family Lust.mp4 (155.12 MB)... +Scanning directory: /videos/blazedstudios/dakota.charms +Processing: Sister Takes Brothers Virginity In Front Of Her Friend. Dakota Charms, Cherry Morgan - Brothers Viagra Birthday - Family Lust.mp4 (Mode: scene) +Downloading Sister Takes Brothers Virginity In Front Of Her Friend. Dakota Charms, Cherry Morgan - Brothers Viagra Birthday - Family Lust.mp4 (166.00 MB)... +Scanning directory: /videos/blazedstudios/kendra.lynn +Processing: Kendra Lynn gets manipulated by her Brother. Taboo Family Affairs Vol. 7.mp4 (Mode: scene) +Downloading Kendra Lynn gets manipulated by her Brother. Taboo Family Affairs Vol. 7.mp4 (150.53 MB)... +Scanning directory: /videos/blazedstudios/michelle.martinez +Processing: Teen Fucks Her Step Dad-(Michelle Martinez)-{Family Lust}-[Birthday, Redistribution, taboo].mp4 (Mode: scene) +Downloading Teen Fucks Her Step Dad-(Michelle Martinez)-{Family Lust}-[Birthday, Redistribution, taboo].mp4 (133.16 MB)... +Processing: Michelle Martinez - Family Confessions - Family Lust.mp4 (Mode: scene) +Downloading Michelle Martinez - Family Confessions - Family Lust.mp4 (150.99 MB)... +Scanning directory: /videos/blazedstudios/dani.blu +Processing: Dani Blu (1) - Smashing My Sister - Blazed Studios.mp4 (Mode: scene) +Downloading Dani Blu (1) - Smashing My Sister - Blazed Studios.mp4 (140.62 MB)... +Processing: Dani Blu (2) - Smashing My Sister - Blazed Studios.mp4 (Mode: scene) +Downloading Dani Blu (2) - Smashing My Sister - Blazed Studios.mp4 (234.09 MB)... +Scanning directory: /videos/blazedstudios/sully.savage +Processing: Sully Savage - You Tag Teamed Your Aunt - Blazed Studios.mp4 (Mode: scene) +Downloading Sully Savage - You Tag Teamed Your Aunt - Blazed Studios.mp4 (263.21 MB)... +Scanning directory: /videos/blazedstudios/ashton.monroe +Processing: Daddys Escort. Ashton Monroe in Taboo Schoolgirls by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Daddys Escort. Ashton Monroe in Taboo Schoolgirls by Taboo Family Affairs.mp4 (60.23 MB)... +Processing: Ashton Monroe - Daughters Fantasy - Family Lust.mp4 (Mode: scene) +Downloading Ashton Monroe - Daughters Fantasy - Family Lust.mp4 (67.99 MB)... +Scanning directory: /videos/blazedstudios/amy.rogue +Processing: Amy Rogue - Catfishing My Brother - Family Lust.mp4 (Mode: scene) +Downloading Amy Rogue - Catfishing My Brother - Family Lust.mp4 (168.00 MB)... +Scanning directory: /videos/blazedstudios/jennifer.bliss +Processing: Jennifer Bliss - Like Father, Like Son - Family Lust.mp4 (Mode: scene) +Downloading Jennifer Bliss - Like Father, Like Son - Family Lust.mp4 (158.79 MB)... +Scanning directory: /videos/blazedstudios/iris.rose +Processing: Sisters Proposal. Iris Rose in Taboo Schoolgirls by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Sisters Proposal. Iris Rose in Taboo Schoolgirls by Taboo Family Affairs.mp4 (100.09 MB)... +Processing: Cheerleader Sister Iris Rose gets pounded by her Brother on couch. Taboo Family Affairs Vol. 7.mp4 (Mode: scene) +Downloading Cheerleader Sister Iris Rose gets pounded by her Brother on couch. Taboo Family Affairs Vol. 7.mp4 (83.52 MB)... +Processing: Iris Rose in My Daddy is bigger than yours by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Iris Rose in My Daddy is bigger than yours by Taboo Family Affairs.mp4 (122.65 MB)... +Scanning directory: /videos/blazedstudios/leilani.lei +Processing: Leilani Lei in My Mother Is My Lover by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Leilani Lei in My Mother Is My Lover by Taboo Family Affairs.mp4 (166.10 MB)... +Scanning directory: /videos/blazedstudios/carly.rae +Processing: Carly Rae in My Dad Is A Filthy Perv by Taboo Family Affairs.mp4 (Mode: scene) +Downloading Carly Rae in My Dad Is A Filthy Perv by Taboo Family Affairs.mp4 (135.35 MB)... +Scanning directory: /videos/blazedstudios/maddison.hardy +Processing: Maddison Hardy - Dad Cums On Her Asshole - Family Lust.mp4 (Mode: scene) +Downloading Maddison Hardy - Dad Cums On Her Asshole - Family Lust.mp4 (129.31 MB)... +Scanning directory: /videos/olivia.stark_aka_olivia.lapiedra/MilkyPeru.2023.Enormes.Tetas.Hermosas.De.Olivia.Stark.XXX.720p.MP4-XXX[XC] +Processing: milkyperu.2023.enormes.tetas.hermosas.de.olivia.stark.xxx.mp4 (Mode: scene) +Downloading milkyperu.2023.enormes.tetas.hermosas.de.olivia.stark.xxx.mp4 (618.75 MB)... +Scanning directory: /videos/riley.jean.aka.alex.jane/FamilyStrokes.24.02.15.Riley.Jean.And.Madison.Morgan.Virgins.For.Valentines.XXX.1080p.MP4-WRB[XC] +Processing: familystrokes.24.02.15.riley.jean.and.madison.morgan.virgins.for.valentines.mp4 (Mode: scene) +Downloading familystrokes.24.02.15.riley.jean.and.madison.morgan.virgins.for.valentines.mp4 (2475.11 MB)... +Scanning directory: /videos/riley.jean.aka.alex.jane/ATKHairy.24.11.08.Riley.Jean.XXX.1080p.MP4-WRB[XC] +Processing: Riley Jean gets in a few good stretches-{ATK Natural & Hairy}.mp4 (Mode: scene) +Downloading Riley Jean gets in a few good stretches-{ATK Natural & Hairy}.mp4 (667.56 MB)... +Scanning directory: /videos/jav/rocket +Processing: RCT-607 - Mother-Son-Sisters.wmv (Mode: scene) +Downloading RCT-607 - Mother-Son-Sisters.wmv (991.48 MB)... +Processing: RCTD-105.mp4 (Mode: scene) +Downloading RCTD-105.mp4 (3900.72 MB)... +Processing: RCTD-336.mp4 (Mode: scene) +Downloading RCTD-336.mp4 (5878.82 MB)... +Processing: If You Think That's Not Your Daughter's Pussy In The Barrel, Fathers, Put Your Dick In It! Fakecest- Pop-up Pirate Game Part 2-{Rocket}.mp4 (Mode: scene) +Downloading If You Think That's Not Your Daughter's Pussy In The Barrel, Fathers, Put Your Dick In It! Fakecest- Pop-up Pirate Game Part 2-{Rocket}.mp4 (1436.06 MB)... +Processing: Family Sex Game Turns Into Fakecest Find Your Daughter If You're Her Father! Milf Stepsisters Special- Look Touch And Fuck - Tell Your Father Just By Looking At His Penis!-{Rocket}.avi (Mode: scene) +Downloading Family Sex Game Turns Into Fakecest Find Your Daughter If You're Her Father! Milf Stepsisters Special- Look Touch And Fuck - Tell Your Father Just By Looking At His Penis!-{Rocket}.avi (1131.09 MB)... +Processing: New- The Watch Part That Stops Time. 17-(Rei Hanamiya, Kanon Momojiri, Aina Shinkawa, Rio Okita)-{Rocket}.mp4 (Mode: scene) +Downloading New- The Watch Part That Stops Time. 17-(Rei Hanamiya, Kanon Momojiri, Aina Shinkawa, Rio Okita)-{Rocket}.mp4 (5878.82 MB)... +Processing: Family Sex Game Turns Into Fakecest If You're Her Father Find Her Naked! Milf Stepsisters Special- Look Touch And Fuck - Can You Tell Your Father Just From Looking At His Penis--{Rocket}.avi (Mode: scene) +Downloading Family Sex Game Turns Into Fakecest If You're Her Father Find Her Naked! Milf Stepsisters Special- Look Touch And Fuck - Can You Tell Your Father Just From Looking At His Penis--{Rocket}.avi (1192.43 MB)... +Processing: RCT-941.mp4 (Mode: scene) +Downloading RCT-941.mp4 (1355.00 MB)... +Processing: The Naughty StepB----------------r Play A Dirty Game. Suddenly It's Fakecest. If You're Her Big Brother, You'll Recognize Her Body!-{Rocket}.avi (Mode: scene) +Downloading The Naughty StepB----------------r Play A Dirty Game. Suddenly It's Fakecest. If You're Her Big Brother, You'll Recognize Her Body!-{Rocket}.avi (1158.19 MB)... +Processing: RCT-299- Part 1-(Komine Hinata, Nozomi Hazuki, Momo Momomiya, Maki Otoha, Yui Takashiro, Nao Tachibana, Mirei Yokoyama)-{Rocket}.wmv (Mode: scene) +Downloading RCT-299- Part 1-(Komine Hinata, Nozomi Hazuki, Momo Momomiya, Maki Otoha, Yui Takashiro, Nao Tachibana, Mirei Yokoyama)-{Rocket}.wmv (1801.50 MB)... +Processing: Family Sex Game Turns Into Fakecest. You're The Son, You Should Know Your Mother's Naked Body! Aunts, All B---d Relatives Special-(Miki Iwashita), Riri Koda (Miri Koda)-{Rocket}.mp4 (Mode: scene) +Downloading Family Sex Game Turns Into Fakecest. You're The Son, You Should Know Your Mother's Naked Body! Aunts, All B---d Relatives Special-(Miki Iwashita), Riri Koda (Miri Koda)-{Rocket}.mp4 (1347.99 MB)... +Processing: Family Sex Game Turns Into Fakecest. Boy Fucking His Stepmom! 4 Sexy Mothers From The Neighborhood Special - Look This Boy Touching And Inserting His cock Inside His Stepmom's Pussy!-(Miki Iwashita), Riri Koda (Miri Koda)-{Rocket}.wmv (Mode: scene) +Downloading Family Sex Game Turns Into Fakecest. Boy Fucking His Stepmom! 4 Sexy Mothers From The Neighborhood Special - Look This Boy Touching And Inserting His cock Inside His Stepmom's Pussy!-(Miki Iwashita), Riri Koda (Miri Koda)-{Rocket}.wmv (1050.75 MB)... +Processing: ROCKET 17th Anniversary User Request Festival- A Family Swap - Two Days with Dad, Mom and Daughter-(Machi Ikuno, Mayu Suzuki, Sakura Kurumi).mp4 (Mode: scene) +Downloading ROCKET 17th Anniversary User Request Festival- A Family Swap - Two Days with Dad, Mom and Daughter-(Machi Ikuno, Mayu Suzuki, Sakura Kurumi).mp4 (4089.35 MB)... +Processing: RCT-280 - Father-Mother-Daughter.avi (Mode: scene) +Downloading RCT-280 - Father-Mother-Daughter.avi (1221.07 MB)... +Processing: RCTD-440-(Yumika Saeki)-{Rocket}.avi (Mode: scene) +Downloading RCTD-440-(Yumika Saeki)-{Rocket}.avi (1093.28 MB)... +Processing: Kinky Family Plays A Sex Game - It Suddenly Turns Into Fakecest! Grandpa Gets His Granddaughter Naked! He'll Take This Spank Bank Material To The Grave! Three Hour Special-{Rocket}.mp4 (Mode: scene) +Downloading Kinky Family Plays A Sex Game - It Suddenly Turns Into Fakecest! Grandpa Gets His Granddaughter Naked! He'll Take This Spank Bank Material To The Grave! Three Hour Special-{Rocket}.mp4 (2157.51 MB)... +Processing: The Beautiful Host Of -You're The Father, You Should Know Your Daughter's Body!- Riri Koda's Operation Surprise Fakecest Part 2. Father, Brother, The Whole Family Plays The Creampie Game Edition-(Miki Iwashita), Riri Koda (Miri Koda)-{Rocket}.mp4 (Mode: scene) +Downloading The Beautiful Host Of -You're The Father, You Should Know Your Daughter's Body!- Riri Koda's Operation Surprise Fakecest Part 2. Father, Brother, The Whole Family Plays The Creampie Game Edition-(Miki Iwashita), Riri Koda (Miri Koda)-{Rocket}.mp4 (972.53 MB)... +Processing: Incest is commonplace in the Okamoto family.-(Riri Okamoto, Sarara Uruki)-{Rocket}.mp4 (Mode: scene) +Downloading Incest is commonplace in the Okamoto family.-(Riri Okamoto, Sarara Uruki)-{Rocket}.mp4 (6111.83 MB)... +Processing: Family Sex Game Turns Into Fakecest Find Your Daughter If You're Her Father! Milf Stepsisters Special Vol.3 - Look Touch And Fuck - Tell Your Father Just By Looking At His Penis!-{Rocket}.mp4 (Mode: scene) +Downloading Family Sex Game Turns Into Fakecest Find Your Daughter If You're Her Father! Milf Stepsisters Special Vol.3 - Look Touch And Fuck - Tell Your Father Just By Looking At His Penis!-{Rocket}.mp4 (1255.93 MB)... +Processing: RCTD-388.mp4 (Mode: scene) +Downloading RCTD-388.mp4 (5569.20 MB)... +Processing: If you're a son, try to guess your mother's naked body! × Wall Ass Incest Game-{Rocket}.mp4 (Mode: scene) +Downloading If you're a son, try to guess your mother's naked body! × Wall Ass Incest Game-{Rocket}.mp4 (3558.21 MB)... +Processing: RCTD-545.mp4 (Mode: scene) +Downloading RCTD-545.mp4 (5096.16 MB)... +Processing: A perverted family plays a sex game that turns into Fakecest before they know it! The son guesses his Stepmom and Stepsisters' naked bodies! A New Years home visit, large family orgies special.-{Rocket}.mp4 (Mode: scene) +Downloading A perverted family plays a sex game that turns into Fakecest before they know it! The son guesses his Stepmom and Stepsisters' naked bodies! A New Years home visit, large family orgies special.-{Rocket}.mp4 (1355.00 MB)... +Processing: Family Sex Game Turns Into Fakecest If You Are Her Son, Try To Determine Your Naked Mother! Look, Touch, Fuck, The Son Must Use His Dick To Find His Mother! Part 2 4-{Rocket}.avi (Mode: scene) +Downloading Family Sex Game Turns Into Fakecest If You Are Her Son, Try To Determine Your Naked Mother! Look, Touch, Fuck, The Son Must Use His Dick To Find His Mother! Part 2 4-{Rocket}.avi (1054.79 MB)... +Processing: Guessing Game! Fondle a Series of Y--------ls and Guess Which Body Belongs to Your Daughter!-(Akai Miki, Nozomi Hazuki, Momo Momomiya, Yui Takashiro, Nao Tachibana, Mirei Yokoyama, Miki Iwashita), Riri Koda (Miri Koda)-{Rocket}.avi (Mode: scene) +Downloading Guessing Game! Fondle a Series of Y--------ls and Guess Which Body Belongs to Your Daughter!-(Akai Miki, Nozomi Hazuki, Momo Momomiya, Yui Takashiro, Nao Tachibana, Mirei Yokoyama, Miki Iwashita), Riri Koda (Miri Koda)-{Rocket}.avi (2113.53 MB)... +Processing: Sexy Game With Naughty Stepparent And Offspring - Things Suddenly Turn Into Lustful Lesbian Fakecest, Can Mama Guess Which Body Is Her Daughter's! Stepmother And Daughter Strap-On Dildo Lesbian Special-{Rocket}.avi (Mode: scene) +Downloading Sexy Game With Naughty Stepparent And Offspring - Things Suddenly Turn Into Lustful Lesbian Fakecest, Can Mama Guess Which Body Is Her Daughter's! Stepmother And Daughter Strap-On Dildo Lesbian Special-{Rocket}.avi (679.44 MB)... +Processing: 2-{Rocket}.avi (Mode: scene) +Downloading 2-{Rocket}.avi (1004.47 MB)... +Processing: Family Sex Game Turns Into Fakecest- If You Are Her Son Try To Determine Your Naked Mother! Look Touch Fuck The Son Must Use His Dick To Find His Mother!-(Miki Iwashita), Riri Koda (Miri Koda)-{Rocket}.avi (Mode: scene) +Downloading Family Sex Game Turns Into Fakecest- If You Are Her Son Try To Determine Your Naked Mother! Look Touch Fuck The Son Must Use His Dick To Find His Mother!-(Miki Iwashita), Riri Koda (Miri Koda)-{Rocket}.avi (1079.94 MB)... +Processing: If you're a father, you should be able to tell which one is your daughter's naked body! Beautiful host, Miki Iwashita, gets a surprise in her usual panel when she sees her brother! Fakecest project!-(Miki Iwashita), Riri Koda (Miri Koda)-{Rocket}.mp4 (Mode: scene) +Downloading If you're a father, you should be able to tell which one is your daughter's naked body! Beautiful host, Miki Iwashita, gets a surprise in her usual panel when she sees her brother! Fakecest project!-(Miki Iwashita), Riri Koda (Miri Koda)-{Rocket}.mp4 (1059.63 MB)... +Processing: 3-{Rocket}.avi (Mode: scene) +Downloading 3-{Rocket}.avi (1472.58 MB)... +Processing: The See If You Can Pick Out Your Own Daughter's Naked Body After We Lifted Up Her Skirt Game! 3-{Rocket}.mp4 (Mode: scene) +Downloading The See If You Can Pick Out Your Own Daughter's Naked Body After We Lifted Up Her Skirt Game! 3-{Rocket}.mp4 (1880.23 MB)... +Processing: RCT-305 - Father-Daughter.avi (Mode: scene) +Downloading RCT-305 - Father-Daughter.avi (1206.39 MB)... +Processing: RCT-299- Part 2-(Komine Hinata, Nozomi Hazuki, Momo Momomiya, Maki Otoha, Yui Takashiro, Nao Tachibana, Mirei Yokoyama)-{Rocket}-[Compilation, JAV, Missing Performer (Female), Missing Performer (Male), Sex Game, creampie].wmv (Mode: scene) +Downloading RCT-299- Part 2-(Komine Hinata, Nozomi Hazuki, Momo Momomiya, Maki Otoha, Yui Takashiro, Nao Tachibana, Mirei Yokoyama)-{Rocket}-[Compilation, JAV, Missing Performer (Female), Missing Performer (Male), Sex Game, creampie].wmv (1485.54 MB)... +Processing: RCTD-404 - Imaginary Items Ultimate Evolution Series Real Wristwatch That Stops Time Freezing Time For The Whole Step Family And Having Some Fun Special-(Satori Fujinami, Hijiri Maihara, Rumi Kodama, Meiko Nakao, Meiko Nakao (NOA))-{Rocket}.mp4 (Mode: scene) +Downloading RCTD-404 - Imaginary Items Ultimate Evolution Series Real Wristwatch That Stops Time Freezing Time For The Whole Step Family And Having Some Fun Special-(Satori Fujinami, Hijiri Maihara, Rumi Kodama, Meiko Nakao, Meiko Nakao (NOA))-{Rocket}.mp4 (5902.94 MB)... +Processing: RCT-106 - Father-Daughter.avi (Mode: scene) +Downloading RCT-106 - Father-Daughter.avi (859.47 MB)... +Processing: RCT-440 A horny sibling is a naughty game play without.mp4 (Mode: scene) +Downloading RCT-440 A horny sibling is a naughty game play without.mp4 (4542.54 MB)... +Processing: RCTD-545- Wall Ass X Incest Game-(Sara Uruki, Miina Konno, Kyoka Suzune)-{Rocket}.mp4 (Mode: scene) +Downloading RCTD-545- Wall Ass X Incest Game-(Sara Uruki, Miina Konno, Kyoka Suzune)-{Rocket}.mp4 (5096.16 MB)... +Processing: Siblings Sex Game Turns Into Fakecest Right Before Their Eyes, Try to Guess Which Naked Body is Your Stepsisters!-{Rocket}.avi (Mode: scene) +Downloading Siblings Sex Game Turns Into Fakecest Right Before Their Eyes, Try to Guess Which Naked Body is Your Stepsisters!-{Rocket}.avi (1217.80 MB)... +Processing: RCT-409-(Serenade Michiko, Ririka Suzuki, Ageha Mizuki, Yuzu Haruna)-{Rocket}.avi (Mode: scene) +Downloading RCT-409-(Serenade Michiko, Ririka Suzuki, Ageha Mizuki, Yuzu Haruna)-{Rocket}.avi (1268.02 MB)... +Processing: Wall Ass x Incest Game 2-{Rocket}.mp4 (Mode: scene) +Downloading Wall Ass x Incest Game 2-{Rocket}.mp4 (5510.71 MB)... +Processing: Life Switch ~ Ultimate Step Father And Step Daughter Couple ~ Rika Tsubaki-{Rocket}.mp4 (Mode: scene) +Downloading Life Switch ~ Ultimate Step Father And Step Daughter Couple ~ Rika Tsubaki-{Rocket}.mp4 (5569.20 MB)... +Processing: Kasumi Tsukino's Gender Swap Big-breasted Stepmother Edition ~Gibomusu Change!-~-{Rocket}.mp4 (Mode: scene) +Downloading Kasumi Tsukino's Gender Swap Big-breasted Stepmother Edition ~Gibomusu Change!-~-{Rocket}.mp4 (6311.28 MB)... +Processing: RCTD-649-(Kasumi Ikeya)-{Rocket}.mp4 (Mode: scene) +Downloading RCTD-649-(Kasumi Ikeya)-{Rocket}.mp4 (7252.16 MB)... +Processing: Wall Ass x Incest Game 3-{Rocket}.mp4 (Mode: scene) +Downloading Wall Ass x Incest Game 3-{Rocket}.mp4 (4313.36 MB)... +Scanning directory: /videos/jav/incest +Processing: CEMD-675 Happy incest Im the familys sex relief servant 5 - Miya.mp4 (Mode: scene) +Downloading CEMD-675 Happy incest Im the familys sex relief servant 5 - Miya.mp4 (1163.20 MB)... +Processing: I admire my step sister's thick hair. A twisted incest between my step sister with pubic hair like a jungle and my brother with a pubic hair fetish. A total of 7 ejaculations (Female Brat 28) Mizuno Roa-(Roa Mizuno)-{First Star}.mp4 (Mode: scene) +Downloading I admire my step sister's thick hair. A twisted incest between my step sister with pubic hair like a jungle and my brother with a pubic hair fetish. A total of 7 ejaculations (Female Brat 28) Mizuno Roa-(Roa Mizuno)-{First Star}.mp4 (789.99 MB)... +Processing: HUNTA-325 Promiscuous sister vs virile virgin brother A sibling .mp4 (Mode: scene) +Downloading HUNTA-325 Promiscuous sister vs virile virgin brother A sibling .mp4 (1430.57 MB)... +Processing: SUJI-177 Sibling incest Forbidden family play and obscene creamp.mp4 (Mode: scene) +Downloading SUJI-177 Sibling incest Forbidden family play and obscene creamp.mp4 (856.37 MB)... +Processing: RCTD-031 Watch Online Mary TachibanaOshikawa YuriHaruna Nakayama.mp4 (Mode: scene) +Downloading RCTD-031 Watch Online Mary TachibanaOshikawa YuriHaruna Nakayama.mp4 (802.69 MB)... +Processing: DLY-010-(Kirishima Sakura, Kiyoka Taira, Mai Miori)-{Prestige}-[Dining Room, Food, Hardcore, Japanese, Table, Voyeur, squirting].mp4 (Mode: scene) +Downloading DLY-010-(Kirishima Sakura, Kiyoka Taira, Mai Miori)-{Prestige}-[Dining Room, Food, Hardcore, Japanese, Table, Voyeur, squirting].mp4 (2518.29 MB)... +Processing: My sister, who has a husband, helped me practice kissing with her. She went wild and kept cumming inside me. SODstar x Pink Family Honjo Suzu-(Suzu Honjo)-{SOD Create}.mp4 (Mode: scene) +Downloading My sister, who has a husband, helped me practice kissing with her. She went wild and kept cumming inside me. SODstar x Pink Family Honjo Suzu-(Suzu Honjo)-{SOD Create}.mp4 (3472.39 MB)... +Processing: Taste Of A MILF, Tokyo Stepmom Fuck 10 Women 4 Hours-{Big Morkal}.mp4 (Mode: scene) +Downloading Taste Of A MILF, Tokyo Stepmom Fuck 10 Women 4 Hours-{Big Morkal}.mp4 (2341.36 MB)... +Processing: SUJI-181 Forbidden sibling milking game Enchanting creampie inte.mp4 (Mode: scene) +Downloading SUJI-181 Forbidden sibling milking game Enchanting creampie inte.mp4 (776.08 MB)... +Processing: Domestic Mistress Contract Reika Takeda-{Takara Eizo}.mp4 (Mode: scene) +Downloading Domestic Mistress Contract Reika Takeda-{Takara Eizo}.mp4 (782.17 MB)... +Processing: DANDY-684 Watch Online What should I do to get my aunt excited A.mp4 (Mode: scene) +Downloading DANDY-684 Watch Online What should I do to get my aunt excited A.mp4 (970.11 MB)... +Processing: AP-417 Were siblings so its just practice right My seriously tim.mp4 (Mode: scene) +Downloading AP-417 Were siblings so its just practice right My seriously tim.mp4 (1407.55 MB)... +Processing: HAME-040 Poisonous Parents Innocent Mixed Bathing with.mp4 (Mode: scene) +Downloading HAME-040 Poisonous Parents Innocent Mixed Bathing with.mp4 (2460.43 MB)... +Processing: RCTD-590-(Takarada Monami, Reika Takeda, Reina Aoi)-{Rocket}-[Big Tits, Family Roleplay, MILF (30+), Son, Watch, creampie].mp4 (Mode: scene) +Downloading RCTD-590-(Takarada Monami, Reika Takeda, Reina Aoi)-{Rocket}-[Big Tits, Family Roleplay, MILF (30+), Son, Watch, creampie].mp4 (1232.17 MB)... +Processing: RCT-962 Watch Online Miyu SaitoSakurano YuinaAi Tsukimoto Domest.mp4 (Mode: scene) +Downloading RCT-962 Watch Online Miyu SaitoSakurano YuinaAi Tsukimoto Domest.mp4 (694.67 MB)... +Processing: RCTD-072 Watch Online HinamirenNatsumi IzumiAya MiuraYuka Hasega.mp4 (Mode: scene) +Downloading RCTD-072 Watch Online HinamirenNatsumi IzumiAya MiuraYuka Hasega.mp4 (1227.75 MB)... +Processing: BKJS-022 Its not cheating because its family right.mp4 (Mode: scene) +Downloading BKJS-022 Its not cheating because its family right.mp4 (1853.96 MB)... +Processing: RCTD-232 Watch Online If you are a son try guessing the nakednes.mp4 (Mode: scene) +Downloading RCTD-232 Watch Online If you are a son try guessing the nakednes.mp4 (1122.40 MB)... +Processing: I Get A Huge Boner When My Older Sister Sits On My Lap! Our Parents Can't See The Way Her Bare Thighs Rub Me, Or Our I----tuous Secret!-{Natural High}.mp4 (Mode: scene) +Downloading I Get A Huge Boner When My Older Sister Sits On My Lap! Our Parents Can't See The Way Her Bare Thighs Rub Me, Or Our I----tuous Secret!-{Natural High}.mp4 (5620.83 MB)... +Processing: The Shoda Family's Twisted Sex Education Chisato Shoda Mari Koizumi-(Ko Asumi (Mari Koizumi))-{Nadeshiko}.mp4 (Mode: scene) +Downloading The Shoda Family's Twisted Sex Education Chisato Shoda Mari Koizumi-(Ko Asumi (Mari Koizumi))-{Nadeshiko}.mp4 (1165.79 MB)... +Processing: RCT-906 Watch Online Lewd family rivalry - Incest creampie big s.mp4 (Mode: scene) +Downloading RCT-906 Watch Online Lewd family rivalry - Incest creampie big s.mp4 (706.90 MB)... +Processing: HONE-291 Estrus Erotic cartoon body mother Shirayuki.mp4 (Mode: scene) +Downloading HONE-291 Estrus Erotic cartoon body mother Shirayuki.mp4 (1316.66 MB)... +Processing: SW-523 Aunt and 6 cousins adult Boyne are in front of y.mp4 (Mode: scene) +Downloading SW-523 Aunt and 6 cousins adult Boyne are in front of y.mp4 (2522.67 MB)... +Processing: NHDTA-365 An adult amusement park where you can have se.mp4 (Mode: scene) +Downloading NHDTA-365 An adult amusement park where you can have se.mp4 (759.86 MB)... +Processing: SDMF-009 Ive Spent 10 Years Sucking My Stepsisters Ti.mp4 (Mode: scene) +Downloading SDMF-009 Ive Spent 10 Years Sucking My Stepsisters Ti.mp4 (3935.00 MB)... +Processing: NUKA-075 Six Creampies Without Pulling Out Mother and.mp4 (Mode: scene) +Downloading NUKA-075 Six Creampies Without Pulling Out Mother and.mp4 (1390.52 MB)... +Processing: Boner For My Little Sister, Ruthless Lust-{Kanransha}.mp4 (Mode: scene) +Downloading Boner For My Little Sister, Ruthless Lust-{Kanransha}.mp4 (818.46 MB)... +Processing: HUNTB-186 Erection inevitable A large family of 7 peop.mp4 (Mode: scene) +Downloading HUNTB-186 Erection inevitable A large family of 7 peop.mp4 (1406.61 MB)... +Scanning directory: /videos/jav/aphrodisiacs +Processing: START-255-(Rei Kamiki)-{SOD Create}.mp4 (Mode: scene) +Downloading START-255-(Rei Kamiki)-{SOD Create}.mp4 (3856.79 MB)... +Processing: RCT-406 Estrus In The Room With My Sister Without.mp4 (Mode: scene) +Downloading RCT-406 Estrus In The Room With My Sister Without.mp4 (442.64 MB)... +Processing: I Was Going To Use This Aphrodisiac On My Girlfriend, But My Older Sister Took It Instead And Went Into Heat In My Room. 2-(Miki Sunohara, Azumi Mizushima, Ai Mizushima, Yu Anzu)-{Rocket}.mp4 (Mode: scene) +Downloading I Was Going To Use This Aphrodisiac On My Girlfriend, But My Older Sister Took It Instead And Went Into Heat In My Room. 2-(Miki Sunohara, Azumi Mizushima, Ai Mizushima, Yu Anzu)-{Rocket}.mp4 (3163.65 MB)... +Scanning directory: /videos/jav/followup +Scanning directory: /videos/jav/performers +Scanning directory: /videos/jav/freeuse +Scanning directory: /videos/jav/dvdes_lowhurdles +Processing: DVDES-481 A World Where SEX Hurdle Is Abnormally Low 1 - Videos .mp4 (Mode: scene) +Downloading DVDES-481 A World Where SEX Hurdle Is Abnormally Low 1 - Videos .mp4 (532.76 MB)... +Processing: A World with Exceptionally Low Hurdles to SEX 2-(Ayako Kanou, Kyoko Maki, Mikuru Mio, Minako Uchida, Sayaka Yuki)-{DEEP'S}.mp4 (Mode: scene) +Downloading A World with Exceptionally Low Hurdles to SEX 2-(Ayako Kanou, Kyoko Maki, Mikuru Mio, Minako Uchida, Sayaka Yuki)-{DEEP'S}.mp4 (855.23 MB)... +Processing: A World with Exceptionally Low Hurdles to SEX 8-(Arimura Chika, Ayako Kanou, Nanako Asahina, Aimi Usui, Ayu Sakurai, Kana Imai, Chika Arimura, Haruka Amane, Shiori Kasuga, Yoshino Fukatsu)-{DEEP'S}.mp4 (Mode: scene) +Downloading A World with Exceptionally Low Hurdles to SEX 8-(Arimura Chika, Ayako Kanou, Nanako Asahina, Aimi Usui, Ayu Sakurai, Kana Imai, Chika Arimura, Haruka Amane, Shiori Kasuga, Yoshino Fukatsu)-{DEEP'S}.mp4 (1196.71 MB)... +Processing: A World, Where It Is Too Easy To Get Laid 10 Special-(Ayako Kanou, Kurea Hasumi, Ito Yoshikawa, Ai Asakura, Saki Hatsumi, Nozomi Hatzuki, Nanami Hirose)-{DEEP'S}.mp4 (Mode: scene) +Downloading A World, Where It Is Too Easy To Get Laid 10 Special-(Ayako Kanou, Kurea Hasumi, Ito Yoshikawa, Ai Asakura, Saki Hatsumi, Nozomi Hatzuki, Nanami Hirose)-{DEEP'S}.mp4 (2840.63 MB)... +Processing: [25th anniversary SP] A world with extremely low hurdles for Shin and SEX-(Himari Ayase, Mayu Suzuki, Ena Satsuki, Himari Kinoshita (Himari Hanazawa), Mitsuki Nagisa, Yua Kawaei)-{DEEP'S}.mp4 (Mode: scene) +Downloading [25th anniversary SP] A world with extremely low hurdles for Shin and SEX-(Himari Ayase, Mayu Suzuki, Ena Satsuki, Himari Kinoshita (Himari Hanazawa), Mitsuki Nagisa, Yua Kawaei)-{DEEP'S}.mp4 (946.28 MB)... +Processing: DVDES-795 English subbed A World with Exceptionally Low Hurdles .mp4 (Mode: scene) +Downloading DVDES-795 English subbed A World with Exceptionally Low Hurdles .mp4 (1659.55 MB)... +Processing: A World with Exceptionally Low Hurdles to SEX 7-(Ayako Kanou, Ayumi Takanashi, Emi Takagi, Karin Yu, Miwako Yamamoto, Riku Minato, Satoko Momose)-{DEEP'S}.mp4 (Mode: scene) +Downloading A World with Exceptionally Low Hurdles to SEX 7-(Ayako Kanou, Ayumi Takanashi, Emi Takagi, Karin Yu, Miwako Yamamoto, Riku Minato, Satoko Momose)-{DEEP'S}.mp4 (828.43 MB)... +Processing: A World with Exceptionally Low Hurdles to SEX 5-(Ayako Kanou, Yuki Natsume, Ai Wakana, Hitomi Honjo, Jun Mamiya, Natsume Inagawa)-{DEEP'S}.mp4 (Mode: scene) +Downloading A World with Exceptionally Low Hurdles to SEX 5-(Ayako Kanou, Yuki Natsume, Ai Wakana, Hitomi Honjo, Jun Mamiya, Natsume Inagawa)-{DEEP'S}.mp4 (761.33 MB)... +Processing: A World with Exceptionally Low Hurdles to SEX 11-(Natsuki Minami, Karin Natsumi, Shinobu Oishi, Mari Hamamoto, Ryoko Murakami)-{DEEP'S}.mp4 (Mode: scene) +Downloading A World with Exceptionally Low Hurdles to SEX 11-(Natsuki Minami, Karin Natsumi, Shinobu Oishi, Mari Hamamoto, Ryoko Murakami)-{DEEP'S}.mp4 (2146.72 MB)... +Processing: A World Where Sex Is Extremely Easy 6 Special-(Ayako Kanou, Eriko Miura, Yu Shinoda, Maika Asai, Minami Hirahara, Akari Asagiri, Haruna Aikawa, Kana Imai, Chisa Hiruma)-{DEEP'S}.mp4 (Mode: scene) +Downloading A World Where Sex Is Extremely Easy 6 Special-(Ayako Kanou, Eriko Miura, Yu Shinoda, Maika Asai, Minami Hirahara, Akari Asagiri, Haruna Aikawa, Kana Imai, Chisa Hiruma)-{DEEP'S}.mp4 (1557.32 MB)... +Processing: A World with Exceptionally Low Hurdles to SEX 4-(Riko Miyase, Mai Henmi, Saki Mizumi, Saki Hatsumi, Misa Yuki, Ririka Misuzu)-{DEEP'S}.mp4 (Mode: scene) +Downloading A World with Exceptionally Low Hurdles to SEX 4-(Riko Miyase, Mai Henmi, Saki Mizumi, Saki Hatsumi, Misa Yuki, Ririka Misuzu)-{DEEP'S}.mp4 (1034.50 MB)... +Scanning directory: /videos/jav/urination +Processing: My Wife's Little Sister Pissed On Me, Teased My Cock, And Made Me Cum Multiple Times. Aoi Shirasaki-(Kotone Suzumiya)-{FREEDOM}.mp4 (Mode: scene) +Downloading My Wife's Little Sister Pissed On Me, Teased My Cock, And Made Me Cum Multiple Times. Aoi Shirasaki-(Kotone Suzumiya)-{FREEDOM}.mp4 (675.54 MB)... +Scanning directory: /videos/andi.rose/PrincessCum.23.09.28.Andi.Rose.Stepsis.Wants.To.Know.If.I.Wrap.It.XXX.1080p.MP4-WRB[XC] +Processing: princesscum.23.09.28.andi.rose.stepsis.wants.to.know.if.i.wrap.it.mp4 (Mode: scene) +Downloading princesscum.23.09.28.andi.rose.stepsis.wants.to.know.if.i.wrap.it.mp4 (1756.26 MB)... +Scanning directory: /videos/andi.rose/BrattySis.23.09.22.Andi.Rose.My.Stepsister.Thinks.She.Is.A.Princess.XXX.1080p.MP4-WRB[XC] +Processing: brattysis.23.09.22.andi.rose.my.stepsister.thinks.she.is.a.princess.mp4 (Mode: scene) +Downloading brattysis.23.09.22.andi.rose.my.stepsister.thinks.she.is.a.princess.mp4 (1223.38 MB)... +Scanning directory: /videos/andi.rose/PrincessCum.23.06.24.Andi.Rose.Using.My.Juicy.Pussy.To.Tempt.My.Stepbrother.XXX.1080p.MP4-WRB[XC] +Processing: pc.23.06.24.andi.rose.using.my.juicy.pussy.to.tempt.my.stepbrother.1080p.mp4 (Mode: scene) +Downloading pc.23.06.24.andi.rose.using.my.juicy.pussy.to.tempt.my.stepbrother.1080p.mp4 (1479.76 MB)... +Scanning directory: /videos/andi.rose/PrimalFetish.25.08.17.Jay.Romero.And.Andi.Rose.XXX.480p.MP4-XXX[XC] +Processing: PrimalFetish.25.08.17.Jay.Romero.And.Andi.Rose.XXX.480p.MP4MaMi.480p.mp4 (Mode: scene) +Downloading PrimalFetish.25.08.17.Jay.Romero.And.Andi.Rose.XXX.480p.MP4MaMi.480p.mp4 (354.20 MB)... +Scanning directory: /videos/ai_generated/Demon Girl Fucked +Processing: Demon Girl Fucked.mp4 (Mode: scene) +Downloading Demon Girl Fucked.mp4 (2691.37 MB)... +Scanning directory: /videos/redmilf/misty.moons +Processing: MILF1400 - Female Lust, Sister's Lusty Thoughts.mp4 (Mode: scene) +Downloading MILF1400 - Female Lust, Sister's Lusty Thoughts.mp4 (145.10 MB)... +Processing: MILF1250 - Family Game Night.mp4 (Mode: scene) +Downloading MILF1250 - Family Game Night.mp4 (554.19 MB)... +Processing: DID998 Lesson Gets Out of Hand.mp4 (Mode: scene) +Downloading DID998 Lesson Gets Out of Hand.mp4 (195.85 MB)... +Processing: MILF1182 - The Inheritance - Rachel Steele and Misty Moons.mp4 (Mode: scene) +Downloading MILF1182 - The Inheritance - Rachel Steele and Misty Moons.mp4 (304.76 MB)... +Processing: MILF1031 - Body and Brother Betrayal.mp4 (Mode: scene) +Downloading MILF1031 - Body and Brother Betrayal.mp4 (136.35 MB)... +Processing: MILF 1518 - Rachel Steele, Misty - Freezing Males, Sons Revenge - Taboo Tales Volume 78 - Red Milf Productions. Son controls his Mom and girlfriend.mp4 (Mode: scene) +Downloading MILF 1518 - Rachel Steele, Misty - Freezing Males, Sons Revenge - Taboo Tales Volume 78 - Red Milf Productions. Son controls his Mom and girlfriend.mp4 (155.11 MB)... +Processing: DID1179 The Busty Widow Maker.mp4 (Mode: scene) +Downloading DID1179 The Busty Widow Maker.mp4 (124.60 MB)... +Processing: MILF1266 - A Day in the Life of Mother Daughter Hooker Team, Jessica.mp4 (Mode: scene) +Downloading MILF1266 - A Day in the Life of Mother Daughter Hooker Team, Jessica.mp4 (98.95 MB)... +Processing: DID1208 Rachel and Daughter Pay the Vig, Part 2.mp4 (Mode: scene) +Downloading DID1208 Rachel and Daughter Pay the Vig, Part 2.mp4 (64.22 MB)... +Processing: MILF1265 - A Day in the Life of Mother Daughter Hooker Team.mp4 (Mode: scene) +Downloading MILF1265 - A Day in the Life of Mother Daughter Hooker Team.mp4 (169.39 MB)... +Processing: DID997 Ex-Girlfriend Revenge.mp4 (Mode: scene) +Downloading DID997 Ex-Girlfriend Revenge.mp4 (99.90 MB)... +Processing: MILF1267 - A Day in the Life of Mother Daughter XXXX Team, Misty.mp4 (Mode: scene) +Downloading MILF1267 - A Day in the Life of Mother Daughter XXXX Team, Misty.mp4 (111.46 MB)... +Processing: MILF927 - Taboo Stories, Family Gathering, Stacie's Gangbang.mp4 (Mode: scene) +Downloading MILF927 - Taboo Stories, Family Gathering, Stacie's Gangbang.mp4 (121.49 MB)... +Processing: MILF1353HD - Mother's Worst Nightmare, Having My Brother's Baybee -Misty Moons.mp4 (Mode: scene) +Downloading MILF1353HD - Mother's Worst Nightmare, Having My Brother's Baybee -Misty Moons.mp4 (463.08 MB)... +Processing: DID1142 The Deviant Priest and His Acolyte.mp4 (Mode: scene) +Downloading DID1142 The Deviant Priest and His Acolyte.mp4 (167.97 MB)... +Processing: DID701 - Thieving Bitch .mp4 (Mode: scene) +Downloading DID701 - Thieving Bitch .mp4 (143.09 MB)... +Processing: MILF1518 - Freezing Males Sons Revenge.mp4 (Mode: scene) +Downloading MILF1518 - Freezing Males Sons Revenge.mp4 (132.62 MB)... +Processing: DID676 - Asylum Escapee Revenge Part 2.mp4 (Mode: scene) +Downloading DID676 - Asylum Escapee Revenge Part 2.mp4 (99.21 MB)... +Processing: MILF1304 - Incriminating Incest.mp4 (Mode: scene) +Downloading MILF1304 - Incriminating Incest.mp4 (187.12 MB)... +Processing: MILF886 - Taboo Stories, Mind Control - Misty Moon, Rachel Steele.mp4 (Mode: scene) +Downloading MILF886 - Taboo Stories, Mind Control - Misty Moon, Rachel Steele.mp4 (287.91 MB)... +Processing: MILF1339HD - Spring Break Follies- Misty Moons.mp4 (Mode: scene) +Downloading MILF1339HD - Spring Break Follies- Misty Moons.mp4 (578.58 MB)... +Processing: MILF1285 - Mind Control - Fathers lust Deceitful Daughter - Misty Moons.mp4 (Mode: scene) +Downloading MILF1285 - Mind Control - Fathers lust Deceitful Daughter - Misty Moons.mp4 (229.40 MB)... +Processing: DID1206 Rachel and Daughter Pay the Vig.mp4 (Mode: scene) +Downloading DID1206 Rachel and Daughter Pay the Vig.mp4 (135.97 MB)... +Processing: DID645 - Mom is Out of Control .mp4 (Mode: scene) +Downloading DID645 - Mom is Out of Control .mp4 (111.28 MB)... +Processing: MILF 1195 - Mind Control, Sexual Software-(Mystick Moons, Grace Evangeline)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF 1195 - Mind Control, Sexual Software-(Mystick Moons, Grace Evangeline)-{Rachel Steele}.mp4 (468.40 MB)... +Processing: MILF1008 - I Dare You -creampie.mp4 (Mode: scene) +Downloading MILF1008 - I Dare You -creampie.mp4 (491.54 MB)... +Processing: DID1099 Men Are Pigs.mp4 (Mode: scene) +Downloading DID1099 Men Are Pigs.mp4 (178.82 MB)... +Processing: MILF937 - Wicked Mother Sells Daughter - Misty Moons.mp4 (Mode: scene) +Downloading MILF937 - Wicked Mother Sells Daughter - Misty Moons.mp4 (739.89 MB)... +Processing: DID675 - Asylum Escapee Revenge, Part 1 .mp4 (Mode: scene) +Downloading DID675 - Asylum Escapee Revenge, Part 1 .mp4 (89.17 MB)... +Processing: DixiesTrailerPark - Misty and Kelsie Cummings All the girl in my family are Bi.mp4 (Mode: scene) +Downloading DixiesTrailerPark - Misty and Kelsie Cummings All the girl in my family are Bi.mp4 (137.41 MB)... +Processing: Milf921 - Taboo Stories, Family Gathering - Misty Moons.mp4 (Mode: scene) +Downloading Milf921 - Taboo Stories, Family Gathering - Misty Moons.mp4 (685.55 MB)... +Processing: DID1261 Stepdaughter's Lesson.mp4 (Mode: scene) +Downloading DID1261 Stepdaughter's Lesson.mp4 (151.35 MB)... +Processing: MILF1614 Freezing Females - Dealer's Dolls.mp4 (Mode: scene) +Downloading MILF1614 Freezing Females - Dealer's Dolls.mp4 (265.71 MB)... +Processing: MILF875 - Taboo Stories, Family Lover's Triangle.mp4 (Mode: scene) +Downloading MILF875 - Taboo Stories, Family Lover's Triangle.mp4 (256.83 MB)... +Processing: DID638 Goth Gal gets Fucked and Facialed, Part 2 - XFantazy.-1.mp4 (Mode: scene) +Downloading DID638 Goth Gal gets Fucked and Facialed, Part 2 - XFantazy.-1.mp4 (73.29 MB)... +Processing: DID994 - Whorehouse Hell, Misty's Trials.mp4 (Mode: scene) +Downloading DID994 - Whorehouse Hell, Misty's Trials.mp4 (154.35 MB)... +Processing: MILF1020 - Falling for Aunt Rachel, Stacie Tries Again.mp4 (Mode: scene) +Downloading MILF1020 - Falling for Aunt Rachel, Stacie Tries Again.mp4 (283.88 MB)... +Processing: MILF1507 - Taboo Stories, Father's Weakness.mp4 (Mode: scene) +Downloading MILF1507 - Taboo Stories, Father's Weakness.mp4 (176.54 MB)... +Processing: DID636 - Goth Gal gets Fucked and Facialed .mp4 (Mode: scene) +Downloading DID636 - Goth Gal gets Fucked and Facialed .mp4 (267.10 MB)... +Processing: MILF862 - Sister Sex Fantasy.mp4 (Mode: scene) +Downloading MILF862 - Sister Sex Fantasy.mp4 (229.45 MB)... +Processing: DID1004 Cable Repairman Revenge .mp4 (Mode: scene) +Downloading DID1004 Cable Repairman Revenge .mp4 (94.30 MB)... +Processing: DID1034- Spoiled Sisters Suck.mp4 (Mode: scene) +Downloading DID1034- Spoiled Sisters Suck.mp4 (115.98 MB)... +Processing: DID1018 - White Slavery Training Misty .mp4 (Mode: scene) +Downloading DID1018 - White Slavery Training Misty .mp4 (191.76 MB)... +Processing: MILF1233 - misty - Daddy Fill My Womb.mp4 (Mode: scene) +Downloading MILF1233 - misty - Daddy Fill My Womb.mp4 (150.85 MB)... +Processing: DID1212 Stockholm Syndrome.mp4 (Mode: scene) +Downloading DID1212 Stockholm Syndrome.mp4 (197.87 MB)... +Processing: MILF1038 - Family Company Takeover-Misty Moons.mp4 (Mode: scene) +Downloading MILF1038 - Family Company Takeover-Misty Moons.mp4 (286.03 MB)... +Processing: DID934- Vengeful Tutor, Fucked Family.mp4 (Mode: scene) +Downloading DID934- Vengeful Tutor, Fucked Family.mp4 (179.27 MB)... +Processing: MILF1435 - Family Obsession - Dallas Diamondz, Rachel Steele, Misty Moons.mp4 (Mode: scene) +Downloading MILF1435 - Family Obsession - Dallas Diamondz, Rachel Steele, Misty Moons.mp4 (486.34 MB)... +Processing: MILF1696 - Manipulating Men, The Grifters.mp4 (Mode: scene) +Downloading MILF1696 - Manipulating Men, The Grifters.mp4 (237.03 MB)... +Processing: DID1020 - White Slavery Training Misty Part 2 .mp4 (Mode: scene) +Downloading DID1020 - White Slavery Training Misty Part 2 .mp4 (85.00 MB)... +Processing: MILF1276 - Cuckolded Stepson, Share Your Girlfriend.mp4 (Mode: scene) +Downloading MILF1276 - Cuckolded Stepson, Share Your Girlfriend.mp4 (174.32 MB)... +Processing: MILF952 - Cinderella Syndrome - Misty Moons.mp4 (Mode: scene) +Downloading MILF952 - Cinderella Syndrome - Misty Moons.mp4 (320.40 MB)... +Processing: MILF1326HD - Freezing Females, Sex Doll Sister- Misty Moons.mp4 (Mode: scene) +Downloading MILF1326HD - Freezing Females, Sex Doll Sister- Misty Moons.mp4 (513.24 MB)... +Processing: DID1054 Party Girl.mp4 (Mode: scene) +Downloading DID1054 Party Girl.mp4 (72.78 MB)... +Scanning directory: /videos/redmilf/leihla,.alysa.moore +Processing: Alysa Moore - Teach Me to Masturbate Step Mom.mp4 (Mode: scene) +Downloading Alysa Moore - Teach Me to Masturbate Step Mom.mp4 (264.76 MB)... +Processing: DID453.mp4 (Mode: scene) +Downloading DID453.mp4 (113.29 MB)... +Processing: MILF639 - Driven Into Brother's Arms - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF639 - Driven Into Brother's Arms - Leihla Leionni.mp4 (226.29 MB)... +Processing: DID234.mp4 (Mode: scene) +Downloading DID234.mp4 (114.39 MB)... +Processing: MILF871.mp4 (Mode: scene) +Downloading MILF871.mp4 (175.70 MB)... +Processing: MILF693.mp4 (Mode: scene) +Downloading MILF693.mp4 (157.88 MB)... +Processing: DID468.mp4 (Mode: scene) +Downloading DID468.mp4 (107.98 MB)... +Processing: MILF694.mp4 (Mode: scene) +Downloading MILF694.mp4 (73.73 MB)... +Processing: DID412.mp4 (Mode: scene) +Downloading DID412.mp4 (93.47 MB)... +Processing: MILF612 - Daughter's Sexual Appetite - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF612 - Daughter's Sexual Appetite - Leihla Leionni.mp4 (180.56 MB)... +Processing: DID356.mp4 (Mode: scene) +Downloading DID356.mp4 (249.41 MB)... +Processing: DID263.mp4 (Mode: scene) +Downloading DID263.mp4 (109.96 MB)... +Processing: MILF443 - Birthday Wish for Mother - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF443 - Birthday Wish for Mother - Leihla Leionni.mp4 (104.26 MB)... +Processing: MILF406 - Let's Include Mother - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF406 - Let's Include Mother - Leihla Leionni.mp4 (115.24 MB)... +Processing: DID372.mp4 (Mode: scene) +Downloading DID372.mp4 (177.89 MB)... +Processing: MILF558 - Using The Babysitter - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF558 - Using The Babysitter - Leihla Leionni.mp4 (331.65 MB)... +Processing: MILF567 - Circle of Taboo - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF567 - Circle of Taboo - Leihla Leionni.mp4 (391.92 MB)... +Processing: MILF402 - The Loving Family - Leihla Leionni, Rachel Steele.mp4 (Mode: scene) +Downloading MILF402 - The Loving Family - Leihla Leionni, Rachel Steele.mp4 (85.54 MB)... +Processing: MILF618 - Family Counseling - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF618 - Family Counseling - Leihla Leionni.mp4 (375.42 MB)... +Processing: MILF579 - Family Fantasies - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF579 - Family Fantasies - Leihla Leionni.mp4 (741.04 MB)... +Processing: DID331.mp4 (Mode: scene) +Downloading DID331.mp4 (101.47 MB)... +Processing: MILF476 - Leihla and her Father - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF476 - Leihla and her Father - Leihla Leionni.mp4 (76.12 MB)... +Processing: MILF563 - Babysitter Payback Again - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF563 - Babysitter Payback Again - Leihla Leionni.mp4 (244.28 MB)... +Processing: Chubby Alysa Moore got Fucked very Hard, from the back - Por.mp4 (Mode: scene) +Downloading Chubby Alysa Moore got Fucked very Hard, from the back - Por.mp4 (173.26 MB)... +Processing: DID283.mp4 (Mode: scene) +Downloading DID283.mp4 (113.01 MB)... +Processing: MILF668HD - Brent's Release in his Sister's Hands - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF668HD - Brent's Release in his Sister's Hands - Leihla Leionni.mp4 (623.65 MB)... +Processing: MILF430 - Mother Daughter Milk Brother - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF430 - Mother Daughter Milk Brother - Leihla Leionni.mp4 (70.37 MB)... +Processing: MILF1650.mp4 (Mode: scene) +Downloading MILF1650.mp4 (199.09 MB)... +Processing: MILF396 - Leihla Welcomes Daddy Home - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF396 - Leihla Welcomes Daddy Home - Leihla Leionni.mp4 (93.04 MB)... +Processing: DID423.mp4 (Mode: scene) +Downloading DID423.mp4 (157.87 MB)... +Processing: DID282.mp4 (Mode: scene) +Downloading DID282.mp4 (110.07 MB)... +Processing: MILF395 - Mother Daughter Revenge Suck - Rachel Steele and Leihla Leionni.mp4 (Mode: scene) +Downloading MILF395 - Mother Daughter Revenge Suck - Rachel Steele and Leihla Leionni.mp4 (115.57 MB)... +Processing: MILF615 - Against Her Will - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF615 - Against Her Will - Leihla Leionni.mp4 (285.81 MB)... +Processing: MILF444 - Stepdaughter Sucks, Draining Daddy - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF444 - Stepdaughter Sucks, Draining Daddy - Leihla Leionni.mp4 (108.94 MB)... +Processing: Giant Natural Tits 13 - XVIDEOS.COM.mp4 (Mode: scene) +Downloading Giant Natural Tits 13 - XVIDEOS.COM.mp4 (117.75 MB)... +Processing: MILF473 - My Sister's Panties - Leihla Leionni.mp4 (Mode: scene) +Downloading MILF473 - My Sister's Panties - Leihla Leionni.mp4 (113.80 MB)... +Processing: DID293.mp4 (Mode: scene) +Downloading DID293.mp4 (96.23 MB)... +Scanning directory: /videos/redmilf/dallas.diamonds +Processing: MILF1280 - Desperate Housewife, A Mother's Loyalty - Dallas Diamondz.mp4 (Mode: scene) +Downloading MILF1280 - Desperate Housewife, A Mother's Loyalty - Dallas Diamondz.mp4 (815.72 MB)... +Processing: MILF1015- - The Good Wife HD-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF1015- - The Good Wife HD-(Angel Rose)-{Rachel Steele}.mp4 (708.94 MB)... +Processing: MILF1323HD - Dallas Diamondz - Mother Gives me Blue Balls.mp4 (Mode: scene) +Downloading MILF1323HD - Dallas Diamondz - Mother Gives me Blue Balls.mp4 (326.32 MB)... +Scanning directory: /videos/redmilf/kelly.payne +Processing: Kelly Payne - Best Friend's Mom Is A MILF Part 4 - Catching Feelings.mp4 (Mode: scene) +Downloading Kelly Payne - Best Friend's Mom Is A MILF Part 4 - Catching Feelings.mp4 (380.17 MB)... +Processing: Kelly Payne - Best Friend's Mom Is A MILF Part 3 - Pool Party.mp4 (Mode: scene) +Downloading Kelly Payne - Best Friend's Mom Is A MILF Part 3 - Pool Party.mp4 (191.11 MB)... +Processing: Kelly Payne - Best Friend's Mom Is A MILF Part 2 - Saturday.mp4 (Mode: scene) +Downloading Kelly Payne - Best Friend's Mom Is A MILF Part 2 - Saturday.mp4 (370.76 MB)... +Scanning directory: /videos/redmilf/paige +Processing: DID236.mp4 (Mode: scene) +Downloading DID236.mp4 (121.17 MB)... +Processing: MILF408.mp4 (Mode: scene) +Downloading MILF408.mp4 (108.40 MB)... +Processing: MILF412 - The (Fucking) Family - Paige.mp4 (Mode: scene) +Downloading MILF412 - The (Fucking) Family - Paige.mp4 (233.53 MB)... +Scanning directory: /videos/redmilf/jessica-1 +Processing: MILF302 - The Perfect Family - Jessica Redmilf.mp4 (Mode: scene) +Downloading MILF302 - The Perfect Family - Jessica Redmilf.mp4 (138.41 MB)... +Processing: MILF279 - Make Your Daughter Suck My Cock - Jessica Redmilf.mp4 (Mode: scene) +Downloading MILF279 - Make Your Daughter Suck My Cock - Jessica Redmilf.mp4 (147.71 MB)... +Processing: MILF296 - She is Behaving Badly - Jessica Redmilf.mp4 (Mode: scene) +Downloading MILF296 - She is Behaving Badly - Jessica Redmilf.mp4 (117.13 MB)... +Processing: Taboo Tales - Oedipal Complex, Grandma Jessica - HD-(Jessica Sexton)-{Rachel Steele}-[Grandmother, Old Woman (60+), Older Woman - Younger Man].mp4 (Mode: scene) +Downloading Taboo Tales - Oedipal Complex, Grandma Jessica - HD-(Jessica Sexton)-{Rachel Steele}-[Grandmother, Old Woman (60+), Older Woman - Younger Man].mp4 (300.86 MB)... +Scanning directory: /videos/redmilf/monica.sexxxton +Processing: MILF 1052-53 - Manipulating Sister fucks her Brother The Manipul.mp4 (Mode: scene) +Downloading MILF 1052-53 - Manipulating Sister fucks her Brother The Manipul.mp4 (177.70 MB)... +Processing: MILF1268.mp4 (Mode: scene) +Downloading MILF1268.mp4 (245.58 MB)... +Processing: DID726.mp4 (Mode: scene) +Downloading DID726.mp4 (219.78 MB)... +Processing: MILF1091 - Daddy's Girl - Monica Sexxton.mp4 (Mode: scene) +Downloading MILF1091 - Daddy's Girl - Monica Sexxton.mp4 (867.70 MB)... +Processing: MILF1384HD - La Femme Monica - Monica Sexxxton.mp4 (Mode: scene) +Downloading MILF1384HD - La Femme Monica - Monica Sexxxton.mp4 (517.58 MB)... +Processing: Classics MILF 985 - Aunt Rachel Watches the Kids-(Monica Sexxxton, Rachel Steele)-{Rachel Steele}-[Blowjob, Brother, MILF (30+), Nephew, Older Woman - Younger Man, Sister, Threesome, Threesome (BGG)].mp4 (Mode: scene) +Downloading Classics MILF 985 - Aunt Rachel Watches the Kids-(Monica Sexxxton, Rachel Steele)-{Rachel Steele}-[Blowjob, Brother, MILF (30+), Nephew, Older Woman - Younger Man, Sister, Threesome, Threesome (BGG)].mp4 (513.55 MB)... +Processing: MILF1052 - Taboo Stories, The Manipulator, Part 3 - Monica Sexxxton.mp4 (Mode: scene) +Downloading MILF1052 - Taboo Stories, The Manipulator, Part 3 - Monica Sexxxton.mp4 (290.93 MB)... +Processing: MILF1053 - Taboo Stories, The Manipulator, Part 4 - Monica Sexxxton.mp4 (Mode: scene) +Downloading MILF1053 - Taboo Stories, The Manipulator, Part 4 - Monica Sexxxton.mp4 (314.34 MB)... +Processing: DID988.mp4 (Mode: scene) +Downloading DID988.mp4 (201.34 MB)... +Scanning directory: /videos/redmilf/lexi.lane +Processing: MILF1380.mp4 (Mode: scene) +Downloading MILF1380.mp4 (79.48 MB)... +Scanning directory: /videos/redmilf/catherine.fox +Processing: DID117.mp4 (Mode: scene) +Downloading DID117.mp4 (102.88 MB)... +Processing: MILF1072HD - Sister's Deception - Catherine Fox.mp4 (Mode: scene) +Downloading MILF1072HD - Sister's Deception - Catherine Fox.mp4 (787.17 MB)... +Processing: MILF572 - Rachel Tricked into Fucking Her Son-(Catherine Fox)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF572 - Rachel Tricked into Fucking Her Son-(Catherine Fox)-{Rachel Steele}.mp4 (133.15 MB)... +Processing: MILF609-- Lesbian Chronicles 7, Stepmother's Surprise-(Catherine Fox)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF609-- Lesbian Chronicles 7, Stepmother's Surprise-(Catherine Fox)-{Rachel Steele}.mp4 (193.26 MB)... +Processing: DID588 made Love, Part 1-(Catherine Fox)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID588 made Love, Part 1-(Catherine Fox)-{Rachel Steele}.mp4 (90.85 MB)... +Processing: DID456- - Sister Mind Controlled, Brother Gains Control-(Catherine Fox)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID456- - Sister Mind Controlled, Brother Gains Control-(Catherine Fox)-{Rachel Steele}.mp4 (77.11 MB)... +Processing: MILF573 - Brother Sister - What Have You Done! - Catherine Fox.mp4 (Mode: scene) +Downloading MILF573 - Brother Sister - What Have You Done! - Catherine Fox.mp4 (102.28 MB)... +Processing: MILF636 - Lesbian Chronicles 9, Manipulated - Catherine Fox.mp4 (Mode: scene) +Downloading MILF636 - Lesbian Chronicles 9, Manipulated - Catherine Fox.mp4 (254.38 MB)... +Processing: MILF672- - My Turn Mother!-(Catherine Fox)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF672- - My Turn Mother!-(Catherine Fox)-{Rachel Steele}.mp4 (182.70 MB)... +Processing: DID587.mp4 (Mode: scene) +Downloading DID587.mp4 (175.57 MB)... +Processing: MILF232- - Bribing the Babysitter-(Catherine Fox)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF232- - Bribing the Babysitter-(Catherine Fox)-{Rachel Steele}.mp4 (94.64 MB)... +Processing: DID142.mp4 (Mode: scene) +Downloading DID142.mp4 (112.33 MB)... +Scanning directory: /videos/redmilf/penny.sinclair +Processing: MILF697 - Prisoner Daughter - Penny Sinclair.mp4 (Mode: scene) +Downloading MILF697 - Prisoner Daughter - Penny Sinclair.mp4 (231.22 MB)... +Processing: MILF502 - You Are A Real Motherfucker Son.mp4 (Mode: scene) +Downloading MILF502 - You Are A Real Motherfucker Son.mp4 (475.63 MB)... +Processing: MILF506 - Stop Fucking My Son - Penny Sinclair.mp4 (Mode: scene) +Downloading MILF506 - Stop Fucking My Son - Penny Sinclair.mp4 (205.82 MB)... +Processing: MILF522 - Mom, This is Important! - Penny Sinclair.mp4 (Mode: scene) +Downloading MILF522 - Mom, This is Important! - Penny Sinclair.mp4 (270.32 MB)... +Scanning directory: /videos/redmilf/kimmy-1 +Processing: DID299.mp4 (Mode: scene) +Downloading DID299.mp4 (88.40 MB)... +Processing: DID297.mp4 (Mode: scene) +Downloading DID297.mp4 (96.75 MB)... +Processing: MILF401 - You Will Stay a Virgin - Kelsie Cummings.mp4 (Mode: scene) +Downloading MILF401 - You Will Stay a Virgin - Kelsie Cummings.mp4 (142.75 MB)... +Processing: HJ202.mp4 (Mode: scene) +Downloading HJ202.mp4 (141.81 MB)... +Processing: MILF394 - Older Sister Teaches Younger Sister. - Kelsie Cummings.mp4 (Mode: scene) +Downloading MILF394 - Older Sister Teaches Younger Sister. - Kelsie Cummings.mp4 (114.56 MB)... +Processing: DID298.mp4 (Mode: scene) +Downloading DID298.mp4 (58.72 MB)... +Processing: DID289.mp4 (Mode: scene) +Downloading DID289.mp4 (113.47 MB)... +Processing: DID287.mp4 (Mode: scene) +Downloading DID287.mp4 (136.86 MB)... +Processing: MILF460 - Rub it for Daddy - Kimmy Redmilf.mp4 (Mode: scene) +Downloading MILF460 - Rub it for Daddy - Kimmy Redmilf.mp4 (144.65 MB)... +Processing: DID673.mp4 (Mode: scene) +Downloading DID673.mp4 (130.57 MB)... +Processing: DID278.mp4 (Mode: scene) +Downloading DID278.mp4 (79.45 MB)... +Processing: MILF496 - Daddy, You Have Got to Lay Down the Law! - Kimmy.mp4 (Mode: scene) +Downloading MILF496 - Daddy, You Have Got to Lay Down the Law! - Kimmy.mp4 (160.24 MB)... +Processing: DID315.mp4 (Mode: scene) +Downloading DID315.mp4 (144.51 MB)... +Processing: MILF456 - A Daughter Scorned - Kimmy Redmilf.mp4 (Mode: scene) +Downloading MILF456 - A Daughter Scorned - Kimmy Redmilf.mp4 (178.74 MB)... +Scanning directory: /videos/redmilf/ashlynn-1 +Processing: MILF418 - Naughty Niece-(Ashlynn (Rachel Steele))-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF418 - Naughty Niece-(Ashlynn (Rachel Steele))-{Rachel Steele}.mp4 (113.92 MB)... +Processing: MILF435 - Brother Sister Lust-(Ashlynn (Rachel Steele))-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF435 - Brother Sister Lust-(Ashlynn (Rachel Steele))-{Rachel Steele}.mp4 (72.27 MB)... +Processing: DID260.mp4 (Mode: scene) +Downloading DID260.mp4 (125.50 MB)... +Scanning directory: /videos/redmilf/taylor.redmilf +Processing: MILF605- - Mother Knows Best-(Taylor Redmilf)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF605- - Mother Knows Best-(Taylor Redmilf)-{Rachel Steele}.mp4 (215.36 MB)... +Scanning directory: /videos/redmilf/jayden.rose +Processing: MILF1585.mp4 (Mode: scene) +Downloading MILF1585.mp4 (238.94 MB)... +Scanning directory: /videos/redmilf/stacy.starr +Processing: MILF1129 - Step Son in Law - Rachel Steele and Stacie Starr.mp4 (Mode: scene) +Downloading MILF1129 - Step Son in Law - Rachel Steele and Stacie Starr.mp4 (121.28 MB)... +Processing: MILF1055HD - The Manipulator (Part 5) - Monica Sexxxton, Rachel Steele and Stacie Starr.mp4 (Mode: scene) +Downloading MILF1055HD - The Manipulator (Part 5) - Monica Sexxxton, Rachel Steele and Stacie Starr.mp4 (399.44 MB)... +Processing: MILF774 - Taboo Stories, Mom's Anniversary Let Down - Rachel Steele, Stacie Starr.mp4 (Mode: scene) +Downloading MILF774 - Taboo Stories, Mom's Anniversary Let Down - Rachel Steele, Stacie Starr.mp4 (194.02 MB)... +Processing: MILF552 - Taboo The Awakening - Stacie Starr.mp4 (Mode: scene) +Downloading MILF552 - Taboo The Awakening - Stacie Starr.mp4 (412.24 MB)... +Processing: MILF907 - Taboo Stories True and Manition - Stacie Starr and Rachel Steele.mp4 (Mode: scene) +Downloading MILF907 - Taboo Stories True and Manition - Stacie Starr and Rachel Steele.mp4 (1193.67 MB)... +Processing: MILF428 - Aunt Julia Cums for a Visit (lost footage) - Rachel Steele, Stacie Starr.mp4 (Mode: scene) +Downloading MILF428 - Aunt Julia Cums for a Visit (lost footage) - Rachel Steele, Stacie Starr.mp4 (129.95 MB)... +Processing: MILF172.2 - Aunt Julia Cums For A Visit - Rachel Steele, Stacy Starr.mp4 (Mode: scene) +Downloading MILF172.2 - Aunt Julia Cums For A Visit - Rachel Steele, Stacy Starr.mp4 (79.66 MB)... +Processing: MILF1157 - Taboo Stories, Cabin Fever - Rachel Steele and Stacie Starr.mp4 (Mode: scene) +Downloading MILF1157 - Taboo Stories, Cabin Fever - Rachel Steele and Stacie Starr.mp4 (588.90 MB)... +Processing: MILF351 - The Family Reunion - Part 3 - Rachel Steele, Stacie Starr.mp4 (Mode: scene) +Downloading MILF351 - The Family Reunion - Part 3 - Rachel Steele, Stacie Starr.mp4 (177.84 MB)... +Processing: MILF172.3 - Aunt Julia Cums For A Visit - Rachel Steele, Stacy Starr.mp4 (Mode: scene) +Downloading MILF172.3 - Aunt Julia Cums For A Visit - Rachel Steele, Stacy Starr.mp4 (72.66 MB)... +Processing: MILF601 - Forced Incest, No One is Perfect - Rachel Steele, Stacie Starr.mp4 (Mode: scene) +Downloading MILF601 - Forced Incest, No One is Perfect - Rachel Steele, Stacie Starr.mp4 (310.99 MB)... +Processing: MILF934 - Condom Sabotage, Knock Up Mommie - Stacie Starr.mp4 (Mode: scene) +Downloading MILF934 - Condom Sabotage, Knock Up Mommie - Stacie Starr.mp4 (207.04 MB)... +Processing: MILF326 - Threesome to Keep Son Quiet - Rachel Steele, Stacie Starr.mp4 (Mode: scene) +Downloading MILF326 - Threesome to Keep Son Quiet - Rachel Steele, Stacie Starr.mp4 (170.14 MB)... +Processing: MILF515 - Mother and Son's Country Retreat - Stacie Starr.mp4 (Mode: scene) +Downloading MILF515 - Mother and Son's Country Retreat - Stacie Starr.mp4 (290.38 MB)... +Processing: MILF313 - Aunt Julia Returns - Part 1 - Stacie Starr.mp4 (Mode: scene) +Downloading MILF313 - Aunt Julia Returns - Part 1 - Stacie Starr.mp4 (139.96 MB)... +Processing: MILF813 - Uncontrolled Lust, Julia's Nephew - Stacie Starr.mp4 (Mode: scene) +Downloading MILF813 - Uncontrolled Lust, Julia's Nephew - Stacie Starr.mp4 (476.04 MB)... +Processing: MILF671 - No One Compares To You Mother - Stacie Starr.mp4 (Mode: scene) +Downloading MILF671 - No One Compares To You Mother - Stacie Starr.mp4 (320.89 MB)... +Processing: MILF683 - Taboo Stories, the Book - Rachel Steele, Stacie Starr.mp4 (Mode: scene) +Downloading MILF683 - Taboo Stories, the Book - Rachel Steele, Stacie Starr.mp4 (624.28 MB)... +Processing: MILF518 - A New Year - Stacie Starr.mp4 (Mode: scene) +Downloading MILF518 - A New Year - Stacie Starr.mp4 (209.02 MB)... +Processing: MILF839- - Taboo Stories, Step-Son-in-Law Seduction-(Stacie Starr)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF839- - Taboo Stories, Step-Son-in-Law Seduction-(Stacie Starr)-{Rachel Steele}.mp4 (604.16 MB)... +Processing: MILF643 - Hypno Device - Stacie Starr, Rachel Steele.mp4 (Mode: scene) +Downloading MILF643 - Hypno Device - Stacie Starr, Rachel Steele.mp4 (562.29 MB)... +Processing: MILF172.1 - Aunt Julia Cums For A Visit - Rachel Steele, Stacy Starr.mp4 (Mode: scene) +Downloading MILF172.1 - Aunt Julia Cums For A Visit - Rachel Steele, Stacy Starr.mp4 (113.79 MB)... +Processing: MILF314 - Aunt Julia Returns - Part 2 - Stacie Starr.mp4 (Mode: scene) +Downloading MILF314 - Aunt Julia Returns - Part 2 - Stacie Starr.mp4 (167.23 MB)... +Processing: MILF1211 - Impregnation, Mommie Milks My Manhood - Rachel Steele and Stacie Starr.mp4 (Mode: scene) +Downloading MILF1211 - Impregnation, Mommie Milks My Manhood - Rachel Steele and Stacie Starr.mp4 (139.37 MB)... +Processing: MILF349 - The Family Reunion - Part 1 - Rachel Steele, Stacie Starr.mp4 (Mode: scene) +Downloading MILF349 - The Family Reunion - Part 1 - Rachel Steele, Stacie Starr.mp4 (149.69 MB)... +Processing: MILF585 - Nephew's Fantasy - Leihla Leionni, Rachel Steele, Stacie Starr.mp4 (Mode: scene) +Downloading MILF585 - Nephew's Fantasy - Leihla Leionni, Rachel Steele, Stacie Starr.mp4 (167.29 MB)... +Processing: MILF495 - Aunt Julia Visits The Farm - Rachel Steele, Stacie Starr.mp4 (Mode: scene) +Downloading MILF495 - Aunt Julia Visits The Farm - Rachel Steele, Stacie Starr.mp4 (398.90 MB)... +Processing: MILF628 - Family Impregnation - Stacie Starr, Rachel Steele, Brianna Redmilf .mp4 (Mode: scene) +Downloading MILF628 - Family Impregnation - Stacie Starr, Rachel Steele, Brianna Redmilf .mp4 (319.49 MB)... +Processing: MILF315 - Aunt Julia Returns - Part 3 - Stacie Starr.mp4 (Mode: scene) +Downloading MILF315 - Aunt Julia Returns - Part 3 - Stacie Starr.mp4 (167.36 MB)... +Processing: MILF350 - The Family Reunion - Part 2 - Rachel Steele, Stacie Starr.mp4 (Mode: scene) +Downloading MILF350 - The Family Reunion - Part 2 - Rachel Steele, Stacie Starr.mp4 (144.47 MB)... +Processing: MILF575 - Lunch Time Confessions - Stacie Starr.mp4 (Mode: scene) +Downloading MILF575 - Lunch Time Confessions - Stacie Starr.mp4 (299.58 MB)... +Processing: MILF632 - Porn Producers Gift, Mind Control - Stacie Starr, Rachel Steele.mp4 (Mode: scene) +Downloading MILF632 - Porn Producers Gift, Mind Control - Stacie Starr, Rachel Steele.mp4 (177.95 MB)... +Processing: MILF921 - Taboo Stories, Family Gathering - Stacie Starr, Misty Moons, Rachel Steele.mp4 (Mode: scene) +Downloading MILF921 - Taboo Stories, Family Gathering - Stacie Starr, Misty Moons, Rachel Steele.mp4 (553.99 MB)... +Processing: MILF843 - Robo Aunt Slut - Stacie Starr.mp4 (Mode: scene) +Downloading MILF843 - Robo Aunt Slut - Stacie Starr.mp4 (193.54 MB)... +Processing: MILF142 - I Smell Pussy On Your Cock - Rachel Steele, Stacie Starr.mp4 (Mode: scene) +Downloading MILF142 - I Smell Pussy On Your Cock - Rachel Steele, Stacie Starr.mp4 (68.18 MB)... +Processing: MILF800 - Father of My Son is My Son - Rachel Steele, Stacie Starr.mp4 (Mode: scene) +Downloading MILF800 - Father of My Son is My Son - Rachel Steele, Stacie Starr.mp4 (805.76 MB)... +Processing: MILF685HD - Taboo Stories - The Book Sisters - Rachel Steele, Stacie Starr.mp4 (Mode: scene) +Downloading MILF685HD - Taboo Stories - The Book Sisters - Rachel Steele, Stacie Starr.mp4 (284.27 MB)... +Scanning directory: /videos/redmilf/claire.heart +Processing: MILF1371HD - Taboo Tales, Siblings - Claire Heart.mp4 (Mode: scene) +Downloading MILF1371HD - Taboo Tales, Siblings - Claire Heart.mp4 (539.15 MB)... +Scanning directory: /videos/redmilf/danica.redmilf +Processing: MILF425 - Daughter Seduced Mother - Rachel Steele, Danica Redmilf.mp4 (Mode: scene) +Downloading MILF425 - Daughter Seduced Mother - Rachel Steele, Danica Redmilf.mp4 (172.11 MB)... +Processing: MILF403 - Mother Teaches A Family Lesson - Danica, Rachel Steele.mp4 (Mode: scene) +Downloading MILF403 - Mother Teaches A Family Lesson - Danica, Rachel Steele.mp4 (132.91 MB)... +Processing: MILF426 - My Father is Only Human - Danica Redmilf.mp4 (Mode: scene) +Downloading MILF426 - My Father is Only Human - Danica Redmilf.mp4 (159.13 MB)... +Scanning directory: /videos/redmilf/orabella-1 +Processing: MILF372 - Oh My God It is My Mom - Orabella, Rachel Steele.mp4 (Mode: scene) +Downloading MILF372 - Oh My God It is My Mom - Orabella, Rachel Steele.mp4 (111.80 MB)... +Processing: MILF549 - A Red MILF Production - Orabella.mp4 (Mode: scene) +Downloading MILF549 - A Red MILF Production - Orabella.mp4 (221.41 MB)... +Scanning directory: /videos/redmilf/gwen-1 +Processing: DID474.mp4 (Mode: scene) +Downloading DID474.mp4 (184.97 MB)... +Processing: DID497.mp4 (Mode: scene) +Downloading DID497.mp4 (105.95 MB)... +Processing: MILF741HD - Taboo Stories - Big Brother's Secret Condom Tearing - Gwen Redmilf.mp4 (Mode: scene) +Downloading MILF741HD - Taboo Stories - Big Brother's Secret Condom Tearing - Gwen Redmilf.mp4 (689.53 MB)... +Processing: DID495.mp4 (Mode: scene) +Downloading DID495.mp4 (142.56 MB)... +Processing: DID984.mp4 (Mode: scene) +Downloading DID984.mp4 (177.37 MB)... +Processing: MILF724 - Cum in My Belly Big Brother! - Gwen Redmilf.mp4 (Mode: scene) +Downloading MILF724 - Cum in My Belly Big Brother! - Gwen Redmilf.mp4 (429.74 MB)... +Processing: DID461.mp4 (Mode: scene) +Downloading DID461.mp4 (147.39 MB)... +Processing: DID554.mp4 (Mode: scene) +Downloading DID554.mp4 (285.27 MB)... +Processing: DID561.mp4 (Mode: scene) +Downloading DID561.mp4 (223.47 MB)... +Processing: DID439.mp4 (Mode: scene) +Downloading DID439.mp4 (178.81 MB)... +Processing: DID603.mp4 (Mode: scene) +Downloading DID603.mp4 (228.35 MB)... +Processing: DID437.mp4 (Mode: scene) +Downloading DID437.mp4 (100.14 MB)... +Scanning directory: /videos/redmilf/jinny,.ginny +Processing: MILF449 - Fucking Frenzy Mother Has Needs - Jinny Redmilf, Rachel Steele.mp4 (Mode: scene) +Downloading MILF449 - Fucking Frenzy Mother Has Needs - Jinny Redmilf, Rachel Steele.mp4 (127.47 MB)... +Processing: MILF486 - Brother Blackmails Sister - Jinny Redmilf.mp4 (Mode: scene) +Downloading MILF486 - Brother Blackmails Sister - Jinny Redmilf.mp4 (116.87 MB)... +Processing: DID336.mp4 (Mode: scene) +Downloading DID336.mp4 (110.93 MB)... +Processing: MILF485 - Mother Confesses to Daughter - Jinny Redmilf.mp4 (Mode: scene) +Downloading MILF485 - Mother Confesses to Daughter - Jinny Redmilf.mp4 (85.77 MB)... +Processing: MILF437 - Son, I Have Been Waiting for the Day - Rachel Steele, Jinny Redmilf.mp4 (Mode: scene) +Downloading MILF437 - Son, I Have Been Waiting for the Day - Rachel Steele, Jinny Redmilf.mp4 (114.95 MB)... +Processing: FO44.mp4 (Mode: scene) +Downloading FO44.mp4 (98.49 MB)... +Processing: MILF438.mp4 (Mode: scene) +Downloading MILF438.mp4 (139.22 MB)... +Processing: MILF440 - Keep it at Home! - Ginny.mp4 (Mode: scene) +Downloading MILF440 - Keep it at Home! - Ginny.mp4 (83.71 MB)... +Scanning directory: /videos/redmilf/phyllis.redmilf +Processing: MILF251.3 - Surrogate Slut - Phyllis Redmilf and Rachel Steele.mp4 (Mode: scene) +Downloading MILF251.3 - Surrogate Slut - Phyllis Redmilf and Rachel Steele.mp4 (80.37 MB)... +Scanning directory: /videos/redmilf/sara.james +Processing: MILF689 - Taboo Stories, Two Naughty Aunts - Sara James, Rachel Steele.mp4 (Mode: scene) +Downloading MILF689 - Taboo Stories, Two Naughty Aunts - Sara James, Rachel Steele.mp4 (979.30 MB)... +Processing: MILF662 - Sara's Twisted Revenge - Sara James.mp4 (Mode: scene) +Downloading MILF662 - Sara's Twisted Revenge - Sara James.mp4 (659.12 MB)... +Scanning directory: /videos/redmilf/joey.redmilf +Processing: MILF459 - Our Nephews Summer Experience - Aunt Joey Redmilf, Rachel Steele.mp4 (Mode: scene) +Downloading MILF459 - Our Nephews Summer Experience - Aunt Joey Redmilf, Rachel Steele.mp4 (127.45 MB)... +Processing: MILF399 - Rachel and Aunt Joey Teach Son - Rachel Steele and Joey Redmilf.mp4 (Mode: scene) +Downloading MILF399 - Rachel and Aunt Joey Teach Son - Rachel Steele and Joey Redmilf.mp4 (159.13 MB)... +Scanning directory: /videos/redmilf/paisely-1 +Processing: Guy fucks his Sister and his Mother. Rachel Steele, Paisley .mp4 (Mode: scene) +Downloading Guy fucks his Sister and his Mother. Rachel Steele, Paisley .mp4 (302.91 MB)... +Scanning directory: /videos/redmilf/dakota.redmilf +Processing: MILF307 - Lick My Ass Mom – Part 1 - Dakota Redmilf.mp4 (Mode: scene) +Downloading MILF307 - Lick My Ass Mom – Part 1 - Dakota Redmilf.mp4 (142.21 MB)... +Processing: MILF284 - Forced to Fuck Her Son - Dakota Redmilf, Rachel Steele.mp4 (Mode: scene) +Downloading MILF284 - Forced to Fuck Her Son - Dakota Redmilf, Rachel Steele.mp4 (128.47 MB)... +Processing: MILF308 - Lick My Ass Mom – Part 2 - Dakota Redmilf.mp4 (Mode: scene) +Downloading MILF308 - Lick My Ass Mom – Part 2 - Dakota Redmilf.mp4 (116.53 MB)... +Processing: MILF170 - Cum Sucking Vampires-(dakota redmilf)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF170 - Cum Sucking Vampires-(dakota redmilf)-{Rachel Steele}.mp4 (48.33 MB)... +Processing: MILF171 - Cum Sucking Vampires-(dakota redmilf)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF171 - Cum Sucking Vampires-(dakota redmilf)-{Rachel Steele}.mp4 (63.48 MB)... +Processing: MILF167 - Election Blackmail-(dakota redmilf)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF167 - Election Blackmail-(dakota redmilf)-{Rachel Steele}.mp4 (36.73 MB)... +Processing: MILF168 - Neighborhood Slut Goes Too Far - Dakota Redmilf, Rachel Steele.mp4 (Mode: scene) +Downloading MILF168 - Neighborhood Slut Goes Too Far - Dakota Redmilf, Rachel Steele.mp4 (97.11 MB)... +Scanning directory: /videos/redmilf/kaley.redmilf +Processing: MILF446 - Peer Pressure - Kaley Redmilf.mp4 (Mode: scene) +Downloading MILF446 - Peer Pressure - Kaley Redmilf.mp4 (118.07 MB)... +Scanning directory: /videos/redmilf/shirley.redmilf +Scanning directory: /videos/redmilf/rachel.steele +Processing: MILF014 - Bedtime Handjob - Rachel Steele.mp4 (Mode: scene) +Downloading MILF014 - Bedtime Handjob - Rachel Steele.mp4 (140.55 MB)... +Processing: MILF392 - Sharing My Son - Keri Redmilf, Rachel Steele.mp4 (Mode: scene) +Downloading MILF392 - Sharing My Son - Keri Redmilf, Rachel Steele.mp4 (150.62 MB)... +Processing: MILF1218HD - Taking Son´s Virginity - Rachel Steele.mp4 (Mode: scene) +Downloading MILF1218HD - Taking Son´s Virginity - Rachel Steele.mp4 (440.83 MB)... +Processing: MILF704 - Taboo Stories- The Book 2 - Rachel Steele.mp4 (Mode: scene) +Downloading MILF704 - Taboo Stories- The Book 2 - Rachel Steele.mp4 (190.88 MB)... +Processing: MILF103 - Insomnia's Mature Handjob - Rachel Steele.mp4 (Mode: scene) +Downloading MILF103 - Insomnia's Mature Handjob - Rachel Steele.mp4 (153.39 MB)... +Processing: MILF912 - Marrying For Money - Rachel Steele.mp4 (Mode: scene) +Downloading MILF912 - Marrying For Money - Rachel Steele.mp4 (180.08 MB)... +Processing: MILF088 - Creampie Mother - Rachel Steele.mp4 (Mode: scene) +Downloading MILF088 - Creampie Mother - Rachel Steele.mp4 (74.49 MB)... +Processing: MILF274 - Bad Son Flunking - Rachel Steele.mp4 (Mode: scene) +Downloading MILF274 - Bad Son Flunking - Rachel Steele.mp4 (123.48 MB)... +Processing: MILF179 - Rachel Returns Son’s Favor - Rachele Steele.mp4 (Mode: scene) +Downloading MILF179 - Rachel Returns Son’s Favor - Rachele Steele.mp4 (115.00 MB)... +Processing: MILF145 - Picked Up and Sucked Off - Rachel Steele.mp4 (Mode: scene) +Downloading MILF145 - Picked Up and Sucked Off - Rachel Steele.mp4 (135.58 MB)... +Processing: MILF529 - Birth Mother - Rachel Steele.mp4 (Mode: scene) +Downloading MILF529 - Birth Mother - Rachel Steele.mp4 (248.99 MB)... +Processing: MILF206 - Nasty Housewife Drinks Cum - Rachel Steele.mp4 (Mode: scene) +Downloading MILF206 - Nasty Housewife Drinks Cum - Rachel Steele.mp4 (106.83 MB)... +Processing: MILF320 - Naughty Nighttime Visit - Rachel Steele.mp4 (Mode: scene) +Downloading MILF320 - Naughty Nighttime Visit - Rachel Steele.mp4 (180.90 MB)... +Processing: Milf946 - Gyno Exam - Rachel Steele.mp4 (Mode: scene) +Downloading Milf946 - Gyno Exam - Rachel Steele.mp4 (304.06 MB)... +Processing: MILF239 - Rachel Gives a Footjob - Rachel Steele.mp4 (Mode: scene) +Downloading MILF239 - Rachel Gives a Footjob - Rachel Steele.mp4 (105.34 MB)... +Processing: MILF016 - Knock Before Cumming In - Rachel Steele.mp4 (Mode: scene) +Downloading MILF016 - Knock Before Cumming In - Rachel Steele.mp4 (47.00 MB)... +Processing: MILF464 - Mother I Demand to Know! - Rachel Steele.mp4 (Mode: scene) +Downloading MILF464 - Mother I Demand to Know! - Rachel Steele.mp4 (137.82 MB)... +Processing: MILF492 - Nephew to the Rescue - Rachel Steele .mp4 (Mode: scene) +Downloading MILF492 - Nephew to the Rescue - Rachel Steele .mp4 (149.65 MB)... +Processing: MILF915 - An Irish Love Story - Rachel Steele.mp4 (Mode: scene) +Downloading MILF915 - An Irish Love Story - Rachel Steele.mp4 (1351.36 MB)... +Processing: MILF159 - Peeping Tom Gets Sucked Off - Rachel Steele.mp4 (Mode: scene) +Downloading MILF159 - Peeping Tom Gets Sucked Off - Rachel Steele.mp4 (75.97 MB)... +Processing: MILF226.3 - Son Forces Mother to Fuck - Rachel Steele.mp4 (Mode: scene) +Downloading MILF226.3 - Son Forces Mother to Fuck - Rachel Steele.mp4 (52.15 MB)... +Processing: MILF134.2 - Jack, I am Your Mother! - Rachel Steele.mp4 (Mode: scene) +Downloading MILF134.2 - Jack, I am Your Mother! - Rachel Steele.mp4 (71.21 MB)... +Processing: MILF134.1 - Jack, I am Your Mother! - Rachel Steele.mp4 (Mode: scene) +Downloading MILF134.1 - Jack, I am Your Mother! - Rachel Steele.mp4 (78.29 MB)... +Processing: MILF310 - My Jealous Wife and the Tramp Next Door - Rachel Steele.mp4 (Mode: scene) +Downloading MILF310 - My Jealous Wife and the Tramp Next Door - Rachel Steele.mp4 (7.88 MB)... +Processing: MILF929 - Stacie And Rachel Blackmailed - Rachel Steele and Stacie Starr.mp4 (Mode: scene) +Downloading MILF929 - Stacie And Rachel Blackmailed - Rachel Steele and Stacie Starr.mp4 (279.87 MB)... +Processing: MILF_UNKNOWN - Rachel Steele.mp4 (Mode: scene) +Downloading MILF_UNKNOWN - Rachel Steele.mp4 (71.04 MB)... +Processing: MILF057 - Mother is Hooking - Rachel Steele.mp4 (Mode: scene) +Downloading MILF057 - Mother is Hooking - Rachel Steele.mp4 (89.51 MB)... +Processing: MILF132 - Blowjob or Basketball - Rachel Steele.mp4 (Mode: scene) +Downloading MILF132 - Blowjob or Basketball - Rachel Steele.mp4 (93.43 MB)... +Processing: MILF489 - Text Message Leads to Sex with Son - Rachel Steele.mp4 (Mode: scene) +Downloading MILF489 - Text Message Leads to Sex with Son - Rachel Steele.mp4 (158.48 MB)... +Processing: MILF545 - The Widow - Rachel Steele.mp4 (Mode: scene) +Downloading MILF545 - The Widow - Rachel Steele.mp4 (242.01 MB)... +Processing: MILF031 - Come Nap With Mother - Rachel Steele.mp4 (Mode: scene) +Downloading MILF031 - Come Nap With Mother - Rachel Steele.mp4 (55.19 MB)... +Processing: MILF398 - College Boys in the Hot Tub - Rachel Steele.mp4 (Mode: scene) +Downloading MILF398 - College Boys in the Hot Tub - Rachel Steele.mp4 (263.94 MB)... +Processing: MILF540 - In Love With My Mother - Rachel Steele.mp4 (Mode: scene) +Downloading MILF540 - In Love With My Mother - Rachel Steele.mp4 (98.29 MB)... +Processing: MILF675HD - Dommie Mommie's New Rule - Rachel Steele.mp4 (Mode: scene) +Downloading MILF675HD - Dommie Mommie's New Rule - Rachel Steele.mp4 (494.80 MB)... +Processing: MILF789 - In the Closet - Sara James, Rachel Steele.mp4 (Mode: scene) +Downloading MILF789 - In the Closet - Sara James, Rachel Steele.mp4 (566.44 MB)... +Processing: MILF701 - Special Attention - Rachel Steele.mp4 (Mode: scene) +Downloading MILF701 - Special Attention - Rachel Steele.mp4 (304.86 MB)... +Processing: MILF243 - Dirty Young Man- Rachel Steele- Rachel Steele.mp4 (Mode: scene) +Downloading MILF243 - Dirty Young Man- Rachel Steele- Rachel Steele.mp4 (146.61 MB)... +Processing: MILF299 My Nephew Knows! (Part 2) - Rachel Steele.mp4 (Mode: scene) +Downloading MILF299 My Nephew Knows! (Part 2) - Rachel Steele.mp4 (143.81 MB)... +Processing: MILF182 - Mother Has Erotic Dreams About Son Rachel Steele and Female Councelor.mp4 (Mode: scene) +Downloading MILF182 - Mother Has Erotic Dreams About Son Rachel Steele and Female Councelor.mp4 (131.16 MB)... +Processing: MILF817 - Aunt Rachel's Risky Condom Roulette - Rachel Steele.mp4 (Mode: scene) +Downloading MILF817 - Aunt Rachel's Risky Condom Roulette - Rachel Steele.mp4 (292.85 MB)... +Processing: MILF1080 - Loving Mother, Cheating Wife - Rachel Steele .mp4 (Mode: scene) +Downloading MILF1080 - Loving Mother, Cheating Wife - Rachel Steele .mp4 (199.41 MB)... +Processing: MILF293 I Will Do Anything for Him (Part 2)- Rachel Steele.mp4 (Mode: scene) +Downloading MILF293 I Will Do Anything for Him (Part 2)- Rachel Steele.mp4 (116.45 MB)... +Processing: MILF347 - Cheating Cuckold Part 2 - Rachel Steele.mp4 (Mode: scene) +Downloading MILF347 - Cheating Cuckold Part 2 - Rachel Steele.mp4 (116.97 MB)... +Processing: MILF005 - Cummy panties - Rachel Steele.mp4 (Mode: scene) +Downloading MILF005 - Cummy panties - Rachel Steele.mp4 (52.79 MB)... +Processing: MILF160 - Cocktail Party Cum Shot - Rachel Steele.mp4 (Mode: scene) +Downloading MILF160 - Cocktail Party Cum Shot - Rachel Steele.mp4 (104.08 MB)... +Processing: MILF298 - My Nephew Knows! - Part 1 - Rachel Steele.mp4 (Mode: scene) +Downloading MILF298 - My Nephew Knows! - Part 1 - Rachel Steele.mp4 (137.66 MB)... +Processing: MILF764 - Forgive Me Father - Rachel Steele.mp4 (Mode: scene) +Downloading MILF764 - Forgive Me Father - Rachel Steele.mp4 (552.81 MB)... +Processing: MILF133 - Seduced by Son's Friend - Rachel Steele.mp4 (Mode: scene) +Downloading MILF133 - Seduced by Son's Friend - Rachel Steele.mp4 (127.00 MB)... +Processing: MILF127 - I'll Show You a Slut! - Rachel Steele.mp4 (Mode: scene) +Downloading MILF127 - I'll Show You a Slut! - Rachel Steele.mp4 (88.42 MB)... +Processing: MILF321 - The Bet Part 1 - Rachel Steele.mp4 (Mode: scene) +Downloading MILF321 - The Bet Part 1 - Rachel Steele.mp4 (119.80 MB)... +Processing: MILF050 - Blackmailed and Dominated - Rachel Steele.mp4 (Mode: scene) +Downloading MILF050 - Blackmailed and Dominated - Rachel Steele.mp4 (152.47 MB)... +Processing: MILF676 - Taboo Stories, Stolen Sons - Sara James, Rachel Steele.mp4 (Mode: scene) +Downloading MILF676 - Taboo Stories, Stolen Sons - Sara James, Rachel Steele.mp4 (432.78 MB)... +Processing: MILF024 - Sex Position Instruction - Rachel Steele.mp4 (Mode: scene) +Downloading MILF024 - Sex Position Instruction - Rachel Steele.mp4 (79.88 MB)... +Processing: MILF745 - Taboo Stories, Aunt Rachel Risky Cheating - Rachel Steele.mp4 (Mode: scene) +Downloading MILF745 - Taboo Stories, Aunt Rachel Risky Cheating - Rachel Steele.mp4 (171.23 MB)... +Processing: MILF1046 - My Mother, My Lover - Rachel Steele.mp4 (Mode: scene) +Downloading MILF1046 - My Mother, My Lover - Rachel Steele.mp4 (603.00 MB)... +Processing: MILF623 - Jerking my Cock, Watching my Mother - Rachel Steele.mp4 (Mode: scene) +Downloading MILF623 - Jerking my Cock, Watching my Mother - Rachel Steele.mp4 (121.75 MB)... +Processing: MILF082 - Savannah Redmilf is Acting Like a Slut - Rachel Steele.mp4 (Mode: scene) +Downloading MILF082 - Savannah Redmilf is Acting Like a Slut - Rachel Steele.mp4 (60.88 MB)... +Processing: MILF688 - Stolen Moments - Rachel Steele.mp4 (Mode: scene) +Downloading MILF688 - Stolen Moments - Rachel Steele.mp4 (191.94 MB)... +Processing: MILF368 - A Sons Love (Part 2) - Rachel Steele.mp4 (Mode: scene) +Downloading MILF368 - A Sons Love (Part 2) - Rachel Steele.mp4 (133.39 MB)... +Processing: MILF290 - Tease and Deliver - Rachel Steele.mp4 (Mode: scene) +Downloading MILF290 - Tease and Deliver - Rachel Steele.mp4 (147.86 MB)... +Processing: MILF226.2 - Son Forces Mother to Fuck - Rachel Steele.mp4 (Mode: scene) +Downloading MILF226.2 - Son Forces Mother to Fuck - Rachel Steele.mp4 (64.88 MB)... +Processing: MILF712 - Dommy Mommy Story - Rachel Steele.mp4 (Mode: scene) +Downloading MILF712 - Dommy Mommy Story - Rachel Steele.mp4 (98.22 MB)... +Processing: MILF240 - Quiet Kitchen Fuck- Rachel Steele- Rachel Steele.mp4 (Mode: scene) +Downloading MILF240 - Quiet Kitchen Fuck- Rachel Steele- Rachel Steele.mp4 (122.82 MB)... +Processing: MILF1011 - The Truth Comes Out - Rachel Steele.mp4 (Mode: scene) +Downloading MILF1011 - The Truth Comes Out - Rachel Steele.mp4 (667.39 MB)... +Processing: MILF177 - Cum Up to See the View - Rachel Steele.mp4 (Mode: scene) +Downloading MILF177 - Cum Up to See the View - Rachel Steele.mp4 (144.41 MB)... +Processing: MILF377 - My Son, this is Wrong! - Rachel Steele.mp4 (Mode: scene) +Downloading MILF377 - My Son, this is Wrong! - Rachel Steele.mp4 (109.94 MB)... +Processing: MILF933 - Wunder Woman Strips for You - Rachel Steele.mp4 (Mode: scene) +Downloading MILF933 - Wunder Woman Strips for You - Rachel Steele.mp4 (89.24 MB)... +Processing: MILF029 - Wash for Mother - Rachel Steele.mp4 (Mode: scene) +Downloading MILF029 - Wash for Mother - Rachel Steele.mp4 (93.85 MB)... +Processing: MILF108 - Phone Sex with Mother - Rachel Steele.mp4 (Mode: scene) +Downloading MILF108 - Phone Sex with Mother - Rachel Steele.mp4 (55.37 MB)... +Processing: MILF475 - The Jealous Son - Rachel Steele.mp4 (Mode: scene) +Downloading MILF475 - The Jealous Son - Rachel Steele.mp4 (123.07 MB)... +Processing: MILF297 - Son Out of Jail - Rachel Steele.mp4 (Mode: scene) +Downloading MILF297 - Son Out of Jail - Rachel Steele.mp4 (155.67 MB)... +Processing: MILF1099 - Son Fills In For Dad - Rachel Steele.mp4 (Mode: scene) +Downloading MILF1099 - Son Fills In For Dad - Rachel Steele.mp4 (376.15 MB)... +Processing: MILF083 - Lotion - Rachel Steele.mp4 (Mode: scene) +Downloading MILF083 - Lotion - Rachel Steele.mp4 (41.98 MB)... +Processing: MILF808 - Robo Slut Mother - Rachel Steele.mp4 (Mode: scene) +Downloading MILF808 - Robo Slut Mother - Rachel Steele.mp4 (446.13 MB)... +Processing: MILF148 - Birthday Present - Rachel Steele.mp4 (Mode: scene) +Downloading MILF148 - Birthday Present - Rachel Steele.mp4 (68.42 MB)... +Processing: MILF903 - Mind Control Perfect Prude - Rachel Steele.mp4 (Mode: scene) +Downloading MILF903 - Mind Control Perfect Prude - Rachel Steele.mp4 (1074.00 MB)... +Processing: MILF178 – Son’s Massage Goes Too Far - Rachel Steele.mp4 (Mode: scene) +Downloading MILF178 – Son’s Massage Goes Too Far - Rachel Steele.mp4 (90.14 MB)... +Processing: MILF1102HD - Son Fills In For Dad Part 3 - Rachel Steele.mp4 (Mode: scene) +Downloading MILF1102HD - Son Fills In For Dad Part 3 - Rachel Steele.mp4 (262.00 MB)... +Processing: MILF711 - (HD) Pregnant By Son Again - Rachel Steele.mp4 (Mode: scene) +Downloading MILF711 - (HD) Pregnant By Son Again - Rachel Steele.mp4 (387.62 MB)... +Processing: MILF164 – Rachel Fucked Her Son by Mistake - Rachel Steele.mp4 (Mode: scene) +Downloading MILF164 – Rachel Fucked Her Son by Mistake - Rachel Steele.mp4 (101.01 MB)... +Processing: MILF785 - Leave It To My Beaver - Rachel Steele.mp4 (Mode: scene) +Downloading MILF785 - Leave It To My Beaver - Rachel Steele.mp4 (132.53 MB)... +Processing: MILF006 - Mother Gives a Handjob - Rachel Steele.mp4 (Mode: scene) +Downloading MILF006 - Mother Gives a Handjob - Rachel Steele.mp4 (78.61 MB)... +Processing: MILF140.1 - Blackmailed Into Sex With Her Son - Rachel Steele.mp4 (Mode: scene) +Downloading MILF140.1 - Blackmailed Into Sex With Her Son - Rachel Steele.mp4 (99.94 MB)... +Processing: MILF097 - Substitute Stud - Rachel Steele.mp4 (Mode: scene) +Downloading MILF097 - Substitute Stud - Rachel Steele.mp4 (87.75 MB)... +Processing: MILF411 - Mom, I Must Have You!-(Rachel Steele)-{Rachel Steele}-[Barefoot, Bed, Bedroom, Blowjob, Breast Sucking, Brown Hair (Female), Cum in Mouth, Hairless Pussy, Lingerie, Long Hair, Missionary, Mother, Son, Spits Cum Out, Straight Hair].mp4 (Mode: scene) +Downloading MILF411 - Mom, I Must Have You!-(Rachel Steele)-{Rachel Steele}-[Barefoot, Bed, Bedroom, Blowjob, Breast Sucking, Brown Hair (Female), Cum in Mouth, Hairless Pussy, Lingerie, Long Hair, Missionary, Mother, Son, Spits Cum Out, Straight Hair].mp4 (75.94 MB)... +Processing: MILF593 - Mommas Boy Training - Rachel Steele.mp4 (Mode: scene) +Downloading MILF593 - Mommas Boy Training - Rachel Steele.mp4 (212.55 MB)... +Processing: MILF682 - Dommie Mommie, No Sluts for You! - Rachel Steele.mp4 (Mode: scene) +Downloading MILF682 - Dommie Mommie, No Sluts for You! - Rachel Steele.mp4 (94.28 MB)... +Processing: MILF100 - Voyeur Gets Closer Look - Rachel Steele.mp4 (Mode: scene) +Downloading MILF100 - Voyeur Gets Closer Look - Rachel Steele.mp4 (72.26 MB)... +Processing: Milf542 - Secrets Of A Milf - Rachel Steele.mp4 (Mode: scene) +Downloading Milf542 - Secrets Of A Milf - Rachel Steele.mp4 (204.95 MB)... +Processing: MILF086 - Mother Shows You - Rachel Steele.mp4 (Mode: scene) +Downloading MILF086 - Mother Shows You - Rachel Steele.mp4 (48.84 MB)... +Processing: MILF528 - Mommie's Leather Gloves - Rachel Steele.mp4 (Mode: scene) +Downloading MILF528 - Mommie's Leather Gloves - Rachel Steele.mp4 (102.81 MB)... +Processing: MILF031A - Mother Is Napping - Rachel Steele.mp4 (Mode: scene) +Downloading MILF031A - Mother Is Napping - Rachel Steele.mp4 (44.80 MB)... +Processing: MILF451 - Jeremy, Is this what You Want - Rachel Steele.mp4 (Mode: scene) +Downloading MILF451 - Jeremy, Is this what You Want - Rachel Steele.mp4 (114.21 MB)... +Processing: MILF589 - Broken Condom Mother Impregnated - Rachel Steele.mp4 (Mode: scene) +Downloading MILF589 - Broken Condom Mother Impregnated - Rachel Steele.mp4 (258.23 MB)... +Processing: MILF125 - Special Gift From Mother - Rachel Steele.mp4 (Mode: scene) +Downloading MILF125 - Special Gift From Mother - Rachel Steele.mp4 (60.89 MB)... +Processing: MILF758 - It is a Mommie Thing - Rachel Steele.mp4 (Mode: scene) +Downloading MILF758 - It is a Mommie Thing - Rachel Steele.mp4 (318.43 MB)... +Processing: MILF362 - Mother at Sons Mercy - Rachel Steele.mp4 (Mode: scene) +Downloading MILF362 - Mother at Sons Mercy - Rachel Steele.mp4 (181.62 MB)... +Processing: MILF336 - Blowjob for College Bound Son - Rachel Steele.mp4 (Mode: scene) +Downloading MILF336 - Blowjob for College Bound Son - Rachel Steele.mp4 (121.57 MB)... +Processing: MILF009 - Jerk Off for Mother - Rachel Steele.mp4 (Mode: scene) +Downloading MILF009 - Jerk Off for Mother - Rachel Steele.mp4 (49.89 MB)... +Processing: MILF158 - Lazy Bum Cums - Rachel Steele.mp4 (Mode: scene) +Downloading MILF158 - Lazy Bum Cums - Rachel Steele.mp4 (123.00 MB)... +Processing: MILF030 - Wake Up! - Rachel Steele.mp4 (Mode: scene) +Downloading MILF030 - Wake Up! - Rachel Steele.mp4 (46.86 MB)... +Processing: MILF138 - Helpful Handjob - Rachel Steele.mp4 (Mode: scene) +Downloading MILF138 - Helpful Handjob - Rachel Steele.mp4 (122.69 MB)... +Processing: MILF020 - Caught Watching Mother's Porn - Rachel Steele.mp4 (Mode: scene) +Downloading MILF020 - Caught Watching Mother's Porn - Rachel Steele.mp4 (115.82 MB)... +Processing: A Private Moment with Rachel 3 - Rachel Steele.mp4 (Mode: scene) +Downloading A Private Moment with Rachel 3 - Rachel Steele.mp4 (89.97 MB)... +Processing: MILF797 - Protective Mother - Rachel Steele.mp4 (Mode: scene) +Downloading MILF797 - Protective Mother - Rachel Steele.mp4 (355.25 MB)... +Processing: MILF134.3 - Jack, I am Your Mother! - Rachel Steele.mp4 (Mode: scene) +Downloading MILF134.3 - Jack, I am Your Mother! - Rachel Steele.mp4 (63.41 MB)... +Processing: MILF353 - Wife Sharing - Rachel Steele.mp4 (Mode: scene) +Downloading MILF353 - Wife Sharing - Rachel Steele.mp4 (209.71 MB)... +Processing: MILF140.2 - Blackmailed Into Sex With Her Son - Rachel Steele.mp4 (Mode: scene) +Downloading MILF140.2 - Blackmailed Into Sex With Her Son - Rachel Steele.mp4 (84.49 MB)... +Processing: MILF465 - Sleeping beauty - Rachel Steele.mp4 (Mode: scene) +Downloading MILF465 - Sleeping beauty - Rachel Steele.mp4 (107.35 MB)... +Processing: MILF387 - Rachel's Revenge - Orabella.mp4 (Mode: scene) +Downloading MILF387 - Rachel's Revenge - Orabella.mp4 (272.91 MB)... +Processing: MILF181 - Son Says Mom Can't Suck a Cock - Rachele Steele.mp4 (Mode: scene) +Downloading MILF181 - Son Says Mom Can't Suck a Cock - Rachele Steele.mp4 (104.48 MB)... +Processing: MILF112 - Morning Wood - Rachel Steele.mp4 (Mode: scene) +Downloading MILF112 - Morning Wood - Rachel Steele.mp4 (103.56 MB)... +Processing: MILF1348- - Rachel Revealed, Lance's Story HD-(Rachel Steele)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF1348- - Rachel Revealed, Lance's Story HD-(Rachel Steele)-{Rachel Steele}.mp4 (541.29 MB)... +Processing: MILF087 - After the Party - Rachel Steele.mp4 (Mode: scene) +Downloading MILF087 - After the Party - Rachel Steele.mp4 (52.85 MB)... +Processing: MILF478 - Mother is Surrogate Girlfriend - Rachel Steele.mp4 (Mode: scene) +Downloading MILF478 - Mother is Surrogate Girlfriend - Rachel Steele.mp4 (134.18 MB)... +Processing: MILF536 - Moral Crusader - Rachel Steele.mp4 (Mode: scene) +Downloading MILF536 - Moral Crusader - Rachel Steele.mp4 (276.02 MB)... +Processing: MILF205 - Phone Sex with Son - Rachel Steele.mp4 (Mode: scene) +Downloading MILF205 - Phone Sex with Son - Rachel Steele.mp4 (48.45 MB)... +Processing: MILF1103 - Nephew Needs Focus and a Fuck Part 3 - Rachel Steele.mp4 (Mode: scene) +Downloading MILF1103 - Nephew Needs Focus and a Fuck Part 3 - Rachel Steele.mp4 (253.64 MB)... +Processing: MILF118 - Caught With Mother's Panties - Rachel Steele.mp4 (Mode: scene) +Downloading MILF118 - Caught With Mother's Panties - Rachel Steele.mp4 (120.44 MB)... +Processing: MILF010 - Sexy Teacher - Rachel Steele.mp4 (Mode: scene) +Downloading MILF010 - Sexy Teacher - Rachel Steele.mp4 (87.82 MB)... +Processing: MILF879 - Stacie's First Time - Stacie Starr, Rachel Steele.mp4 (Mode: scene) +Downloading MILF879 - Stacie's First Time - Stacie Starr, Rachel Steele.mp4 (160.98 MB)... +Processing: MILF091 - Lactating Mother - Rachel Steele.mp4 (Mode: scene) +Downloading MILF091 - Lactating Mother - Rachel Steele.mp4 (58.90 MB)... +Processing: MILF001 - Masturbation Instruction - Rachel Steele.mp4 (Mode: scene) +Downloading MILF001 - Masturbation Instruction - Rachel Steele.mp4 (77.92 MB)... +Processing: MILF128 - Maid Takes Charge - Rachel Steele.mp4 (Mode: scene) +Downloading MILF128 - Maid Takes Charge - Rachel Steele.mp4 (86.81 MB)... +Processing: MILF115 - Breakfast Fuck - Rachel Steele.mp4 (Mode: scene) +Downloading MILF115 - Breakfast Fuck - Rachel Steele.mp4 (89.09 MB)... +Processing: MILF367 A Sons Love (part 1) - Rachel Steele.mp4 (Mode: scene) +Downloading MILF367 A Sons Love (part 1) - Rachel Steele.mp4 (163.46 MB)... +Processing: MILF713 - My Secret Love - Rachel Steele.mp4 (Mode: scene) +Downloading MILF713 - My Secret Love - Rachel Steele.mp4 (222.57 MB)... +Processing: MILF154 - Son Gets Jealous of Mother Going Out - Rachel Steele.mp4 (Mode: scene) +Downloading MILF154 - Son Gets Jealous of Mother Going Out - Rachel Steele.mp4 (91.10 MB)... +Processing: MILF316 - Hot Lotion - Rachel Steele.mp4 (Mode: scene) +Downloading MILF316 - Hot Lotion - Rachel Steele.mp4 (135.98 MB)... +Processing: MILF065 - Picked Up in Adult Book Store - Rachel Steele.mp4 (Mode: scene) +Downloading MILF065 - Picked Up in Adult Book Store - Rachel Steele.mp4 (168.35 MB)... +Processing: MILF1256 - Son's Secret Fantasy - Rachel Steele.mp4 (Mode: scene) +Downloading MILF1256 - Son's Secret Fantasy - Rachel Steele.mp4 (587.72 MB)... +Processing: MILF409 - Son and Friend Fuck Mother - Rachel Steele.mp4 (Mode: scene) +Downloading MILF409 - Son and Friend Fuck Mother - Rachel Steele.mp4 (266.47 MB)... +Processing: MILF702 - Rachel Steele PhD, Domination Fantasy - Rachel Steele.mp4 (Mode: scene) +Downloading MILF702 - Rachel Steele PhD, Domination Fantasy - Rachel Steele.mp4 (87.40 MB)... +Processing: MILF137 - Young Stud Cums by for a Quickee - Rachel Steele.mp4 (Mode: scene) +Downloading MILF137 - Young Stud Cums by for a Quickee - Rachel Steele.mp4 (70.11 MB)... +Processing: MILF895HD - Love or Sin - Rachel Steele.mp4 (Mode: scene) +Downloading MILF895HD - Love or Sin - Rachel Steele.mp4 (1068.34 MB)... +Processing: MILF422 - I Am All The Slut You Need! - Rachel Steele.mp4 (Mode: scene) +Downloading MILF422 - I Am All The Slut You Need! - Rachel Steele.mp4 (189.41 MB)... +Processing: MILF140.3 - Blackmailed Into Sex With Her Son - Rachel Steele.mp4 (Mode: scene) +Downloading MILF140.3 - Blackmailed Into Sex With Her Son - Rachel Steele.mp4 (98.19 MB)... +Processing: MILF696 - Eric, I Give Up! - Rachel Steele.mp4 (Mode: scene) +Downloading MILF696 - Eric, I Give Up! - Rachel Steele.mp4 (428.06 MB)... +Processing: MILF147 - Get Over Here and Blow Me! - Rachel Steele.mp4 (Mode: scene) +Downloading MILF147 - Get Over Here and Blow Me! - Rachel Steele.mp4 (113.00 MB)... +Processing: MILF028 - Watch Mother Fuck your Friend - Rachel Steele.mp4 (Mode: scene) +Downloading MILF028 - Watch Mother Fuck your Friend - Rachel Steele.mp4 (96.05 MB)... +Processing: MILF204 - Son's Friend Home from College - Rachel Steele.mp4 (Mode: scene) +Downloading MILF204 - Son's Friend Home from College - Rachel Steele.mp4 (114.58 MB)... +Processing: MILF1165 - Mind Control, Sleep Walkers - Rachel Steele and Stacie Starr.mp4 (Mode: scene) +Downloading MILF1165 - Mind Control, Sleep Walkers - Rachel Steele and Stacie Starr.mp4 (254.73 MB)... +Processing: MILF831 - Another Disappointment - Rachel Steele.mp4 (Mode: scene) +Downloading MILF831 - Another Disappointment - Rachel Steele.mp4 (242.13 MB)... +Processing: MILF1132 - Six Creampies and a Surprise - Rachel Steele.mp4 (Mode: scene) +Downloading MILF1132 - Six Creampies and a Surprise - Rachel Steele.mp4 (275.51 MB)... +Scanning directory: /videos/redmilf/kylie.and.britney +Processing: MILF194 – Son Gets Birthday Present from Mom and Sisters – Part 1 - Kylie and Britney.mp4 (Mode: scene) +Downloading MILF194 – Son Gets Birthday Present from Mom and Sisters – Part 1 - Kylie and Britney.mp4 (86.67 MB)... +Processing: MILF194 – Son Gets Birthday Present from Mom and Sisters – Part 2 - Kylie and Britney.mp4 (Mode: scene) +Downloading MILF194 – Son Gets Birthday Present from Mom and Sisters – Part 2 - Kylie and Britney.mp4 (76.77 MB)... +Scanning directory: /videos/redmilf/unnamed-1 +Processing: MILF989 - Mrs Steeles.Handjob - Rachel Steele and unknown girl - she teaches.mp4 (Mode: scene) +Downloading MILF989 - Mrs Steeles.Handjob - Rachel Steele and unknown girl - she teaches.mp4 (337.21 MB)... +Processing: MILF192 - Daughter Sucks Cock While Dad is on the Phone - unknown.mp4 (Mode: scene) +Downloading MILF192 - Daughter Sucks Cock While Dad is on the Phone - unknown.mp4 (101.04 MB)... +Processing: MILF208 - Caught Daughter Sucking Her Brother's Cock - Rachel Steele, Unknown.mp4 (Mode: scene) +Downloading MILF208 - Caught Daughter Sucking Her Brother's Cock - Rachel Steele, Unknown.mp4 (89.82 MB)... +Processing: MILF193 - Go Jerk Off Your Father - Two Daughters, unknown.mp4 (Mode: scene) +Downloading MILF193 - Go Jerk Off Your Father - Two Daughters, unknown.mp4 (93.88 MB)... +Scanning directory: /videos/redmilf/paula.redmilf +Processing: MILF219 – Tricked Into Fucking Her Son – Part 2- Rachel Steele, Paula Redmilf.mp4 (Mode: scene) +Downloading MILF219 – Tricked Into Fucking Her Son – Part 2- Rachel Steele, Paula Redmilf.mp4 (73.56 MB)... +Scanning directory: /videos/redmilf/amo.morbia +Processing: MILF599- - I Dare You.. Brother Sister-(Amo Morbia)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF599- - I Dare You.. Brother Sister-(Amo Morbia)-{Rachel Steele}.mp4 (119.12 MB)... +Processing: DID494- Sister Grudge Fuck.mp4 (Mode: scene) +Downloading DID494- Sister Grudge Fuck.mp4 (144.36 MB)... +Processing: MILF654 - Red MILF Production 2-(Amo Morbia)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF654 - Red MILF Production 2-(Amo Morbia)-{Rachel Steele}.mp4 (686.26 MB)... +Processing: MILF597- - I Dare You Brother StepSister-(Amo Morbia)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF597- - I Dare You Brother StepSister-(Amo Morbia)-{Rachel Steele}.mp4 (216.94 MB)... +Processing: MILF598 - I Dare You.. Brother Sister-(Amo Morbia)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF598 - I Dare You.. Brother Sister-(Amo Morbia)-{Rachel Steele}.mp4 (100.37 MB)... +Processing: MILF761- - Fuck Your Sister Franklin-(Amo Morbia)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF761- - Fuck Your Sister Franklin-(Amo Morbia)-{Rachel Steele}.mp4 (543.78 MB)... +Processing: MILF661 - Charlene's Dirty Little Secret - amo morbia.mp4 (Mode: scene) +Downloading MILF661 - Charlene's Dirty Little Secret - amo morbia.mp4 (435.34 MB)... +Scanning directory: /videos/redmilf/keri.redmilf +Processing: MILF429 - Mother Takes Charge - Rachel Steele and Keri Redmilf.mp4 (Mode: scene) +Downloading MILF429 - Mother Takes Charge - Rachel Steele and Keri Redmilf.mp4 (125.28 MB)... +Processing: MILF359 - The Principals Office - Keri Redmilf, Rachel Steele.mp4 (Mode: scene) +Downloading MILF359 - The Principals Office - Keri Redmilf, Rachel Steele.mp4 (134.51 MB)... +Processing: MILF356 - Let Mother Help - Keri Redmilf, Rachel Steele.mp4 (Mode: scene) +Downloading MILF356 - Let Mother Help - Keri Redmilf, Rachel Steele.mp4 (155.61 MB)... +Processing: MILF455 - Suck My Cock Mom or I Will Tell - Rachel Steele, Keri Redmilf.mp4 (Mode: scene) +Downloading MILF455 - Suck My Cock Mom or I Will Tell - Rachel Steele, Keri Redmilf.mp4 (160.75 MB)... +Scanning directory: /videos/redmilf/katie.cummings +Processing: DID1224.mp4 (Mode: scene) +Downloading DID1224.mp4 (73.21 MB)... +Processing: DID1364.mp4 (Mode: scene) +Downloading DID1364.mp4 (60.49 MB)... +Processing: MILF1656.mp4 (Mode: scene) +Downloading MILF1656.mp4 (114.84 MB)... +Processing: DID1225.mp4 (Mode: scene) +Downloading DID1225.mp4 (71.89 MB)... +Processing: DID1365.mp4 (Mode: scene) +Downloading DID1365.mp4 (58.41 MB)... +Processing: MILF1420.mp4 (Mode: scene) +Downloading MILF1420.mp4 (253.48 MB)... +Processing: MILF1479.mp4 (Mode: scene) +Downloading MILF1479.mp4 (246.15 MB)... +Scanning directory: /videos/redmilf/olivia.olove +Processing: MILF1597.mp4 (Mode: scene) +Downloading MILF1597.mp4 (158.17 MB)... +Processing: DID1243.mp4 (Mode: scene) +Downloading DID1243.mp4 (102.23 MB)... +Scanning directory: /videos/redmilf/grace.evangeline +Processing: MILF941 - Rachels Rival - Grace Evangeline and Rachele Steele.mp4 (Mode: scene) +Downloading MILF941 - Rachels Rival - Grace Evangeline and Rachele Steele.mp4 (1012.98 MB)... +Processing: MILF1289HD - Cheating Housewife, The Secret Affair - Grace Evangeline, Rachel Steele.mp4 (Mode: scene) +Downloading MILF1289HD - Cheating Housewife, The Secret Affair - Grace Evangeline, Rachel Steele.mp4 (1014.67 MB)... +Processing: MILF1001HD - Mind Controlled Club Sluts - Rachel Steele and Grace Evangeline.mp4 (Mode: scene) +Downloading MILF1001HD - Mind Controlled Club Sluts - Rachel Steele and Grace Evangeline.mp4 (678.03 MB)... +Scanning directory: /videos/redmilf/cousin.lucy +Processing: MILF1214 - Taboo Stories, Cum in Me Cousin - creampie.mp4 (Mode: scene) +Downloading MILF1214 - Taboo Stories, Cum in Me Cousin - creampie.mp4 (475.09 MB)... +Scanning directory: /videos/redmilf/kelsie.cummings +Processing: DID210 - Bad Neighborhood Welcome.mp4 (Mode: scene) +Downloading DID210 - Bad Neighborhood Welcome.mp4 (81.81 MB)... +Processing: MILF361 - Daddy I Am All You Need - Kelsie Cummings.mp4 (Mode: scene) +Downloading MILF361 - Daddy I Am All You Need - Kelsie Cummings.mp4 (118.69 MB)... +Processing: MILF376 - Suck and Make Up - Kelsie Cummings_969134793.mp4 (Mode: scene) +Downloading MILF376 - Suck and Make Up - Kelsie Cummings_969134793.mp4 (1918.26 MB)... +Processing: Daddy videos teen brother and sister! - XVIDEOS.COM.mp4 (Mode: scene) +Downloading Daddy videos teen brother and sister! - XVIDEOS.COM.mp4 (60.08 MB)... +Processing: MILF471 - Blackmailed.mp4 (Mode: scene) +Downloading MILF471 - Blackmailed.mp4 (227.00 MB)... +Processing: MILF462 - Sucking Stepdad - Kelsie Cummings.mp4 (Mode: scene) +Downloading MILF462 - Sucking Stepdad - Kelsie Cummings.mp4 (126.23 MB)... +Processing: MILF667 - Lesbian Chronicles 10, Morning After - Kelsie Cummings.mp4 (Mode: scene) +Downloading MILF667 - Lesbian Chronicles 10, Morning After - Kelsie Cummings.mp4 (83.71 MB)... +Processing: MILF376 - Suck and Make Up - Kelsie Cummings_1_stab_thm2_apo8_iris3_hyp1_453209585.mp4 (Mode: scene) +Downloading MILF376 - Suck and Make Up - Kelsie Cummings_1_stab_thm2_apo8_iris3_hyp1_453209585.mp4 (2841.50 MB)... +Processing: MILF376 - Suck and Make Up - Kelsie Cummings_1_stab_thm2_apo8_iris3_hyp1_605885545.mp4 (Mode: scene) +Downloading MILF376 - Suck and Make Up - Kelsie Cummings_1_stab_thm2_apo8_iris3_hyp1_605885545.mp4 (0.00 MB)... +Processing: MILF622 - Lesbian Chronicles 8, On Film .mp4 (Mode: scene) +Downloading MILF622 - Lesbian Chronicles 8, On Film .mp4 (78.30 MB)... +Processing: MILF541 - Lesbian Chronicles 1, Diary of My Mother .mp4 (Mode: scene) +Downloading MILF541 - Lesbian Chronicles 1, Diary of My Mother .mp4 (93.09 MB)... +Processing: MILF434 - Mother Keeps the Peace - HQ with Audio.mp4 (Mode: scene) +Downloading MILF434 - Mother Keeps the Peace - HQ with Audio.mp4 (337.93 MB)... +Processing: Daddy LOVES his BI Teen Daughters - XVIDEOS.COM.mp4 (Mode: scene) +Downloading Daddy LOVES his BI Teen Daughters - XVIDEOS.COM.mp4 (70.73 MB)... +Processing: MILF452 - Slut Sisters.mp4 (Mode: scene) +Downloading MILF452 - Slut Sisters.mp4 (191.05 MB)... +Processing: MILF519 - You Live in My House, You Live by My Rules-(Kelsie Cummings)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF519 - You Live in My House, You Live by My Rules-(Kelsie Cummings)-{Rachel Steele}.mp4 (680.42 MB)... +Processing: MILF417 - Mother Collects Sperm Sample.mp4 (Mode: scene) +Downloading MILF417 - Mother Collects Sperm Sample.mp4 (158.52 MB)... +Processing: MILF393 - Our Brothers Love.mp4 (Mode: scene) +Downloading MILF393 - Our Brothers Love.mp4 (130.50 MB)... +Processing: MILF380 - Daughter And Daddy Teach Mother A Lesson.mp4 (Mode: scene) +Downloading MILF380 - Daughter And Daddy Teach Mother A Lesson.mp4 (131.46 MB)... +Processing: MILF391 - Rachel Forced to Watch Her Kids Have Sex.mp4 (Mode: scene) +Downloading MILF391 - Rachel Forced to Watch Her Kids Have Sex.mp4 (99.46 MB)... +Processing: DID216 - Get the Virgin.mp4 (Mode: scene) +Downloading DID216 - Get the Virgin.mp4 (159.81 MB)... +Processing: MILF600 - Lesbian Chronicles 6, Hidden Treasures .mp4 (Mode: scene) +Downloading MILF600 - Lesbian Chronicles 6, Hidden Treasures .mp4 (70.06 MB)... +Processing: MILF432 - Sister Is An Escort - Kelsie Cummings_scale_2x_dtv-4_prob4_thm2.mp4 (Mode: scene) +Downloading MILF432 - Sister Is An Escort - Kelsie Cummings_scale_2x_dtv-4_prob4_thm2.mp4 (132.75 MB)... +Processing: DID239 - Hog Tie Kelsie Cummings.mp4 (Mode: scene) +Downloading DID239 - Hog Tie Kelsie Cummings.mp4 (74.91 MB)... +Processing: DID397.wmv (Mode: scene) +Downloading DID397.wmv (328.29 MB)... +Processing: DID285 - Mother Daughter Alone, Violated and Robbed.mp4 (Mode: scene) +Downloading DID285 - Mother Daughter Alone, Violated and Robbed.mp4 (72.52 MB)... +Processing: DID294 - Goth Initiation.mp4 (Mode: scene) +Downloading DID294 - Goth Initiation.mp4 (74.31 MB)... +Processing: Fetish43 - Ass Punishment and domination.mp4 (Mode: scene) +Downloading Fetish43 - Ass Punishment and domination.mp4 (180.19 MB)... +Processing: MILF439 - Strict Mother, Milked Before the Date - Kelsie Cummings.mp4 (Mode: scene) +Downloading MILF439 - Strict Mother, Milked Before the Date - Kelsie Cummings.mp4 (103.24 MB)... +Processing: Red MILF - Kelsie Cummings.mp4 (Mode: scene) +Downloading Red MILF - Kelsie Cummings.mp4 (180.87 MB)... +Processing: MILF556 - Lesbian Chronicles 3, Sexy Surprise .mp4 (Mode: scene) +Downloading MILF556 - Lesbian Chronicles 3, Sexy Surprise .mp4 (83.81 MB)... +Processing: MILF 146 - Stepson Makes Her Suck Him Off-(Kelsie Cummings, Rachel Steele)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF 146 - Stepson Makes Her Suck Him Off-(Kelsie Cummings, Rachel Steele)-{Rachel Steele}.mp4 (1917.27 MB)... +Processing: MILF1111 - Lesbian Chronicles 22, Mistaken Identity .mp4 (Mode: scene) +Downloading MILF1111 - Lesbian Chronicles 22, Mistaken Identity .mp4 (88.48 MB)... +Processing: MILF574 - Lesbian Chronicles 4, Daughter's Experience Abroad .mp4 (Mode: scene) +Downloading MILF574 - Lesbian Chronicles 4, Daughter's Experience Abroad .mp4 (96.04 MB)... +Processing: Kelsie Cummings - Dixie Trailer Park - BJ - XVIDEOS COM.mp4 (Mode: scene) +Downloading Kelsie Cummings - Dixie Trailer Park - BJ - XVIDEOS COM.mp4 (28.19 MB)... +Processing: MILF404 - Daddy You Do Not Need Porn.mp4 (Mode: scene) +Downloading MILF404 - Daddy You Do Not Need Porn.mp4 (197.31 MB)... +Processing: MILF548 - Lesbian Chronicles 2, Diary of My Mother - Rachel Steele, Kelsie Cummings.mp4 (Mode: scene) +Downloading MILF548 - Lesbian Chronicles 2, Diary of My Mother - Rachel Steele, Kelsie Cummings.mp4 (114.39 MB)... +Processing: DID441 - Beauty and the Monster 3.mp4 (Mode: scene) +Downloading DID441 - Beauty and the Monster 3.mp4 (178.07 MB)... +Processing: MILF466 - Mom, I Want to be Like You!.mp4 (Mode: scene) +Downloading MILF466 - Mom, I Want to be Like You!.mp4 (172.29 MB)... +Processing: FETISH001 - LESBIAN FOOT FETISH SMELLY FEET.mp4 (Mode: scene) +Downloading FETISH001 - LESBIAN FOOT FETISH SMELLY FEET.mp4 (144.55 MB)... +Processing: MILF469 - How to Use a Man, Lesson for Daughter.mp4 (Mode: scene) +Downloading MILF469 - How to Use a Man, Lesson for Daughter.mp4 (161.79 MB)... +Processing: MILF432 - Sister Is An Escort - Kelsie Cummings_scale_2x_dtv-4.mp4 (Mode: scene) +Downloading MILF432 - Sister Is An Escort - Kelsie Cummings_scale_2x_dtv-4.mp4 (549.85 MB)... +Processing: MILF835 - Lesbian Chronicles 16.mp4 (Mode: scene) +Downloading MILF835 - Lesbian Chronicles 16.mp4 (74.12 MB)... +Processing: MILF382 - Suck to Stay Out of Jail.mp4 (Mode: scene) +Downloading MILF382 - Suck to Stay Out of Jail.mp4 (80.24 MB)... +Processing: MILF419 - Anthony's Wet Dream .mp4 (Mode: scene) +Downloading MILF419 - Anthony's Wet Dream .mp4 (202.65 MB)... +Processing: Fetish14 - Mother and teen bondage.mp4 (Mode: scene) +Downloading Fetish14 - Mother and teen bondage.mp4 (161.53 MB)... +Processing: Two SISTERS fuck - XVIDEOS.COM.mp4 (Mode: scene) +Downloading Two SISTERS fuck - XVIDEOS.COM.mp4 (90.21 MB)... +Processing: MILF482 - Sex Craved Family.mp4 (Mode: scene) +Downloading MILF482 - Sex Craved Family.mp4 (232.38 MB)... +Processing: MILF378 - Daddy always gets What He Needs.mp4 (Mode: scene) +Downloading MILF378 - Daddy always gets What He Needs.mp4 (102.88 MB)... +Processing: MILF434 - Mother Keeps the Peace.mp4 (Mode: scene) +Downloading MILF434 - Mother Keeps the Peace.mp4 (136.21 MB)... +Processing: MILF477 - Fucking his Sister.mp4 (Mode: scene) +Downloading MILF477 - Fucking his Sister.mp4 (145.14 MB)... +Processing: Kelsie Cummings - XVIDEOS COM.mp4 (Mode: scene) +Downloading Kelsie Cummings - XVIDEOS COM.mp4 (32.54 MB)... +Processing: MILF474 - Corrupting the Christian.mp4 (Mode: scene) +Downloading MILF474 - Corrupting the Christian.mp4 (130.28 MB)... +Processing: MILF479 - Cream Pie For Kelsie Then Her Mother.mp4 (Mode: scene) +Downloading MILF479 - Cream Pie For Kelsie Then Her Mother.mp4 (193.81 MB)... +Processing: DID209 - Stripper Struggling .mp4 (Mode: scene) +Downloading DID209 - Stripper Struggling .mp4 (82.70 MB)... +Scanning directory: /videos/redmilf/lola.redmilf +Processing: MILF200 - No Masturbating Without Mother - Lola Redmilf .mp4 (Mode: scene) +Downloading MILF200 - No Masturbating Without Mother - Lola Redmilf .mp4 (100.61 MB)... +Processing: MILF202 – Drunk Mother and Sister Blow Son - Lola Redmilf.mp4 (Mode: scene) +Downloading MILF202 – Drunk Mother and Sister Blow Son - Lola Redmilf.mp4 (37.38 MB)... +Processing: MILF304 - Take Care of Daddy While Mommie Sleeps - Lola Redmilf.mp4 (Mode: scene) +Downloading MILF304 - Take Care of Daddy While Mommie Sleeps - Lola Redmilf.mp4 (154.35 MB)... +Scanning directory: /videos/redmilf/eris-1 +Processing: DID1058.mp4 (Mode: scene) +Downloading DID1058.mp4 (122.49 MB)... +Processing: DID1045.mp4 (Mode: scene) +Downloading DID1045.mp4 (239.32 MB)... +Processing: DID1093.mp4 (Mode: scene) +Downloading DID1093.mp4 (142.02 MB)... +Processing: MILF1364.mp4 (Mode: scene) +Downloading MILF1364.mp4 (181.97 MB)... +Scanning directory: /videos/redmilf/jc.simpson +Processing: JC Simpson - I Crave Daddy 4 - Making It More Suspenseful - .mp4 (Mode: scene) +Downloading JC Simpson - I Crave Daddy 4 - Making It More Suspenseful - .mp4 (57.91 MB)... +Processing: JC Simpson - I Crave Daddy 1 - How It All Started - BareBack.mp4 (Mode: scene) +Downloading JC Simpson - I Crave Daddy 1 - How It All Started - BareBack.mp4 (64.59 MB)... +Processing: DID1255.mp4 (Mode: scene) +Downloading DID1255.mp4 (103.47 MB)... +Processing: DID1260.mp4 (Mode: scene) +Downloading DID1260.mp4 (92.68 MB)... +Processing: JC Simpson - My Brother Is The Father 1 - JWTIES - INCESTFLI.mp4 (Mode: scene) +Downloading JC Simpson - My Brother Is The Father 1 - JWTIES - INCESTFLI.mp4 (51.05 MB)... +Processing: JC Simpson - My Brother Is The Father 2 - JWTIES - INCESTFLI.mp4 (Mode: scene) +Downloading JC Simpson - My Brother Is The Father 2 - JWTIES - INCESTFLI.mp4 (132.67 MB)... +Processing: JC Simpson - My Brother Is The Father 3 - JWTIES - INCESTFLI.mp4 (Mode: scene) +Downloading JC Simpson - My Brother Is The Father 3 - JWTIES - INCESTFLI.mp4 (34.06 MB)... +Processing: MILF433.mp4 (Mode: scene) +Downloading MILF433.mp4 (169.40 MB)... +Processing: JC Simpson - I Crave Daddy 2 - The Morning After - BareBackS.mp4 (Mode: scene) +Downloading JC Simpson - I Crave Daddy 2 - The Morning After - BareBackS.mp4 (64.39 MB)... +Processing: JC Simpson - I Crave Daddy 3 - Satisfying Her Cravings - Bar.mp4 (Mode: scene) +Downloading JC Simpson - I Crave Daddy 3 - Satisfying Her Cravings - Bar.mp4 (63.42 MB)... +Processing: JC Simpson Ride on the Nappin Papa, Free Netflix HD Porn 8c xHamster xH.mp4 (Mode: scene) +Downloading JC Simpson Ride on the Nappin Papa, Free Netflix HD Porn 8c xHamster xH.mp4 (105.98 MB)... +Processing: JC Simpson - Booked hooker turns out to be sister.mp4 (Mode: scene) +Downloading JC Simpson - Booked hooker turns out to be sister.mp4 (141.94 MB)... +Processing: JC Simpson Ride on the Nappin Papa, Free Netflix HD Porn 8c xHamster xH-TdarrCacheFile-y3Vo7knneQ.mp4 (Mode: scene) +Downloading JC Simpson Ride on the Nappin Papa, Free Netflix HD Porn 8c xHamster xH-TdarrCacheFile-y3Vo7knneQ.mp4 (105.98 MB)... +Scanning directory: /videos/redmilf/karinne-1 +Processing: MILF184 - Karinne Finds Her Mother's Strap-on - Karinne Redmilf, Rachel Steele.mp4 (Mode: scene) +Downloading MILF184 - Karinne Finds Her Mother's Strap-on - Karinne Redmilf, Rachel Steele.mp4 (118.85 MB)... +Processing: MILF186 - Karinne and Peter Corrupt Their Mother - Karinne Redmilf, Rachel Steele.mp4 (Mode: scene) +Downloading MILF186 - Karinne and Peter Corrupt Their Mother - Karinne Redmilf, Rachel Steele.mp4 (120.21 MB)... +Scanning directory: /videos/redmilf/sara.redmilf +Processing: MILF357 - Dad Caught Fucking Daughter - Sara Redmilf.mp4 (Mode: scene) +Downloading MILF357 - Dad Caught Fucking Daughter - Sara Redmilf.mp4 (132.00 MB)... +Scanning directory: /videos/redmilf/julia.redmilf +Processing: MILF498 - Phil Takes Mom and Aunt Julia.mp4 (Mode: scene) +Downloading MILF498 - Phil Takes Mom and Aunt Julia.mp4 (348.61 MB)... +Scanning directory: /videos/redmilf/angel.rose +Processing: MILF1393 - Dirty Wanker, Part 2-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF1393 - Dirty Wanker, Part 2-(Angel Rose)-{Rachel Steele}.mp4 (121.74 MB)... +Processing: DID979 The Gift-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID979 The Gift-(Angel Rose)-{Rachel Steele}.mp4 (111.78 MB)... +Processing: MILF900- - XXXX Me Up with Your Bay-bee Juice!-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF900- - XXXX Me Up with Your Bay-bee Juice!-(Angel Rose)-{Rachel Steele}.mp4 (151.74 MB)... +Processing: MILF978- - Son In Law Secrets, How You Treat a Man-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF978- - Son In Law Secrets, How You Treat a Man-(Angel Rose)-{Rachel Steele}.mp4 (3622.15 MB)... +Processing: DID1081 Pool Party-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID1081 Pool Party-(Angel Rose)-{Rachel Steele}.mp4 (141.01 MB)... +Processing: Kyle_Chaos_-_Angel_Rose_Lactates_For_Subby_Hubby.mp4 (Mode: scene) +Downloading Kyle_Chaos_-_Angel_Rose_Lactates_For_Subby_Hubby.mp4 (144.55 MB)... +Processing: MILF1391 - Dirty Wanker-(Rachel Steele)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF1391 - Dirty Wanker-(Rachel Steele)-{Rachel Steele}.mp4 (960.83 MB)... +Processing: Pregnant and Pounded.mp4 (Mode: scene) +Downloading Pregnant and Pounded.mp4 (707.95 MB)... +Processing: Angel Rose - Such A Good Son Satisfying Mommies Needs - JWTIES.mp4 (Mode: scene) +Downloading Angel Rose - Such A Good Son Satisfying Mommies Needs - JWTIES.mp4 (420.71 MB)... +Processing: DID108 - Lock the Doors - Angel Rose.mp4 (Mode: scene) +Downloading DID108 - Lock the Doors - Angel Rose.mp4 (176.69 MB)... +Processing: Fetish189 - Fat Boy, Eat It Up-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading Fetish189 - Fat Boy, Eat It Up-(Angel Rose)-{Rachel Steele}.mp4 (265.84 MB)... +Processing: DID972 Sinner Saved, Part 3 - Angel Rose.mp4 (Mode: scene) +Downloading DID972 Sinner Saved, Part 3 - Angel Rose.mp4 (73.86 MB)... +Processing: DID973 Sinner Saved, Part 2-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID973 Sinner Saved, Part 2-(Angel Rose)-{Rachel Steele}.mp4 (82.69 MB)... +Processing: Pregnant Fuck - Angel Rose, Pregnant, Facial, Tattoo, .mp4 (Mode: scene) +Downloading Pregnant Fuck - Angel Rose, Pregnant, Facial, Tattoo, .mp4 (270.45 MB)... +Processing: Naughty_Couples_Exposed_Vol._2.mp4 (Mode: scene) +Downloading Naughty_Couples_Exposed_Vol._2.mp4 (1634.61 MB)... +Processing: DID1091 - False Advertising Part 1.mp4 (Mode: scene) +Downloading DID1091 - False Advertising Part 1.mp4 (81.73 MB)... +Processing: DID665 Prima Donna Pumped-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID665 Prima Donna Pumped-(Angel Rose)-{Rachel Steele}.mp4 (165.41 MB)... +Processing: DID694 The Detention Club, Part 1-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID694 The Detention Club, Part 1-(Angel Rose)-{Rachel Steele}.mp4 (77.22 MB)... +Processing: DID659- - Deflowered-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID659- - Deflowered-(Angel Rose)-{Rachel Steele}.mp4 (194.96 MB)... +Processing: Such a Good Son_ddv3_chf3.mp4 (Mode: scene) +Downloading Such a Good Son_ddv3_chf3.mp4 (2609.22 MB)... +Processing: MILF1330 - Losing Bets HD-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF1330 - Losing Bets HD-(Angel Rose)-{Rachel Steele}.mp4 (323.00 MB)... +Processing: DID1028 Freezing Females, Brother Takes Charge-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID1028 Freezing Females, Brother Takes Charge-(Angel Rose)-{Rachel Steele}.mp4 (199.17 MB)... +Processing: DID670 Complete Control-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID670 Complete Control-(Angel Rose)-{Rachel Steele}.mp4 (210.71 MB)... +Processing: DID972 Sinner Saved, Part 1-(Rachel Steele)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID972 Sinner Saved, Part 1-(Rachel Steele)-{Rachel Steele}.mp4 (82.42 MB)... +Processing: MILF1391 - Dirty Wanker-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF1391 - Dirty Wanker-(Angel Rose)-{Rachel Steele}.mp4 (74.64 MB)... +Processing: MILF1125 - Knocked up by Brothers Baybee Juice - Angel Rose -Upscaled.mp4 (Mode: scene) +Downloading MILF1125 - Knocked up by Brothers Baybee Juice - Angel Rose -Upscaled.mp4 (1230.40 MB)... +Processing: MILF900 - Knock Me Up with Your Bay-bee Juice!_ddv3_chf3.mp4 (Mode: scene) +Downloading MILF900 - Knock Me Up with Your Bay-bee Juice!_ddv3_chf3.mp4 (0.00 MB)... +Processing: Licklish.Lesbians.mp4 (Mode: scene) +Downloading Licklish.Lesbians.mp4 (584.12 MB)... +Processing: 100 Percent Real Swingers Orlando 2.mp4 (Mode: scene) +Downloading 100 Percent Real Swingers Orlando 2.mp4 (1981.73 MB)... +Processing: DID1037 - Classics Charm and Harm-(Angel Rose).mp4 (Mode: scene) +Downloading DID1037 - Classics Charm and Harm-(Angel Rose).mp4 (94.26 MB)... +Processing: Angel Rose All Natural Smoking Cock Sucker - XVIDEOS.COM.mp4 (Mode: scene) +Downloading Angel Rose All Natural Smoking Cock Sucker - XVIDEOS.COM.mp4 (34.88 MB)... +Processing: A Taboo Fantasy_Sisterly-Facial.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Sisterly-Facial.mp4 (231.54 MB)... +Processing: Rachel Steele - Taboo Tales Volume 96 - Scene 1 - INCESTFLIX.mp4 (Mode: scene) +Downloading Rachel Steele - Taboo Tales Volume 96 - Scene 1 - INCESTFLIX.mp4 (328.88 MB)... +Processing: DID695 The Detention Club, Part 2-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID695 The Detention Club, Part 2-(Angel Rose)-{Rachel Steele}.mp4 (117.44 MB)... +Processing: MILF1207- - Blackmailed Everything to Gain-(Angel Rose)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF1207- - Blackmailed Everything to Gain-(Angel Rose)-{Rachel Steele}.mp4 (4787.06 MB)... +Processing: MILF1125 - Knocked Up by Brother's Baybee Juice.mp4 (Mode: scene) +Downloading MILF1125 - Knocked Up by Brother's Baybee Juice.mp4 (251.18 MB)... +Processing: Compressed_A Taboo Fantasy_Sisters-Foot-Dominance.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Sisters-Foot-Dominance.mp4 (296.12 MB)... +Scanning directory: /videos/redmilf/kaire.redmilf +Processing: MILF269 - Tight-Assed MILF Turned - Part 2 - Rachel Steele and Kaire Redmilf.mp4 (Mode: scene) +Downloading MILF269 - Tight-Assed MILF Turned - Part 2 - Rachel Steele and Kaire Redmilf.mp4 (98.79 MB)... +Scanning directory: /videos/redmilf/arianna-1 +Processing: MILF335 - Aunt Arianna Sucks Nephew by Mistake - Part 2.mp4 (Mode: scene) +Downloading MILF335 - Aunt Arianna Sucks Nephew by Mistake - Part 2.mp4 (145.72 MB)... +Processing: MILF334 - Aunt Arianna Sucks Nephew by Mistake - Part 1-(Rachel Steele)-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF334 - Aunt Arianna Sucks Nephew by Mistake - Part 1-(Rachel Steele)-{Rachel Steele}.mp4 (143.87 MB)... +Processing: MILF390 - Mom I Want You - Arianna.mp4 (Mode: scene) +Downloading MILF390 - Mom I Want You - Arianna.mp4 (176.41 MB)... +Scanning directory: /videos/redmilf/sarah.green.or.quinne +Processing: MILF1525HD.mp4 (Mode: scene) +Downloading MILF1525HD.mp4 (402.56 MB)... +Scanning directory: /videos/redmilf/lexie.leigh +Processing: MILF1561.mp4 (Mode: scene) +Downloading MILF1561.mp4 (154.47 MB)... +Processing: DID1244.mp4 (Mode: scene) +Downloading DID1244.mp4 (123.41 MB)... +Processing: Taboo Tales Volume 99 4.mp4 (Mode: scene) +Downloading Taboo Tales Volume 99 4.mp4 (284.76 MB)... +Processing: Babycrazy MILF Screws Stepson, Student and Hubby_JW Ties_720p.mp4 (Mode: scene) +Downloading Babycrazy MILF Screws Stepson, Student and Hubby_JW Ties_720p.mp4 (814.48 MB)... +Processing: MILF1487.mp4 (Mode: scene) +Downloading MILF1487.mp4 (252.45 MB)... +Processing: MILF1674.mp4 (Mode: scene) +Downloading MILF1674.mp4 (328.04 MB)... +Processing: DID1299.mp4 (Mode: scene) +Downloading DID1299.mp4 (114.22 MB)... +Processing: MILF1709.mp4 (Mode: scene) +Downloading MILF1709.mp4 (253.26 MB)... +Processing: Amber Lynn Bach, Lexi Lee - Lexis First Hypnotic Session - Family Of Luv.mp4 (Mode: scene) +Downloading Amber Lynn Bach, Lexi Lee - Lexis First Hypnotic Session - Family Of Luv.mp4 (110.63 MB)... +Scanning directory: /videos/redmilf/brianna.redmilf +Processing: MILF646 - Device Adventures-(brianna (redmilf))-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF646 - Device Adventures-(brianna (redmilf))-{Rachel Steele}.mp4 (248.87 MB)... +Processing: MILF651 - Naughty Nephews - Brianna Redmilf.mp4 (Mode: scene) +Downloading MILF651 - Naughty Nephews - Brianna Redmilf.mp4 (148.56 MB)... +Scanning directory: /videos/redmilf/cousin.nicole +Processing: DID1221 You Should Not Have Used Me, Part 1-(cousin nicole)-{Rachel Steele}.mp4 (Mode: scene) +Downloading DID1221 You Should Not Have Used Me, Part 1-(cousin nicole)-{Rachel Steele}.mp4 (77.68 MB)... +Processing: MILF1569.mp4 (Mode: scene) +Downloading MILF1569.mp4 (227.61 MB)... +Scanning directory: /videos/redmilf/chloe.skyy +Processing: MILF1381.mp4 (Mode: scene) +Downloading MILF1381.mp4 (165.15 MB)... +Processing: DID1073.mp4 (Mode: scene) +Downloading DID1073.mp4 (132.54 MB)... +Processing: MILF1360.mp4 (Mode: scene) +Downloading MILF1360.mp4 (228.73 MB)... +Scanning directory: /videos/redmilf/charlotte.davis +Processing: DID1185.mp4 (Mode: scene) +Downloading DID1185.mp4 (70.36 MB)... +Processing: DID1194.mp4 (Mode: scene) +Downloading DID1194.mp4 (93.74 MB)... +Processing: DID1313.mp4 (Mode: scene) +Downloading DID1313.mp4 (111.92 MB)... +Processing: MILF1533.mp4 (Mode: scene) +Downloading MILF1533.mp4 (258.76 MB)... +Processing: MILF1553 - Freezing Females, Charlotte Doll, Part 1 - XFanta.mp4 (Mode: scene) +Downloading MILF1553 - Freezing Females, Charlotte Doll, Part 1 - XFanta.mp4 (53.61 MB)... +Processing: MILF1577 - Taboo Stories, Help Me Fuck My Sister.mp4 (Mode: scene) +Downloading MILF1577 - Taboo Stories, Help Me Fuck My Sister.mp4 (262.70 MB)... +Processing: Rachel Steele, Charlotte Davie - Taboo Tales Volume 100 Scen.mp4 (Mode: scene) +Downloading Rachel Steele, Charlotte Davie - Taboo Tales Volume 100 Scen.mp4 (143.88 MB)... +Processing: DID1234.mp4 (Mode: scene) +Downloading DID1234.mp4 (60.13 MB)... +Processing: DID1298.mp4 (Mode: scene) +Downloading DID1298.mp4 (88.82 MB)... +Processing: DID1232.mp4 (Mode: scene) +Downloading DID1232.mp4 (139.46 MB)... +Processing: MILF1552.mp4 (Mode: scene) +Downloading MILF1552.mp4 (228.89 MB)... +Processing: DID1200.mp4 (Mode: scene) +Downloading DID1200.mp4 (121.64 MB)... +Scanning directory: /videos/redmilf/ember-1 +Processing: MILF187 - Rachel Feeds Ember Cum.mp4 (Mode: scene) +Downloading MILF187 - Rachel Feeds Ember Cum.mp4 (92.42 MB)... +Processing: MILF198 – Son and Daughters - Karinne Ember and Sabrina.mp4 (Mode: scene) +Downloading MILF198 – Son and Daughters - Karinne Ember and Sabrina.mp4 (123.24 MB)... +Processing: MILF199.2 - Rachel's Reverse Gangbang - Karinne Ember and Sabrina.mp4 (Mode: scene) +Downloading MILF199.2 - Rachel's Reverse Gangbang - Karinne Ember and Sabrina.mp4 (107.98 MB)... +Processing: MILF199.1 - Rachel's Reverse Gangbang - Karinne Ember and Sabrina.mp4 (Mode: scene) +Downloading MILF199.1 - Rachel's Reverse Gangbang - Karinne Ember and Sabrina.mp4 (134.09 MB)... +Scanning directory: /videos/redmilf/brandi.belle +Processing: MILF793- - Brandi Belle Breaks the Morals Clause-{Rachel Steele}.mp4 (Mode: scene) +Downloading MILF793- - Brandi Belle Breaks the Morals Clause-{Rachel Steele}.mp4 (617.91 MB)... +Processing: Talking Dirty-(Brandi Belle, Chastity Lynn, Kate Dee)-{BrandiBelle.com}.mp4 (Mode: scene) +Downloading Talking Dirty-(Brandi Belle, Chastity Lynn, Kate Dee)-{BrandiBelle.com}.mp4 (162.05 MB)... +Processing: Brandi Piece Theater-(Brandi Belle, Rebecca La'Ren, Spring, Michelle Honeywell, Eva Ellington, Kittie)-{BrandiBelle.com}-[Missing Performer (Female)].mp4 (Mode: scene) +Downloading Brandi Piece Theater-(Brandi Belle, Rebecca La'Ren, Spring, Michelle Honeywell, Eva Ellington, Kittie)-{BrandiBelle.com}-[Missing Performer (Female)].mp4 (133.57 MB)... +Scanning directory: /videos/sofia.lee/DDFBusty.20.06.07.Sofia.Lee.And.Krystal.Swift.Orgasmic.Group.Sex.XXX.1080p.HEVC.x265.PRT +Scanning directory: /videos/sofia.lee/Katerina-Hartlova.24.08.07.Busty.And.Hairy.Pussy.Sofia.Lee.Wetting.My.Dress.And.We.Get.Huge.Orgasms.In.The.Shower.XXX.1080p.MP4-LEWD[XC] +Processing: lewd-kh807bahpslwmdawghoits.mp4 (Mode: scene) +Downloading lewd-kh807bahpslwmdawghoits.mp4 (517.93 MB)... +Scanning directory: /videos/sofia.lee/BrazzersExxtra.22.01.06.Sofia.Lee.And.Josephine.Jackson.Gloryholes.Gone.Wild.XXX.1080p.HEVC.x265.PRT +Processing: BrazzersExxtra.22.01.06.Sofia.Lee.And.Josephine.Jackson.Gloryholes.Gone.Wild.XXX.1080p.HEVC.x265.PRT.mp4 (Mode: scene) +Downloading BrazzersExxtra.22.01.06.Sofia.Lee.And.Josephine.Jackson.Gloryholes.Gone.Wild.XXX.1080p.HEVC.x265.PRT.mp4 (1358.80 MB)... +Scanning directory: /videos/sofia.lee/FitnessRooms.23.07.08.Nikky.Dream.Sofia.Lee.And.Lady.Lyne.XXX.1080p.HEVC.x265.PRT +Scanning directory: /videos/sofia.lee/ImmoralLive.23.09.05.Sofia.Lee.And.Venera.Maxima.XXX.1080p.HEVC.x265.PRT +Scanning directory: /videos/sofia.lee/PerverseFamily.23.09.01.Anna.De.Ville.Barbara.Bieber.Brittany.Bardot.And.Sofia.Lee.Eat.All.You.Can.XXX.1080p.MP4-FETiSH[XC] +Scanning directory: /videos/sofia.lee/FitnessRooms.23.07.08.Nikky.Dream.Sofia.Lee.And.Lady.Lyne.XXX.1080p.MP4-WRB[XC] +Processing: fitnessrooms.23.07.08.nikky.dream.sofia.lee.and.lady.lyne.mp4 (Mode: scene) +Downloading fitnessrooms.23.07.08.nikky.dream.sofia.lee.and.lady.lyne.mp4 (1025.32 MB)... +Scanning directory: /videos/sofia.lee/NylonPerv.24.02.16.Sofia.Lee.Bigger.The.Better.Fucking.Sofia.XXX.1080p.MP4-LEWD[XC] +Scanning directory: /videos/sofia.lee/Katerina-Hartlova.23.07.30.Sensual.And.Romantic.Morning.With.Sweet.Sofia.Lee.XXX.1080p.MP4-LEWD[XC] +Processing: lewd-kh730sarmwssl.mp4 (Mode: scene) +Downloading lewd-kh730sarmwssl.mp4 (684.37 MB)... +Scanning directory: /videos/sofia.lee/Megapack +Processing: FemaleFakeTaxi - Cums Three Times on his Birthday.mp4 (Mode: scene) +Downloading FemaleFakeTaxi - Cums Three Times on his Birthday.mp4 (707.61 MB)... +Processing: PornBox - PornWorld GP2231 - Valentines Day Party Turns to Insane DP Gangbang.mp4 (Mode: scene) +Downloading PornBox - PornWorld GP2231 - Valentines Day Party Turns to Insane DP Gangbang.mp4 (1925.94 MB)... +Processing: MomWantsCreampie - My Stepmom Needs My Hot Load.mp4 (Mode: scene) +Downloading MomWantsCreampie - My Stepmom Needs My Hot Load.mp4 (1995.75 MB)... +Processing: Teen Twins Double Fun.mp4 (Mode: scene) +Downloading Teen Twins Double Fun.mp4 (1032.14 MB)... +Processing: Curvy Bombshell Sofia Lee Seduces Her Client with Her Voluptuous Body-{Spizoo}-[Big Ass, Big Tits, Blowjob, Cum in Mouth, Cumshot, Doggy Style, Fingering, Handjob, Lingerie, Missionary, Pussy Licking, Reverse Cowgirl, Roleplay, cowgirl].mp4 (Mode: scene) +Downloading Curvy Bombshell Sofia Lee Seduces Her Client with Her Voluptuous Body-{Spizoo}-[Big Ass, Big Tits, Blowjob, Cum in Mouth, Cumshot, Doggy Style, Fingering, Handjob, Lingerie, Missionary, Pussy Licking, Reverse Cowgirl, Roleplay, cowgirl].mp4 (3799.42 MB)... +Processing: PornBox - Gonzo SZ2434.mp4 (Mode: scene) +Downloading PornBox - Gonzo SZ2434.mp4 (2345.83 MB)... +Processing: Anything She Can Do - S10-E11-(Sofia Lee)-{NF Busty}-[All Vaginal, Big Tits, Blowjob, Brown Hair, Curvy, European, Lingerie, Natural Tits, No Condom, Orgasm, Trimmed Pussy, Twosome (Straight), Uncircumcised, Vaginal Sex, cowgirl, cum on tits].mp4 (Mode: scene) +Downloading Anything She Can Do - S10-E11-(Sofia Lee)-{NF Busty}-[All Vaginal, Big Tits, Blowjob, Brown Hair, Curvy, European, Lingerie, Natural Tits, No Condom, Orgasm, Trimmed Pussy, Twosome (Straight), Uncircumcised, Vaginal Sex, cowgirl, cum on tits].mp4 (1723.18 MB)... +Processing: Sofia Lee- Horny Housekeeper Has Happy Hooters-{Scoreland}-[4k Available, Anal Sex, Big Tits, Blowjob, Breast Play, Breast Sucking, Brown Hair (Female), Cumshot, Doggy Style, Hairy Pussy, Handjob, Missionary, Pussy Licking, Titjob, cum on tits].mp4 (Mode: scene) +Downloading Sofia Lee- Horny Housekeeper Has Happy Hooters-{Scoreland}-[4k Available, Anal Sex, Big Tits, Blowjob, Breast Play, Breast Sucking, Brown Hair (Female), Cumshot, Doggy Style, Hairy Pussy, Handjob, Missionary, Pussy Licking, Titjob, cum on tits].mp4 (2128.10 MB)... +Processing: Brazzers - My Girl's Double Is Anal Trouble.mp4 (Mode: scene) +Downloading Brazzers - My Girl's Double Is Anal Trouble.mp4 (738.49 MB)... +Processing: Train track blowjob and fuck-(Sofia Lee)-{Public Agent}-[Blow Job].mp4 (Mode: scene) +Downloading Train track blowjob and fuck-(Sofia Lee)-{Public Agent}-[Blow Job].mp4 (1228.42 MB)... +Processing: Bikini Babe Cock Resuscitation.mp4 (Mode: scene) +Downloading Bikini Babe Cock Resuscitation.mp4 (1334.19 MB)... +Processing: FakeHostel - Teasing and Sharing My Horny Boyfriend.mp4 (Mode: scene) +Downloading FakeHostel - Teasing and Sharing My Horny Boyfriend.mp4 (537.06 MB)... +Processing: Brazzers - Stroking The Guard's Post.mp4 (Mode: scene) +Downloading Brazzers - Stroking The Guard's Post.mp4 (1089.88 MB)... +Processing: Fuck My Curvy Ass.mp4 (Mode: scene) +Downloading Fuck My Curvy Ass.mp4 (2062.81 MB)... +Processing: Voluptuous and Savory-(Sofia Lee)-{Club Sweethearts}-[Big Nipples, Big Tits, Brown Hair, Curvy, Hairless Genitals, Hairless Pussy, Masturbation, Solo, Teen (18–22), Teen Girl (18–22), Wet Look].mp4 (Mode: scene) +Downloading Voluptuous and Savory-(Sofia Lee)-{Club Sweethearts}-[Big Nipples, Big Tits, Brown Hair, Curvy, Hairless Genitals, Hairless Pussy, Masturbation, Solo, Teen (18–22), Teen Girl (18–22), Wet Look].mp4 (1563.00 MB)... +Processing: Hot masseuse thrills cute Asian-(Sofia Lee, Luna Silver)-{Massage Rooms}.mp4 (Mode: scene) +Downloading Hot masseuse thrills cute Asian-(Sofia Lee, Luna Silver)-{Massage Rooms}.mp4 (961.52 MB)... +Processing: FakeDrivingSchool - Curvy Brunette Sucks Hot Cock.mp4 (Mode: scene) +Downloading FakeDrivingSchool - Curvy Brunette Sucks Hot Cock.mp4 (1786.89 MB)... +Processing: A good start-(Sofia Lee)-{Frolic Me}-[Big Tits, Hairless Pussy, Pussy Licking].mp4 (Mode: scene) +Downloading A good start-(Sofia Lee)-{Frolic Me}-[Big Tits, Hairless Pussy, Pussy Licking].mp4 (1640.91 MB)... +Processing: Horny Delivery Boys.mp4 (Mode: scene) +Downloading Horny Delivery Boys.mp4 (1681.35 MB)... +Processing: BangBros - Busty Slut Opens Up for Anal.mp4 (Mode: scene) +Downloading BangBros - Busty Slut Opens Up for Anal.mp4 (3273.48 MB)... +Processing: FemaleFakeTaxi - Filthy Bag of Sex Toys.mp4 (Mode: scene) +Downloading FemaleFakeTaxi - Filthy Bag of Sex Toys.mp4 (972.14 MB)... +Processing: Brazzers - Auctioning Her Ass.mp4 (Mode: scene) +Downloading Brazzers - Auctioning Her Ass.mp4 (1997.67 MB)... +Processing: Sofia Lee-{TokyoAVProject}-[Asian, Big Tits, European, Interracial, Titjob].mp4 (Mode: scene) +Downloading Sofia Lee-{TokyoAVProject}-[Asian, Big Tits, European, Interracial, Titjob].mp4 (4600.69 MB)... +Processing: FakeHostel - Between a Blonde and Brunette.mp4 (Mode: scene) +Downloading FakeHostel - Between a Blonde and Brunette.mp4 (842.07 MB)... +Processing: My Crazy Step Parents-(Sofia Lee, Princess Jasmine)-{Fake Hostel}.mp4 (Mode: scene) +Downloading My Crazy Step Parents-(Sofia Lee, Princess Jasmine)-{Fake Hostel}.mp4 (1514.08 MB)... +Processing: PureCFNM - Couples Massage.mp4 (Mode: scene) +Downloading PureCFNM - Couples Massage.mp4 (498.04 MB)... +Processing: TittyAttack - Next Level Sexy.mp4 (Mode: scene) +Downloading TittyAttack - Next Level Sexy.mp4 (1998.70 MB)... +Processing: She Will Never Know-(Sofia Lee)-{Fake Hostel}-[Average Body, Average Dick, Big Tits, Brown Hair, Czech, European, Gray Hair, Hot Pants, Innie Pussy, Medium Ass, Natural Tits, Short Woman, T-Shirt, Trimmed Pussy].mp4 (Mode: scene) +Downloading She Will Never Know-(Sofia Lee)-{Fake Hostel}-[Average Body, Average Dick, Big Tits, Brown Hair, Czech, European, Gray Hair, Hot Pants, Innie Pussy, Medium Ass, Natural Tits, Short Woman, T-Shirt, Trimmed Pussy].mp4 (775.10 MB)... +Processing: Sofia Lee, Fucked in the Sun-{Private}-[Big Tits, Blowjob, Brown Hair, Outdoors, Private, Reverse Cowgirl, Spooning, Tan Lines, Titjob, cum on tits].mp4 (Mode: scene) +Downloading Sofia Lee, Fucked in the Sun-{Private}-[Big Tits, Blowjob, Brown Hair, Outdoors, Private, Reverse Cowgirl, Spooning, Tan Lines, Titjob, cum on tits].mp4 (1714.42 MB)... +Processing: FreakyDoctor - Sofia.mp4 (Mode: scene) +Downloading FreakyDoctor - Sofia.mp4 (505.76 MB)... +Processing: FakeHostel - Relationship Status It's Complicated.mp4 (Mode: scene) +Downloading FakeHostel - Relationship Status It's Complicated.mp4 (1022.35 MB)... +Processing: Deepthroat and anal with naughty Sofia Lee!-{Mixed studios}-[All Anal, Anal Sex, Ass to Mouth, BBW, Big Ass, Big Tits, Blowjob, Brown Hair, Cum Swallowing, Czech, Deep Throat, Facial, Indoors, squirting].mp4 (Mode: scene) +Downloading Deepthroat and anal with naughty Sofia Lee!-{Mixed studios}-[All Anal, Anal Sex, Ass to Mouth, BBW, Big Ass, Big Tits, Blowjob, Brown Hair, Cum Swallowing, Czech, Deep Throat, Facial, Indoors, squirting].mp4 (3594.90 MB)... +Processing: Brazzers - Rough And Raunchy Workout.mp4 (Mode: scene) +Downloading Brazzers - Rough And Raunchy Workout.mp4 (1535.12 MB)... +Processing: FemaleFakeTaxi - I'm Sorry My Boobies Fell Out.mp4 (Mode: scene) +Downloading FemaleFakeTaxi - I'm Sorry My Boobies Fell Out.mp4 (1084.29 MB)... +Processing: Locked WC Adventure-(Sofia Lee)-{Bride 4K}-[Big Ass, Big Tits, Black Hair (Male), Bride, Brown Hair (Female), Brown Hair (Male), Cuckolding, Czech, European, Toilet, Twosome (Straight), Wedding Dress].mp4 (Mode: scene) +Downloading Locked WC Adventure-(Sofia Lee)-{Bride 4K}-[Big Ass, Big Tits, Black Hair (Male), Bride, Brown Hair (Female), Brown Hair (Male), Cuckolding, Czech, European, Toilet, Twosome (Straight), Wedding Dress].mp4 (3514.30 MB)... +Processing: FemaleFakeTaxi - The Big Boobed Samaritan.mp4 (Mode: scene) +Downloading FemaleFakeTaxi - The Big Boobed Samaritan.mp4 (823.58 MB)... +Processing: RealityKings - Seduced By SofiaSofia.mp4 (Mode: scene) +Downloading RealityKings - Seduced By SofiaSofia.mp4 (1477.97 MB)... +Processing: FakeHostel - Spunk Oud Fragrance Eau de Cockette.mp4 (Mode: scene) +Downloading FakeHostel - Spunk Oud Fragrance Eau de Cockette.mp4 (1079.83 MB)... +Processing: TRUST-(Sofia Lee)-{Frolic Me}-[BDSM, Big Tits, Kinky, Pawg].mp4 (Mode: scene) +Downloading TRUST-(Sofia Lee)-{Frolic Me}-[BDSM, Big Tits, Kinky, Pawg].mp4 (2404.66 MB)... +Processing: Young busty bitch Sofia Lee comes to take 2 cocks in the ass IV274-{Interracial Vision}-[Anal Sex, Blowjob, Brown Hair, Curvy, Deepthroat, Interracial, Lingerie, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading Young busty bitch Sofia Lee comes to take 2 cocks in the ass IV274-{Interracial Vision}-[Anal Sex, Blowjob, Brown Hair, Curvy, Deepthroat, Interracial, Lingerie, Teen Girl (18–22)].mp4 (1493.37 MB)... +Processing: ImmoralLive - Misfits Pick Up Busty Milfs Sofia Lee and Venera Maxima At The Castle.mp4 (Mode: scene) +Downloading ImmoralLive - Misfits Pick Up Busty Milfs Sofia Lee and Venera Maxima At The Castle.mp4 (2274.19 MB)... +Processing: We Started Without You - S15-E10-(Sofia Lee, Stacy Cruz)-{NF Busty}-[Blowjob, Brown Hair, European, Medium Skin, Natural Tits, Short Woman, Threesome (BGG), Titjob].mp4 (Mode: scene) +Downloading We Started Without You - S15-E10-(Sofia Lee, Stacy Cruz)-{NF Busty}-[Blowjob, Brown Hair, European, Medium Skin, Natural Tits, Short Woman, Threesome (BGG), Titjob].mp4 (2911.91 MB)... +Processing: Stacked and Sucking-(Sofia Lee)-{5K Teens}.mp4 (Mode: scene) +Downloading Stacked and Sucking-(Sofia Lee)-{5K Teens}.mp4 (2479.79 MB)... +Processing: Busty Sofia Lee tastes african champagne & takes two cocks in the ass IV446-{Interracial Vision}-[Interracial].mp4 (Mode: scene) +Downloading Busty Sofia Lee tastes african champagne & takes two cocks in the ass IV446-{Interracial Vision}-[Interracial].mp4 (1762.29 MB)... +Processing: Sofia Lee casting with BBC-{Kinky Sex}-[Anal Sex, Big Ass, Big Black Cock (BBC), Big Tits, Blowjob, Curvy, Czech, Interracial, Natural Tits, Sagging Tits, Twosome (Straight)].mp4 (Mode: scene) +Downloading Sofia Lee casting with BBC-{Kinky Sex}-[Anal Sex, Big Ass, Big Black Cock (BBC), Big Tits, Blowjob, Curvy, Czech, Interracial, Natural Tits, Sagging Tits, Twosome (Straight)].mp4 (1672.37 MB)... +Processing: LoveHerAss - Thick Juicy Ass fucked in the Gym.mp4 (Mode: scene) +Downloading LoveHerAss - Thick Juicy Ass fucked in the Gym.mp4 (686.47 MB)... +Processing: Brazzers - Emergency Vibrator Extraction.mp4 (Mode: scene) +Downloading Brazzers - Emergency Vibrator Extraction.mp4 (1497.64 MB)... +Processing: RealityKings - AAA Dick.mp4 (Mode: scene) +Downloading RealityKings - AAA Dick.mp4 (1810.38 MB)... +Processing: Brazzers - Interview and Screw.mp4 (Mode: scene) +Downloading Brazzers - Interview and Screw.mp4 (1391.73 MB)... +Processing: DDFBusty - Curvy Czech Titty Fucks And Sucks.mp4 (Mode: scene) +Downloading DDFBusty - Curvy Czech Titty Fucks And Sucks.mp4 (1823.29 MB)... +Processing: JacquieEtMichelTV - Sofia, 24ans, devait faire des achats.mp4 (Mode: scene) +Downloading JacquieEtMichelTV - Sofia, 24ans, devait faire des achats.mp4 (1394.89 MB)... +Processing: Dig Deep.mp4 (Mode: scene) +Downloading Dig Deep.mp4 (536.36 MB)... +Processing: Sweet all natural Valentine romance-(Sofia Lee)-{Dane Jones}.mp4 (Mode: scene) +Downloading Sweet all natural Valentine romance-(Sofia Lee)-{Dane Jones}.mp4 (1138.08 MB)... +Processing: Brazzers - Adjoined to Her Pussy 2.mp4 (Mode: scene) +Downloading Brazzers - Adjoined to Her Pussy 2.mp4 (606.20 MB)... +Processing: FemaleFakeTaxi - Curvy Driver Gets a Hard Dicking.mp4 (Mode: scene) +Downloading FemaleFakeTaxi - Curvy Driver Gets a Hard Dicking.mp4 (889.48 MB)... +Processing: Curvy Bombshell Sofia Lee Cowgirl Riding Ends in Creampie-{Cream Her}-[BBW, Big Ass, Big Tits, Blowjob, Doggy Style, Handjob, Male - POV, Missionary, Reverse Cowgirl, Swimsuit].mp4 (Mode: scene) +Downloading Curvy Bombshell Sofia Lee Cowgirl Riding Ends in Creampie-{Cream Her}-[BBW, Big Ass, Big Tits, Blowjob, Doggy Style, Handjob, Male - POV, Missionary, Reverse Cowgirl, Swimsuit].mp4 (1082.73 MB)... +Processing: PornBox - PornWorld GP1619 - Quick and Dirty Foursome Workout.mp4 (Mode: scene) +Downloading PornBox - PornWorld GP1619 - Quick and Dirty Foursome Workout.mp4 (2658.40 MB)... +Processing: ImmoralLive - Court Jester's Threesome with Busty Baddies.mp4 (Mode: scene) +Downloading ImmoralLive - Court Jester's Threesome with Busty Baddies.mp4 (1076.49 MB)... +Processing: PornBox - Interracial Vision IV264.mp4 (Mode: scene) +Downloading PornBox - Interracial Vision IV264.mp4 (2008.90 MB)... +Processing: FakeHostel - Stuck In A Sleeping Bag.mp4 (Mode: scene) +Downloading FakeHostel - Stuck In A Sleeping Bag.mp4 (861.76 MB)... +Processing: DDF - Wet Boobs Fucked Hard.mp4 (Mode: scene) +Downloading DDF - Wet Boobs Fucked Hard.mp4 (1380.29 MB)... +Processing: BigNaturals - Drip With Me.mp4 (Mode: scene) +Downloading BigNaturals - Drip With Me.mp4 (1568.19 MB)... +Processing: Barbershop Service-(Sofia Lee)-{Serve 4K}-[Babes, Big Ass, Big Tits, Blowjob, Brown Hair (Female), Cuckolding, Czech, Doggy Style, Male - POV, Missionary, Reality Porn, Reverse Cowgirl, Twosome (Straight), cowgirl, creampie].mp4 (Mode: scene) +Downloading Barbershop Service-(Sofia Lee)-{Serve 4K}-[Babes, Big Ass, Big Tits, Blowjob, Brown Hair (Female), Cuckolding, Czech, Doggy Style, Male - POV, Missionary, Reality Porn, Reverse Cowgirl, Twosome (Straight), cowgirl, creampie].mp4 (3577.11 MB)... +Processing: StalkerProdz - Big boobies Sofia Lee in hardcore Sex.mp4 (Mode: scene) +Downloading StalkerProdz - Big boobies Sofia Lee in hardcore Sex.mp4 (1366.35 MB)... +Processing: FakeHostel - Our College Professor.mp4 (Mode: scene) +Downloading FakeHostel - Our College Professor.mp4 (1812.10 MB)... +Processing: Busty Bikini Babe Sofia Lee Tempts Neighbours Into Slamming Her DP Style GP2825.mp4 (Mode: scene) +Downloading Busty Bikini Babe Sofia Lee Tempts Neighbours Into Slamming Her DP Style GP2825.mp4 (3093.60 MB)... +Processing: FakeHostel - Blue Balls Cum Explosion.mp4 (Mode: scene) +Downloading FakeHostel - Blue Balls Cum Explosion.mp4 (1095.72 MB)... +Processing: Bigger the Better Fucking Sofia Lee-{POV Perv}-[Male - POV].mp4 (Mode: scene) +Downloading Bigger the Better Fucking Sofia Lee-{POV Perv}-[Male - POV].mp4 (2955.24 MB)... +Processing: Cuck4K - Rescue Ranger For Impotent Old Friend.mp4 (Mode: scene) +Downloading Cuck4K - Rescue Ranger For Impotent Old Friend.mp4 (4227.55 MB)... +Processing: FemaleFakeTaxi - The Faithful Boyfriend Trials.mp4 (Mode: scene) +Downloading FemaleFakeTaxi - The Faithful Boyfriend Trials.mp4 (1155.90 MB)... +Processing: The Captain Cannot Go Past Such a Big Boobs-(Sofia Lee)-{Hunt4K}-[Cuckolding, Cumshot, Male - POV, Outdoors, Pussy Fingering, Reality Porn, Standing Doggy Style, cum on tits, squirting].mp4 (Mode: scene) +Downloading The Captain Cannot Go Past Such a Big Boobs-(Sofia Lee)-{Hunt4K}-[Cuckolding, Cumshot, Male - POV, Outdoors, Pussy Fingering, Reality Porn, Standing Doggy Style, cum on tits, squirting].mp4 (3424.33 MB)... +Processing: NFBusty - Feel Me Up.mp4 (Mode: scene) +Downloading NFBusty - Feel Me Up.mp4 (2136.49 MB)... +Processing: ImmoralLive - Huge Tits Hotties Sofia Lee and Venera Maxima Hot Foursome.mp4 (Mode: scene) +Downloading ImmoralLive - Huge Tits Hotties Sofia Lee and Venera Maxima Hot Foursome.mp4 (1398.69 MB)... +Processing: PornBox - Gonzo SZ2159.mp4 (Mode: scene) +Downloading PornBox - Gonzo SZ2159.mp4 (1900.27 MB)... +Processing: FakeHostel - Free to Use Busty Fuck Bunnies.mp4 (Mode: scene) +Downloading FakeHostel - Free to Use Busty Fuck Bunnies.mp4 (863.79 MB)... +Processing: PornFidelity - Sensual Sofia - Curvy Creampie.mp4 (Mode: scene) +Downloading PornFidelity - Sensual Sofia - Curvy Creampie.mp4 (2495.31 MB)... +Processing: BangBros - Hottie With Perfect Tits Loves Anal.mp4 (Mode: scene) +Downloading BangBros - Hottie With Perfect Tits Loves Anal.mp4 (2538.32 MB)... +Processing: DDF - Busty Czech Blows Her Boyfriend.mp4 (Mode: scene) +Downloading DDF - Busty Czech Blows Her Boyfriend.mp4 (1228.00 MB)... +Processing: FemaleFakeTaxi - They Stole My Wallet.mp4 (Mode: scene) +Downloading FemaleFakeTaxi - They Stole My Wallet.mp4 (834.36 MB)... +Processing: Step Sis Wont Quit - S15-E1-(Sofia Lee)-{My Family Pies}-[Ball Licking, Ball Sucking, Big Areolas, Big Ass, Big Dick, Blowjob, Brown Hair, European, Long Hair, Trimmed Pussy, Twosome (Straight), cowgirl, creampie].mp4 (Mode: scene) +Downloading Step Sis Wont Quit - S15-E1-(Sofia Lee)-{My Family Pies}-[Ball Licking, Ball Sucking, Big Areolas, Big Ass, Big Dick, Blowjob, Brown Hair, European, Long Hair, Trimmed Pussy, Twosome (Straight), cowgirl, creampie].mp4 (2179.48 MB)... +Processing: Slutty Sofia-(Sofia Lee)-{Pornfidelity}-[69, Blowjob, Brown Hair (Female), Cumshot, Doggy Style, Doggystyle, Lingerie, Missionary, Pussy Eating, Pussy Licking, Reverse Cowgirl, Spoon, Tit Fuck, cowgirl].mp4 (Mode: scene) +Downloading Slutty Sofia-(Sofia Lee)-{Pornfidelity}-[69, Blowjob, Brown Hair (Female), Cumshot, Doggy Style, Doggystyle, Lingerie, Missionary, Pussy Eating, Pussy Licking, Reverse Cowgirl, Spoon, Tit Fuck, cowgirl].mp4 (4738.78 MB)... +Processing: Ass and Relaxation-(Sofia Lee)-{RK Prime}-[Anal Sex, Big Tits, Blowjob, Cum on Ass, Curvy, Doggy Style, Facial, Leggings, Massage, Missionary, Missionary-, Natural Tits, Oil, Pussy Fingering, Pussy Licking, Side Fuck, Sneaky, Tank Top, Wet Look].mp4 (Mode: scene) +Downloading Ass and Relaxation-(Sofia Lee)-{RK Prime}-[Anal Sex, Big Tits, Blowjob, Cum on Ass, Curvy, Doggy Style, Facial, Leggings, Massage, Missionary, Missionary-, Natural Tits, Oil, Pussy Fingering, Pussy Licking, Side Fuck, Sneaky, Tank Top, Wet Look].mp4 (915.27 MB)... +Processing: A Sneaky Rendezvous-(Sofia Lee, Luna Silver)-{Fake Hostel}.mp4 (Mode: scene) +Downloading A Sneaky Rendezvous-(Sofia Lee, Luna Silver)-{Fake Hostel}.mp4 (1270.10 MB)... +Processing: Brazzers - Soft Swinging Turns Hardcore.mp4 (Mode: scene) +Downloading Brazzers - Soft Swinging Turns Hardcore.mp4 (1603.94 MB)... +Processing: Brazzers - Massaging Sofia.mp4 (Mode: scene) +Downloading Brazzers - Massaging Sofia.mp4 (1835.60 MB)... +Processing: Brazzers - My Husband's Fake Ass Pussy.mp4 (Mode: scene) +Downloading Brazzers - My Husband's Fake Ass Pussy.mp4 (1655.11 MB)... +Processing: PornBox - PornWorld GP2545 - DP Revenge Fuck Session.mp4 (Mode: scene) +Downloading PornBox - PornWorld GP2545 - DP Revenge Fuck Session.mp4 (3908.67 MB)... +Processing: PornBox - Gonzo SZ2438.mp4 (Mode: scene) +Downloading PornBox - Gonzo SZ2438.mp4 (2411.95 MB)... +Processing: PornBox - Interracial Vision IV250.mp4 (Mode: scene) +Downloading PornBox - Interracial Vision IV250.mp4 (3044.64 MB)... +Processing: FemaleFakeTaxi - Sperm Bank Pre Warm-up.mp4 (Mode: scene) +Downloading FemaleFakeTaxi - Sperm Bank Pre Warm-up.mp4 (707.64 MB)... +Processing: Curvy brunette knows how to please-(Sofia Lee)-{Massage Rooms}.mp4 (Mode: scene) +Downloading Curvy brunette knows how to please-(Sofia Lee)-{Massage Rooms}.mp4 (1265.01 MB)... +Processing: RealityKings - Roommate Romp.mp4 (Mode: scene) +Downloading RealityKings - Roommate Romp.mp4 (1962.36 MB)... +Processing: DDF - Quickie On The Way.mp4 (Mode: scene) +Downloading DDF - Quickie On The Way.mp4 (751.21 MB)... +Processing: Anal Gaping on the Backseat-(Sofia Lee)-{Female Fake Taxi}.mp4 (Mode: scene) +Downloading Anal Gaping on the Backseat-(Sofia Lee)-{Female Fake Taxi}.mp4 (847.96 MB)... +Processing: FakehubOriginals - Invisibility Cloak.mp4 (Mode: scene) +Downloading FakehubOriginals - Invisibility Cloak.mp4 (955.15 MB)... +Processing: Private Specials 319 - German Lovers.mp4 (Mode: scene) +Downloading Private Specials 319 - German Lovers.mp4 (1402.00 MB)... +Processing: Happy Birthday, Sugar Daddy!-(Sofia Lee)-{Grandpas Fuck Teens}-[Babes, Big Tits, Blowjob, Brown Hair, Cumshot, Deepthroat, Fetish, Natural Tits, Older - Younger, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading Happy Birthday, Sugar Daddy!-(Sofia Lee)-{Grandpas Fuck Teens}-[Babes, Big Tits, Blowjob, Brown Hair, Cumshot, Deepthroat, Fetish, Natural Tits, Older - Younger, Teen Girl (18–22)].mp4 (1040.61 MB)... +Processing: PornBox - PornWorld GP2949 - Sofia Seduces The Pool Guy Into No Strings Anal.mp4 (Mode: scene) +Downloading PornBox - PornWorld GP2949 - Sofia Seduces The Pool Guy Into No Strings Anal.mp4 (3070.39 MB)... +Processing: FemaleFakeTaxi - Show Me Your French Cock.mp4 (Mode: scene) +Downloading FemaleFakeTaxi - Show Me Your French Cock.mp4 (1215.40 MB)... +Processing: Thicc and Creamy-(Sofia Lee)-{5K Porn}-[Big Tits, Blowjob, Curvy, Doggy Style, Missionary, Pussy Licking, Side Fuck, cowgirl].mp4 (Mode: scene) +Downloading Thicc and Creamy-(Sofia Lee)-{5K Porn}-[Big Tits, Blowjob, Curvy, Doggy Style, Missionary, Pussy Licking, Side Fuck, cowgirl].mp4 (5052.15 MB)... +Processing: Brazzers - Sofia Uncages Jordi's Chastity Cock.mp4 (Mode: scene) +Downloading Brazzers - Sofia Uncages Jordi's Chastity Cock.mp4 (1022.35 MB)... +Processing: Daddy4K - Clothes Really Turned Her Into Different Person Into Lustful Whore.mp4 (Mode: scene) +Downloading Daddy4K - Clothes Really Turned Her Into Different Person Into Lustful Whore.mp4 (3864.48 MB)... +Processing: DDF - Busty Brunette'S Juggs Covered In Jizz.mp4 (Mode: scene) +Downloading DDF - Busty Brunette'S Juggs Covered In Jizz.mp4 (1215.44 MB)... +Processing: RealityKings - Fuck Friends.mp4 (Mode: scene) +Downloading RealityKings - Fuck Friends.mp4 (3575.47 MB)... +Processing: NFBusty - All The Right Moves.mp4 (Mode: scene) +Downloading NFBusty - All The Right Moves.mp4 (2317.34 MB)... +Processing: Punished Plaything-(Sofia Lee)-{Karups Private Collection}.mp4 (Mode: scene) +Downloading Punished Plaything-(Sofia Lee)-{Karups Private Collection}.mp4 (2542.24 MB)... +Processing: Sofia Lee - Fishnet Stockings-{MiniskirtGirlz}-[Anal Sex, Big Ass, Big Tits, Older Man - Younger Woman, Trimmed Pussy].mp4 (Mode: scene) +Downloading Sofia Lee - Fishnet Stockings-{MiniskirtGirlz}-[Anal Sex, Big Ass, Big Tits, Older Man - Younger Woman, Trimmed Pussy].mp4 (1630.68 MB)... +Scanning directory: /videos/sofia.lee/Katerina-Hartlova.24.11.11.Pumping.My.And.Sofia.Lee.Boobs.And.Pussy.XXX.1080p.MP4-LEWD[XC] +Processing: Pumping My And Sofia Lee Boobs And Pussy-(Katerina Hartlova)-{Katerina Hartlova}.mp4 (Mode: scene) +Downloading Pumping My And Sofia Lee Boobs And Pussy-(Katerina Hartlova)-{Katerina Hartlova}.mp4 (495.13 MB)... +Scanning directory: /videos/sofia.lee/DaneJones.21.10.07.Sofia.Lee.XXX.1080p.HEVC.x265.PRT +Scanning directory: /videos/sofia.lee/FrolicMe.23.11.11.Sofia.Lee.A.Good.Start.XXX.1080p.HEVC.x265.PRT +Scanning directory: /videos/sofia.lee/Katerina-Hartlova.20.06.19.Hidden.Camera.Masturbate.With.Sofia.Lee.XXX.1080p.MP4-LEWD[XC] +Processing: lewd-kh619hcmwsl.mp4 (Mode: scene) +Downloading lewd-kh619hcmwsl.mp4 (754.52 MB)... +Scanning directory: /videos/sofia.lee/MomWantsCreampie.22.12.16.Sofia.Lee.My.Stepmom.Needs.My.Hot.Load.XXX.1080p.HEVC.x265.PRT +Scanning directory: /videos/sofia.lee/LifeSelector.2024.Sofia.Lee.The.Full.Body.Massage.Guru.XXX.1080p.MP4-P2P[XC] +Processing: The Full Body Massage Guru - Scene 4-(Sofia Lee)-{Life Selector}.mp4 (Mode: scene) +Downloading The Full Body Massage Guru - Scene 4-(Sofia Lee)-{Life Selector}.mp4 (1831.51 MB)... +Scanning directory: /videos/marilyn.mayson/OnlyFans.25.05.29.Marilyn.Mayson.I.Fuck.My.Bitchy.BBW.Boss.To.Keep.My.Job.XXX.1080p.MP4-P2P[XC] +Processing: onlyfans.25.05.29.marilyn.mayson.i.fuck.my.bitchy.bbw.boss.to.keep.my.job.xxx.mp4 (Mode: scene) +Downloading onlyfans.25.05.29.marilyn.mayson.i.fuck.my.bitchy.bbw.boss.to.keep.my.job.xxx.mp4 (1130.67 MB)... +Scanning directory: /videos/lulu.chu/BrattySis.25.08.29.Lulu.Chu.Dont.Tell.My.Mom.XXX.1080p.MP4-WRB[XC] +Processing: brattysis.25.08.29.lulu.chu.dont.tell.my.mom.mp4 (Mode: scene) +Downloading brattysis.25.08.29.lulu.chu.dont.tell.my.mom.mp4 (1042.66 MB)... +Scanning directory: /videos/lulu.chu/PrincessCum.25.01.05.Lulu.Chu.Stepsis.Turns.Environmentalist.XXX.1080p.MP4-WRB[XC] +Processing: princesscum.25.01.05.lulu.chu.stepsis.turns.environmentalist.mp4 (Mode: scene) +Downloading princesscum.25.01.05.lulu.chu.stepsis.turns.environmentalist.mp4 (1185.08 MB)... +Scanning directory: /videos/melkteeth/Fansly +Scanning directory: /videos/melkteeth/OnlyFans +Scanning directory: /videos/tristan.summers/Screens +Scanning directory: /videos/tristan.summers/Videos +Processing: Sex With My Younger Sister 6 - Finally Sees How Big Her Step Brother Is.mp4 (Mode: scene) +Downloading Sex With My Younger Sister 6 - Finally Sees How Big Her Step Brother Is.mp4 (2875.02 MB)... +Processing: PrimalFetish - Ouija Board Skeptical 18 Year Old Baris.mp4 (Mode: scene) +Downloading PrimalFetish - Ouija Board Skeptical 18 Year Old Baris.mp4 (3617.11 MB)... +Processing: Turndown Service-(Tristan Summers)-{BBC Pie}.mp4 (Mode: scene) +Downloading Turndown Service-(Tristan Summers)-{BBC Pie}.mp4 (1342.39 MB)... +Processing: My Step Sister's Perfect Boobies-(Tristan Summers)-{Jay's POV}.mp4 (Mode: scene) +Downloading My Step Sister's Perfect Boobies-(Tristan Summers)-{Jay's POV}.mp4 (1160.07 MB)... +Processing: Please, Can I Stay--(Tristan Summers)-{This Girl Sucks}.mp4 (Mode: scene) +Downloading Please, Can I Stay--(Tristan Summers)-{This Girl Sucks}.mp4 (1223.12 MB)... +Processing: Tristan Taylor Pt 2-(Tristan Summers)-{Exploited College Girls}.mp4 (Mode: scene) +Downloading Tristan Taylor Pt 2-(Tristan Summers)-{Exploited College Girls}.mp4 (2487.42 MB)... +Processing: Tristan Summers- Mocking Stepdaughter Gets Neko Trained - Ahegao-{Primal's Mental Domination}.mp4 (Mode: scene) +Downloading Tristan Summers- Mocking Stepdaughter Gets Neko Trained - Ahegao-{Primal's Mental Domination}.mp4 (2838.07 MB)... +Processing: The Biology Tutor-(Tristan Summers)-{Passion HD}.mp4 (Mode: scene) +Downloading The Biology Tutor-(Tristan Summers)-{Passion HD}.mp4 (1078.92 MB)... +Processing: Bone Voyage-(Tristan Summers)-{Sis Loves Me}.mp4 (Mode: scene) +Downloading Bone Voyage-(Tristan Summers)-{Sis Loves Me}.mp4 (5368.54 MB)... +Processing: PrimalFetish - Stepsister Loses More Than Her Clothes.mp4 (Mode: scene) +Downloading PrimalFetish - Stepsister Loses More Than Her Clothes.mp4 (850.34 MB)... +Processing: Facials4K - Facial Badge.mp4 (Mode: scene) +Downloading Facials4K - Facial Badge.mp4 (1541.97 MB)... +Processing: Cum4K - Sex Swing Creampies.mp4 (Mode: scene) +Downloading Cum4K - Sex Swing Creampies.mp4 (1575.61 MB)... +Processing: SpyFam - Stretching Stepsister.mp4 (Mode: scene) +Downloading SpyFam - Stretching Stepsister.mp4 (1073.54 MB)... +Processing: NubilesPorn - Stepsisters Valentines Day Free Use Gift.mp4 (Mode: scene) +Downloading NubilesPorn - Stepsisters Valentines Day Free Use Gift.mp4 (2080.77 MB)... +Processing: NubilesPorn - Step Sis Makes Me Cum.mp4 (Mode: scene) +Downloading NubilesPorn - Step Sis Makes Me Cum.mp4 (1465.72 MB)... +Processing: Braces Knows How to Suck-(Tristan Summers)-{Teens Do Porn}.mp4 (Mode: scene) +Downloading Braces Knows How to Suck-(Tristan Summers)-{Teens Do Porn}.mp4 (907.10 MB)... +Processing: Clip4Sale - Teen's 1st Threesome and Girl Experience.mp4 (Mode: scene) +Downloading Clip4Sale - Teen's 1st Threesome and Girl Experience.mp4 (5060.64 MB)... +Processing: You Saw Mine Now I Wanna See Yours - S19-E7-(Tristan Summers)-{Step Siblings Caught}.mp4 (Mode: scene) +Downloading You Saw Mine Now I Wanna See Yours - S19-E7-(Tristan Summers)-{Step Siblings Caught}.mp4 (1540.79 MB)... +Processing: Fun In The Sun-(Tristan Summers)-{Lubed}.mp4 (Mode: scene) +Downloading Fun In The Sun-(Tristan Summers)-{Lubed}.mp4 (1781.24 MB)... +Processing: JaysPOV - My Step Sisters Perfect Boobies.mp4 (Mode: scene) +Downloading JaysPOV - My Step Sisters Perfect Boobies.mp4 (1160.07 MB)... +Processing: ShopLyfter - Loss Prevention Interrogation.mp4 (Mode: scene) +Downloading ShopLyfter - Loss Prevention Interrogation.mp4 (3313.36 MB)... +Processing: Concept- Perv Therapy-(Penny Barber, Tristan Summers)-{TeamSkeet Labs}.mp4 (Mode: scene) +Downloading Concept- Perv Therapy-(Penny Barber, Tristan Summers)-{TeamSkeet Labs}.mp4 (3515.24 MB)... +Processing: POVD - Sexy Casting.mp4 (Mode: scene) +Downloading POVD - Sexy Casting.mp4 (2030.28 MB)... +Processing: GloryholeSwallow - Tristan Summers.mp4 (Mode: scene) +Downloading GloryholeSwallow - Tristan Summers.mp4 (2051.68 MB)... +Processing: Facial Badge-(Tristan Summers)-{Facials4k}.mp4 (Mode: scene) +Downloading Facial Badge-(Tristan Summers)-{Facials4k}.mp4 (1541.97 MB)... +Processing: Fooling around with my stepsis-(Tristan Summers)-{Kinky Family}.mp4 (Mode: scene) +Downloading Fooling around with my stepsis-(Tristan Summers)-{Kinky Family}.mp4 (1841.66 MB)... +Processing: KinkyFamily - Fooling Around with My Stepsis.mp4 (Mode: scene) +Downloading KinkyFamily - Fooling Around with My Stepsis.mp4 (1841.66 MB)... +Processing: PornMegaLoad - Teen Love.mp4 (Mode: scene) +Downloading PornMegaLoad - Teen Love.mp4 (1614.54 MB)... +Processing: Laundry is Hard, Sex is Easy-(Tristan Summers)-{RK Prime}.mp4 (Mode: scene) +Downloading Laundry is Hard, Sex is Easy-(Tristan Summers)-{RK Prime}.mp4 (1008.11 MB)... +Processing: Perfectly Natural 25 - Biology Tutor.mp4 (Mode: scene) +Downloading Perfectly Natural 25 - Biology Tutor.mp4 (1078.92 MB)... +Processing: TeamSkeet - Stepdaughter Up.mp4 (Mode: scene) +Downloading TeamSkeet - Stepdaughter Up.mp4 (3528.60 MB)... +Processing: BangBros - Shy Girl Fucks On The Bus.mp4 (Mode: scene) +Downloading BangBros - Shy Girl Fucks On The Bus.mp4 (2689.27 MB)... +Processing: TeamSkeet - Concept Perv Therapy.mp4 (Mode: scene) +Downloading TeamSkeet - Concept Perv Therapy.mp4 (3515.24 MB)... +Processing: Stretching Stepsister-(Tristan Summers)-{Spy Fam}.mp4 (Mode: scene) +Downloading Stretching Stepsister-(Tristan Summers)-{Spy Fam}.mp4 (1073.54 MB)... +Processing: Shy Girl Fucks On The Bus-(Tristan Summers)-{Bang Bus}.mp4 (Mode: scene) +Downloading Shy Girl Fucks On The Bus-(Tristan Summers)-{Bang Bus}.mp4 (2689.27 MB)... +Processing: Tristan Summers-{Casting Couch-X}.mp4 (Mode: scene) +Downloading Tristan Summers-{Casting Couch-X}.mp4 (1769.91 MB)... +Processing: Step-Sister Loses More than her Clothes at Strip Poker-(Tristan Summers)-{Primal's POV Family Lust - Clips4Sale}.mp4 (Mode: scene) +Downloading Step-Sister Loses More than her Clothes at Strip Poker-(Tristan Summers)-{Primal's POV Family Lust - Clips4Sale}.mp4 (850.34 MB)... +Processing: TeamSkeet - Braces Knows How to Suck.mp4 (Mode: scene) +Downloading TeamSkeet - Braces Knows How to Suck.mp4 (907.10 MB)... +Processing: PornDudeCasting - Tristan.mp4 (Mode: scene) +Downloading PornDudeCasting - Tristan.mp4 (2083.54 MB)... +Processing: ExploitedCollegeGirls - Tristan 1.mp4 (Mode: scene) +Downloading ExploitedCollegeGirls - Tristan 1.mp4 (2643.78 MB)... +Processing: PrivatCastingX - Just 18 and Loves Big Dick.mp4 (Mode: scene) +Downloading PrivatCastingX - Just 18 and Loves Big Dick.mp4 (2417.24 MB)... +Processing: TeamSkeet - Bone Voyage.mp4 (Mode: scene) +Downloading TeamSkeet - Bone Voyage.mp4 (5368.54 MB)... +Processing: Sheena’s Bedside Manner-(Tristan Summers, Sheena Ryder)-{Perv Doctor}.mp4 (Mode: scene) +Downloading Sheena’s Bedside Manner-(Tristan Summers, Sheena Ryder)-{Perv Doctor}.mp4 (2650.46 MB)... +Processing: School Just Started But There's A Test On BBC Today😈-(Tristan Summers)-{Dick Drainers}.mp4 (Mode: scene) +Downloading School Just Started But There's A Test On BBC Today😈-(Tristan Summers)-{Dick Drainers}.mp4 (3866.71 MB)... +Processing: Time of the Month-(Tristan Summers)-{Freeuse Fantasy}.mp4 (Mode: scene) +Downloading Time of the Month-(Tristan Summers)-{Freeuse Fantasy}.mp4 (4190.56 MB)... +Processing: Tristan's 1st visit - Sep. 22, 2023-(Tristan Summers)-{Gloryhole Swallow}.mp4 (Mode: scene) +Downloading Tristan's 1st visit - Sep. 22, 2023-(Tristan Summers)-{Gloryhole Swallow}.mp4 (2051.68 MB)... +Processing: Sexy Casting-(Tristan Summers)-{POVD}.mp4 (Mode: scene) +Downloading Sexy Casting-(Tristan Summers)-{POVD}.mp4 (2030.28 MB)... +Processing: Take Control - 8 Orgasms-(Tristan Summers)-{Girl Cum}.mp4 (Mode: scene) +Downloading Take Control - 8 Orgasms-(Tristan Summers)-{Girl Cum}.mp4 (1756.98 MB)... +Processing: ExploitedCollegeGirls - Tristan 2.mp4 (Mode: scene) +Downloading ExploitedCollegeGirls - Tristan 2.mp4 (2487.42 MB)... +Processing: Stepdaughter Up!-(Jane Rogers, Tristan Summers)-{Daughter Swap}.mp4 (Mode: scene) +Downloading Stepdaughter Up!-(Jane Rogers, Tristan Summers)-{Daughter Swap}.mp4 (3528.60 MB)... +Processing: GirlCum - Take Control.mp4 (Mode: scene) +Downloading GirlCum - Take Control.mp4 (1756.98 MB)... +Processing: TeamSkeet - Flashing Lights.mp4 (Mode: scene) +Downloading TeamSkeet - Flashing Lights.mp4 (1740.85 MB)... +Processing: Stepsisters Valentines Day Free Use Gift - S7-E1-(Tristan Summers, Madison Summers)-{Princess Cum}.mp4 (Mode: scene) +Downloading Stepsisters Valentines Day Free Use Gift - S7-E1-(Tristan Summers, Madison Summers)-{Princess Cum}.mp4 (2080.77 MB)... +Processing: Tristan Summers Returns-{Jay's POV}.mp4 (Mode: scene) +Downloading Tristan Summers Returns-{Jay's POV}.mp4 (1363.91 MB)... +Processing: Young Voluptuous Newbie Tristan Summers Fucking LIVE-{Wild on Cam}.mp4 (Mode: scene) +Downloading Young Voluptuous Newbie Tristan Summers Fucking LIVE-{Wild on Cam}.mp4 (1340.72 MB)... +Processing: CherryPimps - Young Voluptuous Newbie Tristan Summers Fucking.mp4 (Mode: scene) +Downloading CherryPimps - Young Voluptuous Newbie Tristan Summers Fucking.mp4 (1340.72 MB)... +Processing: Tristan Summers Is My Busty Step Daughter-{Jay's POV}.mp4 (Mode: scene) +Downloading Tristan Summers Is My Busty Step Daughter-{Jay's POV}.mp4 (1256.80 MB)... +Processing: FreeUseFantasy - Time Of The Month.mp4 (Mode: scene) +Downloading FreeUseFantasy - Time Of The Month.mp4 (4190.56 MB)... +Processing: Tristan Summers Takes Care of Morning Wood-{Jay's POV}.mp4 (Mode: scene) +Downloading Tristan Summers Takes Care of Morning Wood-{Jay's POV}.mp4 (1354.26 MB)... +Processing: Case No. 7906144 - Loss Prevention “Interrogation”-(Tristan Summers)-{Shoplyfter}.mp4 (Mode: scene) +Downloading Case No. 7906144 - Loss Prevention “Interrogation”-(Tristan Summers)-{Shoplyfter}.mp4 (3313.36 MB)... +Processing: DickDrainers - School Just Started but There's a Test on BBC Today.mp4 (Mode: scene) +Downloading DickDrainers - School Just Started but There's a Test on BBC Today.mp4 (3866.71 MB)... +Processing: FirstClassPOV - Fucked and Showered with Cum.mp4 (Mode: scene) +Downloading FirstClassPOV - Fucked and Showered with Cum.mp4 (1481.48 MB)... +Processing: Tristan Summers Fucked and Showered with Cum-{First Class POV}.mp4 (Mode: scene) +Downloading Tristan Summers Fucked and Showered with Cum-{First Class POV}.mp4 (1481.48 MB)... +Processing: TeamSkeet - Please Can I Stay.mp4 (Mode: scene) +Downloading TeamSkeet - Please Can I Stay.mp4 (1223.12 MB)... +Processing: Lubed 14 - Fun in the Sun.mp4 (Mode: scene) +Downloading Lubed 14 - Fun in the Sun.mp4 (1781.24 MB)... +Processing: Tristan Summers-{Black Ambush}.mp4 (Mode: scene) +Downloading Tristan Summers-{Black Ambush}.mp4 (6280.85 MB)... +Processing: BlackAmbush - Tristan.mp4 (Mode: scene) +Downloading BlackAmbush - Tristan.mp4 (6280.85 MB)... +Processing: Beautiful Sweet Stepdaughter wants to dance with -Step-Daddy--(Tristan Summers)-{Primal's Taboo Family Relations}.mp4 (Mode: scene) +Downloading Beautiful Sweet Stepdaughter wants to dance with -Step-Daddy--(Tristan Summers)-{Primal's Taboo Family Relations}.mp4 (1642.25 MB)... +Processing: NubilePorn - You Saw Mine Now I Wanna See Yours.mp4 (Mode: scene) +Downloading NubilePorn - You Saw Mine Now I Wanna See Yours.mp4 (1540.79 MB)... +Processing: RealityKings - Laundry Is Hard, Sex is Easy.mp4 (Mode: scene) +Downloading RealityKings - Laundry Is Hard, Sex is Easy.mp4 (1008.11 MB)... +Processing: CastingCouchX - Tristan.mp4 (Mode: scene) +Downloading CastingCouchX - Tristan.mp4 (1769.91 MB)... +Processing: Sex Swing Creampies-(Tristan Summers)-{Cum 4K}.mp4 (Mode: scene) +Downloading Sex Swing Creampies-(Tristan Summers)-{Cum 4K}.mp4 (1575.61 MB)... +Processing: Clip4Sale - Mocking Stepdaughter Gets Neko Trained.mp4 (Mode: scene) +Downloading Clip4Sale - Mocking Stepdaughter Gets Neko Trained.mp4 (2838.07 MB)... +Processing: BBCPie - Turndown Service.mp4 (Mode: scene) +Downloading BBCPie - Turndown Service.mp4 (1342.39 MB)... +Processing: JaysPOV - Busty Newcomer Casting.mp4 (Mode: scene) +Downloading JaysPOV - Busty Newcomer Casting.mp4 (1619.32 MB)... +Processing: JaysPOV - Tristan Takes Care of Morning Wood.mp4 (Mode: scene) +Downloading JaysPOV - Tristan Takes Care of Morning Wood.mp4 (1354.26 MB)... +Processing: Petite Girl Takes On A Monster Cock-(Tristan Summers)-{Monsters of Cock}.mp4 (Mode: scene) +Downloading Petite Girl Takes On A Monster Cock-(Tristan Summers)-{Monsters of Cock}.mp4 (3011.36 MB)... +Processing: PervDoctor - Sheena's Bedside Manner.mp4 (Mode: scene) +Downloading PervDoctor - Sheena's Bedside Manner.mp4 (2650.46 MB)... +Processing: JaysPOV - My Busty Step Daughter.mp4 (Mode: scene) +Downloading JaysPOV - My Busty Step Daughter.mp4 (1256.80 MB)... +Processing: JaysPOV - Busty Teen Tristan Summers Returns.mp4 (Mode: scene) +Downloading JaysPOV - Busty Teen Tristan Summers Returns.mp4 (1363.91 MB)... +Processing: Teen Love-(Tristan Summers)-{Naughty Mag}.mp4 (Mode: scene) +Downloading Teen Love-(Tristan Summers)-{Naughty Mag}.mp4 (1614.54 MB)... +Processing: Tristan Summers-{Porn Dude Casting}.mp4 (Mode: scene) +Downloading Tristan Summers-{Porn Dude Casting}.mp4 (2083.54 MB)... +Processing: Fit18 - Initial Casting.mp4 (Mode: scene) +Downloading Fit18 - Initial Casting.mp4 (2825.16 MB)... +Processing: Busty Newcomer Tristan Summers Casting-{Jay's POV}.mp4 (Mode: scene) +Downloading Busty Newcomer Tristan Summers Casting-{Jay's POV}.mp4 (1619.32 MB)... +Processing: DickDrainersX - She Got A Toothache .mp4 (Mode: scene) +Downloading DickDrainersX - She Got A Toothache .mp4 (1776.26 MB)... +Processing: BangBros - Petite Girl Takes On A Monster Cock.mp4 (Mode: scene) +Downloading BangBros - Petite Girl Takes On A Monster Cock.mp4 (3011.36 MB)... +Scanning directory: /videos/kat.the.kunt/OnlyFans.2025.Kat.The.Kunt.Big.Booty.Clown.XXX.1080p.MP4-P2P[XC] +Processing: onlyfans.2025.kat.the.kunt.big.booty.clown.xxx.mp4 (Mode: scene) +Downloading onlyfans.2025.kat.the.kunt.big.booty.clown.xxx.mp4 (921.54 MB)... +Scanning directory: /videos/kat.the.kunt/OnlyFans.2025.Kat.The.Kunt.The.Lusty.Nurse.XXX.1080p.MP4-P2P[XC] +Processing: onlyfans.2025.kat.the.kunt.the.lusty.nurse.xxx.mp4 (Mode: scene) +Downloading onlyfans.2025.kat.the.kunt.the.lusty.nurse.xxx.mp4 (1173.89 MB)... +Scanning directory: /videos/kat.the.kunt/OnlyFans.25.11.26.Kat.The.Kunt.Friends.Sexy.BBW.Girlfriend.Wants.Your.Dick.XXX.1080p.MP4-P2P[XC] +Processing: onlyfans.25.11.26.kat.the.kunt.friends.sexy.bbw.girlfriend.wants.your.dick.xxx.mp4 (Mode: scene) +Downloading onlyfans.25.11.26.kat.the.kunt.friends.sexy.bbw.girlfriend.wants.your.dick.xxx.mp4 (860.19 MB)... +Scanning directory: /videos/kat.the.kunt/ManyVids.2025.Kat.the.Kunt.Juicy.Pomma.And.Andre.Stone.Step.Bro.Caught.Step.Sis.Juicy.Pomma.Kissing.Me.XXX.1080p.MP4-P2P[XC] +Processing: manyvids.2025.kat.the.kunt.juicy.pomma.and.andre.stone.step.bro.caught.step.sis.juicy.pomma.kissing.me.xxx.mp4 (Mode: scene) +Downloading manyvids.2025.kat.the.kunt.juicy.pomma.and.andre.stone.step.bro.caught.step.sis.juicy.pomma.kissing.me.xxx.mp4 (1249.57 MB)... +Scanning directory: /videos/shelby.paris/Xvideos +Processing: kmbpupk16d9_Kiki has Shelby Paris squirming for more!.mp4 (Mode: scene) +Downloading kmbpupk16d9_Kiki has Shelby Paris squirming for more!.mp4 (177.74 MB)... +Processing: ueuobtva9d1_Clit Pierced Cowgirl Shelby Paris Rides Miles Long's Hard Dick!.mp4 (Mode: scene) +Downloading ueuobtva9d1_Clit Pierced Cowgirl Shelby Paris Rides Miles Long's Hard Dick!.mp4 (203.36 MB)... +Processing: ualoaed1e4c_Nina Rivera and Shelby Paris please a white cock together Super Hot Films.mp4 (Mode: scene) +Downloading ualoaed1e4c_Nina Rivera and Shelby Paris please a white cock together Super Hot Films.mp4 (22.76 MB)... +Scanning directory: /videos/shelby.paris/Photos +Scanning directory: /videos/shelby.paris/DreamNet.24.08.24.Shelby.Cum.In.Theater.XXX.1080p.MP4-WRB[XC] +Processing: dreamnet.24.08.24.shelby.cum.in.theater.mp4 (Mode: scene) +Downloading dreamnet.24.08.24.shelby.cum.in.theater.mp4 (235.87 MB)... +Scanning directory: /videos/savannahsolo/Videos +Processing: 6f2ebc3c-79d5-4768-bbbf-4a1ce4224d57.mp4 (Mode: scene) +Downloading 6f2ebc3c-79d5-4768-bbbf-4a1ce4224d57.mp4 (2.00 MB)... +Processing: 8bcc8bd8b862b4996406423310ee4d55701c127caf870ea8f7199fbef1a9b966.mp4 (Mode: scene) +Downloading 8bcc8bd8b862b4996406423310ee4d55701c127caf870ea8f7199fbef1a9b966.mp4 (8.45 MB)... +Processing: 89f0c43713062a429ad3998bbe168b60bcf8e723448f32b3a774ef6ee46603dc.mp4 (Mode: scene) +Downloading 89f0c43713062a429ad3998bbe168b60bcf8e723448f32b3a774ef6ee46603dc.mp4 (10.34 MB)... +Processing: 41a4ae4abbd6aa2cce19053de8470c164d67b5ec5eb348b159360795b3225154.mp4 (Mode: scene) +Downloading 41a4ae4abbd6aa2cce19053de8470c164d67b5ec5eb348b159360795b3225154.mp4 (1.67 MB)... +Processing: 359494690766069761_1080.mp4 (Mode: scene) +Downloading 359494690766069761_1080.mp4 (25.93 MB)... +Processing: 0hlrmunl1oxo90ti3iy31_source.mp4 (Mode: scene) +Downloading 0hlrmunl1oxo90ti3iy31_source.mp4 (9.11 MB)... +Processing: 0b88a525b496e6023eb188552b794c22cef8f659eb485d3440db0001b3978e53.mp4 (Mode: scene) +Downloading 0b88a525b496e6023eb188552b794c22cef8f659eb485d3440db0001b3978e53.mp4 (176.37 MB)... +Processing: 3f0be77c725d100da377943fcd0a9acfc9e4c8e5f2c4c25e8f264a2d21af4061.mp4 (Mode: scene) +Downloading 3f0be77c725d100da377943fcd0a9acfc9e4c8e5f2c4c25e8f264a2d21af4061.mp4 (32.97 MB)... +Processing: 4816c2c3-c021-4e0c-9115-a30912f35472.mp4 (Mode: scene) +Downloading 4816c2c3-c021-4e0c-9115-a30912f35472.mp4 (0.96 MB)... +Processing: 6b1bb14365527ffecd91088660c13d9ccbd8b29f7e87d40860b5c55a77e17773.mp4 (Mode: scene) +Downloading 6b1bb14365527ffecd91088660c13d9ccbd8b29f7e87d40860b5c55a77e17773.mp4 (7.68 MB)... +Processing: 44f1081c8cd1ce91d4d4713090ee872039f2de4709c042c0018087a3f1272e96.mp4 (Mode: scene) +Downloading 44f1081c8cd1ce91d4d4713090ee872039f2de4709c042c0018087a3f1272e96.mp4 (35.28 MB)... +Processing: 9369d90ad2db0c360abe774ab7bb08d6c3ae45ae97bad0e7befb68c7fb65ccab.mp4 (Mode: scene) +Downloading 9369d90ad2db0c360abe774ab7bb08d6c3ae45ae97bad0e7befb68c7fb65ccab.mp4 (3007.41 MB)... +Processing: d89788d7cb2173dbdc13801b35cba5e44f14d7ef923e890eea790e30e6043382.mp4 (Mode: scene) +Downloading d89788d7cb2173dbdc13801b35cba5e44f14d7ef923e890eea790e30e6043382.mp4 (4.10 MB)... +Processing: 3b444dff-e3f5-4b7e-b59f-5d46d6e335cb.mp4 (Mode: scene) +Downloading 3b444dff-e3f5-4b7e-b59f-5d46d6e335cb.mp4 (6.05 MB)... +Processing: 1b98e53125de59f0404d38cd8eb90a6c8b7097cbff07c961862aa4f023d0f6b1.mp4 (Mode: scene) +Downloading 1b98e53125de59f0404d38cd8eb90a6c8b7097cbff07c961862aa4f023d0f6b1.mp4 (5.24 MB)... +Processing: aed3c0d9d29ebfa3a173fb1973babc3220bc2efaa644ef4625c3d492d6a4d014.mp4 (Mode: scene) +Downloading aed3c0d9d29ebfa3a173fb1973babc3220bc2efaa644ef4625c3d492d6a4d014.mp4 (1.56 MB)... +Processing: ef2979eb-bf81-4a93-8cf0-978daac3aa93.mp4 (Mode: scene) +Downloading ef2979eb-bf81-4a93-8cf0-978daac3aa93.mp4 (2.42 MB)... +Processing: 0hrxtcjdevol2tw4paro5_source.mp4 (Mode: scene) +Downloading 0hrxtcjdevol2tw4paro5_source.mp4 (4.02 MB)... +Processing: 39b294a4-39fd-4fbb-99a2-7965313499f7.mp4 (Mode: scene) +Downloading 39b294a4-39fd-4fbb-99a2-7965313499f7.mp4 (0.45 MB)... +Processing: 42eb41ab-b44e-4c2a-84b7-65e87ff34071.mp4 (Mode: scene) +Downloading 42eb41ab-b44e-4c2a-84b7-65e87ff34071.mp4 (1.56 MB)... +Processing: 1b9d081a7552c8cc663292c2383a1bf86a492081a5c476ef74c32195fa125dc9.mp4 (Mode: scene) +Downloading 1b9d081a7552c8cc663292c2383a1bf86a492081a5c476ef74c32195fa125dc9.mp4 (0.96 MB)... +Processing: e6f9ca5a-c086-4b8c-9f0b-e4c4bc4ad7ab.mp4 (Mode: scene) +Downloading e6f9ca5a-c086-4b8c-9f0b-e4c4bc4ad7ab.mp4 (26.24 MB)... +Processing: 74514a338d140f9f5309d3c25acbf4e31758831166d9541e639496b7ecd8e260.mp4 (Mode: scene) +Downloading 74514a338d140f9f5309d3c25acbf4e31758831166d9541e639496b7ecd8e260.mp4 (26.24 MB)... +Processing: 0htg41l9a6o2ymfq8iyv7_source.mp4 (Mode: scene) +Downloading 0htg41l9a6o2ymfq8iyv7_source.mp4 (4.71 MB)... +Processing: 0gyf91klhzce7cfk723yx_source.mp4 (Mode: scene) +Downloading 0gyf91klhzce7cfk723yx_source.mp4 (33.21 MB)... +Processing: 2cc0718c-e543-4ce3-b833-4e5a16e14c29.mp4 (Mode: scene) +Downloading 2cc0718c-e543-4ce3-b833-4e5a16e14c29.mp4 (10.34 MB)... +Processing: 5d7dd1be-bd42-4196-9aa0-8b34f7f61da2.mp4 (Mode: scene) +Downloading 5d7dd1be-bd42-4196-9aa0-8b34f7f61da2.mp4 (3.64 MB)... +Processing: 43e3ac6d-4fdf-4f49-b4af-f2e06c62c12b.mp4 (Mode: scene) +Downloading 43e3ac6d-4fdf-4f49-b4af-f2e06c62c12b.mp4 (15.08 MB)... +Processing: ab6b866c1fbfa99dc6ef65f22c5effc03742dee4c63b9235e74a8c6cf6c0d4f1.mp4 (Mode: scene) +Downloading ab6b866c1fbfa99dc6ef65f22c5effc03742dee4c63b9235e74a8c6cf6c0d4f1.mp4 (27.60 MB)... +Processing: a30043d2540f144f60df42fa5c7455e1eef48baf34bca54c0176699c0a267bf5.mp4 (Mode: scene) +Downloading a30043d2540f144f60df42fa5c7455e1eef48baf34bca54c0176699c0a267bf5.mp4 (22.26 MB)... +Processing: 1e35d453b185a3de601726154ca4e91fdbf4d7bb380a8c4b36378d43a0c29b59.mp4 (Mode: scene) +Downloading 1e35d453b185a3de601726154ca4e91fdbf4d7bb380a8c4b36378d43a0c29b59.mp4 (1.67 MB)... +Processing: 13bb9cbe79d8346ce0d459505553871042a59c3f2f931bf011e4da44b2464a5f.mp4 (Mode: scene) +Downloading 13bb9cbe79d8346ce0d459505553871042a59c3f2f931bf011e4da44b2464a5f.mp4 (83.86 MB)... +Processing: 47a12a897dc508b9abe799b83291ca697d857711a9f97f83f404c160def1813b.mp4 (Mode: scene) +Downloading 47a12a897dc508b9abe799b83291ca697d857711a9f97f83f404c160def1813b.mp4 (767.98 MB)... +Processing: 5928f720-6e08-456d-b6d3-337350787245.mp4 (Mode: scene) +Downloading 5928f720-6e08-456d-b6d3-337350787245.mp4 (1.00 MB)... +Processing: d554cb6ed6b5d46e66151113dafdc9178ab355fd8346a6295d933b8110a830a6.mp4 (Mode: scene) +Downloading d554cb6ed6b5d46e66151113dafdc9178ab355fd8346a6295d933b8110a830a6.mp4 (19.98 MB)... +Processing: 2fef48f66a33690cacbb141e13bdce924a91452262ad7cc599689ee9ad885e20.mp4 (Mode: scene) +Downloading 2fef48f66a33690cacbb141e13bdce924a91452262ad7cc599689ee9ad885e20.mp4 (23.94 MB)... +Processing: 970d575f4cd7f0094ea37aed065720e421e8495f9810631ab7f95f8524afed6e.mp4 (Mode: scene) +Downloading 970d575f4cd7f0094ea37aed065720e421e8495f9810631ab7f95f8524afed6e.mp4 (17.42 MB)... +Processing: 0h5qkm49qcy55ghnl5g6y_source.mp4 (Mode: scene) +Downloading 0h5qkm49qcy55ghnl5g6y_source.mp4 (0.89 MB)... +Processing: 89c260a38770a879f26d918d36b7de38ca97226f461a19ffb9556cf710678465.mp4 (Mode: scene) +Downloading 89c260a38770a879f26d918d36b7de38ca97226f461a19ffb9556cf710678465.mp4 (23.60 MB)... +Processing: d6386b58-1e0a-4f7e-9e3c-5f6dc8b7903e.mp4 (Mode: scene) +Downloading d6386b58-1e0a-4f7e-9e3c-5f6dc8b7903e.mp4 (1.67 MB)... +Processing: 049486e5-36ce-4da1-a248-57d3890c455a.mp4 (Mode: scene) +Downloading 049486e5-36ce-4da1-a248-57d3890c455a.mp4 (7.68 MB)... +Processing: 56844cdd52297c5538f75ac07cafa49e9bc0dc81f41704b0eaf98b3477f697e4.mp4 (Mode: scene) +Downloading 56844cdd52297c5538f75ac07cafa49e9bc0dc81f41704b0eaf98b3477f697e4.mp4 (0.45 MB)... +Processing: 1130c1fa7d0603199ae5b8bb015d81256576483d4cbda82d96bbcf436c38ff02.mp4 (Mode: scene) +Downloading 1130c1fa7d0603199ae5b8bb015d81256576483d4cbda82d96bbcf436c38ff02.mp4 (59.41 MB)... +Processing: 12d92af4ca8298f0e830fa2e08906964229c009c5ea1e1cdee9950572a26c6dc.mp4 (Mode: scene) +Downloading 12d92af4ca8298f0e830fa2e08906964229c009c5ea1e1cdee9950572a26c6dc.mp4 (5.79 MB)... +Processing: e8ad8ea4fbef100358ad1c5211ce27d60963e1018adb3e3268a00753f49772e4.mp4 (Mode: scene) +Downloading e8ad8ea4fbef100358ad1c5211ce27d60963e1018adb3e3268a00753f49772e4.mp4 (76.98 MB)... +Processing: 5f6c23e2ec29d2ab913fb2e48d239096d4862cb1aad3a7e2a8f5534e8e61fa90.mp4 (Mode: scene) +Downloading 5f6c23e2ec29d2ab913fb2e48d239096d4862cb1aad3a7e2a8f5534e8e61fa90.mp4 (2.00 MB)... +Processing: 38f50e1bbe28e38377161579f1761b24b72ee50e1acfa03eb1277b4bcb2a81f5.mp4 (Mode: scene) +Downloading 38f50e1bbe28e38377161579f1761b24b72ee50e1acfa03eb1277b4bcb2a81f5.mp4 (4.04 MB)... +Processing: 1c253d9608a56842f0cc3392bec4d34af1436acedba7d3ab0ee3d1f21b19e733.mp4 (Mode: scene) +Downloading 1c253d9608a56842f0cc3392bec4d34af1436acedba7d3ab0ee3d1f21b19e733.mp4 (4.02 MB)... +Processing: f59aeb22d9c53cb2bb933287d2d13a31f8beea899e4699da4f3fe797ee84a987.mp4 (Mode: scene) +Downloading f59aeb22d9c53cb2bb933287d2d13a31f8beea899e4699da4f3fe797ee84a987.mp4 (4.71 MB)... +Processing: 3cd779bd-1587-450b-9702-059a136426d7.mp4 (Mode: scene) +Downloading 3cd779bd-1587-450b-9702-059a136426d7.mp4 (5.24 MB)... +Processing: de230557c7d8525f2ae9c3d8d8c85daf93f393b9d9dbf25b0dde59c5d1d58f6f.mp4 (Mode: scene) +Downloading de230557c7d8525f2ae9c3d8d8c85daf93f393b9d9dbf25b0dde59c5d1d58f6f.mp4 (95.85 MB)... +Processing: 5f70f73f153ac0ab6f121_source.mp4 (Mode: scene) +Downloading 5f70f73f153ac0ab6f121_source.mp4 (142.84 MB)... +Processing: 3908f447-4010-41ab-b270-469daad79015.mp4 (Mode: scene) +Downloading 3908f447-4010-41ab-b270-469daad79015.mp4 (0.43 MB)... +Processing: afb66c57badd59299ff6f6b87a3c6636277b2232096711cbbebe767a0a47bf28.mp4 (Mode: scene) +Downloading afb66c57badd59299ff6f6b87a3c6636277b2232096711cbbebe767a0a47bf28.mp4 (6.05 MB)... +Processing: 406353d67ef8847ec6c19b4f517e6d89dfb6cd2a58c9b91c21202067bc8909b9.mp4 (Mode: scene) +Downloading 406353d67ef8847ec6c19b4f517e6d89dfb6cd2a58c9b91c21202067bc8909b9.mp4 (2.79 MB)... +Processing: b73e38cee4ef9080425fd2857fbc7e16487221eeab3c9b028b99c4ba279ad039.mp4 (Mode: scene) +Downloading b73e38cee4ef9080425fd2857fbc7e16487221eeab3c9b028b99c4ba279ad039.mp4 (2.50 MB)... +Processing: 0hlspx3phtcoxxina5aub_source.mp4 (Mode: scene) +Downloading 0hlspx3phtcoxxina5aub_source.mp4 (3.84 MB)... +Processing: 45e22e1d4170b1db898596db7abf0ca474fc81f8ebae965e922338047700f62d.mp4 (Mode: scene) +Downloading 45e22e1d4170b1db898596db7abf0ca474fc81f8ebae965e922338047700f62d.mp4 (1.54 MB)... +Processing: ab57e7a5-a150-49af-9d88-c56502d9badc.mp4 (Mode: scene) +Downloading ab57e7a5-a150-49af-9d88-c56502d9badc.mp4 (23.41 MB)... +Processing: bf8f81148b08939f36eae7368fe12b924f8275d9e5834c655715ff5a9c57dda9.mp4 (Mode: scene) +Downloading bf8f81148b08939f36eae7368fe12b924f8275d9e5834c655715ff5a9c57dda9.mp4 (34.08 MB)... +Processing: 1be4cbff-9d2a-4093-9002-7de3a90214a9.mp4 (Mode: scene) +Downloading 1be4cbff-9d2a-4093-9002-7de3a90214a9.mp4 (22.06 MB)... +Processing: ae136bc03260a69c2374840df2b9433fbca2a136d47dd00470c6fa9a09afaf8a.mp4 (Mode: scene) +Downloading ae136bc03260a69c2374840df2b9433fbca2a136d47dd00470c6fa9a09afaf8a.mp4 (2.26 MB)... +Processing: bf51ed4088af793860a5e3217252f1e71af497468cbcd04dc043707901d8be53.mp4 (Mode: scene) +Downloading bf51ed4088af793860a5e3217252f1e71af497468cbcd04dc043707901d8be53.mp4 (1.25 MB)... +Processing: 4fb7c0602e461d8acc7e4facf1fb60769940112a39a48992b2b4a3631d60b2af.mp4 (Mode: scene) +Downloading 4fb7c0602e461d8acc7e4facf1fb60769940112a39a48992b2b4a3631d60b2af.mp4 (1.07 MB)... +Processing: ac273da7-ded9-4410-bc3a-553599bdee15.mp4 (Mode: scene) +Downloading ac273da7-ded9-4410-bc3a-553599bdee15.mp4 (2.79 MB)... +Processing: 0b910f4b-930d-4f1f-920a-513b49cf691f.mp4 (Mode: scene) +Downloading 0b910f4b-930d-4f1f-920a-513b49cf691f.mp4 (1.67 MB)... +Processing: 7gBBQfg60sI3jTRJDMcE3aylPVBEFJoF.mp4 (Mode: scene) +Downloading 7gBBQfg60sI3jTRJDMcE3aylPVBEFJoF.mp4 (739.30 MB)... +Processing: 0ec812592ac00ca58cda801ed72d05d4608b4971143e8ca1cb08112694e33d8e.mp4 (Mode: scene) +Downloading 0ec812592ac00ca58cda801ed72d05d4608b4971143e8ca1cb08112694e33d8e.mp4 (631.92 MB)... +Processing: 0hvuuw64mmvee4drbdg9v_source.mp4 (Mode: scene) +Downloading 0hvuuw64mmvee4drbdg9v_source.mp4 (6.00 MB)... +Processing: 37675ae684e390ac44c1ec64c67a48ca482842e58b1c55f956fb32ebf877de0e.mp4 (Mode: scene) +Downloading 37675ae684e390ac44c1ec64c67a48ca482842e58b1c55f956fb32ebf877de0e.mp4 (5.58 MB)... +Processing: 4ca3f742c0860ba7987c7f695d9602e946fd5889d2b3318706d975cb4ad98075.mp4 (Mode: scene) +Downloading 4ca3f742c0860ba7987c7f695d9602e946fd5889d2b3318706d975cb4ad98075.mp4 (12.50 MB)... +Processing: 0hre6gohm1jmvfgjxs2m9_source.mp4 (Mode: scene) +Downloading 0hre6gohm1jmvfgjxs2m9_source.mp4 (27.60 MB)... +Processing: 17420803bce1f79fc3ad0be1c6263e98bf0f07ff152e00c1581de7adb51cf302.mp4 (Mode: scene) +Downloading 17420803bce1f79fc3ad0be1c6263e98bf0f07ff152e00c1581de7adb51cf302.mp4 (74.39 MB)... +Processing: 0gqwitloyld099gzdtp78_source.mp4 (Mode: scene) +Downloading 0gqwitloyld099gzdtp78_source.mp4 (69.45 MB)... +Processing: 578b504ea726496dc4bfb2b8711176518a544f3118ef84b142208452a71d5283.mp4 (Mode: scene) +Downloading 578b504ea726496dc4bfb2b8711176518a544f3118ef84b142208452a71d5283.mp4 (352.00 MB)... +Processing: 3d48ad4206e8a96bc9e95801279405e8869b150d1e99f001aecc1d34988cc679.mp4 (Mode: scene) +Downloading 3d48ad4206e8a96bc9e95801279405e8869b150d1e99f001aecc1d34988cc679.mp4 (2.42 MB)... +Processing: 4ddf1907b1c3cbb2911f0190344c01adb23f6c58f503d2419fe3d60441e8a6af.mp4 (Mode: scene) +Downloading 4ddf1907b1c3cbb2911f0190344c01adb23f6c58f503d2419fe3d60441e8a6af.mp4 (54.29 MB)... +Processing: 7d4cdc26f575c05ed7a449956b1990eddf8c11787c2891999a864525dad07b3c.mp4 (Mode: scene) +Downloading 7d4cdc26f575c05ed7a449956b1990eddf8c11787c2891999a864525dad07b3c.mp4 (7.68 MB)... +Processing: fe964e0da07818a391c1e33e8ce9fde3861c7583029b22eb99fef306954a845a.mp4 (Mode: scene) +Downloading fe964e0da07818a391c1e33e8ce9fde3861c7583029b22eb99fef306954a845a.mp4 (1442.89 MB)... +Processing: 5d593df463739b120d5775a3878dfba2e0d75f9033962f71b26d96863f7b225c.mp4 (Mode: scene) +Downloading 5d593df463739b120d5775a3878dfba2e0d75f9033962f71b26d96863f7b225c.mp4 (1.44 MB)... +Processing: 0hn7uatsgkhvegux165xh_source.mp4 (Mode: scene) +Downloading 0hn7uatsgkhvegux165xh_source.mp4 (12.50 MB)... +Processing: efef83e11fce4e56b051f461ab869c472ebd35602dc6aaab62cc8e2484f1847b.mp4 (Mode: scene) +Downloading efef83e11fce4e56b051f461ab869c472ebd35602dc6aaab62cc8e2484f1847b.mp4 (21.58 MB)... +Processing: 7b16fcd6d2c21652007fb5a04a72dccfaf6ee9230124f22b883721791e6f81b3.mp4 (Mode: scene) +Downloading 7b16fcd6d2c21652007fb5a04a72dccfaf6ee9230124f22b883721791e6f81b3.mp4 (8.00 MB)... +Processing: b2cf4113-eac9-43af-a31b-0ecd50c09c07.mp4 (Mode: scene) +Downloading b2cf4113-eac9-43af-a31b-0ecd50c09c07.mp4 (17.15 MB)... +Processing: 39b7482f1ad454286328bceb3bcde4a3ac1ac31af29ab8c41e008930deceaf8b.mp4 (Mode: scene) +Downloading 39b7482f1ad454286328bceb3bcde4a3ac1ac31af29ab8c41e008930deceaf8b.mp4 (23.41 MB)... +Processing: 3b2bda71f39b234384233633e04f69975c227a55358a7a8226822689ea496122.mp4 (Mode: scene) +Downloading 3b2bda71f39b234384233633e04f69975c227a55358a7a8226822689ea496122.mp4 (3.64 MB)... +Processing: ffb46e0d07188dd7937af1f1a5f111023feb1198f880226048be36b0ee72f3ba.mp4 (Mode: scene) +Downloading ffb46e0d07188dd7937af1f1a5f111023feb1198f880226048be36b0ee72f3ba.mp4 (1.18 MB)... +Processing: 4f3feba7f927e17e6dba5c5e020b7e2b095ef83e652c34f8bcf9b27947e346b8.mp4 (Mode: scene) +Downloading 4f3feba7f927e17e6dba5c5e020b7e2b095ef83e652c34f8bcf9b27947e346b8.mp4 (1.12 MB)... +Processing: 732087194415542272.mp4 (Mode: scene) +Downloading 732087194415542272.mp4 (362.57 MB)... +Processing: f824b22c4fe64caa3f2b65dcb33e5dd92210b8bbe6563fe7fac0dd0626d4c975.mp4 (Mode: scene) +Downloading f824b22c4fe64caa3f2b65dcb33e5dd92210b8bbe6563fe7fac0dd0626d4c975.mp4 (2.11 MB)... +Processing: 378658963891167232.mp4 (Mode: scene) +Downloading 378658963891167232.mp4 (174.87 MB)... +Processing: 5e3a2728bc65f0d96e7d6.mp4 (Mode: scene) +Downloading 5e3a2728bc65f0d96e7d6.mp4 (4.53 MB)... +Processing: 970199ef0dfeae6b76f94d76790998472e376a0137ec07cfba48eb6eba20ca5d.mp4 (Mode: scene) +Downloading 970199ef0dfeae6b76f94d76790998472e376a0137ec07cfba48eb6eba20ca5d.mp4 (2.15 MB)... +Processing: 6916934fb21fdfda878b79888cfbf00a880db2ec21aafe76b37a74110fb832df.mp4 (Mode: scene) +Downloading 6916934fb21fdfda878b79888cfbf00a880db2ec21aafe76b37a74110fb832df.mp4 (25.83 MB)... +Processing: 44c61e50-3bdf-4578-a33a-d60cfa9d37b6.mp4 (Mode: scene) +Downloading 44c61e50-3bdf-4578-a33a-d60cfa9d37b6.mp4 (76.98 MB)... +Processing: 2b3d9d53fa53e120b0f11e8f1df88b806f3677fe6b109cd541628ed4e7f309e9.mp4 (Mode: scene) +Downloading 2b3d9d53fa53e120b0f11e8f1df88b806f3677fe6b109cd541628ed4e7f309e9.mp4 (3.84 MB)... +Processing: de61d3d1-42b2-4c6f-9287-c412b28e9eaf.mp4 (Mode: scene) +Downloading de61d3d1-42b2-4c6f-9287-c412b28e9eaf.mp4 (1.44 MB)... +Processing: 3fff9499-be7b-4344-b831-0255cc6a5714.mp4 (Mode: scene) +Downloading 3fff9499-be7b-4344-b831-0255cc6a5714.mp4 (1.07 MB)... +Processing: 831024b6-fd5e-4f14-8058-6545649cb137.mp4 (Mode: scene) +Downloading 831024b6-fd5e-4f14-8058-6545649cb137.mp4 (1.43 MB)... +Processing: 0hsv6n5atnlb44huvqni0_source.mp4 (Mode: scene) +Downloading 0hsv6n5atnlb44huvqni0_source.mp4 (40.37 MB)... +Processing: d549be1f45bd9fe538fa06f9a4ff3afff7fdc2c6ad3453135ba8fcd38eff5564.mp4 (Mode: scene) +Downloading d549be1f45bd9fe538fa06f9a4ff3afff7fdc2c6ad3453135ba8fcd38eff5564.mp4 (1184.34 MB)... +Processing: 76acad199a303bfe6e32e0c1e20a3b8943466ea48a289f9d69aad76613d3cccf.mp4 (Mode: scene) +Downloading 76acad199a303bfe6e32e0c1e20a3b8943466ea48a289f9d69aad76613d3cccf.mp4 (374.04 MB)... +Processing: 438082345522704384.mp4 (Mode: scene) +Downloading 438082345522704384.mp4 (30.40 MB)... +Processing: 127b6397-a84a-4d80-8a67-369c90295c8b.mp4 (Mode: scene) +Downloading 127b6397-a84a-4d80-8a67-369c90295c8b.mp4 (1.18 MB)... +Processing: 5757663c-c78f-4f61-ae53-f0b0f4b29356.mp4 (Mode: scene) +Downloading 5757663c-c78f-4f61-ae53-f0b0f4b29356.mp4 (2.50 MB)... +Processing: 0aea003bb9485ff2e5fe5d6cc3cbb236ae6eb3952c9b8bb56e31e970761435cf.mp4 (Mode: scene) +Downloading 0aea003bb9485ff2e5fe5d6cc3cbb236ae6eb3952c9b8bb56e31e970761435cf.mp4 (15.08 MB)... +Processing: 0hxbwpajd0udi1mha2lba_source.mp4 (Mode: scene) +Downloading 0hxbwpajd0udi1mha2lba_source.mp4 (83.03 MB)... +Processing: cb3b7134b4d89ef179e8cf699637a4fa070d66d972a764b0fca5b901945783cd.mp4 (Mode: scene) +Downloading cb3b7134b4d89ef179e8cf699637a4fa070d66d972a764b0fca5b901945783cd.mp4 (9.60 MB)... +Processing: 61857f74d31331d22d1fb3cff3a834b45c1dc0117d1c64925ef0b24c78548f12.mp4 (Mode: scene) +Downloading 61857f74d31331d22d1fb3cff3a834b45c1dc0117d1c64925ef0b24c78548f12.mp4 (64.98 MB)... +Processing: 5ce2e8b9-e8d1-41be-8e31-81e0fe576789.mp4 (Mode: scene) +Downloading 5ce2e8b9-e8d1-41be-8e31-81e0fe576789.mp4 (11.90 MB)... +Processing: 2141ab1d-0dea-4f1a-a288-f29550a41342.mp4 (Mode: scene) +Downloading 2141ab1d-0dea-4f1a-a288-f29550a41342.mp4 (25.83 MB)... +Processing: 843aadc4-5d5d-44e0-a401-5c021f6dd7e0.mp4 (Mode: scene) +Downloading 843aadc4-5d5d-44e0-a401-5c021f6dd7e0.mp4 (6.11 MB)... +Processing: e2ff92af1a354954ff2d46419af39f4765fab2fab45cbf70c738f3e9de83334e.mp4 (Mode: scene) +Downloading e2ff92af1a354954ff2d46419af39f4765fab2fab45cbf70c738f3e9de83334e.mp4 (1647.98 MB)... +Processing: 0ht97umq338jmv3ut6qhl_source.mp4 (Mode: scene) +Downloading 0ht97umq338jmv3ut6qhl_source.mp4 (34.08 MB)... +Processing: 2415af73c785a2f99faac3ab51495b83f44d4e158e6b9b293871d7005de8e0eb.mp4 (Mode: scene) +Downloading 2415af73c785a2f99faac3ab51495b83f44d4e158e6b9b293871d7005de8e0eb.mp4 (6.00 MB)... +Processing: c05738db-1035-487f-a9e8-d60620fb1e7f.mp4 (Mode: scene) +Downloading c05738db-1035-487f-a9e8-d60620fb1e7f.mp4 (9.60 MB)... +Processing: 642fb1cc09e25b115583f8f99603a36c2daba5cb6eebb2dec3d26895e9313fbb.mp4 (Mode: scene) +Downloading 642fb1cc09e25b115583f8f99603a36c2daba5cb6eebb2dec3d26895e9313fbb.mp4 (312.36 MB)... +Processing: e009b272-f281-4e1c-8599-cf241119283d.mp4 (Mode: scene) +Downloading e009b272-f281-4e1c-8599-cf241119283d.mp4 (24.77 MB)... +Processing: 49a0ec43-d89b-4778-83ff-e01ed2333676.mp4 (Mode: scene) +Downloading 49a0ec43-d89b-4778-83ff-e01ed2333676.mp4 (13.69 MB)... +Processing: d774a93bcf164e744dfc1efd42b799b3a26f25986219079840ac6445cf7ff499.mp4 (Mode: scene) +Downloading d774a93bcf164e744dfc1efd42b799b3a26f25986219079840ac6445cf7ff499.mp4 (40.37 MB)... +Processing: 41f379f7-60d3-494f-85de-5b0625e8b117.mp4 (Mode: scene) +Downloading 41f379f7-60d3-494f-85de-5b0625e8b117.mp4 (2.28 MB)... +Processing: 5eb6fd8b0c92755778263_source.mp4 (Mode: scene) +Downloading 5eb6fd8b0c92755778263_source.mp4 (280.04 MB)... +Processing: d02b1ee7-8652-4a80-bac5-807b732a8312.mp4 (Mode: scene) +Downloading d02b1ee7-8652-4a80-bac5-807b732a8312.mp4 (13.03 MB)... +Processing: 3ef01090a8d020ea7f03215694a1dbef5dc09946856a45c4f71ba327955d69b1.mp4 (Mode: scene) +Downloading 3ef01090a8d020ea7f03215694a1dbef5dc09946856a45c4f71ba327955d69b1.mp4 (0.43 MB)... +Processing: 5ea47506c511195e4336d_source.mp4 (Mode: scene) +Downloading 5ea47506c511195e4336d_source.mp4 (171.60 MB)... +Processing: 6wV1fDV4A8Q633YBxO8DtVEHNMAADR1U.mp4 (Mode: scene) +Downloading 6wV1fDV4A8Q633YBxO8DtVEHNMAADR1U.mp4 (920.56 MB)... +Processing: 5e841157e5adce93ca7f5_source.mp4 (Mode: scene) +Downloading 5e841157e5adce93ca7f5_source.mp4 (13.90 MB)... +Processing: 5e241e78-ff47-49d8-a519-f91305822e59.mp4 (Mode: scene) +Downloading 5e241e78-ff47-49d8-a519-f91305822e59.mp4 (5.58 MB)... +Processing: 719010324677668864.mp4 (Mode: scene) +Downloading 719010324677668864.mp4 (25.99 MB)... +Processing: 981c2db44ead73be10d831fcdb3619dc4e4b53dea1f1a6e57c776d6807e86d2a.mp4 (Mode: scene) +Downloading 981c2db44ead73be10d831fcdb3619dc4e4b53dea1f1a6e57c776d6807e86d2a.mp4 (13.69 MB)... +Processing: 0hr0sq2pxhk9dbxtfzh7r_source.mp4 (Mode: scene) +Downloading 0hr0sq2pxhk9dbxtfzh7r_source.mp4 (2.11 MB)... +Processing: 8e8505262455624d031e04db9a5ce64dfd03c39bf6d0486425b7c3795d717253.mp4 (Mode: scene) +Downloading 8e8505262455624d031e04db9a5ce64dfd03c39bf6d0486425b7c3795d717253.mp4 (8.85 MB)... +Processing: 73e64f36bf4c0c5afca7a243ca553d975f5224718240fcfbd6adb6a51f71b861.mp4 (Mode: scene) +Downloading 73e64f36bf4c0c5afca7a243ca553d975f5224718240fcfbd6adb6a51f71b861.mp4 (246.24 MB)... +Processing: 0guy8y4ao3y6aqmt1jgnl_source.mp4 (Mode: scene) +Downloading 0guy8y4ao3y6aqmt1jgnl_source.mp4 (4.68 MB)... +Processing: b538981fefc92b568e99f3ebc97e013445890f67269e63c8190a443238c217e6.mp4 (Mode: scene) +Downloading b538981fefc92b568e99f3ebc97e013445890f67269e63c8190a443238c217e6.mp4 (83.03 MB)... +Processing: 9785cb5dd184fc0f5618f33207b1a59dab58ba34667b34c6180a28b3ea40018a.mp4 (Mode: scene) +Downloading 9785cb5dd184fc0f5618f33207b1a59dab58ba34667b34c6180a28b3ea40018a.mp4 (13.03 MB)... +Processing: 14ab091180f85f2724ef27cc8af2e9f97b10465a406733209614c24b2582f0bc.mp4 (Mode: scene) +Downloading 14ab091180f85f2724ef27cc8af2e9f97b10465a406733209614c24b2582f0bc.mp4 (33.15 MB)... +Processing: 0hvzlob41cd9tzpip222v_source.mp4 (Mode: scene) +Downloading 0hvzlob41cd9tzpip222v_source.mp4 (5.79 MB)... +Processing: 4c3d2c55521900b064b0b2ffdb92d6461f86fc6a49bd39f0ee7bd04a51b116cf.mp4 (Mode: scene) +Downloading 4c3d2c55521900b064b0b2ffdb92d6461f86fc6a49bd39f0ee7bd04a51b116cf.mp4 (2.36 MB)... +Processing: 7c0cd310-94d0-4909-b0fe-f36c6c67f251.mp4 (Mode: scene) +Downloading 7c0cd310-94d0-4909-b0fe-f36c6c67f251.mp4 (1.12 MB)... +Processing: 332fd99c-1769-4db1-ade5-a6d081d28708.mp4 (Mode: scene) +Downloading 332fd99c-1769-4db1-ade5-a6d081d28708.mp4 (33.15 MB)... +Processing: d5699c19-79f6-42cc-948b-8a9ff5c769f3.mp4 (Mode: scene) +Downloading d5699c19-79f6-42cc-948b-8a9ff5c769f3.mp4 (64.98 MB)... +Processing: a656c052-de9c-44d9-a69b-c6ad60fcab4a.mp4 (Mode: scene) +Downloading a656c052-de9c-44d9-a69b-c6ad60fcab4a.mp4 (8.85 MB)... +Processing: 2e8ec7fd516471a40c8d91317982e5d83c49c9fea97f2d891426a91a3135e7ae.mp4 (Mode: scene) +Downloading 2e8ec7fd516471a40c8d91317982e5d83c49c9fea97f2d891426a91a3135e7ae.mp4 (11.90 MB)... +Processing: 0hui5i44k0ylhkbjparc4_source.mp4 (Mode: scene) +Downloading 0hui5i44k0ylhkbjparc4_source.mp4 (7.68 MB)... +Processing: 340256327525736449_1080.mp4 (Mode: scene) +Downloading 340256327525736449_1080.mp4 (14.29 MB)... +Processing: b687f2b93aab7cf3f96a8fdffc2a9f74aef9ae15e909b1ec8dfd6d717bd75e67.mp4 (Mode: scene) +Downloading b687f2b93aab7cf3f96a8fdffc2a9f74aef9ae15e909b1ec8dfd6d717bd75e67.mp4 (4.16 MB)... +Processing: 727b0304-ccae-41da-970e-2a195025624f.mp4 (Mode: scene) +Downloading 727b0304-ccae-41da-970e-2a195025624f.mp4 (2.36 MB)... +Processing: 29b3f3864a5fd0cc267ec2fa6c29e9cad9881858cf2b52f05305fe90ea48971c.mp4 (Mode: scene) +Downloading 29b3f3864a5fd0cc267ec2fa6c29e9cad9881858cf2b52f05305fe90ea48971c.mp4 (4.36 MB)... +Processing: 365726351937773568.mp4 (Mode: scene) +Downloading 365726351937773568.mp4 (41.81 MB)... +Processing: 0hyiqulu8zq1kb72z67cr_source.mp4 (Mode: scene) +Downloading 0hyiqulu8zq1kb72z67cr_source.mp4 (4.04 MB)... +Processing: 94f19850376873675d37aa57a55bca108e0fdc18dd21b301902ca668cdfd3b83.mp4 (Mode: scene) +Downloading 94f19850376873675d37aa57a55bca108e0fdc18dd21b301902ca668cdfd3b83.mp4 (10.47 MB)... +Processing: 0hm01lixk0yo3181uau6p_source.mp4 (Mode: scene) +Downloading 0hm01lixk0yo3181uau6p_source.mp4 (74.39 MB)... +Processing: 0hq8d1mp7pue4vkd20zbj_source.mp4 (Mode: scene) +Downloading 0hq8d1mp7pue4vkd20zbj_source.mp4 (21.58 MB)... +Processing: 5b826c9b-dc0c-4c2f-8d2b-badbe97d3cdf.mp4 (Mode: scene) +Downloading 5b826c9b-dc0c-4c2f-8d2b-badbe97d3cdf.mp4 (20.73 MB)... +Processing: a705ba79-ddcc-4b34-b619-709d7333a3e4.mp4 (Mode: scene) +Downloading a705ba79-ddcc-4b34-b619-709d7333a3e4.mp4 (2.15 MB)... +Processing: eac12b1c-df1b-4371-a430-1086a79ce9dc.mp4 (Mode: scene) +Downloading eac12b1c-df1b-4371-a430-1086a79ce9dc.mp4 (4.10 MB)... +Processing: 4aa2e0443048166e1354e2713b778f926138f9677533c469527675963ae24314.mp4 (Mode: scene) +Downloading 4aa2e0443048166e1354e2713b778f926138f9677533c469527675963ae24314.mp4 (20.88 MB)... +Processing: 0hp2mzycnvtg543n5ulay_source.mp4 (Mode: scene) +Downloading 0hp2mzycnvtg543n5ulay_source.mp4 (54.29 MB)... +Processing: fbe590ad2b8b781c5ec6bb05f5a18fe297cc2c5552c8ca647c0e14a124449dd9.mp4 (Mode: scene) +Downloading fbe590ad2b8b781c5ec6bb05f5a18fe297cc2c5552c8ca647c0e14a124449dd9.mp4 (20.73 MB)... +Processing: 5e487247096805fdf5057290c116f914aac3f7aaead9ddce278999848cbf32c6.mp4 (Mode: scene) +Downloading 5e487247096805fdf5057290c116f914aac3f7aaead9ddce278999848cbf32c6.mp4 (17.15 MB)... +Processing: 406599868337889280.mp4 (Mode: scene) +Downloading 406599868337889280.mp4 (43.22 MB)... +Processing: f9b58a6d3f8af6c8333519f9a2ba8e0369e11df5cc5f11efe1341977b9088f54.mp4 (Mode: scene) +Downloading f9b58a6d3f8af6c8333519f9a2ba8e0369e11df5cc5f11efe1341977b9088f54.mp4 (1.43 MB)... +Processing: 0hpn136qmhc4l1eelud5f_source.mp4 (Mode: scene) +Downloading 0hpn136qmhc4l1eelud5f_source.mp4 (2.26 MB)... +Processing: db152c158b0282aa87a7d7867930930272b0c8b1059f50127c749714f201af79.mp4 (Mode: scene) +Downloading db152c158b0282aa87a7d7867930930272b0c8b1059f50127c749714f201af79.mp4 (24.77 MB)... +Processing: 36effef9243b2fffabbf33762860aac257015b36688b42bf7f656132910192b5.mp4 (Mode: scene) +Downloading 36effef9243b2fffabbf33762860aac257015b36688b42bf7f656132910192b5.mp4 (47.00 MB)... +Processing: 89db53f32707db28ae84a0a7416e74fb3cf9657a530ce95c8fd62dbe7d225e65.mp4 (Mode: scene) +Downloading 89db53f32707db28ae84a0a7416e74fb3cf9657a530ce95c8fd62dbe7d225e65.mp4 (1207.97 MB)... +Processing: fd1c602952871b91fbd8e93211bd9b671ae1b4618905cdf610cd5b5aeb804586.mp4 (Mode: scene) +Downloading fd1c602952871b91fbd8e93211bd9b671ae1b4618905cdf610cd5b5aeb804586.mp4 (767.98 MB)... +Processing: 8e2d96ac91801bd99ebdafcc511a0d3bb23d97e8049305bc71a94ed72ad6871c.mp4 (Mode: scene) +Downloading 8e2d96ac91801bd99ebdafcc511a0d3bb23d97e8049305bc71a94ed72ad6871c.mp4 (9.11 MB)... +Processing: e92b979e9721cdfbd3432bd126742359d9699d197a52a4ed5e921155b02e924a.mp4 (Mode: scene) +Downloading e92b979e9721cdfbd3432bd126742359d9699d197a52a4ed5e921155b02e924a.mp4 (6.11 MB)... +Processing: a5522307974cc19307ede8e81b5d09c72e2325beb006465ee54d4041d30650ef.mp4 (Mode: scene) +Downloading a5522307974cc19307ede8e81b5d09c72e2325beb006465ee54d4041d30650ef.mp4 (2.28 MB)... +Processing: fc7bbd32-bbca-48db-bd54-06fd9838cefd.mp4 (Mode: scene) +Downloading fc7bbd32-bbca-48db-bd54-06fd9838cefd.mp4 (1.25 MB)... +Processing: 0hlbs1n61mi8mj702im4u_source.mp4 (Mode: scene) +Downloading 0hlbs1n61mi8mj702im4u_source.mp4 (32.97 MB)... +Processing: 93e2dcb297924f1fbdf63fe60f1361aa1dec816a14cb88fc96ee5bab50b0ff0a.mp4 (Mode: scene) +Downloading 93e2dcb297924f1fbdf63fe60f1361aa1dec816a14cb88fc96ee5bab50b0ff0a.mp4 (124.00 MB)... +Processing: 1fb1312fe2bc267bb29450c3c29fafd24a33b30d7c4c3ecda1551cdb0a8747d9.mp4 (Mode: scene) +Downloading 1fb1312fe2bc267bb29450c3c29fafd24a33b30d7c4c3ecda1551cdb0a8747d9.mp4 (22.06 MB)... +Processing: 0hs5uh73k6hitn0hkfwzs_source.mp4 (Mode: scene) +Downloading 0hs5uh73k6hitn0hkfwzs_source.mp4 (4.16 MB)... +Processing: e7a16831-b7b6-43f1-abac-ce5756c6f5c0.mp4 (Mode: scene) +Downloading e7a16831-b7b6-43f1-abac-ce5756c6f5c0.mp4 (95.85 MB)... +Processing: 0hsqbnqcwl7rleuloz06t_source.mp4 (Mode: scene) +Downloading 0hsqbnqcwl7rleuloz06t_source.mp4 (47.00 MB)... +Processing: wktrst5wsubu3TNRiGqGnRGgn2LImkMf.mp4 (Mode: scene) +Downloading wktrst5wsubu3TNRiGqGnRGgn2LImkMf.mp4 (799.60 MB)... +Processing: 84429f8e-9521-4d0b-b5c5-74ae3a8e5f1f.mp4 (Mode: scene) +Downloading 84429f8e-9521-4d0b-b5c5-74ae3a8e5f1f.mp4 (59.41 MB)... +Processing: 0gprz4d5ucokp845j6dqa_source.mp4 (Mode: scene) +Downloading 0gprz4d5ucokp845j6dqa_source.mp4 (5.75 MB)... +Processing: 96f5c415-ace1-4211-bf1f-c20f52f91cbd.mp4 (Mode: scene) +Downloading 96f5c415-ace1-4211-bf1f-c20f52f91cbd.mp4 (4.36 MB)... +Processing: 7cc725f1-c7a1-4fd2-97f6-d5f8b705f963.mp4 (Mode: scene) +Downloading 7cc725f1-c7a1-4fd2-97f6-d5f8b705f963.mp4 (1.54 MB)... +Processing: 0hqnm1ojk5bfcv3r9lpur_source.mp4 (Mode: scene) +Downloading 0hqnm1ojk5bfcv3r9lpur_source.mp4 (176.37 MB)... +Processing: 338045258677886976.mp4 (Mode: scene) +Downloading 338045258677886976.mp4 (171.63 MB)... +Processing: 405793173760122880.mp4 (Mode: scene) +Downloading 405793173760122880.mp4 (4.66 MB)... +Processing: f6fec81f1a6bc6142083e4837f54d24ea31a60f545bfe8e9390d015058c22bac.mp4 (Mode: scene) +Downloading f6fec81f1a6bc6142083e4837f54d24ea31a60f545bfe8e9390d015058c22bac.mp4 (1.00 MB)... +Processing: 65aa9373-b227-43d7-bba7-074bdf6889d8.mp4 (Mode: scene) +Downloading 65aa9373-b227-43d7-bba7-074bdf6889d8.mp4 (20.88 MB)... +Scanning directory: /videos/savannahsolo/Profile +Scanning directory: /videos/savannahsolo/Photos +Scanning directory: /videos/red.eviee/Bang.YNGR.25.07.11.Red.Eviee.XXX.1080p.MP4-WRB[XC] +Processing: byngr.25.07.11.red.eviee.mp4 (Mode: scene) +Downloading byngr.25.07.11.red.eviee.mp4 (2109.95 MB)... +Scanning directory: /videos/red.eviee/ScottStark.Via.OnlyFans.24.08.04.Red.Eviee.XXX.1080p.MP4-GAYME[XC] +Processing: scottstark.via.onlyfans.24.08.04.red.eviee.mp4 (Mode: scene) +Downloading scottstark.via.onlyfans.24.08.04.red.eviee.mp4 (1313.83 MB)... +Scanning directory: /videos/red.eviee/MyLifeInMiami.25.03.27.Red.Eviee.Big.Tit.Horny.Roommate.XXX.1080p.MP4-WRB[XC] +Processing: mlim.25.03.27.red.eviee.big.tit.horny.roommate.mp4 (Mode: scene) +Downloading mlim.25.03.27.red.eviee.big.tit.horny.roommate.mp4 (1031.44 MB)... +Scanning directory: /videos/red.eviee/ScottStark.Via.OnlyFans.25.01.05.Red.Eviee.XXX.1080p.MP4-GAYME[XC] +Processing: scottstark.via.onlyfans.25.01.05.red.eviee.mp4 (Mode: scene) +Downloading scottstark.via.onlyfans.25.01.05.red.eviee.mp4 (1494.47 MB)... +Scanning directory: /videos/red.eviee/Tomboyz.25.10.20.Red.Eviee.XXX.1080p.MP4-WRB[XC] +Processing: tomboyz.25.10.20.red.eviee.mp4 (Mode: scene) +Downloading tomboyz.25.10.20.red.eviee.mp4 (1145.51 MB)... +Scanning directory: /videos/red.eviee/MyGirlfriendsBustyFriend.25.04.26.Red.Eviee.XXX.1080p.MP4-WRB[XC] +Processing: mygirlfriendsbustyfriend.25.04.26.red.eviee.mp4 (Mode: scene) +Downloading mygirlfriendsbustyfriend.25.04.26.red.eviee.mp4 (2679.90 MB)... +Scanning directory: /videos/red.eviee/MyPervyFamily.25.05.15.Red.Eviee.Since.You.Got.A.Peak.Can.I.Get.A.Peak.XXX.1080p.HEVC.x265.PRT +Scanning directory: /videos/red.eviee/FTVMilfs.25.09.10.Red.Eviee.Your.Flirty.Neighbor.XXX.1080p.MP4-NBQ[XC] +Processing: ftvmilfs.25.09.10.red.eviee.your.flirty.neighbor.mp4 (Mode: scene) +Downloading ftvmilfs.25.09.10.red.eviee.your.flirty.neighbor.mp4 (6871.96 MB)... +Scanning directory: /videos/red.eviee/MyLifeInMiami.25.07.02.Red.Eviee.Big.Titty.Babe.Gets.All.Wet.XXX.1080p.MP4-WRB[XC] +Processing: mlim.25.07.02.red.eviee.big.titty.babe.gets.all.wet.mp4 (Mode: scene) +Downloading mlim.25.07.02.red.eviee.big.titty.babe.gets.all.wet.mp4 (876.34 MB)... +Scanning directory: /videos/red.eviee/MyLifeInMiami.25.09.03.Red.Eviee.And.Cherry.Cheech.XXX.1080p.MP4-WRB[XC] +Processing: mlim.25.09.03.red.eviee.and.cherry.cheech.mp4 (Mode: scene) +Downloading mlim.25.09.03.red.eviee.and.cherry.cheech.mp4 (955.75 MB)... +Scanning directory: /videos/red.eviee/MyPervyFamily.25.05.15.Red.Eviee.Since.You.Got.A.Peak.Can.I.Get.A.Peak.XXX.1080p.MP4-WRB[XC] +Processing: mypervyfamily.25.05.15.red.eviee.since.you.got.a.peak.can.i.get.a.peak.mp4 (Mode: scene) +Downloading mypervyfamily.25.05.15.red.eviee.since.you.got.a.peak.can.i.get.a.peak.mp4 (1456.36 MB)... +Scanning directory: /videos/freya.von.doom/AskYourMother.25.02.16.Freya.Von.Doom.And.Misty.Meaner.XXX.1080p.HEVC.x265.PRT +Scanning directory: /videos/sunny.bunny/NastyNYAmateurs.22.07.29.Sunny.Bunny.XXX.1080p.MP4-WRB[XC] +Processing: nastynyamateurs.22.07.29.sunny.bunny.mp4 (Mode: scene) +Downloading nastynyamateurs.22.07.29.sunny.bunny.mp4 (2472.36 MB)... +Scanning directory: /videos/sunny.bunny/PlumperPass.25.04.25.Sunny.Bunny.XXX.1080p.MP4-WRB[XC] +Scanning directory: /videos/sunny.bunny/PlumperPass.24.12.27.Sunny.Bunny.XXX.1080p.MP4-WRB[XC] +Processing: plumperpass.24.12.27.sunny.bunny.mp4 (Mode: scene) +Downloading plumperpass.24.12.27.sunny.bunny.mp4 (3031.52 MB)... +Scanning directory: /videos/sunny.bunny/FreakMobMedia.24.11.17.Sunny.Bunny.Super.Thick.Booty.XXX.1080p.MP4-WRB[XC] +Processing: fmm.24.11.17.sunny.bunny.super.thick.booty.mp4 (Mode: scene) +Downloading fmm.24.11.17.sunny.bunny.super.thick.booty.mp4 (7385.01 MB)... +Scanning directory: /videos/sunny.bunny/sunny-bunny-tubepornstars +Scanning directory: /videos/coomerparty/squishiebear +Scanning directory: /videos/coomerparty/jadynnstone +Scanning directory: /videos/coomerparty/sabrinaviolet +Scanning directory: /videos/coomerparty/teresafterdark +Scanning directory: /videos/coomerparty/bobbymarkggggg +Scanning directory: /videos/coomerparty/chubbyguati +Scanning directory: /videos/coomerparty/sunnybunnyyyy +Scanning directory: /videos/coomerparty/doolceluna +Scanning directory: /videos/coomerparty/tatievans +Scanning directory: /videos/coomerparty/tanisha.babyyy +Scanning directory: /videos/coomerparty/strawberryshortcakeee +Scanning directory: /videos/coomerparty/onlyfromsaraa +Scanning directory: /videos/coomerparty/arithesuccubus +Scanning directory: /videos/coomerparty/mokuzailane +Scanning directory: /videos/coomerparty/517052208303321088 +Scanning directory: /videos/coomerparty/ameenachubbycutie +Scanning directory: /videos/coomerparty/stupidbrat +Scanning directory: /videos/coomerparty/xxtattedbaddiexx +Scanning directory: /videos/coomerparty/271848918734614528 +Scanning directory: /videos/coomerparty/8176344 +Scanning directory: /videos/coomerparty/stephoshiri +Scanning directory: /videos/coomerparty/chubbykerrie +Scanning directory: /videos/coomerparty/bonnibonkers +Scanning directory: /videos/blairebabie666/coomer +Scanning directory: /videos/blairebabie666/screens +Scanning directory: /videos/remy.woods/CastingCouch-HD.25.03.14.Remy.XXX.1080p.MP4-NBQ[XC] +Scanning directory: /videos/remy.woods/BrazzersExxtra.25.06.05.Remy.Woods.Fake.Innocent.Raunchy.Torment.XXX.1080p.HEVC.x265.PRT +Processing: Fake Innocent Raunchy Torment-(Remy Woods)-{Brazzers Exxtra}.mp4 (Mode: scene) +Downloading Fake Innocent Raunchy Torment-(Remy Woods)-{Brazzers Exxtra}.mp4 (1210.27 MB)... +Scanning directory: /videos/taboofantasy/eva.long +Processing: Eva Long - Dating Step-Mom-{Primal's Taboo Family Relations}-[Cougar, MILF (30+), Older Woman - Younger Man, taboo].mp4 (Mode: scene) +Downloading Eva Long - Dating Step-Mom-{Primal's Taboo Family Relations}-[Cougar, MILF (30+), Older Woman - Younger Man, taboo].mp4 (985.76 MB)... +Processing: Eva Long - Submitting to her Jealous Step-Son-{Primal's Taboo Family Relations}-[Domination, MILF (30+), Submission, Training].mp4 (Mode: scene) +Downloading Eva Long - Submitting to her Jealous Step-Son-{Primal's Taboo Family Relations}-[Domination, MILF (30+), Submission, Training].mp4 (522.32 MB)... +Processing: Eva Long - Step-Mom Gets What She Needs From Me!-{Primal's Taboo Family Relations}-[Creampie Surprise, Facial, Latina Woman, Latino Man, MILF (30+), Older Woman - Younger Man, creampie, taboo].mp4 (Mode: scene) +Downloading Eva Long - Step-Mom Gets What She Needs From Me!-{Primal's Taboo Family Relations}-[Creampie Surprise, Facial, Latina Woman, Latino Man, MILF (30+), Older Woman - Younger Man, creampie, taboo].mp4 (729.29 MB)... +Processing: Eva Long - Extreme taboo freeze sex.mp4 (Mode: scene) +Downloading Eva Long - Extreme taboo freeze sex.mp4 (1195.57 MB)... +Processing: [clips4sale.com]13TAB_78700_71219_Eva-Long-Jay-Romero-Freeuse-Mom-jw_1080p.mp4 (Mode: scene) +Downloading [clips4sale.com]13TAB_78700_71219_Eva-Long-Jay-Romero-Freeuse-Mom-jw_1080p.mp4 (565.27 MB)... +Scanning directory: /videos/taboofantasy/gianna.love +Processing: Odette Delacroix- Do My Step Bro-(Gianna Love)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading Odette Delacroix- Do My Step Bro-(Gianna Love)-{Taboo Fantasy}.mp4 (237.17 MB)... +Processing: Gianna Love- Taboo Family Threesomes.mp4 (Mode: scene) +Downloading Gianna Love- Taboo Family Threesomes.mp4 (158.39 MB)... +Scanning directory: /videos/taboofantasy/cherry.morgan +Processing: A Taboo Fantasy_Deflowered-By-My-Aunt.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Deflowered-By-My-Aunt.mp4 (341.26 MB)... +Processing: Cherry Morgan - Step Dad Fantasy.mp4 (Mode: scene) +Downloading Cherry Morgan - Step Dad Fantasy.mp4 (281.04 MB)... +Processing: A Taboo Fantasy_Aunt-Cherry-Is-A-Hooker.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Aunt-Cherry-Is-A-Hooker.mp4 (288.50 MB)... +Processing: I GOT MY AUNT PREGNANT!-(Cherry Morgan, Ciara Blue)-{Taboo Fantasy}-[Blond Hair, Blowjob, Family Roleplay, Hairless Pussy, Impregnation, Pussy Licking, creampie].mp4 (Mode: scene) +Downloading I GOT MY AUNT PREGNANT!-(Cherry Morgan, Ciara Blue)-{Taboo Fantasy}-[Blond Hair, Blowjob, Family Roleplay, Hairless Pussy, Impregnation, Pussy Licking, creampie].mp4 (301.95 MB)... +Processing: Cherry Morgan- Facial Fuck Fest-{Family Lust}.mp4 (Mode: scene) +Downloading Cherry Morgan- Facial Fuck Fest-{Family Lust}.mp4 (308.27 MB)... +Processing: Cherry Morgan - Horny Step Siblings.mp4 (Mode: scene) +Downloading Cherry Morgan - Horny Step Siblings.mp4 (275.22 MB)... +Processing: Cherry Morgan - Incestual Fantasies.mp4 (Mode: scene) +Downloading Cherry Morgan - Incestual Fantasies.mp4 (110.39 MB)... +Processing: Cherrys Brother Wants More HD - XVIDEOS.COM.mp4 (Mode: scene) +Downloading Cherrys Brother Wants More HD - XVIDEOS.COM.mp4 (357.28 MB)... +Processing: Cherry Morgan- Make a Wish-(Shzanna East)-{Family Lust}.mp4 (Mode: scene) +Downloading Cherry Morgan- Make a Wish-(Shzanna East)-{Family Lust}.mp4 (243.97 MB)... +Scanning directory: /videos/taboofantasy/violet.thompson +Processing: THE VIOLET THOMPSON FAMILY ALBUM V3.mp4 (Mode: scene) +Downloading THE VIOLET THOMPSON FAMILY ALBUM V3.mp4 (1426.22 MB)... +Processing: DOING MY SISTER'S CHORES-(Violet Thompson)-{Taboo Fantasy}-[Blowjob, Brother, Condom, Family Roleplay, Glasses, Hairless Pussy, Hardcore, Natural Tits, Nerd, Pussy Licking, Short Woman, Small Tits, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading DOING MY SISTER'S CHORES-(Violet Thompson)-{Taboo Fantasy}-[Blowjob, Brother, Condom, Family Roleplay, Glasses, Hairless Pussy, Hardcore, Natural Tits, Nerd, Pussy Licking, Short Woman, Small Tits, Teen Girl (18–22)].mp4 (375.80 MB)... +Processing: A Taboo Fantasy_MY-BROTHER-IS-A-PREMATURE-EJACULATOR.mp4 (Mode: scene) +Downloading A Taboo Fantasy_MY-BROTHER-IS-A-PREMATURE-EJACULATOR.mp4 (274.84 MB)... +Processing: A Taboo Fantasy_VIOLETS-NAKED-YOGA.mp4 (Mode: scene) +Downloading A Taboo Fantasy_VIOLETS-NAKED-YOGA.mp4 (308.65 MB)... +Processing: A Taboo Fantasy_SMELLING-MY-SISTERS-DIRTY-PANTIES.mp4 (Mode: scene) +Downloading A Taboo Fantasy_SMELLING-MY-SISTERS-DIRTY-PANTIES.mp4 (340.24 MB)... +Processing: Violet Thompson - I Seduced My Uncle - TabooFantasy - INCEST.mp4 (Mode: scene) +Downloading Violet Thompson - I Seduced My Uncle - TabooFantasy - INCEST.mp4 (92.48 MB)... +Processing: A Taboo Fantasy_VIOET-THOMPSONS-FAMILY-ALBUM-V2.mp4 (Mode: scene) +Downloading A Taboo Fantasy_VIOET-THOMPSONS-FAMILY-ALBUM-V2.mp4 (1244.38 MB)... +Scanning directory: /videos/taboofantasy/sindy.tf +Processing: A Taboo Fantasy_Baby-Sister-Bang.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Baby-Sister-Bang.mp4 (361.64 MB)... +Scanning directory: /videos/taboofantasy/marilyn.tf +Processing: A Taboo Fantasy_Marilyn-Sucks-Off-Her-Family.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Marilyn-Sucks-Off-Her-Family.mp4 (541.60 MB)... +Processing: Compressed_A Taboo Fantasy_My-Step-Sister-Is-A-Cock-Sucker.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_My-Step-Sister-Is-A-Cock-Sucker.mp4 (323.88 MB)... +Scanning directory: /videos/taboofantasy/faith.anderson.tf +Processing: Compressed_A Taboo Fantasy_BEDTIME-STORY.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_BEDTIME-STORY.mp4 (353.56 MB)... +Processing: Compressed_A Taboo Fantasy_FAITH-ANDERSONS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_FAITH-ANDERSONS-FAMILY-ALBUM.mp4 (324.20 MB)... +Processing: Faith Anderson's Family Album Vol. 2.mp4 (Mode: scene) +Downloading Faith Anderson's Family Album Vol. 2.mp4 (1367.71 MB)... +Processing: SUCKED OFF BY MY SISTER-(Faith Anderson)-{Taboo Fantasy}-[Amateur, Blowjob, Brother, Brown Hair, Family Roleplay, Handjob, Handjob to Completion, MILF (30+)].mp4 (Mode: scene) +Downloading SUCKED OFF BY MY SISTER-(Faith Anderson)-{Taboo Fantasy}-[Amateur, Blowjob, Brother, Brown Hair, Family Roleplay, Handjob, Handjob to Completion, MILF (30+)].mp4 (325.27 MB)... +Processing: Keeping Up With The Andersons Vol. 1.mp4 (Mode: scene) +Downloading Keeping Up With The Andersons Vol. 1.mp4 (2082.33 MB)... +Processing: Keeping Up With The Andersons Vol 2.mp4 (Mode: scene) +Downloading Keeping Up With The Andersons Vol 2.mp4 (2013.65 MB)... +Scanning directory: /videos/taboofantasy/amber.lynn.bach +Processing: Amber Lynn Bach in My Son Always Gets What He Wants [60fps].mp4 (Mode: scene) +Downloading Amber Lynn Bach in My Son Always Gets What He Wants [60fps].mp4 (121.86 MB)... +Processing: A Taboo Fantasy_My-Mom-The-Porn-Star.mp4 (Mode: scene) +Downloading A Taboo Fantasy_My-Mom-The-Porn-Star.mp4 (330.66 MB)... +Processing: MY MOM THE PORN STAR EPISODE 2-(Amber Lynn Bach)-{Taboo Fantasy}-[Big Dick, Big Tits, Blond Hair, Blowjob, Cougar, Family Roleplay, Hairless Labia, MILF (30+), Mother, Older Woman - Younger Man, Son, Trimmed Pussy].mp4 (Mode: scene) +Downloading MY MOM THE PORN STAR EPISODE 2-(Amber Lynn Bach)-{Taboo Fantasy}-[Big Dick, Big Tits, Blond Hair, Blowjob, Cougar, Family Roleplay, Hairless Labia, MILF (30+), Mother, Older Woman - Younger Man, Son, Trimmed Pussy].mp4 (315.53 MB)... +Scanning directory: /videos/taboofantasy/jenny.tf +Processing: A Taboo Fantasy_My-Nocturnal-Dad.mp4 (Mode: scene) +Downloading A Taboo Fantasy_My-Nocturnal-Dad.mp4 (266.17 MB)... +Processing: A Taboo Fantasy_Having-Daddys-Baby.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Having-Daddys-Baby.mp4 (260.55 MB)... +Scanning directory: /videos/taboofantasy/alice.schoolgirl +Processing: Compressed_A Taboo Fantasy_Anal-Intruder.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Anal-Intruder.mp4 (236.90 MB)... +Processing: THE PRIEST & THE CATHOLIC SCHOOL GIRL-(Alice Frost)-{Taboo Fantasy}-[Blond Hair, Cum on Hands, Cumshot, Handjob, Handjob to Completion, Older Man - Younger Woman, Religious, Schoolgirl].mp4 (Mode: scene) +Downloading THE PRIEST & THE CATHOLIC SCHOOL GIRL-(Alice Frost)-{Taboo Fantasy}-[Blond Hair, Cum on Hands, Cumshot, Handjob, Handjob to Completion, Older Man - Younger Woman, Religious, Schoolgirl].mp4 (215.81 MB)... +Processing: SODOMIZED BY FATHER CHAD-(Alice Frost)-{Taboo Fantasy}-[Anal Sex, Blond Hair, Blowjob, Doggy Style, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Religious].mp4 (Mode: scene) +Downloading SODOMIZED BY FATHER CHAD-(Alice Frost)-{Taboo Fantasy}-[Anal Sex, Blond Hair, Blowjob, Doggy Style, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Religious].mp4 (311.36 MB)... +Processing: THE FORBIDDEN FRUIT-(Alice Frost)-{Taboo Fantasy}-[Blond Hair, Blowjob, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, Religious].mp4 (Mode: scene) +Downloading THE FORBIDDEN FRUIT-(Alice Frost)-{Taboo Fantasy}-[Blond Hair, Blowjob, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, Religious].mp4 (231.38 MB)... +Processing: A Taboo Fantasy_Foot-Fetish-Confession.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Foot-Fetish-Confession.mp4 (251.79 MB)... +Scanning directory: /videos/taboofantasy/miller.twins +Processing: A Taboo Fantasy_Wedding-Day.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Wedding-Day.mp4 (316.51 MB)... +Processing: STOP HUMPING YOUR SISTER!!!-(Nikki Sixxx, Rachel Sterling)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Incest, Pussy Fingering, Pussy Licking, creampie].mp4 (Mode: scene) +Downloading STOP HUMPING YOUR SISTER!!!-(Nikki Sixxx, Rachel Sterling)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Incest, Pussy Fingering, Pussy Licking, creampie].mp4 (367.31 MB)... +Processing: c1823ed1893614d4ed1197d1fddbbb99.mp4 (Mode: scene) +Downloading c1823ed1893614d4ed1197d1fddbbb99.mp4 (86.12 MB)... +Processing: THE MILLER TWINS-(Nikki Sixxx, Rachel Sterling)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Cum in Mouth, Family Roleplay, Hairless Pussy, Incest, Mouth Creampie, Pussy Licking, Sister].mp4 (Mode: scene) +Downloading THE MILLER TWINS-(Nikki Sixxx, Rachel Sterling)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Cum in Mouth, Family Roleplay, Hairless Pussy, Incest, Mouth Creampie, Pussy Licking, Sister].mp4 (427.22 MB)... +Processing: The_Miller_Twins_Family_Album.mp4 (Mode: scene) +Downloading The_Miller_Twins_Family_Album.mp4 (742.36 MB)... +Scanning directory: /videos/taboofantasy/zoe.tf +Processing: Compressed_A Taboo Fantasy_A-DICK-PIC-OF-MY-BROTHERS.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_A-DICK-PIC-OF-MY-BROTHERS.mp4 (269.24 MB)... +Scanning directory: /videos/taboofantasy/hannah.tf +Processing: HANNAH THE HOOKER-(Raylynn)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading HANNAH THE HOOKER-(Raylynn)-{Taboo Fantasy}.mp4 (488.94 MB)... +Processing: Hannah’s Family Album.mp4 (Mode: scene) +Downloading Hannah’s Family Album.mp4 (310.06 MB)... +Processing: Ara Testicle Wrestling_hellblade1282_720p.mp4 (Mode: scene) +Downloading Ara Testicle Wrestling_hellblade1282_720p.mp4 (215.65 MB)... +Processing: A Taboo Fantasy_Stay-Away-From-Your-Brother.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Stay-Away-From-Your-Brother.mp4 (360.87 MB)... +Processing: A Taboo Fantasy_Lady-of-The-House.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Lady-of-The-House.mp4 (548.55 MB)... +Scanning directory: /videos/taboofantasy/valentina.sutherland +Processing: A Taboo Fantasy_VALENTINAS-HUMILIATING-DOMINATION.mp4 (Mode: scene) +Downloading A Taboo Fantasy_VALENTINAS-HUMILIATING-DOMINATION.mp4 (1167.85 MB)... +Scanning directory: /videos/taboofantasy/jessie.young +Processing: A Taboo Fantasy_Daughter-Magical Fertility Necklace.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Daughter-Magical Fertility Necklace.mp4 (282.69 MB)... +Processing: Jessie Young is her Daddys Dinner - INCESTFLIX.COM-1.mp4 (Mode: scene) +Downloading Jessie Young is her Daddys Dinner - INCESTFLIX.COM-1.mp4 (81.14 MB)... +Processing: Compressed_A Taboo Fantasy_Sister-of-The-Night.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Sister-of-The-Night.mp4 (365.35 MB)... +Processing: Jessie Young workouts with her Dad - INCESTFLIX.COM.mp4 (Mode: scene) +Downloading Jessie Young workouts with her Dad - INCESTFLIX.COM.mp4 (144.26 MB)... +Processing: Compressed_A Taboo Fantasy_Family-Therapy-Session.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Family-Therapy-Session.mp4 (368.73 MB)... +Scanning directory: /videos/taboofantasy/maria.longoria +Processing: Compressed_A Taboo Fantasy_MARIA-LONGORIAS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_MARIA-LONGORIAS-FAMILY-ALBUM.mp4 (855.54 MB)... +Scanning directory: /videos/taboofantasy/belle-1 +Processing: Belle's Family Album Vol. 1.mp4 (Mode: scene) +Downloading Belle's Family Album Vol. 1.mp4 (1329.47 MB)... +Processing: Belle's Family Album Vol. 2.mp4 (Mode: scene) +Downloading Belle's Family Album Vol. 2.mp4 (1660.45 MB)... +Scanning directory: /videos/taboofantasy/kallie.taylor +Processing: limp - 8335 THE KALLIE TAYLOR FAMILY ALBUM HD 720p.mp4 (Mode: scene) +Downloading limp - 8335 THE KALLIE TAYLOR FAMILY ALBUM HD 720p.mp4 (1555.55 MB)... +Processing: The Kallie Taylor Family Album.mp4 (Mode: scene) +Downloading The Kallie Taylor Family Album.mp4 (1555.55 MB)... +Scanning directory: /videos/taboofantasy/eva.tf +Processing: iPHONE 6-(Eva Long)-{Taboo Fantasy}-[Big Tits, Blowjob, Brown Hair, Cum in Mouth, Daughter, Fake Tits, Family Roleplay, Father, Hairless Labia, Latina Woman, Mouth Creampie, Older Man - Younger Woman, Pussy Licking, Sexual Favor, Trimmed Pussy].mp4 (Mode: scene) +Downloading iPHONE 6-(Eva Long)-{Taboo Fantasy}-[Big Tits, Blowjob, Brown Hair, Cum in Mouth, Daughter, Fake Tits, Family Roleplay, Father, Hairless Labia, Latina Woman, Mouth Creampie, Older Man - Younger Woman, Pussy Licking, Sexual Favor, Trimmed Pussy].mp4 (339.72 MB)... +Processing: Compressed_A Taboo Fantasy_Stop-Smoking.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Stop-Smoking.mp4 (467.82 MB)... +Processing: A Taboo Fantasy_I-Know-What-Daddy-Likes.mp4 (Mode: scene) +Downloading A Taboo Fantasy_I-Know-What-Daddy-Likes.mp4 (402.26 MB)... +Scanning directory: /videos/taboofantasy/tellula.rose +Processing: Tellulah's Family Album.mp4 (Mode: scene) +Downloading Tellulah's Family Album.mp4 (2026.57 MB)... +Processing: KEEP IT IN THE FAMILY-(Tellula Rose)-{Taboo Fantasy}-[Black Hair, Blowjob, Brother, Daughter, Family Roleplay, Father, Hairless Labia, Natural Tits, Pussy Licking, Sister, Teen Girl (18–22), Trimmed Pussy, creampie].mp4 (Mode: scene) +Downloading KEEP IT IN THE FAMILY-(Tellula Rose)-{Taboo Fantasy}-[Black Hair, Blowjob, Brother, Daughter, Family Roleplay, Father, Hairless Labia, Natural Tits, Pussy Licking, Sister, Teen Girl (18–22), Trimmed Pussy, creampie].mp4 (424.75 MB)... +Processing: A Taboo Fantasy_Fucking-My-Daddy.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Fucking-My-Daddy.mp4 (364.74 MB)... +Processing: Tellula Rose Cosplaying wonder woman and getting fucked - XV.mp4 (Mode: scene) +Downloading Tellula Rose Cosplaying wonder woman and getting fucked - XV.mp4 (213.12 MB)... +Processing: THE EXTRA PUNISHMENT-(Tellula Rose)-{Taboo Fantasy}-[Black Hair, Blowjob, Daughter, Facial, Family Roleplay, Father, Hairless Pussy, Older Man - Younger Woman, Pussy Licking, Spanking, Teen Girl (18–22), Trimmed Pussy].mp4 (Mode: scene) +Downloading THE EXTRA PUNISHMENT-(Tellula Rose)-{Taboo Fantasy}-[Black Hair, Blowjob, Daughter, Facial, Family Roleplay, Father, Hairless Pussy, Older Man - Younger Woman, Pussy Licking, Spanking, Teen Girl (18–22), Trimmed Pussy].mp4 (489.16 MB)... +Processing: Compressed_A Taboo Fantasy_Thunder-Buddies.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Thunder-Buddies.mp4 (262.40 MB)... +Scanning directory: /videos/taboofantasy/megan.sky +Processing: A Taboo Fantasy_MEGAN-SKYS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_MEGAN-SKYS-FAMILY-ALBUM.mp4 (1534.75 MB)... +Scanning directory: /videos/taboofantasy/kylie.nicole +Processing: DAUGHTER WITH BENEFITS!!-(Kylie Nicole)-{Taboo Fantasy}-[Blond Hair, Blowjob, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, Small Tits, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading DAUGHTER WITH BENEFITS!!-(Kylie Nicole)-{Taboo Fantasy}-[Blond Hair, Blowjob, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, Small Tits, Teen Girl (18–22)].mp4 (575.88 MB)... +Processing: A Taboo Fantasy_Daughter-Little-Cock-Teaser.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Daughter-Little-Cock-Teaser.mp4 (522.57 MB)... +Processing: THE FORBIDDEN FRUIT!!-(Kylie Nicole)-{Taboo Fantasy}-[Blond Hair, Daughter, Family Roleplay, Father, Older Man - Younger Woman, Pussy Licking, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading THE FORBIDDEN FRUIT!!-(Kylie Nicole)-{Taboo Fantasy}-[Blond Hair, Daughter, Family Roleplay, Father, Older Man - Younger Woman, Pussy Licking, Teen Girl (18–22)].mp4 (657.44 MB)... +Processing: A Taboo Fantasy_Full-Moon-Fever.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Full-Moon-Fever.mp4 (217.15 MB)... +Scanning directory: /videos/taboofantasy/april.tf +Processing: Compressed_A Taboo Fantasy_I-Control-My-Daddy.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_I-Control-My-Daddy.mp4 (208.34 MB)... +Processing: A Taboo Fantasy_Daddys-Relaxed.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Daddys-Relaxed.mp4 (276.92 MB)... +Scanning directory: /videos/taboofantasy/soleil.marks +Processing: Watch Stepsister Soleil Marks wants anal - Sister, Brother, .mp4 (Mode: scene) +Downloading Watch Stepsister Soleil Marks wants anal - Sister, Brother, .mp4 (164.74 MB)... +Processing: 26745 Soleis Family Album.mp4 (Mode: scene) +Downloading 26745 Soleis Family Album.mp4 (658.40 MB)... +Processing: Compressed_A Taboo Fantasy_Relaxed-Fuck.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Relaxed-Fuck.mp4 (296.70 MB)... +Processing: BLACKMAILED SISTER-(Soleil Marks)-{Taboo Fantasy}-[Brother, Family Roleplay, Hairless Pussy, Natural Tits, Teen Girl (18–22), taboofantasy].mp4 (Mode: scene) +Downloading BLACKMAILED SISTER-(Soleil Marks)-{Taboo Fantasy}-[Brother, Family Roleplay, Hairless Pussy, Natural Tits, Teen Girl (18–22), taboofantasy].mp4 (239.48 MB)... +Processing: MY SISTER SUCKED MY COCK BY FORCE-(Soleil Marks)-{Taboo Fantasy}-[Blowjob, Brother, CFNM, Cum in Mouth, Family Roleplay, Humiliation, Older Man - Younger Woman, Restraints, Short Woman].mp4 (Mode: scene) +Downloading MY SISTER SUCKED MY COCK BY FORCE-(Soleil Marks)-{Taboo Fantasy}-[Blowjob, Brother, CFNM, Cum in Mouth, Family Roleplay, Humiliation, Older Man - Younger Woman, Restraints, Short Woman].mp4 (344.86 MB)... +Processing: Soleil Saunders Gives Daddy A Lap Dance And Blows Me! - XVID.mp4 (Mode: scene) +Downloading Soleil Saunders Gives Daddy A Lap Dance And Blows Me! - XVID.mp4 (405.74 MB)... +Processing: Blonde cutie Soleil fucks her toy and sucks some dick - XVID.mp4 (Mode: scene) +Downloading Blonde cutie Soleil fucks her toy and sucks some dick - XVID.mp4 (101.21 MB)... +Processing: Skinny teen Soleil loves to fuck - XVIDEOS.COM.mp4 (Mode: scene) +Downloading Skinny teen Soleil loves to fuck - XVIDEOS.COM.mp4 (13.67 MB)... +Processing: Compressed_A Taboo Fantasy_I-Fucked-My-Sister.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_I-Fucked-My-Sister.mp4 (197.38 MB)... +Processing: A Taboo Fantasy_SOLEIS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_SOLEIS-FAMILY-ALBUM.mp4 (1419.17 MB)... +Processing: POVLife Halloween Special Petite Soleil fucked facialized - .mp4 (Mode: scene) +Downloading POVLife Halloween Special Petite Soleil fucked facialized - .mp4 (37.86 MB)... +Processing: Compressed_A Taboo Fantasy_My-Sisters-Hot-Feet.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_My-Sisters-Hot-Feet.mp4 (284.72 MB)... +Scanning directory: /videos/taboofantasy/celestina.blooms +Processing: The Celestina Blooms Family Album.mp4 (Mode: scene) +Downloading The Celestina Blooms Family Album.mp4 (389.44 MB)... +Scanning directory: /videos/taboofantasy/rosalee.tf +Processing: A Taboo Fantasy_MY-SISTER-POPPED-MY-CHERRY.mp4 (Mode: scene) +Downloading A Taboo Fantasy_MY-SISTER-POPPED-MY-CHERRY.mp4 (438.73 MB)... +Processing: aincest_-_32652_Daddys_Girl_Volume_24.mp4 (Mode: scene) +Downloading aincest_-_32652_Daddys_Girl_Volume_24.mp4 (180.16 MB)... +Processing: ROSALEE'S ALLOWANCE-(Rosalee Cox)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Condom, Cum on Body, Daughter, Facial, Family Roleplay, Father, Hairless Pussy, Hardcore, Natural Tits, Older Man - Younger Woman, Pussy Licking, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading ROSALEE'S ALLOWANCE-(Rosalee Cox)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Condom, Cum on Body, Daughter, Facial, Family Roleplay, Father, Hairless Pussy, Hardcore, Natural Tits, Older Man - Younger Woman, Pussy Licking, Teen Girl (18–22)].mp4 (402.51 MB)... +Processing: A Taboo Fantasy_WATCHING-PORN-WITH-MY-BROTHER.mp4 (Mode: scene) +Downloading A Taboo Fantasy_WATCHING-PORN-WITH-MY-BROTHER.mp4 (393.12 MB)... +Scanning directory: /videos/taboofantasy/alice.chambers +Processing: ALICE CHAMBERS' FAMILY ALBUM-{Taboo Fantasy}-[Big Tits, Blowjob, Compilation, Cum in Mouth, Daughter, Family Roleplay, Father, Hairless Pussy, Mouth Creampie, Natural Tits, Older Man - Younger Woman, Pussy Licking].mp4 (Mode: scene) +Downloading ALICE CHAMBERS' FAMILY ALBUM-{Taboo Fantasy}-[Big Tits, Blowjob, Compilation, Cum in Mouth, Daughter, Family Roleplay, Father, Hairless Pussy, Mouth Creampie, Natural Tits, Older Man - Younger Woman, Pussy Licking].mp4 (1830.72 MB)... +Processing: Step Into My Shower-(Alice Chambers)-{Family Strokes}.mp4 (Mode: scene) +Downloading Step Into My Shower-(Alice Chambers)-{Family Strokes}.mp4 (190.21 MB)... +Scanning directory: /videos/taboofantasy/destiny.cruz +Processing: The Destiny Cruz Family Album.mp4 (Mode: scene) +Downloading The Destiny Cruz Family Album.mp4 (1204.96 MB)... +Scanning directory: /videos/taboofantasy/alexis2 +Processing: COCK BLOCKED BY MY SISTER!!-(Alexis)-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Condom, Family Roleplay, Gonzo, Hairless Pussy, Pussy Licking, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading COCK BLOCKED BY MY SISTER!!-(Alexis)-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Condom, Family Roleplay, Gonzo, Hairless Pussy, Pussy Licking, Teen Girl (18–22)].mp4 (344.66 MB)... +Processing: A Taboo Fantasy_STRIP-SCRABBLE.mp4 (Mode: scene) +Downloading A Taboo Fantasy_STRIP-SCRABBLE.mp4 (391.67 MB)... +Processing: Compressed_A Taboo Fantasy_A-Family-Game.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_A-Family-Game.mp4 (448.68 MB)... +Scanning directory: /videos/taboofantasy/erin.tf +Processing: Erins Family Album HD2.mp4 (Mode: scene) +Downloading Erins Family Album HD2.mp4 (187.78 MB)... +Processing: A Taboo Fantasy_The-Eldest-Daughter.mp4 (Mode: scene) +Downloading A Taboo Fantasy_The-Eldest-Daughter.mp4 (431.67 MB)... +Processing: TOUGH LOVE-(Marilyn)-{Taboo Fantasy}-[BBW, Big Ass, Big Tits, Blond Hair, Blowjob, Cum in Mouth, Daughter, Deepthroat, Family Roleplay, Father, Hairless Pussy, Mouth Creampie, Older Man - Younger Woman, Spanking, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading TOUGH LOVE-(Marilyn)-{Taboo Fantasy}-[BBW, Big Ass, Big Tits, Blond Hair, Blowjob, Cum in Mouth, Daughter, Deepthroat, Family Roleplay, Father, Hairless Pussy, Mouth Creampie, Older Man - Younger Woman, Spanking, Teen Girl (18–22)].mp4 (357.34 MB)... +Scanning directory: /videos/taboofantasy/compilations-1 +Processing: Breaking Curfew Vol. 2.mp4 (Mode: scene) +Downloading Breaking Curfew Vol. 2.mp4 (1970.95 MB)... +Processing: A Taboo Fantasy_TABOO-SODOMY-gtgtgtgtgt-ALMOST-AN-HOUR.mp4 (Mode: scene) +Downloading A Taboo Fantasy_TABOO-SODOMY-gtgtgtgtgt-ALMOST-AN-HOUR.mp4 (1267.25 MB)... +Processing: Daddy's Girls Vol. 32.mp4 (Mode: scene) +Downloading Daddy's Girls Vol. 32.mp4 (1037.78 MB)... +Processing: Step-Daddy's Girls Vol. 39.mp4 (Mode: scene) +Downloading Step-Daddy's Girls Vol. 39.mp4 (1601.67 MB)... +Processing: Daddy's Girls Vol. 35.mp4 (Mode: scene) +Downloading Daddy's Girls Vol. 35.mp4 (1633.81 MB)... +Processing: Daddys Girls Vol 37.mp4 (Mode: scene) +Downloading Daddys Girls Vol 37.mp4 (1984.47 MB)... +Processing: Bedtime Stories Vol 1.mp4 (Mode: scene) +Downloading Bedtime Stories Vol 1.mp4 (1185.50 MB)... +Processing: Family Prgnces Vol. 2.mp4 (Mode: scene) +Downloading Family Prgnces Vol. 2.mp4 (2253.64 MB)... +Processing: All In The Family Vol 6.mp4 (Mode: scene) +Downloading All In The Family Vol 6.mp4 (1716.55 MB)... +Processing: Step Brother Fuckers Vol 27.mp4 (Mode: scene) +Downloading Step Brother Fuckers Vol 27.mp4 (1761.73 MB)... +Processing: Step-Mother Fuckers Vol. 25.mp4 (Mode: scene) +Downloading Step-Mother Fuckers Vol. 25.mp4 (2756.12 MB)... +Processing: All In The Family Volume 1.mp4 (Mode: scene) +Downloading All In The Family Volume 1.mp4 (1360.14 MB)... +Processing: Daddys Girl Vol 28.mp4 (Mode: scene) +Downloading Daddys Girl Vol 28.mp4 (1608.46 MB)... +Processing: A Taboo Fantasy_WERE-HAVING-A-BABY-gtgtgt-12-PRICE.mp4 (Mode: scene) +Downloading A Taboo Fantasy_WERE-HAVING-A-BABY-gtgtgt-12-PRICE.mp4 (1155.19 MB)... +Processing: Step-Mother Fuckers Vol. 22.mp4 (Mode: scene) +Downloading Step-Mother Fuckers Vol. 22.mp4 (2044.90 MB)... +Processing: Family Pregnancies Vol. 5.mp4 (Mode: scene) +Downloading Family Pregnancies Vol. 5.mp4 (2584.44 MB)... +Processing: Cherry Poppins Vol. 2-2.mp4 (Mode: scene) +Downloading Cherry Poppins Vol. 2-2.mp4 (2612.36 MB)... +Processing: Cherry Poppins Vol. 1.mp4 (Mode: scene) +Downloading Cherry Poppins Vol. 1.mp4 (2272.10 MB)... +Processing: Brother Fuckers Vol 19 HD 1080p.mp4 (Mode: scene) +Downloading Brother Fuckers Vol 19 HD 1080p.mp4 (1224.00 MB)... +Processing: A Taboo Fantasy_HIGH-CHICKS-gt-ALMOST-1HR-gt-12-PRICE.mp4 (Mode: scene) +Downloading A Taboo Fantasy_HIGH-CHICKS-gt-ALMOST-1HR-gt-12-PRICE.mp4 (978.17 MB)... +Processing: Strictly Taboo Vol. 4.mp4 (Mode: scene) +Downloading Strictly Taboo Vol. 4.mp4 (1736.48 MB)... +Processing: Strictly Taboo Vol. 3.mp4 (Mode: scene) +Downloading Strictly Taboo Vol. 3.mp4 (1607.91 MB)... +Processing: Strictly Taboo Vol. 11.mp4 (Mode: scene) +Downloading Strictly Taboo Vol. 11.mp4 (1646.00 MB)... +Processing: Strictly Taboo Vol 14.mp4 (Mode: scene) +Downloading Strictly Taboo Vol 14.mp4 (1595.12 MB)... +Processing: Daddy's Girls Volume 30 HD.mp4 (Mode: scene) +Downloading Daddy's Girls Volume 30 HD.mp4 (1217.80 MB)... +Processing: Brother Fuckers Vol. 26.mp4 (Mode: scene) +Downloading Brother Fuckers Vol. 26.mp4 (805.42 MB)... +Processing: Step-Brother Fuckers Vol. 28.mp4 (Mode: scene) +Downloading Step-Brother Fuckers Vol. 28.mp4 (1798.94 MB)... +Processing: Step-Daddy's Girls Vol. 38.mp4 (Mode: scene) +Downloading Step-Daddy's Girls Vol. 38.mp4 (1851.15 MB)... +Processing: Breaking Curfew Vol. 4.mp4 (Mode: scene) +Downloading Breaking Curfew Vol. 4.mp4 (1912.95 MB)... +Processing: Daddy's Girls Vol. 33.mp4 (Mode: scene) +Downloading Daddy's Girls Vol. 33.mp4 (1267.25 MB)... +Processing: [clips4sale.com]brotherfuckersvolume10hd-003.mp4 (Mode: scene) +Downloading [clips4sale.com]brotherfuckersvolume10hd-003.mp4 (1756.91 MB)... +Processing: Brother Fuckers Vol. 28.mp4 (Mode: scene) +Downloading Brother Fuckers Vol. 28.mp4 (1986.80 MB)... +Processing: Strictly Taboo Vol. 2.mp4 (Mode: scene) +Downloading Strictly Taboo Vol. 2.mp4 (1890.32 MB)... +Processing: Strictly Taboo Vol. 10.mp4 (Mode: scene) +Downloading Strictly Taboo Vol. 10.mp4 (1950.15 MB)... +Processing: Daddy's Girls Vol 27.mp4 (Mode: scene) +Downloading Daddy's Girls Vol 27.mp4 (1791.17 MB)... +Processing: Strictly Taboo Vol. 5.mp4 (Mode: scene) +Downloading Strictly Taboo Vol. 5.mp4 (1355.20 MB)... +Processing: Step-Mother Fuckers 24.mp4 (Mode: scene) +Downloading Step-Mother Fuckers 24.mp4 (2770.34 MB)... +Processing: Brother Fuckers Vol 27.mp4 (Mode: scene) +Downloading Brother Fuckers Vol 27.mp4 (1732.91 MB)... +Processing: Step-Mother Fuckers Vol. 23.mp4 (Mode: scene) +Downloading Step-Mother Fuckers Vol. 23.mp4 (1088.95 MB)... +Processing: Family Pregnancies Vol. 3.mp4 (Mode: scene) +Downloading Family Pregnancies Vol. 3.mp4 (2191.15 MB)... +Processing: Strictly Taboo Vol. 6.mp4 (Mode: scene) +Downloading Strictly Taboo Vol. 6.mp4 (1511.31 MB)... +Processing: Strictly Taboo Vol. 14.mp4 (Mode: scene) +Downloading Strictly Taboo Vol. 14.mp4 (2137.39 MB)... +Processing: Strictly Taboo Vol. 13.mp4 (Mode: scene) +Downloading Strictly Taboo Vol. 13.mp4 (1400.09 MB)... +Processing: Cherry Poppins Vol. 3.mp4 (Mode: scene) +Downloading Cherry Poppins Vol. 3.mp4 (1917.41 MB)... +Processing: Bedtime Stories Vol. 2.mp4 (Mode: scene) +Downloading Bedtime Stories Vol. 2.mp4 (2051.67 MB)... +Processing: Family Pr Vol. 4.mp4 (Mode: scene) +Downloading Family Pr Vol. 4.mp4 (1086.48 MB)... +Processing: Cherry Poppins Vol. 4.mp4 (Mode: scene) +Downloading Cherry Poppins Vol. 4.mp4 (2335.13 MB)... +Processing: taboofantasy my sister the pornstar.mp4 (Mode: scene) +Downloading taboofantasy my sister the pornstar.mp4 (1352.78 MB)... +Processing: All In The Family Vol 4.mp4 (Mode: scene) +Downloading All In The Family Vol 4.mp4 (1606.17 MB)... +Processing: All In The Family Vol 3.mp4 (Mode: scene) +Downloading All In The Family Vol 3.mp4 (1342.25 MB)... +Processing: Strictly Taboo 8.mp4 (Mode: scene) +Downloading Strictly Taboo 8.mp4 (1848.68 MB)... +Processing: Brother Fuckers Vol. 22.mp4 (Mode: scene) +Downloading Brother Fuckers Vol. 22.mp4 (1807.68 MB)... +Processing: Cherry.Poppins.Vol..5.mp4 (Mode: scene) +Downloading Cherry.Poppins.Vol..5.mp4 (1150.54 MB)... +Processing: Brother Fuckers Vol. 25.mp4 (Mode: scene) +Downloading Brother Fuckers Vol. 25.mp4 (856.73 MB)... +Processing: Step-Daddy's Girls Vol. 40.mp4 (Mode: scene) +Downloading Step-Daddy's Girls Vol. 40.mp4 (1885.25 MB)... +Processing: Step_Mother_Fuckers_26_1080.mp4 (Mode: scene) +Downloading Step_Mother_Fuckers_26_1080.mp4 (2758.69 MB)... +Processing: The Sperm Diet 1.mp4 (Mode: scene) +Downloading The Sperm Diet 1.mp4 (1867.00 MB)... +Processing: Family Pregnancies Vol. 1.mp4 (Mode: scene) +Downloading Family Pregnancies Vol. 1.mp4 (2182.72 MB)... +Processing: All In The Family Volume 2.mp4 (Mode: scene) +Downloading All In The Family Volume 2.mp4 (1410.39 MB)... +Processing: Cherry Poppins Vol. 2.mp4 (Mode: scene) +Downloading Cherry Poppins Vol. 2.mp4 (2316.78 MB)... +Processing: Bedtime Stories Vol. 3.mp4 (Mode: scene) +Downloading Bedtime Stories Vol. 3.mp4 (1544.37 MB)... +Processing: Strictly Taboo Vol. 12.mp4 (Mode: scene) +Downloading Strictly Taboo Vol. 12.mp4 (1441.54 MB)... +Processing: Grounded Together 1.mp4 (Mode: scene) +Downloading Grounded Together 1.mp4 (1717.13 MB)... +Processing: Strictly Taboo Vol. 15.mp4 (Mode: scene) +Downloading Strictly Taboo Vol. 15.mp4 (1199.43 MB)... +Processing: Daddy's Girls Vol. 36.mp4 (Mode: scene) +Downloading Daddy's Girls Vol. 36.mp4 (1755.93 MB)... +Processing: Brother Fuckers 21.mp4 (Mode: scene) +Downloading Brother Fuckers 21.mp4 (1056.48 MB)... +Processing: Breaking Curfew Vol. 1.mp4 (Mode: scene) +Downloading Breaking Curfew Vol. 1.mp4 (2042.66 MB)... +Processing: Strictly Taboo Vol 7.mp4 (Mode: scene) +Downloading Strictly Taboo Vol 7.mp4 (1505.17 MB)... +Processing: Brother Fuckers Vol. 24.mp4 (Mode: scene) +Downloading Brother Fuckers Vol. 24.mp4 (1577.43 MB)... +Processing: Daddys Girls Vol 34.mp4 (Mode: scene) +Downloading Daddys Girls Vol 34.mp4 (1559.83 MB)... +Processing: Brother Fuckers Vol. 23.mp4 (Mode: scene) +Downloading Brother Fuckers Vol. 23.mp4 (1654.10 MB)... +Processing: Compressed_A Taboo Fantasy_Mom-Took-My-Virginity.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Mom-Took-My-Virginity.mp4 (271.17 MB)... +Processing: Family Orgy Night Season 1.mp4 (Mode: scene) +Downloading Family Orgy Night Season 1.mp4 (1517.54 MB)... +Processing: All In The Family Vol 5.mp4 (Mode: scene) +Downloading All In The Family Vol 5.mp4 (2300.02 MB)... +Scanning directory: /videos/taboofantasy/helena.price +Processing: c5e989aa03f6d5f210d82e204e6fd00d.mp4 (Mode: scene) +Downloading c5e989aa03f6d5f210d82e204e6fd00d.mp4 (477.28 MB)... +Processing: A Teachers Life Part 2 - Pimping Out One Of My Students!-(Helena Price, Alice Merchesi)-{Helenas Cock Quest}-[Blond Hair, Brown Hair, Hairy Pussy, Mouth Creampie, Older - Younger, Short Woman, Teen Girl (18–22), Threesome, Threesome (BGG), Wife].mp4 (Mode: scene) +Downloading A Teachers Life Part 2 - Pimping Out One Of My Students!-(Helena Price, Alice Merchesi)-{Helenas Cock Quest}-[Blond Hair, Brown Hair, Hairy Pussy, Mouth Creampie, Older - Younger, Short Woman, Teen Girl (18–22), Threesome, Threesome (BGG), Wife].mp4 (602.83 MB)... +Processing: Helena Price - My Slutty Stepmom Lets me Bang her Hairy MILF Twat before my Clueless Step Father Arrives Home_Mylf_720p.mp4 (Mode: scene) +Downloading Helena Price - My Slutty Stepmom Lets me Bang her Hairy MILF Twat before my Clueless Step Father Arrives Home_Mylf_720p.mp4 (390.28 MB)... +Processing: Horny Step-Mommy Consoles Heart Broken Step-Son-(Helena Price)-{My Pervy Family}-[Big Ass, Cheating, MILF (30+), Moaning, creampie, taboo].mp4 (Mode: scene) +Downloading Horny Step-Mommy Consoles Heart Broken Step-Son-(Helena Price)-{My Pervy Family}-[Big Ass, Cheating, MILF (30+), Moaning, creampie, taboo].mp4 (687.59 MB)... +Processing: A Taboo Fantasy_THE-HELENA-PRICE-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_THE-HELENA-PRICE-FAMILY-ALBUM.mp4 (1700.51 MB)... +Scanning directory: /videos/taboofantasy/sara.tf +Processing: Compressed_A Taboo Fantasy_SARAS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_SARAS-FAMILY-ALBUM.mp4 (1026.92 MB)... +Scanning directory: /videos/taboofantasy/anastasia.rose +Processing: [clips4sale.com]anastasia Rose - My Slutty Daughter [720p].mp4 (Mode: scene) +Downloading [clips4sale.com]anastasia Rose - My Slutty Daughter [720p].mp4 (169.15 MB)... +Processing: Halloweeny-(-).mp4 (Mode: scene) +Downloading Halloweeny-(-).mp4 (242.47 MB)... +Processing: anastasiarose_dryhumpgrinding_widescreen.mp4 (Mode: scene) +Downloading anastasiarose_dryhumpgrinding_widescreen.mp4 (36.51 MB)... +Processing: DadCrush - Anastasia Rose - Epic Father Daughter Road Trip D.mp4 (Mode: scene) +Downloading DadCrush - Anastasia Rose - Epic Father Daughter Road Trip D.mp4 (926.99 MB)... +Processing: Step-Sister Wants to Get in with the Cool Girls.mp4 (Mode: scene) +Downloading Step-Sister Wants to Get in with the Cool Girls.mp4 (638.65 MB)... +Processing: Anastasia The Piss Machine-(Anastasia Rose, Dixie Comet)-{That Pee Girl}-[Golden Shower].mp4 (Mode: scene) +Downloading Anastasia The Piss Machine-(Anastasia Rose, Dixie Comet)-{That Pee Girl}-[Golden Shower].mp4 (253.92 MB)... +Processing: Anal Satisfies The Landlord 2021 HD 1080p ASTL__1080_2021 Wa.mp4 (Mode: scene) +Downloading Anal Satisfies The Landlord 2021 HD 1080p ASTL__1080_2021 Wa.mp4 (196.05 MB)... +Processing: nmwg e181 anastasia rose and melanie hicks anal nanny Watch .mp4 (Mode: scene) +Downloading nmwg e181 anastasia rose and melanie hicks anal nanny Watch .mp4 (398.35 MB)... +Processing: [clips4sale.com]anastasia_rose_brother_anal.mp4 (Mode: scene) +Downloading [clips4sale.com]anastasia_rose_brother_anal.mp4 (627.39 MB)... +Processing: nmwg e149 anastasia rose grandpa be my boyfriend Watch porn .mp4 (Mode: scene) +Downloading nmwg e149 anastasia rose grandpa be my boyfriend Watch porn .mp4 (141.76 MB)... +Processing: [clips4sale.com]Anastasia Rose - Pluck My Rosebud Daddy [720p].mp4 (Mode: scene) +Downloading [clips4sale.com]Anastasia Rose - Pluck My Rosebud Daddy [720p].mp4 (306.69 MB)... +Processing: [clips4sale.com]Anastasia Rose - Home for Thanksgiving [720p].mp4 (Mode: scene) +Downloading [clips4sale.com]Anastasia Rose - Home for Thanksgiving [720p].mp4 (269.01 MB)... +Processing: Jack Samples the Pussy-(Anastasia Rose)-{Private Society}-[69, Amateur, Blowjob, Cum in Mouth, Doggy Style, Older Man - Younger Woman, Pussy Licking].mp4 (Mode: scene) +Downloading Jack Samples the Pussy-(Anastasia Rose)-{Private Society}-[69, Amateur, Blowjob, Cum in Mouth, Doggy Style, Older Man - Younger Woman, Pussy Licking].mp4 (242.94 MB)... +Processing: BREAKING CURFEW EPISODE 4-(Anastasia Rose)-{Taboo Fantasy}-[Blowjob, Brown Hair, Cum Swallowing, Cum in Mouth, Family Roleplay, Natural Tits, Older Man - Younger Woman, Pussy Licking, Step Dad, Step Daughter, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading BREAKING CURFEW EPISODE 4-(Anastasia Rose)-{Taboo Fantasy}-[Blowjob, Brown Hair, Cum Swallowing, Cum in Mouth, Family Roleplay, Natural Tits, Older Man - Younger Woman, Pussy Licking, Step Dad, Step Daughter, Teen Girl (18–22)].mp4 (340.72 MB)... +Processing: 42978647_Brother & Sister Play 7 Minutes in Heaven - POV, Siblings, Family - Anastasia Rose.mp4 (Mode: scene) +Downloading 42978647_Brother & Sister Play 7 Minutes in Heaven - POV, Siblings, Family - Anastasia Rose.mp4 (49.36 MB)... +Processing: A Taboo Fantasy_A-FAMILY-PREGNANCY.mp4 (Mode: scene) +Downloading A Taboo Fantasy_A-FAMILY-PREGNANCY.mp4 (347.58 MB)... +Processing: Anastasia_Rose_Family Album 2.mp4 (Mode: scene) +Downloading Anastasia_Rose_Family Album 2.mp4 (1183.68 MB)... +Processing: Step-Daddy I'm Cuummmming-(Anastasia Rose)-{Taboo Diaries}-[Big Dick, Big Tits, Cumshot, Upskirt, taboo].mp4 (Mode: scene) +Downloading Step-Daddy I'm Cuummmming-(Anastasia Rose)-{Taboo Diaries}-[Big Dick, Big Tits, Cumshot, Upskirt, taboo].mp4 (434.38 MB)... +Scanning directory: /videos/taboofantasy/claire.heart +Processing: A Taboo Fantasy_Our-Little-Girl-Is-Horny.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Our-Little-Girl-Is-Horny.mp4 (350.73 MB)... +Processing: Claires_Family_Album_2.mp4 (Mode: scene) +Downloading Claires_Family_Album_2.mp4 (639.68 MB)... +Processing: TEASING DADDY'S COCK-(Claire Heart, Ciara Blue)-{Taboo Fantasy}-[Big Tits, Blowjob, Brown Hair, Daughter, Fake Tits, Family Roleplay, Father, MILF (30+), Mother, Natural Tits, Older Man - Younger Woman, Restraints, Ruined Orgasm].mp4 (Mode: scene) +Downloading TEASING DADDY'S COCK-(Claire Heart, Ciara Blue)-{Taboo Fantasy}-[Big Tits, Blowjob, Brown Hair, Daughter, Fake Tits, Family Roleplay, Father, MILF (30+), Mother, Natural Tits, Older Man - Younger Woman, Restraints, Ruined Orgasm].mp4 (303.90 MB)... +Processing: DADDY FUCKED ME-(Claire Heart)-{Taboo Fantasy}-[Blowjob, Brown Hair, Cumshot, Daughter, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Short Woman, Teen Girl (18–22), cum on tits].mp4 (Mode: scene) +Downloading DADDY FUCKED ME-(Claire Heart)-{Taboo Fantasy}-[Blowjob, Brown Hair, Cumshot, Daughter, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Short Woman, Teen Girl (18–22), cum on tits].mp4 (209.16 MB)... +Processing: A Taboo Fantasy_Spying-On-Daughter.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Spying-On-Daughter.mp4 (213.43 MB)... +Processing: Fuck Me Senseless Uncle Bob HD - XVIDEOS.COM.mp4 (Mode: scene) +Downloading Fuck Me Senseless Uncle Bob HD - XVIDEOS.COM.mp4 (500.22 MB)... +Processing: Compressed_A Taboo Fantasy_My-Dad-Came-In-My-Face.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_My-Dad-Came-In-My-Face.mp4 (226.73 MB)... +Processing: Compressed_A Taboo Fantasy_Fucking-My-Bound-Daddy.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Fucking-My-Bound-Daddy.mp4 (259.70 MB)... +Processing: SPANKED BY DADDY-(Claire Heart)-{Taboo Fantasy}-[Blowjob, Cum in Mouth, Daughter, Facial, Family Roleplay, Father, Spanking, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading SPANKED BY DADDY-(Claire Heart)-{Taboo Fantasy}-[Blowjob, Cum in Mouth, Daughter, Facial, Family Roleplay, Father, Spanking, Teen Girl (18–22)].mp4 (231.97 MB)... +Processing: A Taboo Fantasy_Deflowering-Our-Daughter.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Deflowering-Our-Daughter.mp4 (427.64 MB)... +Processing: Daddys Psycho Girlfriend - Pornhub.com.mp4 (Mode: scene) +Downloading Daddys Psycho Girlfriend - Pornhub.com.mp4 (550.92 MB)... +Processing: Step Dad Crush-(Claire Heart)-{Family Lust}-[Redistribution].mp4 (Mode: scene) +Downloading Step Dad Crush-(Claire Heart)-{Family Lust}-[Redistribution].mp4 (198.47 MB)... +Scanning directory: /videos/taboofantasy/carmen.valentina +Processing: A Taboo Fantasy_GROUNDED-WITH-MOMMY.mp4 (Mode: scene) +Downloading A Taboo Fantasy_GROUNDED-WITH-MOMMY.mp4 (232.17 MB)... +Processing: Compressed_A Taboo Fantasy_I-GOT-MY-STEP-MOM-PREGNANT.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_I-GOT-MY-STEP-MOM-PREGNANT.mp4 (243.04 MB)... +Processing: Compressed_A Taboo Fantasy_I-BLACKMAILED-MY-STEPMOM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_I-BLACKMAILED-MY-STEPMOM.mp4 (310.62 MB)... +Scanning directory: /videos/taboofantasy/candy.tf +Processing: MOTHER DAUGHTER BLOWJOB-(Faith Anderson, Candy Anderson)-{Taboo Fantasy}-[BBW, Brother, Brown Hair, Family Roleplay, Handjob, Handjob to Completion, MILF (30+), Male - POV, Older Woman - Younger Man, Sister].mp4 (Mode: scene) +Downloading MOTHER DAUGHTER BLOWJOB-(Faith Anderson, Candy Anderson)-{Taboo Fantasy}-[BBW, Brother, Brown Hair, Family Roleplay, Handjob, Handjob to Completion, MILF (30+), Male - POV, Older Woman - Younger Man, Sister].mp4 (407.90 MB)... +Processing: A Taboo Fantasy_A-BLOWJOB-FOR-CHRISTMAS.mp4 (Mode: scene) +Downloading A Taboo Fantasy_A-BLOWJOB-FOR-CHRISTMAS.mp4 (360.30 MB)... +Processing: Candys Mother Daughter Orgasm.mp4 (Mode: scene) +Downloading Candys Mother Daughter Orgasm.mp4 (352.04 MB)... +Processing: Compressed_A Taboo Fantasy_FAMILY-REUNION.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_FAMILY-REUNION.mp4 (480.75 MB)... +Processing: Compressed_A Taboo Fantasy_ANOTHER-BLOWJOB-FOR-CHRISTMAS.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_ANOTHER-BLOWJOB-FOR-CHRISTMAS.mp4 (333.76 MB)... +Scanning directory: /videos/taboofantasy/dillon.carter +Processing: [clips4sale.com]dillion Carter In My Mesmerized Daughter Hd.mp4 (Mode: scene) +Downloading [clips4sale.com]dillion Carter In My Mesmerized Daughter Hd.mp4 (580.15 MB)... +Scanning directory: /videos/taboofantasy/carly.rae.tf +Processing: A Taboo Fantasy_CARLY-RAES-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_CARLY-RAES-FAMILY-ALBUM.mp4 (1620.12 MB)... +Processing: A Taboo Fantasy_Daddy-Daughter-Fuck.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Daddy-Daughter-Fuck.mp4 (406.05 MB)... +Scanning directory: /videos/taboofantasy/zoe.rae +Processing: zoeyrae.mp4 (Mode: scene) +Downloading zoeyrae.mp4 (81.61 MB)... +Scanning directory: /videos/taboofantasy/katie.tf +Processing: A Taboo Fantasy_Katie-and-Mike.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Katie-and-Mike.mp4 (157.74 MB)... +Processing: ORAL SIBLINGS-(Katie)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Cum in Mouth, Curvy, Hairless Pussy, Mouth Creampie, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading ORAL SIBLINGS-(Katie)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Cum in Mouth, Curvy, Hairless Pussy, Mouth Creampie, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (150.96 MB)... +Processing: SIBLING ABUSE!-(Katie)-{Taboo Fantasy}-[Blond Hair, Brother, Family Roleplay, Natural Tits, Sister, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading SIBLING ABUSE!-(Katie)-{Taboo Fantasy}-[Blond Hair, Brother, Family Roleplay, Natural Tits, Sister, Teen Girl (18–22)].mp4 (255.82 MB)... +Processing: SISTER'S ANAL CREAMPIE!!-(Katie)-{Taboo Fantasy}-[Anal Sex, Ball Sucking, Blond Hair, Blowjob, Brother, Cum on Ass, Family Roleplay, Hair Pulling, Hairless Pussy, Natural Tits, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading SISTER'S ANAL CREAMPIE!!-(Katie)-{Taboo Fantasy}-[Anal Sex, Ball Sucking, Blond Hair, Blowjob, Brother, Cum on Ass, Family Roleplay, Hair Pulling, Hairless Pussy, Natural Tits, Teen Girl (18–22)].mp4 (175.28 MB)... +Processing: A Taboo Fantasy_Licking-Sisters-Pussy.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Licking-Sisters-Pussy.mp4 (192.87 MB)... +Processing: A Taboo Fantasy_KATIES-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_KATIES-FAMILY-ALBUM.mp4 (790.03 MB)... +Processing: MIKE FUCKS HIS SISTER-(Katie)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Cum on Body, Cum on Stomach, Cumshot, Family Roleplay, Hairless Pussy, Intoxication, Missing Date, Missing or Removed, Natural Tits].mp4 (Mode: scene) +Downloading MIKE FUCKS HIS SISTER-(Katie)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Cum on Body, Cum on Stomach, Cumshot, Family Roleplay, Hairless Pussy, Intoxication, Missing Date, Missing or Removed, Natural Tits].mp4 (323.16 MB)... +Processing: A Taboo Fantasy_Katie-Swallows-Her-Brothers-Cum.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Katie-Swallows-Her-Brothers-Cum.mp4 (125.60 MB)... +Processing: A Taboo Fantasy_KATIES-HOME-MOVIES.mp4 (Mode: scene) +Downloading A Taboo Fantasy_KATIES-HOME-MOVIES.mp4 (559.58 MB)... +Scanning directory: /videos/taboofantasy/kimber.woods +Processing: [clips4sale.com]kimber_woods_brother_bg_scene2_mp4_hdx.mp4 (Mode: scene) +Downloading [clips4sale.com]kimber_woods_brother_bg_scene2_mp4_hdx.mp4 (239.79 MB)... +Scanning directory: /videos/taboofantasy/ashlynn.taylor-1 +Processing: My Stepdaddy Punished My Pussy 2.mp4 (Mode: scene) +Downloading My Stepdaddy Punished My Pussy 2.mp4 (2616.83 MB)... +Processing: Brother Fuckers 2 Scene 1 (casat_ Violet Monroe, Sierra Simmons, Emma Evins, Ashlynn Taylor, Chi Chi Medina)(Desperate Pleasures) [2016 WEB-DL] #porn.mp4 (Mode: scene) +Downloading Brother Fuckers 2 Scene 1 (casat_ Violet Monroe, Sierra Simmons, Emma Evins, Ashlynn Taylor, Chi Chi Medina)(Desperate Pleasures) [2016 WEB-DL] #porn.mp4 (183.90 MB)... +Processing: Brother Fuckers 2 Scene 2 (casat_ Violet Monroe, Sierra Simmons, Emma Evins, Ashlynn Taylor, Chi Chi Medina)(Desperate Pleasures) [2016 WEB-DL] #porn.mp4 (Mode: scene) +Downloading Brother Fuckers 2 Scene 2 (casat_ Violet Monroe, Sierra Simmons, Emma Evins, Ashlynn Taylor, Chi Chi Medina)(Desperate Pleasures) [2016 WEB-DL] #porn.mp4 (171.61 MB)... +Processing: Brother Fuckers 2 Scene 3 (casat_ Violet Monroe, Sierra Simmons, Emma Evins, Ashlynn Taylor, Chi Chi Medina)(Desperate Pleasures) [2016 WEB-DL] #porn.mp4 (Mode: scene) +Downloading Brother Fuckers 2 Scene 3 (casat_ Violet Monroe, Sierra Simmons, Emma Evins, Ashlynn Taylor, Chi Chi Medina)(Desperate Pleasures) [2016 WEB-DL] #porn.mp4 (130.75 MB)... +Processing: Brother Fuckers 2 Scene 5 (casat_ Violet Monroe, Sierra Simmons, Emma Evins, Ashlynn Taylor, Chi Chi Medina)(Desperate Pleasures) [2016 WEB-DL] #porn.mp4 (Mode: scene) +Downloading Brother Fuckers 2 Scene 5 (casat_ Violet Monroe, Sierra Simmons, Emma Evins, Ashlynn Taylor, Chi Chi Medina)(Desperate Pleasures) [2016 WEB-DL] #porn.mp4 (83.67 MB)... +Processing: Ashlynn Taylor - Pregnant #teen #young #pregnant.mp4 (Mode: scene) +Downloading Ashlynn Taylor - Pregnant #teen #young #pregnant.mp4 (134.83 MB)... +Processing: You Came on Her Face After a Great Fuck-(Ashlynn Taylor)-{ATK Girlfriends}.mp4 (Mode: scene) +Downloading You Came on Her Face After a Great Fuck-(Ashlynn Taylor)-{ATK Girlfriends}.mp4 (249.81 MB)... +Processing: A Taboo Fantasy_Fuck-Your-Sister.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Fuck-Your-Sister.mp4 (442.79 MB)... +Processing: Too Big For Teens 7 CD2 (Ashlynn Leigh, Evilyn Fierce, Melanie Rios, Tiffany Star, Courtney Taylor).avi.mp4 (Mode: scene) +Downloading Too Big For Teens 7 CD2 (Ashlynn Leigh, Evilyn Fierce, Melanie Rios, Tiffany Star, Courtney Taylor).avi.mp4 (361.80 MB)... +Processing: Ashlynn Taylor Scene 6 - D is for Daddy Dick.mp4 (Mode: scene) +Downloading Ashlynn Taylor Scene 6 - D is for Daddy Dick.mp4 (105.57 MB)... +Processing: MY SISTER'S AN ESCORT-(Ashlynn Taylor)-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Facial, Hairless Labia, Natural Tits, Short Woman, Small Tits, Teen Girl (18–22), Trimmed Pussy].mp4 (Mode: scene) +Downloading MY SISTER'S AN ESCORT-(Ashlynn Taylor)-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Facial, Hairless Labia, Natural Tits, Short Woman, Small Tits, Teen Girl (18–22), Trimmed Pussy].mp4 (427.86 MB)... +Processing: Slutz-(Ashlynn Taylor, Dava Foxx)-{Mark's Head Bobbers and Hand Jobbers}.mp4 (Mode: scene) +Downloading Slutz-(Ashlynn Taylor, Dava Foxx)-{Mark's Head Bobbers and Hand Jobbers}.mp4 (269.81 MB)... +Processing: Ashlynn Taylor Scene 5 - D is for Daddy Dick.mp4 (Mode: scene) +Downloading Ashlynn Taylor Scene 5 - D is for Daddy Dick.mp4 (114.67 MB)... +Processing: Ashlynn Taylor - You came on her nose this time #4k #blowjob #caucasian #cumonface #dancing #agrezoo ATK Girlfriends.mp4 (Mode: scene) +Downloading Ashlynn Taylor - You came on her nose this time #4k #blowjob #caucasian #cumonface #dancing #agrezoo ATK Girlfriends.mp4 (533.90 MB)... +Processing: A Taboo Fantasy_Truth-or-Dare-TV.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Truth-or-Dare-TV.mp4 (318.97 MB)... +Processing: A Taboo Fantasy_Little-Sister.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Little-Sister.mp4 (295.72 MB)... +Processing: MHBHJ - Ashlynn; Desperate Tenant-(Ashlynn Taylor)-{Mark's Head Bobbers and Hand Jobbers}-[Blowjob, Facial, Open Mouth Facial, Vaginal Sex].mp4 (Mode: scene) +Downloading MHBHJ - Ashlynn; Desperate Tenant-(Ashlynn Taylor)-{Mark's Head Bobbers and Hand Jobbers}-[Blowjob, Facial, Open Mouth Facial, Vaginal Sex].mp4 (820.12 MB)... +Processing: DesperatePleasures 19 11 19 Ashlynn Taylor 1080p FETiSH dp 1.mp4 (Mode: scene) +Downloading DesperatePleasures 19 11 19 Ashlynn Taylor 1080p FETiSH dp 1.mp4 (307.47 MB)... +Processing: Public Sex with Step Bro-(Ashlynn Taylor)-{Family Lust}.mp4 (Mode: scene) +Downloading Public Sex with Step Bro-(Ashlynn Taylor)-{Family Lust}.mp4 (195.44 MB)... +Processing: Over.Attached.Daughter - Tabooheat.mp4 (Mode: scene) +Downloading Over.Attached.Daughter - Tabooheat.mp4 (326.01 MB)... +Processing: Ashlynn Taylor Scene 4 - D is for Daddy Dick.mp4 (Mode: scene) +Downloading Ashlynn Taylor Scene 4 - D is for Daddy Dick.mp4 (167.54 MB)... +Processing: Ashlynn Taylor - You will be adding to the crazyness in N.Y #bathing #bathroom #bigtits #brunette #caucasian #agrezoo ATK Girlfriends.mp4 (Mode: scene) +Downloading Ashlynn Taylor - You will be adding to the crazyness in N.Y #bathing #bathroom #bigtits #brunette #caucasian #agrezoo ATK Girlfriends.mp4 (6.27 MB)... +Scanning directory: /videos/taboofantasy/amber.sativa +Processing: Skylar Madison-(Amber Sativa)-{GloryHole}-[Big Tits, Blond Hair, Cum Swallowing, Hairy Pussy, Tattoos, Twosome (Straight)].mp4 (Mode: scene) +Downloading Skylar Madison-(Amber Sativa)-{GloryHole}-[Big Tits, Blond Hair, Cum Swallowing, Hairy Pussy, Tattoos, Twosome (Straight)].mp4 (168.01 MB)... +Processing: The Donald - Lets Make America GREAT again! 2016 #parody - Scene 2 (Cast_ Donald Trump, Britney Amber, Evan Stone, Skylar Madison, Christie Stevens, Natasha Starr, Subil Arch, Alyssa Lynn).mp4 (Mode: scene) +Downloading The Donald - Lets Make America GREAT again! 2016 #parody - Scene 2 (Cast_ Donald Trump, Britney Amber, Evan Stone, Skylar Madison, Christie Stevens, Natasha Starr, Subil Arch, Alyssa Lynn).mp4 (381.06 MB)... +Processing: AMBER'S WET DREAMS-(Amber Sativa, Ciara Blue)-{Taboo Fantasy}-[Big Dick, Blond Hair, Brother, Family Roleplay, Hairless Pussy, Pussy Fingering, Rimming Her, Sister, Sleeping, creampie].mp4 (Mode: scene) +Downloading AMBER'S WET DREAMS-(Amber Sativa, Ciara Blue)-{Taboo Fantasy}-[Big Dick, Blond Hair, Brother, Family Roleplay, Hairless Pussy, Pussy Fingering, Rimming Her, Sister, Sleeping, creampie].mp4 (240.54 MB)... +Processing: Skylar Madison-(Amber Sativa)-{Jesse Loads Monster Facials}-[American, Blowjob, Deepthroat, Eye Contact, Face Fuck, Facial, Gagging, Masturbation, Tattoos, Tease].mp4 (Mode: scene) +Downloading Skylar Madison-(Amber Sativa)-{Jesse Loads Monster Facials}-[American, Blowjob, Deepthroat, Eye Contact, Face Fuck, Facial, Gagging, Masturbation, Tattoos, Tease].mp4 (1188.43 MB)... +Processing: C4S - Lesbians Enjoy Some Dick Amber Sativa and Violet Starr.mp4 (Mode: scene) +Downloading C4S - Lesbians Enjoy Some Dick Amber Sativa and Violet Starr.mp4 (802.30 MB)... +Processing: Amber Sativa - Gloryhole Slutst.mp4 (Mode: scene) +Downloading Amber Sativa - Gloryhole Slutst.mp4 (166.19 MB)... +Processing: Skylar Madison - #POV.mp4 (Mode: scene) +Downloading Skylar Madison - #POV.mp4 (333.12 MB)... +Processing: Industry Invaders - Aurora Rose (Skylar Madison).mp4 (Mode: scene) +Downloading Industry Invaders - Aurora Rose (Skylar Madison).mp4 (302.67 MB)... +Processing: Skylar Madison sister has addicktion 720p.mp4 (Mode: scene) +Downloading Skylar Madison sister has addicktion 720p.mp4 (69.14 MB)... +Processing: JEALOUS SISTER-(Amber Sativa)-{Taboo Fantasy}-[Big Dick, Blond Hair, Blowjob, Brother, Cum in Mouth, Family Roleplay, Hairless Pussy, Mouth Creampie, Pussy Fingering, Pussy Licking].mp4 (Mode: scene) +Downloading JEALOUS SISTER-(Amber Sativa)-{Taboo Fantasy}-[Big Dick, Blond Hair, Blowjob, Brother, Cum in Mouth, Family Roleplay, Hairless Pussy, Mouth Creampie, Pussy Fingering, Pussy Licking].mp4 (304.79 MB)... +Processing: BEER BUZZ-(Amber Sativa)-{Taboo Fantasy}-[Big Dick, Blowjob, Brother, Cum on Body, Deepthroat, Family Roleplay, Hairless Pussy, Intoxication, Missing Date, Missing or Removed, Natural Tits, Pussy Fingering, Pussy Licking, Sister, cum on tits].mp4 (Mode: scene) +Downloading BEER BUZZ-(Amber Sativa)-{Taboo Fantasy}-[Big Dick, Blowjob, Brother, Cum on Body, Deepthroat, Family Roleplay, Hairless Pussy, Intoxication, Missing Date, Missing or Removed, Natural Tits, Pussy Fingering, Pussy Licking, Sister, cum on tits].mp4 (398.16 MB)... +Processing: Amber Sativa Naughty Midwest.mp4 (Mode: scene) +Downloading Amber Sativa Naughty Midwest.mp4 (37.63 MB)... +Processing: Girls Day In.mp4 (Mode: scene) +Downloading Girls Day In.mp4 (717.24 MB)... +Processing: Skylar Madison - Personal Tape - #POV.mp4 (Mode: scene) +Downloading Skylar Madison - Personal Tape - #POV.mp4 (527.25 MB)... +Processing: eastcoastxxx-aurora-rose-big-tit-virgin-creampie-2017-08-01_kAuDrs.mp4 (Mode: scene) +Downloading eastcoastxxx-aurora-rose-big-tit-virgin-creampie-2017-08-01_kAuDrs.mp4 (146.40 MB)... +Processing: #Lesbian Perverts - Hustler (2018) Cast_ Alice Lighthouse, Belle Noire, Christie Stevens, Deanna Dare, Kristen Lee, Norah Nova, Sarah Jessie, Skylar Madison #bubblebutt #MILF #BigTits.mp4 (Mode: scene) +Downloading #Lesbian Perverts - Hustler (2018) Cast_ Alice Lighthouse, Belle Noire, Christie Stevens, Deanna Dare, Kristen Lee, Norah Nova, Sarah Jessie, Skylar Madison #bubblebutt #MILF #BigTits.mp4 (1381.29 MB)... +Processing: AMBER'S DIARY-(Amber Sativa)-{Taboo Fantasy}-[Big Dick, Blond Hair, Blowjob, Brother, Cumshot, Family Roleplay, Hairless Pussy, Natural Tits, Pussy Fingering, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading AMBER'S DIARY-(Amber Sativa)-{Taboo Fantasy}-[Big Dick, Blond Hair, Blowjob, Brother, Cumshot, Family Roleplay, Hairless Pussy, Natural Tits, Pussy Fingering, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (306.96 MB)... +Processing: Skylar Madison - Hardcore - #footfetish #footjob.mp4 (Mode: scene) +Downloading Skylar Madison - Hardcore - #footfetish #footjob.mp4 (904.55 MB)... +Processing: New Girl In Town 22 Cast_ Pristine Edge, Trillium, Scott Lyons, Lanie Morgan, Porno Dan, Skylar Madison, David Loso, Valentina Paradis #POV.mp4 (Mode: scene) +Downloading New Girl In Town 22 Cast_ Pristine Edge, Trillium, Scott Lyons, Lanie Morgan, Porno Dan, Skylar Madison, David Loso, Valentina Paradis #POV.mp4 (2082.84 MB)... +Scanning directory: /videos/taboofantasy/thompson.twins +Processing: Sandy, Violet - The Thompson Twins Family Orgy - TabooFantasy.mp4 (Mode: scene) +Downloading Sandy, Violet - The Thompson Twins Family Orgy - TabooFantasy.mp4 (136.61 MB)... +Processing: Sandy, Violet - The Thompson Twins Bedtime Story - TabooFantasy.mp4 (Mode: scene) +Downloading Sandy, Violet - The Thompson Twins Bedtime Story - TabooFantasy.mp4 (158.60 MB)... +Processing: Sandy, Violet - The Thompson Twins Sex Ed - TabooFantasy.mp4 (Mode: scene) +Downloading Sandy, Violet - The Thompson Twins Sex Ed - TabooFantasy.mp4 (140.46 MB)... +Processing: Sandy, Violet - The Thompson Twins Punished - TabooFantasy.mp4 (Mode: scene) +Downloading Sandy, Violet - The Thompson Twins Punished - TabooFantasy.mp4 (125.76 MB)... +Scanning directory: /videos/taboofantasy/brianna.tf +Processing: Compressed_A Taboo Fantasy_My-Brother-Took-My-Virginity.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_My-Brother-Took-My-Virginity.mp4 (203.03 MB)... +Processing: A Taboo Fantasy_My-Sister-Is-A-Great-Fuck.mp4 (Mode: scene) +Downloading A Taboo Fantasy_My-Sister-Is-A-Great-Fuck.mp4 (332.49 MB)... +Processing: A Taboo Fantasy_My-Sisters-Relaxed.mp4 (Mode: scene) +Downloading A Taboo Fantasy_My-Sisters-Relaxed.mp4 (296.32 MB)... +Processing: A Taboo Fantasy_The-Game-of-Taboo.mp4 (Mode: scene) +Downloading A Taboo Fantasy_The-Game-of-Taboo.mp4 (333.72 MB)... +Scanning directory: /videos/taboofantasy/remy.and.kitty +Processing: The_Family_Adventures_of_Remy_Kitty.mp4 (Mode: scene) +Downloading The_Family_Adventures_of_Remy_Kitty.mp4 (1295.02 MB)... +Processing: The_Family_Adventures_Of_Remy_Kitty_2.mp4 (Mode: scene) +Downloading The_Family_Adventures_Of_Remy_Kitty_2.mp4 (1328.54 MB)... +Scanning directory: /videos/taboofantasy/janna.hicks +Processing: A Taboo Fantasy_JANNA-HICKS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_JANNA-HICKS-FAMILY-ALBUM.mp4 (1352.82 MB)... +Processing: A Taboo Fantasy_STEPMOTHERS-DAY.mp4 (Mode: scene) +Downloading A Taboo Fantasy_STEPMOTHERS-DAY.mp4 (419.76 MB)... +Scanning directory: /videos/taboofantasy/zoe.clark +Processing: Compressed_A Taboo Fantasy_ZOE-CLARKS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_ZOE-CLARKS-FAMILY-ALBUM.mp4 (1571.20 MB)... +Processing: A Taboo Fantasy_Hot-For-Sister-Episode-2.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Hot-For-Sister-Episode-2.mp4 (496.15 MB)... +Scanning directory: /videos/taboofantasy/ariel.tf +Processing: DEFLOWER YOUR LITTLE BROTHER!!-(Ariel)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Cumshot, Family Roleplay, Handjob, Natural Tits, Sagging Tits, Short Woman, Sister].mp4 (Mode: scene) +Downloading DEFLOWER YOUR LITTLE BROTHER!!-(Ariel)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Cumshot, Family Roleplay, Handjob, Natural Tits, Sagging Tits, Short Woman, Sister].mp4 (336.62 MB)... +Processing: BIG SISTER BLACKMAILED-(Ariel)-{Taboo Fantasy}-[Big Nipples, Big Tits, Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Handjob, Handjob to Completion, Incest, Natural Tits, Sagging Tits].mp4 (Mode: scene) +Downloading BIG SISTER BLACKMAILED-(Ariel)-{Taboo Fantasy}-[Big Nipples, Big Tits, Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Handjob, Handjob to Completion, Incest, Natural Tits, Sagging Tits].mp4 (379.46 MB)... +Processing: A Taboo Fantasy_ARIELS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_ARIELS-FAMILY-ALBUM.mp4 (1187.35 MB)... +Processing: SPYING ON MY BIG SISTER-(Ariel)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Brother, Condom, Cum on Stomach, Family Roleplay, Hairless Labia, Incest, Natural Tits, Sagging Tits, Trimmed Pussy].mp4 (Mode: scene) +Downloading SPYING ON MY BIG SISTER-(Ariel)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Brother, Condom, Cum on Stomach, Family Roleplay, Hairless Labia, Incest, Natural Tits, Sagging Tits, Trimmed Pussy].mp4 (272.55 MB)... +Scanning directory: /videos/taboofantasy/skylar.tf +Processing: Compressed_A Taboo Fantasy_SKYLARS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_SKYLARS-FAMILY-ALBUM.mp4 (1265.77 MB)... +Scanning directory: /videos/taboofantasy/sunshine.tampa +Processing: The.Sunshine.Tampa.Family.Album.mp4 (Mode: scene) +Downloading The.Sunshine.Tampa.Family.Album.mp4 (2824.12 MB)... +Scanning directory: /videos/taboofantasy/courtney.loxx +Processing: Compressed_A Taboo Fantasy_The-Birthday-Present.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_The-Birthday-Present.mp4 (375.96 MB)... +Processing: A Taboo Fantasy_Seduced-By-My-Sister.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Seduced-By-My-Sister.mp4 (235.09 MB)... +Processing: Compressed_A Taboo Fantasy_Blackmailed-Into-Submission.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Blackmailed-Into-Submission.mp4 (316.96 MB)... +Processing: Tatiana Petrova, Courtney Loxx - Brother's Unwanted Valentine's Surprise_ Uncle And His Friend's Cocks And Creampies For Mom And Daughter - Adult Taboo Fantasies.mp4 (Mode: scene) +Downloading Tatiana Petrova, Courtney Loxx - Brother's Unwanted Valentine's Surprise_ Uncle And His Friend's Cocks And Creampies For Mom And Daughter - Adult Taboo Fantasies.mp4 (165.58 MB)... +Processing: A Taboo Fantasy_The-Fertility-Idol.mp4 (Mode: scene) +Downloading A Taboo Fantasy_The-Fertility-Idol.mp4 (266.59 MB)... +Scanning directory: /videos/taboofantasy/alex.banks +Scanning directory: /videos/taboofantasy/lyla.peterson.tf +Processing: LylaPetersonFamilyAlbum.mp4 (Mode: scene) +Downloading LylaPetersonFamilyAlbum.mp4 (2251.57 MB)... +Scanning directory: /videos/taboofantasy/brooklyn.daniels +Processing: A Taboo Fantasy_Poker-Bet.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Poker-Bet.mp4 (338.66 MB)... +Processing: A Taboo Fantasy_Home-Pregnancy-Test.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Home-Pregnancy-Test.mp4 (281.45 MB)... +Processing: A Taboo Fantasy_SWEET-REVENGE-gtgtgtgtgt-12-PRICE.mp4 (Mode: scene) +Downloading A Taboo Fantasy_SWEET-REVENGE-gtgtgtgtgt-12-PRICE.mp4 (370.91 MB)... +Processing: A Taboo Fantasy_Pussy-Power.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Pussy-Power.mp4 (302.53 MB)... +Scanning directory: /videos/taboofantasy/bentley.cross +Processing: Compressed_A Taboo Fantasy_MY-STEP-MOMS-BIG-TITS.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_MY-STEP-MOMS-BIG-TITS.mp4 (407.98 MB)... +Processing: Compressed_A Taboo Fantasy_STRIP-SCRABBLE-WITH-MY-SISTER.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_STRIP-SCRABBLE-WITH-MY-SISTER.mp4 (382.81 MB)... +Processing: BENTLEY'S FAMILY ALBUM-(Bentley Cross)-{Taboo Fantasy}-[Big Areolas, Big Tits, Blowjob, Brown Hair, Compilation, Condom, Daughter, Family Roleplay, Father, Gonzo, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading BENTLEY'S FAMILY ALBUM-(Bentley Cross)-{Taboo Fantasy}-[Big Areolas, Big Tits, Blowjob, Brown Hair, Compilation, Condom, Daughter, Family Roleplay, Father, Gonzo, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Teen Girl (18–22)].mp4 (1455.62 MB)... +Processing: ex - 0197 Homework With Stepmommy.mp4 (Mode: scene) +Downloading ex - 0197 Homework With Stepmommy.mp4 (354.29 MB)... +Scanning directory: /videos/taboofantasy/dallas.diamondz +Processing: MOM'S DRUUNK-(Dallas Diamondz)-{Taboo Fantasy}-[Big Ass, Big Tits, Blond Hair, Blowjob, Condom, Curvy, Family Roleplay, Hairless Pussy, Incest, Intoxication, MILF (30+), Missing or Removed, Mother, Older Woman - Younger Man, Son].mp4 (Mode: scene) +Downloading MOM'S DRUUNK-(Dallas Diamondz)-{Taboo Fantasy}-[Big Ass, Big Tits, Blond Hair, Blowjob, Condom, Curvy, Family Roleplay, Hairless Pussy, Incest, Intoxication, MILF (30+), Missing or Removed, Mother, Older Woman - Younger Man, Son].mp4 (107.26 MB)... +Processing: p0mhcf034l.mp4 (Mode: scene) +Downloading p0mhcf034l.mp4 (187.54 MB)... +Scanning directory: /videos/taboofantasy/unnamed-1 +Processing: A Taboo Fantasy I blackmailed my brother #c4s #incest.mp4 (Mode: scene) +Downloading A Taboo Fantasy I blackmailed my brother #c4s #incest.mp4 (119.90 MB)... +Scanning directory: /videos/taboofantasy/pixie.tf +Processing: Compressed_A Taboo Fantasy_My-Sister-Sucks.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_My-Sister-Sucks.mp4 (222.55 MB)... +Processing: Compressed_A Taboo Fantasy_Sister-Swallows.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Sister-Swallows.mp4 (270.47 MB)... +Processing: A Taboo Fantasy_Brother-Sister-69.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Brother-Sister-69.mp4 (206.55 MB)... +Scanning directory: /videos/taboofantasy/dakota.raven.-.taboofantasy +Processing: Dakota Raven, Lizzie Wainbow - Daddy's Girl Volume 33 - Fami-1.mp4 (Mode: scene) +Downloading Dakota Raven, Lizzie Wainbow - Daddy's Girl Volume 33 - Fami-1.mp4 (224.44 MB)... +Processing: Dakota Raven - Daddy's Girls Volume 30 - My Daughter The Por.mp4 (Mode: scene) +Downloading Dakota Raven - Daddy's Girls Volume 30 - My Daughter The Por.mp4 (139.68 MB)... +Processing: Dakota Raven - Daddy's Girls Volume 30 - Girl Of The House E.mp4 (Mode: scene) +Downloading Dakota Raven - Daddy's Girls Volume 30 - Girl Of The House E.mp4 (182.96 MB)... +Processing: Dakota Raven, Lizzie Wainbow - Daddy's Girl Volume 33 - Fami.mp4 (Mode: scene) +Downloading Dakota Raven, Lizzie Wainbow - Daddy's Girl Volume 33 - Fami.mp4 (222.21 MB)... +Scanning directory: /videos/taboofantasy/lylah.ryder +Processing: Compressed_A Taboo Fantasy_My-Daughter-The-Stripper.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_My-Daughter-The-Stripper.mp4 (242.59 MB)... +Processing: Earning your allowance - Lylah Ryder - TabooFantasy.mp4 (Mode: scene) +Downloading Earning your allowance - Lylah Ryder - TabooFantasy.mp4 (409.51 MB)... +Processing: A Taboo Fantasy_Deflowering-Therapy.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Deflowering-Therapy.mp4 (373.61 MB)... +Scanning directory: /videos/taboofantasy/brandii.banks +Processing: Auntjudys - 43yo Big Ass MILF Brandi Banks Sucks Your Cock i.mp4 (Mode: scene) +Downloading Auntjudys - 43yo Big Ass MILF Brandi Banks Sucks Your Cock i.mp4 (481.17 MB)... +Processing: Big Titted Mature Roxee Can't Stop Rubbing Her Clit xHamster.mp4 (Mode: scene) +Downloading Big Titted Mature Roxee Can't Stop Rubbing Her Clit xHamster.mp4 (304.91 MB)... +Processing: The.Brandii.Banks.Family.Album.mp4 (Mode: scene) +Downloading The.Brandii.Banks.Family.Album.mp4 (846.55 MB)... +Processing: Mom Seduces Nerd Step Son, Free HD Porn Video 3e xHamster xH.mp4 (Mode: scene) +Downloading Mom Seduces Nerd Step Son, Free HD Porn Video 3e xHamster xH.mp4 (62.00 MB)... +Scanning directory: /videos/taboofantasy/hazel.paige +Processing: Hazel Paige Family Album.mp4 (Mode: scene) +Downloading Hazel Paige Family Album.mp4 (1206.02 MB)... +Scanning directory: /videos/taboofantasy/april.dawn +Processing: The Secret Life of Girls-(April Dawn, Roxy Nicole, Ginger Rose)-{Private Society}-[Lesbian, Threesome (Lesbian)].mp4 (Mode: scene) +Downloading The Secret Life of Girls-(April Dawn, Roxy Nicole, Ginger Rose)-{Private Society}-[Lesbian, Threesome (Lesbian)].mp4 (535.33 MB)... +Processing: [clips4sale.com]April Dawn - Little Sister_s Revenge.mp4 (Mode: scene) +Downloading [clips4sale.com]April Dawn - Little Sister_s Revenge.mp4 (202.46 MB)... +Processing: Lucie Cline Blows Your Mind-{Tickled and Abused Males}-[Handjob, Male - POV].mp4 (Mode: scene) +Downloading Lucie Cline Blows Your Mind-{Tickled and Abused Males}-[Handjob, Male - POV].mp4 (547.35 MB)... +Processing: Compressed_A Taboo Fantasy_APRIL-DAWNS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_APRIL-DAWNS-FAMILY-ALBUM.mp4 (1538.30 MB)... +Processing: TRUTH OR DARE-(April Dawn)-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Brown Hair, Cum in Mouth, Double Blowjob, Family Roleplay, Hairy Pussy, Kissing, Mouth Creampie, Natural Tits, Schoolgirl Outfit, Sister, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading TRUTH OR DARE-(April Dawn)-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Brown Hair, Cum in Mouth, Double Blowjob, Family Roleplay, Hairy Pussy, Kissing, Mouth Creampie, Natural Tits, Schoolgirl Outfit, Sister, Teen Girl (18–22)].mp4 (161.90 MB)... +Processing: Mommy Left Us Alone-(April Dawn, Dawn, April)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading Mommy Left Us Alone-(April Dawn, Dawn, April)-{Taboo Fantasy}.mp4 (141.62 MB)... +Processing: MyGirlfriendsBustyFriend April Dawn Watch porn video in high.mp4 (Mode: scene) +Downloading MyGirlfriendsBustyFriend April Dawn Watch porn video in high.mp4 (200.49 MB)... +Processing: Tai Chi Tree Fall-(-).mp4 (Mode: scene) +Downloading Tai Chi Tree Fall-(-).mp4 (231.37 MB)... +Processing: BigNaturals April Dawn My Busty Secretary 28 06 2017 rq Watc.mp4 (Mode: scene) +Downloading BigNaturals April Dawn My Busty Secretary 28 06 2017 rq Watc.mp4 (233.21 MB)... +Processing: [clips4sale.com]April Dawn - Butt Daddy.mp4 (Mode: scene) +Downloading [clips4sale.com]April Dawn - Butt Daddy.mp4 (447.66 MB)... +Processing: [clips4sale.com]April Dawn - Pool Sports.mp4 (Mode: scene) +Downloading [clips4sale.com]April Dawn - Pool Sports.mp4 (178.26 MB)... +Scanning directory: /videos/taboofantasy/carly.strohm +Processing: A Taboo Fantasy_THE-CARLY-STROHM-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_THE-CARLY-STROHM-FAMILY-ALBUM.mp4 (1974.58 MB)... +Processing: A Taboo Fantasy_Magical-Fertility-Necklace-4.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Magical-Fertility-Necklace-4.mp4 (362.48 MB)... +Processing: A Taboo Fantasy_Water-Conservation.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Water-Conservation.mp4 (266.76 MB)... +Processing: Compressed_A Taboo Fantasy_Home-Alone-3.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Home-Alone-3.mp4 (411.96 MB)... +Processing: A Taboo Fantasy_Powerful-Fertility-Idol.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Powerful-Fertility-Idol.mp4 (292.92 MB)... +Scanning directory: /videos/taboofantasy/corey.tf +Processing: I SAW MY BROTHER'S COCK AND I LIKED IT!!-(Corey)-{Taboo Fantasy}-[Blowjob, Brown Hair, Cum on Hands, Handjob, Handjob to Completion, Sister, Sleeping, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading I SAW MY BROTHER'S COCK AND I LIKED IT!!-(Corey)-{Taboo Fantasy}-[Blowjob, Brown Hair, Cum on Hands, Handjob, Handjob to Completion, Sister, Sleeping, Teen Girl (18–22)].mp4 (312.08 MB)... +Processing: I SAT ON MY BROTHER'S FACE-(Corey)-{Taboo Fantasy}-[Blowjob, Brown Hair, Cum in Mouth, Facesitting on Him, Family Roleplay, Hairless Pussy, Mouth Creampie, Sister, Sleeping].mp4 (Mode: scene) +Downloading I SAT ON MY BROTHER'S FACE-(Corey)-{Taboo Fantasy}-[Blowjob, Brown Hair, Cum in Mouth, Facesitting on Him, Family Roleplay, Hairless Pussy, Mouth Creampie, Sister, Sleeping].mp4 (131.50 MB)... +Processing: A Taboo Fantasy_Sister-Corey-Confesses.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Sister-Corey-Confesses.mp4 (209.82 MB)... +Processing: MY SISTER'S ASS!!-(Corey)-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Cum on Ass, Family Roleplay, Hairless Pussy, Humiliation, Natural Tits].mp4 (Mode: scene) +Downloading MY SISTER'S ASS!!-(Corey)-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Cum on Ass, Family Roleplay, Hairless Pussy, Humiliation, Natural Tits].mp4 (193.72 MB)... +Processing: Compressed_A Taboo Fantasy_I-Sucked-My-Brothers-Cock.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_I-Sucked-My-Brothers-Cock.mp4 (164.21 MB)... +Scanning directory: /videos/taboofantasy/nicole.baldwin +Processing: AN UNSPEAKABLE ACT OF TABOO!!!-(Nicole Baldwin)-{Taboo Fantasy}-[Blowjob, Daughter, Family Roleplay, Father, Hairless Pussy, Hardcore, Older Man - Younger Woman, Pussy Fingering, Schoolgirl Outfit, Teen Girl (18–22), creampie].mp4 (Mode: scene) +Downloading AN UNSPEAKABLE ACT OF TABOO!!!-(Nicole Baldwin)-{Taboo Fantasy}-[Blowjob, Daughter, Family Roleplay, Father, Hairless Pussy, Hardcore, Older Man - Younger Woman, Pussy Fingering, Schoolgirl Outfit, Teen Girl (18–22), creampie].mp4 (363.67 MB)... +Processing: WATCHING PORN WITH MY DAD-(Nicole Baldwin)-{Taboo Fantasy}-[Blowjob, Cum in Mouth, Daughter, Father, Gonzo, Hairless Pussy, Hardcore, Mouth Creampie, Natural Tits, Older Man - Younger Woman, Pussy Licking, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading WATCHING PORN WITH MY DAD-(Nicole Baldwin)-{Taboo Fantasy}-[Blowjob, Cum in Mouth, Daughter, Father, Gonzo, Hairless Pussy, Hardcore, Mouth Creampie, Natural Tits, Older Man - Younger Woman, Pussy Licking, Teen Girl (18–22)].mp4 (488.79 MB)... +Processing: Nicole_Baldwin_Family_Album.mp4 (Mode: scene) +Downloading Nicole_Baldwin_Family_Album.mp4 (434.47 MB)... +Scanning directory: /videos/taboofantasy/jewels.tf +Processing: Jewel's Family Album 2.mp4 (Mode: scene) +Downloading Jewel's Family Album 2.mp4 (1790.63 MB)... +Scanning directory: /videos/taboofantasy/tamara.lopez +Processing: THE TAMARA LOPEZ FAMILY ALBUM-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Brown Hair, Compilation, Family Roleplay, Glasses, Hairless Pussy, Latina Woman, Natural Tits, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading THE TAMARA LOPEZ FAMILY ALBUM-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Brown Hair, Compilation, Family Roleplay, Glasses, Hairless Pussy, Latina Woman, Natural Tits, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (1345.33 MB)... +Scanning directory: /videos/taboofantasy/kassondra.raine +Processing: I WET MY PANTIES-(Kassondra Raine)-{Taboo Fantasy}-[Blowjob, Daughter, Family Roleplay, Father, Freckles, Hairless Labia, Natural Tits, Older Man - Younger Woman, Pussy Licking, Red Hair, Teen Girl (18–22), Trimmed Pussy].mp4 (Mode: scene) +Downloading I WET MY PANTIES-(Kassondra Raine)-{Taboo Fantasy}-[Blowjob, Daughter, Family Roleplay, Father, Freckles, Hairless Labia, Natural Tits, Older Man - Younger Woman, Pussy Licking, Red Hair, Teen Girl (18–22), Trimmed Pussy].mp4 (409.62 MB)... +Processing: Kassondras.Family.Album.mp4 (Mode: scene) +Downloading Kassondras.Family.Album.mp4 (1608.68 MB)... +Processing: LUST POTION # 9-(Kassondra Raine)-{Taboo Fantasy}-[Blowjob, Daughter, Family Roleplay, Father, Freckles, Hairless Labia, Natural Tits, Older Man - Younger Woman, Red Hair, Trimmed Pussy, creampie].mp4 (Mode: scene) +Downloading LUST POTION # 9-(Kassondra Raine)-{Taboo Fantasy}-[Blowjob, Daughter, Family Roleplay, Father, Freckles, Hairless Labia, Natural Tits, Older Man - Younger Woman, Red Hair, Trimmed Pussy, creampie].mp4 (393.03 MB)... +Scanning directory: /videos/taboofantasy/skyla.tf +Processing: SKYLA'S FAMILY ALBUM-(Holly)-{Taboo Fantasy}-[Blond Hair, Blowjob, Compilation, Daughter, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, Skinny, Small Tits, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading SKYLA'S FAMILY ALBUM-(Holly)-{Taboo Fantasy}-[Blond Hair, Blowjob, Compilation, Daughter, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, Skinny, Small Tits, Teen Girl (18–22)].mp4 (389.93 MB)... +Scanning directory: /videos/taboofantasy/jessie.storm +Processing: Compressed_A Taboo Fantasy_JESSIE-STORMS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_JESSIE-STORMS-FAMILY-ALBUM.mp4 (1522.59 MB)... +Scanning directory: /videos/taboofantasy/lola.milano +Processing: My Step-Sister's Hot!-(Lola Milano)-{Taboo Fantasy}-[taboo].mp4 (Mode: scene) +Downloading My Step-Sister's Hot!-(Lola Milano)-{Taboo Fantasy}-[taboo].mp4 (372.18 MB)... +Processing: SLEEPWALKER-(Lola Milano)-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Cum in Mouth, Family Roleplay, Hairless Labia, Pussy Fingering, Sister, Sleeping, Telephone, Trimmed Pussy].mp4 (Mode: scene) +Downloading SLEEPWALKER-(Lola Milano)-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Cum in Mouth, Family Roleplay, Hairless Labia, Pussy Fingering, Sister, Sleeping, Telephone, Trimmed Pussy].mp4 (386.39 MB)... +Processing: A Taboo Fantasy_I-Cock-Teased-My-Step-Brother.mp4 (Mode: scene) +Downloading A Taboo Fantasy_I-Cock-Teased-My-Step-Brother.mp4 (297.24 MB)... +Processing: A Taboo Fantasy_Taboo-Blackmail.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Taboo-Blackmail.mp4 (308.93 MB)... +Processing: SIBLING 69-(Lola Milano)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading SIBLING 69-(Lola Milano)-{Taboo Fantasy}.mp4 (289.69 MB)... +Scanning directory: /videos/taboofantasy/alora.jaymes +Processing: Alora Jaymes - Moms Business Retreat With Son.mp4 (Mode: scene) +Downloading Alora Jaymes - Moms Business Retreat With Son.mp4 (806.12 MB)... +Processing: MY SISTER IS A WEBCAM SLUT!!-(Alora Jaymes)-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Brown Hair, Hairless Pussy, Masturbation, Natural Tits, Teen Girl (18–22), creampie].mp4 (Mode: scene) +Downloading MY SISTER IS A WEBCAM SLUT!!-(Alora Jaymes)-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Brown Hair, Hairless Pussy, Masturbation, Natural Tits, Teen Girl (18–22), creampie].mp4 (326.71 MB)... +Processing: PUNISHED FOR COCK TEASING!!-(Alora Jaymes, Ciara Blue)-{Taboo Fantasy}-[Big Tits, Blowjob, Brown Hair, Cum on Back, Daughter, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking].mp4 (Mode: scene) +Downloading PUNISHED FOR COCK TEASING!!-(Alora Jaymes, Ciara Blue)-{Taboo Fantasy}-[Big Tits, Blowjob, Brown Hair, Cum on Back, Daughter, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking].mp4 (329.07 MB)... +Processing: HAPPY BIRTHDAY-(Alora Jaymes, Ciara Blue)-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Brown Hair, Cum Swallowing, Cum in Mouth, Family Roleplay, Hairless Pussy, Natural Tits, Sister].mp4 (Mode: scene) +Downloading HAPPY BIRTHDAY-(Alora Jaymes, Ciara Blue)-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Brown Hair, Cum Swallowing, Cum in Mouth, Family Roleplay, Hairless Pussy, Natural Tits, Sister].mp4 (292.91 MB)... +Processing: SilLytHots Com - Step Dads Dick Is Bigger Than Yours - Tnaflix c.mp4 (Mode: scene) +Downloading SilLytHots Com - Step Dads Dick Is Bigger Than Yours - Tnaflix c.mp4 (52.99 MB)... +Processing: DADDY DAUGHTER THERAPY-(Alora Jaymes, Ciara Blue)-{Taboo Fantasy}-[Big Tits, Blowjob, Brown Hair, Cum on Ass, Cum on Back, Cumshot, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, Therapist].mp4 (Mode: scene) +Downloading DADDY DAUGHTER THERAPY-(Alora Jaymes, Ciara Blue)-{Taboo Fantasy}-[Big Tits, Blowjob, Brown Hair, Cum on Ass, Cum on Back, Cumshot, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, Therapist].mp4 (364.53 MB)... +Scanning directory: /videos/taboofantasy/mandy.taboo +Processing: Mandy's Family Album.mp4 (Mode: scene) +Downloading Mandy's Family Album.mp4 (1075.18 MB)... +Scanning directory: /videos/taboofantasy/devyn.lux +Processing: MomDrips.24.01.07.Devyn.Lux.Im.Hot.For.Teacher.XXX.1080p.MP4-WRB.mp4 (Mode: scene) +Downloading MomDrips.24.01.07.Devyn.Lux.Im.Hot.For.Teacher.XXX.1080p.MP4-WRB.mp4 (461.92 MB)... +Scanning directory: /videos/taboofantasy/roxie.love +Processing: A Taboo Fantasy_THE-MAGICAL-FERTILITY-NECKLACE.mp4 (Mode: scene) +Downloading A Taboo Fantasy_THE-MAGICAL-FERTILITY-NECKLACE.mp4 (453.74 MB)... +Processing: A Taboo Fantasy_PUSSY-POWER.mp4 (Mode: scene) +Downloading A Taboo Fantasy_PUSSY-POWER.mp4 (414.05 MB)... +Processing: Roxie Loves Family Album HD 1080p.mp4 (Mode: scene) +Downloading Roxie Loves Family Album HD 1080p.mp4 (452.71 MB)... +Scanning directory: /videos/taboofantasy/lexiieros.aka.aura.joy +Processing: Lexi Eros, Faith Anderson, Marilyn - Family Gang Jerk. Mom j.mp4 (Mode: scene) +Downloading Lexi Eros, Faith Anderson, Marilyn - Family Gang Jerk. Mom j.mp4 (103.05 MB)... +Processing: Lexii18 Beautiful Teen Brunette with Glasses Toying - Videos.mp4 (Mode: scene) +Downloading Lexii18 Beautiful Teen Brunette with Glasses Toying - Videos.mp4 (93.56 MB)... +Processing: My Video - ManyVids-01.mp4 (Mode: scene) +Downloading My Video - ManyVids-01.mp4 (100.57 MB)... +Processing: RETURN OF THE FERTILITY IDOL!!-(Lexi Eros)-{Taboo Fantasy}-[Big Areolas, Big Tits, Blowjob, Brother, Brown Hair, Cum on Body, Cum on Stomach, Family Roleplay, Hairless Pussy, Masturbation, Natural Tits, Sister, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading RETURN OF THE FERTILITY IDOL!!-(Lexi Eros)-{Taboo Fantasy}-[Big Areolas, Big Tits, Blowjob, Brother, Brown Hair, Cum on Body, Cum on Stomach, Family Roleplay, Hairless Pussy, Masturbation, Natural Tits, Sister, Teen Girl (18–22)].mp4 (345.50 MB)... +Processing: Lexi Eros, Faith Anderson, Marilyn - Family Gang Jerk. Mom j-1.mp4 (Mode: scene) +Downloading Lexi Eros, Faith Anderson, Marilyn - Family Gang Jerk. Mom j-1.mp4 (103.05 MB)... +Processing: LEXY'S BOY TOY!!!-(Lexi Eros)-{Jerky Girls}-[CFNM, Cock Milking, Cum on Hands, Cumshot, Girls Finishing the Job, Glasses, Handjob, Lube].mp4 (Mode: scene) +Downloading LEXY'S BOY TOY!!!-(Lexi Eros)-{Jerky Girls}-[CFNM, Cock Milking, Cum on Hands, Cumshot, Girls Finishing the Job, Glasses, Handjob, Lube].mp4 (47.16 MB)... +Processing: PAVLOV'S BELL-(Lexi Eros)-{Taboo Fantasy}-[Big Areolas, Big Tits, Blowjob, Brother, Brown Hair, Facial, Family Roleplay, Glasses, Hairless Pussy, Natural Tits, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading PAVLOV'S BELL-(Lexi Eros)-{Taboo Fantasy}-[Big Areolas, Big Tits, Blowjob, Brother, Brown Hair, Facial, Family Roleplay, Glasses, Hairless Pussy, Natural Tits, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (401.41 MB)... +Processing: Lexi's Taboo Tales - I Had Sex With My Brother.mp4 (Mode: scene) +Downloading Lexi's Taboo Tales - I Had Sex With My Brother.mp4 (214.59 MB)... +Processing: My Video - ManyVids.mp4 (Mode: scene) +Downloading My Video - ManyVids.mp4 (42.56 MB)... +Processing: A Taboo Fantasy_TWO-PEAS-IN-A-POD.mp4 (Mode: scene) +Downloading A Taboo Fantasy_TWO-PEAS-IN-A-POD.mp4 (352.24 MB)... +Processing: BABY FEVER-(Lexi Eros)-{Taboo Fantasy}-[Big Areolas, Blowjob, Brother, Brown Hair, Family Roleplay, Glasses, Hairless Pussy, Impregnation, Natural Tits, Pussy Licking, Short Woman, Sister, Teen Girl (18–22), creampie].mp4 (Mode: scene) +Downloading BABY FEVER-(Lexi Eros)-{Taboo Fantasy}-[Big Areolas, Blowjob, Brother, Brown Hair, Family Roleplay, Glasses, Hairless Pussy, Impregnation, Natural Tits, Pussy Licking, Short Woman, Sister, Teen Girl (18–22), creampie].mp4 (335.50 MB)... +Processing: My Video - ManyVids-02.mp4 (Mode: scene) +Downloading My Video - ManyVids-02.mp4 (251.90 MB)... +Processing: Compressed_JoshEros3_Fucking-Lexi-in-every-position.mp4 (Mode: scene) +Downloading Compressed_JoshEros3_Fucking-Lexi-in-every-position.mp4 (334.24 MB)... +Processing: My Video - ManyVids-03.mp4 (Mode: scene) +Downloading My Video - ManyVids-03.mp4 (638.04 MB)... +Scanning directory: /videos/taboofantasy/blair.tf +Processing: BLAIR'S FAMILY ALBUM-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Compilation, Cum on Body, Cumshot, Family Roleplay, Hairless Pussy, Handjob, Pussy Fingering, Pussy Licking, Sister, Skinny, Small Tits, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading BLAIR'S FAMILY ALBUM-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Compilation, Cum on Body, Cumshot, Family Roleplay, Hairless Pussy, Handjob, Pussy Fingering, Pussy Licking, Sister, Skinny, Small Tits, Teen Girl (18–22)].mp4 (1253.14 MB)... +Processing: THE MAGIC NECKLACE-(Blair)-{Taboo Fantasy}-[Blowjob, CFNM, Cum on Clothes, Cumshot, Daughter, Deepthroat, Family Roleplay, Father, Handjob, Handjob to Completion, Older Man - Younger Woman].mp4 (Mode: scene) +Downloading THE MAGIC NECKLACE-(Blair)-{Taboo Fantasy}-[Blowjob, CFNM, Cum on Clothes, Cumshot, Daughter, Deepthroat, Family Roleplay, Father, Handjob, Handjob to Completion, Older Man - Younger Woman].mp4 (440.00 MB)... +Scanning directory: /videos/taboofantasy/sandra.thompson +Processing: Sandy Thompson Family Album.mp4 (Mode: scene) +Downloading Sandy Thompson Family Album.mp4 (387.14 MB)... +Processing: Sandy Thompson's Home Movies HD.mp4 (Mode: scene) +Downloading Sandy Thompson's Home Movies HD.mp4 (731.50 MB)... +Processing: A Taboo Fantasy_FAMILY-LOAN-AGREEMENT.mp4 (Mode: scene) +Downloading A Taboo Fantasy_FAMILY-LOAN-AGREEMENT.mp4 (474.58 MB)... +Processing: A Taboo Fantasy_SISTERLY-SEX-ENCOUNTER.mp4 (Mode: scene) +Downloading A Taboo Fantasy_SISTERLY-SEX-ENCOUNTER.mp4 (387.87 MB)... +Scanning directory: /videos/taboofantasy/[taboofantasy].reagan.lush.-.the….album +Scanning directory: /videos/taboofantasy/dillion.carter +Processing: A Taboo Fantasy_Dad-With-Benefits.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Dad-With-Benefits.mp4 (340.64 MB)... +Processing: A Taboo Fantasy_Dillion-Loves-Daddy.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Dillion-Loves-Daddy.mp4 (306.34 MB)... +Processing: A Taboo Fantasy_Daddy-Fucked-Me-and-Ate-My-Pussy.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Daddy-Fucked-Me-and-Ate-My-Pussy.mp4 (409.83 MB)... +Processing: DILLON & DADDY-(Dillion Carter)-{Taboo Fantasy}-[Big Tits, Blowjob, Brown Hair, Daughter, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, creampie].mp4 (Mode: scene) +Downloading DILLON & DADDY-(Dillion Carter)-{Taboo Fantasy}-[Big Tits, Blowjob, Brown Hair, Daughter, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, creampie].mp4 (328.16 MB)... +Scanning directory: /videos/taboofantasy/new.folder +Scanning directory: /videos/taboofantasy/vanessa.vixon +Processing: A Taboo Fantasy_Sex-As-A-Weapon.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Sex-As-A-Weapon.mp4 (296.12 MB)... +Processing: Compressed_A Taboo Fantasy_Sharing-The-Bathroom.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Sharing-The-Bathroom.mp4 (246.53 MB)... +Processing: HEY SLUT SISTER-(Vanessa Vixon, Dallas Diamondz)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Facial, Family Roleplay, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading HEY SLUT SISTER-(Vanessa Vixon, Dallas Diamondz)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Facial, Family Roleplay, Teen Girl (18–22)].mp4 (247.76 MB)... +Processing: A Taboo Fantasy_Mom-Made-Us-Lesbians.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Mom-Made-Us-Lesbians.mp4 (333.89 MB)... +Processing: A Taboo Fantasy_Sisters-Bathtime.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Sisters-Bathtime.mp4 (232.69 MB)... +Processing: A Taboo Fantasy_Vanessa-and-Steven.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Vanessa-and-Steven.mp4 (468.10 MB)... +Processing: A Taboo Fantasy_Showering-Together.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Showering-Together.mp4 (304.01 MB)... +Processing: MILKED REPEATEDLY!!!-(Vanessa Vixon)-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Cum in Mouth, Facesitting on Him, Fake Tits, Family Roleplay, Hairless Pussy, Handjob, Handjob to Completion, Restraints, Sister].mp4 (Mode: scene) +Downloading MILKED REPEATEDLY!!!-(Vanessa Vixon)-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Cum in Mouth, Facesitting on Him, Fake Tits, Family Roleplay, Hairless Pussy, Handjob, Handjob to Completion, Restraints, Sister].mp4 (480.36 MB)... +Processing: Margo Sullivan, Vanessa Vixen, JC Simpson - Daughters Help M.mp4 (Mode: scene) +Downloading Margo Sullivan, Vanessa Vixen, JC Simpson - Daughters Help M.mp4 (56.31 MB)... +Processing: A Taboo Fantasy_Pillow-Fight-Makeout.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Pillow-Fight-Makeout.mp4 (234.46 MB)... +Processing: A Taboo Fantasy_I-Got-My-Sister-Relaxed.mp4 (Mode: scene) +Downloading A Taboo Fantasy_I-Got-My-Sister-Relaxed.mp4 (476.55 MB)... +Scanning directory: /videos/taboofantasy/jemma.valentine +Processing: A Taboo Fantasy_Female-Viagra.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Female-Viagra.mp4 (378.35 MB)... +Processing: A Taboo Fantasy_THE-GREY-GOOSE-INCIDENT-gtgtgt-12-PRICE.mp4 (Mode: scene) +Downloading A Taboo Fantasy_THE-GREY-GOOSE-INCIDENT-gtgtgt-12-PRICE.mp4 (303.64 MB)... +Processing: A Taboo Fantasy_The-Battleship-Bet.mp4 (Mode: scene) +Downloading A Taboo Fantasy_The-Battleship-Bet.mp4 (336.47 MB)... +Processing: A Taboo Fantasy_Squirting-For-Daddy.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Squirting-For-Daddy.mp4 (412.64 MB)... +Processing: Compressed_A Taboo Fantasy_JEMMA-VALENTINES-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_JEMMA-VALENTINES-FAMILY-ALBUM.mp4 (1684.84 MB)... +Processing: A Taboo Fantasy_A-Family-Threesome.mp4 (Mode: scene) +Downloading A Taboo Fantasy_A-Family-Threesome.mp4 (392.05 MB)... +Processing: A Taboo Fantasy_Jemma and Daddy.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Jemma and Daddy.mp4 (85.88 MB)... +Processing: GAMES PEOPLE PLAY-(Jemma Valentine)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Condom, Cum in Mouth, Family Roleplay, Hairless Pussy, Handjob, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading GAMES PEOPLE PLAY-(Jemma Valentine)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Condom, Cum in Mouth, Family Roleplay, Hairless Pussy, Handjob, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (417.88 MB)... +Scanning directory: /videos/taboofantasy/stacie.jaxxx +Processing: Relax He's My Stepdad 5- Scene 3-(Stacie Jaxxx)-{Combat Zone}.mp4 (Mode: scene) +Downloading Relax He's My Stepdad 5- Scene 3-(Stacie Jaxxx)-{Combat Zone}.mp4 (579.71 MB)... +Scanning directory: /videos/taboofantasy/nadia.white +Processing: Dani Dare & Nadia White - Familylust 02.06.18 (1080p).mp4 (Mode: scene) +Downloading Dani Dare & Nadia White - Familylust 02.06.18 (1080p).mp4 (244.78 MB)... +Processing: 62195351_Fun with Sonia and Erik.mp4 (Mode: scene) +Downloading 62195351_Fun with Sonia and Erik.mp4 (117.53 MB)... +Processing: Nadia White and Gianna Love - Step Sibling Love.mp4 (Mode: scene) +Downloading Nadia White and Gianna Love - Step Sibling Love.mp4 (443.21 MB)... +Processing: 62194753_Playing with Sonia.mp4 (Mode: scene) +Downloading 62194753_Playing with Sonia.mp4 (135.07 MB)... +Processing: 34186619_Blonde hottie Nadia White is getting fucked by a lucky geek.mp4 (Mode: scene) +Downloading 34186619_Blonde hottie Nadia White is getting fucked by a lucky geek.mp4 (42.20 MB)... +Processing: Compressed_A Taboo Fantasy_NADIA-WHITES-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_NADIA-WHITES-FAMILY-ALBUM.mp4 (1471.93 MB)... +Processing: 61576105_Thirsty Threesome Dee Siren, Nadia White, and Jason Michaels.mp4 (Mode: scene) +Downloading 61576105_Thirsty Threesome Dee Siren, Nadia White, and Jason Michaels.mp4 (9.40 MB)... +Scanning directory: /videos/taboofantasy/sophia.sweet +Processing: Keeping Them Warm-(-).mp4 (Mode: scene) +Downloading Keeping Them Warm-(-).mp4 (430.83 MB)... +Processing: [Taboo-Fantasy] Sophia Sweet's Family Album 1080p.mp4 (Mode: scene) +Downloading [Taboo-Fantasy] Sophia Sweet's Family Album 1080p.mp4 (1189.39 MB)... +Processing: familystrokes.21.05.27.everly.haze.and.sophia.sweet.enough.brother.for.both.mp4 (Mode: scene) +Downloading familystrokes.21.05.27.everly.haze.and.sophia.sweet.enough.brother.for.both.mp4 (919.17 MB)... +Processing: Sophia Sweet Lizzie Wainbow - Lets Suck Your Brother - Aglaea Pr.mp4 (Mode: scene) +Downloading Sophia Sweet Lizzie Wainbow - Lets Suck Your Brother - Aglaea Pr.mp4 (203.63 MB)... +Processing: We Don't Have To Choose-(-).mp4 (Mode: scene) +Downloading We Don't Have To Choose-(-).mp4 (320.68 MB)... +Scanning directory: /videos/taboofantasy/alaina.rose +Processing: A Taboo Fantasy_Thunder-Buddies-2.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Thunder-Buddies-2.mp4 (232.14 MB)... +Processing: Prom Night-(Alaina Rose)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading Prom Night-(Alaina Rose)-{Taboo Fantasy}.mp4 (428.54 MB)... +Processing: Compressed_A Taboo Fantasy_Prom-Night.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Prom-Night.mp4 (395.78 MB)... +Processing: A Taboo Fantasy_Nude-Portrait.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Nude-Portrait.mp4 (275.85 MB)... +Scanning directory: /videos/taboofantasy/sky.tf +Processing: DADDY SPANKS!!-(Sky)-{Taboo Fantasy}-[Blond Hair, Blowjob, Daughter, Family Roleplay, Father, Hairless Pussy, Mouth Creampie, Natural Tits, Older Man - Younger Woman, Short Woman, Skinny, Small Tits, Spanking, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading DADDY SPANKS!!-(Sky)-{Taboo Fantasy}-[Blond Hair, Blowjob, Daughter, Family Roleplay, Father, Hairless Pussy, Mouth Creampie, Natural Tits, Older Man - Younger Woman, Short Woman, Skinny, Small Tits, Spanking, Teen Girl (18–22)].mp4 (252.61 MB)... +Processing: DADDY DAUGHTER SECRET-(Sky)-{Taboo Fantasy}-[Blond Hair, Blowjob, Cum on Body, Family Roleplay, Father, Older Man - Younger Woman, Pussy Licking, Short Woman, Skinny, Small Tits, Teen Girl (18–22), cum on tits].mp4 (Mode: scene) +Downloading DADDY DAUGHTER SECRET-(Sky)-{Taboo Fantasy}-[Blond Hair, Blowjob, Cum on Body, Family Roleplay, Father, Older Man - Younger Woman, Pussy Licking, Short Woman, Skinny, Small Tits, Teen Girl (18–22), cum on tits].mp4 (364.92 MB)... +Scanning directory: /videos/taboofantasy/nina.nix +Scanning directory: /videos/taboofantasy/melody.lynn +Processing: UNDER THE SPELL EPISODE 2-(Melody Lynn)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Brother, Cum in Mouth, Family Roleplay, Hairless Pussy, Mouth Creampie, Natural Tits, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading UNDER THE SPELL EPISODE 2-(Melody Lynn)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Brother, Cum in Mouth, Family Roleplay, Hairless Pussy, Mouth Creampie, Natural Tits, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (371.68 MB)... +Processing: Melody Lynns Family Album.mp4 (Mode: scene) +Downloading Melody Lynns Family Album.mp4 (1959.45 MB)... +Scanning directory: /videos/taboofantasy/becca.tf +Processing: Taboo-Fantasy - Becca - Sex With Stepbro FullHD 1080p.mp4 (Mode: scene) +Downloading Taboo-Fantasy - Becca - Sex With Stepbro FullHD 1080p.mp4 (908.50 MB)... +Scanning directory: /videos/taboofantasy/susanna.tf +Processing: A Taboo Fantasy_The-Sodomy-of-Susanna.mp4 (Mode: scene) +Downloading A Taboo Fantasy_The-Sodomy-of-Susanna.mp4 (489.37 MB)... +Processing: A Taboo Fantasy_A-Family-Loan-2.mp4 (Mode: scene) +Downloading A Taboo Fantasy_A-Family-Loan-2.mp4 (182.01 MB)... +Processing: MAGIC POTION-(Susanna)-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Cum in Mouth, Family Roleplay, Hairless Pussy, Handjob, Mouth Creampie, Natural Tits, Pussy Licking, Short Woman, Sister, Small Tits, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading MAGIC POTION-(Susanna)-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Cum in Mouth, Family Roleplay, Hairless Pussy, Handjob, Mouth Creampie, Natural Tits, Pussy Licking, Short Woman, Sister, Small Tits, Teen Girl (18–22)].mp4 (370.84 MB)... +Processing: A Taboo Fantasy_Payback-Is-A-Bitch.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Payback-Is-A-Bitch.mp4 (311.01 MB)... +Processing: A Taboo Fantasy_ My Hot Sister Got My Virginity .mp4 (Mode: scene) +Downloading A Taboo Fantasy_ My Hot Sister Got My Virginity .mp4 (300.40 MB)... +Processing: Compressed_A Taboo Fantasy_Home-Alone-4.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Home-Alone-4.mp4 (357.62 MB)... +Processing: SHARING ONE BEDROOM-(Susanna)-{Taboo Fantasy}-[69, Blowjob, Brother, Brown Hair, Family Roleplay, Hairless Pussy, Massive Cumshot, Natural Tits, Pussy Licking, Short Woman, Sister, Small Tits, Teen Girl (18–22), cum on tits].mp4 (Mode: scene) +Downloading SHARING ONE BEDROOM-(Susanna)-{Taboo Fantasy}-[69, Blowjob, Brother, Brown Hair, Family Roleplay, Hairless Pussy, Massive Cumshot, Natural Tits, Pussy Licking, Short Woman, Sister, Small Tits, Teen Girl (18–22), cum on tits].mp4 (340.41 MB)... +Processing: Compressed_A Taboo Fantasy_Payback-In-The-Ass.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Payback-In-The-Ass.mp4 (413.23 MB)... +Scanning directory: /videos/taboofantasy/holly.mae.tf +Processing: Holly Mae's Family Album.mp4 (Mode: scene) +Downloading Holly Mae's Family Album.mp4 (1082.57 MB)... +Scanning directory: /videos/taboofantasy/stevie.balkon +Processing: Compressed_A Taboo Fantasy_STEVIE-BALKOMS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_STEVIE-BALKOMS-FAMILY-ALBUM.mp4 (1388.97 MB)... +Scanning directory: /videos/taboofantasy/alexis.blaze +Processing: After Seeing Her Amazing Body Thrust on Your Cock, You Cum on Her Feet-(Alexis Blaze)-{ATK Girlfriends}.mp4 (Mode: scene) +Downloading After Seeing Her Amazing Body Thrust on Your Cock, You Cum on Her Feet-(Alexis Blaze)-{ATK Girlfriends}.mp4 (450.57 MB)... +Processing: Alexis Blaze #nude.mp4 (Mode: scene) +Downloading Alexis Blaze #nude.mp4 (95.29 MB)... +Processing: Alexis Blaze's- I Seduced My Brother - XVIDEOS.COM.mp4 (Mode: scene) +Downloading Alexis Blaze's- I Seduced My Brother - XVIDEOS.COM.mp4 (64.61 MB)... +Processing: Alexis Blaze - Trashy Step-Mom Catches Step-Son and Step-Daughter Fucking.mp4 (Mode: scene) +Downloading Alexis Blaze - Trashy Step-Mom Catches Step-Son and Step-Daughter Fucking.mp4 (202.09 MB)... +Processing: Sex Education Trashy Mom Catches Son and Daughter Fucking - XVIDEOS.COM.mp4 (Mode: scene) +Downloading Sex Education Trashy Mom Catches Son and Daughter Fucking - XVIDEOS.COM.mp4 (118.21 MB)... +Processing: Alexis Blaze – Little Sister Alexis Wants to Practice.mp4 (Mode: scene) +Downloading Alexis Blaze – Little Sister Alexis Wants to Practice.mp4 (201.16 MB)... +Processing: Alexis Blaze - #teens.mp4 (Mode: scene) +Downloading Alexis Blaze - #teens.mp4 (372.99 MB)... +Processing: Alexis Blaze #POV.mp4 (Mode: scene) +Downloading Alexis Blaze #POV.mp4 (530.78 MB)... +Processing: A Taboo Fantasy Alexis Family Album.mp4 (Mode: scene) +Downloading A Taboo Fantasy Alexis Family Album.mp4 (1460.87 MB)... +Scanning directory: /videos/taboofantasy/christelle.tf +Processing: A Taboo Fantasy_Uncle-Mickey.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Uncle-Mickey.mp4 (117.88 MB)... +Processing: A Taboo Fantasy_Fuck-You-Sis.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Fuck-You-Sis.mp4 (135.03 MB)... +Processing: A Taboo Fantasy_Mothers-Day-Bang.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Mothers-Day-Bang.mp4 (365.97 MB)... +Processing: A Taboo Fantasy_Taboo-Handjob.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Taboo-Handjob.mp4 (131.45 MB)... +Processing: Faye Reagan fucking in the living room with her big ass-(Christelle TF)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading Faye Reagan fucking in the living room with her big ass-(Christelle TF)-{Taboo Fantasy}.mp4 (256.65 MB)... +Processing: A Taboo Fantasy+ModernFamily-Episode2.mp4 (Mode: scene) +Downloading A Taboo Fantasy+ModernFamily-Episode2.mp4 (53.01 MB)... +Processing: A Taboo Fantasy_Brother-Fucker.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Brother-Fucker.mp4 (161.69 MB)... +Processing: Compressed_A Taboo Fantasy_My-Sisters-Feet.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_My-Sisters-Feet.mp4 (180.69 MB)... +Processing: Compressed_A Taboo Fantasy_Sisterly-Handjob.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Sisterly-Handjob.mp4 (178.09 MB)... +Processing: A Taboo Fantasy+ModernFamily-Episode1.mp4 (Mode: scene) +Downloading A Taboo Fantasy+ModernFamily-Episode1.mp4 (55.73 MB)... +Processing: A Taboo Fantasy_Full-Family-Fuck.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Full-Family-Fuck.mp4 (340.91 MB)... +Processing: A Taboo Fantasy_Aunt-Michelle.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Aunt-Michelle.mp4 (281.36 MB)... +Scanning directory: /videos/taboofantasy/emma.tf +Processing: LATE NIGHT TABOO-(Emma Price)-{Taboo Fantasy}-[Blond Hair, Blowjob, Condom, Cum in Mouth, Daughter, Family Roleplay, Father, Hairless Pussy, Mouth Creampie, Natural Tits, Older Man - Younger Woman, Small Tits].mp4 (Mode: scene) +Downloading LATE NIGHT TABOO-(Emma Price)-{Taboo Fantasy}-[Blond Hair, Blowjob, Condom, Cum in Mouth, Daughter, Family Roleplay, Father, Hairless Pussy, Mouth Creampie, Natural Tits, Older Man - Younger Woman, Small Tits].mp4 (222.45 MB)... +Scanning directory: /videos/taboofantasy/ashlynn.taylor +Processing: klhvckb81b9_Ashlynn Taylor Gets Possessed By Guy Then Masturbates.mp4 (Mode: scene) +Downloading klhvckb81b9_Ashlynn Taylor Gets Possessed By Guy Then Masturbates.mp4 (251.90 MB)... +Processing: iphoklf7d99_step Brother fucks stepsister featuring sexy brunette Ashlynn Taylor.mp4 (Mode: scene) +Downloading iphoklf7d99_step Brother fucks stepsister featuring sexy brunette Ashlynn Taylor.mp4 (385.01 MB)... +Processing: klhlviv06cc_step Sister Ashlynn Taylor Gives Her stepBrother a Blowjob.mp4 (Mode: scene) +Downloading klhlviv06cc_step Sister Ashlynn Taylor Gives Her stepBrother a Blowjob.mp4 (160.31 MB)... +Scanning directory: /videos/taboofantasy/clara.belle.-.taboofantasy +Processing: Clara Belle - Daddy's Girls Volume 30 - Learning To Suck Coc.mp4 (Mode: scene) +Downloading Clara Belle - Daddy's Girls Volume 30 - Learning To Suck Coc.mp4 (93.57 MB)... +Scanning directory: /videos/taboofantasy/phenec.tf +Processing: Compressed_A Taboo Fantasy_PHENECS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_PHENECS-FAMILY-ALBUM.mp4 (1480.93 MB)... +Scanning directory: /videos/taboofantasy/stepmom.stacy.tf +Processing: A Taboo Fantasy_3-Milkings-From-Step-Mommy.mp4 (Mode: scene) +Downloading A Taboo Fantasy_3-Milkings-From-Step-Mommy.mp4 (409.62 MB)... +Processing: A Taboo Fantasy_Spying-On-Step-Mommy.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Spying-On-Step-Mommy.mp4 (231.50 MB)... +Processing: I KNOW YOU WANT ME-(Stacy Ray)-{Taboo Fantasy}-[69, Big Tits, Black Hair, Brown Hair, Curvy, Doggy Style, Family Roleplay, Hairless Pussy, Older Woman - Younger Man, Pussy Licking, Step Mother, Step Son].mp4 (Mode: scene) +Downloading I KNOW YOU WANT ME-(Stacy Ray)-{Taboo Fantasy}-[69, Big Tits, Black Hair, Brown Hair, Curvy, Doggy Style, Family Roleplay, Hairless Pussy, Older Woman - Younger Man, Pussy Licking, Step Mother, Step Son].mp4 (314.26 MB)... +Processing: Compressed_A Taboo Fantasy_Evil-Step-Mother.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Evil-Step-Mother.mp4 (288.07 MB)... +Processing: A Taboo Fantasy_Naked-Step-Mom.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Naked-Step-Mom.mp4 (344.92 MB)... +Processing: KNOCK UP STEP-MOM-(Stacy Ray)-{Taboo Fantasy}-[Big Tits, Black Hair, Blowjob, Brown Hair, Family Roleplay, Glasses, Hairless Pussy, Impregnation, MILF (30+), Natural Tits, Older Woman - Younger Man, Pussy Licking, Step Mother, creampie].mp4 (Mode: scene) +Downloading KNOCK UP STEP-MOM-(Stacy Ray)-{Taboo Fantasy}-[Big Tits, Black Hair, Blowjob, Brown Hair, Family Roleplay, Glasses, Hairless Pussy, Impregnation, MILF (30+), Natural Tits, Older Woman - Younger Man, Pussy Licking, Step Mother, creampie].mp4 (265.10 MB)... +Processing: A Taboo Fantasy_Happy-Anniversary.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Happy-Anniversary.mp4 (361.76 MB)... +Processing: A Taboo Fantasy_Step-Mom-Sucks-Cock.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Step-Mom-Sucks-Cock.mp4 (230.84 MB)... +Processing: BLACKMAILED BY STEP-MOTHER-(Stacy Ray)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading BLACKMAILED BY STEP-MOTHER-(Stacy Ray)-{Taboo Fantasy}.mp4 (190.76 MB)... +Scanning directory: /videos/taboofantasy/madelyn.rose +Processing: IT'S ONLY THUNDER!!-(Madelyn Rose)-{Taboo Fantasy}-[Blowjob, Daughter, Family Roleplay, Father, Freckles, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Red Hair, Small Tits, Tall Socks, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading IT'S ONLY THUNDER!!-(Madelyn Rose)-{Taboo Fantasy}-[Blowjob, Daughter, Family Roleplay, Father, Freckles, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Red Hair, Small Tits, Tall Socks, Teen Girl (18–22)].mp4 (293.02 MB)... +Processing: A Taboo Fantasy_Youre-A-Big-Girl-Now.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Youre-A-Big-Girl-Now.mp4 (437.49 MB)... +Processing: taboofantasy - They Made Me Fuck My Uncle - Maddy Rose.mp4 (Mode: scene) +Downloading taboofantasy - They Made Me Fuck My Uncle - Maddy Rose.mp4 (145.27 MB)... +Processing: Compressed_A Taboo Fantasy_School-Days.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_School-Days.mp4 (400.60 MB)... +Scanning directory: /videos/taboofantasy/logan.lace +Processing: Tiozin leva sarrafo de novinha e gravida - XVIDEOS.COM.mp4 (Mode: scene) +Downloading Tiozin leva sarrafo de novinha e gravida - XVIDEOS.COM.mp4 (160.71 MB)... +Processing: Logans-Daddy-Daydreams-HD.mp4 (Mode: scene) +Downloading Logans-Daddy-Daydreams-HD.mp4 (242.37 MB)... +Processing: LOGAN'S FAMILY ALBUM.mp4 (Mode: scene) +Downloading LOGAN'S FAMILY ALBUM.mp4 (1769.86 MB)... +Processing: The family way - logan lace.mp4 (Mode: scene) +Downloading The family way - logan lace.mp4 (667.15 MB)... +Processing: Logan Lace - Fatherhood Privileges.mp4 (Mode: scene) +Downloading Logan Lace - Fatherhood Privileges.mp4 (146.84 MB)... +Processing: Fuck Me Senseless Professor - XVIDEOS.COM.mp4 (Mode: scene) +Downloading Fuck Me Senseless Professor - XVIDEOS.COM.mp4 (26.06 MB)... +Processing: Daddys Not Home-(Logan Lace)-{Taboo Diaries}-[Tattoos & Piercings, pregnant].mp4 (Mode: scene) +Downloading Daddys Not Home-(Logan Lace)-{Taboo Diaries}-[Tattoos & Piercings, pregnant].mp4 (359.90 MB)... +Scanning directory: /videos/taboofantasy/leigh.tf +Processing: Leigh's Family Album.mp4 (Mode: scene) +Downloading Leigh's Family Album.mp4 (1140.23 MB)... +Processing: Compressed_A Taboo Fantasy_All-In-The-Family.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_All-In-The-Family.mp4 (292.51 MB)... +Processing: A Taboo Fantasy_Jealous-Girl.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Jealous-Girl.mp4 (288.42 MB)... +Processing: TAKE IT IN THE CUNT & ON THE FACE!!!-(Iris Rose)-{Taboo Fantasy}-[Big Tits, Blond Hair, Daughter, Facial, Family Roleplay, Father, Natural Tits, Older Man - Younger Woman, Schoolgirl, Schoolgirl Outfit, Spanking, Tall Socks].mp4 (Mode: scene) +Downloading TAKE IT IN THE CUNT & ON THE FACE!!!-(Iris Rose)-{Taboo Fantasy}-[Big Tits, Blond Hair, Daughter, Facial, Family Roleplay, Father, Natural Tits, Older Man - Younger Woman, Schoolgirl, Schoolgirl Outfit, Spanking, Tall Socks].mp4 (309.53 MB)... +Scanning directory: /videos/taboofantasy/carrie.tf +Processing: A Taboo Fantasy_Grandpa-Made-Me-Cum.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Grandpa-Made-Me-Cum.mp4 (248.87 MB)... +Processing: A Taboo Fantasy_Grandpas-Little-Slut.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Grandpas-Little-Slut.mp4 (376.92 MB)... +Processing: Compressed_A Taboo Fantasy_Grandpa-Fucked-Me.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Grandpa-Fucked-Me.mp4 (246.93 MB)... +Scanning directory: /videos/taboofantasy/melanie.hicks +Processing: A Taboo Fantasy_Total-Slut.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Total-Slut.mp4 (569.08 MB)... +Processing: Compressed_A Taboo Fantasy_STEPMOM-OF-THE-YEAR.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_STEPMOM-OF-THE-YEAR.mp4 (406.33 MB)... +Processing: Stepmom helps teen release pressure - Melanie Hicks, B.mp4 (Mode: scene) +Downloading Stepmom helps teen release pressure - Melanie Hicks, B.mp4 (170.55 MB)... +Processing: Creampie Adventures Scene 2 - Sneaky Melanie.mp4 (Mode: scene) +Downloading Creampie Adventures Scene 2 - Sneaky Melanie.mp4 (298.39 MB)... +Processing: Mommy Catches Daddy with Their Slutty Daughter_14377430.mp4 (Mode: scene) +Downloading Mommy Catches Daddy with Their Slutty Daughter_14377430.mp4 (147.23 MB)... +Processing: Bratty Sister Melanie Hicks in Bikini gets the business by b.mp4 (Mode: scene) +Downloading Bratty Sister Melanie Hicks in Bikini gets the business by b.mp4 (46.99 MB)... +Processing: Sis Fucks for Money.mp4 (Mode: scene) +Downloading Sis Fucks for Money.mp4 (216.73 MB)... +Processing: Melanie Hicks - Horny Mom 1 - First Time And Just The Tip - Taboo Heat.mp4 (Mode: scene) +Downloading Melanie Hicks - Horny Mom 1 - First Time And Just The Tip - Taboo Heat.mp4 (119.66 MB)... +Processing: Son, I Love You (Son, All You Have to Do is Ask, Say Yes, Son, It's OK to Be Gay, Experimental Slut Serum Makes Mother My Whore-(Melanie Hicks)-{Family Therapy XXX}-[taboo].mp4 (Mode: scene) +Downloading Son, I Love You (Son, All You Have to Do is Ask, Say Yes, Son, It's OK to Be Gay, Experimental Slut Serum Makes Mother My Whore-(Melanie Hicks)-{Family Therapy XXX}-[taboo].mp4 (438.79 MB)... +Processing: Daddy-Daughter Taboo Tales_11794805.mp4 (Mode: scene) +Downloading Daddy-Daughter Taboo Tales_11794805.mp4 (150.38 MB)... +Processing: A Taboo Fantasy_SHOWERING-WITH-MY-MOM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_SHOWERING-WITH-MY-MOM.mp4 (381.89 MB)... +Processing: [TabooHeat] Melanie Hicks - My New Step Mom Vol. 1 1080p.mp4 (Mode: scene) +Downloading [TabooHeat] Melanie Hicks - My New Step Mom Vol. 1 1080p.mp4 (1681.21 MB)... +Processing: Melanie Hicks in Lonely Step Mommy-{Melanie's Sex Addictions}-[Big Ass, Big Tits, Brown Hair, Missing Performer (Male), taboo, taboofantasy].mp4 (Mode: scene) +Downloading Melanie Hicks in Lonely Step Mommy-{Melanie's Sex Addictions}-[Big Ass, Big Tits, Brown Hair, Missing Performer (Male), taboo, taboofantasy].mp4 (247.61 MB)... +Processing: [clips4sale.com]Brooke Haze - Shattered Daughter.mp4 (Mode: scene) +Downloading [clips4sale.com]Brooke Haze - Shattered Daughter.mp4 (1812.65 MB)... +Processing: Thick Step Mom with Huge Tits is Stuck under the Bed - Melan.mp4 (Mode: scene) +Downloading Thick Step Mom with Huge Tits is Stuck under the Bed - Melan.mp4 (329.75 MB)... +Processing: Melanie Hicks - Horny Mom 2 - Mom Has Me Trapped - Taboo Heat.mp4 (Mode: scene) +Downloading Melanie Hicks - Horny Mom 2 - Mom Has Me Trapped - Taboo Heat.mp4 (140.06 MB)... +Processing: Melanie Hicks - Horny Mom 3 - Mom Shows Off Her New Lingerie - Taboo Heat.mp4 (Mode: scene) +Downloading Melanie Hicks - Horny Mom 3 - Mom Shows Off Her New Lingerie - Taboo Heat.mp4 (107.38 MB)... +Processing: [clips4sale.com]Melanie Hicks - Summer with my Slutty Sister [720p].mp4 (Mode: scene) +Downloading [clips4sale.com]Melanie Hicks - Summer with my Slutty Sister [720p].mp4 (225.32 MB)... +Processing: Melanie Hicks - Horny Mom 4 - Breaking In My New Sheet With Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Melanie Hicks - Horny Mom 4 - Breaking In My New Sheet With Mom - Taboo Heat.mp4 (132.38 MB)... +Processing: A Taboo Fantasy_Tomboy-Daughter.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Tomboy-Daughter.mp4 (352.44 MB)... +Processing: A Taboo Fantasy_MY-MOM-IS-A-PORN-STAR.mp4 (Mode: scene) +Downloading A Taboo Fantasy_MY-MOM-IS-A-PORN-STAR.mp4 (538.54 MB)... +Processing: Melanie Hicksin Momhasa Secret1080p mp4.mp4 (Mode: scene) +Downloading Melanie Hicksin Momhasa Secret1080p mp4.mp4 (2241.86 MB)... +Processing: MomsTeachSex.Helping.Out.My.Stepmom.Melanie.Hicks.n.Stepmom.Family.milf.bigtits.hugetits.Naturaltits.bigbooty.bigass.blowjob.cumshot.Sex.Allsex.Doggy.MelanieHicks.Ad1os.mp4 (Mode: scene) +Downloading MomsTeachSex.Helping.Out.My.Stepmom.Melanie.Hicks.n.Stepmom.Family.milf.bigtits.hugetits.Naturaltits.bigbooty.bigass.blowjob.cumshot.Sex.Allsex.Doggy.MelanieHicks.Ad1os.mp4 (213.43 MB)... +Scanning directory: /videos/taboofantasy/eva.sanchez +Processing: A Taboo Fantasy_THE-EVA-SANCHEZ-FAMILY-ALBUM-V2.mp4 (Mode: scene) +Downloading A Taboo Fantasy_THE-EVA-SANCHEZ-FAMILY-ALBUM-V2.mp4 (1481.15 MB)... +Processing: TAKING ADVANTAGE OF LITTLE BROTHER-(Eva Sanchez)-{Taboo Fantasy}-[Brown Hair, CFNM, Cum on Hands, Family Roleplay, Glasses, Handjob, Handjob to Completion, Latina Woman, Male - POV, Sister, Tall Socks, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading TAKING ADVANTAGE OF LITTLE BROTHER-(Eva Sanchez)-{Taboo Fantasy}-[Brown Hair, CFNM, Cum on Hands, Family Roleplay, Glasses, Handjob, Handjob to Completion, Latina Woman, Male - POV, Sister, Tall Socks, Teen Girl (18–22)].mp4 (305.71 MB)... +Processing: A Taboo Fantasy_A-Wicked-Game.mp4 (Mode: scene) +Downloading A Taboo Fantasy_A-Wicked-Game.mp4 (666.23 MB)... +Processing: A Taboo Fantasy_Daddy-Can-I-Have-The-Car-Keys.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Daddy-Can-I-Have-The-Car-Keys.mp4 (289.83 MB)... +Processing: A Taboo Fantasy_Strip-Battleship.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Strip-Battleship.mp4 (684.69 MB)... +Processing: THE EVA SANCHEZ FAMILY ALBUM VOLUME 1-{Taboo Fantasy}-[Brother, Brown Hair, Compilation, Daughter, Family Roleplay, Father, Glasses, Gonzo, Handjob, Latina Woman, Male - POV, Natural Tits, Pussy Licking, Sister, Tattoos, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading THE EVA SANCHEZ FAMILY ALBUM VOLUME 1-{Taboo Fantasy}-[Brother, Brown Hair, Compilation, Daughter, Family Roleplay, Father, Glasses, Gonzo, Handjob, Latina Woman, Male - POV, Natural Tits, Pussy Licking, Sister, Tattoos, Teen Girl (18–22)].mp4 (1572.71 MB)... +Scanning directory: /videos/taboofantasy/dakota.charms +Processing: Step Sister Catches Brother Cheating on Vacation - Family Th.mp4 (Mode: scene) +Downloading Step Sister Catches Brother Cheating on Vacation - Family Th.mp4 (194.83 MB)... +Processing: Step-Brother Viagra Birthday-(Dakota Charms, Cherry Morgan)-{Taboo Family Affairs}-[Ball Sucking during Blowjob, Big Dick, Cum on Ass, Doggy Style, Fantasy, Missionary, Reverse Cowgirl, Step Siblings, cowgirl, taboo].mp4 (Mode: scene) +Downloading Step-Brother Viagra Birthday-(Dakota Charms, Cherry Morgan)-{Taboo Family Affairs}-[Ball Sucking during Blowjob, Big Dick, Cum on Ass, Doggy Style, Fantasy, Missionary, Reverse Cowgirl, Step Siblings, cowgirl, taboo].mp4 (327.12 MB)... +Processing: UNIVERSITY TUITION!!-(Dakota Charms, Ciara Blue)-{Taboo Fantasy}-[Big Dick, Blowjob, Brother, Brown Hair, Cum in Mouth, Cum on Back, Hairless Pussy, Natural Tits, Pussy Licking, Sister, Small Tits, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading UNIVERSITY TUITION!!-(Dakota Charms, Ciara Blue)-{Taboo Fantasy}-[Big Dick, Blowjob, Brother, Brown Hair, Cum in Mouth, Cum on Back, Hairless Pussy, Natural Tits, Pussy Licking, Sister, Small Tits, Teen Girl (18–22)].mp4 (367.63 MB)... +Processing: LOST BET-(Dakota Charms)-{Taboo Fantasy}-[69, Big Dick, Black Hair, Blowjob, Brother, Cum in Mouth, Family Roleplay, Hairless Pussy, Handjob, Natural Tits, Pussy Licking, Sister, Small Tits, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading LOST BET-(Dakota Charms)-{Taboo Fantasy}-[69, Big Dick, Black Hair, Blowjob, Brother, Cum in Mouth, Family Roleplay, Hairless Pussy, Handjob, Natural Tits, Pussy Licking, Sister, Small Tits, Teen Girl (18–22)].mp4 (247.59 MB)... +Processing: Exxxplicit_Candy_1.mp4 (Mode: scene) +Downloading Exxxplicit_Candy_1.mp4 (1689.44 MB)... +Processing: Fucked his Girlfriend on the Lake - Pornhub.com.mp4 (Mode: scene) +Downloading Fucked his Girlfriend on the Lake - Pornhub.com.mp4 (37.70 MB)... +Processing: A Taboo Fantasy_Wet Dreams.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Wet Dreams.mp4 (65.12 MB)... +Processing: Dakota Charms Facesitting #2 - Pornhub.com.mp4 (Mode: scene) +Downloading Dakota Charms Facesitting #2 - Pornhub.com.mp4 (267.84 MB)... +Processing: Who will Cum first Game 2 Girls and one Lucky Guy Play - Por.mp4 (Mode: scene) +Downloading Who will Cum first Game 2 Girls and one Lucky Guy Play - Por.mp4 (116.01 MB)... +Processing: Busty MILF Finds out her Stepdaughter is a Pornstar - Pornhu.mp4 (Mode: scene) +Downloading Busty MILF Finds out her Stepdaughter is a Pornstar - Pornhu.mp4 (97.82 MB)... +Processing: Earth and Fire with Dakota Mouna and Olivia - Pornhub.com.mp4 (Mode: scene) +Downloading Earth and Fire with Dakota Mouna and Olivia - Pornhub.com.mp4 (442.60 MB)... +Processing: Micro Thong Celebration with Angelique Kithos, Dakota Charms.mp4 (Mode: scene) +Downloading Micro Thong Celebration with Angelique Kithos, Dakota Charms.mp4 (557.22 MB)... +Processing: Nerd Girl Foot Worship & Sex - Pornhub.com.mp4 (Mode: scene) +Downloading Nerd Girl Foot Worship & Sex - Pornhub.com.mp4 (72.25 MB)... +Scanning directory: /videos/taboofantasy/holly.tf +Processing: Compressed_A Taboo Fantasy_Hollys-Brother.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Hollys-Brother.mp4 (253.98 MB)... +Processing: MY BABY DADDY-(Holly)-{Taboo Fantasy}-[Black Hair, Blowjob, Daughter, Family Roleplay, Father, Hairless Pussy, Impregnation, Natural Tits, Older Man - Younger Woman, Pussy Licking, Tall Socks, Teen Girl (18–22), creampie].mp4 (Mode: scene) +Downloading MY BABY DADDY-(Holly)-{Taboo Fantasy}-[Black Hair, Blowjob, Daughter, Family Roleplay, Father, Hairless Pussy, Impregnation, Natural Tits, Older Man - Younger Woman, Pussy Licking, Tall Socks, Teen Girl (18–22), creampie].mp4 (579.21 MB)... +Processing: FILLING IN FOR MOM-(Holly)-{Taboo Fantasy}-[Blowjob, Brown Hair, Daughter, Family Roleplay, Father, Hairless Pussy, Older Man - Younger Woman, Pigtails, Pussy Licking, Short Woman, Skinny, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading FILLING IN FOR MOM-(Holly)-{Taboo Fantasy}-[Blowjob, Brown Hair, Daughter, Family Roleplay, Father, Hairless Pussy, Older Man - Younger Woman, Pigtails, Pussy Licking, Short Woman, Skinny, Teen Girl (18–22)].mp4 (599.94 MB)... +Processing: Compressed_A Taboo Fantasy_Hollys-Grandpa.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Hollys-Grandpa.mp4 (164.35 MB)... +Processing: A Taboo Fantasy_Brotherly-Love.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Brotherly-Love.mp4 (287.66 MB)... +Scanning directory: /videos/taboofantasy/reagan.lush +Processing: The Reagan Lush Family Album.mp4 (Mode: scene) +Downloading The Reagan Lush Family Album.mp4 (1449.49 MB)... +Scanning directory: /videos/taboofantasy/tristan.berrimore +Processing: Tristan Berrimore Takes her Stepdads Dick up her Pussy - Pornhub.mp4 (Mode: scene) +Downloading Tristan Berrimore Takes her Stepdads Dick up her Pussy - Pornhub.mp4 (683.63 MB)... +Scanning directory: /videos/taboofantasy/taboofantasy_if-1 +Processing: DAD FUCKED ME AND ATE MY PUSSY-(Dillion Carter)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading DAD FUCKED ME AND ATE MY PUSSY-(Dillion Carter)-{Taboo Fantasy}.mp4 (123.19 MB)... +Processing: HEAT WAVE!!!!-(Melody Lynn)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading HEAT WAVE!!!!-(Melody Lynn)-{Taboo Fantasy}.mp4 (94.99 MB)... +Processing: Jemma Valentine - Family Album Volume 2 Scene 4 - The Gucci Purse - TabooFantasy.mp4 (Mode: scene) +Downloading Jemma Valentine - Family Album Volume 2 Scene 4 - The Gucci Purse - TabooFantasy.mp4 (143.88 MB)... +Processing: SLEEPWALKER-(Lola Milano)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading SLEEPWALKER-(Lola Milano)-{Taboo Fantasy}.mp4 (77.31 MB)... +Processing: Dani Dare - Dani Dares Family Album - Man of the House - TabooFantasy.mp4 (Mode: scene) +Downloading Dani Dare - Dani Dares Family Album - Man of the House - TabooFantasy.mp4 (97.14 MB)... +Processing: Daisy Destin - Family Album Volume 2 Scene 3 - Stop Jerking Off To Your Sister - TabooFantasy.mp4 (Mode: scene) +Downloading Daisy Destin - Family Album Volume 2 Scene 3 - Stop Jerking Off To Your Sister - TabooFantasy.mp4 (86.12 MB)... +Processing: Stacy - Wicked Mother (3) - Blackmailed By Mommy - TabooFantasy.mp4 (Mode: scene) +Downloading Stacy - Wicked Mother (3) - Blackmailed By Mommy - TabooFantasy.mp4 (46.92 MB)... +Processing: Melody - Black Magic - TabooFantasy. Brother turns Sister into a sex-crazed nymphomaniac.mp4 (Mode: scene) +Downloading Melody - Black Magic - TabooFantasy. Brother turns Sister into a sex-crazed nymphomaniac.mp4 (125.80 MB)... +Processing: Holly Mae' Family Album - Happy Birthday, Love Holly - TabooFantasy.mp4 (Mode: scene) +Downloading Holly Mae' Family Album - Happy Birthday, Love Holly - TabooFantasy.mp4 (132.14 MB)... +Processing: WE CAN'T HELP IT!!-(Julia Styles)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading WE CAN'T HELP IT!!-(Julia Styles)-{Taboo Fantasy}.mp4 (55.75 MB)... +Processing: Alaina Rose in RoboSister by Taboo Fantasy.mp4 (Mode: scene) +Downloading Alaina Rose in RoboSister by Taboo Fantasy.mp4 (124.24 MB)... +Processing: I GOT MY AUNT PREGNANT!-(Cherry Morgan, Ciara Blue)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading I GOT MY AUNT PREGNANT!-(Cherry Morgan, Ciara Blue)-{Taboo Fantasy}.mp4 (97.91 MB)... +Processing: Helena Price - Mother Fuckers Volume 11 Scene 2 - TabooFantasy.mp4 (Mode: scene) +Downloading Helena Price - Mother Fuckers Volume 11 Scene 2 - TabooFantasy.mp4 (99.56 MB)... +Processing: Lisa willing to do anything for her Father in order to get her car back.mp4 (Mode: scene) +Downloading Lisa willing to do anything for her Father in order to get her car back.mp4 (285.73 MB)... +Processing: Candy Anderson - Daddy's Girl Volume 34 - I Sucked Daddy's Cock - TabooFantasy.mp4 (Mode: scene) +Downloading Candy Anderson - Daddy's Girl Volume 34 - I Sucked Daddy's Cock - TabooFantasy.mp4 (92.05 MB)... +Processing: Amber Lynn Bach - My Mom The Pornstar Episode 4 - TabooFantasy.mp4 (Mode: scene) +Downloading Amber Lynn Bach - My Mom The Pornstar Episode 4 - TabooFantasy.mp4 (76.53 MB)... +Processing: Daisy Destin - Family Album Volume 2 Scene 4 - The Mommy Experience - TabooFantasy.mp4 (Mode: scene) +Downloading Daisy Destin - Family Album Volume 2 Scene 4 - The Mommy Experience - TabooFantasy.mp4 (90.74 MB)... +Processing: Alura Jenson - Sons Morning Wood - Taboo Fantasy.mp4 (Mode: scene) +Downloading Alura Jenson - Sons Morning Wood - Taboo Fantasy.mp4 (87.26 MB)... +Processing: Sofia Kiss - Family Album (2) - Living With Mom - TabooFantasy.mp4 (Mode: scene) +Downloading Sofia Kiss - Family Album (2) - Living With Mom - TabooFantasy.mp4 (81.32 MB)... +Processing: Tabatha Jordan - Thunder Buddies 3 - TabooFantasy.mp4 (Mode: scene) +Downloading Tabatha Jordan - Thunder Buddies 3 - TabooFantasy.mp4 (90.83 MB)... +Processing: COCK BLOCKED BY MY SISTER!!-(Alexis)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading COCK BLOCKED BY MY SISTER!!-(Alexis)-{Taboo Fantasy}.mp4 (78.91 MB)... +Processing: Deannas Family Album (2) - Mother cums first before girlfriend - Taboo Fantasy.mp4 (Mode: scene) +Downloading Deannas Family Album (2) - Mother cums first before girlfriend - Taboo Fantasy.mp4 (96.91 MB)... +Processing: Kenzi Foxx - Family Album 3 - Mother of the Year - TabooFantasy.mp4 (Mode: scene) +Downloading Kenzi Foxx - Family Album 3 - Mother of the Year - TabooFantasy.mp4 (90.81 MB)... +Processing: Blairs Family Album - The Sister Experience - TabooFantasy.mp4 (Mode: scene) +Downloading Blairs Family Album - The Sister Experience - TabooFantasy.mp4 (107.84 MB)... +Processing: Tamara Lopez Family Album - Magic Remote Control - TabooFantasy.mp4 (Mode: scene) +Downloading Tamara Lopez Family Album - Magic Remote Control - TabooFantasy.mp4 (86.04 MB)... +Processing: Jenni's Family Album Scene 3 - Double Or Nothing - TabooFantasy.mp4 (Mode: scene) +Downloading Jenni's Family Album Scene 3 - Double Or Nothing - TabooFantasy.mp4 (160.96 MB)... +Processing: Alexis Ortiz - Daddy's Girl Volume 28 - The Daughter App - TabooFantasy.mp4 (Mode: scene) +Downloading Alexis Ortiz - Daddy's Girl Volume 28 - The Daughter App - TabooFantasy.mp4 (115.36 MB)... +Processing: Violet Thompson - Brother Fuckers Volume 20 - Helping My Sister With Her Homework - TabooFantasy.mp4 (Mode: scene) +Downloading Violet Thompson - Brother Fuckers Volume 20 - Helping My Sister With Her Homework - TabooFantasy.mp4 (107.25 MB)... +Processing: MOTHERLY FAVOURS-(Shaylynn)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading MOTHERLY FAVOURS-(Shaylynn)-{Taboo Fantasy}.mp4 (96.19 MB)... +Processing: Hannahs Family Album (3) - Parent-Teacher Conference - TabooFantasy.mp4 (Mode: scene) +Downloading Hannahs Family Album (3) - Parent-Teacher Conference - TabooFantasy.mp4 (97.89 MB)... +Processing: Logan Sinns - Sharing A Room With My Brother - TabooFantasy.mp4 (Mode: scene) +Downloading Logan Sinns - Sharing A Room With My Brother - TabooFantasy.mp4 (112.40 MB)... +Processing: Dani Dare - Dani Dares Family Album - Mom Cheered Me Up - TabooFantasy.mp4 (Mode: scene) +Downloading Dani Dare - Dani Dares Family Album - Mom Cheered Me Up - TabooFantasy.mp4 (86.25 MB)... +Processing: Allison's Family Album Volume 2 - Blackmailed Sibling - TabooFantasy.mp4 (Mode: scene) +Downloading Allison's Family Album Volume 2 - Blackmailed Sibling - TabooFantasy.mp4 (154.77 MB)... +Processing: CRAZY UNCLE JACK-(Carly Strohm)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading CRAZY UNCLE JACK-(Carly Strohm)-{Taboo Fantasy}.mp4 (107.87 MB)... +Processing: Lyla Peterson's Family Album 4 - Voodoo Brew - TabooFantasy.mp4 (Mode: scene) +Downloading Lyla Peterson's Family Album 4 - Voodoo Brew - TabooFantasy.mp4 (119.92 MB)... +Processing: Tabatha's Family Album - Blackmail Sister Fuck - TabooFantasy.mp4 (Mode: scene) +Downloading Tabatha's Family Album - Blackmail Sister Fuck - TabooFantasy.mp4 (85.49 MB)... +Processing: Sophia Sweet - Family Album - Showering Siblings - TabooFantasy.mp4 (Mode: scene) +Downloading Sophia Sweet - Family Album - Showering Siblings - TabooFantasy.mp4 (104.15 MB)... +Processing: Ophelia Rain - My Uncles Cumming Today - TabooFantasy.mp4 (Mode: scene) +Downloading Ophelia Rain - My Uncles Cumming Today - TabooFantasy.mp4 (128.13 MB)... +Processing: Jenni's Family Album Scene 4 - Home Alone 2 - TabooFantasy.mp4 (Mode: scene) +Downloading Jenni's Family Album Scene 4 - Home Alone 2 - TabooFantasy.mp4 (109.76 MB)... +Processing: Holly Mae' Family Album - Homework With Holly - TabooFantasy.mp4 (Mode: scene) +Downloading Holly Mae' Family Album - Homework With Holly - TabooFantasy.mp4 (107.98 MB)... +Processing: Melanie Hicks - Family Album 3 - Showering With My Mom - TabooFantasy.mp4 (Mode: scene) +Downloading Melanie Hicks - Family Album 3 - Showering With My Mom - TabooFantasy.mp4 (127.43 MB)... +Processing: Amber Lynn Bach - My Mom The Pornstar Episode 3 - TabooFantasy.mp4 (Mode: scene) +Downloading Amber Lynn Bach - My Mom The Pornstar Episode 3 - TabooFantasy.mp4 (91.13 MB)... +Processing: DEFLOWERED BY MY SISTER!!-(Katie Cummings)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading DEFLOWERED BY MY SISTER!!-(Katie Cummings)-{Taboo Fantasy}.mp4 (133.57 MB)... +Processing: Violet Thompson's Family Album Two - Doing My Sister's Chores - TabooFantasy.mp4 (Mode: scene) +Downloading Violet Thompson's Family Album Two - Doing My Sister's Chores - TabooFantasy.mp4 (78.37 MB)... +Processing: Tellula Rose - Thunder Buddies - TabooFantasy.mp4 (Mode: scene) +Downloading Tellula Rose - Thunder Buddies - TabooFantasy.mp4 (140.01 MB)... +Processing: Mom gets banged by Dad and her Sons. Family Game Night - Joseys Family Album by Taboo Fantasy.mp4 (Mode: scene) +Downloading Mom gets banged by Dad and her Sons. Family Game Night - Joseys Family Album by Taboo Fantasy.mp4 (111.58 MB)... +Processing: Stacy - Wicked Mother (4) - Evil Mommy - TabooFantasy.mp4 (Mode: scene) +Downloading Stacy - Wicked Mother (4) - Evil Mommy - TabooFantasy.mp4 (75.99 MB)... +Processing: A FAMILY PREGNANCY-(Anastasia Rose)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading A FAMILY PREGNANCY-(Anastasia Rose)-{Taboo Fantasy}.mp4 (132.16 MB)... +Processing: NAKED YOGA-(Vyxen Steel)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading NAKED YOGA-(Vyxen Steel)-{Taboo Fantasy}.mp4 (69.11 MB)... +Processing: Clara Belle - Daddy's Girl Volume 32 - The Sperm Diet - TabooFantasy.mp4 (Mode: scene) +Downloading Clara Belle - Daddy's Girl Volume 32 - The Sperm Diet - TabooFantasy.mp4 (91.88 MB)... +Processing: Kahli Sweeney - Daddy's Girl Volume 28 - Happy Father's Day - TabooFantasy.mp4 (Mode: scene) +Downloading Kahli Sweeney - Daddy's Girl Volume 28 - Happy Father's Day - TabooFantasy.mp4 (128.92 MB)... +Processing: Jemma Valentine plays Taboo Card Game with her Brother.mp4 (Mode: scene) +Downloading Jemma Valentine plays Taboo Card Game with her Brother.mp4 (108.71 MB)... +Processing: Father deflowers his Daughter Lylah under the supervision of therapist Ciara Blue. Deflowering Therapy by TabooFantasy.mp4 (Mode: scene) +Downloading Father deflowers his Daughter Lylah under the supervision of therapist Ciara Blue. Deflowering Therapy by TabooFantasy.mp4 (93.74 MB)... +Processing: Tamara Lopez Family Album - Helping My Sis Cum - TabooFantasy.mp4 (Mode: scene) +Downloading Tamara Lopez Family Album - Helping My Sis Cum - TabooFantasy.mp4 (71.51 MB)... +Processing: Allison's Family Album Volume 2 - Accidental Viagra Overdose - TabooFantasy.mp4 (Mode: scene) +Downloading Allison's Family Album Volume 2 - Accidental Viagra Overdose - TabooFantasy.mp4 (130.03 MB)... +Processing: PAYBACK IS A BITCH!!-(Susanna)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading PAYBACK IS A BITCH!!-(Susanna)-{Taboo Fantasy}.mp4 (79.11 MB)... +Processing: Sofia Kiss - Family Album (3) - Mommy Cheered Me Up - TabooFantasy.mp4 (Mode: scene) +Downloading Sofia Kiss - Family Album (3) - Mommy Cheered Me Up - TabooFantasy.mp4 (88.74 MB)... +Processing: Stacy - Wicked Mother (5) - Evil Mommy - TabooFantasy.mp4 (Mode: scene) +Downloading Stacy - Wicked Mother (5) - Evil Mommy - TabooFantasy.mp4 (86.23 MB)... +Processing: Dakota Raven - Daddy's Girl Volume 32 - Full Moon Fever - TabooFantasy.mp4 (Mode: scene) +Downloading Dakota Raven - Daddy's Girl Volume 32 - Full Moon Fever - TabooFantasy.mp4 (139.72 MB)... +Processing: Joclyn Stone - Motherly Masturbation - Taboo Fantasy.mp4 (Mode: scene) +Downloading Joclyn Stone - Motherly Masturbation - Taboo Fantasy.mp4 (99.92 MB)... +Processing: Soleil Saunders and her Brother fuck while drunk. Relaxed Fuck by TabooFantasy.mp4 (Mode: scene) +Downloading Soleil Saunders and her Brother fuck while drunk. Relaxed Fuck by TabooFantasy.mp4 (79.99 MB)... +Processing: Sofia Kiss - Family Album (1) - Hot For Mom Syndrome - TabooFantasy.mp4 (Mode: scene) +Downloading Sofia Kiss - Family Album (1) - Hot For Mom Syndrome - TabooFantasy.mp4 (103.35 MB)... +Processing: Molly Jane - Mollys Family Album 1 - Bedtime Story - TabooFantasy.mp4 (Mode: scene) +Downloading Molly Jane - Mollys Family Album 1 - Bedtime Story - TabooFantasy.mp4 (128.18 MB)... +Processing: Audrey Elizabeth - Daddy's Girls Volume 36 - Sucked Off Grandpa - TabooFantasy.mp4 (Mode: scene) +Downloading Audrey Elizabeth - Daddy's Girls Volume 36 - Sucked Off Grandpa - TabooFantasy.mp4 (118.85 MB)... +Processing: THE FINAL FUCK!!-(Blair)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading THE FINAL FUCK!!-(Blair)-{Taboo Fantasy}.mp4 (89.35 MB)... +Processing: Son wont let Mom and Dad screw in peace. The Bad Son - Joseys Family Album by Taboo Fantasy.mp4 (Mode: scene) +Downloading Son wont let Mom and Dad screw in peace. The Bad Son - Joseys Family Album by Taboo Fantasy.mp4 (83.04 MB)... +Processing: SHARING A BED-(Julia Styles)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading SHARING A BED-(Julia Styles)-{Taboo Fantasy}.mp4 (77.57 MB)... +Processing: Deannas Family Album (4) - Mommys Mad about bad grades - Taboo Fantasy.mp4 (Mode: scene) +Downloading Deannas Family Album (4) - Mommys Mad about bad grades - Taboo Fantasy.mp4 (71.84 MB)... +Processing: Phenecs Family Album 3 - Taboo Fantasy.mp4 (Mode: scene) +Downloading Phenecs Family Album 3 - Taboo Fantasy.mp4 (96.77 MB)... +Processing: PAYBACK IN THE ASS!!!-(Susanna)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading PAYBACK IN THE ASS!!!-(Susanna)-{Taboo Fantasy}.mp4 (96.92 MB)... +Processing: Angel - Sisterly Facial - TabooFantasy. Sister caught Brother jerking off with porno mags.mp4 (Mode: scene) +Downloading Angel - Sisterly Facial - TabooFantasy. Sister caught Brother jerking off with porno mags.mp4 (66.58 MB)... +Processing: Motherly Discipline - Joseys Family Album by Taboo Fantasy.mp4 (Mode: scene) +Downloading Motherly Discipline - Joseys Family Album by Taboo Fantasy.mp4 (71.39 MB)... +Processing: Reagan Lush - Family Album - My New Mom - TabooFantasy.mp4 (Mode: scene) +Downloading Reagan Lush - Family Album - My New Mom - TabooFantasy.mp4 (181.38 MB)... +Processing: Lyla Peterson - Brother Fuckers Volume 26 - My Sis The Pornstar - TabooFantasy.mp4 (Mode: scene) +Downloading Lyla Peterson - Brother Fuckers Volume 26 - My Sis The Pornstar - TabooFantasy.mp4 (138.25 MB)... +Processing: Christelle's Family Album 3 - Brother Fucker - TabooFantasy.mp4 (Mode: scene) +Downloading Christelle's Family Album 3 - Brother Fucker - TabooFantasy.mp4 (45.16 MB)... +Processing: Dillion Carter - Daddy Fucked Me And Ate My Pussy - TabooFantasy.mp4 (Mode: scene) +Downloading Dillion Carter - Daddy Fucked Me And Ate My Pussy - TabooFantasy.mp4 (125.58 MB)... +Processing: Belle - Daughter's Virginity - TabooFantasy.mp4 (Mode: scene) +Downloading Belle - Daughter's Virginity - TabooFantasy.mp4 (151.11 MB)... +Processing: Magical Fertility Necklace 4 - Carlys Family Album by Taboo Fantasy.mp4 (Mode: scene) +Downloading Magical Fertility Necklace 4 - Carlys Family Album by Taboo Fantasy.mp4 (73.64 MB)... +Processing: Phenecs Family Album 4 - Taboo Fantasy.mp4 (Mode: scene) +Downloading Phenecs Family Album 4 - Taboo Fantasy.mp4 (94.07 MB)... +Processing: Tamara Lopez Family Album - Liquid Viagra - TabooFantasy.mp4 (Mode: scene) +Downloading Tamara Lopez Family Album - Liquid Viagra - TabooFantasy.mp4 (72.38 MB)... +Processing: Roxie Love - Brother Fuckers Volume 28 - Sis Cured My Viagra Boner - TabooFantasy.mp4 (Mode: scene) +Downloading Roxie Love - Brother Fuckers Volume 28 - Sis Cured My Viagra Boner - TabooFantasy.mp4 (159.56 MB)... +Processing: Sussanas Family Album by Taboo Fantasy - 4 Full Brother-Sister Scenes.mp4 (Mode: scene) +Downloading Sussanas Family Album by Taboo Fantasy - 4 Full Brother-Sister Scenes.mp4 (403.67 MB)... +Processing: Velvet Skye - Mommy Taught Me To Masturbate - TabooFantasy.mp4 (Mode: scene) +Downloading Velvet Skye - Mommy Taught Me To Masturbate - TabooFantasy.mp4 (103.60 MB)... +Processing: Janna Hicks Family Album Scene (1) - Jerking Off To Mom - TabooFantasy.mp4 (Mode: scene) +Downloading Janna Hicks Family Album Scene (1) - Jerking Off To Mom - TabooFantasy.mp4 (72.34 MB)... +Processing: Carly - Daddy Blackmailed Me - TabooFantasy.mp4 (Mode: scene) +Downloading Carly - Daddy Blackmailed Me - TabooFantasy.mp4 (79.25 MB)... +Processing: Lila Rose's Family Album (1) - Hot For Daddy - TabooFantasy.mp4 (Mode: scene) +Downloading Lila Rose's Family Album (1) - Hot For Daddy - TabooFantasy.mp4 (105.43 MB)... +Processing: Angelina Jolly - Brother Fuckers Volume 26 - The Evil Fertility Idol - TabooFantasy.mp4 (Mode: scene) +Downloading Angelina Jolly - Brother Fuckers Volume 26 - The Evil Fertility Idol - TabooFantasy.mp4 (108.42 MB)... +Processing: Kenzi Foxx - Family Album 4 - Showering With My Mother - TabooFantasy.mp4 (Mode: scene) +Downloading Kenzi Foxx - Family Album 4 - Showering With My Mother - TabooFantasy.mp4 (107.99 MB)... +Processing: Melanie Hicks - Family Album 2 - Mom Is A Pornstar - TabooFantasy.mp4 (Mode: scene) +Downloading Melanie Hicks - Family Album 2 - Mom Is A Pornstar - TabooFantasy.mp4 (144.59 MB)... +Processing: Jeff and Mom Home Movies (3) - Mom Made Me Cum Thrice - Taboo Fantasy.mp4 (Mode: scene) +Downloading Jeff and Mom Home Movies (3) - Mom Made Me Cum Thrice - Taboo Fantasy.mp4 (115.31 MB)... +Processing: A FAMILY LOAN 2-(Susanna)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading A FAMILY LOAN 2-(Susanna)-{Taboo Fantasy}.mp4 (87.31 MB)... +Processing: Cherry Morgan - Aunt Cherry Is A Hooker - Taboo Fantasy.mp4 (Mode: scene) +Downloading Cherry Morgan - Aunt Cherry Is A Hooker - Taboo Fantasy.mp4 (80.81 MB)... +Processing: Reagan Lush - Family Album - Showering With My Hot Mom - TabooFantasy.mp4 (Mode: scene) +Downloading Reagan Lush - Family Album - Showering With My Hot Mom - TabooFantasy.mp4 (148.15 MB)... +Processing: Lucky Starr - Family Album 3 - TabooFantasy.mp4 (Mode: scene) +Downloading Lucky Starr - Family Album 3 - TabooFantasy.mp4 (84.55 MB)... +Processing: DEFLOWER YOUR LITTLE BROTHER!!-(Ariel)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading DEFLOWER YOUR LITTLE BROTHER!!-(Ariel)-{Taboo Fantasy}.mp4 (67.22 MB)... +Processing: Melanie Hicks - Family Album 4 - Mom Of The Year - TabooFantasy.mp4 (Mode: scene) +Downloading Melanie Hicks - Family Album 4 - Mom Of The Year - TabooFantasy.mp4 (110.19 MB)... +Processing: Hannahs Family Album (4) - Stay Away From Your Brother - TabooFantasy.mp4 (Mode: scene) +Downloading Hannahs Family Album (4) - Stay Away From Your Brother - TabooFantasy.mp4 (83.39 MB)... +Processing: Allison's Family Album (1) - Forced To Sleep With My Sister - TabooFantasy.mp4 (Mode: scene) +Downloading Allison's Family Album (1) - Forced To Sleep With My Sister - TabooFantasy.mp4 (71.50 MB)... +Processing: Bentley - Fuck Me Daddy - TabooFantasy.mp4 (Mode: scene) +Downloading Bentley - Fuck Me Daddy - TabooFantasy.mp4 (73.59 MB)... +Processing: I BLACKMAILED MY BIG BROTHER-(Alexis Blaze)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading I BLACKMAILED MY BIG BROTHER-(Alexis Blaze)-{Taboo Fantasy}.mp4 (91.11 MB)... +Processing: Lucky Starr - Brother and Sister are drinking buddies - TabooFantasy.mp4 (Mode: scene) +Downloading Lucky Starr - Brother and Sister are drinking buddies - TabooFantasy.mp4 (103.86 MB)... +Processing: We Are The Millers - Wedding Day - TabooFantasy.mp4 (Mode: scene) +Downloading We Are The Millers - Wedding Day - TabooFantasy.mp4 (74.45 MB)... +Processing: Joclyn Stone, Mallory - Sisterly Revenge - TabooFantasy.mp4 (Mode: scene) +Downloading Joclyn Stone, Mallory - Sisterly Revenge - TabooFantasy.mp4 (130.51 MB)... +Processing: FUCK YOUR SISTER!!!-(Ashlynn Taylor, Ciara Blue)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading FUCK YOUR SISTER!!!-(Ashlynn Taylor, Ciara Blue)-{Taboo Fantasy}.mp4 (139.99 MB)... +Processing: STEP-SIBLING FORNICATION-(Vyxen Steel)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading STEP-SIBLING FORNICATION-(Vyxen Steel)-{Taboo Fantasy}.mp4 (73.10 MB)... +Processing: Aries Ackerman - Daddy's Girl Volume 33 - Girl Of The House - TabooFantasy.mp4 (Mode: scene) +Downloading Aries Ackerman - Daddy's Girl Volume 33 - Girl Of The House - TabooFantasy.mp4 (114.90 MB)... +Processing: Violet Thompson's Family Album Two - Bro Is A Premature Ejaculator - TabooFantasy.mp4 (Mode: scene) +Downloading Violet Thompson's Family Album Two - Bro Is A Premature Ejaculator - TabooFantasy.mp4 (41.63 MB)... +Processing: Marilyn Sucks Off Her Family - Bro - TabooFantasy.mp4 (Mode: scene) +Downloading Marilyn Sucks Off Her Family - Bro - TabooFantasy.mp4 (92.47 MB)... +Processing: PUNISHED FOR PROMISCUITY-(Shaylynn)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading PUNISHED FOR PROMISCUITY-(Shaylynn)-{Taboo Fantasy}.mp4 (85.04 MB)... +Processing: Jordyn - Daddy's Girls Volume 35 - Daddy With Benefits - TabooFantasy.mp4 (Mode: scene) +Downloading Jordyn - Daddy's Girls Volume 35 - Daddy With Benefits - TabooFantasy.mp4 (114.97 MB)... +Processing: Molly Jane - Mollys Family Album 2 - Daddy's Weakness - TabooFantasy.mp4 (Mode: scene) +Downloading Molly Jane - Mollys Family Album 2 - Daddy's Weakness - TabooFantasy.mp4 (113.21 MB)... +Processing: We Are The Millers - The Chastity Belt - TabooFantasy.mp4 (Mode: scene) +Downloading We Are The Millers - The Chastity Belt - TabooFantasy.mp4 (81.70 MB)... +Processing: SHARING ONE BEDROOM-(Susanna)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading SHARING ONE BEDROOM-(Susanna)-{Taboo Fantasy}.mp4 (83.37 MB)... +Processing: Lexi Eros, Faith Anderson, Marilyn - Family Gang Jerk. Mom joins daughters jerking off boyfriend.mp4 (Mode: scene) +Downloading Lexi Eros, Faith Anderson, Marilyn - Family Gang Jerk. Mom joins daughters jerking off boyfriend.mp4 (103.05 MB)... +Processing: Cameron Dias - Mom Gets A Facial - TabooFantasy.mp4 (Mode: scene) +Downloading Cameron Dias - Mom Gets A Facial - TabooFantasy.mp4 (48.05 MB)... +Processing: ROBODAUGHTER-(Cali Johnson)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading ROBODAUGHTER-(Cali Johnson)-{Taboo Fantasy}.mp4 (134.99 MB)... +Processing: Sunshine Tampa - Family Album - Family Fornication - TabooFantasy.mp4 (Mode: scene) +Downloading Sunshine Tampa - Family Album - Family Fornication - TabooFantasy.mp4 (138.87 MB)... +Processing: Allison - Daddy's Girls Volume 27 - The Punishment - TabooFantasy.mp4 (Mode: scene) +Downloading Allison - Daddy's Girls Volume 27 - The Punishment - TabooFantasy.mp4 (126.33 MB)... +Processing: LET'S MAKE A DEAL!!-(Molly Jane)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading LET'S MAKE A DEAL!!-(Molly Jane)-{Taboo Fantasy}.mp4 (96.18 MB)... +Processing: Christelle's Family Album 9 - Uncle Mickey - TabooFantasy.mp4 (Mode: scene) +Downloading Christelle's Family Album 9 - Uncle Mickey - TabooFantasy.mp4 (33.84 MB)... +Processing: Velvet Skye - Watching Porn With Mom - TabooFantasy.mp4 (Mode: scene) +Downloading Velvet Skye - Watching Porn With Mom - TabooFantasy.mp4 (89.91 MB)... +Processing: Lucky Starr - Family Album 2 - TabooFantasy.mp4 (Mode: scene) +Downloading Lucky Starr - Family Album 2 - TabooFantasy.mp4 (81.96 MB)... +Processing: Deannas Family Album (3) - Mommy waits up - Taboo Fantasy.mp4 (Mode: scene) +Downloading Deannas Family Album (3) - Mommy waits up - Taboo Fantasy.mp4 (64.26 MB)... +Processing: Angelina Jolly - Brother Fuckers Volume 25 - Angelina's Curfew - TabooFantasy.mp4 (Mode: scene) +Downloading Angelina Jolly - Brother Fuckers Volume 25 - Angelina's Curfew - TabooFantasy.mp4 (114.52 MB)... +Processing: Katie - Sister's Anal Creampie - TabooFantasy.mp4 (Mode: scene) +Downloading Katie - Sister's Anal Creampie - TabooFantasy.mp4 (49.60 MB)... +Processing: Claire Heart's Family Album Scene 4 - TabooFantasy.mp4 (Mode: scene) +Downloading Claire Heart's Family Album Scene 4 - TabooFantasy.mp4 (80.96 MB)... +Processing: Ashley, Summer - American Idol Finale - TabooFantasy. Sisters fuck Brother for TV Remote.mp4 (Mode: scene) +Downloading Ashley, Summer - American Idol Finale - TabooFantasy. Sisters fuck Brother for TV Remote.mp4 (74.35 MB)... +Processing: I WANT A BABY!!!-(Molly Jane)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading I WANT A BABY!!!-(Molly Jane)-{Taboo Fantasy}.mp4 (93.01 MB)... +Processing: I FUCKED MY SISTER AND I LIKED IT!!!-(Blair)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading I FUCKED MY SISTER AND I LIKED IT!!!-(Blair)-{Taboo Fantasy}.mp4 (85.36 MB)... +Processing: Kahli Sweeney - Daddy's Girls Volume 27 - The Daughter Experience - TabooFantasy.mp4 (Mode: scene) +Downloading Kahli Sweeney - Daddy's Girls Volume 27 - The Daughter Experience - TabooFantasy.mp4 (137.12 MB)... +Processing: Ciara Blue - Mom Is A Fuck Slut - TabooFantasy.mp4 (Mode: scene) +Downloading Ciara Blue - Mom Is A Fuck Slut - TabooFantasy.mp4 (172.02 MB)... +Processing: KNOCK ME UP STEP-BRO!-(Vyxen Steel)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading KNOCK ME UP STEP-BRO!-(Vyxen Steel)-{Taboo Fantasy}.mp4 (69.83 MB)... +Processing: TRIGASM!!!-(Alexa Night)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading TRIGASM!!!-(Alexa Night)-{Taboo Fantasy}.mp4 (102.15 MB)... +Processing: Vyxen Steel hypnotized and fucked by her Brother.mp4 (Mode: scene) +Downloading Vyxen Steel hypnotized and fucked by her Brother.mp4 (68.48 MB)... +Processing: Janna Hicks Family Album Scene (2) - Ricky's Allowance - TabooFantasy.mp4 (Mode: scene) +Downloading Janna Hicks Family Album Scene (2) - Ricky's Allowance - TabooFantasy.mp4 (94.49 MB)... +Processing: Daisy Destin - Family Album Volume 2 Scene 2 - Hot For Mom Syndrome - TabooFantasy.mp4 (Mode: scene) +Downloading Daisy Destin - Family Album Volume 2 Scene 2 - Hot For Mom Syndrome - TabooFantasy.mp4 (84.26 MB)... +Processing: Violet Thompson - Brother Fuckers Volume 20 - Blackmailing Thompson - TabooFantasy.mp4 (Mode: scene) +Downloading Violet Thompson - Brother Fuckers Volume 20 - Blackmailing Thompson - TabooFantasy.mp4 (99.20 MB)... +Processing: Jessi Young - Magical Fertility Necklace - TabooFantasy.mp4 (Mode: scene) +Downloading Jessi Young - Magical Fertility Necklace - TabooFantasy.mp4 (78.62 MB)... +Processing: Rylan Rhodes Family Album (4) - Practice Sex With Mom - Taboo Fantasy.mp4 (Mode: scene) +Downloading Rylan Rhodes Family Album (4) - Practice Sex With Mom - Taboo Fantasy.mp4 (95.83 MB)... +Processing: Joclyn Stone, Mallory - Relaxed Family Fuckfest - TabooFantasy.mp4 (Mode: scene) +Downloading Joclyn Stone, Mallory - Relaxed Family Fuckfest - TabooFantasy.mp4 (144.82 MB)... +Processing: MAGIC BEANS EPISODE 2-(Helena Price)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading MAGIC BEANS EPISODE 2-(Helena Price)-{Taboo Fantasy}.mp4 (103.28 MB)... +Processing: Melody - Voodoo Doll - TabooFantasy.mp4 (Mode: scene) +Downloading Melody - Voodoo Doll - TabooFantasy.mp4 (83.29 MB)... +Processing: Jemma Valentine - Family Album Volume 2 Scene 2 - Eat Your Broccoli - TabooFantasy.mp4 (Mode: scene) +Downloading Jemma Valentine - Family Album Volume 2 Scene 2 - Eat Your Broccoli - TabooFantasy.mp4 (120.78 MB)... +Processing: Christelle's Family Album 5 - Sister's Ass In My Face - TabooFantasy.mp4 (Mode: scene) +Downloading Christelle's Family Album 5 - Sister's Ass In My Face - TabooFantasy.mp4 (57.51 MB)... +Processing: Dakota Raven - The Sperm Diet Episode 3 - TabooFantasy.mp4 (Mode: scene) +Downloading Dakota Raven - The Sperm Diet Episode 3 - TabooFantasy.mp4 (111.44 MB)... +Processing: Rylan Rhodes Family Album (2) - Fuck your Mother not your Sister - Taboo Fantasy.mp4 (Mode: scene) +Downloading Rylan Rhodes Family Album (2) - Fuck your Mother not your Sister - Taboo Fantasy.mp4 (82.46 MB)... +Processing: STEP-MOMMY MADE ME CUM 3 TIMES!!-(Helena Price)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading STEP-MOMMY MADE ME CUM 3 TIMES!!-(Helena Price)-{Taboo Fantasy}.mp4 (107.41 MB)... +Processing: Sophia Sweet - Family Album - The Sperm Diet - TabooFantasy.mp4 (Mode: scene) +Downloading Sophia Sweet - Family Album - The Sperm Diet - TabooFantasy.mp4 (117.20 MB)... +Processing: Dani Dare - Dani Dares Family Album - Mom With Benefits - TabooFantasy.mp4 (Mode: scene) +Downloading Dani Dare - Dani Dares Family Album - Mom With Benefits - TabooFantasy.mp4 (97.57 MB)... +Processing: Marilyn Sucks Off Her Family - Daddy - TabooFantasy.mp4 (Mode: scene) +Downloading Marilyn Sucks Off Her Family - Daddy - TabooFantasy.mp4 (64.55 MB)... +Processing: Kenzi Foxx - Family Album 1 - I Knocked Up My Mom - TabooFantasy.mp4 (Mode: scene) +Downloading Kenzi Foxx - Family Album 1 - I Knocked Up My Mom - TabooFantasy.mp4 (99.93 MB)... +Processing: DADDY IM A COCK SUCKER!!!-(Cali Johnson)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading DADDY IM A COCK SUCKER!!!-(Cali Johnson)-{Taboo Fantasy}.mp4 (95.57 MB)... +Processing: PAVLOV'S BELL-(Lexi Eros)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading PAVLOV'S BELL-(Lexi Eros)-{Taboo Fantasy}.mp4 (86.36 MB)... +Processing: We Are The Millers - Family Game Night - TabooFantasy.mp4 (Mode: scene) +Downloading We Are The Millers - Family Game Night - TabooFantasy.mp4 (107.23 MB)... +Processing: A FAMILY GAME-(Faith Anderson, Alexis)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading A FAMILY GAME-(Faith Anderson, Alexis)-{Taboo Fantasy}.mp4 (105.37 MB)... +Processing: Lexi Eros - Return of the Power Fertility Idol - TabooFantasy.mp4 (Mode: scene) +Downloading Lexi Eros - Return of the Power Fertility Idol - TabooFantasy.mp4 (82.58 MB)... +Processing: Violet Thompson - Daddy's Girl Volume 34 - Punishing Violet - TabooFantasy.mp4 (Mode: scene) +Downloading Violet Thompson - Daddy's Girl Volume 34 - Punishing Violet - TabooFantasy.mp4 (128.61 MB)... +Processing: Danica Dillons Dad is her fuckbuddy tonight.mp4 (Mode: scene) +Downloading Danica Dillons Dad is her fuckbuddy tonight.mp4 (66.61 MB)... +Processing: Amanda Verhooks - Magical Fertility Necklace 2 - TabooFantasy.mp4 (Mode: scene) +Downloading Amanda Verhooks - Magical Fertility Necklace 2 - TabooFantasy.mp4 (85.40 MB)... +Processing: FARMER'S DAUGHTER-(Daisy Destin)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading FARMER'S DAUGHTER-(Daisy Destin)-{Taboo Fantasy}.mp4 (91.25 MB)... +Processing: Tabatha's Family Album - I Scored My Baby Sisters Virginity - TabooFantasy.mp4 (Mode: scene) +Downloading Tabatha's Family Album - I Scored My Baby Sisters Virginity - TabooFantasy.mp4 (132.49 MB)... +Processing: Helena Price - Mother Fuckers Volume 11 Scene 1 - TabooFantasy.mp4 (Mode: scene) +Downloading Helena Price - Mother Fuckers Volume 11 Scene 1 - TabooFantasy.mp4 (86.98 MB)... +Processing: Eva Long - Daughter offers sexual favors for an iPhone - Taboo Fantasy.mp4 (Mode: scene) +Downloading Eva Long - Daughter offers sexual favors for an iPhone - Taboo Fantasy.mp4 (82.85 MB)... +Processing: A FAMILY THREESOME-(Jemma Valentine)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading A FAMILY THREESOME-(Jemma Valentine)-{Taboo Fantasy}.mp4 (132.38 MB)... +Processing: I'M HAVING DADDY'S BABY-(Jordyn Snow)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading I'M HAVING DADDY'S BABY-(Jordyn Snow)-{Taboo Fantasy}.mp4 (89.30 MB)... +Processing: Reagan Lush - Family Album - Spying On My Mom - TabooFantasy.mp4 (Mode: scene) +Downloading Reagan Lush - Family Album - Spying On My Mom - TabooFantasy.mp4 (158.91 MB)... +Processing: WOMEN'S LIBERATION-(Cali Johnson)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading WOMEN'S LIBERATION-(Cali Johnson)-{Taboo Fantasy}.mp4 (107.53 MB)... +Processing: Claire Heart's Family Album Scene 3 - TabooFantasy.mp4 (Mode: scene) +Downloading Claire Heart's Family Album Scene 3 - TabooFantasy.mp4 (119.59 MB)... +Processing: BIG SISTER BLACKMAILED-(Ariel)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading BIG SISTER BLACKMAILED-(Ariel)-{Taboo Fantasy}.mp4 (72.09 MB)... +Processing: FEMALE VIAGRA-(Jemma Valentine)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading FEMALE VIAGRA-(Jemma Valentine)-{Taboo Fantasy}.mp4 (85.53 MB)... +Processing: Phenecs Family Album 1 - Taboo Fantasy.mp4 (Mode: scene) +Downloading Phenecs Family Album 1 - Taboo Fantasy.mp4 (92.41 MB)... +Processing: CAUGHT IN THE ACT-(Julia Styles)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading CAUGHT IN THE ACT-(Julia Styles)-{Taboo Fantasy}.mp4 (55.44 MB)... +Processing: Sunshine Tampa - Family Album - Mom Sat On My Face - TabooFantasy.mp4 (Mode: scene) +Downloading Sunshine Tampa - Family Album - Mom Sat On My Face - TabooFantasy.mp4 (150.21 MB)... +Processing: Sophia Sweet - Family Album - My Sister The Pornstar - TabooFantasy.mp4 (Mode: scene) +Downloading Sophia Sweet - Family Album - My Sister The Pornstar - TabooFantasy.mp4 (92.24 MB)... +Processing: Lyla Peterson - Brother Fuckers Volume 25 - Hot For Baby Sister Syndrome - TabooFantasy.mp4 (Mode: scene) +Downloading Lyla Peterson - Brother Fuckers Volume 25 - Hot For Baby Sister Syndrome - TabooFantasy.mp4 (139.64 MB)... +Processing: Stacie Starr - Sunday Fuckfest After Church - Taboo Fantasy.mp4 (Mode: scene) +Downloading Stacie Starr - Sunday Fuckfest After Church - Taboo Fantasy.mp4 (83.50 MB)... +Processing: Allison's Family Album (3) - Sex-Ed With My Sister - TabooFantasy.mp4 (Mode: scene) +Downloading Allison's Family Album (3) - Sex-Ed With My Sister - TabooFantasy.mp4 (90.07 MB)... +Processing: Karley - Helping My Sister With Her School Homework - TabooFantasy.mp4 (Mode: scene) +Downloading Karley - Helping My Sister With Her School Homework - TabooFantasy.mp4 (96.05 MB)... +Processing: Michelle Meadows - Michelles Boys (4) Mommy Bang - TabooFantasy.mp4 (Mode: scene) +Downloading Michelle Meadows - Michelles Boys (4) Mommy Bang - TabooFantasy.mp4 (75.90 MB)... +Processing: I Raped My Sister - Danicas Family Album by Taboo Fantasy.mp4 (Mode: scene) +Downloading I Raped My Sister - Danicas Family Album by Taboo Fantasy.mp4 (77.03 MB)... +Processing: Shaylynn's Family Album - Mommy Made Me Fuck Her - TabooFantasy.mp4 (Mode: scene) +Downloading Shaylynn's Family Album - Mommy Made Me Fuck Her - TabooFantasy.mp4 (85.32 MB)... +Processing: Melanie Hicks - Family Album 1 - Female Viagra - TabooFantasy.mp4 (Mode: scene) +Downloading Melanie Hicks - Family Album 1 - Female Viagra - TabooFantasy.mp4 (96.50 MB)... +Processing: HOME ALONE 4-(Susanna)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading HOME ALONE 4-(Susanna)-{Taboo Fantasy}.mp4 (84.80 MB)... +Processing: Stacie Starr - Family Game Night - Taboo Fantasy.mp4 (Mode: scene) +Downloading Stacie Starr - Family Game Night - Taboo Fantasy.mp4 (118.15 MB)... +Processing: Stevie - Go Fuck Yourselves - TabooFantasy.mp4 (Mode: scene) +Downloading Stevie - Go Fuck Yourselves - TabooFantasy.mp4 (86.54 MB)... +Processing: My Sister Raped Me - Danicas Family Album by Taboo Fantasy.mp4 (Mode: scene) +Downloading My Sister Raped Me - Danicas Family Album by Taboo Fantasy.mp4 (99.05 MB)... +Processing: Stevie - The Water Conservation Theory - TabooFantasy.mp4 (Mode: scene) +Downloading Stevie - The Water Conservation Theory - TabooFantasy.mp4 (81.01 MB)... +Processing: THE TASTE OF FORBIDDEN FRUIT!!-(Logan Lace)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading THE TASTE OF FORBIDDEN FRUIT!!-(Logan Lace)-{Taboo Fantasy}.mp4 (78.38 MB)... +Processing: Brianna - The Game of Taboo - TabooFantasy.mp4 (Mode: scene) +Downloading Brianna - The Game of Taboo - TabooFantasy.mp4 (105.59 MB)... +Processing: Kenzi Foxx - Family Album 2 - Mom's Big Boobs - TabooFantasy.mp4 (Mode: scene) +Downloading Kenzi Foxx - Family Album 2 - Mom's Big Boobs - TabooFantasy.mp4 (95.18 MB)... +Processing: Dakota Charms - University Tuition - TabooFantasy.mp4 (Mode: scene) +Downloading Dakota Charms - University Tuition - TabooFantasy.mp4 (102.47 MB)... +Processing: Sophia Sweet - Family Album - Full Moon Fever - TabooFantasy.mp4 (Mode: scene) +Downloading Sophia Sweet - Family Album - Full Moon Fever - TabooFantasy.mp4 (119.52 MB)... +Processing: Christelle's Family Album 7 - Sisterly Handjob - TabooFantasy.mp4 (Mode: scene) +Downloading Christelle's Family Album 7 - Sisterly Handjob - TabooFantasy.mp4 (54.45 MB)... +Processing: Soleil - I Blackmailed My Mom - TabooFantasy.mp4 (Mode: scene) +Downloading Soleil - I Blackmailed My Mom - TabooFantasy.mp4 (96.93 MB)... +Processing: Sandy Thompson - Brother Fuckers Volume 27 - Family Loan Agreement - TabooFantasy.mp4 (Mode: scene) +Downloading Sandy Thompson - Brother Fuckers Volume 27 - Family Loan Agreement - TabooFantasy.mp4 (119.41 MB)... +Processing: Lyla Peterson's Family Album 2 - Lyla's Virginity - TabooFantasy.mp4 (Mode: scene) +Downloading Lyla Peterson's Family Album 2 - Lyla's Virginity - TabooFantasy.mp4 (108.59 MB)... +Processing: Alexis Ortiz - Daddys Girl Volume 28 - Daughter With Benefits - TabooFantasy.mp4 (Mode: scene) +Downloading Alexis Ortiz - Daddys Girl Volume 28 - Daughter With Benefits - TabooFantasy.mp4 (117.41 MB)... +Processing: Joclyn Stone, Mallory - Terrorized By Mom And Sister - TabooFantasy.mp4 (Mode: scene) +Downloading Joclyn Stone, Mallory - Terrorized By Mom And Sister - TabooFantasy.mp4 (121.41 MB)... +Processing: Reagan Lush - Family Album - I Got My Mom Pregnant - TabooFantasy.mp4 (Mode: scene) +Downloading Reagan Lush - Family Album - I Got My Mom Pregnant - TabooFantasy.mp4 (149.98 MB)... +Processing: April Dawn - Sharing a Bathroom With Sister - TabooFantasy.mp4 (Mode: scene) +Downloading April Dawn - Sharing a Bathroom With Sister - TabooFantasy.mp4 (90.54 MB)... +Processing: DIRTY LAUNDRY-(Danica Dillon)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading DIRTY LAUNDRY-(Danica Dillon)-{Taboo Fantasy}.mp4 (96.86 MB)... +Processing: Bentley - Daddy Popped My Cherry - TabooFantasy.mp4 (Mode: scene) +Downloading Bentley - Daddy Popped My Cherry - TabooFantasy.mp4 (96.40 MB)... +Processing: Keiyra Lina - Nude Sunbather - TabooFantasy.mp4 (Mode: scene) +Downloading Keiyra Lina - Nude Sunbather - TabooFantasy.mp4 (66.98 MB)... +Processing: Christelle's Family Album 1 - Aunt Michelle - TabooFantasy.mp4 (Mode: scene) +Downloading Christelle's Family Album 1 - Aunt Michelle - TabooFantasy.mp4 (79.81 MB)... +Processing: April Dawn - The Family That Plays Together - TabooFantasy.mp4 (Mode: scene) +Downloading April Dawn - The Family That Plays Together - TabooFantasy.mp4 (95.67 MB)... +Processing: Tabatha's Family Album - Shacking Up With My Sister - TabooFantasy.mp4 (Mode: scene) +Downloading Tabatha's Family Album - Shacking Up With My Sister - TabooFantasy.mp4 (92.35 MB)... +Processing: Daisy Destin - Evil Love Potion - TabooFantasy.mp4 (Mode: scene) +Downloading Daisy Destin - Evil Love Potion - TabooFantasy.mp4 (87.84 MB)... +Processing: THE SPERM DIET-(Blair)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading THE SPERM DIET-(Blair)-{Taboo Fantasy}.mp4 (84.84 MB)... +Processing: Tamara Lopez Family Album - Sis Lets Me Practice On Her - TabooFantasy.mp4 (Mode: scene) +Downloading Tamara Lopez Family Album - Sis Lets Me Practice On Her - TabooFantasy.mp4 (84.96 MB)... +Processing: Dani Dare - Dani Dares Family Album - Mothers Day Orgy - TabooFantasy.mp4 (Mode: scene) +Downloading Dani Dare - Dani Dares Family Album - Mothers Day Orgy - TabooFantasy.mp4 (87.16 MB)... +Processing: SHOWER FANTASY-(Molly Jane)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading SHOWER FANTASY-(Molly Jane)-{Taboo Fantasy}.mp4 (76.10 MB)... +Processing: Dallas Diamondz - Mother Fucker - TabooFantasy.mp4 (Mode: scene) +Downloading Dallas Diamondz - Mother Fucker - TabooFantasy.mp4 (60.22 MB)... +Processing: Mom Teased My Cock - TabooFantasy. Son suffers brutal cock teasing at the hands of his own Mother for not studying hard enough.mp4 (Mode: scene) +Downloading Mom Teased My Cock - TabooFantasy. Son suffers brutal cock teasing at the hands of his own Mother for not studying hard enough.mp4 (117.86 MB)... +Processing: Kahli Sweeney - Daddy's Girls Volume 35 - Uncle With Benefits - TabooFantasy.mp4 (Mode: scene) +Downloading Kahli Sweeney - Daddy's Girls Volume 35 - Uncle With Benefits - TabooFantasy.mp4 (133.74 MB)... +Processing: Kahli Sweeney - Brother Fuckers Volume 20 - A Sisterly Fuck - TabooFantasy.mp4 (Mode: scene) +Downloading Kahli Sweeney - Brother Fuckers Volume 20 - A Sisterly Fuck - TabooFantasy.mp4 (105.42 MB)... +Processing: Allison's Family Album Volume 2 - Strip Battleship Game - TabooFantasy.mp4 (Mode: scene) +Downloading Allison's Family Album Volume 2 - Strip Battleship Game - TabooFantasy.mp4 (184.14 MB)... +Processing: Allison's Family Album (2) - Grounded And Horny - TabooFantasy.mp4 (Mode: scene) +Downloading Allison's Family Album (2) - Grounded And Horny - TabooFantasy.mp4 (72.47 MB)... +Processing: MAGIC POTION-(Susanna)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading MAGIC POTION-(Susanna)-{Taboo Fantasy}.mp4 (111.50 MB)... +Processing: Sunshine Tampa - Family Album - Happy Birthday Love - TabooFantasy.mp4 (Mode: scene) +Downloading Sunshine Tampa - Family Album - Happy Birthday Love - TabooFantasy.mp4 (186.79 MB)... +Processing: Christelle's Family Album 8 - Taboo Handjob - TabooFantasy.mp4 (Mode: scene) +Downloading Christelle's Family Album 8 - Taboo Handjob - TabooFantasy.mp4 (40.87 MB)... +Processing: Holly Mae' Family Album - Blindfolded And Fucked - TabooFantasy.mp4 (Mode: scene) +Downloading Holly Mae' Family Album - Blindfolded And Fucked - TabooFantasy.mp4 (112.87 MB)... +Processing: Jenni's Family Album Scene 1 - Baby Sister Blackmailed - TabooFantasy.mp4 (Mode: scene) +Downloading Jenni's Family Album Scene 1 - Baby Sister Blackmailed - TabooFantasy.mp4 (108.78 MB)... +Processing: Velvet Skye - Mother of The Year - TabooFantasy.mp4 (Mode: scene) +Downloading Velvet Skye - Mother of The Year - TabooFantasy.mp4 (91.79 MB)... +Processing: Anastasia Rose - Daddy's Girl Volume 37 - A Family Shower - TabooFantasy.mp4 (Mode: scene) +Downloading Anastasia Rose - Daddy's Girl Volume 37 - A Family Shower - TabooFantasy.mp4 (169.00 MB)... +Processing: Eva Long - Stop Smoking - TabooFantasy.mp4 (Mode: scene) +Downloading Eva Long - Stop Smoking - TabooFantasy.mp4 (99.44 MB)... +Processing: Christelle's Family Album 4 - Fuck You Sis - TabooFantasy.mp4 (Mode: scene) +Downloading Christelle's Family Album 4 - Fuck You Sis - TabooFantasy.mp4 (43.09 MB)... +Processing: Cameron Dias - Mom Seduces Her Son - TabooFantasy.mp4 (Mode: scene) +Downloading Cameron Dias - Mom Seduces Her Son - TabooFantasy.mp4 (92.13 MB)... +Processing: Cali's Family Album (3) - Sound Sleeper - Taboo Fantasy.mp4 (Mode: scene) +Downloading Cali's Family Album (3) - Sound Sleeper - Taboo Fantasy.mp4 (109.61 MB)... +Processing: Dakota Raven, Lizzie Wainbow - Daddy's Girl Volume 32 - Family Orgy Night Episode 1 - TabooFantasy.mp4 (Mode: scene) +Downloading Dakota Raven, Lizzie Wainbow - Daddy's Girl Volume 32 - Family Orgy Night Episode 1 - TabooFantasy.mp4 (226.07 MB)... +Processing: Michelle Meadows - Michelles Boys (3) Funny Farm - TabooFantasy.mp4 (Mode: scene) +Downloading Michelle Meadows - Michelles Boys (3) Funny Farm - TabooFantasy.mp4 (107.43 MB)... +Processing: MY UNCLE USED ME AS A CUM DUMPSTER!-(Keiyra Lina)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading MY UNCLE USED ME AS A CUM DUMPSTER!-(Keiyra Lina)-{Taboo Fantasy}.mp4 (87.61 MB)... +Processing: Janna Hicks Family Album Scene (4) - Mother's Day - TabooFantasy.mp4 (Mode: scene) +Downloading Janna Hicks Family Album Scene (4) - Mother's Day - TabooFantasy.mp4 (77.62 MB)... +Processing: April Dawn - Alone with Daddy - Taboo Fantasy.mp4 (Mode: scene) +Downloading April Dawn - Alone with Daddy - Taboo Fantasy.mp4 (81.42 MB)... +Processing: Phenecs Family Album 2 - Taboo Fantasy.mp4 (Mode: scene) +Downloading Phenecs Family Album 2 - Taboo Fantasy.mp4 (86.63 MB)... +Processing: LITTLE COCK TEASER-(Kylie Nicole)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading LITTLE COCK TEASER-(Kylie Nicole)-{Taboo Fantasy}.mp4 (141.37 MB)... +Processing: Zoey Clark - A Dick Pic Of My Brother - Taboo Fantasy.mp4 (Mode: scene) +Downloading Zoey Clark - A Dick Pic Of My Brother - Taboo Fantasy.mp4 (102.96 MB)... +Processing: Anastasia Rose - Daddy's Girl Volume 37 - Anastasia's Allowance - TabooFantasy.mp4 (Mode: scene) +Downloading Anastasia Rose - Daddy's Girl Volume 37 - Anastasia's Allowance - TabooFantasy.mp4 (174.86 MB)... +Processing: Sofia Kiss - Family Album (4) - Sex-Ed With My Mom - TabooFantasy.mp4 (Mode: scene) +Downloading Sofia Kiss - Family Album (4) - Sex-Ed With My Mom - TabooFantasy.mp4 (89.12 MB)... +Processing: Charlee - Force Fucked By My Sister - TabooFantasy.mp4 (Mode: scene) +Downloading Charlee - Force Fucked By My Sister - TabooFantasy.mp4 (65.51 MB)... +Processing: Claire Heart's Family Album Scene 1 - TabooFantasy.mp4 (Mode: scene) +Downloading Claire Heart's Family Album Scene 1 - TabooFantasy.mp4 (91.65 MB)... +Processing: Powerful Fertility Idol - Carlys Family Album by TabooFantasy.mp4 (Mode: scene) +Downloading Powerful Fertility Idol - Carlys Family Album by TabooFantasy.mp4 (67.11 MB)... +Processing: A Mothers Work Never Seems To Be Done. Mom takes Sons virginity - Joseys Family Album by Taboo Fantasy.mp4 (Mode: scene) +Downloading A Mothers Work Never Seems To Be Done. Mom takes Sons virginity - Joseys Family Album by Taboo Fantasy.mp4 (75.55 MB)... +Processing: Aunt Brittany - TabooFantasy.mp4 (Mode: scene) +Downloading Aunt Brittany - TabooFantasy.mp4 (44.19 MB)... +Processing: MY SISTER'S A HOTTIE!!-(Gemma Nicole)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading MY SISTER'S A HOTTIE!!-(Gemma Nicole)-{Taboo Fantasy}.mp4 (102.57 MB)... +Processing: Gemma Nicole - Hot Sister Syndrome - TabooFantasy.mp4 (Mode: scene) +Downloading Gemma Nicole - Hot Sister Syndrome - TabooFantasy.mp4 (142.73 MB)... +Processing: MY AUNT TOOK MY VIRGINITY!-(Shannon)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading MY AUNT TOOK MY VIRGINITY!-(Shannon)-{Taboo Fantasy}.mp4 (42.51 MB)... +Processing: Kahli Sweeney - Daddy's Girls Volume 36 - Slipped My Uncle A Viagra - TabooFantasy.mp4 (Mode: scene) +Downloading Kahli Sweeney - Daddy's Girls Volume 36 - Slipped My Uncle A Viagra - TabooFantasy.mp4 (144.71 MB)... +Processing: SMELLING MY SISTER'S DIRTY PANTIES-(Violet Thompson)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading SMELLING MY SISTER'S DIRTY PANTIES-(Violet Thompson)-{Taboo Fantasy}.mp4 (74.75 MB)... +Processing: Holly Mae - Brother Fuckers Volume 25 - My Sister The Pornstar - TabooFantasy.mp4 (Mode: scene) +Downloading Holly Mae - Brother Fuckers Volume 25 - My Sister The Pornstar - TabooFantasy.mp4 (123.11 MB)... +Processing: Sunshine Tampa - Family Album - Man Of The House - TabooFantasy.mp4 (Mode: scene) +Downloading Sunshine Tampa - Family Album - Man Of The House - TabooFantasy.mp4 (166.03 MB)... +Processing: Violet Thompson - Daddy's Girls Volume 27 - Daughter Fills In For Mom - TabooFantasy.mp4 (Mode: scene) +Downloading Violet Thompson - Daddy's Girls Volume 27 - Daughter Fills In For Mom - TabooFantasy.mp4 (139.92 MB)... +Processing: Erin - Tough Love - Daddy Teaches Sex Lessons To His Daughter - TabooFantasy.mp4 (Mode: scene) +Downloading Erin - Tough Love - Daddy Teaches Sex Lessons To His Daughter - TabooFantasy.mp4 (92.63 MB)... +Processing: BREAKING CURFEW EPISODE 4-(Anastasia Rose)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading BREAKING CURFEW EPISODE 4-(Anastasia Rose)-{Taboo Fantasy}.mp4 (119.31 MB)... +Processing: Velvet Skye - Indecent Proposal - TabooFantasy.mp4 (Mode: scene) +Downloading Velvet Skye - Indecent Proposal - TabooFantasy.mp4 (101.63 MB)... +Processing: Tabatha's Family Album - Brotherly Loan - TabooFantasy.mp4 (Mode: scene) +Downloading Tabatha's Family Album - Brotherly Loan - TabooFantasy.mp4 (127.80 MB)... +Processing: Rylan Rhodes Family Album (1) - Homework - Taboo Fantasy.mp4 (Mode: scene) +Downloading Rylan Rhodes Family Album (1) - Homework - Taboo Fantasy.mp4 (79.12 MB)... +Processing: Rylan Rhodes Family Album (3) - Horny Berries - Taboo Fantasy.mp4 (Mode: scene) +Downloading Rylan Rhodes Family Album (3) - Horny Berries - Taboo Fantasy.mp4 (104.54 MB)... +Processing: MOM'S TOPLESS BEDTIME STORY-(Shaylynn)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading MOM'S TOPLESS BEDTIME STORY-(Shaylynn)-{Taboo Fantasy}.mp4 (81.18 MB)... +Processing: Christelle's Family Album 2 - Aunt Michelle's Pussy - TabooFantasy.mp4 (Mode: scene) +Downloading Christelle's Family Album 2 - Aunt Michelle's Pussy - TabooFantasy.mp4 (56.11 MB)... +Processing: Step Daddy You're Dickstracting-(Nadia White)-{Desperate Pleasures XXX}.mp4 (Mode: scene) +Downloading Step Daddy You're Dickstracting-(Nadia White)-{Desperate Pleasures XXX}.mp4 (100.64 MB)... +Processing: DADDY'S REVENGE!!-(Ariel)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading DADDY'S REVENGE!!-(Ariel)-{Taboo Fantasy}.mp4 (83.35 MB)... +Processing: Fit Cougar - Mommys Bedtime Story - TabooFantasy.mp4 (Mode: scene) +Downloading Fit Cougar - Mommys Bedtime Story - TabooFantasy.mp4 (87.81 MB)... +Processing: Angelina Jolly - Teenager Grounded - TabooFantasy.mp4 (Mode: scene) +Downloading Angelina Jolly - Teenager Grounded - TabooFantasy.mp4 (95.99 MB)... +Processing: Lola Milano ⁄ Alexa Jaymes in I Cock Teased My Brother from Lolas Family Album by TabooFantasy.mp4 (Mode: scene) +Downloading Lola Milano ⁄ Alexa Jaymes in I Cock Teased My Brother from Lolas Family Album by TabooFantasy.mp4 (79.72 MB)... +Processing: Janna Hicks Family Album Scene (3) - Ricky's Bedtime Story - TabooFantasy.mp4 (Mode: scene) +Downloading Janna Hicks Family Album Scene (3) - Ricky's Bedtime Story - TabooFantasy.mp4 (75.25 MB)... +Scanning directory: /videos/taboofantasy/jennifer.tf +Processing: MAGIC POTION 2-(Velvetine)-{Taboo Fantasy}-[Big Tits, Blowjob, Daughter, Family Roleplay, Father, Hairless Pussy, Natural Tits, Pussy Licking, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading MAGIC POTION 2-(Velvetine)-{Taboo Fantasy}-[Big Tits, Blowjob, Daughter, Family Roleplay, Father, Hairless Pussy, Natural Tits, Pussy Licking, Teen Girl (18–22)].mp4 (416.13 MB)... +Processing: JENNIFER'S TITS!!!!!!!-(Velvetine)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Cum in Mouth, Daughter, Family Roleplay, Father, Hairless Pussy, Incest, Mouth Creampie, Natural Tits, Older Man - Younger Woman, Pussy Licking, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading JENNIFER'S TITS!!!!!!!-(Velvetine)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Cum in Mouth, Daughter, Family Roleplay, Father, Hairless Pussy, Incest, Mouth Creampie, Natural Tits, Older Man - Younger Woman, Pussy Licking, Teen Girl (18–22)].mp4 (404.88 MB)... +Processing: A Taboo Fantasy_I-Fuck-My-Dad.mp4 (Mode: scene) +Downloading A Taboo Fantasy_I-Fuck-My-Dad.mp4 (1738.45 MB)... +Processing: A Taboo Fantasy_Principle-Skinner.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Principle-Skinner.mp4 (536.15 MB)... +Processing: MAGICAL FERTILITY NECKLACE 3-(Velvetine)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Cumshot, Daughter, Facial, Family Roleplay, Father, Hairless Pussy, Incest, Natural Tits, Older Man - Younger Woman, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading MAGICAL FERTILITY NECKLACE 3-(Velvetine)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Cumshot, Daughter, Facial, Family Roleplay, Father, Hairless Pussy, Incest, Natural Tits, Older Man - Younger Woman, Teen Girl (18–22)].mp4 (400.18 MB)... +Scanning directory: /videos/taboofantasy/kate.england +Processing: Kate England - Guys like it when Im slutty Daddy.mp4 (Mode: scene) +Downloading Kate England - Guys like it when Im slutty Daddy.mp4 (80.55 MB)... +Processing: Blazed - Taboo Family Threesomes 2.mp4 (Mode: scene) +Downloading Blazed - Taboo Family Threesomes 2.mp4 (2665.25 MB)... +Scanning directory: /videos/taboofantasy/lila.rose +Processing: LILA'S BATH TIME-(Lila Rose, Jack Moore)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading LILA'S BATH TIME-(Lila Rose, Jack Moore)-{Taboo Fantasy}.mp4 (255.21 MB)... +Processing: MY DADDY NEEDS HELP-(Lila Rose, Jack Moore)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading MY DADDY NEEDS HELP-(Lila Rose, Jack Moore)-{Taboo Fantasy}.mp4 (225.64 MB)... +Processing: HOT FOR DADDY-(Lila Rose)-{Taboo Fantasy}-[Blowjob, Cum on Pussy, Daughter, Family Roleplay, Father, Hairless Pussy, Handjob, Natural Tits, Older Man - Younger Woman, Riding, Sleeping, Small Tits, Teen Girl (18–22), creampie].mp4 (Mode: scene) +Downloading HOT FOR DADDY-(Lila Rose)-{Taboo Fantasy}-[Blowjob, Cum on Pussy, Daughter, Family Roleplay, Father, Hairless Pussy, Handjob, Natural Tits, Older Man - Younger Woman, Riding, Sleeping, Small Tits, Teen Girl (18–22), creampie].mp4 (272.68 MB)... +Processing: MY DAUGHTER IS A PROSTITUTE-(Lila Rose)-{Taboo Fantasy}-[Blond Hair, Cum Swallowing, Cum in Mouth, Escort, Family Roleplay, Father, Hairless Pussy, Older Man - Younger Woman, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading MY DAUGHTER IS A PROSTITUTE-(Lila Rose)-{Taboo Fantasy}-[Blond Hair, Cum Swallowing, Cum in Mouth, Escort, Family Roleplay, Father, Hairless Pussy, Older Man - Younger Woman, Teen Girl (18–22)].mp4 (300.92 MB)... +Scanning directory: /videos/taboofantasy/michelle.meadows +Processing: Compressed_A Taboo Fantasy_Family-Fuckfest.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Family-Fuckfest.mp4 (573.20 MB)... +Processing: FORCED TO FUCK MY MOM-(Michele Meadows)-{Taboo Fantasy}-[Blond Hair, Blowjob, Condom, Family Roleplay, Hairless Pussy, Incest, MILF (30+), Missing or Removed, Mother, Mouth Creampie, Natural Tits, Older Woman - Younger Man, Sagging Tits, Son].mp4 (Mode: scene) +Downloading FORCED TO FUCK MY MOM-(Michele Meadows)-{Taboo Fantasy}-[Blond Hair, Blowjob, Condom, Family Roleplay, Hairless Pussy, Incest, MILF (30+), Missing or Removed, Mother, Mouth Creampie, Natural Tits, Older Woman - Younger Man, Sagging Tits, Son].mp4 (366.12 MB)... +Processing: MELONY & MOM-(Michele Meadows)-{Taboo Fantasy}-[Blond Hair, Blowjob, Cum in Mouth, Daughter, Family Roleplay, Hairless Pussy, Mother, Natural Tits, Pussy Licking, Sagging Tits, Teen Girl (18–22), Twosome (Lesbian)].mp4 (Mode: scene) +Downloading MELONY & MOM-(Michele Meadows)-{Taboo Fantasy}-[Blond Hair, Blowjob, Cum in Mouth, Daughter, Family Roleplay, Hairless Pussy, Mother, Natural Tits, Pussy Licking, Sagging Tits, Teen Girl (18–22), Twosome (Lesbian)].mp4 (256.61 MB)... +Processing: A Taboo Fantasy_Motherly-Lesson-In-Sex.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Motherly-Lesson-In-Sex.mp4 (306.98 MB)... +Processing: Compressed_A Taboo Fantasy_Aunt-Michelles-Pussy.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Aunt-Michelles-Pussy.mp4 (179.75 MB)... +Processing: A Taboo Fantasy_Mommy-Bang.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Mommy-Bang.mp4 (279.35 MB)... +Processing: A Taboo Fantasy_Lisa-and-Mom.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Lisa-and-Mom.mp4 (201.31 MB)... +Processing: Compressed_A Taboo Fantasy_Mother-Daughter-Orgy.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Mother-Daughter-Orgy.mp4 (184.04 MB)... +Processing: A Taboo Fantasy_Funny-Farm.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Funny-Farm.mp4 (533.68 MB)... +Processing: LET'S FUCK YOUR MOM!-(Michele Meadows)-{Taboo Fantasy}-[Blond Hair, Blowjob, Condom, Cumshot, Facial, Family Roleplay, Father, Hairless Pussy, Incest, MILF (30+), Mother, Natural Tits, Pussy Licking, Son, Threesome, Threesome (BBG)].mp4 (Mode: scene) +Downloading LET'S FUCK YOUR MOM!-(Michele Meadows)-{Taboo Fantasy}-[Blond Hair, Blowjob, Condom, Cumshot, Facial, Family Roleplay, Father, Hairless Pussy, Incest, MILF (30+), Mother, Natural Tits, Pussy Licking, Son, Threesome, Threesome (BBG)].mp4 (411.43 MB)... +Scanning directory: /videos/taboofantasy/nikki.brooks +Processing: Nikki Brooks, Cory Chase - Free Use Stepmom Vol. 6 Cashing In.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - Free Use Stepmom Vol. 6 Cashing In.mp4 (1902.87 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 6 - New Tits And Morning Wood - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 6 - New Tits And Morning Wood - Taboo Heat.mp4 (101.53 MB)... +Processing: Nikki Brooks - Blackmailing Mommy (5) - Evicting Mommy - Jerky Wives.mp4 (Mode: scene) +Downloading Nikki Brooks - Blackmailing Mommy (5) - Evicting Mommy - Jerky Wives.mp4 (62.81 MB)... +Processing: Cory Chase and Nikki Brooks in Strip Tease and JOI-{Taboo Heat}-[Big Tits, Blond Hair, Lesbian].mkv (Mode: scene) +Downloading Cory Chase and Nikki Brooks in Strip Tease and JOI-{Taboo Heat}-[Big Tits, Blond Hair, Lesbian].mkv (557.56 MB)... +Processing: Nikki Brooks - Mommy-Son Christmas (2) - Riding Mommy - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mommy-Son Christmas (2) - Riding Mommy - Taboo Heat.mp4 (84.03 MB)... +Processing: Nikki Brooks - Horny House Guest 3 - Mom Does Not See Me Fucking Aunt - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Horny House Guest 3 - Mom Does Not See Me Fucking Aunt - Taboo Heat.mp4 (145.87 MB)... +Processing: Free Use MultiMILF 5 - Gym Step Mom.mp4 (Mode: scene) +Downloading Free Use MultiMILF 5 - Gym Step Mom.mp4 (2286.06 MB)... +Processing: Taking Mommy Vol. 5 (Blackmail Arrangements, Mom is Always Nude, Mom in Heels, Blackmail Redux)-(Nikki Brooks)-{Maternal Seductions}-[Blowjob, Latina Woman, MILF (30+), Male - POV, taboo].mp4 (Mode: scene) +Downloading Taking Mommy Vol. 5 (Blackmail Arrangements, Mom is Always Nude, Mom in Heels, Blackmail Redux)-(Nikki Brooks)-{Maternal Seductions}-[Blowjob, Latina Woman, MILF (30+), Male - POV, taboo].mp4 (1524.12 MB)... +Processing: Nikki Brooks - Moving In With My Mom 2 - Fucking My Mom For Breakfast - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Moving In With My Mom 2 - Fucking My Mom For Breakfast - Taboo Heat.mp4 (105.49 MB)... +Processing: Nikki Brooks, Cory Chase - All I Want For Christmas Is My Mom - I Want You To Glaze My Face Like A Cookie - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - All I Want For Christmas Is My Mom - I Want You To Glaze My Face Like A Cookie - Maternal Seductions.mp4 (106.59 MB)... +Processing: Nikki Brooks - Truth Or Dare with My Mom 2 - Share A Bed And Dare You Not To Get Hard - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Truth Or Dare with My Mom 2 - Share A Bed And Dare You Not To Get Hard - Taboo Heat.mp4 (86.71 MB)... +Processing: Nikki Brooks in Free Use Step Mom - Multi-Milfverse - Vol 6- Stuck in a Time Loop-(Cory Chase)-{Taboo Heat}.mp4 (Mode: scene) +Downloading Nikki Brooks in Free Use Step Mom - Multi-Milfverse - Vol 6- Stuck in a Time Loop-(Cory Chase)-{Taboo Heat}.mp4 (437.79 MB)... +Processing: [XXXMultimedia] Nikki Brooks - Mom's Incentive.mp4 (Mode: scene) +Downloading [XXXMultimedia] Nikki Brooks - Mom's Incentive.mp4 (393.61 MB)... +Processing: Nikki Brooks - A Weekend With Mommy (2) - Mommy Needs Hard Anal.mp4 (Mode: scene) +Downloading Nikki Brooks - A Weekend With Mommy (2) - Mommy Needs Hard Anal.mp4 (69.18 MB)... +Processing: Cory Chase Nikki Brooks and Amiee Cambridge in Milf Manor-{Taboo Heat}-[Big Tits, Blond Hair, Brown Hair, Facesitting, Fingering, Hairy, Lesbian, Lingerie, Stockings, Swapping, Threesome, Toys, taboo].mp4 (Mode: scene) +Downloading Cory Chase Nikki Brooks and Amiee Cambridge in Milf Manor-{Taboo Heat}-[Big Tits, Blond Hair, Brown Hair, Facesitting, Fingering, Hairy, Lesbian, Lingerie, Stockings, Swapping, Threesome, Toys, taboo].mp4 (107.39 MB)... +Processing: Nikki Brooks - Mom Is Knocked Up 3 - Wearing Nothing But A Smile - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Is Knocked Up 3 - Wearing Nothing But A Smile - Taboo Heat.mp4 (113.11 MB)... +Processing: Nikki Brooks - Perfect Busty Latin Mom (1) - Panty Shopping With Mom - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Perfect Busty Latin Mom (1) - Panty Shopping With Mom - Maternal Seductions.mp4 (74.87 MB)... +Processing: Nikki Brooks, Cory Chase - Free Use Mom Vol 3 Big City Vacation (4) - Arranged Family Threesome - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - Free Use Mom Vol 3 Big City Vacation (4) - Arranged Family Threesome - Taboo Heat.mp4 (186.94 MB)... +Processing: Nikki Brooks - Sons Chronic Masturbation Problem. Mom Talks to Doctor on Phone While Helping You.mp4 (Mode: scene) +Downloading Nikki Brooks - Sons Chronic Masturbation Problem. Mom Talks to Doctor on Phone While Helping You.mp4 (108.31 MB)... +Processing: Nikki Brooks - A Weekend With Mommy (3) - Luckiest Mommy.mp4 (Mode: scene) +Downloading Nikki Brooks - A Weekend With Mommy (3) - Luckiest Mommy.mp4 (72.15 MB)... +Processing: Nikki Brooks - Free-Useville Volume 1 Scene 4 - Free Use Threesome - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free-Useville Volume 1 Scene 4 - Free Use Threesome - Taboo Heat.mp4 (150.35 MB)... +Processing: Nikki Brooks - Shower Sex With Mom - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Shower Sex With Mom - Maternal Seductions.mp4 (64.43 MB)... +Processing: Nikki Brooks - Good Moms Go To Heaven Bad Moms Cum Everywhere (2) - No Regret - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Good Moms Go To Heaven Bad Moms Cum Everywhere (2) - No Regret - Taboo Heat.mp4 (89.85 MB)... +Processing: Nikki Brooks - My Stuck Mom (1) - Stuck Under The Bed - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - My Stuck Mom (1) - Stuck Under The Bed - Taboo Heat.mp4 (85.70 MB)... +Processing: Nikki Brooks - Busty Latin Mom (1) - Masturbating To My Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Busty Latin Mom (1) - Masturbating To My Mom - Taboo Heat.mp4 (56.68 MB)... +Processing: Nikki Brooks - Sharing a Bed with Mom.mp4 (Mode: scene) +Downloading Nikki Brooks - Sharing a Bed with Mom.mp4 (80.83 MB)... +Processing: Nikki Brooks - Strict MILFs (1) - Ancient Artifact Revealed - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Strict MILFs (1) - Ancient Artifact Revealed - Maternal Seductions.mp4 (107.65 MB)... +Processing: Nikki Brooks - New Quarantine Apartment With Mom Vol 1 Scene 2 - Mom Wants Morning Sex - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - New Quarantine Apartment With Mom Vol 1 Scene 2 - Mom Wants Morning Sex - Taboo Heat.mp4 (88.98 MB)... +Processing: Nikki Brooks - New Quarantine Apartment With Mom Vol 1 Scene 3 - Fucking Mom Hard In Quarantine - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - New Quarantine Apartment With Mom Vol 1 Scene 3 - Fucking Mom Hard In Quarantine - Taboo Heat.mp4 (96.43 MB)... +Processing: [TabooHeat] Nikki Brooks - Free Use Step Family - Horny House Guest 1080p.mp4 (Mode: scene) +Downloading [TabooHeat] Nikki Brooks - Free Use Step Family - Horny House Guest 1080p.mp4 (1733.11 MB)... +Processing: Mommy Has Loose Morals (Full Fist, Mommy Blowjob, Violate Mommy, The Contact)-(Nikki Brooks)-{Maternal Seductions}-[Anal Sex, MILF (30+), Male - POV, taboo].mp4 (Mode: scene) +Downloading Mommy Has Loose Morals (Full Fist, Mommy Blowjob, Violate Mommy, The Contact)-(Nikki Brooks)-{Maternal Seductions}-[Anal Sex, MILF (30+), Male - POV, taboo].mp4 (1158.09 MB)... +Processing: Nikki Brooks and Cory Chase in Hot MILF Gym JOI-{Taboo Heat}-[Big Tits, Blond Hair, Male - POV].mkv (Mode: scene) +Downloading Nikki Brooks and Cory Chase in Hot MILF Gym JOI-{Taboo Heat}-[Big Tits, Blond Hair, Male - POV].mkv (296.68 MB)... +Processing: Nikki Brooks - My Stuck Mom (2) - Stuck In The Dryer - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - My Stuck Mom (2) - Stuck In The Dryer - Taboo Heat.mp4 (78.94 MB)... +Processing: TabooHeat.2023.Nikki.Brooks.Cory.Chase.Free.Use.Multi.Milfverse.Vol.1.XXX.1080p.HEVC.x265.PRT.mkv (Mode: scene) +Downloading TabooHeat.2023.Nikki.Brooks.Cory.Chase.Free.Use.Multi.Milfverse.Vol.1.XXX.1080p.HEVC.x265.PRT.mkv (1488.29 MB)... +Processing: Nikki Brooks - Mom Takes Me to a Fetish Convention (3) - Mom Partied Too Hard - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Takes Me to a Fetish Convention (3) - Mom Partied Too Hard - Taboo Heat.mp4 (66.94 MB)... +Processing: Family Love (Anniversary, Party With Mommy, Cum to Mommy, Filling Moms Holes)-(Nikki Brooks)-{Maternal Seductions}-[Blowjob, MILF (30+), taboo].mp4 (Mode: scene) +Downloading Family Love (Anniversary, Party With Mommy, Cum to Mommy, Filling Moms Holes)-(Nikki Brooks)-{Maternal Seductions}-[Blowjob, MILF (30+), taboo].mp4 (450.61 MB)... +Processing: Nikki Brooks - Mommy's Report Card Reward.mp4 (Mode: scene) +Downloading Nikki Brooks - Mommy's Report Card Reward.mp4 (141.11 MB)... +Processing: Scene 2 - Couch (part 1).mp4 (Mode: scene) +Downloading Scene 2 - Couch (part 1).mp4 (739.83 MB)... +Processing: TabooHeat.21.08.14.Nikki.Brooks.XXX.1080p.HEVC.x265.PRT.mkv (Mode: scene) +Downloading TabooHeat.21.08.14.Nikki.Brooks.XXX.1080p.HEVC.x265.PRT.mkv (751.89 MB)... +Processing: Nikki Brooks - Remote Control Mommy 3 - Oblivious Shower - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Remote Control Mommy 3 - Oblivious Shower - Maternal Seductions.mp4 (137.18 MB)... +Processing: Nikki Brooks - Free Use Family Volume 2 Scene 4 - Threesome To Keep Me Quiet - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Family Volume 2 Scene 4 - Threesome To Keep Me Quiet - Taboo Heat.mp4 (152.26 MB)... +Processing: Nikki Brooks - Freeuse Multi-MILF Vol 2 Scene 4 - Threesome And Ticket Home - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Freeuse Multi-MILF Vol 2 Scene 4 - Threesome And Ticket Home - Taboo Heat.mp4 (215.44 MB)... +Processing: Nikki Brooks - Free Use Mom Volume 2 Scene (3) - Impregnating My Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Volume 2 Scene (3) - Impregnating My Mom - Taboo Heat.mp4 (83.44 MB)... +Processing: Nikki Brooks - On Vacation with My Mom (1) - Busty Mom Is A Secret Escort - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - On Vacation with My Mom (1) - Busty Mom Is A Secret Escort - Taboo Heat.mp4 (88.59 MB)... +Processing: Nikki Brooks - Mommy Three Months Later (1) - Celebration - Jerky Wives.mp4 (Mode: scene) +Downloading Nikki Brooks - Mommy Three Months Later (1) - Celebration - Jerky Wives.mp4 (63.78 MB)... +Processing: Nikki Brooks - Stuck On Vacation With Mom 3 - Stuck In The Shower - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Stuck On Vacation With Mom 3 - Stuck In The Shower - Taboo Heat.mp4 (96.62 MB)... +Processing: Nikki Brooks, Cory Chase - Free-Useville.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - Free-Useville.mp4 (2462.02 MB)... +Processing: TabooHeat.Nikki.Brooks.My.Stuck.Step.Mom.milf.bigass.bigtits.roleplay.hardcore.mp4 (Mode: scene) +Downloading TabooHeat.Nikki.Brooks.My.Stuck.Step.Mom.milf.bigass.bigtits.roleplay.hardcore.mp4 (521.20 MB)... +Processing: Nikki Brooks - Mom Is Knocked Up 5 - Family Threesome And Creampie - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Is Knocked Up 5 - Family Threesome And Creampie - Taboo Heat.mp4 (147.32 MB)... +Processing: Nikki Brooks - Son Buys Mom Inappropriate Gift On Mothers Day.mp4 (Mode: scene) +Downloading Nikki Brooks - Son Buys Mom Inappropriate Gift On Mothers Day.mp4 (480.01 MB)... +Processing: victoriacruz-intro_stream-hi.mp4 (Mode: scene) +Downloading victoriacruz-intro_stream-hi.mp4 (131.16 MB)... +Processing: Nikki Brooks - Free Use Mom Volume 2 Scene (2) - Birthday Blowjob - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Volume 2 Scene (2) - Birthday Blowjob - Taboo Heat.mp4 (77.42 MB)... +Processing: MaternalSeductions-Stuck On Vacation With My Step Mom-Nikki Brooks.mp4 (Mode: scene) +Downloading MaternalSeductions-Stuck On Vacation With My Step Mom-Nikki Brooks.mp4 (448.01 MB)... +Processing: Fifi Foxx Fantasies - Nikki Brooks - Happy Valentine.mp4 (Mode: scene) +Downloading Fifi Foxx Fantasies - Nikki Brooks - Happy Valentine.mp4 (505.43 MB)... +Processing: [TabooHeat] Nikki Brooks & Cory Chase - Mommy Son Christmas 1080p.mp4 (Mode: scene) +Downloading [TabooHeat] Nikki Brooks & Cory Chase - Mommy Son Christmas 1080p.mp4 (1227.43 MB)... +Processing: TabooHeat.22.09.22.Cory.Chase.And.Nikki.Brooks.XXX.1080p.HEVC.x265.PRT.mkv (Mode: scene) +Downloading TabooHeat.22.09.22.Cory.Chase.And.Nikki.Brooks.XXX.1080p.HEVC.x265.PRT.mkv (382.67 MB)... +Processing: Nikki Brooks - Mommy-Son Christmas (3) - Mommy Toy - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mommy-Son Christmas (3) - Mommy Toy - Taboo Heat.mp4 (98.24 MB)... +Processing: Nikki Brooks - Busty Mom Stuck Again - Stuck In The Sink - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Busty Mom Stuck Again - Stuck In The Sink - Maternal Seductions.mp4 (82.37 MB)... +Processing: Nikki Brooks - Coffee With Mom Volume 1 Scene 1 - Mom Wants To Play A Game - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Coffee With Mom Volume 1 Scene 1 - Mom Wants To Play A Game - Taboo Heat.mp4 (125.59 MB)... +Processing: Dj Oscar Leal - My Panty Sniffing Brother Sure Knows How To Scre.mp4 (Mode: scene) +Downloading Dj Oscar Leal - My Panty Sniffing Brother Sure Knows How To Scre.mp4 (497.27 MB)... +Processing: Nikki Brooks - Post Lockdown Family Vacation Vol 2 Scene 1 - Unpacking My Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Post Lockdown Family Vacation Vol 2 Scene 1 - Unpacking My Mom - Taboo Heat.mp4 (106.27 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 5 Scene 4 - Face Covered In Cum - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 5 Scene 4 - Face Covered In Cum - Taboo Heat.mp4 (93.81 MB)... +Processing: Nikki Brooks – Robot Mom Glitches Into Slutty GF – Incest Po.mp4 (Mode: scene) +Downloading Nikki Brooks – Robot Mom Glitches Into Slutty GF – Incest Po.mp4 (152.15 MB)... +Processing: Nikki Brooks - Mommy's Need For Your Seed.mp4 (Mode: scene) +Downloading Nikki Brooks - Mommy's Need For Your Seed.mp4 (71.49 MB)... +Processing: Nikki Brooks, Cory Chase - Free Use Mom Vol 3 Big City Vacation (3) - Fucking Mom While Aunt Watches - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - Free Use Mom Vol 3 Big City Vacation (3) - Fucking Mom While Aunt Watches - Taboo Heat.mp4 (92.50 MB)... +Processing: Step Mom Packs Her Bags and I Pack Her Pussy-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Big Tits, Blowjob, Cumshot, Family Roleplay, Latin, MILF (30+), Male - POV, Step Mother, Step Son, taboo].mp4 (Mode: scene) +Downloading Step Mom Packs Her Bags and I Pack Her Pussy-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Big Tits, Blowjob, Cumshot, Family Roleplay, Latin, MILF (30+), Male - POV, Step Mother, Step Son, taboo].mp4 (834.03 MB)... +Processing: Nikki Brooks - Free-Useville Volume 1 Scene 3 - Reverse Free Use - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free-Useville Volume 1 Scene 3 - Reverse Free Use - Taboo Heat.mp4 (139.14 MB)... +Processing: Nikki Brooks - Free Use Family Volume 2 Scene 3 - Aunt Catches Me Fucking Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Family Volume 2 Scene 3 - Aunt Catches Me Fucking Mom - Taboo Heat.mp4 (241.46 MB)... +Processing: new, mature - 7066 Step Mom Swallows my Big Cock Nikki Brooks.mp4 (Mode: scene) +Downloading new, mature - 7066 Step Mom Swallows my Big Cock Nikki Brooks.mp4 (219.19 MB)... +Processing: Nikki Brooks - A Weekend With Mommy (1) - Mommy Gives Me A Tug In The Tub.mp4 (Mode: scene) +Downloading Nikki Brooks - A Weekend With Mommy (1) - Mommy Gives Me A Tug In The Tub.mp4 (63.38 MB)... +Processing: [MaternalSeductions] Mom Earns Extra Lunch Money [Nikki Brooks] [1080p].mp4 (Mode: scene) +Downloading [MaternalSeductions] Mom Earns Extra Lunch Money [Nikki Brooks] [1080p].mp4 (1188.70 MB)... +Processing: victoriacruz-couchtoy_stream-hi.mp4 (Mode: scene) +Downloading victoriacruz-couchtoy_stream-hi.mp4 (181.72 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 1 Scene 1 - Mom Is Desperate - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 1 Scene 1 - Mom Is Desperate - Maternal Seductions.mp4 (84.66 MB)... +Processing: Nikki Brooks - Perfect Busty Latin Mom 1 - Panty Shopping With Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Perfect Busty Latin Mom 1 - Panty Shopping With Mom - Taboo Heat.mp4 (74.76 MB)... +Processing: Nikki Brooks - New Quarantine Apartment With Mom Vol 2 Scene 1 - Mom Uses Me For Sex - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - New Quarantine Apartment With Mom Vol 2 Scene 1 - Mom Uses Me For Sex - Taboo Heat.mp4 (92.62 MB)... +Processing: [clips4sale.com]NikkiBrooks_LessonsfromDaddy_1080p.mp4 (Mode: scene) +Downloading [clips4sale.com]NikkiBrooks_LessonsfromDaddy_1080p.mp4 (362.88 MB)... +Processing: Nikki Brooks - Good Moms Go To Heaven Bad Moms Cum Everywhere (4) - Sharing Aunt - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Good Moms Go To Heaven Bad Moms Cum Everywhere (4) - Sharing Aunt - Taboo Heat.mp4 (160.45 MB)... +Processing: Nikki Brooks - Mom Takes Me to a Fetish Convention (1) - First Night - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Takes Me to a Fetish Convention (1) - First Night - Taboo Heat.mp4 (101.05 MB)... +Processing: Nikki Brooks - New Quarantine Apartment With Mom Vol 2 Scene 4 - Morning Nut To Clear Head - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - New Quarantine Apartment With Mom Vol 2 Scene 4 - Morning Nut To Clear Head - Taboo Heat.mp4 (87.17 MB)... +Processing: Nikki Brooks - Is My Ass Tight, Daddy¿.mp4 (Mode: scene) +Downloading Nikki Brooks - Is My Ass Tight, Daddy¿.mp4 (97.83 MB)... +Processing: Nikki Brooks, Cory Chase - Strict MILFs (4) - Twisted Threesome - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - Strict MILFs (4) - Twisted Threesome - Maternal Seductions.mp4 (155.55 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 3 Big City Vacation (2) - Shared Bed - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 3 Big City Vacation (2) - Shared Bed - Taboo Heat.mp4 (47.36 MB)... +Processing: Nikki Brooks - Mommy Three Months Later (2) - Mommy Porn - Jerky Wives.mp4 (Mode: scene) +Downloading Nikki Brooks - Mommy Three Months Later (2) - Mommy Porn - Jerky Wives.mp4 (58.55 MB)... +Processing: tabooheat.22.11.30.cory.chase.and.nikki.brooks.mp4 (Mode: scene) +Downloading tabooheat.22.11.30.cory.chase.and.nikki.brooks.mp4 (3045.39 MB)... +Processing: Nikki Brooks - My Stuck Mom (3) - Stuck To The Couch - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - My Stuck Mom (3) - Stuck To The Couch - Taboo Heat.mp4 (107.71 MB)... +Processing: Cory Chase, Nikki Brooks - Cum To Your Two Stepmommies - Taboo Heat.mp4 (Mode: scene) +Downloading Cory Chase, Nikki Brooks - Cum To Your Two Stepmommies - Taboo Heat.mp4 (191.49 MB)... +Processing: Scene 07.mp4 (Mode: scene) +Downloading Scene 07.mp4 (265.84 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 3 Big City Vacation (1) - Grand Entrance - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 3 Big City Vacation (1) - Grand Entrance - Taboo Heat.mp4 (54.75 MB)... +Processing: Nikki Brooks - Competitive Daughter (4) - This is not war.mp4 (Mode: scene) +Downloading Nikki Brooks - Competitive Daughter (4) - This is not war.mp4 (62.34 MB)... +Processing: Nikki Brooks - Blackmailing Mommy part 2.mp4 (Mode: scene) +Downloading Nikki Brooks - Blackmailing Mommy part 2.mp4 (44.58 MB)... +Processing: Nikki Brooks - Mothers Day - Son Buys Mom An Inappropriate Gift - XXXMultimedia.mp4 (Mode: scene) +Downloading Nikki Brooks - Mothers Day - Son Buys Mom An Inappropriate Gift - XXXMultimedia.mp4 (125.43 MB)... +Processing: Nikki Brooks - Busty Latin Mom (3) - Mom Cures My Porn Addiction - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Busty Latin Mom (3) - Mom Cures My Porn Addiction - Taboo Heat.mp4 (104.38 MB)... +Processing: Nikki Brooks in Quarantine Apartment 2.mp4 (Mode: scene) +Downloading Nikki Brooks in Quarantine Apartment 2.mp4 (2577.56 MB)... +Processing: Nikki Brooks, Cory Chase - Taking Mommy - Blackmail With Help - Maternal Seductions. Cory blackmails Nikki and her Son.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - Taking Mommy - Blackmail With Help - Maternal Seductions. Cory blackmails Nikki and her Son.mp4 (130.35 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 1 Scene 2 - Why Are You Not Naked - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 1 Scene 2 - Why Are You Not Naked - Maternal Seductions.mp4 (101.90 MB)... +Processing: Stuck On Vacation With My Stepmom-(Nikki Brooks)-{Taboo Heat}.mp4 (Mode: scene) +Downloading Stuck On Vacation With My Stepmom-(Nikki Brooks)-{Taboo Heat}.mp4 (448.01 MB)... +Processing: Nikki Brooks - Mom is Always Naked 2 - Watching Mom Get Ready - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom is Always Naked 2 - Watching Mom Get Ready - Maternal Seductions.mp4 (74.61 MB)... +Processing: Nikki Brooks - Perfect Busty Latin Mom 3 - Mom Uses My Cock For Pleasure - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Perfect Busty Latin Mom 3 - Mom Uses My Cock For Pleasure - Taboo Heat.mp4 (78.02 MB)... +Processing: Nikki Brooks - Satisfying Mommy (3) - Dont Wake Up Daddy - Jerky Wives.mp4 (Mode: scene) +Downloading Nikki Brooks - Satisfying Mommy (3) - Dont Wake Up Daddy - Jerky Wives.mp4 (56.35 MB)... +Processing: Nikki Brooks - Mom Is Knocked Up 4 - Bikini Show And Creampie - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Is Knocked Up 4 - Bikini Show And Creampie - Taboo Heat.mp4 (105.95 MB)... +Processing: Remote Control Mommy (How to Control Mom, Mom is My Sex Bot, Oblivious Shower)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Big Tits, Blowjob, Cumshot, Facial, MILF (30+), Male - POV, Threesome].mp4 (Mode: scene) +Downloading Remote Control Mommy (How to Control Mom, Mom is My Sex Bot, Oblivious Shower)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Big Tits, Blowjob, Cumshot, Facial, MILF (30+), Male - POV, Threesome].mp4 (1361.64 MB)... +Processing: Little Step-Sister Nikki Brooks Blackmailed to Fuck-{Ginary's Kinky Adventures}-[Blowjob, Cumshot, Vaginal Sex, taboo].mp4 (Mode: scene) +Downloading Little Step-Sister Nikki Brooks Blackmailed to Fuck-{Ginary's Kinky Adventures}-[Blowjob, Cumshot, Vaginal Sex, taboo].mp4 (496.77 MB)... +Processing: Nikki Brooks - Free-Use Multi Milfverse Vol. 3 Scene 2 - Stuck Making My Bed - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free-Use Multi Milfverse Vol. 3 Scene 2 - Stuck Making My Bed - Taboo Heat.mp4 (120.46 MB)... +Processing: Victoria's Boy Shorts-(Nikki Brooks, Victoria Cruz)-{Cosmid}-[Masturbation, Solo Female, Striptease].mp4 (Mode: scene) +Downloading Victoria's Boy Shorts-(Nikki Brooks, Victoria Cruz)-{Cosmid}-[Masturbation, Solo Female, Striptease].mp4 (483.81 MB)... +Processing: Nikki Brooks - Truth Or Dare with My Mom 1 - First Game - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Truth Or Dare with My Mom 1 - First Game - Taboo Heat.mp4 (117.73 MB)... +Processing: Nikki Brooks - Bedtime Stories with Mommy (2) - Family Fun - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Bedtime Stories with Mommy (2) - Family Fun - Taboo Heat.mp4 (91.09 MB)... +Processing: Nikki Brooks in Neglected Mommy (1) - Open Robe by Jerky Wives.mp4 (Mode: scene) +Downloading Nikki Brooks in Neglected Mommy (1) - Open Robe by Jerky Wives.mp4 (58.73 MB)... +Processing: TabooHeat.22.08.24.Cory.Chase.And.Nikki.Brooks.XXX.1080p.HEVC.x265.PRT.mkv (Mode: scene) +Downloading TabooHeat.22.08.24.Cory.Chase.And.Nikki.Brooks.XXX.1080p.HEVC.x265.PRT.mkv (2577.01 MB)... +Processing: victoriacruz-bed1_stream-hi.mp4 (Mode: scene) +Downloading victoriacruz-bed1_stream-hi.mp4 (170.62 MB)... +Processing: Free Use Multi MILF 2 - Aggressive.mp4 (Mode: scene) +Downloading Free Use Multi MILF 2 - Aggressive.mp4 (2492.03 MB)... +Processing: [clips4sale.com]Nikki_Brooks_in_is_My_Ass_Tight_Daddy_1080p.mp4 (Mode: scene) +Downloading [clips4sale.com]Nikki_Brooks_in_is_My_Ass_Tight_Daddy_1080p.mp4 (331.85 MB)... +Processing: Nikki Brooks - Good Moms Go To Heaven Bad Moms Cum Everywhere (3) - Fresh Start - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Good Moms Go To Heaven Bad Moms Cum Everywhere (3) - Fresh Start - Taboo Heat.mp4 (98.66 MB)... +Processing: Nikki Brooks In The Angry Neighbor-(Cory Chase)-{Taboo Heat}-[Big Tits, Blond Hair, Fingering, Lesbian, Natural Tits, Rimming].mkv (Mode: scene) +Downloading Nikki Brooks In The Angry Neighbor-(Cory Chase)-{Taboo Heat}-[Big Tits, Blond Hair, Fingering, Lesbian, Natural Tits, Rimming].mkv (624.53 MB)... +Processing: Nikki Brooks - Blackmailing Mommy (3) - Erasing Evidence - Jerky Wives.mp4 (Mode: scene) +Downloading Nikki Brooks - Blackmailing Mommy (3) - Erasing Evidence - Jerky Wives.mp4 (69.72 MB)... +Processing: Nikki Brooks in Perfect Busty Step-Mom-{Taboo Heat}-[Big Tits, Blond Hair, Blowjob, Cumshot, Deepthroat, Family Roleplay, Handjob, Hardcore, Latin, Lingerie, Step Mother].mp4 (Mode: scene) +Downloading Nikki Brooks in Perfect Busty Step-Mom-{Taboo Heat}-[Big Tits, Blond Hair, Blowjob, Cumshot, Deepthroat, Family Roleplay, Handjob, Hardcore, Latin, Lingerie, Step Mother].mp4 (2195.00 MB)... +Processing: [TabooHeat] Nikki Brooks & Cory Chase - Busty Latin Step Mom 1080p.mp4 (Mode: scene) +Downloading [TabooHeat] Nikki Brooks & Cory Chase - Busty Latin Step Mom 1080p.mp4 (1967.17 MB)... +Processing: Nikki Brooks - Lets Make A Deal - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Lets Make A Deal - Maternal Seductions.mp4 (117.60 MB)... +Processing: Nikki Brooks - Stuck On Vacation With Mom 2 - Stuck In The Couch - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Stuck On Vacation With Mom 2 - Stuck In The Couch - Taboo Heat.mp4 (107.20 MB)... +Processing: Nikki Brooks - Sister says Make Me Preggo, Or I'm Telling MOM You Fucked.mp4 (Mode: scene) +Downloading Nikki Brooks - Sister says Make Me Preggo, Or I'm Telling MOM You Fucked.mp4 (357.17 MB)... +Processing: My Slutty Cousin Nikki Brooks gave me a blowjob and forced my Mother Tatiana Petrova to join in.mp4 (Mode: scene) +Downloading My Slutty Cousin Nikki Brooks gave me a blowjob and forced my Mother Tatiana Petrova to join in.mp4 (64.42 MB)... +Processing: Nikki Brooks - Make Mommy Feel Beautiful Again - XXXMultimedia.mp4 (Mode: scene) +Downloading Nikki Brooks - Make Mommy Feel Beautiful Again - XXXMultimedia.mp4 (123.62 MB)... +Processing: Nikki Brooks in Time with Step-Daddy - Yoga Poses-{Mixed Model Wrestling}-[Cumshot, Wrestling, taboo].mp4 (Mode: scene) +Downloading Nikki Brooks in Time with Step-Daddy - Yoga Poses-{Mixed Model Wrestling}-[Cumshot, Wrestling, taboo].mp4 (730.99 MB)... +Processing: Nikki Brooks - Free Useville Volume 2 Scene 2 - Dad Thinks I Am Fucking Your Cousin - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Useville Volume 2 Scene 2 - Dad Thinks I Am Fucking Your Cousin - Taboo Heat.mp4 (117.25 MB)... +Processing: Nikki Brooks - On Vacation with My Mom (3) - Escort Mom Still Horny Even After Fucking All Night - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - On Vacation with My Mom (3) - Escort Mom Still Horny Even After Fucking All Night - Taboo Heat.mp4 (64.36 MB)... +Processing: Nikki Brooks - On Vacation with My Mom (4) - Mom Only Wants My Cock - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - On Vacation with My Mom (4) - Mom Only Wants My Cock - Taboo Heat.mp4 (114.73 MB)... +Processing: Nikki Brooks - Coffee With Mom Volume 1 Scene 2 - Five Reasons To Fuck Your Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Coffee With Mom Volume 1 Scene 2 - Five Reasons To Fuck Your Mom - Taboo Heat.mp4 (118.20 MB)... +Processing: Nikki Brooks in Neglected Mommy (4) - Mommy Wants Your Seed by Jerky Wives.mp4 (Mode: scene) +Downloading Nikki Brooks in Neglected Mommy (4) - Mommy Wants Your Seed by Jerky Wives.mp4 (83.57 MB)... +Processing: Nikki Brooks - Rescued by Mommy (2) - One Bed Two People - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Rescued by Mommy (2) - One Bed Two People - Taboo Heat.mp4 (77.44 MB)... +Processing: Nikki Brooks - Free Use Volume 3 Scene 4 - Fucking My Stuck Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Volume 3 Scene 4 - Fucking My Stuck Mom - Taboo Heat.mp4 (319.48 MB)... +Processing: Scene 01.mp4 (Mode: scene) +Downloading Scene 01.mp4 (381.96 MB)... +Processing: [TabooHeat] Nikki Brooks & Cory Chase - Puratin Mom 1080p.mp4 (Mode: scene) +Downloading [TabooHeat] Nikki Brooks & Cory Chase - Puratin Mom 1080p.mp4 (2322.96 MB)... +Processing: Nikki Brooks - My Son Comes of Age (4) - The Couch.mp4 (Mode: scene) +Downloading Nikki Brooks - My Son Comes of Age (4) - The Couch.mp4 (84.30 MB)... +Processing: Nikki Brooks - My Son Comes of Age (2) - Making Me A Sandwich.mp4 (Mode: scene) +Downloading Nikki Brooks - My Son Comes of Age (2) - Making Me A Sandwich.mp4 (69.07 MB)... +Processing: TabooHeat.22.09.07.Cory.Chase.And.Nikki.Brooks.XXX.720p.HEVC.x265.PRT.mkv (Mode: scene) +Downloading TabooHeat.22.09.07.Cory.Chase.And.Nikki.Brooks.XXX.720p.HEVC.x265.PRT.mkv (956.02 MB)... +Processing: Nikki Brooks - Free-Use Multi Milfverse Vol. 3 Scene 3 - MILF Glue - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free-Use Multi Milfverse Vol. 3 Scene 3 - MILF Glue - Taboo Heat.mp4 (194.20 MB)... +Processing: Nikki Brooks - Perfect Busty Latin Mom 2 - Mom Had A Rough Day - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Perfect Busty Latin Mom 2 - Mom Had A Rough Day - Taboo Heat.mp4 (76.85 MB)... +Processing: Nikki Brooks - Free Use Multi Milfverse Vol 1 Scene 1 - Coffee - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Multi Milfverse Vol 1 Scene 1 - Coffee - Taboo Heat.mp4 (175.91 MB)... +Processing: Nikki Brooks, Cory Chase - Mommy-Son Christmas (4) - Mommy Santa And Her Favorite Elf, Aunt Cory - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - Mommy-Son Christmas (4) - Mommy Santa And Her Favorite Elf, Aunt Cory - Taboo Heat.mp4 (130.20 MB)... +Processing: Nikki Brooks - Post Lockdown Family Vacation Vol 2 Scene 3 - Movie Night With Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Post Lockdown Family Vacation Vol 2 Scene 3 - Movie Night With Mom - Taboo Heat.mp4 (93.71 MB)... +Processing: Nikki Brooks - Free Use Family Volume 2 Scene 2 - Mom Teaches Me How To Last Longer - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Family Volume 2 Scene 2 - Mom Teaches Me How To Last Longer - Taboo Heat.mp4 (136.95 MB)... +Processing: Nikki Brooks - Mom Shows Me Her New Bikini and Tits - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Shows Me Her New Bikini and Tits - Maternal Seductions.mp4 (83.17 MB)... +Processing: Scene 06.mp4 (Mode: scene) +Downloading Scene 06.mp4 (257.58 MB)... +Processing: Nikki Brooks - Moving In With My Mom 3 - Waking Up To My Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Moving In With My Mom 3 - Waking Up To My Mom - Taboo Heat.mp4 (114.02 MB)... +Processing: Nikki Brooks and Cory Chase in Construction.mp4 (Mode: scene) +Downloading Nikki Brooks and Cory Chase in Construction.mp4 (199.59 MB)... +Processing: Scene 08.mp4 (Mode: scene) +Downloading Scene 08.mp4 (464.60 MB)... +Processing: Nikki Brooks - Mom Reads Naughty Bedtime Stories 3 - Mom Sneaks Into My Room - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Reads Naughty Bedtime Stories 3 - Mom Sneaks Into My Room - Taboo Heat.mp4 (139.43 MB)... +Processing: Nikki Brooks & Cory Chase - First Time Fucking In The Mansion-{Taboo Heat}-[Big Tits, Blond Hair, Family Roleplay, Hairy, Lesbian, Step Sister, White].mp4 (Mode: scene) +Downloading Nikki Brooks & Cory Chase - First Time Fucking In The Mansion-{Taboo Heat}-[Big Tits, Blond Hair, Family Roleplay, Hairy, Lesbian, Step Sister, White].mp4 (1212.25 MB)... +Processing: Nikki Brooks, Cory Chase - MILF Glue - Stuck Threesome - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - MILF Glue - Stuck Threesome - Maternal Seductions.mp4 (165.37 MB)... +Processing: Nikki Brooks - Free Use Mom Volume 2 Scene (1) - Deep Tissue Massage - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Volume 2 Scene (1) - Deep Tissue Massage - Taboo Heat.mp4 (70.74 MB)... +Processing: Nikki Brooks - Free Useville Volume 2 Scene 3 - Coffee With My Sister - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Useville Volume 2 Scene 3 - Coffee With My Sister - Taboo Heat.mp4 (164.15 MB)... +Processing: Nikki Brooks - Stuck On Vacation With Mom 1 - Mom Is A Bitch And A Tease - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Stuck On Vacation With Mom 1 - Mom Is A Bitch And A Tease - Taboo Heat.mp4 (81.93 MB)... +Processing: Nikki Brooks in Competitive Step-Daughter-{Mixed Model Wrestling}-[Blowjob, Wrestling, taboo].mp4 (Mode: scene) +Downloading Nikki Brooks in Competitive Step-Daughter-{Mixed Model Wrestling}-[Blowjob, Wrestling, taboo].mp4 (999.09 MB)... +Processing: Nikki Brooks - Post Lockdown Family Vacation Vol 2 Scene 2 - Fucking Mom While She Is On Phone With Dad - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Post Lockdown Family Vacation Vol 2 Scene 2 - Fucking Mom While She Is On Phone With Dad - Taboo Heat.mp4 (107.43 MB)... +Processing: Nikki Brooks - A Weekend With Mommy (4) - Mommy Swallows.mp4 (Mode: scene) +Downloading Nikki Brooks - A Weekend With Mommy (4) - Mommy Swallows.mp4 (89.10 MB)... +Processing: Nikki Brooks - Perfect Busty Latin Mom 4 - Mom Has A Secret - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Perfect Busty Latin Mom 4 - Mom Has A Secret - Taboo Heat.mp4 (108.87 MB)... +Processing: Nikki Brooks - Sister Is Pregnant 2 - Show Me How You'll Fuck My Son - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Sister Is Pregnant 2 - Show Me How You'll Fuck My Son - Taboo Heat.mp4 (134.62 MB)... +Processing: Nikki Brooks - All I Want For Christmas Is My Mom - Waking Mom Up Early - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - All I Want For Christmas Is My Mom - Waking Mom Up Early - Maternal Seductions.mp4 (80.48 MB)... +Processing: Mom & Sister Cheer You Up - Anastasia Rose and Nikki Brooks.mp4 (Mode: scene) +Downloading Mom & Sister Cheer You Up - Anastasia Rose and Nikki Brooks.mp4 (468.98 MB)... +Processing: Best Step Mom's Always Swallow-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Big Tits, Blowjob, Cumshot, Family Roleplay, Latin, MILF (30+), Male - POV, Step Mother, Step Son, taboo].mp4 (Mode: scene) +Downloading Best Step Mom's Always Swallow-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Big Tits, Blowjob, Cumshot, Family Roleplay, Latin, MILF (30+), Male - POV, Step Mother, Step Son, taboo].mp4 (1023.55 MB)... +Processing: AltErotic.18.07.25.Nikki.Hearts.And.Mischa.Brooks.Make.Up.Sex.XXX.1080p.HEVC.x265.PRT.mkv (Mode: scene) +Downloading AltErotic.18.07.25.Nikki.Hearts.And.Mischa.Brooks.Make.Up.Sex.XXX.1080p.HEVC.x265.PRT.mkv (727.04 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 5 Scene 2 - New Tits And A Fuck - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 5 Scene 2 - New Tits And A Fuck - Taboo Heat.mp4 (86.79 MB)... +Processing: Nikki Brooks in Stepmom Reads Naughty Bedtime Stories HD 1080p.mp4 (Mode: scene) +Downloading Nikki Brooks in Stepmom Reads Naughty Bedtime Stories HD 1080p.mp4 (1629.58 MB)... +Processing: Nikki Brooks - Free Use Family Volume 2 Scene 1 - Mom Caught Me Masturbating To MILF Porn - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Family Volume 2 Scene 1 - Mom Caught Me Masturbating To MILF Porn - Taboo Heat.mp4 (96.93 MB)... +Processing: Nikki Brooks - Free Use Mom Volume 2 Scene (4) - Mom Teaches You How To Last Longer - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Volume 2 Scene (4) - Mom Teaches You How To Last Longer - Taboo Heat.mp4 (87.83 MB)... +Processing: Nikki Brooks, Anastasia Rose - Mom and Sister Share A Bed with You - Fifi Foxx.mp4 (Mode: scene) +Downloading Nikki Brooks, Anastasia Rose - Mom and Sister Share A Bed with You - Fifi Foxx.mp4 (80.64 MB)... +Processing: Nikki Brooks - Post Lockdown Family Vacation 2 - Bathroom Quickie - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Post Lockdown Family Vacation 2 - Bathroom Quickie - Taboo Heat.mp4 (88.08 MB)... +Processing: Nikki Brooks - Truth Or Dare with My Mom 3 - Dare You To Swallow Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Truth Or Dare with My Mom 3 - Dare You To Swallow Mom - Taboo Heat.mp4 (89.05 MB)... +Processing: Nikki Brooks, Cory Chase - Post Lockdown Step Family Vacation Vol 2.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - Post Lockdown Step Family Vacation Vol 2.mp4 (2181.69 MB)... +Processing: Nikki Brooks - Mom Earns Extra Lunch Money (3) - Crossing the Line - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Earns Extra Lunch Money (3) - Crossing the Line - Maternal Seductions.mp4 (55.40 MB)... +Processing: tabooheat.23.01.11.cory.chase.and.nikki.brooks.mp4 (Mode: scene) +Downloading tabooheat.23.01.11.cory.chase.and.nikki.brooks.mp4 (2190.96 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 6 - Earning With My Tits - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 6 - Earning With My Tits - Taboo Heat.mp4 (104.04 MB)... +Processing: Scene 05.mp4 (Mode: scene) +Downloading Scene 05.mp4 (283.28 MB)... +Processing: Nikki Brooks - Post Lockdown Family Vacation 1 - No More Masks - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Post Lockdown Family Vacation 1 - No More Masks - Taboo Heat.mp4 (91.80 MB)... +Processing: Scene 02.mp4 (Mode: scene) +Downloading Scene 02.mp4 (286.77 MB)... +Processing: Nikki Brooks - Mom Earns Extra Lunch Money (4) - This Time for Fun - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Earns Extra Lunch Money (4) - This Time for Fun - Maternal Seductions.mp4 (92.11 MB)... +Processing: Nikki Brooks - Mommy-Son Christmas (1) - Mommy Unwrapped - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mommy-Son Christmas (1) - Mommy Unwrapped - Taboo Heat.mp4 (71.76 MB)... +Processing: Nikki Brooks - Bedtime Stories with Mommy (4) - The Enchantress - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Bedtime Stories with Mommy (4) - The Enchantress - Taboo Heat.mp4 (134.59 MB)... +Processing: Nikki Brooks - Horny House Guest 2 - Breakfast Blowjob - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Horny House Guest 2 - Breakfast Blowjob - Taboo Heat.mp4 (112.08 MB)... +Processing: Nikki Brooks - Bedtime Stories with Mommy (1) - Further Adventures of Jack And Beanstalk - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Bedtime Stories with Mommy (1) - Further Adventures of Jack And Beanstalk - Taboo Heat.mp4 (91.72 MB)... +Processing: Nikki Brooks and Angie Noir in My Daughter is Too Hot To Sleep.mp4 (Mode: scene) +Downloading Nikki Brooks and Angie Noir in My Daughter is Too Hot To Sleep.mp4 (66.77 MB)... +Processing: Nikki Brooks - My Naughty Mom Wants All Of My Cum for Christmas - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - My Naughty Mom Wants All Of My Cum for Christmas - Maternal Seductions.mp4 (79.04 MB)... +Processing: Nikki Brooks - Bedtime Stories with Mommy (3) - Magic Potion - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Bedtime Stories with Mommy (3) - Magic Potion - Taboo Heat.mp4 (132.93 MB)... +Processing: Nikki Brooks – Earning Extra Pocket Money With My Step Mom –.mp4 (Mode: scene) +Downloading Nikki Brooks – Earning Extra Pocket Money With My Step Mom –.mp4 (221.72 MB)... +Processing: Nikki Brooks - New Quarantine Apartment With Mom Vol 2 Scene 3 - Gym Mom Shows Off Thigh Gap - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - New Quarantine Apartment With Mom Vol 2 Scene 3 - Gym Mom Shows Off Thigh Gap - Taboo Heat.mp4 (90.26 MB)... +Processing: Nikki Brooks in Loving Blackmail-{Jerky Wives}-[Affair, Blowjob, MILF (30+), Male - POV, taboo].mp4 (Mode: scene) +Downloading Nikki Brooks in Loving Blackmail-{Jerky Wives}-[Affair, Blowjob, MILF (30+), Male - POV, taboo].mp4 (67.58 MB)... +Processing: [TabooHeat] Strick MILFs Scene 4 Twisted Threesome [Cory Chase] [Nikki Brooks] [720p].mp4 (Mode: scene) +Downloading [TabooHeat] Strick MILFs Scene 4 Twisted Threesome [Cory Chase] [Nikki Brooks] [720p].mp4 (348.20 MB)... +Processing: Nikki Brooks - Perfect Busty Latin Mom (2) - Mom Had A Rough Day - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Perfect Busty Latin Mom (2) - Mom Had A Rough Day - Maternal Seductions.mp4 (76.88 MB)... +Processing: Nikki Brooks - Lessons from Daddy (2) Daddy Issues - Mixed Model Wrestling.mp4 (Mode: scene) +Downloading Nikki Brooks - Lessons from Daddy (2) Daddy Issues - Mixed Model Wrestling.mp4 (65.80 MB)... +Processing: Nikki Brooks - Mommy's French Maid Footjob.mp4 (Mode: scene) +Downloading Nikki Brooks - Mommy's French Maid Footjob.mp4 (101.39 MB)... +Processing: tabooheat.22.10.05.cory.chase.and.nikki.brooks.4k.mp4 (Mode: scene) +Downloading tabooheat.22.10.05.cory.chase.and.nikki.brooks.4k.mp4 (4721.56 MB)... +Processing: Nikki Brooks - Free Use Volume 3 Scene 2 - Mom Gives Me A Blowjob - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Volume 3 Scene 2 - Mom Gives Me A Blowjob - Taboo Heat.mp4 (93.43 MB)... +Processing: Nikki Brooks - Free Useville Volume 2 Scene 1 - Mom Is Free Use - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Useville Volume 2 Scene 1 - Mom Is Free Use - Taboo Heat.mp4 (119.23 MB)... +Processing: Nikki Brooks - Taking Mommy Five (3) - Mom In Heels - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Taking Mommy Five (3) - Mom In Heels - Maternal Seductions.mp4 (62.75 MB)... +Processing: Multi MILFverse Season 2 - Stuck in Analageddon.mp4 (Mode: scene) +Downloading Multi MILFverse Season 2 - Stuck in Analageddon.mp4 (2047.77 MB)... +Processing: Nikki Brooks in Neglected Step-Mommy - Mommies Secret (HD.)-{Jerky Wives}-[Fake Tits, MILF (30+), Male - POV, taboo].mp4 (Mode: scene) +Downloading Nikki Brooks in Neglected Step-Mommy - Mommies Secret (HD.)-{Jerky Wives}-[Fake Tits, MILF (30+), Male - POV, taboo].mp4 (1329.18 MB)... +Processing: Nikki Brooks - Coffee With Mom Vol. 2 Scene 3 - Helping Stuck Mom Out Of The Couch - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Coffee With Mom Vol. 2 Scene 3 - Helping Stuck Mom Out Of The Couch - Taboo Heat.mp4 (134.90 MB)... +Processing: Nikki Brooks - Lubricated Mommy 2 - Lunch - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Lubricated Mommy 2 - Lunch - Maternal Seductions.mp4 (69.80 MB)... +Processing: Nikki Brooks in Step Mom Reads Naughty Bedtime Stories-(Cory Chase)-{Maternal Seductions}-[Big Tits, Blowjob, Cumshot, Latin, MILF (30+), Male - POV, Step Son, taboo].mp4 (Mode: scene) +Downloading Nikki Brooks in Step Mom Reads Naughty Bedtime Stories-(Cory Chase)-{Maternal Seductions}-[Big Tits, Blowjob, Cumshot, Latin, MILF (30+), Male - POV, Step Son, taboo].mp4 (500.59 MB)... +Processing: Nikki Brooks - Busty Latin Mom (2) - Mom Wants A New Lover - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Busty Latin Mom (2) - Mom Wants A New Lover - Taboo Heat.mp4 (110.12 MB)... +Processing: Cory Chase, Nikki Brooks - Fucking My Aunt After Catching Mom Cheating On Me - Maternal Seductions.mp4 (Mode: scene) +Downloading Cory Chase, Nikki Brooks - Fucking My Aunt After Catching Mom Cheating On Me - Maternal Seductions.mp4 (139.06 MB)... +Processing: TabooHeat.2023.Nikki.Brooks.Free.Use.Multi.Milfverse.Vol.3.Stuck.XXX.1080p.HEVC.x265.PRT.mkv (Mode: scene) +Downloading TabooHeat.2023.Nikki.Brooks.Free.Use.Multi.Milfverse.Vol.3.Stuck.XXX.1080p.HEVC.x265.PRT.mkv (488.65 MB)... +Processing: Nikki Brooks - My Son Comes of Age (3) - Waking Up With Mom.mp4 (Mode: scene) +Downloading Nikki Brooks - My Son Comes of Age (3) - Waking Up With Mom.mp4 (94.41 MB)... +Processing: Nikki Brooks - Family Love (1) - Anniversary - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Family Love (1) - Anniversary - Maternal Seductions.mp4 (50.26 MB)... +Processing: Nikki Brooks - Free Use Multi Milfverse Vol 1 Scene 4 - Multiverse Threesome - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Multi Milfverse Vol 1 Scene 4 - Multiverse Threesome - Taboo Heat.mp4 (123.28 MB)... +Processing: Nikki Brooks - Stuck On Vacation With Mom 4 - Stuck In The Balcony - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Stuck On Vacation With Mom 4 - Stuck In The Balcony - Taboo Heat.mp4 (138.31 MB)... +Processing: Mommy Son Christmas (Mommy Unwrapped, Riding Mommy, Mommy Toy, Mommy Santa and her Favorite Elf)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}.mp4 (Mode: scene) +Downloading Mommy Son Christmas (Mommy Unwrapped, Riding Mommy, Mommy Toy, Mommy Santa and her Favorite Elf)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}.mp4 (1227.43 MB)... +Processing: Nikki Brooks - Free-Use Multi Milfverse Vol. 3 Scene 1 - Stuck In The Sink - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free-Use Multi Milfverse Vol. 3 Scene 1 - Stuck In The Sink - Taboo Heat.mp4 (128.56 MB)... +Processing: Nikki Brooks - Freeuse Multi-MILF Vol 2 Scene 1 - Demands My Cock Anytime She Wants - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Freeuse Multi-MILF Vol 2 Scene 1 - Demands My Cock Anytime She Wants - Taboo Heat.mp4 (122.66 MB)... +Processing: Nikki Brooks - Lubricated Mommy 1 - Morning - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Lubricated Mommy 1 - Morning - Maternal Seductions.mp4 (58.52 MB)... +Processing: Nikki Brooks in Quarantine ent With Stepmom Vol. 2.mp4 (Mode: scene) +Downloading Nikki Brooks in Quarantine ent With Stepmom Vol. 2.mp4 (1320.83 MB)... +Processing: victoriacruz-workout_stream-hi.mp4 (Mode: scene) +Downloading victoriacruz-workout_stream-hi.mp4 (150.30 MB)... +Processing: Mom Earns Extra Lunch Money (Breaking the News, Pushing Boundaries, Crossing the Line, This Time for Fun)-(Nikki Brooks)-{Maternal Seductions}-[MILF (30+), taboo].mp4 (Mode: scene) +Downloading Mom Earns Extra Lunch Money (Breaking the News, Pushing Boundaries, Crossing the Line, This Time for Fun)-(Nikki Brooks)-{Maternal Seductions}-[MILF (30+), taboo].mp4 (89.10 MB)... +Processing: Nikki Brooks In Step Mom Reads Naughty Bedtime Stories-{Taboo Heat}-[Big Dick, Big Tits, Blond Hair, Blowjob, Cum Swallowing, Cumshot, Deepthroat, Facesitting, Family Roleplay, Gonzo, Hardcore, Lingerie, MILF (30+), Step Mother, Titjob, creampie].mp4 (Mode: scene) +Downloading Nikki Brooks In Step Mom Reads Naughty Bedtime Stories-{Taboo Heat}-[Big Dick, Big Tits, Blond Hair, Blowjob, Cum Swallowing, Cumshot, Deepthroat, Facesitting, Family Roleplay, Gonzo, Hardcore, Lingerie, MILF (30+), Step Mother, Titjob, creampie].mp4 (98.78 MB)... +Processing: Tatiana Petrova, Nikki Brooks, Amanda Bryant in My Daughters And I Worship My Nephews Dick.mp4 (Mode: scene) +Downloading Tatiana Petrova, Nikki Brooks, Amanda Bryant in My Daughters And I Worship My Nephews Dick.mp4 (125.77 MB)... +Processing: Cum Before We Finish our Red-(Nikki Brooks, Cory Chase)-{Taboo Heat}-[Big Dick, Big Tits, Blowjob, Cum Swallowing, Cum Swapping, Cumshot, Deepthroat, Facial, Handjob, Hardcore, Lingerie, MILF (30+), Male - POV, Threesome (BGG)].mkv (Mode: scene) +Downloading Cum Before We Finish our Red-(Nikki Brooks, Cory Chase)-{Taboo Heat}-[Big Dick, Big Tits, Blowjob, Cum Swallowing, Cum Swapping, Cumshot, Deepthroat, Facial, Handjob, Hardcore, Lingerie, MILF (30+), Male - POV, Threesome (BGG)].mkv (1950.36 MB)... +Processing: Scene 1 - Step Brother And Step Sister.mp4 (Mode: scene) +Downloading Scene 1 - Step Brother And Step Sister.mp4 (847.06 MB)... +Processing: victoriacruz-kitchen_stream-hi.mp4 (Mode: scene) +Downloading victoriacruz-kitchen_stream-hi.mp4 (141.22 MB)... +Processing: victoriacruz-bodysuit_stream-hi.mp4 (Mode: scene) +Downloading victoriacruz-bodysuit_stream-hi.mp4 (133.14 MB)... +Processing: Nikki Brooks - Family Love (2) - Party With Mommy - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Family Love (2) - Party With Mommy - Maternal Seductions.mp4 (40.14 MB)... +Processing: Nikki Brooks - Mommy Three Months Later (3) - The Stripper - Jerky Wives.mp4 (Mode: scene) +Downloading Nikki Brooks - Mommy Three Months Later (3) - The Stripper - Jerky Wives.mp4 (83.15 MB)... +Processing: TabooHeat.2019.Nikki.Brooks.On.Vacation.With.My.Stepmom.mp4 (Mode: scene) +Downloading TabooHeat.2019.Nikki.Brooks.On.Vacation.With.My.Stepmom.mp4 (2137.79 MB)... +Processing: tabooheat.nikki.brooks.perfect.busty.latin.step-mom-sample.mp4 (Mode: scene) +Downloading tabooheat.nikki.brooks.perfect.busty.latin.step-mom-sample.mp4 (43.08 MB)... +Processing: [MaternalSeductions] My Pet Mom [Cory Chase] [Nikki Brooks] [1080p].mp4 (Mode: scene) +Downloading [MaternalSeductions] My Pet Mom [Cory Chase] [Nikki Brooks] [1080p].mp4 (1655.15 MB)... +Processing: Nikki Brooks, Cory Chase - After Date Threesome - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - After Date Threesome - Maternal Seductions.mp4 (164.72 MB)... +Processing: Nikki Brooks - Free Use Volume 3 Scene 1 - Movie Night - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Volume 3 Scene 1 - Movie Night - Taboo Heat.mp4 (77.66 MB)... +Processing: Mom Takes me to a Fetish Convention (First Night, Mom is Getting Ready, Mom Partied Too Hard, Mom Brings a Friend)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Blowjob, Cum in Mouth, Cumshot, Facial, MILF (30+), Male - POV, Threesome, taboo].mp4 (Mode: scene) +Downloading Mom Takes me to a Fetish Convention (First Night, Mom is Getting Ready, Mom Partied Too Hard, Mom Brings a Friend)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Blowjob, Cum in Mouth, Cumshot, Facial, MILF (30+), Male - POV, Threesome, taboo].mp4 (1998.31 MB)... +Processing: Nikki Brooks - Post Lockdown Family Vacation Vol 2 Scene 4 - Milf Threesome Reunion - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Post Lockdown Family Vacation Vol 2 Scene 4 - Milf Threesome Reunion - Taboo Heat.mp4 (121.85 MB)... +Processing: Nikki Brooks - Mom Takes Me to a Fetish Convention (4) - Mom Brings Up A Friend - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Takes Me to a Fetish Convention (4) - Mom Brings Up A Friend - Taboo Heat.mp4 (176.41 MB)... +Processing: Nikki Brooks - Horny House Guest 1 - Nude Fashion Show - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Horny House Guest 1 - Nude Fashion Show - Taboo Heat.mp4 (153.78 MB)... +Processing: Nikki Brooks – Report Card Reward - DollsDick.mp4 (Mode: scene) +Downloading Nikki Brooks – Report Card Reward - DollsDick.mp4 (410.47 MB)... +Processing: Nikki Brooks - Sucking away motivation femdom wrestling.mp4 (Mode: scene) +Downloading Nikki Brooks - Sucking away motivation femdom wrestling.mp4 (110.78 MB)... +Processing: Nikki Brooks - Free Use Volume 4 - Fucking Mom While She Talks To Dad - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Volume 4 - Fucking Mom While She Talks To Dad - Taboo Heat.mp4 (93.83 MB)... +Processing: Nikki Brooks - Coffee With Mom Volume 1 Scene 3 - Free Use Is A Puzzle - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Coffee With Mom Volume 1 Scene 3 - Free Use Is A Puzzle - Taboo Heat.mp4 (145.10 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 5 Scene 3 - Hooker By Night - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 5 Scene 3 - Hooker By Night - Taboo Heat.mp4 (81.72 MB)... +Processing: Nikki Brooks - Coffee With Mom Volume 1 Scene 4 - Give Mom The Leche - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Coffee With Mom Volume 1 Scene 4 - Give Mom The Leche - Taboo Heat.mp4 (155.44 MB)... +Processing: Nikki Brooks - Free-Useville Volume 1 Scene 2 - Every Mom Is Doing It - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free-Useville Volume 1 Scene 2 - Every Mom Is Doing It - Taboo Heat.mp4 (118.54 MB)... +Processing: Nikki Brooks - Truth Or Dare with My Mom 4 - Family Threesome - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Truth Or Dare with My Mom 4 - Family Threesome - Taboo Heat.mp4 (140.97 MB)... +Processing: tabooheat.21.08.05.nikki.brooks.1080p.mp4 (Mode: scene) +Downloading tabooheat.21.08.05.nikki.brooks.1080p.mp4 (972.03 MB)... +Processing: Nikki Brooks - Remote Control Mommy 1 - How To Control Mom - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Remote Control Mommy 1 - How To Control Mom - Maternal Seductions.mp4 (98.21 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 6 - Escort Trip To Vegas - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 6 - Escort Trip To Vegas - Taboo Heat.mp4 (120.60 MB)... +Processing: Nikki Brooks - Can I Jump On It.mp4 (Mode: scene) +Downloading Nikki Brooks - Can I Jump On It.mp4 (84.38 MB)... +Processing: Nikki Brooks - Satisfying Mommy (2) - Blowing Off Homework - Jerky Wives.mp4 (Mode: scene) +Downloading Nikki Brooks - Satisfying Mommy (2) - Blowing Off Homework - Jerky Wives.mp4 (57.47 MB)... +Processing: Nikki Brooks - Moving In With My Mom 1 - New House And Body Tour - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Moving In With My Mom 1 - New House And Body Tour - Taboo Heat.mp4 (125.06 MB)... +Processing: TabooHeat.22.10.19.Cory.Chase.And.Nikki.Brooks.XXX.1080p.HEVC.x265.PRT.mkv (Mode: scene) +Downloading TabooHeat.22.10.19.Cory.Chase.And.Nikki.Brooks.XXX.1080p.HEVC.x265.PRT.mkv (1845.40 MB)... +Processing: Nikki Brooks - Free Family Use Vol. 4 Backpedaling.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Family Use Vol. 4 Backpedaling.mp4 (1930.53 MB)... +Processing: Nikki Brooks - Blackmailing Mommy (4) - Tasting Mommy - Jerky Wives.mp4 (Mode: scene) +Downloading Nikki Brooks - Blackmailing Mommy (4) - Tasting Mommy - Jerky Wives.mp4 (76.31 MB)... +Processing: cosmid.20.03.18.victoria.cruz.in.the.kitchen.mp4 (Mode: scene) +Downloading cosmid.20.03.18.victoria.cruz.in.the.kitchen.mp4 (508.66 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 1 Scene 3 - Mom Cleans My Cock - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 1 Scene 3 - Mom Cleans My Cock - Maternal Seductions.mp4 (133.08 MB)... +Processing: Nikki Brooks - Family Love (4) - Filling Mommys Hole - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Family Love (4) - Filling Mommys Hole - Maternal Seductions.mp4 (57.16 MB)... +Processing: Nikki Brooks in Step Sister is Pregnant-(Cory Chase)-{Taboo Heat}-[Big Tits, Blond Hair, Facesitting, Family Roleplay, HD Available, Hairy, Lesbian, Lingerie, MILF (30+), Pussy Licking, Reality Porn, Rimming].mp4 (Mode: scene) +Downloading Nikki Brooks in Step Sister is Pregnant-(Cory Chase)-{Taboo Heat}-[Big Tits, Blond Hair, Facesitting, Family Roleplay, HD Available, Hairy, Lesbian, Lingerie, MILF (30+), Pussy Licking, Reality Porn, Rimming].mp4 (1760.40 MB)... +Processing: Katy Faery, Nikki Brooks - Dommy Mommy - Sibling Bonding Time.mp4 (Mode: scene) +Downloading Katy Faery, Nikki Brooks - Dommy Mommy - Sibling Bonding Time.mp4 (78.89 MB)... +Processing: Nikki Brooks - Lets Pretend To Be Presents and Get Laid Under The Christmas Tree - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Lets Pretend To Be Presents and Get Laid Under The Christmas Tree - Maternal Seductions.mp4 (78.59 MB)... +Processing: victoriacruz-office_stream-hi.mp4 (Mode: scene) +Downloading victoriacruz-office_stream-hi.mp4 (149.30 MB)... +Processing: Lets_Pretend_To_Be_Presents_and_Get_Laid_Under_The_Christmas_Tree.mp4.mp4 (Mode: scene) +Downloading Lets_Pretend_To_Be_Presents_and_Get_Laid_Under_The_Christmas_Tree.mp4.mp4 (340.39 MB)... +Processing: Nikki Brooks - Before School Handjob.mp4 (Mode: scene) +Downloading Nikki Brooks - Before School Handjob.mp4 (101.18 MB)... +Processing: [XXXMultimedia] Nikki Brooks - Sharing a Bed with Mom.mp4 (Mode: scene) +Downloading [XXXMultimedia] Nikki Brooks - Sharing a Bed with Mom.mp4 (374.95 MB)... +Processing: Nikki Brooks - Taking Mommy Five (2) - Mom Is Always Nude - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Taking Mommy Five (2) - Mom Is Always Nude - Maternal Seductions.mp4 (88.70 MB)... +Processing: Victoria Cruz's Kitchen Table-(Nikki Brooks)-{Cosmid}-[Masturbation, Solo Female, Striptease, Vibrator].mp4 (Mode: scene) +Downloading Victoria Cruz's Kitchen Table-(Nikki Brooks)-{Cosmid}-[Masturbation, Solo Female, Striptease, Vibrator].mp4 (404.38 MB)... +Processing: Nikki Brooks - Sister Is Pregnant 3 - Eat Me On The Patio - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Sister Is Pregnant 3 - Eat Me On The Patio - Taboo Heat.mp4 (84.31 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 1 Scene 4 - Mom Has A Secret - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 1 Scene 4 - Mom Has A Secret - Maternal Seductions.mp4 (102.85 MB)... +Processing: Nikki Brooks - New Quarantine Apartment with Step-Mom.mp4 (Mode: scene) +Downloading Nikki Brooks - New Quarantine Apartment with Step-Mom.mp4 (1151.53 MB)... +Processing: Helena Price, Nikki Brooks - Loser Twink Pegged And Humiliated By Mom And Aunt - Ginarys Kinky Adventures.mp4 (Mode: scene) +Downloading Helena Price, Nikki Brooks - Loser Twink Pegged And Humiliated By Mom And Aunt - Ginarys Kinky Adventures.mp4 (151.17 MB)... +Processing: Nikki Brooks, Cory Chase - Sisters Set Free - New Bound.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - Sisters Set Free - New Bound.mp4 (107.08 MB)... +Processing: Nikki Brooks, Cory Chase - Moms and Daughters - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - Moms and Daughters - Taboo Heat.mp4 (401.60 MB)... +Processing: Nikki Brooks in My Step-Son Comes of Age-{Maternal Seductions}-[Blowjob, Handjob, Incest, MILF (30+), Virtual Sex, taboo].mp4 (Mode: scene) +Downloading Nikki Brooks in My Step-Son Comes of Age-{Maternal Seductions}-[Blowjob, Handjob, Incest, MILF (30+), Virtual Sex, taboo].mp4 (1424.39 MB)... +Processing: tabooheat.21.10.16.cory.chase.and.nikki.brooks.480p.mp4 (Mode: scene) +Downloading tabooheat.21.10.16.cory.chase.and.nikki.brooks.480p.mp4 (524.97 MB)... +Processing: Nikki Brooks - Coffee With Mom Vol. 2 Scene 1 - Mom Is Always Naked And Horny - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Coffee With Mom Vol. 2 Scene 1 - Mom Is Always Naked And Horny - Taboo Heat.mp4 (131.73 MB)... +Processing: Nikki Brooks - Satisfying Mommy (1) - Show Mommy Your Dick - Jerky Wives.mp4 (Mode: scene) +Downloading Nikki Brooks - Satisfying Mommy (1) - Show Mommy Your Dick - Jerky Wives.mp4 (58.85 MB)... +Processing: Nikki Brooks - Motherly Fantasies (1) - Early Morning - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Motherly Fantasies (1) - Early Morning - Maternal Seductions.mp4 (73.40 MB)... +Processing: Cory Chase, Nikki Brooks - My Pet Mom (4) - Me, Mom And Aunt Cory - Maternal Seductions.mp4 (Mode: scene) +Downloading Cory Chase, Nikki Brooks - My Pet Mom (4) - Me, Mom And Aunt Cory - Maternal Seductions.mp4 (100.24 MB)... +Processing: Nikki Brooks - Mom Is Knocked Up 2 - Removing The Birth Control Patch - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Is Knocked Up 2 - Removing The Birth Control Patch - Taboo Heat.mp4 (86.00 MB)... +Processing: Step Mom Shows me her new Big Tits and Sucks my Cock - Nikki.mp4 (Mode: scene) +Downloading Step Mom Shows me her new Big Tits and Sucks my Cock - Nikki.mp4 (274.72 MB)... +Processing: Nikki Brooks - Mom Teaches Son How to Kiss - XXXMultimedia.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Teaches Son How to Kiss - XXXMultimedia.mp4 (107.52 MB)... +Processing: Nikki Brooks - Post Lockdown Family Vacation 4 - Mind Blowing Threesome - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Post Lockdown Family Vacation 4 - Mind Blowing Threesome - Taboo Heat.mp4 (140.28 MB)... +Processing: Nikki Brooks - She Needs More Money For Big Tits - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - She Needs More Money For Big Tits - Maternal Seductions.mp4 (99.62 MB)... +Processing: Nikki Brooks - Free-Useville Volume 1 Scene 1 - Mom Is A Pervert - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free-Useville Volume 1 Scene 1 - Mom Is A Pervert - Taboo Heat.mp4 (157.00 MB)... +Processing: Nikki Brooks - Mom is Always Naked 3 - Mom Partied Too Hard - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom is Always Naked 3 - Mom Partied Too Hard - Maternal Seductions.mp4 (87.40 MB)... +Processing: Nikki Brooks - Mom Takes Me to a Fetish Convention (2) - Watching Mom Get Ready - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Takes Me to a Fetish Convention (2) - Watching Mom Get Ready - Taboo Heat.mp4 (65.36 MB)... +Processing: Nikki Brooks - Motherly Fantasies (3) - Fuck Mommy Hard - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Motherly Fantasies (3) - Fuck Mommy Hard - Maternal Seductions.mp4 (63.24 MB)... +Processing: Cory Chase, Nikki Brooks – Stepsister Christmas – Incest Por.mp4 (Mode: scene) +Downloading Cory Chase, Nikki Brooks – Stepsister Christmas – Incest Por.mp4 (289.59 MB)... +Processing: Cory Chase Nikki Brooks and Amiee Cambridge in Milf Manor-{Taboo Heat}-[Big Tits, Blond Hair, Brown Hair, Facesitting, Fingering, Hairy, Lesbian, Lingerie, Stockings, Threesome, Toys, taboo].mp4 (Mode: scene) +Downloading Cory Chase Nikki Brooks and Amiee Cambridge in Milf Manor-{Taboo Heat}-[Big Tits, Blond Hair, Brown Hair, Facesitting, Fingering, Hairy, Lesbian, Lingerie, Stockings, Threesome, Toys, taboo].mp4 (109.56 MB)... +Processing: Nikki Brooks - Mom Reads Naughty Bedtime Stories 1 - Go To Bed - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Reads Naughty Bedtime Stories 1 - Go To Bed - Taboo Heat.mp4 (90.96 MB)... +Processing: Nikki Brooks - Free Use Volume 4 - Sharing A Bed With Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Volume 4 - Sharing A Bed With Mom - Taboo Heat.mp4 (94.06 MB)... +Processing: Nikki Brooks - On Vacation with My Mom (2) - Helping Mom With Her First Date - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - On Vacation with My Mom (2) - Helping Mom With Her First Date - Taboo Heat.mp4 (107.44 MB)... +Processing: Nikki Brooks - Family Love (3) - Cum To Mommy - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Family Love (3) - Cum To Mommy - Maternal Seductions.mp4 (52.38 MB)... +Processing: Free Use Step Mom Vol 4 - New Big Tits (Lets Make a Deal, Shower Sex, She Needs More, About The Night Before)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Blowjob, Cumshot, MILF (30+), Male - POV, taboo].mp4 (Mode: scene) +Downloading Free Use Step Mom Vol 4 - New Big Tits (Lets Make a Deal, Shower Sex, She Needs More, About The Night Before)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Blowjob, Cumshot, MILF (30+), Male - POV, taboo].mp4 (357.98 MB)... +Processing: Nikki Brooks in Free Family Use Vol 4 - Backpedaling-{Taboo Heat}-[Big Tits, Blond Hair, Blowjob, Cumshot, Deepthroat, Facial, Family Roleplay, Hardcore, Open Mouth Facial, Pussy To Mouth, Step Mother, creampie].mp4 (Mode: scene) +Downloading Nikki Brooks in Free Family Use Vol 4 - Backpedaling-{Taboo Heat}-[Big Tits, Blond Hair, Blowjob, Cumshot, Deepthroat, Facial, Family Roleplay, Hardcore, Open Mouth Facial, Pussy To Mouth, Step Mother, creampie].mp4 (1769.77 MB)... +Processing: Nikki Brooks in Good Moms Go To Heaven Bad Moms Cum Everywhere.mp4 (Mode: scene) +Downloading Nikki Brooks in Good Moms Go To Heaven Bad Moms Cum Everywhere.mp4 (1978.82 MB)... +Processing: Nikki Brooks - My Son Comes of Age (1) - After Practice.mp4 (Mode: scene) +Downloading Nikki Brooks - My Son Comes of Age (1) - After Practice.mp4 (95.33 MB)... +Processing: Scene 03.mp4 (Mode: scene) +Downloading Scene 03.mp4 (331.89 MB)... +Processing: Nikki Brooks - Motherly Fantasies (2) - Moms Love Anal - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Motherly Fantasies (2) - Moms Love Anal - Maternal Seductions.mp4 (40.62 MB)... +Processing: Nikki Brooks - Mommy's Sloppy Blowjob.mp4 (Mode: scene) +Downloading Nikki Brooks - Mommy's Sloppy Blowjob.mp4 (108.67 MB)... +Processing: Nikki Brooks - Free Useville Volume 2 Scene 4 - Who Has The Tighter Pussy¿ - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Useville Volume 2 Scene 4 - Who Has The Tighter Pussy¿ - Taboo Heat.mp4 (204.86 MB)... +Processing: Nikki Brooks - Free Use Mom Volume 4 - New Big Tits - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Volume 4 - New Big Tits - Maternal Seductions.mp4 (146.35 MB)... +Processing: Nikki Brooks, Tropic City Heroine.mp4 (Mode: scene) +Downloading Nikki Brooks, Tropic City Heroine.mp4 (722.33 MB)... +Processing: Nikki Brooks - Motherly Fantasies (4) - All Alone With Mommy - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Motherly Fantasies (4) - All Alone With Mommy - Maternal Seductions.mp4 (86.75 MB)... +Processing: Nikki Brooks - New Quarantine Apartment With Mom Vol 2 Scene 4 - Mom Seduces Hot Neighbour Into Threesome - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - New Quarantine Apartment With Mom Vol 2 Scene 4 - Mom Seduces Hot Neighbour Into Threesome - Taboo Heat.mp4 (167.78 MB)... +Processing: Nikki Brooks, Cory Chase - Coffee with Step Mom.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - Coffee with Step Mom.mp4 (2379.73 MB)... +Processing: Nikki Brooks - Post Lockdown Family Vacation 3 - Setting Up A Hot Milf Threesome - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Post Lockdown Family Vacation 3 - Setting Up A Hot Milf Threesome - Taboo Heat.mp4 (128.92 MB)... +Processing: Nikki Brooks - Strict MILFs (2) - Powers Tested - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Strict MILFs (2) - Powers Tested - Maternal Seductions.mp4 (83.81 MB)... +Processing: Scene 04.mp4 (Mode: scene) +Downloading Scene 04.mp4 (1403.11 MB)... +Processing: Nikki Brooks - Rescued by Mommy (1) - Planning - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Rescued by Mommy (1) - Planning - Taboo Heat.mp4 (85.05 MB)... +Processing: Scene 4 - Step Aunt And Step Daughters Orgy (part 1).mp4 (Mode: scene) +Downloading Scene 4 - Step Aunt And Step Daughters Orgy (part 1).mp4 (577.31 MB)... +Processing: Nikki Brooks - Mom Earns Extra Lunch Money (1) - Breaking the News - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Earns Extra Lunch Money (1) - Breaking the News - Maternal Seductions.mp4 (104.99 MB)... +Processing: Nikki Brooks - Follow Me As You Jerk Off - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Follow Me As You Jerk Off - Taboo Heat.mp4 (76.82 MB)... +Processing: Rescued by Mommy (Planning, One Bed Two People, Withdrawal, Aunt Cory)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Big Tits, Blowjob, Cumshot, Facial, MILF (30+), Male - POV, taboo].mp4 (Mode: scene) +Downloading Rescued by Mommy (Planning, One Bed Two People, Withdrawal, Aunt Cory)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Big Tits, Blowjob, Cumshot, Facial, MILF (30+), Male - POV, taboo].mp4 (489.58 MB)... +Processing: Nikki Brooks - Freeuse Multi-MILF Vol 2 Scene 2 - Mom Busts Into My Room And I Bust In Her Mouth - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Freeuse Multi-MILF Vol 2 Scene 2 - Mom Busts Into My Room And I Bust In Her Mouth - Taboo Heat.mp4 (134.43 MB)... +Processing: Nikki Brooks - Rescued by Mommy (3) - Withdrawal - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Rescued by Mommy (3) - Withdrawal - Taboo Heat.mp4 (77.93 MB)... +Processing: Nikki Brooks - Free Use Multi Milfverse Vol 1 Scene 2 - Multiverse Lingerie - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Multi Milfverse Vol 1 Scene 2 - Multiverse Lingerie - Taboo Heat.mp4 (136.60 MB)... +Processing: Nikki Brooks in Neglected Mommy (3) - Mommys Secret by Jerky Wives.mp4 (Mode: scene) +Downloading Nikki Brooks in Neglected Mommy (3) - Mommys Secret by Jerky Wives.mp4 (64.84 MB)... +Processing: Nikki Brooks - Strict MILFs (3) - Called To The Office - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Strict MILFs (3) - Called To The Office - Maternal Seductions.mp4 (108.29 MB)... +Processing: Coffee with Step Mom Vol 2-(Nikki Brooks)-{Taboo Heat}-[Big Dick, Big Tits, Blowjob, Cumshot, Deepthroat, Facial, Family Roleplay, Hardcore, Lingerie, Male - POV, Step Mother].mkv (Mode: scene) +Downloading Coffee with Step Mom Vol 2-(Nikki Brooks)-{Taboo Heat}-[Big Dick, Big Tits, Blowjob, Cumshot, Deepthroat, Facial, Family Roleplay, Hardcore, Lingerie, Male - POV, Step Mother].mkv (1413.74 MB)... +Processing: Nikki Brooks - Stuck On Vacation with Stepmom.mp4 (Mode: scene) +Downloading Nikki Brooks - Stuck On Vacation with Stepmom.mp4 (1995.79 MB)... +Processing: 28937.mp4 (Mode: scene) +Downloading 28937.mp4 (127.80 MB)... +Processing: Free Use Step Mom Vol 5 - Enhanced (New Tits and a Suck, New Tits and a Fuck, Lady of the Night, Face Covered in Cum)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Big Tits, Blowjob, Cumshot, MILF (30+), Male - POV, Stepmom, taboo].mp4 (Mode: scene) +Downloading Free Use Step Mom Vol 5 - Enhanced (New Tits and a Suck, New Tits and a Fuck, Lady of the Night, Face Covered in Cum)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Big Tits, Blowjob, Cumshot, MILF (30+), Male - POV, Stepmom, taboo].mp4 (1936.61 MB)... +Processing: Nikki Brooks - Free Use Volume 4 - Not So Stuck Mom Fucked - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Volume 4 - Not So Stuck Mom Fucked - Taboo Heat.mp4 (83.06 MB)... +Processing: Nikki Brooks - Free Use Volume 4 - It's Okay To Fuck Your Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Volume 4 - It's Okay To Fuck Your Mom - Taboo Heat.mp4 (109.38 MB)... +Processing: Nikki Brooks - Lessons from Daddy (1) Persistent Daughter - Mixed Model Wrestling.mp4 (Mode: scene) +Downloading Nikki Brooks - Lessons from Daddy (1) Persistent Daughter - Mixed Model Wrestling.mp4 (47.58 MB)... +Processing: Busty Latin Step Mom (Masturbating to Step-Mom, Step-Mom Wants a New Lover, Step-Mom Cures My Porn Addiction, Step Mom Shares Aunt Cory)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Blowjob, Cumshot, Facial, MILF (30+), Male - POV, taboo].mp4 (Mode: scene) +Downloading Busty Latin Step Mom (Masturbating to Step-Mom, Step-Mom Wants a New Lover, Step-Mom Cures My Porn Addiction, Step Mom Shares Aunt Cory)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Blowjob, Cumshot, Facial, MILF (30+), Male - POV, taboo].mp4 (154.02 MB)... +Processing: Nikki Brooks - Mom Is Knocked Up 1 - Driving Home From The Airport - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom Is Knocked Up 1 - Driving Home From The Airport - Taboo Heat.mp4 (99.08 MB)... +Processing: Nikki Brooks - Sister Is Pregnant 1 - It's Official - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Sister Is Pregnant 1 - It's Official - Taboo Heat.mp4 (120.09 MB)... +Processing: [XXXMultimedia.com] Nikki Brooks - The Robot Companion 1080p.mp4 (Mode: scene) +Downloading [XXXMultimedia.com] Nikki Brooks - The Robot Companion 1080p.mp4 (539.80 MB)... +Processing: Nikki Brooks - Free Use Volume 3 Scene 3 - Mom Can't Resist - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Volume 3 Scene 3 - Mom Can't Resist - Taboo Heat.mp4 (148.54 MB)... +Processing: Scene 5 - Step Aunt And Step Daughters Orgy (part 2).mp4 (Mode: scene) +Downloading Scene 5 - Step Aunt And Step Daughters Orgy (part 2).mp4 (1166.40 MB)... +Processing: Nikki Brooks - Moms Hand Gets Stuck in Sink And Son Molests Her.mp4 (Mode: scene) +Downloading Nikki Brooks - Moms Hand Gets Stuck in Sink And Son Molests Her.mp4 (75.37 MB)... +Processing: tabooheat.23.01.14.nikki.brooks.480p.mp4 (Mode: scene) +Downloading tabooheat.23.01.14.nikki.brooks.480p.mp4 (399.78 MB)... +Processing: Nikki Brooks - Coffee With Mom Vol. 2 Scene 2 - Mom Is Stuck In My Bed - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Coffee With Mom Vol. 2 Scene 2 - Mom Is Stuck In My Bed - Taboo Heat.mp4 (133.25 MB)... +Processing: My Pet Mom (Me and Aunt Cory, Mom and Aunt Cory, Me and Mom, Me, Mom and Aunt Cory)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Blowjob, Cum in Mouth, Cumshot, Facial, MILF (30+), Male - POV, Threesome, taboo].mp4 (Mode: scene) +Downloading My Pet Mom (Me and Aunt Cory, Mom and Aunt Cory, Me and Mom, Me, Mom and Aunt Cory)-(Nikki Brooks, Cory Chase)-{Maternal Seductions}-[Blowjob, Cum in Mouth, Cumshot, Facial, MILF (30+), Male - POV, Threesome, taboo].mp4 (75.65 MB)... +Processing: Nikki Brooks & Cory Chase In Free Use Step Sisters Introductions-{Taboo Heat}-[Big Tits, Blond Hair, Facesitting, Family Roleplay, Lesbian, MILF (30+), Pussy Licking, Reality Porn, White].mp4 (Mode: scene) +Downloading Nikki Brooks & Cory Chase In Free Use Step Sisters Introductions-{Taboo Heat}-[Big Tits, Blond Hair, Facesitting, Family Roleplay, Lesbian, MILF (30+), Pussy Licking, Reality Porn, White].mp4 (106.90 MB)... +Processing: Nikki Brooks, Cory Chase - Mom Stuck Under The Bed With Aunt - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - Mom Stuck Under The Bed With Aunt - Taboo Heat.mp4 (209.70 MB)... +Processing: Nikki Brooks - New Quarantine Apartment With Mom Vol 1 Scene 1 - Unpacking Bags And Undressing Mom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - New Quarantine Apartment With Mom Vol 1 Scene 1 - Unpacking Bags And Undressing Mom - Taboo Heat.mp4 (85.74 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 5 Scene 1 - New Tits And A Suck - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 5 Scene 1 - New Tits And A Suck - Taboo Heat.mp4 (62.19 MB)... +Processing: Nikki Brooks - Mom is Always Naked 4 - Mom Is Angry - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom is Always Naked 4 - Mom Is Angry - Maternal Seductions.mp4 (72.68 MB)... +Processing: Nikki Brooks - Free Use Mom Vol 6 - Fucking Escort Aunt Without A Condom - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Free Use Mom Vol 6 - Fucking Escort Aunt Without A Condom - Taboo Heat.mp4 (172.11 MB)... +Processing: Scene 3 - Couch (part 2).mp4 (Mode: scene) +Downloading Scene 3 - Couch (part 2).mp4 (814.22 MB)... +Processing: Nikki Brooks - My Stuck Step-Mom.mp4 (Mode: scene) +Downloading Nikki Brooks - My Stuck Step-Mom.mp4 (1645.30 MB)... +Processing: Nikki Brooks Free Useville Scene 3 010122 Watch porn video i.mp4 (Mode: scene) +Downloading Nikki Brooks Free Useville Scene 3 010122 Watch porn video i.mp4 (371.52 MB)... +Processing: Nikki Brooks - Good Moms Go To Heaven Bad Moms Cum Everywhere (1) - New Home Tour - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks - Good Moms Go To Heaven Bad Moms Cum Everywhere (1) - New Home Tour - Taboo Heat.mp4 (80.91 MB)... +Processing: Nikki Brooks in Post Lockdown.mp4 (Mode: scene) +Downloading Nikki Brooks in Post Lockdown.mp4 (1623.24 MB)... +Processing: Nikki Brooks - Taking Mommy Five (1) - Blackmail Arrangements - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Taking Mommy Five (1) - Blackmail Arrangements - Maternal Seductions.mp4 (73.47 MB)... +Processing: Nikki Brooks - Mom is Always Naked 1 - Montage - Maternal Seductions.mp4 (Mode: scene) +Downloading Nikki Brooks - Mom is Always Naked 1 - Montage - Maternal Seductions.mp4 (82.53 MB)... +Processing: [clips4sale.com]Nikki_Brooks_in_Satisfying_Mommy_1080p.mp4 (Mode: scene) +Downloading [clips4sale.com]Nikki_Brooks_in_Satisfying_Mommy_1080p.mp4 (780.01 MB)... +Processing: Cory Chase, Nikki Brooks - My Pet Mom (2) - Mom And Aunt Cory - Maternal Seductions.mp4 (Mode: scene) +Downloading Cory Chase, Nikki Brooks - My Pet Mom (2) - Mom And Aunt Cory - Maternal Seductions.mp4 (73.03 MB)... +Processing: Nikki Brooks in Neglected Mommy (2) - Tipsy Mom by Jerky Wives.mp4 (Mode: scene) +Downloading Nikki Brooks in Neglected Mommy (2) - Tipsy Mom by Jerky Wives.mp4 (111.35 MB)... +Processing: Nikki Brooks, Cory Chase - Rescued by Mommy (4) - Aunt Cory - Taboo Heat.mp4 (Mode: scene) +Downloading Nikki Brooks, Cory Chase - Rescued by Mommy (4) - Aunt Cory - Taboo Heat.mp4 (177.07 MB)... +Scanning directory: /videos/taboofantasy/stephie.staar +Processing: [clips4sale.com]brother_busted_me_00887.mp4 (Mode: scene) +Downloading [clips4sale.com]brother_busted_me_00887.mp4 (206.28 MB)... +Processing: Compressed_A Taboo Fantasy_STEPHIE-STARRS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_STEPHIE-STARRS-FAMILY-ALBUM.mp4 (1117.34 MB)... +Processing: Unforgettable-(Stephie Staar)-{This Girl Sucks}.mp4 (Mode: scene) +Downloading Unforgettable-(Stephie Staar)-{This Girl Sucks}.mp4 (508.37 MB)... +Processing: Taboo_Family_Affairs_12.mp4 (Mode: scene) +Downloading Taboo_Family_Affairs_12.mp4 (704.30 MB)... +Processing: All Fun and Games_Stephie Staar_1080p.mp4 (Mode: scene) +Downloading All Fun and Games_Stephie Staar_1080p.mp4 (513.58 MB)... +Processing: Kinky Blonde Stephie Staar Sex Interview-{RawAttack}-[Big Ass, Blowjob, Brown Hair, Dirty Talk, Gagging, Handjob, Male - POV, Massive Cumshot, Missionary, Natural Tits, Reality Porn].mp4 (Mode: scene) +Downloading Kinky Blonde Stephie Staar Sex Interview-{RawAttack}-[Big Ass, Blowjob, Brown Hair, Dirty Talk, Gagging, Handjob, Male - POV, Massive Cumshot, Missionary, Natural Tits, Reality Porn].mp4 (586.35 MB)... +Scanning directory: /videos/taboofantasy/daisy.destin +Processing: A Taboo Fantasy_Fathers-Day-Fuck.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Fathers-Day-Fuck.mp4 (388.81 MB)... +Processing: A Taboo Fantasy_3-Times-With-My-Sister.mp4 (Mode: scene) +Downloading A Taboo Fantasy_3-Times-With-My-Sister.mp4 (435.61 MB)... +Processing: GAME ON!!!-(Daisy Destin)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Natural Tits, Pussy Licking, Short Woman, Sister].mp4 (Mode: scene) +Downloading GAME ON!!!-(Daisy Destin)-{Taboo Fantasy}-[Big Tits, Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Natural Tits, Pussy Licking, Short Woman, Sister].mp4 (398.07 MB)... +Processing: A Taboo Fantasy_Evi-Love-Potion.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Evi-Love-Potion.mp4 (288.22 MB)... +Processing: A Taboo Fantasy_Farmers-Daughter.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Farmers-Daughter.mp4 (395.09 MB)... +Processing: OLDER SISTER IN CHARGE!!!-(Daisy Destin)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading OLDER SISTER IN CHARGE!!!-(Daisy Destin)-{Taboo Fantasy}.mp4 (305.05 MB)... +Processing: Compressed_A Taboo Fantasy_DAISY-DESTINS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_DAISY-DESTINS-FAMILY-ALBUM.mp4 (1696.87 MB)... +Scanning directory: /videos/taboofantasy/tabitha.tf +Processing: TABITHAS_FAMILY_ALBUM_A_Taboo_Fantas.mp4 (Mode: scene) +Downloading TABITHAS_FAMILY_ALBUM_A_Taboo_Fantas.mp4 (1698.91 MB)... +Scanning directory: /videos/taboofantasy/joclyn.stone +Processing: HUMILIATED BY MOM-(Joclyn Stone)-{Taboo Fantasy}-[Big Ass, Blond Hair, Blowjob, Cum in Mouth, Daughter, Facesitting on Him, Family Roleplay, Femdom, Hairy Pussy, Humiliation, Mother, Older Woman - Younger Man, Panties In Mouth].mp4 (Mode: scene) +Downloading HUMILIATED BY MOM-(Joclyn Stone)-{Taboo Fantasy}-[Big Ass, Blond Hair, Blowjob, Cum in Mouth, Daughter, Facesitting on Him, Family Roleplay, Femdom, Hairy Pussy, Humiliation, Mother, Older Woman - Younger Man, Panties In Mouth].mp4 (325.13 MB)... +Processing: A Taboo Fantasy_Mom-Spit-Cum-In-My-Face.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Mom-Spit-Cum-In-My-Face.mp4 (311.99 MB)... +Processing: Full Video - Big Tits MILF Joclyn Stone Talks Dirty While Taking.mp4 (Mode: scene) +Downloading Full Video - Big Tits MILF Joclyn Stone Talks Dirty While Taking.mp4 (16.27 MB)... +Processing: Compressed_A Taboo Fantasy_Mom-Screwed-Me.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Mom-Screwed-Me.mp4 (312.12 MB)... +Processing: A Taboo Fantasy_Motherly-Masturbation.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Motherly-Masturbation.mp4 (300.76 MB)... +Processing: A Taboo Fantasy_Moms-Relaxed-Again.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Moms-Relaxed-Again.mp4 (347.10 MB)... +Scanning directory: /videos/taboofantasy/brooke.tf +Processing: Brookes Family Album.mp4 (Mode: scene) +Downloading Brookes Family Album.mp4 (1874.20 MB)... +Scanning directory: /videos/taboofantasy/shay.tf +Processing: A Taboo Fantasy_Uncle-Jimmy.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Uncle-Jimmy.mp4 (436.80 MB)... +Scanning directory: /videos/taboofantasy/brielle.tf +Processing: A Taboo Fantasy_A-Very-Brady-Punishment.mp4 (Mode: scene) +Downloading A Taboo Fantasy_A-Very-Brady-Punishment.mp4 (396.90 MB)... +Processing: DADDY....MAKE ME PREGNANT!!!-(Brielle)-{Taboo Fantasy}-[Blond Hair, Condom, Daughter, Family Roleplay, Father, Hairy Pussy, Impregnation, Natural Tits, Small Tits, Trimmed Pussy].mp4 (Mode: scene) +Downloading DADDY....MAKE ME PREGNANT!!!-(Brielle)-{Taboo Fantasy}-[Blond Hair, Condom, Daughter, Family Roleplay, Father, Hairy Pussy, Impregnation, Natural Tits, Small Tits, Trimmed Pussy].mp4 (273.44 MB)... +Processing: Compressed_A Taboo Fantasy_The-Brady-Bunch.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_The-Brady-Bunch.mp4 (458.35 MB)... +Processing: gBEhM00KFt8CQBmUgoNT.mp4 (Mode: scene) +Downloading gBEhM00KFt8CQBmUgoNT.mp4 (303.74 MB)... +Scanning directory: /videos/taboofantasy/betty.and.casey +Processing: Betty, Casey - Daddy's Girl Volume 37 - Let's Suck Your Dad .mp4 (Mode: scene) +Downloading Betty, Casey - Daddy's Girl Volume 37 - Let's Suck Your Dad .mp4 (103.46 MB)... +Scanning directory: /videos/taboofantasy/dezi.rae +Processing: Dezi Rae Channy Crossfire - Make Daddy Cum - Aglaea Productions -01.mp4 (Mode: scene) +Downloading Dezi Rae Channy Crossfire - Make Daddy Cum - Aglaea Productions -01.mp4 (152.96 MB)... +Processing: Dezi Rae's Family Album HD.mp4 (Mode: scene) +Downloading Dezi Rae's Family Album HD.mp4 (1254.62 MB)... +Processing: A Taboo Fantasy_MY-SISTER-FUCKED-ME.mp4 (Mode: scene) +Downloading A Taboo Fantasy_MY-SISTER-FUCKED-ME.mp4 (286.44 MB)... +Processing: Dezi Rae Channy Crossfire - Make Daddy Cum - Aglaea Productions .mp4 (Mode: scene) +Downloading Dezi Rae Channy Crossfire - Make Daddy Cum - Aglaea Productions .mp4 (152.96 MB)... +Processing: Compressed_A Taboo Fantasy_SHOWERING-WITH-MY-SISTER.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_SHOWERING-WITH-MY-SISTER.mp4 (382.66 MB)... +Processing: Make Daddy Cum.mp4 (Mode: scene) +Downloading Make Daddy Cum.mp4 (379.65 MB)... +Processing: Dezi Rae - Brother Fuckers Volume 28 - Showering With My Sis.mp4 (Mode: scene) +Downloading Dezi Rae - Brother Fuckers Volume 28 - Showering With My Sis.mp4 (165.09 MB)... +Processing: Desiree Audri - Little Sister Manhandles Big Brother And His Man.mp4 (Mode: scene) +Downloading Desiree Audri - Little Sister Manhandles Big Brother And His Man.mp4 (143.81 MB)... +Processing: Dezi Rae - Brother Fuckers Volume 27 - My Sister Fucked Me - Tab.mp4 (Mode: scene) +Downloading Dezi Rae - Brother Fuckers Volume 27 - My Sister Fucked Me - Tab.mp4 (116.42 MB)... +Scanning directory: /videos/taboofantasy/tabatha.jordan +Processing: Compressed_A Taboo Fantasy_TABATHA-JORDANS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_TABATHA-JORDANS-FAMILY-ALBUM.mp4 (1591.91 MB)... +Scanning directory: /videos/taboofantasy/aries.ackerman +Processing: A Taboo Fantasy_AIRES-ACKERMAN-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_AIRES-ACKERMAN-FAMILY-ALBUM.mp4 (1406.41 MB)... +Scanning directory: /videos/taboofantasy/lily.tf +Processing: Compressed_A Taboo Fantasy_Hooker-In-The-House.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Hooker-In-The-House.mp4 (487.67 MB)... +Processing: SEX-ED HOMEWORK-(Lilly Ligotage)-{Taboo Fantasy}-[69, Blond Hair, Blowjob, Daughter, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, Schoolgirl Outfit, Virgin, creampie].mp4 (Mode: scene) +Downloading SEX-ED HOMEWORK-(Lilly Ligotage)-{Taboo Fantasy}-[69, Blond Hair, Blowjob, Daughter, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, Schoolgirl Outfit, Virgin, creampie].mp4 (694.39 MB)... +Processing: A Taboo Fantasy_Starved-For-Attention.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Starved-For-Attention.mp4 (478.42 MB)... +Processing: A Taboo Fantasy_Fuck-For-An-iPhone.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Fuck-For-An-iPhone.mp4 (300.04 MB)... +Scanning directory: /videos/taboofantasy/lucy.dunne +Processing: Lucy's Family Album.mp4 (Mode: scene) +Downloading Lucy's Family Album.mp4 (1159.64 MB)... +Processing: A Taboo Fantasy_Brotherly-Blowjob.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Brotherly-Blowjob.mp4 (302.00 MB)... +Processing: A Taboo Fantasy_Baby-Sister-Made-Me-Cum-3-Times.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Baby-Sister-Made-Me-Cum-3-Times.mp4 (398.88 MB)... +Processing: Compressed_A Taboo Fantasy_Violated-Repeatedly.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Violated-Repeatedly.mp4 (267.03 MB)... +Processing: A Taboo Fantasy_Baby-Sister-With-Benefits.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Baby-Sister-With-Benefits.mp4 (343.45 MB)... +Scanning directory: /videos/taboofantasy/vanessa.siera +Processing: THE VANESSA SIERRA FAMILY ALBUM-(Vanessa Siera)-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Compilation, Family Roleplay, Hairless Pussy, Hardcore, Natural Tits, Pussy Licking, Sister, Small Tits, Tall Woman, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading THE VANESSA SIERRA FAMILY ALBUM-(Vanessa Siera)-{Taboo Fantasy}-[Blowjob, Brother, Brown Hair, Compilation, Family Roleplay, Hairless Pussy, Hardcore, Natural Tits, Pussy Licking, Sister, Small Tits, Tall Woman, Teen Girl (18–22)].mp4 (1268.55 MB)... +Scanning directory: /videos/taboofantasy/megan.coxx +Processing: A Taboo Fantasy_THE-MEGAN-COXX-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_THE-MEGAN-COXX-FAMILY-ALBUM.mp4 (1261.90 MB)... +Scanning directory: /videos/taboofantasy/bridgette.lee +Processing: BEDTIME BLOWJOB GOODNIGHT FUCK-(Bridgett Lee)-{Taboo Fantasy}-[Big Ass, Brown Hair, Family Roleplay, Hairless Pussy, Incest, MILF (30+), Mother, Older Woman - Younger Man, Son, creampie].mp4 (Mode: scene) +Downloading BEDTIME BLOWJOB GOODNIGHT FUCK-(Bridgett Lee)-{Taboo Fantasy}-[Big Ass, Brown Hair, Family Roleplay, Hairless Pussy, Incest, MILF (30+), Mother, Older Woman - Younger Man, Son, creampie].mp4 (392.28 MB)... +Processing: THE ARRANGEMENT-(Bridgett Lee)-{Taboo Fantasy}-[69, Big Tits, Cougar, Doggy Style, Facesitting on Him, Family Roleplay, Hairless Pussy, MILF (30+), Mother, Older Woman - Younger Man, Pussy Licking, Son, cum on tits].mp4 (Mode: scene) +Downloading THE ARRANGEMENT-(Bridgett Lee)-{Taboo Fantasy}-[69, Big Tits, Cougar, Doggy Style, Facesitting on Him, Family Roleplay, Hairless Pussy, MILF (30+), Mother, Older Woman - Younger Man, Pussy Licking, Son, cum on tits].mp4 (360.28 MB)... +Processing: A Taboo Fantasy_I-Cheated-On-My-GirlfriendWith-My-Mom.mp4 (Mode: scene) +Downloading A Taboo Fantasy_I-Cheated-On-My-GirlfriendWith-My-Mom.mp4 (357.23 MB)... +Processing: MY MOM TOOK ADVANTAGE OF ME!!!-(Bridgett Lee)-{Taboo Fantasy}-[69, Big Tits, Blowjob, Facesitting on Him, Family Roleplay, Femdom, Hairless Pussy, Humiliation, Mother, Older Woman - Younger Man, Pussy Licking, Rape Roleplay, Restraints, Son, creampie].mp4 (Mode: scene) +Downloading MY MOM TOOK ADVANTAGE OF ME!!!-(Bridgett Lee)-{Taboo Fantasy}-[69, Big Tits, Blowjob, Facesitting on Him, Family Roleplay, Femdom, Hairless Pussy, Humiliation, Mother, Older Woman - Younger Man, Pussy Licking, Rape Roleplay, Restraints, Son, creampie].mp4 (329.92 MB)... +Scanning directory: /videos/taboofantasy/audrey.lavey +Processing: A Taboo Fantasy_AUDREY-LAVEYS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_AUDREY-LAVEYS-FAMILY-ALBUM.mp4 (1560.90 MB)... +Scanning directory: /videos/taboofantasy/cali.tf +Processing: CALI'S FAMILY ALBUM-(Cali Johnson)-{Taboo Fantasy}-[Big Tits, Blowjob, Brown Hair, Compilation, Daughter, Deepthroat, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading CALI'S FAMILY ALBUM-(Cali Johnson)-{Taboo Fantasy}-[Big Tits, Blowjob, Brown Hair, Compilation, Daughter, Deepthroat, Family Roleplay, Father, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Teen Girl (18–22)].mp4 (1834.06 MB)... +Scanning directory: /videos/taboofantasy/kylie.kalvetti +Processing: FULL MOON FEVER 2-(Kylie Kalvetti)-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Brown Hair, Facial, Family Roleplay, Hairless Pussy, Masturbation, Natural Tits, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading FULL MOON FEVER 2-(Kylie Kalvetti)-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Brown Hair, Facial, Family Roleplay, Hairless Pussy, Masturbation, Natural Tits, Pussy Licking, Sister, Teen Girl (18–22)].mp4 (367.06 MB)... +Processing: HOT FOR BABY SISTER-(Kylie Kalvetti)-{Taboo Fantasy}-[Big Tits, Blackmail, Blowjob, Brother, Brown Hair, Cum in Mouth, Facial, Family Roleplay, Hairless Pussy, Natural Tits, Outie Pussy, Pussy Licking, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading HOT FOR BABY SISTER-(Kylie Kalvetti)-{Taboo Fantasy}-[Big Tits, Blackmail, Blowjob, Brother, Brown Hair, Cum in Mouth, Facial, Family Roleplay, Hairless Pussy, Natural Tits, Outie Pussy, Pussy Licking, Teen Girl (18–22)].mp4 (404.05 MB)... +Processing: I SPIED ON MY BABY SISTER-(Kylie Kalvetti)-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Brown Hair, Cum on Back, Family Roleplay, Hairless Pussy, Natural Tits, Pussy Licking, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading I SPIED ON MY BABY SISTER-(Kylie Kalvetti)-{Taboo Fantasy}-[Big Tits, Blowjob, Brother, Brown Hair, Cum on Back, Family Roleplay, Hairless Pussy, Natural Tits, Pussy Licking, Teen Girl (18–22)].mp4 (273.43 MB)... +Processing: A Taboo Fantasy - My Little Sister is Hot.mp4 (Mode: scene) +Downloading A Taboo Fantasy - My Little Sister is Hot.mp4 (182.78 MB)... +Scanning directory: /videos/taboofantasy/rebecca.mae +Processing: Rebecca's Family Album Vol 2.mp4 (Mode: scene) +Downloading Rebecca's Family Album Vol 2.mp4 (1334.52 MB)... +Processing: Rebecca's Family Album Vol. 1.mp4 (Mode: scene) +Downloading Rebecca's Family Album Vol. 1.mp4 (1614.16 MB)... +Scanning directory: /videos/taboofantasy/charlee.tf +Processing: A Taboo Fantasy_CHARLEES-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_CHARLEES-FAMILY-ALBUM.mp4 (961.25 MB)... +Processing: Charlee's Family Album.mp4 (Mode: scene) +Downloading Charlee's Family Album.mp4 (1724.65 MB)... +Processing: A Taboo Fantasy_SUCK-FOR-AN-IPHONE.mp4 (Mode: scene) +Downloading A Taboo Fantasy_SUCK-FOR-AN-IPHONE.mp4 (260.34 MB)... +Processing: FORCE FUCKED BY SISTER!!-(Charlee)-{Taboo Fantasy}-[Big Areolas, Blond Hair, Blowjob, Bondage, Brother, Dark Areolas, Family Roleplay, Hairless Pussy, Handjob, Natural Tits, Pigtails, Restraints, Trimmed Pussy].mp4 (Mode: scene) +Downloading FORCE FUCKED BY SISTER!!-(Charlee)-{Taboo Fantasy}-[Big Areolas, Blond Hair, Blowjob, Bondage, Brother, Dark Areolas, Family Roleplay, Hairless Pussy, Handjob, Natural Tits, Pigtails, Restraints, Trimmed Pussy].mp4 (157.54 MB)... +Processing: 3 MILKINGS FROM MY SISTER!!-(Charlee)-{Taboo Fantasy}-[69, Blond Hair, Blowjob, Bondage, Brother, Cum on Hands, Double Handed, Family Roleplay, Handjob, Mouth Creampie, Pussy Licking].mp4 (Mode: scene) +Downloading 3 MILKINGS FROM MY SISTER!!-(Charlee)-{Taboo Fantasy}-[69, Blond Hair, Blowjob, Bondage, Brother, Cum on Hands, Double Handed, Family Roleplay, Handjob, Mouth Creampie, Pussy Licking].mp4 (176.29 MB)... +Processing: FORCED TO FUCK MY SISTER!-(Charlee)-{Taboo Fantasy}-[Big Areolas, Blond Hair, Blowjob, Brother, Cum on Body, Cum on Stomach, Dark Areolas, Family Roleplay, Kissing, Massive Cumshot, Natural Tits, Pussy Licking, Trimmed Pussy].mp4 (Mode: scene) +Downloading FORCED TO FUCK MY SISTER!-(Charlee)-{Taboo Fantasy}-[Big Areolas, Blond Hair, Blowjob, Brother, Cum on Body, Cum on Stomach, Dark Areolas, Family Roleplay, Kissing, Massive Cumshot, Natural Tits, Pussy Licking, Trimmed Pussy].mp4 (356.03 MB)... +Processing: MY PROSTITUE SISTER-(Charlee)-{Taboo Fantasy}-[Big Areolas, Blackmail, Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Natural Tits, Pigtails, Pussy Licking, Sagging Tits, Sex for Money, Short Woman, Skinny, Small Tits, Trimmed Pussy].mp4 (Mode: scene) +Downloading MY PROSTITUE SISTER-(Charlee)-{Taboo Fantasy}-[Big Areolas, Blackmail, Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Natural Tits, Pigtails, Pussy Licking, Sagging Tits, Sex for Money, Short Woman, Skinny, Small Tits, Trimmed Pussy].mp4 (340.15 MB)... +Scanning directory: /videos/taboofantasy/nikki.tf +Processing: A Taboo Fantasy_Big-Daddy-Cumblasts.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Big-Daddy-Cumblasts.mp4 (286.13 MB)... +Processing: A Taboo Fantasy_Daddy-Caught-Me-Masturbating.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Daddy-Caught-Me-Masturbating.mp4 (357.08 MB)... +Processing: A Taboo Fantasy_Spank-amp-Fuck.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Spank-amp-Fuck.mp4 (400.38 MB)... +Processing: A Taboo Fantasy_My-Dad-Fucked-Me.mp4 (Mode: scene) +Downloading A Taboo Fantasy_My-Dad-Fucked-Me.mp4 (478.58 MB)... +Scanning directory: /videos/taboofantasy/jennifer.bliss +Processing: Jennifer Bliss - Like Father, Like Step Son.mp4 (Mode: scene) +Downloading Jennifer Bliss - Like Father, Like Step Son.mp4 (331.92 MB)... +Processing: Jenni Bliss in Cumming of Age-(Jennifer Bliss)-{Bare Back Studios}-[Blowjob, Cum Swallowing, Cumshot, MILF (30+), taboo].mp4 (Mode: scene) +Downloading Jenni Bliss in Cumming of Age-(Jennifer Bliss)-{Bare Back Studios}-[Blowjob, Cum Swallowing, Cumshot, MILF (30+), taboo].mp4 (611.18 MB)... +Processing: A Taboo Fantasy_Double-or-Nothing.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Double-or-Nothing.mp4 (426.86 MB)... +Processing: A Taboo Fantasy_Baby-Sister-Jenni.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Baby-Sister-Jenni.mp4 (321.58 MB)... +Processing: When My Brother Found Out.mp4 (Mode: scene) +Downloading When My Brother Found Out.mp4 (250.67 MB)... +Processing: A Taboo Fantasy_Baby- Home Alone 2 .mp4 (Mode: scene) +Downloading A Taboo Fantasy_Baby- Home Alone 2 .mp4 (261.89 MB)... +Processing: Compressed_A Taboo Fantasy_Baby-Sister-Blackmailed.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Baby-Sister-Blackmailed.mp4 (245.91 MB)... +Processing: [clips4sale.com]Jenni_Bliss_in_Irreversible_HD.mp4 (Mode: scene) +Downloading [clips4sale.com]Jenni_Bliss_in_Irreversible_HD.mp4 (578.97 MB)... +Processing: 16426_Daddy_Will_It_Hurt_HD.mp4 (Mode: scene) +Downloading 16426_Daddy_Will_It_Hurt_HD.mp4 (527.26 MB)... +Scanning directory: /videos/taboofantasy/kendra.lynn +Processing: My Asian Stepsister-(Kendra Lynn, Cindy Starfall)-{FILF}-[Lesbian].mp4 (Mode: scene) +Downloading My Asian Stepsister-(Kendra Lynn, Cindy Starfall)-{FILF}-[Lesbian].mp4 (372.78 MB)... +Processing: Kendra Lynn Denies Her Daddy To Cum #POV.mp4 (Mode: scene) +Downloading Kendra Lynn Denies Her Daddy To Cum #POV.mp4 (181.20 MB)... +Processing: A Taboo Fantasy_A-Firm-Punishment-From-Daddy.mp4 (Mode: scene) +Downloading A Taboo Fantasy_A-Firm-Punishment-From-Daddy.mp4 (285.03 MB)... +Processing: eastcoastxxx-kendra-lynn-dirty-little-office-girl-2018-04-08_qOaJ12.mp4 (Mode: scene) +Downloading eastcoastxxx-kendra-lynn-dirty-little-office-girl-2018-04-08_qOaJ12.mp4 (658.70 MB)... +Processing: LasVegasAmateurs 21 03 24 4K Kendra Lynn After Shower Eat My.mp4 (Mode: scene) +Downloading LasVegasAmateurs 21 03 24 4K Kendra Lynn After Shower Eat My.mp4 (226.38 MB)... +Processing: Full Video - Kendra Lynn - Cowgirl Masturbates And Then Gets Fuc.mp4 (Mode: scene) +Downloading Full Video - Kendra Lynn - Cowgirl Masturbates And Then Gets Fuc.mp4 (425.12 MB)... +Processing: prvs 21 05 03 kendra hannibal has its whores Watch porn vide.mp4 (Mode: scene) +Downloading prvs 21 05 03 kendra hannibal has its whores Watch porn vide.mp4 (445.53 MB)... +Processing: Compressed_A Taboo Fantasy_My-Daddy-Filled-Me-Up-With-Sperm.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_My-Daddy-Filled-Me-Up-With-Sperm.mp4 (322.84 MB)... +Processing: A Taboo Fantasy_Louis-Vuitton-Shoes.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Louis-Vuitton-Shoes.mp4 (323.77 MB)... +Processing: Compressed_A Taboo Fantasy_Guess-Who.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Guess-Who.mp4 (236.35 MB)... +Processing: Cum Of Hearts-(Kendra Lynn)-{Facials Forever}-[Blowjob, Facial, Girl Next Door, Male - POV].mp4 (Mode: scene) +Downloading Cum Of Hearts-(Kendra Lynn)-{Facials Forever}-[Blowjob, Facial, Girl Next Door, Male - POV].mp4 (471.11 MB)... +Processing: Amy Quinn and Kendra Lynn - lesbian - amateur - blonde - red.mp4 (Mode: scene) +Downloading Amy Quinn and Kendra Lynn - lesbian - amateur - blonde - red.mp4 (339.35 MB)... +Processing: Kendra Gets More Than Just A Taste.mp4 (Mode: scene) +Downloading Kendra Gets More Than Just A Taste.mp4 (450.01 MB)... +Processing: LasVegasAmateurs 21 07 04 Kendra Lynn Step Daddy Gerald Walk.mp4 (Mode: scene) +Downloading LasVegasAmateurs 21 07 04 Kendra Lynn Step Daddy Gerald Walk.mp4 (269.01 MB)... +Processing: Kendra Lynn - #hairy.mp4 (Mode: scene) +Downloading Kendra Lynn - #hairy.mp4 (332.60 MB)... +Processing: Kendra Lynn- Taboo Family Affairs 7.mp4 (Mode: scene) +Downloading Kendra Lynn- Taboo Family Affairs 7.mp4 (212.10 MB)... +Scanning directory: /videos/taboofantasy/tiffany.kohl +Processing: HL Tiffany kohl 03 - Orgasm, Hypnotized, Hypnosis, Hyp.mp4 (Mode: scene) +Downloading HL Tiffany kohl 03 - Orgasm, Hypnotized, Hypnosis, Hyp.mp4 (60.03 MB)... +Processing: HL Tiffany kohl 07 - Hypnotized, Hypno, Slave, Hypnolu.mp4 (Mode: scene) +Downloading HL Tiffany kohl 07 - Hypnotized, Hypno, Slave, Hypnolu.mp4 (61.49 MB)... +Processing: 56a89d81bc755xtc-Courtney Loxx and Tiffany kohl.mp4 (Mode: scene) +Downloading 56a89d81bc755xtc-Courtney Loxx and Tiffany kohl.mp4 (341.21 MB)... +Processing: In Daddys Room pv - XVIDEOS.COM.mp4 (Mode: scene) +Downloading In Daddys Room pv - XVIDEOS.COM.mp4 (215.47 MB)... +Processing: 383 - Tiffany Kohl.mp4 (Mode: scene) +Downloading 383 - Tiffany Kohl.mp4 (292.38 MB)... +Processing: TIFFANY'S FAMILY ALBUM-(Tiffany Kohl)-{Taboo Fantasy}-[Big Tits, Compilation, Cum in Mouth, Daughter, Facesitting, Family Roleplay, Father, Femdom, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pigtails, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading TIFFANY'S FAMILY ALBUM-(Tiffany Kohl)-{Taboo Fantasy}-[Big Tits, Compilation, Cum in Mouth, Daughter, Facesitting, Family Roleplay, Father, Femdom, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pigtails, Teen Girl (18–22)].mp4 (1857.17 MB)... +Processing: HL Tiffany kohl 04 - Orgasm, Hypnotized, Hypnosis, Hyp.mp4 (Mode: scene) +Downloading HL Tiffany kohl 04 - Orgasm, Hypnotized, Hypnosis, Hyp.mp4 (95.01 MB)... +Processing: Teen Pies - Tiffany Kohl.mp4 (Mode: scene) +Downloading Teen Pies - Tiffany Kohl.mp4 (427.24 MB)... +Scanning directory: /videos/taboofantasy/amy.quinn +Processing: Amy Quinn - Family Album.mp4 (Mode: scene) +Downloading Amy Quinn - Family Album.mp4 (1552.35 MB)... +Scanning directory: /videos/taboofantasy/gemma.nicole +Processing: A Taboo Fantasy_Baby-Sister-Gemma.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Baby-Sister-Gemma.mp4 (357.19 MB)... +Processing: Gemma Nicole - I Fucked My Hung Step Brother.mp4 (Mode: scene) +Downloading Gemma Nicole - I Fucked My Hung Step Brother.mp4 (222.45 MB)... +Processing: MY SISTER'S A HOTTIE!!-(Gemma Nicole)-{Taboo Fantasy}-[Big Dick, Big Tits, Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Natural Tits, Teen Girl (18–22), creampie].mp4 (Mode: scene) +Downloading MY SISTER'S A HOTTIE!!-(Gemma Nicole)-{Taboo Fantasy}-[Big Dick, Big Tits, Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Natural Tits, Teen Girl (18–22), creampie].mp4 (422.57 MB)... +Processing: Gemma Nicole- Taboo Family Affairs 7.mp4 (Mode: scene) +Downloading Gemma Nicole- Taboo Family Affairs 7.mp4 (103.74 MB)... +Processing: A Taboo Fantasy_Hot-Sister-Syndrome.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Hot-Sister-Syndrome.mp4 (446.84 MB)... +Processing: A Taboo Fantasy_Arm-Wrestling-Challenge.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Arm-Wrestling-Challenge.mp4 (339.28 MB)... +Scanning directory: /videos/taboofantasy/stacie.starr +Processing: Compressed_A Taboo Fantasy_STACIE-STARR-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_STACIE-STARR-FAMILY-ALBUM.mp4 (1647.52 MB)... +Scanning directory: /videos/taboofantasy/laela.pryce +Processing: A Taboo Fantasy_Refer-Madness.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Refer-Madness.mp4 (381.82 MB)... +Processing: A Taboo Fantasy_The-Family-Way.mp4 (Mode: scene) +Downloading A Taboo Fantasy_The-Family-Way.mp4 (277.60 MB)... +Processing: A Taboo Fantasy_Massage-Parlor-Surprise.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Massage-Parlor-Surprise.mp4 (399.65 MB)... +Scanning directory: /videos/taboofantasy/keiyra.lina +Processing: I FUCKED MY NIECE-(Keiyra Lina)-{Taboo Fantasy}-[Big Tits, Blowjob, Cumshot, Family Roleplay, Hairless Pussy, Hardcore, Implied Creampie, Missing Date, Natural Tits, Older Man - Younger Woman, Teen Girl (18–22), Uncle, creampie].mp4 (Mode: scene) +Downloading I FUCKED MY NIECE-(Keiyra Lina)-{Taboo Fantasy}-[Big Tits, Blowjob, Cumshot, Family Roleplay, Hairless Pussy, Hardcore, Implied Creampie, Missing Date, Natural Tits, Older Man - Younger Woman, Teen Girl (18–22), Uncle, creampie].mp4 (275.25 MB)... +Processing: NUDE SUNBATHER-(Keiyra Lina)-{Taboo Fantasy}-[Big Areolas, Big Tits, Blowjob, Cum Swallowing, Cum in Mouth, Family Roleplay, Hairless Pussy, Handjob, Mouth Creampie, Natural Tits, Older Man - Younger Woman, Uncle, Veiny Tits].mp4 (Mode: scene) +Downloading NUDE SUNBATHER-(Keiyra Lina)-{Taboo Fantasy}-[Big Areolas, Big Tits, Blowjob, Cum Swallowing, Cum in Mouth, Family Roleplay, Hairless Pussy, Handjob, Mouth Creampie, Natural Tits, Older Man - Younger Woman, Uncle, Veiny Tits].mp4 (223.67 MB)... +Processing: MY UNCLE USED ME AS A CUM DUMPSTER!-(Keiyra Lina)-{Taboo Fantasy}-[Big Areolas, Big Tits, Blond Hair, Blowjob, Family Roleplay, Hairless Pussy, Massive Cumshot, Natural Tits, cum on tits].mp4 (Mode: scene) +Downloading MY UNCLE USED ME AS A CUM DUMPSTER!-(Keiyra Lina)-{Taboo Fantasy}-[Big Areolas, Big Tits, Blond Hair, Blowjob, Family Roleplay, Hairless Pussy, Massive Cumshot, Natural Tits, cum on tits].mp4 (287.72 MB)... +Processing: MY NIECE HAS BIG TITS!!!-(Keiyra Lina)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading MY NIECE HAS BIG TITS!!!-(Keiyra Lina)-{Taboo Fantasy}.mp4 (228.56 MB)... +Scanning directory: /videos/taboofantasy/kahli.sweeney +Processing: A Taboo Fantasy_KAHLI-SWEENEY-FAMILY-ALBUM-V2.mp4 (Mode: scene) +Downloading A Taboo Fantasy_KAHLI-SWEENEY-FAMILY-ALBUM-V2.mp4 (1847.52 MB)... +Processing: Compressed_A Taboo Fantasy_HOME-ALONE-6.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_HOME-ALONE-6.mp4 (364.17 MB)... +Processing: JASON'S ALLOWANCE-(Kahli Sweeney)-{Taboo Fantasy}-[69, Blowjob, Brown Hair, Cum in Mouth, Facesitting on Him, Family Roleplay, Hairless Labia, Hairless Pussy, Hardcore, Natural Tits, Sex for Money, Short Woman, Small Tits, Trimmed Pussy].mp4 (Mode: scene) +Downloading JASON'S ALLOWANCE-(Kahli Sweeney)-{Taboo Fantasy}-[69, Blowjob, Brown Hair, Cum in Mouth, Facesitting on Him, Family Roleplay, Hairless Labia, Hairless Pussy, Hardcore, Natural Tits, Sex for Money, Short Woman, Small Tits, Trimmed Pussy].mp4 (432.47 MB)... +Processing: HOT FOR SISTER SYNDROME-(Kahli Sweeney)-{Taboo Fantasy}-[69, Blowjob, Brother, Brown Hair, Condom, Cum in Mouth, Family Roleplay, Hairless Pussy, Hardcore, Massive Cumshot, Mouth Creampie, Natural Tits, Pussy Licking, Small Tits].mp4 (Mode: scene) +Downloading HOT FOR SISTER SYNDROME-(Kahli Sweeney)-{Taboo Fantasy}-[69, Blowjob, Brother, Brown Hair, Condom, Cum in Mouth, Family Roleplay, Hairless Pussy, Hardcore, Massive Cumshot, Mouth Creampie, Natural Tits, Pussy Licking, Small Tits].mp4 (410.24 MB)... +Scanning directory: /videos/taboofantasy/stevie.tf +Processing: A Taboo Fantasy_The-Water-Conservation-Theory.mp4 (Mode: scene) +Downloading A Taboo Fantasy_The-Water-Conservation-Theory.mp4 (307.41 MB)... +Processing: A Taboo Fantasy_Female-Viagra-Overdose.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Female-Viagra-Overdose.mp4 (368.89 MB)... +Scanning directory: /videos/taboofantasy/cosima.dunkin +Processing: A Taboo Fantasy_Sisterly-Help.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Sisterly-Help.mp4 (356.12 MB)... +Processing: A Taboo Fantasy_SISTER-WITH-BENEFITS.mp4 (Mode: scene) +Downloading A Taboo Fantasy_SISTER-WITH-BENEFITS.mp4 (380.29 MB)... +Processing: FAMILY THERAPY-(Keira Nicole, Ciara Blue)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Incest, Pussy Licking, Sister, Therapist, creampie].mp4 (Mode: scene) +Downloading FAMILY THERAPY-(Keira Nicole, Ciara Blue)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Incest, Pussy Licking, Sister, Therapist, creampie].mp4 (305.38 MB)... +Processing: I FUCKED MY BROTHER!!!-(Keira Nicole)-{Taboo Fantasy}-[Blond Hair, Cuckolding, Cum on Body, Facial, Family Roleplay, Hairless Pussy, Incest, Natural Tits, Sister].mp4 (Mode: scene) +Downloading I FUCKED MY BROTHER!!!-(Keira Nicole)-{Taboo Fantasy}-[Blond Hair, Cuckolding, Cum on Body, Facial, Family Roleplay, Hairless Pussy, Incest, Natural Tits, Sister].mp4 (372.53 MB)... +Scanning directory: /videos/taboofantasy/danica.dillon +Processing: DIRTY LAUNDRY-(Danica Dillon)-{Taboo Fantasy}-[69, Black Hair, Blackmail, Brother, Facesitting on Him, Fake Tits, Family Roleplay, Hairless Labia, Pussy Licking, Sexual Favor, Sister, Trimmed Pussy].mp4 (Mode: scene) +Downloading DIRTY LAUNDRY-(Danica Dillon)-{Taboo Fantasy}-[69, Black Hair, Blackmail, Brother, Facesitting on Him, Fake Tits, Family Roleplay, Hairless Labia, Pussy Licking, Sexual Favor, Sister, Trimmed Pussy].mp4 (390.98 MB)... +Processing: LITTLE SISTER DANICA.mp4 (Mode: scene) +Downloading LITTLE SISTER DANICA.mp4 (320.76 MB)... +Processing: FUCK BUDDIES-(Danica Dillon)-{Taboo Fantasy}-[Black Hair, Blowjob, Cum on Back, Daughter, Fake Tits, Family Roleplay, Father, Hairless Pussy, Older Man - Younger Woman, Pussy Licking, Trimmed Pussy].mp4 (Mode: scene) +Downloading FUCK BUDDIES-(Danica Dillon)-{Taboo Fantasy}-[Black Hair, Blowjob, Cum on Back, Daughter, Fake Tits, Family Roleplay, Father, Hairless Pussy, Older Man - Younger Woman, Pussy Licking, Trimmed Pussy].mp4 (279.35 MB)... +Processing: Compressed_A Taboo Fantasy_Our-Little-Secret.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Our-Little-Secret.mp4 (277.00 MB)... +Processing: Compressed_A Taboo Fantasy_Daddys-Girl.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Daddys-Girl.mp4 (332.89 MB)... +Processing: HELP WANTED-(Danica Dillon)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading HELP WANTED-(Danica Dillon)-{Taboo Fantasy}.mp4 (342.42 MB)... +Processing: DANICA'S DRUNKK!!-(Danica Dillon)-{Taboo Fantasy}-[Brown Hair, Daughter, Family Roleplay, Father, Hairless Labia, Intoxication, Natural Tits, Spanking, Trimmed Pussy].mp4 (Mode: scene) +Downloading DANICA'S DRUNKK!!-(Danica Dillon)-{Taboo Fantasy}-[Brown Hair, Daughter, Family Roleplay, Father, Hairless Labia, Intoxication, Natural Tits, Spanking, Trimmed Pussy].mp4 (125.42 MB)... +Processing: A Taboo Fantasy_I-Fucked-My-Sister.mp4 (Mode: scene) +Downloading A Taboo Fantasy_I-Fucked-My-Sister.mp4 (276.30 MB)... +Processing: A Taboo Fantasy_My-Sister-Took-Advantage-of-Me.mp4 (Mode: scene) +Downloading A Taboo Fantasy_My-Sister-Took-Advantage-of-Me.mp4 (409.29 MB)... +Scanning directory: /videos/taboofantasy/mandy.tf +Processing: A Taboo Fantasy_Its-A-Bet.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Its-A-Bet.mp4 (240.27 MB)... +Processing: A Taboo Fantasy_Rub-N-Tug-Sister.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Rub-N-Tug-Sister.mp4 (227.89 MB)... +Processing: A Taboo Fantasy_Nude-Model.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Nude-Model.mp4 (219.86 MB)... +Scanning directory: /videos/taboofantasy/riley.jean +Processing: The.Riley.Jean.Family.Album.mp4 (Mode: scene) +Downloading The.Riley.Jean.Family.Album.mp4 (2103.33 MB)... +Scanning directory: /videos/taboofantasy/vyxen.steel +Processing: Vyxen Steele - The Tourist - #bigtits.mp4 (Mode: scene) +Downloading Vyxen Steele - The Tourist - #bigtits.mp4 (596.74 MB)... +Processing: I HYPNOTIZED MY SISTER-(Vyxen Steel)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Facial, Family Roleplay, Hairless Pussy, Mind Control, Natural Tits, Tattoos].mp4 (Mode: scene) +Downloading I HYPNOTIZED MY SISTER-(Vyxen Steel)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Facial, Family Roleplay, Hairless Pussy, Mind Control, Natural Tits, Tattoos].mp4 (144.24 MB)... +Processing: NAKED YOGA-(Vyxen Steel)-{Taboo Fantasy}-[Handjob, Missionary, Step Brother, Step Siblings, Step Sister, cowgirl, taboo].mp4 (Mode: scene) +Downloading NAKED YOGA-(Vyxen Steel)-{Taboo Fantasy}-[Handjob, Missionary, Step Brother, Step Siblings, Step Sister, cowgirl, taboo].mp4 (292.52 MB)... +Processing: Potting Machines # 02-(Vyxen Steel, Roxy Lane)-{Quebec Productions}-[Lesbian].mp4 (Mode: scene) +Downloading Potting Machines # 02-(Vyxen Steel, Roxy Lane)-{Quebec Productions}-[Lesbian].mp4 (314.90 MB)... +Processing: Luxury Bitch-(Vyxen Steel)-{Pegas Productions}.mp4 (Mode: scene) +Downloading Luxury Bitch-(Vyxen Steel)-{Pegas Productions}.mp4 (564.05 MB)... +Processing: A Taboo Fantasy_Cum-On-My-Face.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Cum-On-My-Face.mp4 (256.50 MB)... +Processing: TabooFantasy - Vyxen Steel - KNOCK ME UP BRO.mp4 (Mode: scene) +Downloading TabooFantasy - Vyxen Steel - KNOCK ME UP BRO.mp4 (334.97 MB)... +Processing: RARBG - QuebecProductions.16.03.18.Vyxen.Steel.FRENCH.XXX.1080p.MP4-KTR.mp4 (Mode: scene) +Downloading RARBG - QuebecProductions.16.03.18.Vyxen.Steel.FRENCH.XXX.1080p.MP4-KTR.mp4 (634.09 MB)... +Scanning directory: /videos/taboofantasy/sutherland.tf +Processing: A Taboo Fantasy_Triplets-Taboo-Game-Night.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Triplets-Taboo-Game-Night.mp4 (502.29 MB)... +Processing: A Taboo Fantasy_American-Idol-Finale.mp4 (Mode: scene) +Downloading A Taboo Fantasy_American-Idol-Finale.mp4 (415.76 MB)... +Processing: A Taboo Fantasy_My-Sisters-Stole-My-Seed.mp4 (Mode: scene) +Downloading A Taboo Fantasy_My-Sisters-Stole-My-Seed.mp4 (323.24 MB)... +Processing: A Taboo Fantasy_CollegeTuition.mp4 (Mode: scene) +Downloading A Taboo Fantasy_CollegeTuition.mp4 (324.91 MB)... +Processing: A Taboo Fantasy_My-Sisters-Fucked-Me.mp4 (Mode: scene) +Downloading A Taboo Fantasy_My-Sisters-Fucked-Me.mp4 (417.12 MB)... +Processing: A Taboo Fantasy_Our-Brother-Is-A-Pervert.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Our-Brother-Is-A-Pervert.mp4 (166.27 MB)... +Scanning directory: /videos/taboofantasy/catherine.tf +Processing: THE BIG PAYBACK-(Julia Styles)-{Taboo Fantasy}-[Blackmail, Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Incest, Natural Tits, Pussy Fingering, Pussy Licking, Sister, Small Tits, Surprise Creampie, Teen Girl (18–22), creampie].mp4 (Mode: scene) +Downloading THE BIG PAYBACK-(Julia Styles)-{Taboo Fantasy}-[Blackmail, Blond Hair, Blowjob, Brother, Family Roleplay, Hairless Pussy, Incest, Natural Tits, Pussy Fingering, Pussy Licking, Sister, Small Tits, Surprise Creampie, Teen Girl (18–22), creampie].mp4 (251.17 MB)... +Processing: WE CAN'T HELP IT!!-(Julia Styles)-{Taboo Fantasy}-[69, Blond Hair, Blowjob, Brother, Cumshot, Family Roleplay, Hairless Pussy, Incest, Natural Tits, Pussy Fingering, Sister].mp4 (Mode: scene) +Downloading WE CAN'T HELP IT!!-(Julia Styles)-{Taboo Fantasy}-[69, Blond Hair, Blowjob, Brother, Cumshot, Family Roleplay, Hairless Pussy, Incest, Natural Tits, Pussy Fingering, Sister].mp4 (52.72 MB)... +Processing: CATHERINE'S FAMILY ALBUM!!-(Julia Styles)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Compilation, Cumshot, Family Roleplay, Hairless Pussy, Masturbation, Sister, Small Tits, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading CATHERINE'S FAMILY ALBUM!!-(Julia Styles)-{Taboo Fantasy}-[Blond Hair, Blowjob, Brother, Compilation, Cumshot, Family Roleplay, Hairless Pussy, Masturbation, Sister, Small Tits, Teen Girl (18–22)].mp4 (1351.43 MB)... +Processing: A Taboo Fantasy_Spying on Sister.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Spying on Sister.mp4 (305.60 MB)... +Scanning directory: /videos/taboofantasy/amanda.bryant +Processing: Victoria Banxxx , Amanda Bryant - Impregnating Your Sister &.mp4 (Mode: scene) +Downloading Victoria Banxxx , Amanda Bryant - Impregnating Your Sister &.mp4 (101.39 MB)... +Processing: Daughter's Nocturnal Desires-(Amanda Bryant, Bridgett Lee)-{Taboo Fantasy}-[Blond Hair, Blowjob, Family Roleplay, Father, Hairy Pussy, Incest, Natural Tits, Older Man - Younger Woman, Sleeping, Small Tits, Threesome, Threesome (BGG)].mp4 (Mode: scene) +Downloading Daughter's Nocturnal Desires-(Amanda Bryant, Bridgett Lee)-{Taboo Fantasy}-[Blond Hair, Blowjob, Family Roleplay, Father, Hairy Pussy, Incest, Natural Tits, Older Man - Younger Woman, Sleeping, Small Tits, Threesome, Threesome (BGG)].mp4 (209.99 MB)... +Processing: Omg She just Blew Uncle Jack, Free Taboo Facial HD Porn a6 x.mp4 (Mode: scene) +Downloading Omg She just Blew Uncle Jack, Free Taboo Facial HD Porn a6 x.mp4 (39.69 MB)... +Processing: Amanda Bryant - Taboo Fuckfest.mp4 (Mode: scene) +Downloading Amanda Bryant - Taboo Fuckfest.mp4 (89.46 MB)... +Processing: Amanda Bryant - pregnant pussy solo.mp4 (Mode: scene) +Downloading Amanda Bryant - pregnant pussy solo.mp4 (109.52 MB)... +Processing: Drop Dead Gorgeous Amanda Bryant Gets Some Man Meat-{Schoolgirl Internal}-[Big Tits, Blond Hair, Blowjob, College, Creampie Surprise, Doggy Style, HD Available, Handjob, Hardcore, Reverse Cowgirl, Spooning, Twosome, cowgirl].mp4 (Mode: scene) +Downloading Drop Dead Gorgeous Amanda Bryant Gets Some Man Meat-{Schoolgirl Internal}-[Big Tits, Blond Hair, Blowjob, College, Creampie Surprise, Doggy Style, HD Available, Handjob, Hardcore, Reverse Cowgirl, Spooning, Twosome, cowgirl].mp4 (651.60 MB)... +Processing: A Taboo Fantasy_My-Sister-Jerked-Me-Off.mp4 (Mode: scene) +Downloading A Taboo Fantasy_My-Sister-Jerked-Me-Off.mp4 (532.31 MB)... +Processing: A Taboo Fantasy_WAIT-TILL-YOUR-FATHER-GETS-HOME.mp4 (Mode: scene) +Downloading A Taboo Fantasy_WAIT-TILL-YOUR-FATHER-GETS-HOME.mp4 (305.62 MB)... +Processing: A Taboo Fantasy_Family-Fun-Night.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Family-Fun-Night.mp4 (356.15 MB)... +Scanning directory: /videos/taboofantasy/dakota.raven +Processing: Dakota Raven's Family Album.mp4 (Mode: scene) +Downloading Dakota Raven's Family Album.mp4 (1387.02 MB)... +Scanning directory: /videos/taboofantasy/abby.paradise +Processing: AmeliaDire_AbbyMarie_Kingsley (DSC5-5) Girl_Girl_Girl Threesome Oral Strapon Toys_Azure Sky Films_1080p.mp4 (Mode: scene) +Downloading AmeliaDire_AbbyMarie_Kingsley (DSC5-5) Girl_Girl_Girl Threesome Oral Strapon Toys_Azure Sky Films_1080p.mp4 (301.67 MB)... +Processing: ABBYS FAMILY ALBUM.mp4 (Mode: scene) +Downloading ABBYS FAMILY ALBUM.mp4 (380.52 MB)... +Processing: WOBB Beauties 2 feat. Abby Paradise, Parker Page #teens #anal #lesbian #bigtits.mp4 (Mode: scene) +Downloading WOBB Beauties 2 feat. Abby Paradise, Parker Page #teens #anal #lesbian #bigtits.mp4 (1391.04 MB)... +Processing: [BangBros18] 2014-05-27 - Abby Paradise - Amateur Redhead Anal Banged [1280x720].mp4 (Mode: scene) +Downloading [BangBros18] 2014-05-27 - Abby Paradise - Amateur Redhead Anal Banged [1280x720].mp4 (504.99 MB)... +Processing: A Taboo Fantasy_Sibling-Sex-Therapy.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Sibling-Sex-Therapy.mp4 (427.50 MB)... +Processing: desperateamateurs.21.08.29.abby.mp4 (Mode: scene) +Downloading desperateamateurs.21.08.29.abby.mp4 (1060.97 MB)... +Processing: ABBY PARADISE.mp4 (Mode: scene) +Downloading ABBY PARADISE.mp4 (637.57 MB)... +Processing: A Taboo Fantasy_Brother-Sister-Game-Night.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Brother-Sister-Game-Night.mp4 (377.27 MB)... +Processing: Beautiful Paradise - S9-E28-(Abby Paradise)-{Girls Only Porn}-[Hairless Pussy, Long Hair, Masturbation, Panties, Puffy Nipples, Red Hair, Solo Female].mp4 (Mode: scene) +Downloading Beautiful Paradise - S9-E28-(Abby Paradise)-{Girls Only Porn}-[Hairless Pussy, Long Hair, Masturbation, Panties, Puffy Nipples, Red Hair, Solo Female].mp4 (52.28 MB)... +Processing: Amelia_Abby_Kingsley (DSC5-6) BDSM Bondage Threesome Blowjobs Girl_Girl Oral Doggystyle Toys_Azure Sky Films_1080p.mp4 (Mode: scene) +Downloading Amelia_Abby_Kingsley (DSC5-6) BDSM Bondage Threesome Blowjobs Girl_Girl Oral Doggystyle Toys_Azure Sky Films_1080p.mp4 (255.87 MB)... +Processing: Pov Pleasure-(Abby Paradise)-{Nubiles}.mp4 (Mode: scene) +Downloading Pov Pleasure-(Abby Paradise)-{Nubiles}.mp4 (135.26 MB)... +Processing: Compressed_A Taboo Fantasy_Sharing-The-Bed.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Sharing-The-Bed.mp4 (344.81 MB)... +Processing: Abby Paradise - My Step-brother Gave me a Creampie.mp4 (Mode: scene) +Downloading Abby Paradise - My Step-brother Gave me a Creampie.mp4 (295.17 MB)... +Processing: Amelia_Abby_Kingsley (DSC5-2) Golden Shower Threesome Blowjobs Cumshot_Azure Sky Films_1080p.mp4 (Mode: scene) +Downloading Amelia_Abby_Kingsley (DSC5-2) Golden Shower Threesome Blowjobs Cumshot_Azure Sky Films_1080p.mp4 (299.60 MB)... +Processing: A Taboo Fantasy_Fake-ID-Blackmail.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Fake-ID-Blackmail.mp4 (256.49 MB)... +Processing: Abby Paradise - Massage Girls.mp4 (Mode: scene) +Downloading Abby Paradise - Massage Girls.mp4 (1266.10 MB)... +Processing: Abby Marie Fucks Daddy!-(Abby Paradise)-{Exposed Whores}-[Blowjob, Cum on Pussy, Male - POV, Tall Socks].mp4 (Mode: scene) +Downloading Abby Marie Fucks Daddy!-(Abby Paradise)-{Exposed Whores}-[Blowjob, Cum on Pussy, Male - POV, Tall Socks].mp4 (76.74 MB)... +Processing: Abby Paradise vs mike.mp4 (Mode: scene) +Downloading Abby Paradise vs mike.mp4 (426.31 MB)... +Processing: AmeliaDireAbbyMarie Kingsley (DSC5-4) BDSM Threesome Blowjobs.mp4 (Mode: scene) +Downloading AmeliaDireAbbyMarie Kingsley (DSC5-4) BDSM Threesome Blowjobs.mp4 (553.92 MB)... +Processing: ExposedWhores-Abby Marie-TikTok Whore Abby Fucks Daddy - Por.mp4 (Mode: scene) +Downloading ExposedWhores-Abby Marie-TikTok Whore Abby Fucks Daddy - Por.mp4 (138.44 MB)... +Processing: Skylar Green Cast Abby Paradise Ep7-{Nubiles Casting}-[Blond Hair, Blowjob, Casting, Facial, Hairless Pussy, Hardcore, Interview, Lesbian, Long Hair, Red Hair, Short Woman, Skinny, Small Tits, Stockings, Tall Woman, Thong, Threesome (BGG)].mp4 (Mode: scene) +Downloading Skylar Green Cast Abby Paradise Ep7-{Nubiles Casting}-[Blond Hair, Blowjob, Casting, Facial, Hairless Pussy, Hardcore, Interview, Lesbian, Long Hair, Red Hair, Short Woman, Skinny, Small Tits, Stockings, Tall Woman, Thong, Threesome (BGG)].mp4 (392.62 MB)... +Scanning directory: /videos/taboofantasy/[fantasy].auntie.will.take.care.of.your.erection +Processing: [Fantasy] Auntie will take care of your erection.mp4 (Mode: scene) +Downloading [Fantasy] Auntie will take care of your erection.mp4 (280.39 MB)... +Scanning directory: /videos/taboofantasy/karley.fox +Processing: THE KARLEY FOX FAMILY ALBUM-(Karley Foxx)-{Taboo Fantasy}-[69, Blowjob, Compilation, Cum on Body, Family Roleplay, Hairy Pussy, Handjob, Natural Tits, Pussy Fingering, Pussy Licking, Schoolgirl Outfit, Tattoos, Teen Girl (18–22), Trimmed Pussy].mp4 (Mode: scene) +Downloading THE KARLEY FOX FAMILY ALBUM-(Karley Foxx)-{Taboo Fantasy}-[69, Blowjob, Compilation, Cum on Body, Family Roleplay, Hairy Pussy, Handjob, Natural Tits, Pussy Fingering, Pussy Licking, Schoolgirl Outfit, Tattoos, Teen Girl (18–22), Trimmed Pussy].mp4 (1555.15 MB)... +Scanning directory: /videos/taboofantasy/allison.tf +Processing: GROUNDED & HORNY!!!-(Allison)-{Taboo Fantasy}-[BBW, Big Ass, Condom, Cum in Mouth, Curvy, Family Roleplay, Hairless Pussy, Mouth Creampie, Older Man - Younger Woman, Step Dad, Step Daughter, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading GROUNDED & HORNY!!!-(Allison)-{Taboo Fantasy}-[BBW, Big Ass, Condom, Cum in Mouth, Curvy, Family Roleplay, Hairless Pussy, Mouth Creampie, Older Man - Younger Woman, Step Dad, Step Daughter, Teen Girl (18–22)].mp4 (293.68 MB)... +Processing: FORCED TO SLEEP WITH MY SISTER-(Allison)-{Taboo Fantasy}-[BBW, Blowjob, Brother, Condom, Cum on Body, Cum on Stomach, Curvy, Dark Areolas, Family Roleplay, Hairless Pussy, Natural Tits, Pussy Licking, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading FORCED TO SLEEP WITH MY SISTER-(Allison)-{Taboo Fantasy}-[BBW, Blowjob, Brother, Condom, Cum on Body, Cum on Stomach, Curvy, Dark Areolas, Family Roleplay, Hairless Pussy, Natural Tits, Pussy Licking, Teen Girl (18–22)].mp4 (320.53 MB)... +Processing: A Taboo Fantasy_ALLISONS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_ALLISONS-FAMILY-ALBUM.mp4 (1569.08 MB)... +Processing: Compressed_A Taboo Fantasy_THE-PUNISHMENT.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_THE-PUNISHMENT.mp4 (422.19 MB)... +Processing: Compressed_A Taboo Fantasy_SEX-ED-WITH-MY-STEP-SISTER.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_SEX-ED-WITH-MY-STEP-SISTER.mp4 (373.67 MB)... +Processing: Compressed_A Taboo Fantasy_THE-ACCIDENTAL-VIAGRA-OVERDOSE.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_THE-ACCIDENTAL-VIAGRA-OVERDOSE.mp4 (415.72 MB)... +Processing: ALLISONS FAMILY ALBUM VOLUME 1080p(1).mp4 (Mode: scene) +Downloading ALLISONS FAMILY ALBUM VOLUME 1080p(1).mp4 (1560.65 MB)... +Scanning directory: /videos/taboofantasy/tara.tf +Processing: DEFLOWERED BY DADDY!!!-(Tara)-{Taboo Fantasy}-[Condom, Cumshot, Daughter, Family Roleplay, Father, Hairless Pussy, Handjob, Handjob to Completion, Natural Tits, Nerd, Older Man - Younger Woman, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading DEFLOWERED BY DADDY!!!-(Tara)-{Taboo Fantasy}-[Condom, Cumshot, Daughter, Family Roleplay, Father, Hairless Pussy, Handjob, Handjob to Completion, Natural Tits, Nerd, Older Man - Younger Woman, Teen Girl (18–22)].mp4 (460.73 MB)... +Processing: Compressed_A Taboo Fantasy_iPhone-5.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_iPhone-5.mp4 (316.59 MB)... +Processing: DADDY'S DAUGHTER FANTASY-(Tara)-{Taboo Fantasy}-[Condom, Family Roleplay, Father, Glasses, Hairless Pussy, Handjob, Natural Tits, Nerd, Older Man - Younger Woman, cum on tits].mp4 (Mode: scene) +Downloading DADDY'S DAUGHTER FANTASY-(Tara)-{Taboo Fantasy}-[Condom, Family Roleplay, Father, Glasses, Hairless Pussy, Handjob, Natural Tits, Nerd, Older Man - Younger Woman, cum on tits].mp4 (521.86 MB)... +Scanning directory: /videos/taboofantasy/sofia.kiss +Processing: Compressed_A Taboo Fantasy_THE-SOFIA-KISS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_THE-SOFIA-KISS-FAMILY-ALBUM.mp4 (1710.25 MB)... +Scanning directory: /videos/taboofantasy/lucy.star +Processing: A Taboo Fantasy_Lucy's-Family-Album.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Lucy's-Family-Album.mp4 (408.96 MB)... +Processing: Compressed_A Taboo Fantasy_Family-Blackmail.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Family-Blackmail.mp4 (297.19 MB)... +Processing: A Taboo Fantasy_Liquid-Buddies.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Liquid-Buddies.mp4 (349.93 MB)... +Processing: Compressed_A Taboo Fantasy_Made-To-Share-A-Bed.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Made-To-Share-A-Bed.mp4 (287.80 MB)... +Scanning directory: /videos/taboofantasy/jordyn.tf +Processing: A Taboo Fantasy_JORDYNS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_JORDYNS-FAMILY-ALBUM.mp4 (1726.58 MB)... +Scanning directory: /videos/taboofantasy/mallory.tf +Processing: A Taboo Fantasy_MALLORYS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading A Taboo Fantasy_MALLORYS-FAMILY-ALBUM.mp4 (1867.30 MB)... +Scanning directory: /videos/taboofantasy/maria.tf +Processing: VIAGRA BONER-(Maria Longoria)-{Taboo Fantasy}-[Blowjob, Brown Hair, Cum in Mouth, Family Roleplay, Hairless Pussy, Mouth Creampie, Natural Tits, Small Tits, Step Dad, Step Daughter].mp4 (Mode: scene) +Downloading VIAGRA BONER-(Maria Longoria)-{Taboo Fantasy}-[Blowjob, Brown Hair, Cum in Mouth, Family Roleplay, Hairless Pussy, Mouth Creampie, Natural Tits, Small Tits, Step Dad, Step Daughter].mp4 (257.82 MB)... +Processing: WEBCAMMING WITH STEP-DADDY-(Maria Longoria)-{Taboo Fantasy}-[69, Blowjob, Brown Hair, Facesitting, Facesitting on Him, Family Roleplay, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, Small Tits, Step Dad, Step Daughter].mp4 (Mode: scene) +Downloading WEBCAMMING WITH STEP-DADDY-(Maria Longoria)-{Taboo Fantasy}-[69, Blowjob, Brown Hair, Facesitting, Facesitting on Him, Family Roleplay, Hairless Pussy, Natural Tits, Older Man - Younger Woman, Pussy Licking, Small Tits, Step Dad, Step Daughter].mp4 (330.26 MB)... +Scanning directory: /videos/taboofantasy/angelina.jolly.tf +Processing: Angelina Jolly's Family Album.mp4 (Mode: scene) +Downloading Angelina Jolly's Family Album.mp4 (1463.04 MB)... +Processing: teenager grounded mp4.mp4 (Mode: scene) +Downloading teenager grounded mp4.mp4 (430.64 MB)... +Processing: The Evil Fertility Idol Episode 2-(Angelina Jolly)-{Taboo Fantasy}.mp4 (Mode: scene) +Downloading The Evil Fertility Idol Episode 2-(Angelina Jolly)-{Taboo Fantasy}.mp4 (330.62 MB)... +Processing: angelinas curfew mp4.mp4 (Mode: scene) +Downloading angelinas curfew mp4.mp4 (329.56 MB)... +Scanning directory: /videos/taboofantasy/alexis.ortiz +Processing: A Taboo Fantasy_DAUGHTER-WITH-BENEFITS-EPISODE-2.mp4 (Mode: scene) +Downloading A Taboo Fantasy_DAUGHTER-WITH-BENEFITS-EPISODE-2.mp4 (362.51 MB)... +Processing: A Taboo Fantasy_SEDUCING-MY-DADDY.mp4 (Mode: scene) +Downloading A Taboo Fantasy_SEDUCING-MY-DADDY.mp4 (332.46 MB)... +Processing: A Taboo Fantasy_THE-EVIL-FERTILITY-IDOL.mp4 (Mode: scene) +Downloading A Taboo Fantasy_THE-EVIL-FERTILITY-IDOL.mp4 (430.88 MB)... +Scanning directory: /videos/taboofantasy/odette.delacroix +Processing: Odette Delacroix- Do My Step Bro-{Family Lust}-[Blond Hair, Blowjob, Cheerleader, Facial, From Chapter, Hairless Pussy, Masturbation, Natural Tits, Short Woman, Skinny, Small Tits, Step Brother, Step Sister, Teen Girl (18–22), Toys].mp4 (Mode: scene) +Downloading Odette Delacroix- Do My Step Bro-{Family Lust}-[Blond Hair, Blowjob, Cheerleader, Facial, From Chapter, Hairless Pussy, Masturbation, Natural Tits, Short Woman, Skinny, Small Tits, Step Brother, Step Sister, Teen Girl (18–22), Toys].mp4 (183.93 MB)... +Processing: A Taboo Fantasy_Sisterly-Favours.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Sisterly-Favours.mp4 (328.96 MB)... +Processing: A Taboo Fantasy_Home Alone.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Home Alone.mp4 (363.95 MB)... +Processing: Compressed_A Taboo Fantasy_Who-Loves-You-More.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_Who-Loves-You-More.mp4 (360.51 MB)... +Processing: FAVOURS FOR DADDY-(Odette Delacroix)-{Taboo Fantasy}-[Blond Hair, Blowjob, Cumshot, Daughter, Family Roleplay, Father, Hairless Pussy, Handjob, Older Man - Younger Woman, Short Woman, Skinny, Teen Girl (18–22)].mp4 (Mode: scene) +Downloading FAVOURS FOR DADDY-(Odette Delacroix)-{Taboo Fantasy}-[Blond Hair, Blowjob, Cumshot, Daughter, Family Roleplay, Father, Hairless Pussy, Handjob, Older Man - Younger Woman, Short Woman, Skinny, Teen Girl (18–22)].mp4 (532.14 MB)... +Processing: Odette De La Croix- Taboo Schoolgirls.mp4 (Mode: scene) +Downloading Odette De La Croix- Taboo Schoolgirls.mp4 (103.55 MB)... +Scanning directory: /videos/taboofantasy/veronica.tf +Processing: Compressed_A Taboo Fantasy_VERONICAS-FAMILY-ALBUM.mp4 (Mode: scene) +Downloading Compressed_A Taboo Fantasy_VERONICAS-FAMILY-ALBUM.mp4 (1053.74 MB)... +Scanning directory: /videos/taboofantasy/missy.tf +Processing: A Taboo Fantasy_Slut-Sister.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Slut-Sister.mp4 (320.45 MB)... +Processing: A Taboo Fantasy_Hillbilly-Humpers.mp4 (Mode: scene) +Downloading A Taboo Fantasy_Hillbilly-Humpers.mp4 (335.60 MB)... +Scanning directory: /videos/kimmy.kimm/CaughtFapping.25.03.16.Kimmy.Kimm.Caught.In.Her.Classroom.XXX.1080p.MP4-VSEX[XC] +Processing: CaughtFapping.25.03.16.Kimmy.Kimm.Caught.In.Her.Classroom.XXX.1080p.mp4 (Mode: scene) +Downloading CaughtFapping.25.03.16.Kimmy.Kimm.Caught.In.Her.Classroom.XXX.1080p.mp4 (918.23 MB)... +Scanning directory: /videos/kimmy.kimm/MyFamilyPies.25.02.28.Kimmy.Kimm.Stepbro.Your.Dick.Is.Big.Enough.XXX.1080p.HEVC.x265.PRT +Scanning directory: /videos/kimmy.kimm/PrincessCum.25.07.01.Kimmy.Kimm.July.2025.Flavor.Of.The.Month.XXX.1080p.MP4-WRB[XC] +Processing: princesscum.25.07.01.kimmy.kimm.july.2025.flavor.of.the.month.mp4 (Mode: scene) +Downloading princesscum.25.07.01.kimmy.kimm.july.2025.flavor.of.the.month.mp4 (1197.63 MB)... +Scanning directory: /videos/kimmy.kimm/PrincessCum.25.07.01.Kimmy.Kimm.July.2025.Flavor.Of.The.Month.XXX.1080p.HEVC.x265.PRT +Scanning directory: /videos/kimmy.kimm/BrattySis.25.06.27.Kimmy.Kimm.Stepsisters.Fourth.Of.July.Creampie.XXX.1080p.MP4-WRB[XC] +Processing: brattysis.25.06.27.kimmy.kimm.stepsisters.fourth.of.july.creampie.mp4 (Mode: scene) +Downloading brattysis.25.06.27.kimmy.kimm.stepsisters.fourth.of.july.creampie.mp4 (1417.62 MB)... +Scanning directory: /videos/kimmy.kimm/PureTaboo.25.05.06.Kimmy.Kimm.His.Dying.Wish.XXX.1080p.HEVC.x265.PRT +Processing: PureTaboo.25.05.06.Kimmy.Kimm.His.Dying.Wish.XXX.1080p.HEVC.x265.PRT.mp4 (Mode: scene) +Downloading PureTaboo.25.05.06.Kimmy.Kimm.His.Dying.Wish.XXX.1080p.HEVC.x265.PRT.mp4 (1113.11 MB)... +Scanning directory: /videos/kimmy.kimm/CaughtFapping.25.07.21.Kimmy.Kimm.Cheerleaders.Hot.Shower.XXX.1080p.MP4-VSEX[XC] +Processing: Cheerleader's Hot Shower-(Kimmy Kimm)-{Caught Fapping}.mp4 (Mode: scene) +Downloading Cheerleader's Hot Shower-(Kimmy Kimm)-{Caught Fapping}.mp4 (830.23 MB)... +Scanning directory: /videos/kimmy.kimm/ModernDaySins.25.04.06.Kimmy.Kimm.Sitter.Swallows.Her.Squirt.XXX.1080p.MP4-VSEX[XC] +Processing: ModernDaySins.25.04.06.Kimmy.Kimm.Sitter.Swallows.Her.Squirt.XXX.1080p.mp4 (Mode: scene) +Downloading ModernDaySins.25.04.06.Kimmy.Kimm.Sitter.Swallows.Her.Squirt.XXX.1080p.mp4 (774.64 MB)... +Scanning directory: /videos/kimmy.kimm/PureTaboo.25.08.12.Kimmy.Kimm.No.Truths.Only.Dares.XXX.1080p.HEVC.x265.PRT +Processing: No Truths, Only Dares-(Kimmy Kimm)-{Pure Taboo}.mp4 (Mode: scene) +Downloading No Truths, Only Dares-(Kimmy Kimm)-{Pure Taboo}.mp4 (1420.99 MB)... +Scanning directory: /videos/peachy.alice/LoveHerFilms.25.07.08.Peachy.Alice.Dick.Comfort.To.The.Rescue.XXX.1080p.MP4-P2P[XC] +Processing: loveherfilms.25.07.08.peachy.alice.dick.comfort.to.the.rescue.xxx.mp4 (Mode: scene) +Downloading loveherfilms.25.07.08.peachy.alice.dick.comfort.to.the.rescue.xxx.mp4 (2230.19 MB)... +Scanning directory: /videos/peachy.alice/PornWorld.24.11.08.Alice.Peachy.XXX.1080p.MP4-WRB[XC] +Processing: pornworld.24.11.08.alice.peachy.mp4 (Mode: scene) +Downloading pornworld.24.11.08.alice.peachy.mp4 (4786.12 MB)... +Scanning directory: /videos/peachy.alice/ImmoralLive.25.04.29.Peachy.Alice.XXX.1080p.HEVC.x265.PRT +Processing: HUGE TITS PAWG PEACHY ALICE SQUIRTING FROM INTENSE ANAL THREESOME-(Alice Peachy)-{Immoral Live}.mp4 (Mode: scene) +Downloading HUGE TITS PAWG PEACHY ALICE SQUIRTING FROM INTENSE ANAL THREESOME-(Alice Peachy)-{Immoral Live}.mp4 (794.91 MB)... +Scanning directory: /videos/peachy.alice/Vored.24.07.05.Alice.Peachy.And.Sam.Bourne.Genesis.Reversed.XXX.1080p.HEVC.x265.PRT +Processing: Vored.24.07.05.Alice.Peachy.And.Sam.Bourne.Genesis.Reversed.XXX.1080p.HEVC.x265.PRT.mp4 (Mode: scene) +Downloading Vored.24.07.05.Alice.Peachy.And.Sam.Bourne.Genesis.Reversed.XXX.1080p.HEVC.x265.PRT.mp4 (350.99 MB)... +Scanning directory: /videos/peachy.alice/Private.25.04.19.Peachy.Alice.Anal.Introductions.XXX.INTERNAL.1080p.MP4-WRB[XC] +Processing: private.25.04.19.peachy.alice.anal.introductions.int.mp4 (Mode: scene) +Downloading private.25.04.19.peachy.alice.anal.introductions.int.mp4 (2776.42 MB)... +Scanning directory: /videos/peachy.alice/PlantsVsCunts.24.06.28.Alice.Peachy.XXX.1080p.HEVC.x265.PRT +Processing: PlantsVsCunts.24.06.28.Alice.Peachy.XXX.1080p.HEVC.x265.PRT.mp4 (Mode: scene) +Downloading PlantsVsCunts.24.06.28.Alice.Peachy.XXX.1080p.HEVC.x265.PRT.mp4 (229.39 MB)... +Scanning directory: /videos/peachy.alice/ImmoralLive.25.04.19.Peachy.Alice.XXX.1080p.MP4-WRB[XC] +Processing: il.25.04.19.peachy.alice.mp4 (Mode: scene) +Downloading il.25.04.19.peachy.alice.mp4 (2156.79 MB)... +Scanning directory: /videos/anastasia.rose/TadpolexStudio.25.03.21.Anastasia.Rose.Ballon.Popping.Gangbang.Part.2.XXX.1080p.MP4-FETiSH[XC] +Processing: Anastasia Rose GANGBANG w Creampie-{TadPoleXXXStudio}-[Interracial].mp4 (Mode: scene) +Downloading Anastasia Rose GANGBANG w Creampie-{TadPoleXXXStudio}-[Interracial].mp4 (2456.38 MB)... +Scanning directory: /videos/scarlett.venom/MomDrips.25.04.04.Scarlett.Venom.XXX.1080p.HEVC.x265.PRT +Processing: MomDrips.25.04.04.Scarlett.Venom.XXX.1080p.HEVC.x265.PRT.mp4 (Mode: scene) +Downloading MomDrips.25.04.04.Scarlett.Venom.XXX.1080p.HEVC.x265.PRT.mp4 (1409.94 MB)... +Scanning directory: /videos/scarlett.venom/LilHumpers.24.04.20.Scarlett.Venom.Remote.Controlling.My.Roommate.XXX.1080p.MP4-WRB[XC] +Processing: lilhumpers.24.04.20.scarlett.venom.remote.controlling.my.roommate.mp4 (Mode: scene) +Downloading lilhumpers.24.04.20.scarlett.venom.remote.controlling.my.roommate.mp4 (3034.16 MB)... +Scanning directory: /videos/scarlett.venom/LookAtHerNow.24.03.10.Scarlett.Venom.Horny.Maid.Teases.And.Pleases.XXX.1080p.MP4-WRB[XC] +Processing: Horny Maid Teases And Pleases-(Scarlett Venom)-{Look At Her Now}-[Big Ass, Big Tits, Blowjob, Doggystyle, Facial, Latina Woman, Maid Outfit, Missionary, Natural Tits, Reverse Cowgirl - POV, Spanking, Tattoos, Titjob, Titty Fuck, cowgirl].mp4 (Mode: scene) +Downloading Horny Maid Teases And Pleases-(Scarlett Venom)-{Look At Her Now}-[Big Ass, Big Tits, Blowjob, Doggystyle, Facial, Latina Woman, Maid Outfit, Missionary, Natural Tits, Reverse Cowgirl - POV, Spanking, Tattoos, Titjob, Titty Fuck, cowgirl].mp4 (1600.01 MB)... +Scanning directory: /videos/scarlett.venom/All In The Step Family.2025.Slutty StepSister Scarlett Venom And StepMom Kymber Leigh Make Jr Feel Better.1080p-VERIFIED +Processing: All In The Step Family.2025.Slutty StepSister Scarlett Venom And StepMom Kymber Leigh Make Jr Feel Better.1080p-VERIFIED.mp4 (Mode: scene) +Downloading All In The Step Family.2025.Slutty StepSister Scarlett Venom And StepMom Kymber Leigh Make Jr Feel Better.1080p-VERIFIED.mp4 (1694.96 MB)... +Scanning directory: /videos/scarlett.venom/BigTitsRoundAsses.23.10.28.Scarlett.Venom.XXX.1080p.MP4-WRB[XC] +Processing: bigtitsroundasses.23.10.28.scarlett.venom.mp4 (Mode: scene) +Downloading bigtitsroundasses.23.10.28.scarlett.venom.mp4 (3990.17 MB)... +Scanning directory: /videos/scarlett.venom/FreeUseMILF.24.04.19.Scarlett.Venom.Yoga.And.Chill.XXX.1080p.MP4-WRB[XC] +Processing: freeusemilf.24.04.19.scarlett.venom.yoga.and.chill.mp4 (Mode: scene) +Downloading freeusemilf.24.04.19.scarlett.venom.yoga.and.chill.mp4 (666.19 MB)... +Scanning directory: /videos/scarlett.venom/POVMasters.23.11.20.Scarlett.Venom.XXX.1080p.MP4-NBQ[XC] +Processing: Curvy Babe Scarlett Venom Rides Big Dick POV-{POV Masters}.mp4 (Mode: scene) +Downloading Curvy Babe Scarlett Venom Rides Big Dick POV-{POV Masters}.mp4 (1168.34 MB)... +Scanning directory: /videos/scarlett.venom/BenefitMonkey.25.04.03.Venom.Evil.Shower.And.Blowing.BTS.XXX.1080p.HEVC.x265.PRT +Processing: BenefitMonkey.25.04.03.Venom.Evil.Shower.And.Blowing.BTS.XXX.1080p.HEVC.x265.PRT.mp4 (Mode: scene) +Downloading BenefitMonkey.25.04.03.Venom.Evil.Shower.And.Blowing.BTS.XXX.1080p.HEVC.x265.PRT.mp4 (821.11 MB)... +Scanning directory: /videos/scarlett.venom/JOIBabes.24.05.06.Scarlett.Venom.XXX.1080p.MP4-WRB[XC] +Processing: joibabes.24.05.06.scarlett.venom.mp4 (Mode: scene) +Downloading joibabes.24.05.06.scarlett.venom.mp4 (571.73 MB)... +Scanning directory: /videos/scarlett.venom/MrLuckyRAW.24.01.24.Scarlett.Venom.Is.Happy.To.Have.Cum.Covered.Tits.XXX.1080p.MP4-P2P[XC] +Processing: Scarlet Venom Is Happy To Have Cum Covered Tits-(Scarlett Venom)-{Mr. LuckyRaw}-[Big Ass, Big Tits, Blowjob, Cumshot, Curvy, Doggy Style, Hairy Pussy, Handjob, Lingerie, Male - POV, Missionary, Striptease, Titjob, Titjob - POV, cum on tits].mp4 (Mode: scene) +Downloading Scarlet Venom Is Happy To Have Cum Covered Tits-(Scarlett Venom)-{Mr. LuckyRaw}-[Big Ass, Big Tits, Blowjob, Cumshot, Curvy, Doggy Style, Hairy Pussy, Handjob, Lingerie, Male - POV, Missionary, Striptease, Titjob, Titjob - POV, cum on tits].mp4 (1607.81 MB)... +Scanning directory: /videos/scarlett.venom/PervMom.25.03.23.Scarlett.Venom.XXX.1080p.MP4-WRB[XC] +Processing: pervmom.25.03.23.scarlett.venom.mp4 (Mode: scene) +Downloading pervmom.25.03.23.scarlett.venom.mp4 (1634.17 MB)... +Scanning directory: /videos/scarlett.venom/MomDrips.25.04.04.Scarlett.Venom.XXX.1080p.MP4-WRB[XC] +Scanning directory: /videos/scarlett.venom/YoungBusty.25.06.27.Scarlett.Venom.XXX.720p.HEVC.x265.PRT +Scanning directory: /videos/scarlett.venom/Inserted.24.01.04.Scarlett.Venom.XXX.1080p.MP4-NBQ[XC] +Processing: Scarlett Is A Horny Girl-(Scarlett Venom)-{Inserted}-[Big Tits, Blowjob, Brown Hair, Doggy Style, Facial, Jerk Off Instruction, Masturbation, Natural Tits, Reverse Cowgirl, cowgirl].mp4 (Mode: scene) +Downloading Scarlett Is A Horny Girl-(Scarlett Venom)-{Inserted}-[Big Tits, Blowjob, Brown Hair, Doggy Style, Facial, Jerk Off Instruction, Masturbation, Natural Tits, Reverse Cowgirl, cowgirl].mp4 (1335.25 MB)... +Scanning directory: /videos/scarlett.venom/MoneyTalks.23.12.19.Selina.Bentz.Renee.Rose.And.Scarlett.Venom.Party.Crashing.XXX.1080p.MP4-WRB[XC] +Processing: moneytalks.23.12.19.selina.bentz.renee.rose.and.scarlett.venom.party.crashing.mp4 (Mode: scene) +Downloading moneytalks.23.12.19.selina.bentz.renee.rose.and.scarlett.venom.party.crashing.mp4 (1337.10 MB)... +Scanning directory: /videos/scarlett.venom/CrazyCollegeGFs.25.05.24.Scarlett.Venom.Sharpening.Her.Skills.XXX.1080p.MP4-WRB[XC] +Processing: Sharpening Her Skills-(Scarlett Venom)-{Crazy College GFs}.mp4 (Mode: scene) +Downloading Sharpening Her Skills-(Scarlett Venom)-{Crazy College GFs}.mp4 (3898.03 MB)... +Scanning directory: /videos/scarlett.venom/RKPrime.25.09.24.Scarlett.Venom.And.Funsized.Megan.Big.Titty.Besties.XXX.1080p.MP4-WRB[XC] +Processing: rkprime.25.09.24.scarlett.venom.and.funsized.megan.big.titty.besties.mp4 (Mode: scene) +Downloading rkprime.25.09.24.scarlett.venom.and.funsized.megan.big.titty.besties.mp4 (3414.57 MB)... +Scanning directory: /videos/scarlett.venom/YoungBusty.25.06.27.Scarlett.Venom.XXX.1080p.MP4-WRB[XC] +Processing: Scarlet Venom's curves are dangerously delicious-(Scarlett Venom)-{Young Busty}-[Babes, Big Ass, Big Tits, Blowjob, Brown Hair, Curvy, Hardcore, Long Hair, Masturbation, Trimmed Pussy].mp4 (Mode: scene) +Downloading Scarlet Venom's curves are dangerously delicious-(Scarlett Venom)-{Young Busty}-[Babes, Big Ass, Big Tits, Blowjob, Brown Hair, Curvy, Hardcore, Long Hair, Masturbation, Trimmed Pussy].mp4 (2671.38 MB)... +Scanning directory: /videos/scarlett.venom/ManyVids.23.07.19.Scarlett.Venom.Curvy.BBW.Gets.Fucked.And.A.Huge.Facial.XXX.1080p.MP4-P2P[XC] +Processing: manyvids.23.07.19.scarlett.venom.curvy.bbw.gets.fucked.and.a.huge.facial.xxx.mp4 (Mode: scene) +Downloading manyvids.23.07.19.scarlett.venom.curvy.bbw.gets.fucked.and.a.huge.facial.xxx.mp4 (1285.89 MB)... +Scanning directory: /videos/scarlett.venom/CuckHunter.23.11.13.Scarlett.Venom.XXX.1080p.MP4-NBQ[XC] +Processing: cuckhunter.23.11.13.scarlett.venom.mp4 (Mode: scene) +Downloading cuckhunter.23.11.13.scarlett.venom.mp4 (1501.18 MB)... +Scanning directory: /videos/scarlett.venom/ManyVids.24.06.24.Scarlett.Venom.Hotel.Hookup.XXX.1080p.MP4-P2P[XC] +Scanning directory: /videos/scarlett.venom/CrazyCollegeGFs.25.05.24.Scarlett.Venom.Sharpening.Her.Skills.XXX.1080p.HEVC.x265.PRT +Scanning directory: /videos/scarlett.venom/FillUpMyMom.24.01.11.Scarlett.Venom.Be.A.Man.And.Fill.Her.Up.XXX.1080p.MP4-WRB[XC] +Processing: fillupmymom.24.01.11.scarlett.venom.be.a.man.and.fill.her.up.mp4 (Mode: scene) +Downloading fillupmymom.24.01.11.scarlett.venom.be.a.man.and.fill.her.up.mp4 (1531.61 MB)... +Scanning directory: /videos/fifi.foxx/Fifi-Foxx-Xvideos +Processing: dblckof45c_Petite girl with ponytail facefucked and swallows Fifi Foxx Aiden Valentine.mp4 (Mode: scene) +Downloading dblckof45c_Petite girl with ponytail facefucked and swallows Fifi Foxx Aiden Valentine.mp4 (103.37 MB)... +Processing: fdlacoe36e_Mommy Helps Her Stepson With A Handjob.mp4 (Mode: scene) +Downloading fdlacoe36e_Mommy Helps Her Stepson With A Handjob.mp4 (211.79 MB)... +Processing: epfaaf8ad4_Tabooish Pigtail Blonde Fuck - xxxmultimedia.com.mp4 (Mode: scene) +Downloading epfaaf8ad4_Tabooish Pigtail Blonde Fuck - xxxmultimedia.com.mp4 (79.61 MB)... +Processing: eodkede044_Girl In Black Lingerie POV Blowjob - Fifi Foxx Aiden Valentine.mp4 (Mode: scene) +Downloading eodkede044_Girl In Black Lingerie POV Blowjob - Fifi Foxx Aiden Valentine.mp4 (186.26 MB)... +Processing: dbfppb5899_Exposing Herself In Public And Spreading Her Tight Pussy Fifi Foxx.mp4 (Mode: scene) +Downloading dbfppb5899_Exposing Herself In Public And Spreading Her Tight Pussy Fifi Foxx.mp4 (94.75 MB)... +Processing: hbudaibc188_POV Step daughter and her father - Fifi Foxx - Aiden Valentine - XXX Multimedia.mp4 (Mode: scene) +Downloading hbudaibc188_POV Step daughter and her father - Fifi Foxx - Aiden Valentine - XXX Multimedia.mp4 (380.76 MB)... +Processing: ddifvh3b03_Art student gets hogtied and facefucked.mp4 (Mode: scene) +Downloading ddifvh3b03_Art student gets hogtied and facefucked.mp4 (139.96 MB)... +Processing: fpvkbv22cc_Naughty step Daughter gives a handjob while on the phone with Daddy.mp4 (Mode: scene) +Downloading fpvkbv22cc_Naughty step Daughter gives a handjob while on the phone with Daddy.mp4 (210.77 MB)... +Scanning directory: /videos/fifi.foxx/Fifi-Foxx-Pornhub +Processing: Blonde MILF Step Mom Tells Step Son it's not a Sin - Cock Ninja Studios - Fifi Foxx_Cock Ninja_1080p.mp4 (Mode: scene) +Downloading Blonde MILF Step Mom Tells Step Son it's not a Sin - Cock Ninja Studios - Fifi Foxx_Cock Ninja_1080p.mp4 (233.67 MB)... +Processing: Male to Female Gender Transformation Starring Fifi Foxx_Aiden Valentine_1080p.mp4 (Mode: scene) +Downloading Male to Female Gender Transformation Starring Fifi Foxx_Aiden Valentine_1080p.mp4 (440.35 MB)... +Processing: Homewrecker Sucks him Dry_Aiden Valentine_1080p.mp4 (Mode: scene) +Downloading Homewrecker Sucks him Dry_Aiden Valentine_1080p.mp4 (1292.46 MB)... +Processing: Step Mommy help me Rest - Cock Ninja Studios - Fifi Foxx_Cock Ninja_720p.mp4 (Mode: scene) +Downloading Step Mommy help me Rest - Cock Ninja Studios - Fifi Foxx_Cock Ninja_720p.mp4 (206.82 MB)... +Processing: Step Mom Helps Step Son Cure his Porn Addiction - Fifi Foxx_Cock Ninja_720p.mp4 (Mode: scene) +Downloading Step Mom Helps Step Son Cure his Porn Addiction - Fifi Foxx_Cock Ninja_720p.mp4 (149.58 MB)... +Processing: Stepdaughter gives Daddy a POV Blowjob Starring Blonde Fifi Foxx_Aiden Valentine_1080p.mp4 (Mode: scene) +Downloading Stepdaughter gives Daddy a POV Blowjob Starring Blonde Fifi Foxx_Aiden Valentine_1080p.mp4 (625.50 MB)... +Processing: StepDaughter Swallows Daddy's Cock_Aiden Valentine_720p.mp4 (Mode: scene) +Downloading StepDaughter Swallows Daddy's Cock_Aiden Valentine_720p.mp4 (74.48 MB)... +Processing: Servant begs her Master to Bound and Gag her_Aiden Valentine_1080p.mp4 (Mode: scene) +Downloading Servant begs her Master to Bound and Gag her_Aiden Valentine_1080p.mp4 (1409.94 MB)... +Processing: Freeze and Shut up - Threesome Taboo Fantasy_Leilani Lei_720p.mp4 (Mode: scene) +Downloading Freeze and Shut up - Threesome Taboo Fantasy_Leilani Lei_720p.mp4 (244.18 MB)... +Processing: MILF Stepmom Fucks Stepdaughter's  boyfriend - Leilani Lei & Fifi Foxx_Aiden Valentine_1080p.mp4 (Mode: scene) +Downloading MILF Stepmom Fucks Stepdaughter's  boyfriend - Leilani Lei & Fifi Foxx_Aiden Valentine_1080p.mp4 (962.82 MB)... +Processing: Foot Slave Fifi Foxx_Leilani Lei_720p.mp4 (Mode: scene) +Downloading Foot Slave Fifi Foxx_Leilani Lei_720p.mp4 (101.27 MB)... +Processing: MILF Teaches BJ to Young Blonde_Leilani Lei_720p.mp4 (Mode: scene) +Downloading MILF Teaches BJ to Young Blonde_Leilani Lei_720p.mp4 (215.21 MB)... +Processing: Step Family gives into Temptation Part 2 - Fifi Foxx and Smarty Kat 314_Cock Ninja_720p.mp4 (Mode: scene) +Downloading Step Family gives into Temptation Part 2 - Fifi Foxx and Smarty Kat 314_Cock Ninja_720p.mp4 (218.09 MB)... +Processing: Aiden's Foot Job Vol 3_Leilani Lei_720p.mp4 (Mode: scene) +Downloading Aiden's Foot Job Vol 3_Leilani Lei_720p.mp4 (272.59 MB)... +Processing: Blonde MILF Step Mom needs help Cumming - Cock Ninja Studios - Fifi Foxx_Cock Ninja_720p.mp4 (Mode: scene) +Downloading Blonde MILF Step Mom needs help Cumming - Cock Ninja Studios - Fifi Foxx_Cock Ninja_720p.mp4 (114.03 MB)... +Processing: MILF and Blonde Give Stockings Foot Job_Leilani Lei_720p.mp4 (Mode: scene) +Downloading MILF and Blonde Give Stockings Foot Job_Leilani Lei_720p.mp4 (226.32 MB)... +Processing: Belly Button Worship Blowjob_Aiden Valentine_1080p.mp4 (Mode: scene) +Downloading Belly Button Worship Blowjob_Aiden Valentine_1080p.mp4 (392.56 MB)... +Processing: Cheering Leilani up_Leilani Lei_720p.mp4 (Mode: scene) +Downloading Cheering Leilani up_Leilani Lei_720p.mp4 (275.79 MB)... +Processing: Blowing the Boss Feat. Fifi Foxx_Aiden Valentine_1080p.mp4 (Mode: scene) +Downloading Blowing the Boss Feat. Fifi Foxx_Aiden Valentine_1080p.mp4 (604.13 MB)... +Processing: Step-Mom Fucks Step-Daughter (First Sexual Encounter)_Alexis Rain_720p.mp4 (Mode: scene) +Downloading Step-Mom Fucks Step-Daughter (First Sexual Encounter)_Alexis Rain_720p.mp4 (113.75 MB)... +Processing: Mommy Helps her Injured Stepson Masturbate_Aiden Valentine_1080p.mp4 (Mode: scene) +Downloading Mommy Helps her Injured Stepson Masturbate_Aiden Valentine_1080p.mp4 (657.53 MB)... +Processing: I Swapped Bodies with Mom_Aiden Valentine_1080p.mp4 (Mode: scene) +Downloading I Swapped Bodies with Mom_Aiden Valentine_1080p.mp4 (493.73 MB)... +Processing: POV Impregnate me Tonight Female POV_Aiden Valentine_1080p.mp4 (Mode: scene) +Downloading POV Impregnate me Tonight Female POV_Aiden Valentine_1080p.mp4 (406.25 MB)... +Processing: Cam Show with Fifi Foxx_Leilani Lei_720p.mp4 (Mode: scene) +Downloading Cam Show with Fifi Foxx_Leilani Lei_720p.mp4 (185.84 MB)... +Scanning directory: /videos/lilibet.saunders/Cuckquean Lilibet/SS +Scanning directory: /videos/lilibet.saunders/dannydirt/[OnlyFans] Danny Dirt - Stepsis Finds Out I Dropped Out Of School +Processing: [OnlyFans] Danny Dirt - Stepsis Finds Out I Dropped Out Of School.mp4 (Mode: scene) +Downloading [OnlyFans] Danny Dirt - Stepsis Finds Out I Dropped Out Of School.mp4 (1102.46 MB)... +Scanning directory: /videos/lilibet.saunders/dannydirt/[OnlyFans] Danny Dirt - Annoying Stepdaughter Say Im Unc Chopped +Processing: [OnlyFans] Danny Dirt - Annoying Stepdaughter Say Im Unc Chopped.mp4 (Mode: scene) +Downloading [OnlyFans] Danny Dirt - Annoying Stepdaughter Say Im Unc Chopped.mp4 (1574.12 MB)... +Scanning directory: /videos/lilibet.saunders/dannydirt/[OnlyFans] Danny Dirt - E-Girl Stepsis Gets Banned For Flashing +Processing: [OnlyFans] Danny Dirt - E-Girl Stepsis Gets Banned For Flashing.mp4 (Mode: scene) +Downloading [OnlyFans] Danny Dirt - E-Girl Stepsis Gets Banned For Flashing.mp4 (1270.14 MB)... +Scanning directory: /videos/wifeymichelle/Photos/shower nudes +Scanning directory: /videos/wifeymichelle/Photos/Michelle getting dressed nudes +Scanning directory: /videos/castingcurvy/Videos/performers +Scanning directory: /videos/castingcurvy/CastingCurvy 2022.11.19 - 2024.09.16 Siterip/Screens +Scanning directory: /videos/castingcurvy/CastingCurvy 2023.02.09 - 2025.09.29 Megapack/Screens +Scanning directory: /videos/castingcurvy/[OnlyFans] - @Castingcurvy/pics +Scanning directory: /videos/castingcurvy/[OnlyFans] - @Castingcurvy/screens +Scanning directory: /videos/castingcurvy/[OnlyFans] - @Castingcurvy/videos +Processing: 0gw6aemng9k4lnljr9fcl_source.mp4 (Mode: scene) +Downloading 0gw6aemng9k4lnljr9fcl_source.mp4 (1941.78 MB)... +Processing: 0gt5eo5tejna7rsip06fp_source.mp4 (Mode: scene) +Downloading 0gt5eo5tejna7rsip06fp_source.mp4 (1365.87 MB)... +Processing: 0h5la5mz9ne0x6esoisdv_source.mp4 (Mode: scene) +Downloading 0h5la5mz9ne0x6esoisdv_source.mp4 (1906.75 MB)... +Processing: 0h6odfc64edfrebqkfx9m_source.mp4 (Mode: scene) +Downloading 0h6odfc64edfrebqkfx9m_source.mp4 (2198.24 MB)... +Processing: 0gpotzr664l08f77skz8x_source.mp4 (Mode: scene) +Downloading 0gpotzr664l08f77skz8x_source.mp4 (248.01 MB)... +Processing: 0h2lly5tp1ind30fpzun8_source.mp4 (Mode: scene) +Downloading 0h2lly5tp1ind30fpzun8_source.mp4 (2001.55 MB)... +Processing: 0gv4b95dbp0alof2znq8e_source.mp4 (Mode: scene) +Downloading 0gv4b95dbp0alof2znq8e_source.mp4 (1657.07 MB)... +Processing: 0gr23s8ncly7gb180xvte_source.mp4 (Mode: scene) +Downloading 0gr23s8ncly7gb180xvte_source.mp4 (1670.65 MB)... +Processing: 0h73icf2njoh8a3lbrfzp_source.mp4 (Mode: scene) +Downloading 0h73icf2njoh8a3lbrfzp_source.mp4 (1524.49 MB)... +Processing: 0gxkdp1wlhrfw3ttobjnn_source.mp4 (Mode: scene) +Downloading 0gxkdp1wlhrfw3ttobjnn_source.mp4 (1070.32 MB)... +Processing: 0guhj1utbuabl4wzcowdx_source.mp4 (Mode: scene) +Downloading 0guhj1utbuabl4wzcowdx_source.mp4 (1565.11 MB)... +Processing: 0h3hsxic28gt1ymq9tj0n_source.mp4 (Mode: scene) +Downloading 0h3hsxic28gt1ymq9tj0n_source.mp4 (675.18 MB)... +Processing: 0guzw9qst2jc8ezbkep0e_source.mp4 (Mode: scene) +Downloading 0guzw9qst2jc8ezbkep0e_source.mp4 (148.21 MB)... +Processing: 0gy27bzg1pqjom4vjteig_source.mp4 (Mode: scene) +Downloading 0gy27bzg1pqjom4vjteig_source.mp4 (1673.59 MB)... +Processing: 0gnw1k5xomq01s9vakrju_source.mp4 (Mode: scene) +Downloading 0gnw1k5xomq01s9vakrju_source.mp4 (485.17 MB)... +Processing: 0h04l96qv0wleaahw2yvc_source.mp4 (Mode: scene) +Downloading 0h04l96qv0wleaahw2yvc_source.mp4 (1385.38 MB)... +Processing: 0h52v8aacc9d5myyzcyya_source.mp4 (Mode: scene) +Downloading 0h52v8aacc9d5myyzcyya_source.mp4 (2304.82 MB)... +Processing: 0h1pzo95puofb6t3uvnan_source.mp4 (Mode: scene) +Downloading 0h1pzo95puofb6t3uvnan_source.mp4 (1777.32 MB)... +Processing: 0h4nji4l670hz2l6c3xbz_source.mp4 (Mode: scene) +Downloading 0h4nji4l670hz2l6c3xbz_source.mp4 (1287.90 MB)... +Processing: 0gvp8b899zztyth7na3ey_source.mp4 (Mode: scene) +Downloading 0gvp8b899zztyth7na3ey_source.mp4 (1622.59 MB)... +Processing: 0gvdoxcqy6lrxkbhrtdna_source.mp4 (Mode: scene) +Downloading 0gvdoxcqy6lrxkbhrtdna_source.mp4 (241.49 MB)... +Processing: 0goeslut7qnb9j2g4pdge_source.mp4 (Mode: scene) +Downloading 0goeslut7qnb9j2g4pdge_source.mp4 (614.74 MB)... +Processing: 0h5xffubopuj09gyqnnqz_source.mp4 (Mode: scene) +Downloading 0h5xffubopuj09gyqnnqz_source.mp4 (1356.79 MB)... +Processing: 0h2yf7zj3oz5d1goot5b5_source.mp4 (Mode: scene) +Downloading 0h2yf7zj3oz5d1goot5b5_source.mp4 (1043.46 MB)... +Processing: 0gzlxakmauiuvb8nvigqj_source.mp4 (Mode: scene) +Downloading 0gzlxakmauiuvb8nvigqj_source.mp4 (1439.62 MB)... +Processing: 0h3yt8bgarkmt5l8co75o_source.mp4 (Mode: scene) +Downloading 0h3yt8bgarkmt5l8co75o_source.mp4 (1637.61 MB)... +Processing: 0h248zsgpgop6ujzfc95y_source.mp4 (Mode: scene) +Downloading 0h248zsgpgop6ujzfc95y_source.mp4 (1814.44 MB)... +Processing: 0gym8qvq2jf7xqqq284nt_source.mp4 (Mode: scene) +Downloading 0gym8qvq2jf7xqqq284nt_source.mp4 (1418.59 MB)... +Processing: 0gzbyorowzq50dxpp2ese_source.mp4 (Mode: scene) +Downloading 0gzbyorowzq50dxpp2ese_source.mp4 (1234.67 MB)... +Processing: 0h0kbjkv4afjp8hpyc4f5_source.mp4 (Mode: scene) +Downloading 0h0kbjkv4afjp8hpyc4f5_source.mp4 (1689.21 MB)... +Processing: 0gz5gc8s2k7284hf6qxfh_source.mp4 (Mode: scene) +Downloading 0gz5gc8s2k7284hf6qxfh_source.mp4 (1245.91 MB)... +Processing: 0gpwmj1vtrx95o9i9xnxo_source.mp4 (Mode: scene) +Downloading 0gpwmj1vtrx95o9i9xnxo_source.mp4 (162.82 MB)... +Processing: 0h7uv2wrwa97hca4daseg_source.mp4 (Mode: scene) +Downloading 0h7uv2wrwa97hca4daseg_source.mp4 (2212.15 MB)... +Processing: 0h6ak6r792hnwbz2avf2t_source.mp4 (Mode: scene) +Downloading 0h6ak6r792hnwbz2avf2t_source.mp4 (2179.23 MB)... +Processing: 0h3uva1ypo4usuwl3aq4d_source.mp4 (Mode: scene) +Downloading 0h3uva1ypo4usuwl3aq4d_source.mp4 (1421.75 MB)... +Processing: 0gsbgidpntoue8b7omtib_source.mp4 (Mode: scene) +Downloading 0gsbgidpntoue8b7omtib_source.mp4 (1608.21 MB)... +Processing: 0h49v64xic9vim7nc8u6h_source.mp4 (Mode: scene) +Downloading 0h49v64xic9vim7nc8u6h_source.mp4 (1777.15 MB)... +Processing: 0gsmb8qkp597d31x2uqz5_source.mp4 (Mode: scene) +Downloading 0gsmb8qkp597d31x2uqz5_source.mp4 (1376.90 MB)... +Processing: 0gx40iidph3g13fvsdxwf_source.mp4 (Mode: scene) +Downloading 0gx40iidph3g13fvsdxwf_source.mp4 (1398.97 MB)... +Processing: 0h32zsgqyxnq0au3loegx_source.mp4 (Mode: scene) +Downloading 0h32zsgqyxnq0au3loegx_source.mp4 (1833.60 MB)... +Processing: 0gnq2rc40c3tq2n3y6w8p_source.mp4 (Mode: scene) +Downloading 0gnq2rc40c3tq2n3y6w8p_source.mp4 (177.69 MB)... +Processing: 0gwo2c1b2xkuu9b3es18a_source.mp4 (Mode: scene) +Downloading 0gwo2c1b2xkuu9b3es18a_source.mp4 (1421.74 MB)... +Processing: 0gtt4yujgsergwh48fc6w_source.mp4 (Mode: scene) +Downloading 0gtt4yujgsergwh48fc6w_source.mp4 (1392.72 MB)... +Processing: 0h7hc181rzoc30l89skk1_source.mp4 (Mode: scene) +Downloading 0h7hc181rzoc30l89skk1_source.mp4 (2471.44 MB)... +Processing: 0h1tbqylvcpurs91k21ol_source.mp4 (Mode: scene) +Downloading 0h1tbqylvcpurs91k21ol_source.mp4 (1646.38 MB)... +Scanning directory: /videos/katie.cummings/captainkcx_coomer/Videos +Processing: fb4724381f99e2f029b853fb0f75fc187a1e545311eb0863a8e9e18f1c6ce215.mp4 (Mode: scene) +Downloading fb4724381f99e2f029b853fb0f75fc187a1e545311eb0863a8e9e18f1c6ce215.mp4 (27.90 MB)... +Processing: aedab444dea250a864ed89c084269d69fbac10e8c7738a260eb3e28e6094253e.mp4 (Mode: scene) +Downloading aedab444dea250a864ed89c084269d69fbac10e8c7738a260eb3e28e6094253e.mp4 (39.61 MB)... +Processing: 0gvelavktbyla0n6bid3c_source.mp4 (Mode: scene) +Downloading 0gvelavktbyla0n6bid3c_source.mp4 (8.35 MB)... +Processing: c680c65a6d10c0c223ff9c60177db47fc23147e4132c1e96e929a87ac33aa586.mp4 (Mode: scene) +Downloading c680c65a6d10c0c223ff9c60177db47fc23147e4132c1e96e929a87ac33aa586.mp4 (1121.84 MB)... +Processing: 0hpc92e947a9xi8c43c5q_source.mp4 (Mode: scene) +Downloading 0hpc92e947a9xi8c43c5q_source.mp4 (10.51 MB)... +Processing: 0499c8e72d84b4e965d1fa17bd098989e55da9fe1dc33c8ea90313bbe0fc6919.mp4 (Mode: scene) +Downloading 0499c8e72d84b4e965d1fa17bd098989e55da9fe1dc33c8ea90313bbe0fc6919.mp4 (14.08 MB)... +Processing: 0hicr30wc8r7j01mzkdao_source.mp4 (Mode: scene) +Downloading 0hicr30wc8r7j01mzkdao_source.mp4 (8.80 MB)... +Processing: 4GDN9Y51jlQYfz4pJTPWtY9A9dTFgJ3r.mp4 (Mode: scene) +Downloading 4GDN9Y51jlQYfz4pJTPWtY9A9dTFgJ3r.mp4 (69.67 MB)... +Processing: aa2a9471f72a7050213513d132d5ea2cd7164ddf29bc4ad0d66736da89d7069b.mp4 (Mode: scene) +Downloading aa2a9471f72a7050213513d132d5ea2cd7164ddf29bc4ad0d66736da89d7069b.mp4 (132.00 MB)... +Processing: 5ef4b8ba9cf6b999d8160_source.mp4 (Mode: scene) +Downloading 5ef4b8ba9cf6b999d8160_source.mp4 (44.49 MB)... +Processing: 0gxe54b8877aeije0bkv7_source.mp4 (Mode: scene) +Downloading 0gxe54b8877aeije0bkv7_source.mp4 (7.98 MB)... +Processing: 2OtYh5IiX3oXm3ywQ3sXGe2992CsE3Rz.mp4 (Mode: scene) +Downloading 2OtYh5IiX3oXm3ywQ3sXGe2992CsE3Rz.mp4 (9.65 MB)... +Processing: 6dfd3686b72ffc06c31005508818373b8469bb14a34e1dcb46a09b0af6698af3.mp4 (Mode: scene) +Downloading 6dfd3686b72ffc06c31005508818373b8469bb14a34e1dcb46a09b0af6698af3.mp4 (69.67 MB)... +Processing: 0gmzziglh27f9b6gm2xih_source.mp4 (Mode: scene) +Downloading 0gmzziglh27f9b6gm2xih_source.mp4 (13.61 MB)... +Processing: f236613bb0735c2828cb7f26e6ce60fc2565b1dc0e3f6b0a8f1b9a7e220ce1c0.mp4 (Mode: scene) +Downloading f236613bb0735c2828cb7f26e6ce60fc2565b1dc0e3f6b0a8f1b9a7e220ce1c0.mp4 (0.83 MB)... +Processing: Zk95fc35hE9WRtE4yB4hgCIGRWNy5nuA.mp4 (Mode: scene) +Downloading Zk95fc35hE9WRtE4yB4hgCIGRWNy5nuA.mp4 (17.28 MB)... +Processing: ff508f5758d0a02d6fc61fee4bc0dbbebce7e76717f17bf4cdf05f5bbaf47de8.mp4 (Mode: scene) +Downloading ff508f5758d0a02d6fc61fee4bc0dbbebce7e76717f17bf4cdf05f5bbaf47de8.mp4 (7.82 MB)... +Processing: 38eaed70de31be7357e1c7ebb99bd6ed631afb1d4e7d684f2648f3bd3ff2c53a.mp4 (Mode: scene) +Downloading 38eaed70de31be7357e1c7ebb99bd6ed631afb1d4e7d684f2648f3bd3ff2c53a.mp4 (19.89 MB)... +Processing: 87e0701b11afe5db67dd69a346c7a4f700904401dba2280c643919537ce612a9.mp4 (Mode: scene) +Downloading 87e0701b11afe5db67dd69a346c7a4f700904401dba2280c643919537ce612a9.mp4 (7.75 MB)... +Processing: 4ee2def46676d3f71f88138417db93c3534a68d175ae789cf77ec1bfdf76bb42.mp4 (Mode: scene) +Downloading 4ee2def46676d3f71f88138417db93c3534a68d175ae789cf77ec1bfdf76bb42.mp4 (9.46 MB)... +Processing: ca96e101d32afb5a8786b018957f0e20f4363dbf0aa7d7f0972f27d8a99bd4a8.mp4 (Mode: scene) +Downloading ca96e101d32afb5a8786b018957f0e20f4363dbf0aa7d7f0972f27d8a99bd4a8.mp4 (9.27 MB)... +Processing: 14b5b439aad4a27b9c8f7a97e9b449730a7cf7b944a92d876978bc2f98fe3d91.mp4 (Mode: scene) +Downloading 14b5b439aad4a27b9c8f7a97e9b449730a7cf7b944a92d876978bc2f98fe3d91.mp4 (24.00 MB)... +Processing: 33aebebb0a9c287e97360725c5e4a8b2937ddf37d3698bf9c9c832b9f634fb2d.mp4 (Mode: scene) +Downloading 33aebebb0a9c287e97360725c5e4a8b2937ddf37d3698bf9c9c832b9f634fb2d.mp4 (16.83 MB)... +Processing: 74fc6145fb7ff6b2149c4a7a44b23ffafee76b09c72736ea24096b730815f02b.mp4 (Mode: scene) +Downloading 74fc6145fb7ff6b2149c4a7a44b23ffafee76b09c72736ea24096b730815f02b.mp4 (38.82 MB)... +Processing: 19405752357a88b576c729622b3ddff96e8e13b719f45d33e3502ddc5d4714e3.mp4 (Mode: scene) +Downloading 19405752357a88b576c729622b3ddff96e8e13b719f45d33e3502ddc5d4714e3.mp4 (17.52 MB)... +Processing: 0hiwf1skxwqmspmqc2gws_source.mp4 (Mode: scene) +Downloading 0hiwf1skxwqmspmqc2gws_source.mp4 (10.16 MB)... +Processing: b3ca3804af5b9daaabaa18622f10cdc1a1bbab5318d707d451b0b22902267145.mp4 (Mode: scene) +Downloading b3ca3804af5b9daaabaa18622f10cdc1a1bbab5318d707d451b0b22902267145.mp4 (13.77 MB)... +Processing: Hot Snap Show-(Katie Cummings).mp4 (Mode: scene) +Downloading Hot Snap Show-(Katie Cummings).mp4 (316.11 MB)... +Processing: fa50b4e8ac4d873869d02a954bda268576691a243fd0a1416d0ecfb09e702d6c.mp4 (Mode: scene) +Downloading fa50b4e8ac4d873869d02a954bda268576691a243fd0a1416d0ecfb09e702d6c.mp4 (17.02 MB)... +Processing: 0gz5zybr4cbk8q5e5az34_source.mp4 (Mode: scene) +Downloading 0gz5zybr4cbk8q5e5az34_source.mp4 (18.89 MB)... +Processing: 0h7cecujt0ckurumdn0ba_source.mp4 (Mode: scene) +Downloading 0h7cecujt0ckurumdn0ba_source.mp4 (8.66 MB)... +Processing: 5f11d63c408115afad29a3de254fb67583d66f147d24967778c673c68ff67ed1.mp4 (Mode: scene) +Downloading 5f11d63c408115afad29a3de254fb67583d66f147d24967778c673c68ff67ed1.mp4 (20.00 MB)... +Processing: c942f611792fa36a16610f01416b74ecfbec6fff149a73c76966051d94f0b9ac.mp4 (Mode: scene) +Downloading c942f611792fa36a16610f01416b74ecfbec6fff149a73c76966051d94f0b9ac.mp4 (68.00 MB)... +Processing: 0hh4bv3aphjht9lfe90nn_source.mp4 (Mode: scene) +Downloading 0hh4bv3aphjht9lfe90nn_source.mp4 (20.63 MB)... +Processing: 5e583014b9a368e8629ab.mp4 (Mode: scene) +Downloading 5e583014b9a368e8629ab.mp4 (703.41 MB)... +Processing: 0h0ubp11aaydkp2lv29cx_source.mp4 (Mode: scene) +Downloading 0h0ubp11aaydkp2lv29cx_source.mp4 (9.34 MB)... +Processing: 0gqz2i7zpj59gaez2ndym_source.mp4 (Mode: scene) +Downloading 0gqz2i7zpj59gaez2ndym_source.mp4 (73.22 MB)... +Processing: 50e85657809166d0d7b6466776e05a5e680b11086fcad48c87e4e00ce3441115.mp4 (Mode: scene) +Downloading 50e85657809166d0d7b6466776e05a5e680b11086fcad48c87e4e00ce3441115.mp4 (29.32 MB)... +Processing: 0gw9kmc9p46q5vru731pj_source.mp4 (Mode: scene) +Downloading 0gw9kmc9p46q5vru731pj_source.mp4 (320.70 MB)... +Processing: 5ec08215b8237d2c02c7a_source.mp4 (Mode: scene) +Downloading 5ec08215b8237d2c02c7a_source.mp4 (23.24 MB)... +Processing: e9397257b0d65314eb417a91dcebf689.mp4 (Mode: scene) +Downloading e9397257b0d65314eb417a91dcebf689.mp4 (0.65 MB)... +Processing: fa109ee9ea3e1dddf57d418e110969a88b4a960ef2b19a2462794c1a28acc646.mp4 (Mode: scene) +Downloading fa109ee9ea3e1dddf57d418e110969a88b4a960ef2b19a2462794c1a28acc646.mp4 (18.76 MB)... +Processing: 0hicr0n14ly1f4b88kc2w_source.mp4 (Mode: scene) +Downloading 0hicr0n14ly1f4b88kc2w_source.mp4 (8.95 MB)... +Processing: 8771cc6f2bf7d5e1dd55bc6325b49ca657f2677fcdcda47fcd071f84a53163da.mp4 (Mode: scene) +Downloading 8771cc6f2bf7d5e1dd55bc6325b49ca657f2677fcdcda47fcd071f84a53163da.mp4 (16.20 MB)... +Processing: 9444346a37b3e38c1d3ad14c3dac6529781f0de1690bbbb1eaac7c071ade1d18.mp4 (Mode: scene) +Downloading 9444346a37b3e38c1d3ad14c3dac6529781f0de1690bbbb1eaac7c071ade1d18.mp4 (133.77 MB)... +Processing: 0hix13f08db8dc7ts8lfv_source.mp4 (Mode: scene) +Downloading 0hix13f08db8dc7ts8lfv_source.mp4 (10.75 MB)... +Processing: d42fce05a4e23e32bd655ed431f2675b4b87300f51a953df88fc8a15e7357785.mp4 (Mode: scene) +Downloading d42fce05a4e23e32bd655ed431f2675b4b87300f51a953df88fc8a15e7357785.mp4 (3.89 MB)... +Processing: 5e5830fb96a3c4f7e0add.mp4 (Mode: scene) +Downloading 5e5830fb96a3c4f7e0add.mp4 (36.13 MB)... +Processing: 0h0sdxc22t7gh7l5mck8k_source.mp4 (Mode: scene) +Downloading 0h0sdxc22t7gh7l5mck8k_source.mp4 (7.82 MB)... +Processing: 0hie23dbzo5ra40otqfif_source.mp4 (Mode: scene) +Downloading 0hie23dbzo5ra40otqfif_source.mp4 (128.88 MB)... +Processing: 5e75a7582b2b05f4651da_source.mp4 (Mode: scene) +Downloading 5e75a7582b2b05f4651da_source.mp4 (42.19 MB)... +Processing: 0hp2huc5jzm6l5htbe1sd_source.mp4 (Mode: scene) +Downloading 0hp2huc5jzm6l5htbe1sd_source.mp4 (12.01 MB)... +Processing: 6b581915f29ab100bf781d436d8618bd659f7e3e6ac6b9a825c64c1d53eb0065.mp4 (Mode: scene) +Downloading 6b581915f29ab100bf781d436d8618bd659f7e3e6ac6b9a825c64c1d53eb0065.mp4 (304.00 MB)... +Processing: 9246f290ce388daef2fd77f2340303445887f2121618e418f3488798e7960adb.mp4 (Mode: scene) +Downloading 9246f290ce388daef2fd77f2340303445887f2121618e418f3488798e7960adb.mp4 (1.94 MB)... +Processing: 0htkmnd98rvtccr6iqu61_source.mp4 (Mode: scene) +Downloading 0htkmnd98rvtccr6iqu61_source.mp4 (17.02 MB)... +Processing: 42b0ffbf790e8e98b16adc8f147d6ff2cd499222010c89f044709673a6a78c26.mp4 (Mode: scene) +Downloading 42b0ffbf790e8e98b16adc8f147d6ff2cd499222010c89f044709673a6a78c26.mp4 (32.65 MB)... +Processing: House Confinement Project Revisited 6-6-(Babybell, Jessica Jensen)-{Bitchslapped}.mp4 (Mode: scene) +Downloading House Confinement Project Revisited 6-6-(Babybell, Jessica Jensen)-{Bitchslapped}.mp4 (8.25 MB)... +Processing: 0hlt2e1p83jh4dklnzpcj_source.mp4 (Mode: scene) +Downloading 0hlt2e1p83jh4dklnzpcj_source.mp4 (16.00 MB)... +Processing: 0hku7mpysn87366kjhpy6_source.mp4 (Mode: scene) +Downloading 0hku7mpysn87366kjhpy6_source.mp4 (14.08 MB)... +Processing: 0hby6s9564afuklo7dwrg_source.mp4 (Mode: scene) +Downloading 0hby6s9564afuklo7dwrg_source.mp4 (57.58 MB)... +Processing: House Confinement Project Revisited 6-6-(Babybell, Jessica Jensen)-{Bitchslapped}-[Blonde Hair (Female), Bondage Collar, Female Slave, Hidden Camera, Missing or Removed].mp4 (Mode: scene) +Downloading House Confinement Project Revisited 6-6-(Babybell, Jessica Jensen)-{Bitchslapped}-[Blonde Hair (Female), Bondage Collar, Female Slave, Hidden Camera, Missing or Removed].mp4 (8.25 MB)... +Processing: 963599a111d945df74e4f6cb35464945ac926c762bc3e7d60ef7bb82907e576b.mp4 (Mode: scene) +Downloading 963599a111d945df74e4f6cb35464945ac926c762bc3e7d60ef7bb82907e576b.mp4 (3.98 MB)... +Processing: 5db44895df4da2fe83d73.mp4 (Mode: scene) +Downloading 5db44895df4da2fe83d73.mp4 (32.65 MB)... +Processing: rBOkeBs9kYdZ7ZGGVe61a2ZVbzgWJ3HR.mp4 (Mode: scene) +Downloading rBOkeBs9kYdZ7ZGGVe61a2ZVbzgWJ3HR.mp4 (17.15 MB)... +Processing: 5d72e4f3d1149f622ca78eb3c73d5ba540d9286b06ac4ee3107196cd75969078.mp4 (Mode: scene) +Downloading 5d72e4f3d1149f622ca78eb3c73d5ba540d9286b06ac4ee3107196cd75969078.mp4 (19.36 MB)... +Processing: 5dae48ec1d5964ea85d42.mp4 (Mode: scene) +Downloading 5dae48ec1d5964ea85d42.mp4 (42.19 MB)... +Processing: 0gqcm900ggp2gcb9jc8au_source.mp4 (Mode: scene) +Downloading 0gqcm900ggp2gcb9jc8au_source.mp4 (44.54 MB)... +Processing: f7koMjjLtF5igRxn2Lqa4jRDduQfmlXt.mp4 (Mode: scene) +Downloading f7koMjjLtF5igRxn2Lqa4jRDduQfmlXt.mp4 (32.62 MB)... +Processing: 1456d8a94bfc9fa42d57597e95d499c319f02922765a474a52b5fdedddd51cfa.mp4 (Mode: scene) +Downloading 1456d8a94bfc9fa42d57597e95d499c319f02922765a474a52b5fdedddd51cfa.mp4 (10.86 MB)... +Processing: 782fd64afa088d05a1a4816caeff1d1708f46bb2b917f593719bf736acf1d7c9.mp4 (Mode: scene) +Downloading 782fd64afa088d05a1a4816caeff1d1708f46bb2b917f593719bf736acf1d7c9.mp4 (38.02 MB)... +Processing: 51890e8108a2155c35c278567af9a4399f96640ed8127f964d11435af408c744.mp4 (Mode: scene) +Downloading 51890e8108a2155c35c278567af9a4399f96640ed8127f964d11435af408c744.mp4 (18.30 MB)... +Processing: 5d7b27244329a4520a97c.mp4 (Mode: scene) +Downloading 5d7b27244329a4520a97c.mp4 (16.83 MB)... +Processing: ff9f4786da3317fa89fa78b004a0a2730a34db529eb9da41ca1fbaa46ad2409a.mp4 (Mode: scene) +Downloading ff9f4786da3317fa89fa78b004a0a2730a34db529eb9da41ca1fbaa46ad2409a.mp4 (20.82 MB)... +Processing: 653266f8b0831833c1185f9eeaf4d91b6ac67b30bdd2d1dbbd6fd03e5f0b5033.mp4 (Mode: scene) +Downloading 653266f8b0831833c1185f9eeaf4d91b6ac67b30bdd2d1dbbd6fd03e5f0b5033.mp4 (8.12 MB)... +Processing: 08082528e8d369e1c9da691a153ba782d5fa772ed2b7362b1d73a0e2d9e795d2.mp4 (Mode: scene) +Downloading 08082528e8d369e1c9da691a153ba782d5fa772ed2b7362b1d73a0e2d9e795d2.mp4 (17.65 MB)... +Processing: e322d225a95ec167a2322ca567738f771522fe47633ebaefb243fdd5cc796721.mp4 (Mode: scene) +Downloading e322d225a95ec167a2322ca567738f771522fe47633ebaefb243fdd5cc796721.mp4 (7.98 MB)... +Processing: 0hjf2l0ooz9lemk7a6xdf_source.mp4 (Mode: scene) +Downloading 0hjf2l0ooz9lemk7a6xdf_source.mp4 (9.87 MB)... +Processing: e6b6872ef48444a7f0497cb90b77dbd0da2f8b7ce79ade42ab655a046b062476.mp4 (Mode: scene) +Downloading e6b6872ef48444a7f0497cb90b77dbd0da2f8b7ce79ade42ab655a046b062476.mp4 (16.00 MB)... +Processing: 35858d523a5ff86281982da79738e72fcea993566b9a34de9cd7bb0acb8c157d.mp4 (Mode: scene) +Downloading 35858d523a5ff86281982da79738e72fcea993566b9a34de9cd7bb0acb8c157d.mp4 (14.37 MB)... +Processing: 0b93b231f83056ffca312d76826c98bf29db3a807c2ddbfa77d570f5943015f0.mp4 (Mode: scene) +Downloading 0b93b231f83056ffca312d76826c98bf29db3a807c2ddbfa77d570f5943015f0.mp4 (8.80 MB)... +Processing: 0hcihcs1hkdpcpsraxh9w_source.mp4 (Mode: scene) +Downloading 0hcihcs1hkdpcpsraxh9w_source.mp4 (1.36 MB)... +Processing: e05be8844ec3b3e34f210727f68165e9866df2ab2bbdb3dbdb968be05893cbb6.mp4 (Mode: scene) +Downloading e05be8844ec3b3e34f210727f68165e9866df2ab2bbdb3dbdb968be05893cbb6.mp4 (1129.25 MB)... +Processing: dc15a4a38965dc6bd546478ccc2633c8520e00470e2e0b8b322b6fea07518b35.mp4 (Mode: scene) +Downloading dc15a4a38965dc6bd546478ccc2633c8520e00470e2e0b8b322b6fea07518b35.mp4 (1159.43 MB)... +Processing: r3UjibKwfTu3qohFwUmFsVyqXQFIiveh.mp4 (Mode: scene) +Downloading r3UjibKwfTu3qohFwUmFsVyqXQFIiveh.mp4 (1.94 MB)... +Processing: 21cec0bd28176bd99369dc4372ec53703e9e9bbec7079b4a31ee619ec39e610c.mp4 (Mode: scene) +Downloading 21cec0bd28176bd99369dc4372ec53703e9e9bbec7079b4a31ee619ec39e610c.mp4 (232.00 MB)... +Processing: c050565d789233f532366cc366ed7a4b48d75dbec5ab8f7b9a109c7b76d5ba7e.mp4 (Mode: scene) +Downloading c050565d789233f532366cc366ed7a4b48d75dbec5ab8f7b9a109c7b76d5ba7e.mp4 (173.26 MB)... +Processing: ff6f3456d66f8920957b866c1147c9a15be9bde3c3ba9f98c18fe472c10099a1.mp4 (Mode: scene) +Downloading ff6f3456d66f8920957b866c1147c9a15be9bde3c3ba9f98c18fe472c10099a1.mp4 (20.00 MB)... +Processing: 0gt0m01ugl16w2m9vdz8q_source.mp4 (Mode: scene) +Downloading 0gt0m01ugl16w2m9vdz8q_source.mp4 (0.54 MB)... +Processing: b1a9887c0e9c34a56b154385fd1e44a04664c84161e315dff69d44b96d376ddd.mp4 (Mode: scene) +Downloading b1a9887c0e9c34a56b154385fd1e44a04664c84161e315dff69d44b96d376ddd.mp4 (10.75 MB)... +Processing: 5fbdb2c9e2903ae7cbdfa_source.mp4 (Mode: scene) +Downloading 5fbdb2c9e2903ae7cbdfa_source.mp4 (31.20 MB)... +Processing: 93b62fad73a1ef36ed9f20dc40b70c98d4ae3123a3cd976afb4bd594f9a92c02.mp4 (Mode: scene) +Downloading 93b62fad73a1ef36ed9f20dc40b70c98d4ae3123a3cd976afb4bd594f9a92c02.mp4 (9.34 MB)... +Processing: 0htylmw0mr8cyx3k9pxi0_source.mp4 (Mode: scene) +Downloading 0htylmw0mr8cyx3k9pxi0_source.mp4 (17.15 MB)... +Processing: 0hc1aovcds1hfrojjto9w_source.mp4 (Mode: scene) +Downloading 0hc1aovcds1hfrojjto9w_source.mp4 (30.03 MB)... +Processing: 0ho9tjoe8i2rvzme5pc19_source.mp4 (Mode: scene) +Downloading 0ho9tjoe8i2rvzme5pc19_source.mp4 (26.58 MB)... +Processing: 0hpy08822kx6srqztjtrq_source.mp4 (Mode: scene) +Downloading 0hpy08822kx6srqztjtrq_source.mp4 (9.82 MB)... +Processing: F2Iul0LX04D46Lm2EsYhhPkQ5JyeSgmt.mp4 (Mode: scene) +Downloading F2Iul0LX04D46Lm2EsYhhPkQ5JyeSgmt.mp4 (8.21 MB)... +Processing: c2d565db885b2463e5f31da8fbf40062289fa1eecfb78475d9dd3a5716f442b6.mp4 (Mode: scene) +Downloading c2d565db885b2463e5f31da8fbf40062289fa1eecfb78475d9dd3a5716f442b6.mp4 (10.77 MB)... +Processing: 0hoa2et5apw72f5u9fc2p_source.mp4 (Mode: scene) +Downloading 0hoa2et5apw72f5u9fc2p_source.mp4 (18.30 MB)... +Processing: ad014ca5c2f18aa1c8b5d359ec1cc5151c6b56f5fdea1ee6919f5b39104e43e0.mp4 (Mode: scene) +Downloading ad014ca5c2f18aa1c8b5d359ec1cc5151c6b56f5fdea1ee6919f5b39104e43e0.mp4 (0.54 MB)... +Processing: gpTJvvHAZTzLTYEIt5bdPwtmDUQZpm7D.mp4 (Mode: scene) +Downloading gpTJvvHAZTzLTYEIt5bdPwtmDUQZpm7D.mp4 (133.77 MB)... +Processing: 13f056624c3b6348ef6929bdd9910fd856a1296a6561b2903547280cb4e700ea.mp4 (Mode: scene) +Downloading 13f056624c3b6348ef6929bdd9910fd856a1296a6561b2903547280cb4e700ea.mp4 (996.68 MB)... +Processing: 5e4adff1ec15c37221f37.mp4 (Mode: scene) +Downloading 5e4adff1ec15c37221f37.mp4 (11.69 MB)... +Processing: 0gnlo85vskm9xs7f7phgp_source.mp4 (Mode: scene) +Downloading 0gnlo85vskm9xs7f7phgp_source.mp4 (44.50 MB)... +Processing: 6bd63ee899d9ccee95a10f67b954b3f10e06e5d7c030f690be1124159ab5d6e2.mp4 (Mode: scene) +Downloading 6bd63ee899d9ccee95a10f67b954b3f10e06e5d7c030f690be1124159ab5d6e2.mp4 (54.20 MB)... +Processing: 0h3tp7d9tjbj1419v73vd_source.mp4 (Mode: scene) +Downloading 0h3tp7d9tjbj1419v73vd_source.mp4 (19.89 MB)... +Processing: 54b6c60a7f5867066fb2c4c5a01de954af71b30adf7567bcc44392c53d25f9a8.mp4 (Mode: scene) +Downloading 54b6c60a7f5867066fb2c4c5a01de954af71b30adf7567bcc44392c53d25f9a8.mp4 (81.84 MB)... +Processing: 0hua8wy7gnkjo50wd4rll_source.mp4 (Mode: scene) +Downloading 0hua8wy7gnkjo50wd4rll_source.mp4 (19.36 MB)... +Processing: f6d860874f3adf36b000c1549c438326c789632ef3cf147055fe8f1f98a45a8f.mp4 (Mode: scene) +Downloading f6d860874f3adf36b000c1549c438326c789632ef3cf147055fe8f1f98a45a8f.mp4 (8.52 MB)... +Processing: bdcf2f5e09080209eb2a390d97f5a869371bf1b60735d92102029e57aed50fb1.mp4 (Mode: scene) +Downloading bdcf2f5e09080209eb2a390d97f5a869371bf1b60735d92102029e57aed50fb1.mp4 (8.35 MB)... +Processing: d56136988236f8f38c842a7a51b2427df70a804b6681bddaea56da21769bf4a5.mp4 (Mode: scene) +Downloading d56136988236f8f38c842a7a51b2427df70a804b6681bddaea56da21769bf4a5.mp4 (9.65 MB)... +Processing: 0hcezi2g4f4jbdk2yjrs4_source.mp4 (Mode: scene) +Downloading 0hcezi2g4f4jbdk2yjrs4_source.mp4 (477.01 MB)... +Processing: jTtvZamtS9FXNBI78QTvFxrvxtiHMocd.mp4 (Mode: scene) +Downloading jTtvZamtS9FXNBI78QTvFxrvxtiHMocd.mp4 (15.04 MB)... +Processing: 237372d74f9ad4055db6718cf4f9371f948963afeb863dab18909d50c61f3d92.mp4 (Mode: scene) +Downloading 237372d74f9ad4055db6718cf4f9371f948963afeb863dab18909d50c61f3d92.mp4 (12.11 MB)... +Processing: 5dcd49a0d0a0c822b6d34.mp4 (Mode: scene) +Downloading 5dcd49a0d0a0c822b6d34.mp4 (671.63 MB)... +Processing: 5e4addd4c0b225479ddd3.mp4 (Mode: scene) +Downloading 5e4addd4c0b225479ddd3.mp4 (81.84 MB)... +Processing: 0hmq9a40dx8ti2djkio0q_source.mp4 (Mode: scene) +Downloading 0hmq9a40dx8ti2djkio0q_source.mp4 (14.37 MB)... +Processing: 0hku40qh7rg9ff2pqfuyr_source.mp4 (Mode: scene) +Downloading 0hku40qh7rg9ff2pqfuyr_source.mp4 (25.81 MB)... +Processing: 3429410cc5d112d964ff424400b4c93d34b1e7cdd46aca3ca80ea03158542cb3.mp4 (Mode: scene) +Downloading 3429410cc5d112d964ff424400b4c93d34b1e7cdd46aca3ca80ea03158542cb3.mp4 (17.83 MB)... +Processing: JBM4H10deFBeD0vmRPZMVvka4LufIQYX.mp4 (Mode: scene) +Downloading JBM4H10deFBeD0vmRPZMVvka4LufIQYX.mp4 (9.65 MB)... +Processing: 4706391f9ec68bc83d501958b77f3e80d04a7318895b7a9f1502602ee91d0dfe.mp4 (Mode: scene) +Downloading 4706391f9ec68bc83d501958b77f3e80d04a7318895b7a9f1502602ee91d0dfe.mp4 (9.82 MB)... +Processing: 0hr5md57110cvxmhwwahr_source.mp4 (Mode: scene) +Downloading 0hr5md57110cvxmhwwahr_source.mp4 (12.92 MB)... +Processing: b46d0ebb24a16a7e6b502003fee7a5c5cee8b10de2fdf4621a69e93338b23da5.mp4 (Mode: scene) +Downloading b46d0ebb24a16a7e6b502003fee7a5c5cee8b10de2fdf4621a69e93338b23da5.mp4 (916.94 MB)... +Processing: 0gqz0zqlnuc3vwk37sfpx_source.mp4 (Mode: scene) +Downloading 0gqz0zqlnuc3vwk37sfpx_source.mp4 (99.73 MB)... +Processing: tEv9EebtMu6bQGmdozOg78qltz3XxqBi.mp4 (Mode: scene) +Downloading tEv9EebtMu6bQGmdozOg78qltz3XxqBi.mp4 (8.53 MB)... +Processing: 040add5030963e4413c83a2334d773c3d5ebf660592e42a72bc772301660ce4f.mp4 (Mode: scene) +Downloading 040add5030963e4413c83a2334d773c3d5ebf660592e42a72bc772301660ce4f.mp4 (40.00 MB)... +Processing: 7zOP5tEiQHBY808P5bJnvvANRhs2CezA.mp4 (Mode: scene) +Downloading 7zOP5tEiQHBY808P5bJnvvANRhs2CezA.mp4 (49.49 MB)... +Processing: 0hk1bu5pvxjf28pq1vaqd_source.mp4 (Mode: scene) +Downloading 0hk1bu5pvxjf28pq1vaqd_source.mp4 (7.55 MB)... +Processing: 92aa9c0b3833f25703a069d2a96d02d285f335f902502b3b775e8bf916195af9.mp4 (Mode: scene) +Downloading 92aa9c0b3833f25703a069d2a96d02d285f335f902502b3b775e8bf916195af9.mp4 (17.28 MB)... +Processing: 0hukrxe8nzll3jicxpjj7_source.mp4 (Mode: scene) +Downloading 0hukrxe8nzll3jicxpjj7_source.mp4 (15.23 MB)... +Processing: 71d63dc5f87bb287276d9b5d74fc307db2592f16541f4d92d4ec9f1cbd8ed737.mp4 (Mode: scene) +Downloading 71d63dc5f87bb287276d9b5d74fc307db2592f16541f4d92d4ec9f1cbd8ed737.mp4 (42.19 MB)... +Processing: SjmmTYhvfThWbZNqWKRW2O8nacNFcIev.mp4 (Mode: scene) +Downloading SjmmTYhvfThWbZNqWKRW2O8nacNFcIev.mp4 (27.90 MB)... +Processing: d3a2e7809480e25b7cd2963b505e3c9737276d98d475bbd5ca23e29ecd71baa8.mp4 (Mode: scene) +Downloading d3a2e7809480e25b7cd2963b505e3c9737276d98d475bbd5ca23e29ecd71baa8.mp4 (17.15 MB)... +Processing: 7ffe870253c34fd92bb80e2423e812eb0a7f3cffd719940116f118eb3b9cc94a.mp4 (Mode: scene) +Downloading 7ffe870253c34fd92bb80e2423e812eb0a7f3cffd719940116f118eb3b9cc94a.mp4 (10.51 MB)... +Processing: c636073a0d4ab68e835ac1ae16b6eda596aeffc51d561035f9360458224c2a0c.mp4 (Mode: scene) +Downloading c636073a0d4ab68e835ac1ae16b6eda596aeffc51d561035f9360458224c2a0c.mp4 (4.19 MB)... +Processing: 0hhkgguid2kgm417r1zcb_source.mp4 (Mode: scene) +Downloading 0hhkgguid2kgm417r1zcb_source.mp4 (8.12 MB)... +Processing: 70a3f8bd70174a9e05e7d2f66a3fe6d2d2d9bc51ff81ba37410a48c7da4576fe.mp4 (Mode: scene) +Downloading 70a3f8bd70174a9e05e7d2f66a3fe6d2d2d9bc51ff81ba37410a48c7da4576fe.mp4 (11.11 MB)... +Processing: 4c2edfbf8933ce3c39a75c636e729e4dc8de0c32c59e6b377f5a9cb91237bbc4.mp4 (Mode: scene) +Downloading 4c2edfbf8933ce3c39a75c636e729e4dc8de0c32c59e6b377f5a9cb91237bbc4.mp4 (8.66 MB)... +Processing: 6ca7098b0cbcda61eb8d918d64e078901482219a8028f30c1b883bd9c0c5c8ec.mp4 (Mode: scene) +Downloading 6ca7098b0cbcda61eb8d918d64e078901482219a8028f30c1b883bd9c0c5c8ec.mp4 (12.92 MB)... +Processing: 9913c66fae3d327e19cf36475b797bbe518dc53bb07c238b4b1f8e3c5932ca7b.mp4 (Mode: scene) +Downloading 9913c66fae3d327e19cf36475b797bbe518dc53bb07c238b4b1f8e3c5932ca7b.mp4 (8.06 MB)... +Processing: 1272d813c1e7756596d723f6e1234fddb2ff7c7fad96af33fd9935278465e175.mp4 (Mode: scene) +Downloading 1272d813c1e7756596d723f6e1234fddb2ff7c7fad96af33fd9935278465e175.mp4 (18.17 MB)... +Processing: a093a9ae509ee48750a1f3f439ffbfa231dd2f8ec94fbc13349ae59e59da6ae8.mp4 (Mode: scene) +Downloading a093a9ae509ee48750a1f3f439ffbfa231dd2f8ec94fbc13349ae59e59da6ae8.mp4 (15.23 MB)... +Processing: 890515c5b5e8d0424bd5ef9226463ef081ba8d1aa6a4f889b78eff8dca25840a.mp4 (Mode: scene) +Downloading 890515c5b5e8d0424bd5ef9226463ef081ba8d1aa6a4f889b78eff8dca25840a.mp4 (7.18 MB)... +Processing: 5e9697d06a369290bbb99_source.mp4 (Mode: scene) +Downloading 5e9697d06a369290bbb99_source.mp4 (172.24 MB)... +Processing: 43e5bb825bcc58af14e194551cbbb8d337235fc83f65b4301e9db13da5e647e4.mp4 (Mode: scene) +Downloading 43e5bb825bcc58af14e194551cbbb8d337235fc83f65b4301e9db13da5e647e4.mp4 (16.01 MB)... +Processing: 1b4604d8f342d8ee50b2757e737dcd8150d8baae34aa951e05200e91a6e8bde4.mp4 (Mode: scene) +Downloading 1b4604d8f342d8ee50b2757e737dcd8150d8baae34aa951e05200e91a6e8bde4.mp4 (10.09 MB)... +Processing: 5e96abd750a7969b2b3e1_source.mp4 (Mode: scene) +Downloading 5e96abd750a7969b2b3e1_source.mp4 (140.54 MB)... +Processing: 0h0ubpdcrra0fbdyh9y21_source.mp4 (Mode: scene) +Downloading 0h0ubpdcrra0fbdyh9y21_source.mp4 (19.83 MB)... +Processing: 8f4c5449f71d73414ef008b24c76532512a674bb2736b6641d187bc4429835dc.mp4 (Mode: scene) +Downloading 8f4c5449f71d73414ef008b24c76532512a674bb2736b6641d187bc4429835dc.mp4 (18.89 MB)... +Processing: omzMbOhBeV0GYqm4vbExqlL6HukFeOKr.mp4 (Mode: scene) +Downloading omzMbOhBeV0GYqm4vbExqlL6HukFeOKr.mp4 (818.45 MB)... +Processing: 0h6plnpwtve2t1jml85na_source.mp4 (Mode: scene) +Downloading 0h6plnpwtve2t1jml85na_source.mp4 (7.68 MB)... +Processing: 5a803ecfb4006640d9fda56690e5cda7c9ffb50557aed09581e9a4f5fa8655c1.mp4 (Mode: scene) +Downloading 5a803ecfb4006640d9fda56690e5cda7c9ffb50557aed09581e9a4f5fa8655c1.mp4 (11.69 MB)... +Processing: 603dffa5ff6a450238f245405252f446c88935bb0d2824c59ab2edbc5ded8c6f.mp4 (Mode: scene) +Downloading 603dffa5ff6a450238f245405252f446c88935bb0d2824c59ab2edbc5ded8c6f.mp4 (128.88 MB)... +Processing: 0hldqas7lmylup776650b_source.mp4 (Mode: scene) +Downloading 0hldqas7lmylup776650b_source.mp4 (9.58 MB)... +Processing: cb45f0ef38b86d6a16e09290f01357279cfebf00596767b1b20fc5c8e35f112b.mp4 (Mode: scene) +Downloading cb45f0ef38b86d6a16e09290f01357279cfebf00596767b1b20fc5c8e35f112b.mp4 (25.81 MB)... +Processing: 0htduijax6m9zq1t6p1tp_source.mp4 (Mode: scene) +Downloading 0htduijax6m9zq1t6p1tp_source.mp4 (38.02 MB)... +Processing: 0h2v5o1uke89bz05w5370_source.mp4 (Mode: scene) +Downloading 0h2v5o1uke89bz05w5370_source.mp4 (27.17 MB)... +Processing: aeb82c5797ba2badfd41052f593a38eeb03d59b788c9873666e2d817ae093d5c.mp4 (Mode: scene) +Downloading aeb82c5797ba2badfd41052f593a38eeb03d59b788c9873666e2d817ae093d5c.mp4 (7.06 MB)... +Processing: BBW Nun Katie Cummings.mp4.mp4 (Mode: scene) +Downloading BBW Nun Katie Cummings.mp4.mp4 (916.94 MB)... +Processing: 0hukqu0m6fbh6sw01z2pe_source.mp4 (Mode: scene) +Downloading 0hukqu0m6fbh6sw01z2pe_source.mp4 (17.03 MB)... +Processing: 69b67d2924409392c5fcd99f54c3aa60eda23ccb803b1ac46d0bfd18dcf41ade.mp4 (Mode: scene) +Downloading 69b67d2924409392c5fcd99f54c3aa60eda23ccb803b1ac46d0bfd18dcf41ade.mp4 (15.12 MB)... +Processing: 4e5ff40785947f13f17e6387169f48de2f52c2402daad44398a7e03dd94cfc1c.mp4 (Mode: scene) +Downloading 4e5ff40785947f13f17e6387169f48de2f52c2402daad44398a7e03dd94cfc1c.mp4 (8.53 MB)... +Processing: a84e4dfe7b94fa09e8a1baaf59b6501716d211222bfd0665978e1e6eee783788.mp4 (Mode: scene) +Downloading a84e4dfe7b94fa09e8a1baaf59b6501716d211222bfd0665978e1e6eee783788.mp4 (7.99 MB)... +Processing: 5dd971a1dcb63f55f0fac.mp4 (Mode: scene) +Downloading 5dd971a1dcb63f55f0fac.mp4 (173.26 MB)... +Processing: 0hj51909qla5u7f45cwq2_source.mp4 (Mode: scene) +Downloading 0hj51909qla5u7f45cwq2_source.mp4 (10.77 MB)... +Processing: d45f59b83cbf5c79ef09f4a9b72a894521f8a43ce2b5b5a8f242de149ab2b95d.mp4 (Mode: scene) +Downloading d45f59b83cbf5c79ef09f4a9b72a894521f8a43ce2b5b5a8f242de149ab2b95d.mp4 (44.49 MB)... +Processing: 282121a1f47575bc3fcb1fa4513e5b9f75557ab9a4cb75c00cd90ebca825913c.mp4 (Mode: scene) +Downloading 282121a1f47575bc3fcb1fa4513e5b9f75557ab9a4cb75c00cd90ebca825913c.mp4 (42.19 MB)... +Processing: 87f207826227c507a5ebc392d256c1fda89568098de08121c34df2c7652d00d0.mp4 (Mode: scene) +Downloading 87f207826227c507a5ebc392d256c1fda89568098de08121c34df2c7652d00d0.mp4 (9.58 MB)... +Processing: 0hlna3871ysn5no0e2gy2_source.mp4 (Mode: scene) +Downloading 0hlna3871ysn5no0e2gy2_source.mp4 (8.52 MB)... +Processing: 0hpf8mp2bhda9g1jjoq0p_source.mp4 (Mode: scene) +Downloading 0hpf8mp2bhda9g1jjoq0p_source.mp4 (9.27 MB)... +Processing: 0hctwrgvfttpgknr9xmy0_source.mp4 (Mode: scene) +Downloading 0hctwrgvfttpgknr9xmy0_source.mp4 (158.84 MB)... +Processing: 0a0299b4cab08790c239dde42d6fd2dcb8fff31f309463c62da943ccc08a8ac5.mp4 (Mode: scene) +Downloading 0a0299b4cab08790c239dde42d6fd2dcb8fff31f309463c62da943ccc08a8ac5.mp4 (79.27 MB)... +Processing: 59fd966d93c8b167dba920a726533e86014c2f0c10999a96cf662525bdec8cc4.mp4 (Mode: scene) +Downloading 59fd966d93c8b167dba920a726533e86014c2f0c10999a96cf662525bdec8cc4.mp4 (5.13 MB)... +Processing: d77b136074f17ba806fe6e906927c9373ce668bb59fef36a0f689fcdbbc42c56.mp4 (Mode: scene) +Downloading d77b136074f17ba806fe6e906927c9373ce668bb59fef36a0f689fcdbbc42c56.mp4 (15.84 MB)... +Processing: 0gt0jqyirc1g3kukhg3z4_source.mp4 (Mode: scene) +Downloading 0gt0jqyirc1g3kukhg3z4_source.mp4 (4.19 MB)... +Processing: 5e5832e4282b6f4408530.mp4 (Mode: scene) +Downloading 5e5832e4282b6f4408530.mp4 (176.06 MB)... +Processing: 81b212d66cbf9dc5a9c048dbd6dc0c604e0a56c6487fe083ee11a957b8baf2a3.mp4 (Mode: scene) +Downloading 81b212d66cbf9dc5a9c048dbd6dc0c604e0a56c6487fe083ee11a957b8baf2a3.mp4 (8.31 MB)... +Processing: 4d6e485472ceb9c42d878b945b2820e7eb01fd695debbb96be17da090882ac26.mp4 (Mode: scene) +Downloading 4d6e485472ceb9c42d878b945b2820e7eb01fd695debbb96be17da090882ac26.mp4 (13.61 MB)... +Processing: 0hj516lrkzwu86q8gttl9_source.mp4 (Mode: scene) +Downloading 0hj516lrkzwu86q8gttl9_source.mp4 (9.46 MB)... +Processing: 60b49e84ea1a093581a6b730f75f6dca2b52f9042bcaf0d3a4c84af06b057da6.mp4 (Mode: scene) +Downloading 60b49e84ea1a093581a6b730f75f6dca2b52f9042bcaf0d3a4c84af06b057da6.mp4 (10.83 MB)... +Processing: 0hlozca8u9w8hkwxlsozk_source.mp4 (Mode: scene) +Downloading 0hlozca8u9w8hkwxlsozk_source.mp4 (30.49 MB)... +Processing: (JOI) Boob Appreciation-(Katie Cummings).mp4 (Mode: scene) +Downloading (JOI) Boob Appreciation-(Katie Cummings).mp4 (211.74 MB)... +Processing: 0h0ubnbofhiv3y8vcyfvu_source.mp4 (Mode: scene) +Downloading 0h0ubnbofhiv3y8vcyfvu_source.mp4 (11.11 MB)... +Processing: WdthxiWgkE48hlI1BzUQP0hWbCA0o0kU.mp4 (Mode: scene) +Downloading WdthxiWgkE48hlI1BzUQP0hWbCA0o0kU.mp4 (7.06 MB)... +Processing: 5e4addbb90a53354be9f3.mp4 (Mode: scene) +Downloading 5e4addbb90a53354be9f3.mp4 (20.79 MB)... +Processing: d5f231bcd03fe8a245eb5709f3328613b123a40ea3bbed7f9165ee71d6bec36b.mp4 (Mode: scene) +Downloading d5f231bcd03fe8a245eb5709f3328613b123a40ea3bbed7f9165ee71d6bec36b.mp4 (211.74 MB)... +Processing: 836f7db797bbe7c92a80358ca50c5502ff0f0a585a8423448583d088e8ba569c.mp4 (Mode: scene) +Downloading 836f7db797bbe7c92a80358ca50c5502ff0f0a585a8423448583d088e8ba569c.mp4 (49.49 MB)... +Processing: 0gswb7ykxj39zs2zkzgpk_source.mp4 (Mode: scene) +Downloading 0gswb7ykxj39zs2zkzgpk_source.mp4 (10.83 MB)... +Processing: 0hlp73ozjmzsff2sp7e4c_source.mp4 (Mode: scene) +Downloading 0hlp73ozjmzsff2sp7e4c_source.mp4 (76.50 MB)... +Processing: 0hh9on5xvc4tbjgpgp15x_source.mp4 (Mode: scene) +Downloading 0hh9on5xvc4tbjgpgp15x_source.mp4 (5.24 MB)... +Processing: 0hh7nb4tyo2dmb5ibi9s5_source.mp4 (Mode: scene) +Downloading 0hh7nb4tyo2dmb5ibi9s5_source.mp4 (7.18 MB)... +Processing: 0hiufmwmqi2ermkrrujhy_source.mp4 (Mode: scene) +Downloading 0hiufmwmqi2ermkrrujhy_source.mp4 (12.11 MB)... +Processing: e574c4aae0d7b79f196fcb3b368deddce8402c9985846a88a1c91f12e08bf06d.mp4 (Mode: scene) +Downloading e574c4aae0d7b79f196fcb3b368deddce8402c9985846a88a1c91f12e08bf06d.mp4 (84.00 MB)... +Processing: 9213906c01a1b1bd0238cd7d888503f4d8409e135ac302928c140cd4bc686a53.mp4 (Mode: scene) +Downloading 9213906c01a1b1bd0238cd7d888503f4d8409e135ac302928c140cd4bc686a53.mp4 (12.46 MB)... +Processing: 6ed0265da4acf323ca7b434d18c6983749773c6362d9c5fb8f23c9614cbd5977.mp4 (Mode: scene) +Downloading 6ed0265da4acf323ca7b434d18c6983749773c6362d9c5fb8f23c9614cbd5977.mp4 (5.24 MB)... +Processing: 0gxcuaq7zm96mede92c0d_source.mp4 (Mode: scene) +Downloading 0gxcuaq7zm96mede92c0d_source.mp4 (7.83 MB)... +Processing: e2837cc9b71074289a9d687198c15e4dd4c902a7e7c1f8133ec77ea67e95dc65.mp4 (Mode: scene) +Downloading e2837cc9b71074289a9d687198c15e4dd4c902a7e7c1f8133ec77ea67e95dc65.mp4 (16.00 MB)... +Processing: 0ea78ec6bb252919fc6fbc6213d1669f2cd68098519043c304e72f8d214e0e60.mp4 (Mode: scene) +Downloading 0ea78ec6bb252919fc6fbc6213d1669f2cd68098519043c304e72f8d214e0e60.mp4 (152.00 MB)... +Processing: 0hnlu4ihctsjo46nszkxn_source.mp4 (Mode: scene) +Downloading 0hnlu4ihctsjo46nszkxn_source.mp4 (17.52 MB)... +Processing: 0hojggvzp538cyy946btc_source.mp4 (Mode: scene) +Downloading 0hojggvzp538cyy946btc_source.mp4 (7.75 MB)... +Processing: 6515a3d2414f9bc6c59536d2474e476e5d3cc72d6aef44124008be89e222f363.mov (Mode: scene) +Downloading 6515a3d2414f9bc6c59536d2474e476e5d3cc72d6aef44124008be89e222f363.mov (274.12 MB)... +Processing: 54995bf8a96435b83fbd83e2156af1d3e88ce81c0cb16ab509f2d3d098b102ce.mp4 (Mode: scene) +Downloading 54995bf8a96435b83fbd83e2156af1d3e88ce81c0cb16ab509f2d3d098b102ce.mp4 (26.58 MB)... +Processing: ewOJiMhMBSxxBrDZ0Dz4veZ1QY2V9MnB.mp4 (Mode: scene) +Downloading ewOJiMhMBSxxBrDZ0Dz4veZ1QY2V9MnB.mp4 (79.27 MB)... +Processing: 0ho74ynountp5lj87guxi_source.mp4 (Mode: scene) +Downloading 0ho74ynountp5lj87guxi_source.mp4 (20.62 MB)... +Processing: 0gxee6gly7r80abpfu696_source.mp4 (Mode: scene) +Downloading 0gxee6gly7r80abpfu696_source.mp4 (317.21 MB)... +Processing: Y3h87IzU9wuzxN0kexQ2GQGIlDjiruxq.mp4 (Mode: scene) +Downloading Y3h87IzU9wuzxN0kexQ2GQGIlDjiruxq.mp4 (782.04 MB)... +Processing: 10cbf6e4ca892ddac89e7f3361e080c924e76ec8ff38247166951bb20627506e.mp4 (Mode: scene) +Downloading 10cbf6e4ca892ddac89e7f3361e080c924e76ec8ff38247166951bb20627506e.mp4 (4.00 MB)... +Processing: 6df6aed926f643fed6646790983ed50d16b2006b2b70433f841b097bffd4bdc5.mp4 (Mode: scene) +Downloading 6df6aed926f643fed6646790983ed50d16b2006b2b70433f841b097bffd4bdc5.mp4 (99.73 MB)... +Processing: 93c0768822473ebe6a027895e0836192c9df38272a5b1121ae79b6fe820e6b59.mp4 (Mode: scene) +Downloading 93c0768822473ebe6a027895e0836192c9df38272a5b1121ae79b6fe820e6b59.mp4 (24.00 MB)... +Processing: e678d29e879ad2ff433c5b3f7c398ede9e8d3392e65af837934185f5dd50106f.mp4 (Mode: scene) +Downloading e678d29e879ad2ff433c5b3f7c398ede9e8d3392e65af837934185f5dd50106f.mp4 (20.79 MB)... +Processing: ef376eb63c8d1616194545398e3e28bf095879f60340b244836f73004740bdb4.mp4 (Mode: scene) +Downloading ef376eb63c8d1616194545398e3e28bf095879f60340b244836f73004740bdb4.mp4 (32.62 MB)... +Processing: Katie Cummings - In front of a webcam stripping and masturbating.mp4 (Mode: scene) +Downloading Katie Cummings - In front of a webcam stripping and masturbating.mp4 (1487.19 MB)... +Processing: 0hraktsjzdo36tvdyapwy_source.mp4 (Mode: scene) +Downloading 0hraktsjzdo36tvdyapwy_source.mp4 (14.46 MB)... +Processing: 289f495ec7844a19086279d50380437f82c6ba5b182254af0850b34ea4f07cc4.mp4 (Mode: scene) +Downloading 289f495ec7844a19086279d50380437f82c6ba5b182254af0850b34ea4f07cc4.mp4 (172.24 MB)... +Processing: ab519eea806f819397e1021aed142173b0f6d4c89eb2ada829db117496a02828.mp4 (Mode: scene) +Downloading ab519eea806f819397e1021aed142173b0f6d4c89eb2ada829db117496a02828.mp4 (36.13 MB)... +Processing: 0hchregbporoflp5cqkr0_source.mp4 (Mode: scene) +Downloading 0hchregbporoflp5cqkr0_source.mp4 (12.78 MB)... +Processing: 5dfb0f40e3d628194aed6.mp4 (Mode: scene) +Downloading 5dfb0f40e3d628194aed6.mp4 (84.87 MB)... +Processing: d970b0fb995e963b5816b44d14cbc29cb752872a22558f321843dbead141b3f1.mp4 (Mode: scene) +Downloading d970b0fb995e963b5816b44d14cbc29cb752872a22558f321843dbead141b3f1.mp4 (7.83 MB)... +Processing: 0hr5rl0mhllug7lpkk15s_source.mp4 (Mode: scene) +Downloading 0hr5rl0mhllug7lpkk15s_source.mp4 (5.13 MB)... +Processing: 46ed51d0f09b774fa8177b7ba9ba9d61a06bcd210ba3ed98aaa0859ffa60cd98.mp4 (Mode: scene) +Downloading 46ed51d0f09b774fa8177b7ba9ba9d61a06bcd210ba3ed98aaa0859ffa60cd98.mp4 (716.09 MB)... +Processing: 5167a3111166b76d5c3a01dbeb687daa6171d9e2d0e1a54f87165c6c9b04b08c.mp4 (Mode: scene) +Downloading 5167a3111166b76d5c3a01dbeb687daa6171d9e2d0e1a54f87165c6c9b04b08c.mp4 (35.86 MB)... +Processing: 0e67aff9e527a2a58c06ff0c2805d867b40cdfd5b29fe3a16433b9f10fe60674.mp4 (Mode: scene) +Downloading 0e67aff9e527a2a58c06ff0c2805d867b40cdfd5b29fe3a16433b9f10fe60674.mp4 (10.16 MB)... +Processing: 5eaa03899a26ac7031ca1_source.mp4 (Mode: scene) +Downloading 5eaa03899a26ac7031ca1_source.mp4 (18.17 MB)... +Processing: 0hnow6zpyywb612p08joq_source.mp4 (Mode: scene) +Downloading 0hnow6zpyywb612p08joq_source.mp4 (16.19 MB)... +Processing: dc87c9c956fe5e06718e00b47bc0fc6cd070f3b671c693127560a83fb89d35a8.mp4 (Mode: scene) +Downloading dc87c9c956fe5e06718e00b47bc0fc6cd070f3b671c693127560a83fb89d35a8.mp4 (19.83 MB)... +Processing: ffb155392a17bc16e6c24d8e02087a89f4e21c471e1048f0845e614c27e2323e.mp4 (Mode: scene) +Downloading ffb155392a17bc16e6c24d8e02087a89f4e21c471e1048f0845e614c27e2323e.mp4 (158.84 MB)... +Processing: 0hlncg97id72ohbuefdah_source.mp4 (Mode: scene) +Downloading 0hlncg97id72ohbuefdah_source.mp4 (15.12 MB)... +Processing: e61733970946e1eef5b156f32b73b1cff599e1bf45b9ce0a3419dd8dcfbd2f9b.mp4 (Mode: scene) +Downloading e61733970946e1eef5b156f32b73b1cff599e1bf45b9ce0a3419dd8dcfbd2f9b.mp4 (1.36 MB)... +Processing: 0hijnedwc8p1llm9tv8vf_source.mp4 (Mode: scene) +Downloading 0hijnedwc8p1llm9tv8vf_source.mp4 (15.84 MB)... +Processing: 0gnmteopcflkr98gz6j5j_source.mp4 (Mode: scene) +Downloading 0gnmteopcflkr98gz6j5j_source.mp4 (113.74 MB)... +Processing: 6a73f0806eba459a9773aadc4cdcfc877efb8f720a0e22d23ba76826949be4d4.mp4 (Mode: scene) +Downloading 6a73f0806eba459a9773aadc4cdcfc877efb8f720a0e22d23ba76826949be4d4.mp4 (6.48 MB)... +Processing: 573eb558d56d6a4e9464f703d7ef76586480d6d683fcac8717874fda769ee4e8.mp4 (Mode: scene) +Downloading 573eb558d56d6a4e9464f703d7ef76586480d6d683fcac8717874fda769ee4e8.mp4 (782.04 MB)... +Processing: 288e3ee332b797006a655c318be401cd9c1d2a10864d44d5b53335d6013d3dc3.mp4 (Mode: scene) +Downloading 288e3ee332b797006a655c318be401cd9c1d2a10864d44d5b53335d6013d3dc3.mp4 (44.50 MB)... +Processing: 0hnoubs7togkbzx2lf6a8_source.mp4 (Mode: scene) +Downloading 0hnoubs7togkbzx2lf6a8_source.mp4 (20.82 MB)... +Processing: 50acaddac7305563d1bccffe14fa7f5ffa92780a8f29c9b48c13dc211e60521a.mp4 (Mode: scene) +Downloading 50acaddac7305563d1bccffe14fa7f5ffa92780a8f29c9b48c13dc211e60521a.mp4 (7.55 MB)... +Processing: c825a2a59c7b2a386744fb2b5ee624de.mp4 (Mode: scene) +Downloading c825a2a59c7b2a386744fb2b5ee624de.mp4 (0.83 MB)... +Processing: 0h1i644xavbspg3e1hgol_source.mp4 (Mode: scene) +Downloading 0h1i644xavbspg3e1hgol_source.mp4 (7.99 MB)... +Processing: 10f457e3ad85ce084663680c9397f611638758df623ed757bb21216b8ff517c5.mp4 (Mode: scene) +Downloading 10f457e3ad85ce084663680c9397f611638758df623ed757bb21216b8ff517c5.mp4 (7.89 MB)... +Processing: 0ho55n7xho7oayhaoeux0_source.mp4 (Mode: scene) +Downloading 0ho55n7xho7oayhaoeux0_source.mp4 (8.31 MB)... +Processing: 0hcaek5l8rt7861ryiqwl_source.mp4 (Mode: scene) +Downloading 0hcaek5l8rt7861ryiqwl_source.mp4 (29.32 MB)... +Processing: P2AIu50ZS8kCGWhnrhMbJToWnraZkp93.mp4 (Mode: scene) +Downloading P2AIu50ZS8kCGWhnrhMbJToWnraZkp93.mp4 (6.48 MB)... +Processing: 9f31a512a6a6940090ed6cea3f1be07a78726d98751903f65f1196014baad8de.mp4 (Mode: scene) +Downloading 9f31a512a6a6940090ed6cea3f1be07a78726d98751903f65f1196014baad8de.mp4 (9.87 MB)... +Processing: b92de22e062eca2b4d4dc39a5c94f4e8f0403849b195fc554d7688ed4eae87dd.mp4 (Mode: scene) +Downloading b92de22e062eca2b4d4dc39a5c94f4e8f0403849b195fc554d7688ed4eae87dd.mp4 (44.54 MB)... +Processing: 1d35e225de5a7ea5852d9562ddf85ff3afbd61ea54ceeef57c14bb52f76fd30c.mp4 (Mode: scene) +Downloading 1d35e225de5a7ea5852d9562ddf85ff3afbd61ea54ceeef57c14bb52f76fd30c.mp4 (8.21 MB)... +Processing: 0hnk9st8vkdtynietokzi_source.mp4 (Mode: scene) +Downloading 0hnk9st8vkdtynietokzi_source.mp4 (16.01 MB)... +Processing: b77f95ac8ba399c2cf25f21f6a86ba1ce8eaed2ed95f6e001f3b52d6ff60d97c.mp4 (Mode: scene) +Downloading b77f95ac8ba399c2cf25f21f6a86ba1ce8eaed2ed95f6e001f3b52d6ff60d97c.mp4 (57.58 MB)... +Processing: b635463517238eaf7d724583ebdffd6b23e4bc3f1da16569e55657a8b1fda847.mp4 (Mode: scene) +Downloading b635463517238eaf7d724583ebdffd6b23e4bc3f1da16569e55657a8b1fda847.mp4 (72.00 MB)... +Processing: ff6a5e1bffeba9b60f69922d1c36cb11db3e57582a79abbebba1b769f6e0d7f9.mp4 (Mode: scene) +Downloading ff6a5e1bffeba9b60f69922d1c36cb11db3e57582a79abbebba1b769f6e0d7f9.mp4 (20.62 MB)... +Processing: ba9508e9d5e2da30877ca80d4dc64c1493fa019e6969ac4288f8cd5d9f24676e.mp4 (Mode: scene) +Downloading ba9508e9d5e2da30877ca80d4dc64c1493fa019e6969ac4288f8cd5d9f24676e.mp4 (7.68 MB)... +Processing: e7494cf27ee789a7b4e165b2fb5eea854414131ffabfb473eb5371088eb8f29d.mp4 (Mode: scene) +Downloading e7494cf27ee789a7b4e165b2fb5eea854414131ffabfb473eb5371088eb8f29d.mp4 (18.10 MB)... +Processing: 0hix127u5g799dhjtgs4n_source.mp4 (Mode: scene) +Downloading 0hix127u5g799dhjtgs4n_source.mp4 (10.75 MB)... +Processing: 1fb8c4560c36cdb7b5b4ab03c2c0607405beac0e661786b9babf45cd8cc95e29.mp4 (Mode: scene) +Downloading 1fb8c4560c36cdb7b5b4ab03c2c0607405beac0e661786b9babf45cd8cc95e29.mp4 (264.00 MB)... +Processing: 0hprxdlck1qofv7i49xc0_source.mp4 (Mode: scene) +Downloading 0hprxdlck1qofv7i49xc0_source.mp4 (12.46 MB)... +Processing: d4363a12316510c6d1e308cf0a609b6bcc150296a5d6dded166d6942c19a4489.mp4 (Mode: scene) +Downloading d4363a12316510c6d1e308cf0a609b6bcc150296a5d6dded166d6942c19a4489.mp4 (76.50 MB)... +Processing: 1a90cd17f8fce238867056d900100231b56211ad9e95d1635c1fa20b84ce85a1.mp4 (Mode: scene) +Downloading 1a90cd17f8fce238867056d900100231b56211ad9e95d1635c1fa20b84ce85a1.mp4 (0.65 MB)... +Processing: PQVfUAOEsGG0fguPCwi8OHrfRrZc16RO.mp4 (Mode: scene) +Downloading PQVfUAOEsGG0fguPCwi8OHrfRrZc16RO.mp4 (38.82 MB)... +Processing: 0hoajhpdwepedj0js7jld_source.mp4 (Mode: scene) +Downloading 0hoajhpdwepedj0js7jld_source.mp4 (39.61 MB)... +Processing: f0da6eb51fa4699fbe78f16fe154e7139f8aa03e22339b9ea55a0b5bd1ca1bd1.mp4 (Mode: scene) +Downloading f0da6eb51fa4699fbe78f16fe154e7139f8aa03e22339b9ea55a0b5bd1ca1bd1.mp4 (20.63 MB)... +Processing: f0ea791d929ae3019ec4efcd5bbe4ecfeafbeb9c3e85314cd019eca1572b427d.mp4 (Mode: scene) +Downloading f0ea791d929ae3019ec4efcd5bbe4ecfeafbeb9c3e85314cd019eca1572b427d.mp4 (84.87 MB)... +Processing: a8fe70ef5865eb5455b6932f2139f358e5152506eb10059a73b5490652e66cc1.mp4 (Mode: scene) +Downloading a8fe70ef5865eb5455b6932f2139f358e5152506eb10059a73b5490652e66cc1.mp4 (17.15 MB)... +Processing: ccd22d1a9f4f6746e9f3a482b81b6222e93cf3c2a8400e1eff91aafda6b75e3c.mp4 (Mode: scene) +Downloading ccd22d1a9f4f6746e9f3a482b81b6222e93cf3c2a8400e1eff91aafda6b75e3c.mp4 (8.95 MB)... +Processing: 0hm5fqsgrppow9u400jti_source.mp4 (Mode: scene) +Downloading 0hm5fqsgrppow9u400jti_source.mp4 (10.86 MB)... +Processing: 0hi9ktby3tn9x46zqr8nw_source.mp4 (Mode: scene) +Downloading 0hi9ktby3tn9x46zqr8nw_source.mp4 (59.81 MB)... +Processing: FJpdqeERtoiu6xZBUmS40cmEbtxfOj61.mp4 (Mode: scene) +Downloading FJpdqeERtoiu6xZBUmS40cmEbtxfOj61.mp4 (42.27 MB)... +Processing: 0hpm76j4jsy4udhtt7u2q_source.mp4 (Mode: scene) +Downloading 0hpm76j4jsy4udhtt7u2q_source.mp4 (9.82 MB)... +Processing: 0h39o5uo09lde1qvkr2v8_source.mp4 (Mode: scene) +Downloading 0h39o5uo09lde1qvkr2v8_source.mp4 (733.02 MB)... +Processing: c59a6bd3e4355124c0438ff531514e1235dedee27f733151362f38fd0dcc70b8.mp4 (Mode: scene) +Downloading c59a6bd3e4355124c0438ff531514e1235dedee27f733151362f38fd0dcc70b8.mp4 (59.81 MB)... +Processing: 0hrtz7h0un8b91e1rhxsc_source.mp4 (Mode: scene) +Downloading 0hrtz7h0un8b91e1rhxsc_source.mp4 (54.20 MB)... +Processing: GoOYjAn0MMZJ4g01D1cpp1pkYJfAKZgp.mp4 (Mode: scene) +Downloading GoOYjAn0MMZJ4g01D1cpp1pkYJfAKZgp.mp4 (18.10 MB)... +Processing: 814c83b6acdfdb18a217acad169993f27f8945ab4f0c56af0f9430968afa02c4.mp4 (Mode: scene) +Downloading 814c83b6acdfdb18a217acad169993f27f8945ab4f0c56af0f9430968afa02c4.mp4 (5.83 MB)... +Processing: f71f9ceb65b4f60bead42ea753449c56a3a359fbae94c7a329fdd45bf0fab1c5.mp4 (Mode: scene) +Downloading f71f9ceb65b4f60bead42ea753449c56a3a359fbae94c7a329fdd45bf0fab1c5.mp4 (17.03 MB)... +Processing: d7cb2deccd91469a24ffcf4705b53cf598edefde8d229632e1154d18b6fa0c98.mp4 (Mode: scene) +Downloading d7cb2deccd91469a24ffcf4705b53cf598edefde8d229632e1154d18b6fa0c98.mp4 (23.24 MB)... +Processing: 0hr5s0acatwsb8f3dm3cd_source.mp4 (Mode: scene) +Downloading 0hr5s0acatwsb8f3dm3cd_source.mp4 (10.09 MB)... +Processing: ZndkT3Mr53xq0lkqOm0c8nxmKguo3nN3.mp4 (Mode: scene) +Downloading ZndkT3Mr53xq0lkqOm0c8nxmKguo3nN3.mp4 (9.71 MB)... +Processing: 0hnzg30s4824po305k16l_source.mp4 (Mode: scene) +Downloading 0hnzg30s4824po305k16l_source.mp4 (18.76 MB)... +Processing: 0h6plfyrgtrg9u7rw26jn_source.mp4 (Mode: scene) +Downloading 0h6plfyrgtrg9u7rw26jn_source.mp4 (7.89 MB)... +Processing: 5e54c39c4828b822a36b0.mp4 (Mode: scene) +Downloading 5e54c39c4828b822a36b0.mp4 (539.44 MB)... +Processing: 0gxcu5v146krb4xmilx5d_source.mp4 (Mode: scene) +Downloading 0gxcu5v146krb4xmilx5d_source.mp4 (8.06 MB)... +Processing: 981d2146256948694d4811a797137e8ac5635928c4dfdc4cbe3348af86abe184.mp4 (Mode: scene) +Downloading 981d2146256948694d4811a797137e8ac5635928c4dfdc4cbe3348af86abe184.mp4 (31.20 MB)... +Processing: 0hlw1ywdkh6nru8ajhjx5_source.mp4 (Mode: scene) +Downloading 0hlw1ywdkh6nru8ajhjx5_source.mp4 (13.77 MB)... +Processing: 0hi3gsgb732e8bx0bsemq_source.mp4 (Mode: scene) +Downloading 0hi3gsgb732e8bx0bsemq_source.mp4 (5.83 MB)... +Processing: 0gt0pd3n9azqlkqszggi2_source.mp4 (Mode: scene) +Downloading 0gt0pd3n9azqlkqszggi2_source.mp4 (263.87 MB)... +Processing: 10cdccd2f7e60890c8231ad2a4c1db7cb144115660e92a8e2e1f60d8e6469396.mp4 (Mode: scene) +Downloading 10cdccd2f7e60890c8231ad2a4c1db7cb144115660e92a8e2e1f60d8e6469396.mp4 (58.05 MB)... +Processing: 338cebadd85fb0d5af8f29f6f09d9e518a5124b1fab20a35457d07c23d163041.mp4 (Mode: scene) +Downloading 338cebadd85fb0d5af8f29f6f09d9e518a5124b1fab20a35457d07c23d163041.mp4 (1176.11 MB)... +Processing: 4bff23892d8c0429765b604a3941fd5f975a0b620cc117ecf9fcd875729e86a4.mp4 (Mode: scene) +Downloading 4bff23892d8c0429765b604a3941fd5f975a0b620cc117ecf9fcd875729e86a4.mp4 (30.49 MB)... +Processing: 0hi4nfr4sxkn8mjqv407e_source.mp4 (Mode: scene) +Downloading 0hi4nfr4sxkn8mjqv407e_source.mp4 (17.83 MB)... +Processing: 3a75f3d2f76f242a1b635d347c3f64a9f41cfe7113c747b5eccbb775064f54cf.mp4 (Mode: scene) +Downloading 3a75f3d2f76f242a1b635d347c3f64a9f41cfe7113c747b5eccbb775064f54cf.mp4 (12.78 MB)... +Processing: 0e42d6f041dade7a68a455b0e5c74ec8d7b7b66988f8108c78c460be44f9c1af.mp4 (Mode: scene) +Downloading 0e42d6f041dade7a68a455b0e5c74ec8d7b7b66988f8108c78c460be44f9c1af.mp4 (16.19 MB)... +Scanning directory: /videos/katie.cummings/captainkcx_coomer/Misc +Processing: 57772257-662E7348-3DC0-4C1A-9BB1-8EE667A068C9.MOV (Mode: scene) +Downloading 57772257-662E7348-3DC0-4C1A-9BB1-8EE667A068C9.MOV (274.12 MB)... +Scanning directory: /videos/katie.cummings/captainkcx_coomer/Photos +Scanning directory: /videos/blazedstudios/jessica.simpson/dani.dare +Scanning directory: /videos/jav/incest/gameshow +Processing: SDMU-576 Ordinary Couple x Authentic Creampie x Continu.mp4 (Mode: scene) +Downloading SDMU-576 Ordinary Couple x Authentic Creampie x Continu.mp4 (1721.76 MB)... +Processing: RCTD-658 Watch Online Amateur couples compete - Mixed erotic pro.mp4 (Mode: scene) +Downloading RCTD-658 Watch Online Amateur couples compete - Mixed erotic pro.mp4 (1275.90 MB)... +Processing: SDDE-447-nyap2p.com.mp4 (Mode: scene) +Downloading SDDE-447-nyap2p.com.mp4 (4914.25 MB)... +Processing: SDDE-447 Good luck daddy mom Saddle battle against fam.mp4 (Mode: scene) +Downloading SDDE-447 Good luck daddy mom Saddle battle against fam.mp4 (3315.63 MB)... +Processing: RCTD-181 Lewd family opposition play Saddle Winter Spo.mp4 (Mode: scene) +Downloading RCTD-181 Lewd family opposition play Saddle Winter Spo.mp4 (3634.26 MB)... +Processing: SDDE-605 Good luck daddy mom A slimy lotion for a good.mp4 (Mode: scene) +Downloading SDDE-605 Good luck daddy mom A slimy lotion for a good.mp4 (6875.81 MB)... +Processing: The Battle Of Lustful Families! I----tuous Creampie Meet-{Rocket}.mp4 (Mode: scene) +Downloading The Battle Of Lustful Families! I----tuous Creampie Meet-{Rocket}.mp4 (3754.07 MB)... +Processing: SDEN-047-(Aragaki Chie, Akemi Kou, Mihina)-{SOD Create}-[30 FPS, Amateur, Big Tits, Censored, Fan Appreciation, Full HD Available, JAV, Lotion].mp4 (Mode: scene) +Downloading SDEN-047-(Aragaki Chie, Akemi Kou, Mihina)-{SOD Create}-[30 FPS, Amateur, Big Tits, Censored, Fan Appreciation, Full HD Available, JAV, Lotion].mp4 (1686.76 MB)... +Processing: SDMU-724 Compete for a prize of 1 million yen The late.mp4 (Mode: scene) +Downloading SDMU-724 Compete for a prize of 1 million yen The late.mp4 (912.78 MB)... +Processing: SDMU-724 Compete for a prize of 1 million yen The late-01.mp4 (Mode: scene) +Downloading SDMU-724 Compete for a prize of 1 million yen The late-01.mp4 (912.78 MB)... +Processing: SDDE-584 Good luck daddy mom Saddle battle against fam-01.mp4 (Mode: scene) +Downloading SDDE-584 Good luck daddy mom Saddle battle against fam-01.mp4 (4623.31 MB)... +Processing: RCTD-146 Watch Online Mizuna WakatsukiShiori AmamiShiori Mochida.mp4 (Mode: scene) +Downloading RCTD-146 Watch Online Mizuna WakatsukiShiori AmamiShiori Mochida.mp4 (1575.57 MB)... +Processing: SDDE-667 SENZ TV Daddy Mama Do your best Sports love.mp4 (Mode: scene) +Downloading SDDE-667 SENZ TV Daddy Mama Do your best Sports love.mp4 (2549.13 MB)... +Processing: SDDE-710 Good luck mom and dad Slimy lotion sex batt.mp4 (Mode: scene) +Downloading SDDE-710 Good luck mom and dad Slimy lotion sex batt.mp4 (4571.98 MB)... +Scanning directory: /videos/jav/incest/orgy +Processing: SDDE-700 In Our Family - EPORNER.mp4 (Mode: scene) +Downloading SDDE-700 In Our Family - EPORNER.mp4 (5426.52 MB)... +Processing: IENF-013 Watch Online Alice MizushimaChihiro SuzukiRio OkitaReno.mp4 (Mode: scene) +Downloading IENF-013 Watch Online Alice MizushimaChihiro SuzukiRio OkitaReno.mp4 (1475.99 MB)... +Processing: HUNTA-165 Planned domestic orgy My father remarried a.mp4 (Mode: scene) +Downloading HUNTA-165 Planned domestic orgy My father remarried a.mp4 (958.62 MB)... +Processing: HUBLK-055 Desperate Family The father remarries and th.mp4 (Mode: scene) +Downloading HUBLK-055 Desperate Family The father remarries and th.mp4 (3390.86 MB)... +Processing: NHDTB-259 Niece 2 Who Will Let Me Make A Vaginal Cum Shot 720p.mp4 (Mode: scene) +Downloading NHDTB-259 Niece 2 Who Will Let Me Make A Vaginal Cum Shot 720p.mp4 (1444.49 MB)... +Processing: NASH-197 Watch Online This is normal in the countryside - - A co.mp4 (Mode: scene) +Downloading NASH-197 Watch Online This is normal in the countryside - - A co.mp4 (1429.62 MB)... +Processing: NASH-885 Watch Online This is normal in the countryside - - If y.mp4 (Mode: scene) +Downloading NASH-885 Watch Online This is normal in the countryside - - If y.mp4 (3608.37 MB)... +Processing: SDAM-021 Against the nuclear family Continuous ejacula.mp4 (Mode: scene) +Downloading SDAM-021 Against the nuclear family Continuous ejacula.mp4 (1482.39 MB)... +Processing: Watch Free Jav RTP-083 Todays Low Birth Rate Actively Is Sex Edu.mp4 (Mode: scene) +Downloading Watch Free Jav RTP-083 Todays Low Birth Rate Actively Is Sex Edu.mp4 (3035.00 MB)... +Processing: ERDM-047 Family Orgy 4 Hours - EPORNER.mp4 (Mode: scene) +Downloading ERDM-047 Family Orgy 4 Hours - EPORNER.mp4 (8944.17 MB)... +Scanning directory: /videos/jav/incest/HUNBL +Processing: hhd800.com@HUNBL-148.mp4 (Mode: scene) +Downloading hhd800.com@HUNBL-148.mp4 (5205.61 MB)... +Scanning directory: /videos/jav/incest/JUR-293 +Processing: hhd800.com@JUR-293.mp4 (Mode: scene) +Downloading hhd800.com@JUR-293.mp4 (7515.34 MB)... +Scanning directory: /videos/jav/incest/bullied_into_sex +Processing: HUNBL-133-(Himari Ayase, Shiho Hoshino, Nonoka Akari, Yui Tenma)-{Hunter black}-[Family Roleplay, Incest, JAV, Missing Performer (Male), Schoolgirl Outfit, Sister, creampie].mp4 (Mode: scene) +Downloading HUNBL-133-(Himari Ayase, Shiho Hoshino, Nonoka Akari, Yui Tenma)-{Hunter black}-[Family Roleplay, Incest, JAV, Missing Performer (Male), Schoolgirl Outfit, Sister, creampie].mp4 (6060.84 MB)... +Scanning directory: /videos/jav/incest/HUNTC +Processing: huntc-360.mp4 (Mode: scene) +Downloading huntc-360.mp4 (6370.71 MB)... +Processing: Our secret about being good students. Our parents don't know about this orgy of six siblings that resonates and orgasms!-{Hunter}.mp4 (Mode: scene) +Downloading Our secret about being good students. Our parents don't know about this orgy of six siblings that resonates and orgasms!-{Hunter}.mp4 (6802.17 MB)... +Processing: hhd800.com@HUNTC-328.mp4 (Mode: scene) +Downloading hhd800.com@HUNTC-328.mp4 (6463.11 MB)... +Processing: hhd800.com@HUNTC-448.mp4 (Mode: scene) +Downloading hhd800.com@HUNTC-448.mp4 (5841.74 MB)... diff --git a/ServerManagerWebApp/backend/logs/duplicates_scan.pause b/ServerManagerWebApp/backend/logs/duplicates_scan.pause new file mode 100644 index 0000000..e69de29 diff --git a/ServerManagerWebApp/backend/migrate_db.py b/ServerManagerWebApp/backend/migrate_db.py new file mode 100644 index 0000000..9145a9d --- /dev/null +++ b/ServerManagerWebApp/backend/migrate_db.py @@ -0,0 +1,19 @@ +from app.database import engine +from sqlalchemy import text + +def migrate(): + with engine.connect() as conn: + try: + conn.execute(text("ALTER TABLE video_files ADD COLUMN contact_sheet_path VARCHAR")) + print("Added contact_sheet_path") + except Exception as e: + print(f"Skipped contact_sheet_path (probably exists): {e}") + + try: + conn.execute(text("ALTER TABLE video_files ADD COLUMN scene_phash VARCHAR")) + print("Added scene_phash") + except Exception as e: + print(f"Skipped scene_phash (probably exists): {e}") + +if __name__ == "__main__": + migrate() diff --git a/ServerManagerWebApp/backend/requirements.txt b/ServerManagerWebApp/backend/requirements.txt index edc175e..c066c0f 100644 --- a/ServerManagerWebApp/backend/requirements.txt +++ b/ServerManagerWebApp/backend/requirements.txt @@ -9,4 +9,6 @@ pydantic-settings requests pillow beautifulsoup4 -cloudscraper \ No newline at end of file +cloudscraper +huey +qbittorrent-api \ No newline at end of file diff --git a/ServerManagerWebApp/backend/resources/config/downloads.db b/ServerManagerWebApp/backend/resources/config/downloads.db index e68eb45..3788bf5 100644 Binary files a/ServerManagerWebApp/backend/resources/config/downloads.db and b/ServerManagerWebApp/backend/resources/config/downloads.db differ diff --git a/ServerManagerWebApp/backend/resources/config/tasks.db b/ServerManagerWebApp/backend/resources/config/tasks.db new file mode 100644 index 0000000..f687eda Binary files /dev/null and b/ServerManagerWebApp/backend/resources/config/tasks.db differ diff --git a/ServerManagerWebApp/backend/resources/config/tasks.db-shm b/ServerManagerWebApp/backend/resources/config/tasks.db-shm new file mode 100644 index 0000000..2a5d706 Binary files /dev/null and b/ServerManagerWebApp/backend/resources/config/tasks.db-shm differ diff --git a/ServerManagerWebApp/backend/resources/config/tasks.db-wal b/ServerManagerWebApp/backend/resources/config/tasks.db-wal new file mode 100644 index 0000000..b1ad372 Binary files /dev/null and b/ServerManagerWebApp/backend/resources/config/tasks.db-wal differ diff --git a/ServerManagerWebApp/comics_organizesteps.py b/ServerManagerWebApp/comics_organizesteps.py deleted file mode 100644 index aad462e..0000000 --- a/ServerManagerWebApp/comics_organizesteps.py +++ /dev/null @@ -1,322 +0,0 @@ -import os -import zipfile -import re -import shutil -from PIL import Image -from pdf2image import convert_from_path -from datetime import datetime -from collections import defaultdict -import uuid # Library for generating unique IDs - -# --- Utility Functions --- - -def setup_error_log(): - """ - Creates a uniquely named error log file. - """ - timestamp = datetime.now().strftime("%Y-%m-%d_%H-%M-%S") - log_filename = f"errorlog_{timestamp}.log" - return log_filename - -def log_error(log_file, message): - """ - Appends an error message to the log file. - """ - with open(log_file, 'a') as f: - f.write(f"{datetime.now().strftime('%Y-%m-%d %H:%M:%S')} - {message}\n") - -def convert_webp_to_jpg(file_path, log_file): - """ - Converts a .webp image file to .jpg format. - """ - try: - image = Image.open(file_path) - if image.mode == 'RGBA': - image = image.convert('RGB') - jpg_path = os.path.splitext(file_path)[0] + '.jpg' - image.save(jpg_path, 'JPEG') - os.remove(file_path) - return jpg_path - except Exception as e: - log_error(log_file, f"Error converting WEBP: {file_path} - {e}") - return None - -def convert_pdf_to_jpgs(file_path, output_folder, log_file): - """ - Converts a PDF file into a series of JPG images. - """ - try: - pages = convert_from_path(file_path) - output_paths = [] - for i, page in enumerate(pages): - jpg_path = os.path.join(output_folder, f"page_{i+1:03d}.jpg") - page.save(jpg_path, 'JPEG') - output_paths.append(jpg_path) - os.remove(file_path) - return output_paths - except Exception as e: - log_error(log_file, f"Error converting PDF: {file_path} - {e}") - return [] - -def create_cbz_archive(folder_path, output_path, log_file): - """ - Creates a .cbz archive from all image files in a folder. - """ - try: - with zipfile.ZipFile(output_path, 'w') as cbz_file: - for root, _, files in os.walk(folder_path): - # Sort files to ensure correct page order in the CBZ file - sorted_files = sorted(files, key=lambda f: re.split(r'(\d+)', f)) - for filename in sorted_files: - if filename.lower().endswith(('.jpg', '.jpeg', '.png', '.gif')): - file_path = os.path.join(root, filename) - # Archive name should be relative to the content folder - arcname = os.path.relpath(file_path, folder_path) - cbz_file.write(file_path, arcname) - return True - except Exception as e: - log_error(log_file, f"Error creating CBZ for {folder_path} - {e}") - return False - -def clean_up_temp_folders(folder_path): - """ - Removes a folder and its contents. - """ - try: - if os.path.exists(folder_path): - shutil.rmtree(folder_path) - except Exception as e: - print(f"Error cleaning up {folder_path}: {e}") - -# --- Grouping Function --- - -def get_series_name(file_or_folder_name): - """ - Uses regex to extract the common series name from a chapter folder/file name. - """ - base_name = os.path.splitext(file_or_folder_name)[0] - - # Pattern to match and strip common chapter/volume suffixes at the end of a string. - pattern = re.compile(r'[-_]?((ch(apter)?|v(ol)?)[-_]?)?\d{1,4}(\.\d{1,2})?$', re.IGNORECASE) - - # Find the match from the end - match = pattern.search(base_name) - if match: - # Return the string slice before the matched pattern - return base_name[:match.start()].strip('-_ ') - - # Fallback: if no clear chapter pattern is found, return the original name - return base_name - -# --- File/Folder Processing Function --- - -def process_chapter(chapter_path, final_series_folder, temp_root_folder, log_file): - """ - Copies, converts, creates CBZ, and cleans up for a single chapter folder/archive. - Uses a unique temporary sub-folder for its operations. - """ - chapter_name = os.path.basename(chapter_path) - - # Create a UNIQUE temporary folder for THIS chapter's processing - unique_id = str(uuid.uuid4())[:8] # Short unique identifier - temp_chapter_folder = os.path.join(temp_root_folder, f"proc_{unique_id}_{chapter_name}") - os.makedirs(temp_chapter_folder, exist_ok=True) - - is_archive = os.path.isfile(chapter_path) and chapter_path.lower().endswith(('.zip', '.cbz')) - - try: - if is_archive: - print(f" -> Extracting Archive: {chapter_name}") - with zipfile.ZipFile(chapter_path, 'r') as zip_ref: - zip_ref.extractall(temp_chapter_folder) - else: - print(f" -> Processing Folder: {chapter_name}") - # Copy original folder contents to the temporary folder - for item in os.listdir(chapter_path): - s = os.path.join(chapter_path, item) - d = os.path.join(temp_chapter_folder, item) - if os.path.isdir(s): - # Use a recursive copy for subdirectories - shutil.copytree(s, d) - else: - # Use a simple copy for files - shutil.copy2(s, d) - - # B. Convert files inside the temporary folder - for root, _, files in os.walk(temp_chapter_folder): - for file_path in [os.path.join(root, f) for f in files]: - if file_path.lower().endswith('.webp'): - print(f" - Converting WEBP: {os.path.basename(file_path)}") - convert_webp_to_jpg(file_path, log_file) - elif file_path.lower().endswith('.pdf'): - print(f" - Converting PDF: {os.path.basename(file_path)}") - # Conversion places JPGs in the same folder as the PDF - convert_pdf_to_jpgs(file_path, root, log_file) - - # C. Create CBZ archive in the final series destination - cbz_name = os.path.splitext(chapter_name)[0] + '.cbz' - output_cbz_path = os.path.join(final_series_folder, cbz_name) - - if create_cbz_archive(temp_chapter_folder, output_cbz_path, log_file): - print(f" - Successfully created {cbz_name}") - - except Exception as e: - log_error(log_file, f"Processing failed for {chapter_name} (Path: {chapter_path}): {e}") - print(f" - ERROR: Processing failed. Check log for details.") - return # Exit the function on error - finally: - # D. Clean up the temporary processing folder for this chapter - clean_up_temp_folders(temp_chapter_folder) - -# --- New Move Function --- - -def move_converted_files(source_dir, destination_root, log_file): - """ - Moves all contents (series folders) from source_dir (converted) - to destination_root (/mnt/isolation/comics). - """ - print("\n--- Starting Final Move Operation ---") - - # The parent of /mnt/isolation/comics/toberead/converted is /mnt/isolation/comics/toberead - # We want to move to /mnt/isolation/comics - - # 1. Identify the true final destination path - # Get the parent of the source_dir (which is /mnt/isolation/comics/toberead) - parent_of_source = os.path.dirname(source_dir) - # Get the parent of that (which is /mnt/isolation/comics) - final_destination = os.path.dirname(parent_of_source) - - if destination_root != final_destination: - log_error(log_file, f"Configuration Error: Move destination root mismatch. Expected {final_destination}, got {destination_root}") - print(f"Error: Final destination paths do not match. Aborting move. Check log.") - return - - total_moved = 0 - - # Iterate through each series folder in the 'converted' directory - for series_name in os.listdir(source_dir): - series_source_path = os.path.join(source_dir, series_name) - series_dest_path = os.path.join(destination_root, series_name) - - if os.path.isdir(series_source_path): - try: - # Move the entire series folder (containing the CBZ files) - if not os.path.exists(series_dest_path): - shutil.move(series_source_path, series_dest_path) - print(f" -> Moved series folder: {series_name}") - total_moved += 1 - else: - # If the series folder already exists in the destination, move its contents (the CBZ files) - for item in os.listdir(series_source_path): - item_s = os.path.join(series_source_path, item) - item_d = os.path.join(series_dest_path, item) - - if item.lower().endswith('.cbz') and not os.path.exists(item_d): - shutil.move(item_s, item_d) - print(f" -> Moved CBZ: {item}") - total_moved += 1 - - # Remove the now-empty source folder - clean_up_temp_folders(series_source_path) - - except Exception as e: - log_error(log_file, f"Error moving series {series_name}: {e}") - print(f"Error moving {series_name}. Check log for details.") - - print(f"\nMove Complete. Total items moved: {total_moved}") - - -def main(): - """ - Main function to run the comic organization script. - """ - # --- Configuration --- - source_directory = "/mnt/isolation/comics/toberead" - target_directory = os.path.join(source_directory, "converted") - temp_root_folder = os.path.join(source_directory, ".komga_processing_temp") - - # The final destination root for the move operation (parent of source_directory) - destination_root = os.path.dirname(source_directory) - # --------------------- - - error_log_file = setup_error_log() - print(f"Starting script. Source: {source_directory}") - print(f"Output will be in: {target_directory}") - print(f"Final destination root: {destination_root}") - print(f"Errors will be logged to: {error_log_file}") - - os.makedirs(target_directory, exist_ok=True) - - # Clean up the main temporary directory before starting - clean_up_temp_folders(temp_root_folder) - os.makedirs(temp_root_folder, exist_ok=True) - - # 1. Group Chapter Folders and Archive Files by Series Name - - series_chapters = defaultdict(list) - - try: - items = os.listdir(source_directory) - except FileNotFoundError: - print(f"Error: Source directory not found: {source_directory}. Aborting.") - return - - for item in items: - item_path = os.path.join(source_directory, item) - - # Skip the output and temporary directories - if item_path.startswith(target_directory) or item_path.startswith(temp_root_folder): - continue - - is_relevant_folder = os.path.isdir(item_path) and any(f.lower().endswith(('.jpg', '.jpeg', '.png', '.gif', '.webp', '.pdf')) - for f in os.listdir(item_path)) - is_relevant_file = os.path.isfile(item_path) and item.lower().endswith(('.zip', '.cbz')) - - if is_relevant_folder or is_relevant_file: - series_name = get_series_name(item) - series_chapters[series_name].append(item_path) - - print(f"\nFound {len(series_chapters)} series to process.") - - # 2. Process Each Series Group - - for series_name, chapter_paths in series_chapters.items(): - print(f"\n--- Processing Series: {series_name} ({len(chapter_paths)} Chapters/Archives) ---") - - # Create the final parent folder for the series in the target directory - final_series_folder = os.path.join(target_directory, series_name) - os.makedirs(final_series_folder, exist_ok=True) - - for chapter_path in chapter_paths: - chapter_name = os.path.basename(chapter_path) - - if chapter_name.lower().endswith('.cbz') and os.path.isfile(chapter_path): - # Move existing CBZ files directly to the final destination - new_path = os.path.join(final_series_folder, chapter_name) - if not os.path.exists(new_path): - shutil.move(chapter_path, new_path) - print(f" -> Moved existing CBZ: {chapter_name}") - else: - print(f" -> Skipping CBZ (already exists in destination): {chapter_name}") - else: - # Process folders and ZIP files - process_chapter(chapter_path, final_series_folder, temp_root_folder, error_log_file) - - # 3. Final Cleanup and Conditional Move - - # Final cleanup of the main temp folder - clean_up_temp_folders(temp_root_folder) - - print("\n--- Processing Finished ---") - - # --- USER PROMPT FOR FINAL MOVE --- - prompt = f"Do you want to move all CBZ files from '{target_directory}' to the root directory '{destination_root}'? (yes/no): " - user_input = input(prompt).strip().lower() - - if user_input == 'yes': - move_converted_files(target_directory, destination_root, error_log_file) - - print("\nScript operation complete.") - -if __name__ == "__main__": - main() \ No newline at end of file diff --git a/ServerManagerWebApp/fixed_comics_manager.py b/ServerManagerWebApp/fixed_comics_manager.py deleted file mode 100644 index 65d0aa5..0000000 --- a/ServerManagerWebApp/fixed_comics_manager.py +++ /dev/null @@ -1,129 +0,0 @@ -import os -import re -import sys -from collections import defaultdict -import logging -from .samba_manager import SambaManager -from .config import Settings -from smb.smb_structs import OperationFailure - -# --- Dedicated logger for ComicsManager --- -comics_logger = logging.getLogger('comics_manager') -comics_logger.setLevel(logging.INFO) -comics_logger.propagate = False -if not comics_logger.handlers: - comics_log_handler = logging.FileHandler("logs/comics_organization.log", mode='a') - comics_log_handler.setFormatter(logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')) - comics_logger.addHandler(comics_log_handler) - comics_logger.addHandler(logging.StreamHandler()) - -# --- Disable noisy pysmb logger --- -# Temporarily set the pysmb logger levels to CRITICAL to silence its output. -# This needs to be set *after* basicConfig if pysmb initializes its loggers earlier. -try: - logging.getLogger("smb").setLevel(logging.CRITICAL) - logging.getLogger("smb.SMBConnection").setLevel(logging.CRITICAL) -except Exception: - # Handle cases where the logger might not be fully initialized yet - pass -# --- - -class ComicsManager: - def __init__(self, settings: Settings): - self.settings = settings - self.db = None # ComicsManager doesn't use DB - self.samba_manager = SambaManager( - settings.samba_server_ip, - "isolation", - settings.samba_username, - settings.samba_password, - ) - self.comics_root = "/comics/toberead" - self.comics_dest_root = "/comics/manga" - - def _get_series_name(self, filename): - base_name, _ = os.path.splitext(filename) - # This regex is more aggressive at cleaning up chapter/volume numbers and other noise. - # It looks for common patterns like 'ch.10', 'v02', '123', etc. - pattern = re.compile(r'[-_\s]*(v(ol)?|c(h)?|chapter|issue|ep|episode)[-_\s]*\d+.*|[-_\s]+\d+$', re.IGNORECASE) - match = pattern.search(base_name) - if match: - return base_name[:match.start()].strip('-_ ') - return base_name.strip('-_ ') - - def organize_comics(self): - comics_logger.info("Starting comics organization process...") - try: - items_in_toberead = self.samba_manager.list_path(self.comics_root) - if "error" in items_in_toberead: - raise Exception(f"Failed to list files in 'toberead': {items_in_toberead['error']}") - - series_chapters = defaultdict(list) - for item in items_in_toberead: - if not item["is_directory"]: - series_name = self._get_series_name(item["name"]) - series_chapters[series_name].append(item) - - comics_logger.info(f"Found {len(series_chapters)} series to process.") - - for series_name, chapters in series_chapters.items(): - comics_logger.info(f"Processing series: {series_name}") - # Ensure paths use forward slashes for Samba operations - final_series_folder_path = f"{self.comics_dest_root}/{series_name}".replace("\", "/") - - try: - self.samba_manager.create_directory(final_series_folder_path) - comics_logger.info(f"Created directory: {final_series_folder_path}") - except OperationFailure as e: - # Specific check for FILE_OBJECT_NAME_COLLISION if directory already exists - if "FILE_OBJECT_NAME_COLLISION" in str(e): - comics_logger.info(f"Directory {final_series_folder_path} already exists. Skipping creation.") - else: - comics_logger.error(f"Could not create directory {final_series_folder_path}: {e}") - - for chapter_item in chapters: - # Sanitize original path coming from list_path - original_path = chapter_item["path"].replace("\", "/") - original_filename = chapter_item["name"] - - path_to_move = "" - filename_to_move = "" - - if original_filename.lower().endswith('.zip'): - cbz_filename = os.path.splitext(original_filename)[0] + '.cbz' - temp_cbz_path = f"{self.comics_root}/{cbz_filename}".replace("\", "/") - - try: - self.samba_manager.rename_file(original_path, temp_cbz_path) - path_to_move = temp_cbz_path - filename_to_move = cbz_filename - comics_logger.info(f"Renamed {original_filename} to {cbz_filename}") - except OperationFailure as e: - comics_logger.error(f"Failed to rename ZIP {original_filename} to CBZ: {e}") - continue # Skip to next chapter if rename fails - - elif original_filename.lower().endswith('.cbz'): - # If it's already a .cbz, it's ready to be moved - path_to_move = original_path - filename_to_move = original_filename - else: - comics_logger.warning(f"Skipping non-zip/cbz file: {original_filename}") - continue - - # Final destination path for the CBZ file - final_cbz_path = f"{final_series_folder_path}/{filename_to_move}".replace("\", "/") - - try: - self.samba_manager.rename_file(path_to_move, final_cbz_path) - comics_logger.info(f"Moved {filename_to_move} to {final_series_folder_path}") - except OperationFailure as e: - comics_logger.error(f"Failed to move {filename_to_move} to {final_series_folder_path}: {e}") - - except Exception as e: - comics_logger.error(f"An unexpected error occurred during comics organization: {e}", exc_info=True) - - finally: - comics_logger.info("Comics organization process finished.") - self.samba_manager.close() - - return diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/_metadata.json b/ServerManagerWebApp/frontend/node_modules/.vite/deps/_metadata.json index 7b9b4bd..177db94 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/_metadata.json +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/_metadata.json @@ -1,367 +1,394 @@ { - "hash": "58793c98", - "configHash": "939bcc17", + "hash": "95aedb35", + "configHash": "7be18a1c", "lockfileHash": "b10062e0", - "browserHash": "e6aae6df", + "browserHash": "9f13f699", "optimized": { "vue": { "src": "../../vue/dist/vue.runtime.esm-bundler.js", "file": "vue.js", - "fileHash": "c9954258", + "fileHash": "8eb41ee8", "needsInterop": false }, "vue-router": { "src": "../../vue-router/dist/vue-router.mjs", "file": "vue-router.js", - "fileHash": "e764d986", + "fileHash": "1427789a", "needsInterop": false }, "vuetify": { "src": "../../vuetify/lib/framework.js", "file": "vuetify.js", - "fileHash": "369c86f0", + "fileHash": "8dbe3ca9", "needsInterop": false }, "vuetify/components": { "src": "../../vuetify/lib/components/index.js", "file": "vuetify_components.js", - "fileHash": "721553c0", + "fileHash": "c679badd", "needsInterop": false }, "vuetify/directives": { "src": "../../vuetify/lib/directives/index.js", "file": "vuetify_directives.js", - "fileHash": "cf4c59e7", + "fileHash": "1b05ee8f", "needsInterop": false }, "vuetify/iconsets/mdi": { "src": "../../vuetify/lib/iconsets/mdi.js", "file": "vuetify_iconsets_mdi.js", - "fileHash": "590e0963", + "fileHash": "af4fe77a", "needsInterop": false }, "vuetify/components/VApp": { "src": "../../vuetify/lib/components/VApp/index.js", "file": "vuetify_components_VApp.js", - "fileHash": "f6cb1574", + "fileHash": "67472430", "needsInterop": false }, "vuetify/components/VAppBar": { "src": "../../vuetify/lib/components/VAppBar/index.js", "file": "vuetify_components_VAppBar.js", - "fileHash": "bd33378b", + "fileHash": "1c27af94", "needsInterop": false }, "vuetify/components/VBtn": { "src": "../../vuetify/lib/components/VBtn/index.js", "file": "vuetify_components_VBtn.js", - "fileHash": "b2541520", + "fileHash": "9ff6101b", "needsInterop": false }, "vuetify/components/VDivider": { "src": "../../vuetify/lib/components/VDivider/index.js", "file": "vuetify_components_VDivider.js", - "fileHash": "1201295e", + "fileHash": "d9ee236f", "needsInterop": false }, "vuetify/components/VGrid": { "src": "../../vuetify/lib/components/VGrid/index.js", "file": "vuetify_components_VGrid.js", - "fileHash": "dec97038", + "fileHash": "74768afe", "needsInterop": false }, "vuetify/components/VList": { "src": "../../vuetify/lib/components/VList/index.js", "file": "vuetify_components_VList.js", - "fileHash": "92076a71", + "fileHash": "dc9b9e42", "needsInterop": false }, "vuetify/components/VMain": { "src": "../../vuetify/lib/components/VMain/index.js", "file": "vuetify_components_VMain.js", - "fileHash": "aea7930b", + "fileHash": "41fdc34f", "needsInterop": false }, "vuetify/components/VNavigationDrawer": { "src": "../../vuetify/lib/components/VNavigationDrawer/index.js", "file": "vuetify_components_VNavigationDrawer.js", - "fileHash": "fa7c5e03", - "needsInterop": false - }, - "vuetify/components/VAlert": { - "src": "../../vuetify/lib/components/VAlert/index.js", - "file": "vuetify_components_VAlert.js", - "fileHash": "5dc7580a", - "needsInterop": false - }, - "vuetify/components/VCard": { - "src": "../../vuetify/lib/components/VCard/index.js", - "file": "vuetify_components_VCard.js", - "fileHash": "90108afc", - "needsInterop": false - }, - "vuetify/components/VDialog": { - "src": "../../vuetify/lib/components/VDialog/index.js", - "file": "vuetify_components_VDialog.js", - "fileHash": "e56ad233", - "needsInterop": false - }, - "vuetify/components/VIcon": { - "src": "../../vuetify/lib/components/VIcon/index.js", - "file": "vuetify_components_VIcon.js", - "fileHash": "ccd96f39", - "needsInterop": false - }, - "vuetify/components/VToolbar": { - "src": "../../vuetify/lib/components/VToolbar/index.js", - "file": "vuetify_components_VToolbar.js", - "fileHash": "f4e18631", + "fileHash": "e3294e44", "needsInterop": false }, "vuetify/components/VBreadcrumbs": { "src": "../../vuetify/lib/components/VBreadcrumbs/index.js", "file": "vuetify_components_VBreadcrumbs.js", - "fileHash": "b9da5690", + "fileHash": "cce8769a", "needsInterop": false }, - "vuetify/components/VDataTable": { - "src": "../../vuetify/lib/components/VDataTable/index.js", - "file": "vuetify_components_VDataTable.js", - "fileHash": "d06d0545", - "needsInterop": false - }, - "vuetify/components/VFileInput": { - "src": "../../vuetify/lib/components/VFileInput/index.js", - "file": "vuetify_components_VFileInput.js", - "fileHash": "9b6d1640", - "needsInterop": false - }, - "vuetify/components/VMenu": { - "src": "../../vuetify/lib/components/VMenu/index.js", - "file": "vuetify_components_VMenu.js", - "fileHash": "6401d9c7", - "needsInterop": false - }, - "vuetify/components/VProgressLinear": { - "src": "../../vuetify/lib/components/VProgressLinear/index.js", - "file": "vuetify_components_VProgressLinear.js", - "fileHash": "f6998592", - "needsInterop": false - }, - "vuetify/components/VSelect": { - "src": "../../vuetify/lib/components/VSelect/index.js", - "file": "vuetify_components_VSelect.js", - "fileHash": "fff4e409", - "needsInterop": false - }, - "vuetify/components/VSnackbar": { - "src": "../../vuetify/lib/components/VSnackbar/index.js", - "file": "vuetify_components_VSnackbar.js", - "fileHash": "e8e1d7d3", - "needsInterop": false - }, - "vuetify/components/VCheckbox": { - "src": "../../vuetify/lib/components/VCheckbox/index.js", - "file": "vuetify_components_VCheckbox.js", - "fileHash": "6c2a3d1f", + "vuetify/components/VCard": { + "src": "../../vuetify/lib/components/VCard/index.js", + "file": "vuetify_components_VCard.js", + "fileHash": "ea6e451a", "needsInterop": false }, "vuetify/components/VChip": { "src": "../../vuetify/lib/components/VChip/index.js", "file": "vuetify_components_VChip.js", - "fileHash": "149d1552", + "fileHash": "3ec2d4cf", + "needsInterop": false + }, + "vuetify/components/VDataTable": { + "src": "../../vuetify/lib/components/VDataTable/index.js", + "file": "vuetify_components_VDataTable.js", + "fileHash": "1d4ec1bb", + "needsInterop": false + }, + "vuetify/components/VDialog": { + "src": "../../vuetify/lib/components/VDialog/index.js", + "file": "vuetify_components_VDialog.js", + "fileHash": "3fa692d0", + "needsInterop": false + }, + "vuetify/components/VFileInput": { + "src": "../../vuetify/lib/components/VFileInput/index.js", + "file": "vuetify_components_VFileInput.js", + "fileHash": "85476177", + "needsInterop": false + }, + "vuetify/components/VIcon": { + "src": "../../vuetify/lib/components/VIcon/index.js", + "file": "vuetify_components_VIcon.js", + "fileHash": "aa188e74", + "needsInterop": false + }, + "vuetify/components/VMenu": { + "src": "../../vuetify/lib/components/VMenu/index.js", + "file": "vuetify_components_VMenu.js", + "fileHash": "ca24447e", + "needsInterop": false + }, + "vuetify/components/VProgressLinear": { + "src": "../../vuetify/lib/components/VProgressLinear/index.js", + "file": "vuetify_components_VProgressLinear.js", + "fileHash": "da3b21f8", + "needsInterop": false + }, + "vuetify/components/VSelect": { + "src": "../../vuetify/lib/components/VSelect/index.js", + "file": "vuetify_components_VSelect.js", + "fileHash": "23a7041e", + "needsInterop": false + }, + "vuetify/components/VSnackbar": { + "src": "../../vuetify/lib/components/VSnackbar/index.js", + "file": "vuetify_components_VSnackbar.js", + "fileHash": "11f33cbb", + "needsInterop": false + }, + "vuetify/components/VToolbar": { + "src": "../../vuetify/lib/components/VToolbar/index.js", + "file": "vuetify_components_VToolbar.js", + "fileHash": "fb071d70", + "needsInterop": false + }, + "vuetify/components/VAlert": { + "src": "../../vuetify/lib/components/VAlert/index.js", + "file": "vuetify_components_VAlert.js", + "fileHash": "1e0ea25e", + "needsInterop": false + }, + "vuetify/components/VCheckbox": { + "src": "../../vuetify/lib/components/VCheckbox/index.js", + "file": "vuetify_components_VCheckbox.js", + "fileHash": "32261bb2", "needsInterop": false }, "vuetify/components/VExpansionPanel": { "src": "../../vuetify/lib/components/VExpansionPanel/index.js", "file": "vuetify_components_VExpansionPanel.js", - "fileHash": "e8175e4b", + "fileHash": "13bd06bb", "needsInterop": false }, "vuetify/components/VSlider": { "src": "../../vuetify/lib/components/VSlider/index.js", "file": "vuetify_components_VSlider.js", - "fileHash": "70d54e33", + "fileHash": "e6b50146", "needsInterop": false }, "vuetify/components/transitions": { "src": "../../vuetify/lib/components/transitions/index.js", "file": "vuetify_components_transitions.js", - "fileHash": "1ae42e15", - "needsInterop": false - }, - "vuetify/components/VImg": { - "src": "../../vuetify/lib/components/VImg/index.js", - "file": "vuetify_components_VImg.js", - "fileHash": "55902c55", - "needsInterop": false - }, - "vuetify/components/VProgressCircular": { - "src": "../../vuetify/lib/components/VProgressCircular/index.js", - "file": "vuetify_components_VProgressCircular.js", - "fileHash": "4ac970e2", - "needsInterop": false - }, - "vuetify/components/VSheet": { - "src": "../../vuetify/lib/components/VSheet/index.js", - "file": "vuetify_components_VSheet.js", - "fileHash": "60500776", + "fileHash": "1f8b3903", "needsInterop": false }, "vuetify/components/VForm": { "src": "../../vuetify/lib/components/VForm/index.js", "file": "vuetify_components_VForm.js", - "fileHash": "6098d2ad", + "fileHash": "ae2d51af", "needsInterop": false }, - "vuetify/components/VTextField": { - "src": "../../vuetify/lib/components/VTextField/index.js", - "file": "vuetify_components_VTextField.js", - "fileHash": "6c3b6c9f", - "needsInterop": false - }, - "vuetify/components/VBtnToggle": { - "src": "../../vuetify/lib/components/VBtnToggle/index.js", - "file": "vuetify_components_VBtnToggle.js", - "fileHash": "92b719ca", + "vuetify/components/VSheet": { + "src": "../../vuetify/lib/components/VSheet/index.js", + "file": "vuetify_components_VSheet.js", + "fileHash": "61437271", "needsInterop": false }, "vuetify/components/VTextarea": { "src": "../../vuetify/lib/components/VTextarea/index.js", "file": "vuetify_components_VTextarea.js", - "fileHash": "c4710e99", + "fileHash": "59ca68d2", + "needsInterop": false + }, + "vuetify/components/VBtnToggle": { + "src": "../../vuetify/lib/components/VBtnToggle/index.js", + "file": "vuetify_components_VBtnToggle.js", + "fileHash": "15a21fa2", + "needsInterop": false + }, + "vuetify/components/VProgressCircular": { + "src": "../../vuetify/lib/components/VProgressCircular/index.js", + "file": "vuetify_components_VProgressCircular.js", + "fileHash": "f97f0ffe", + "needsInterop": false + }, + "vuetify/components/VTextField": { + "src": "../../vuetify/lib/components/VTextField/index.js", + "file": "vuetify_components_VTextField.js", + "fileHash": "ef211ea3", + "needsInterop": false + }, + "vuetify/components/VTooltip": { + "src": "../../vuetify/lib/components/VTooltip/index.js", + "file": "vuetify_components_VTooltip.js", + "fileHash": "37f415ca", + "needsInterop": false + }, + "vuetify/components/VBottomNavigation": { + "src": "../../vuetify/lib/components/VBottomNavigation/index.js", + "file": "vuetify_components_VBottomNavigation.js", + "fileHash": "122f68ff", + "needsInterop": false + }, + "vuetify/components/VOverlay": { + "src": "../../vuetify/lib/components/VOverlay/index.js", + "file": "vuetify_components_VOverlay.js", + "fileHash": "6830175b", + "needsInterop": false + }, + "vuetify/components/VCombobox": { + "src": "../../vuetify/lib/components/VCombobox/index.js", + "file": "vuetify_components_VCombobox.js", + "fileHash": "144d5e6c", + "needsInterop": false + }, + "vuetify/components/VAvatar": { + "src": "../../vuetify/lib/components/VAvatar/index.js", + "file": "vuetify_components_VAvatar.js", + "fileHash": "81b98f53", + "needsInterop": false + }, + "vuetify/components/VImg": { + "src": "../../vuetify/lib/components/VImg/index.js", + "file": "vuetify_components_VImg.js", + "fileHash": "55ad767e", + "needsInterop": false + }, + "vuetify/components/VSwitch": { + "src": "../../vuetify/lib/components/VSwitch/index.js", + "file": "vuetify_components_VSwitch.js", + "fileHash": "7937a40d", "needsInterop": false } }, "chunks": { - "chunk-KPWCGWEX": { - "file": "chunk-KPWCGWEX.js" + "chunk-244ON7Z6": { + "file": "chunk-244ON7Z6.js" }, "chunk-5LZQZ6A5": { "file": "chunk-5LZQZ6A5.js" }, - "chunk-F6LZGKE2": { - "file": "chunk-F6LZGKE2.js" + "chunk-T4XKRUDE": { + "file": "chunk-T4XKRUDE.js" }, "chunk-4MMPKXON": { "file": "chunk-4MMPKXON.js" }, - "chunk-LHMOJDYM": { - "file": "chunk-LHMOJDYM.js" + "chunk-F6LZGKE2": { + "file": "chunk-F6LZGKE2.js" }, - "chunk-TSTWIJCO": { - "file": "chunk-TSTWIJCO.js" - }, - "chunk-YDVSSFCH": { - "file": "chunk-YDVSSFCH.js" - }, - "chunk-RNFCLGZV": { - "file": "chunk-RNFCLGZV.js" - }, - "chunk-WNCBJDZZ": { - "file": "chunk-WNCBJDZZ.js" - }, - "chunk-34XWDQGB": { - "file": "chunk-34XWDQGB.js" + "chunk-LFKLAYDH": { + "file": "chunk-LFKLAYDH.js" }, "chunk-RH43OVWP": { "file": "chunk-RH43OVWP.js" }, - "chunk-PEUMXYT2": { - "file": "chunk-PEUMXYT2.js" + "chunk-QMLWKRPM": { + "file": "chunk-QMLWKRPM.js" }, - "chunk-4HCXUCLO": { - "file": "chunk-4HCXUCLO.js" + "chunk-SCY7DFFY": { + "file": "chunk-SCY7DFFY.js" }, - "chunk-ERI3RTQS": { - "file": "chunk-ERI3RTQS.js" + "chunk-WGWEQK64": { + "file": "chunk-WGWEQK64.js" }, - "chunk-VSEC5QGQ": { - "file": "chunk-VSEC5QGQ.js" + "chunk-7M5DDQ46": { + "file": "chunk-7M5DDQ46.js" }, - "chunk-BYBKODOB": { - "file": "chunk-BYBKODOB.js" + "chunk-3NOJ7Z44": { + "file": "chunk-3NOJ7Z44.js" }, - "chunk-SHBPUR7N": { - "file": "chunk-SHBPUR7N.js" + "chunk-FCTFWI5H": { + "file": "chunk-FCTFWI5H.js" }, - "chunk-HGIC64KW": { - "file": "chunk-HGIC64KW.js" + "chunk-RB6DAYHX": { + "file": "chunk-RB6DAYHX.js" }, - "chunk-BXEVD6W6": { - "file": "chunk-BXEVD6W6.js" + "chunk-QV3QXWPM": { + "file": "chunk-QV3QXWPM.js" }, - "chunk-LPZZJ62X": { - "file": "chunk-LPZZJ62X.js" + "chunk-IZDIYS2S": { + "file": "chunk-IZDIYS2S.js" }, - "chunk-UIXKNP5E": { - "file": "chunk-UIXKNP5E.js" - }, - "chunk-DRSCVHAQ": { - "file": "chunk-DRSCVHAQ.js" - }, - "chunk-TSYQL5U3": { - "file": "chunk-TSYQL5U3.js" - }, - "chunk-MVBFAXEB": { - "file": "chunk-MVBFAXEB.js" - }, - "chunk-QC7VWQER": { - "file": "chunk-QC7VWQER.js" - }, - "chunk-NURQ3473": { - "file": "chunk-NURQ3473.js" - }, - "chunk-ET5GCC5W": { - "file": "chunk-ET5GCC5W.js" - }, - "chunk-W6DJL42A": { - "file": "chunk-W6DJL42A.js" - }, - "chunk-HV7P7R7J": { - "file": "chunk-HV7P7R7J.js" - }, - "chunk-MPVSDM4V": { - "file": "chunk-MPVSDM4V.js" - }, - "chunk-HOEZWRBG": { - "file": "chunk-HOEZWRBG.js" - }, - "chunk-Z3677HMS": { - "file": "chunk-Z3677HMS.js" - }, - "chunk-ADXDXPPR": { - "file": "chunk-ADXDXPPR.js" - }, - "chunk-7SKEB5LN": { - "file": "chunk-7SKEB5LN.js" - }, - "chunk-PCKQGDLK": { - "file": "chunk-PCKQGDLK.js" - }, - "chunk-6CRS5HI4": { - "file": "chunk-6CRS5HI4.js" - }, - "chunk-X7YBE6PF": { - "file": "chunk-X7YBE6PF.js" - }, - "chunk-YJD2PNP6": { - "file": "chunk-YJD2PNP6.js" - }, - "chunk-I4SZJCEY": { - "file": "chunk-I4SZJCEY.js" - }, - "chunk-OI3EYDCB": { - "file": "chunk-OI3EYDCB.js" + "chunk-6MO6MKTY": { + "file": "chunk-6MO6MKTY.js" }, "chunk-IZQZFEAL": { "file": "chunk-IZQZFEAL.js" }, - "chunk-J7Q2NMV7": { - "file": "chunk-J7Q2NMV7.js" + "chunk-6HLLVLOR": { + "file": "chunk-6HLLVLOR.js" }, - "chunk-4VABFUPG": { - "file": "chunk-4VABFUPG.js" + "chunk-RWSHRKUK": { + "file": "chunk-RWSHRKUK.js" + }, + "chunk-EKMPZMZF": { + "file": "chunk-EKMPZMZF.js" + }, + "chunk-OI3EYDCB": { + "file": "chunk-OI3EYDCB.js" + }, + "chunk-ITO3JWXJ": { + "file": "chunk-ITO3JWXJ.js" + }, + "chunk-PLNIG6WP": { + "file": "chunk-PLNIG6WP.js" + }, + "chunk-LPDOFVDK": { + "file": "chunk-LPDOFVDK.js" + }, + "chunk-CCNWGDBL": { + "file": "chunk-CCNWGDBL.js" + }, + "chunk-P6EQK5CJ": { + "file": "chunk-P6EQK5CJ.js" + }, + "chunk-H2QFYTJQ": { + "file": "chunk-H2QFYTJQ.js" + }, + "chunk-CMTCIV56": { + "file": "chunk-CMTCIV56.js" + }, + "chunk-MQSMF5CI": { + "file": "chunk-MQSMF5CI.js" + }, + "chunk-SXI5CS7S": { + "file": "chunk-SXI5CS7S.js" + }, + "chunk-X3WY3J75": { + "file": "chunk-X3WY3J75.js" + }, + "chunk-Q5BHIW5H": { + "file": "chunk-Q5BHIW5H.js" + }, + "chunk-ZB5S5BI5": { + "file": "chunk-ZB5S5BI5.js" + }, + "chunk-TTIGZHWR": { + "file": "chunk-TTIGZHWR.js" + }, + "chunk-PCKQGDLK": { + "file": "chunk-PCKQGDLK.js" + }, + "chunk-TN4XZECZ": { + "file": "chunk-TN4XZECZ.js" + }, + "chunk-L7BQJLEW": { + "file": "chunk-L7BQJLEW.js" + }, + "chunk-KHWE4FHS": { + "file": "chunk-KHWE4FHS.js" + }, + "chunk-IK67YVHF": { + "file": "chunk-IK67YVHF.js" }, "chunk-GAYXO4FM": { "file": "chunk-GAYXO4FM.js" @@ -369,11 +396,83 @@ "chunk-B4JFJDWM": { "file": "chunk-B4JFJDWM.js" }, - "chunk-U2DSRSME": { - "file": "chunk-U2DSRSME.js" + "chunk-WGYWYQOA": { + "file": "chunk-WGYWYQOA.js" }, - "chunk-FVDWV4NO": { - "file": "chunk-FVDWV4NO.js" + "chunk-NJV3GUE4": { + "file": "chunk-NJV3GUE4.js" + }, + "chunk-KPWCGWEX": { + "file": "chunk-KPWCGWEX.js" + }, + "chunk-2AYDXCXT": { + "file": "chunk-2AYDXCXT.js" + }, + "chunk-EXUNAYJA": { + "file": "chunk-EXUNAYJA.js" + }, + "chunk-CL6G3ICF": { + "file": "chunk-CL6G3ICF.js" + }, + "chunk-YGX2Z63P": { + "file": "chunk-YGX2Z63P.js" + }, + "chunk-BVUPSGRF": { + "file": "chunk-BVUPSGRF.js" + }, + "chunk-5ONGSJQ2": { + "file": "chunk-5ONGSJQ2.js" + }, + "chunk-GUNW7S2L": { + "file": "chunk-GUNW7S2L.js" + }, + "chunk-CAGZXMOS": { + "file": "chunk-CAGZXMOS.js" + }, + "chunk-N4LJHDYD": { + "file": "chunk-N4LJHDYD.js" + }, + "chunk-47GEKY7C": { + "file": "chunk-47GEKY7C.js" + }, + "chunk-KQXZAEJP": { + "file": "chunk-KQXZAEJP.js" + }, + "chunk-MVBFAXEB": { + "file": "chunk-MVBFAXEB.js" + }, + "chunk-UQALH6SL": { + "file": "chunk-UQALH6SL.js" + }, + "chunk-5AQLTWWS": { + "file": "chunk-5AQLTWWS.js" + }, + "chunk-W6DJL42A": { + "file": "chunk-W6DJL42A.js" + }, + "chunk-HOEZWRBG": { + "file": "chunk-HOEZWRBG.js" + }, + "chunk-ADXDXPPR": { + "file": "chunk-ADXDXPPR.js" + }, + "chunk-X7YBE6PF": { + "file": "chunk-X7YBE6PF.js" + }, + "chunk-YJD2PNP6": { + "file": "chunk-YJD2PNP6.js" + }, + "chunk-GSWLJLRT": { + "file": "chunk-GSWLJLRT.js" + }, + "chunk-MH76ZJYE": { + "file": "chunk-MH76ZJYE.js" + }, + "chunk-UXZ55AO7": { + "file": "chunk-UXZ55AO7.js" + }, + "chunk-6RFSM2OD": { + "file": "chunk-6RFSM2OD.js" }, "chunk-AJ7MUB7M": { "file": "chunk-AJ7MUB7M.js" @@ -384,69 +483,36 @@ "chunk-TM3MIDYC": { "file": "chunk-TM3MIDYC.js" }, - "chunk-CMZ4UYUX": { - "file": "chunk-CMZ4UYUX.js" + "chunk-4XZHKYGH": { + "file": "chunk-4XZHKYGH.js" }, "chunk-PIT7IT55": { "file": "chunk-PIT7IT55.js" }, - "chunk-VH7QIDM4": { - "file": "chunk-VH7QIDM4.js" - }, "chunk-AQK3CYVW": { "file": "chunk-AQK3CYVW.js" }, + "chunk-PAT7NP2Z": { + "file": "chunk-PAT7NP2Z.js" + }, "chunk-2HZIACSB": { "file": "chunk-2HZIACSB.js" }, - "chunk-WGYWYQOA": { - "file": "chunk-WGYWYQOA.js" - }, - "chunk-NJV3GUE4": { - "file": "chunk-NJV3GUE4.js" - }, - "chunk-6VKWM6MN": { - "file": "chunk-6VKWM6MN.js" - }, - "chunk-TS6Y6OVT": { - "file": "chunk-TS6Y6OVT.js" - }, - "chunk-YGX2Z63P": { - "file": "chunk-YGX2Z63P.js" - }, - "chunk-5BPWKCNA": { - "file": "chunk-5BPWKCNA.js" - }, - "chunk-BVUPSGRF": { - "file": "chunk-BVUPSGRF.js" + "chunk-OJDZBU5D": { + "file": "chunk-OJDZBU5D.js" }, "chunk-573D4TYC": { "file": "chunk-573D4TYC.js" }, - "chunk-GUNW7S2L": { - "file": "chunk-GUNW7S2L.js" + "chunk-DS4J67XG": { + "file": "chunk-DS4J67XG.js" }, - "chunk-5ONGSJQ2": { - "file": "chunk-5ONGSJQ2.js" - }, - "chunk-CAGZXMOS": { - "file": "chunk-CAGZXMOS.js" + "chunk-BHV5Z34M": { + "file": "chunk-BHV5Z34M.js" }, "chunk-6EZKHCRW": { "file": "chunk-6EZKHCRW.js" }, - "chunk-N4LJHDYD": { - "file": "chunk-N4LJHDYD.js" - }, - "chunk-OJDZBU5D": { - "file": "chunk-OJDZBU5D.js" - }, - "chunk-IYFY4IHW": { - "file": "chunk-IYFY4IHW.js" - }, - "chunk-KQXZAEJP": { - "file": "chunk-KQXZAEJP.js" - }, "chunk-XDSAO7OT": { "file": "chunk-XDSAO7OT.js" }, @@ -456,12 +522,6 @@ "chunk-KA77II4V": { "file": "chunk-KA77II4V.js" }, - "chunk-WXMECWZN": { - "file": "chunk-WXMECWZN.js" - }, - "chunk-BHV5Z34M": { - "file": "chunk-BHV5Z34M.js" - }, "chunk-3DSR7NCB": { "file": "chunk-3DSR7NCB.js" }, diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-244ON7Z6.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-244ON7Z6.js new file mode 100644 index 0000000..518b8da --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-244ON7Z6.js @@ -0,0 +1,663 @@ +import { + highlightResult, + makeFilterProps, + useFilter +} from "./chunk-RB6DAYHX.js"; +import { + VVirtualScroll, + makeSelectProps, + useMenuActivator, + useScrolling +} from "./chunk-IZDIYS2S.js"; +import { + VTextField, + makeVTextFieldProps +} from "./chunk-6MO6MKTY.js"; +import { + VCheckboxBtn +} from "./chunk-6HLLVLOR.js"; +import { + VChip +} from "./chunk-PLNIG6WP.js"; +import { + VMenu +} from "./chunk-LPDOFVDK.js"; +import { + VList, + VListItem, + VListSubheader, + transformItem, + useItems +} from "./chunk-MQSMF5CI.js"; +import { + VAvatar +} from "./chunk-SXI5CS7S.js"; +import { + VDivider +} from "./chunk-X3WY3J75.js"; +import { + useInputIcon +} from "./chunk-IK67YVHF.js"; +import { + useForm +} from "./chunk-GAYXO4FM.js"; +import { + forwardRefs +} from "./chunk-GUNW7S2L.js"; +import { + VIcon +} from "./chunk-4XZHKYGH.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; +import { + useTextColor +} from "./chunk-BHV5Z34M.js"; +import { + useLocale +} from "./chunk-ENTLCOCZ.js"; +import { + useProxiedModel +} from "./chunk-KA77II4V.js"; +import { + IN_BROWSER, + checkPrintable, + deepEqual, + ensureValidVNode, + escapeForRegex, + genericComponent, + isComposingIgnoreKey, + noop, + omit, + propsFactory, + useRender, + wrapInArray +} from "./chunk-LZ5T2ERG.js"; +import { + Fragment, + computed, + createBaseVNode, + createTextVNode, + createVNode, + mergeProps, + nextTick, + normalizeClass, + normalizeStyle, + ref, + shallowRef, + toRef, + watch +} from "./chunk-2MKFL3BX.js"; + +// node_modules/vuetify/lib/components/VCombobox/VCombobox.js +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCombobox/VCombobox.css"; +var makeVComboboxProps = propsFactory({ + alwaysFilter: Boolean, + autoSelectFirst: { + type: [Boolean, String] + }, + clearOnSelect: { + type: Boolean, + default: true + }, + delimiters: Array, + ...makeFilterProps({ + filterKeys: ["title"] + }), + ...makeSelectProps({ + hideNoData: true, + returnObject: true + }), + ...omit(makeVTextFieldProps({ + modelValue: null, + role: "combobox" + }), ["validationValue", "dirty"]) +}, "VCombobox"); +var VCombobox = genericComponent()({ + name: "VCombobox", + props: makeVComboboxProps(), + emits: { + "update:focused": (focused) => true, + "update:modelValue": (value) => true, + "update:search": (value) => true, + "update:menu": (value) => true + }, + setup(props, _ref) { + let { + emit, + slots + } = _ref; + const { + t + } = useLocale(); + const vTextFieldRef = ref(); + const isFocused = shallowRef(false); + const isPristine = shallowRef(true); + const listHasFocus = shallowRef(false); + const vMenuRef = ref(); + const vVirtualScrollRef = ref(); + const selectionIndex = shallowRef(-1); + let cleared = false; + const { + items, + transformIn, + transformOut + } = useItems(props); + const { + textColorClasses, + textColorStyles + } = useTextColor(() => vTextFieldRef.value?.color); + const { + InputIcon + } = useInputIcon(props); + const model = useProxiedModel(props, "modelValue", [], (v) => transformIn(wrapInArray(v)), (v) => { + const transformed = transformOut(v); + return props.multiple ? transformed : transformed[0] ?? null; + }); + const form = useForm(props); + const closableChips = toRef(() => props.closableChips && !form.isReadonly.value && !form.isDisabled.value); + const hasChips = computed(() => !!(props.chips || slots.chip)); + const hasSelectionSlot = computed(() => hasChips.value || !!slots.selection); + const _search = shallowRef(!props.multiple && !hasSelectionSlot.value ? model.value[0]?.title ?? "" : ""); + const _searchLock = shallowRef(null); + const search = computed({ + get: () => { + return _search.value; + }, + set: async (val) => { + _search.value = val ?? ""; + if (val === null || val === "" && !props.multiple && !hasSelectionSlot.value) { + model.value = []; + } else if (!props.multiple && !hasSelectionSlot.value) { + model.value = [transformItem(props, val)]; + nextTick(() => vVirtualScrollRef.value?.scrollToIndex(0)); + } + if (val && props.multiple && props.delimiters?.length) { + const values = splitByDelimiters(val); + if (values.length > 1) { + selectMultiple(values); + _search.value = ""; + } + } + if (!val) selectionIndex.value = -1; + isPristine.value = !val; + } + }); + const counterValue = computed(() => { + return typeof props.counterValue === "function" ? props.counterValue(model.value) : typeof props.counterValue === "number" ? props.counterValue : props.multiple ? model.value.length : search.value.length; + }); + const { + filteredItems, + getMatches + } = useFilter(props, items, () => _searchLock.value ?? (props.alwaysFilter || !isPristine.value ? search.value : "")); + const displayItems = computed(() => { + if (props.hideSelected && _searchLock.value === null) { + return filteredItems.value.filter((filteredItem) => !model.value.some((s) => s.value === filteredItem.value)); + } + return filteredItems.value; + }); + const menuDisabled = computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value); + const _menu = useProxiedModel(props, "menu"); + const menu = computed({ + get: () => _menu.value, + set: (v) => { + if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return; + if (v && menuDisabled.value) return; + _menu.value = v; + } + }); + const { + menuId, + ariaExpanded, + ariaControls + } = useMenuActivator(props, menu); + watch(_search, (value) => { + if (cleared) { + nextTick(() => cleared = false); + } else if (isFocused.value && !menu.value) { + menu.value = true; + } + emit("update:search", value); + }); + watch(model, (value) => { + if (!props.multiple && !hasSelectionSlot.value) { + _search.value = value[0]?.title ?? ""; + } + }); + const selectedValues = computed(() => model.value.map((selection) => selection.value)); + const firstSelectableItem = computed(() => displayItems.value.find((x) => x.type === "item" && !x.props.disabled)); + const highlightFirst = computed(() => { + const selectFirst = props.autoSelectFirst === true || props.autoSelectFirst === "exact" && search.value === firstSelectableItem.value?.title; + return selectFirst && displayItems.value.length > 0 && !isPristine.value && !listHasFocus.value; + }); + const listRef = ref(); + const listEvents = useScrolling(listRef, vTextFieldRef); + function onClear(e) { + cleared = true; + nextTick(() => cleared = false); + if (props.openOnClear) { + menu.value = true; + } + } + function onMousedownControl() { + if (menuDisabled.value) return; + menu.value = true; + } + function onMousedownMenuIcon(e) { + if (menuDisabled.value) return; + if (isFocused.value) { + e.preventDefault(); + e.stopPropagation(); + } + menu.value = !menu.value; + } + function onListKeydown(e) { + if (checkPrintable(e) || e.key === "Backspace") { + vTextFieldRef.value?.focus(); + } + } + function onKeydown(e) { + if (isComposingIgnoreKey(e) || form.isReadonly.value) return; + const selectionStart = vTextFieldRef.value?.selectionStart; + const length = model.value.length; + if (["Enter", "ArrowDown", "ArrowUp"].includes(e.key)) { + e.preventDefault(); + } + if (["Enter", "ArrowDown"].includes(e.key)) { + menu.value = true; + } + if (["Escape"].includes(e.key)) { + menu.value = false; + } + if (highlightFirst.value && ["Enter", "Tab"].includes(e.key) && firstSelectableItem.value && !model.value.some((_ref2) => { + let { + value + } = _ref2; + return value === firstSelectableItem.value.value; + })) { + select(firstSelectableItem.value); + } + if (e.key === "ArrowDown" && highlightFirst.value) { + listRef.value?.focus("next"); + } + if (e.key === "Enter" && search.value) { + select(transformItem(props, search.value), true, true); + if (hasSelectionSlot.value) _search.value = ""; + } + if (["Backspace", "Delete"].includes(e.key)) { + if (!props.multiple && hasSelectionSlot.value && model.value.length > 0 && !search.value) return select(model.value[0], false); + if (~selectionIndex.value) { + e.preventDefault(); + const originalSelectionIndex = selectionIndex.value; + select(model.value[selectionIndex.value], false); + selectionIndex.value = originalSelectionIndex >= length - 1 ? length - 2 : originalSelectionIndex; + } else if (e.key === "Backspace" && !search.value) { + selectionIndex.value = length - 1; + } + return; + } + if (!props.multiple) return; + if (e.key === "ArrowLeft") { + if (selectionIndex.value < 0 && selectionStart && selectionStart > 0) return; + const prev = selectionIndex.value > -1 ? selectionIndex.value - 1 : length - 1; + if (model.value[prev]) { + selectionIndex.value = prev; + } else { + selectionIndex.value = -1; + vTextFieldRef.value?.setSelectionRange(search.value.length, search.value.length); + } + } else if (e.key === "ArrowRight") { + if (selectionIndex.value < 0) return; + const next = selectionIndex.value + 1; + if (model.value[next]) { + selectionIndex.value = next; + } else { + selectionIndex.value = -1; + vTextFieldRef.value?.setSelectionRange(0, 0); + } + } else if (~selectionIndex.value && checkPrintable(e)) { + selectionIndex.value = -1; + } + } + function onPaste(e) { + const clipboardText = e?.clipboardData?.getData("Text") ?? ""; + const values = splitByDelimiters(clipboardText); + if (values.length > 1 && props.multiple) { + e.preventDefault(); + selectMultiple(values); + } + } + function onAfterEnter() { + if (props.eager) { + vVirtualScrollRef.value?.calculateVisibleItems(); + } + } + function onAfterLeave() { + if (isFocused.value) { + vTextFieldRef.value?.focus(); + } + isPristine.value = true; + _searchLock.value = null; + } + function select(item) { + let set = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : true; + let keepMenu = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false; + if (!item || item.props.disabled) return; + if (props.multiple) { + const index = model.value.findIndex((selection) => (props.valueComparator || deepEqual)(selection.value, item.value)); + const add = set == null ? !~index : set; + if (~index) { + const value = add ? [...model.value, item] : [...model.value]; + value.splice(index, 1); + model.value = value; + } else if (add) { + model.value = [...model.value, item]; + } + if (props.clearOnSelect) { + search.value = ""; + } + } else { + const add = set !== false; + model.value = add ? [item] : []; + if ((!isPristine.value || props.alwaysFilter) && _search.value) { + _searchLock.value = _search.value; + } + _search.value = add && !hasSelectionSlot.value ? item.title : ""; + nextTick(() => { + menu.value = keepMenu; + isPristine.value = true; + }); + } + } + function splitByDelimiters(val) { + const effectiveDelimiters = ["\n", ...props.delimiters ?? []]; + const signsToMatch = effectiveDelimiters.map(escapeForRegex).join("|"); + return val.split(new RegExp(`(?:${signsToMatch})+`)); + } + async function selectMultiple(values) { + for (let value of values) { + value = value.trim(); + if (value) { + select(transformItem(props, value)); + await nextTick(); + } + } + } + function onFocusin(e) { + isFocused.value = true; + setTimeout(() => { + listHasFocus.value = true; + }); + } + function onFocusout(e) { + listHasFocus.value = false; + } + watch(isFocused, (val, oldVal) => { + if (val || val === oldVal) return; + selectionIndex.value = -1; + menu.value = false; + if (search.value) { + if (props.multiple) { + select(transformItem(props, search.value)); + return; + } + if (!hasSelectionSlot.value) return; + if (model.value.some((_ref3) => { + let { + title + } = _ref3; + return title === search.value; + })) { + _search.value = ""; + } else { + select(transformItem(props, search.value)); + } + } + }); + watch(menu, (val) => { + if (!props.hideSelected && val && model.value.length && isPristine.value) { + const index = displayItems.value.findIndex((item) => model.value.some((s) => (props.valueComparator || deepEqual)(s.value, item.value))); + IN_BROWSER && window.requestAnimationFrame(() => { + index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index); + }); + } + if (val) _searchLock.value = null; + }); + watch(items, (newVal, oldVal) => { + if (menu.value) return; + if (isFocused.value && !oldVal.length && newVal.length) { + menu.value = true; + } + }); + useRender(() => { + const hasList = !!(!props.hideNoData || displayItems.value.length || slots["prepend-item"] || slots["append-item"] || slots["no-data"]); + const isDirty = model.value.length > 0; + const textFieldProps = VTextField.filterProps(props); + return createVNode(VTextField, mergeProps({ + "ref": vTextFieldRef + }, textFieldProps, { + "modelValue": search.value, + "onUpdate:modelValue": ($event) => search.value = $event, + "focused": isFocused.value, + "onUpdate:focused": ($event) => isFocused.value = $event, + "validationValue": model.externalValue, + "counterValue": counterValue.value, + "dirty": isDirty, + "class": ["v-combobox", { + "v-combobox--active-menu": menu.value, + "v-combobox--chips": !!props.chips, + "v-combobox--selection-slot": !!hasSelectionSlot.value, + "v-combobox--selecting-index": selectionIndex.value > -1, + [`v-combobox--${props.multiple ? "multiple" : "single"}`]: true + }, props.class], + "style": props.style, + "readonly": form.isReadonly.value, + "placeholder": isDirty ? void 0 : props.placeholder, + "onClick:clear": onClear, + "onMousedown:control": onMousedownControl, + "onKeydown": onKeydown, + "onPaste": onPaste, + "aria-expanded": ariaExpanded.value, + "aria-controls": ariaControls.value + }), { + ...slots, + default: (_ref4) => { + let { + id + } = _ref4; + return createBaseVNode(Fragment, null, [createVNode(VMenu, mergeProps({ + "id": menuId.value, + "ref": vMenuRef, + "modelValue": menu.value, + "onUpdate:modelValue": ($event) => menu.value = $event, + "activator": "parent", + "contentClass": "v-combobox__content", + "disabled": menuDisabled.value, + "eager": props.eager, + "maxHeight": 310, + "openOnClick": false, + "closeOnContentClick": false, + "onAfterEnter": onAfterEnter, + "onAfterLeave": onAfterLeave + }, props.menuProps), { + default: () => [hasList && createVNode(VList, mergeProps({ + "ref": listRef, + "filterable": true, + "selected": selectedValues.value, + "selectStrategy": props.multiple ? "independent" : "single-independent", + "onMousedown": (e) => e.preventDefault(), + "selectable": true, + "onKeydown": onListKeydown, + "onFocusin": onFocusin, + "onFocusout": onFocusout, + "tabindex": "-1", + "aria-live": "polite", + "aria-labelledby": `${id.value}-label`, + "aria-multiselectable": props.multiple, + "color": props.itemColor ?? props.color + }, listEvents, props.listProps), { + default: () => [slots["prepend-item"]?.(), !displayItems.value.length && !props.hideNoData && (slots["no-data"]?.() ?? createVNode(VListItem, { + "key": "no-data", + "title": t(props.noDataText) + }, null)), createVNode(VVirtualScroll, { + "ref": vVirtualScrollRef, + "renderless": true, + "items": displayItems.value, + "itemKey": "value" + }, { + default: (_ref5) => { + let { + item, + index, + itemRef + } = _ref5; + const itemProps = mergeProps(item.props, { + ref: itemRef, + key: item.value, + active: highlightFirst.value && item === firstSelectableItem.value ? true : void 0, + onClick: () => select(item, null), + "aria-posinset": index + 1, + "aria-setsize": displayItems.value.length + }); + if (item.type === "divider") { + return slots.divider?.({ + props: item.raw, + index + }) ?? createVNode(VDivider, mergeProps(item.props, { + "key": `divider-${index}` + }), null); + } + if (item.type === "subheader") { + return slots.subheader?.({ + props: item.raw, + index + }) ?? createVNode(VListSubheader, mergeProps(item.props, { + "key": `subheader-${index}` + }), null); + } + return slots.item?.({ + item, + index, + props: itemProps + }) ?? createVNode(VListItem, mergeProps(itemProps, { + "role": "option" + }), { + prepend: (_ref6) => { + let { + isSelected + } = _ref6; + return createBaseVNode(Fragment, null, [props.multiple && !props.hideSelected ? createVNode(VCheckboxBtn, { + "key": item.value, + "modelValue": isSelected, + "ripple": false, + "tabindex": "-1", + "aria-hidden": true, + "onClick": (event) => event.preventDefault() + }, null) : void 0, item.props.prependAvatar && createVNode(VAvatar, { + "image": item.props.prependAvatar + }, null), item.props.prependIcon && createVNode(VIcon, { + "icon": item.props.prependIcon + }, null)]); + }, + title: () => { + return isPristine.value ? item.title : highlightResult("v-combobox", item.title, getMatches(item)?.title); + } + }); + } + }), slots["append-item"]?.()] + })] + }), model.value.map((item, index) => { + function onChipClose(e) { + e.stopPropagation(); + e.preventDefault(); + select(item, false); + } + const slotProps = mergeProps(VChip.filterProps(item.props), { + "onClick:close": onChipClose, + onKeydown(e) { + if (e.key !== "Enter" && e.key !== " ") return; + e.preventDefault(); + e.stopPropagation(); + onChipClose(e); + }, + onMousedown(e) { + e.preventDefault(); + e.stopPropagation(); + }, + modelValue: true, + "onUpdate:modelValue": void 0 + }); + const hasSlot = hasChips.value ? !!slots.chip : !!slots.selection; + const slotContent = hasSlot ? ensureValidVNode(hasChips.value ? slots.chip({ + item, + index, + props: slotProps + }) : slots.selection({ + item, + index + })) : void 0; + if (hasSlot && !slotContent) return void 0; + return createBaseVNode("div", { + "key": item.value, + "class": normalizeClass(["v-combobox__selection", index === selectionIndex.value && ["v-combobox__selection--selected", textColorClasses.value]]), + "style": normalizeStyle(index === selectionIndex.value ? textColorStyles.value : {}) + }, [hasChips.value ? !slots.chip ? createVNode(VChip, mergeProps({ + "key": "chip", + "closable": closableChips.value, + "size": "small", + "text": item.title, + "disabled": item.props.disabled + }, slotProps), null) : createVNode(VDefaultsProvider, { + "key": "chip-defaults", + "defaults": { + VChip: { + closable: closableChips.value, + size: "small", + text: item.title + } + } + }, { + default: () => [slotContent] + }) : slotContent ?? createBaseVNode("span", { + "class": "v-combobox__selection-text" + }, [item.title, props.multiple && index < model.value.length - 1 && createBaseVNode("span", { + "class": "v-combobox__selection-comma" + }, [createTextVNode(",")])])]); + })]); + }, + "append-inner": function() { + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + return createBaseVNode(Fragment, null, [slots["append-inner"]?.(...args), (!props.hideNoData || props.items.length) && props.menuIcon ? createVNode(VIcon, { + "class": "v-combobox__menu-icon", + "color": vTextFieldRef.value?.fieldIconColor, + "icon": props.menuIcon, + "onMousedown": onMousedownMenuIcon, + "onClick": noop, + "aria-hidden": true, + "tabindex": "-1" + }, null) : void 0, props.appendInnerIcon && createVNode(InputIcon, { + "key": "append-icon", + "name": "appendInner", + "color": args[0].iconColor.value + }, null)]); + } + }); + }); + return forwardRefs({ + isFocused, + isPristine, + menu, + search, + selectionIndex, + filteredItems, + select + }, vTextFieldRef); + } +}); + +export { + VCombobox +}; +//# sourceMappingURL=chunk-244ON7Z6.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-244ON7Z6.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-244ON7Z6.js.map new file mode 100644 index 0000000..2776fa3 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-244ON7Z6.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../vuetify/src/components/VCombobox/VCombobox.tsx"], + "sourcesContent": ["// Styles\nimport './VCombobox.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDivider } from '@/components/VDivider'\nimport { VIcon } from '@/components/VIcon'\nimport { useInputIcon } from '@/components/VInput/InputIcon'\nimport { VList, VListItem, VListSubheader } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { makeSelectProps } from '@/components/VSelect/VSelect'\nimport { VTextField } from '@/components/VTextField'\nimport { makeVTextFieldProps } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from '../VSelect/useScrolling'\nimport { useTextColor } from '@/composables/color'\nimport { highlightResult, makeFilterProps, useFilter } from '@/composables/filter'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { transformItem, useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { useMenuActivator } from '@/composables/menuActivator'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, toRef, watch } from 'vue'\nimport {\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n escapeForRegex,\n genericComponent,\n IN_BROWSER,\n isComposingIgnoreKey,\n noop,\n omit,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val = string | ([T] extends [Primitive]\n ? T\n : (ReturnObject extends true ? T : any))\n\ntype Value =\n Multiple extends true\n ? readonly Val[]\n : Val | null\n\nexport const makeVComboboxProps = propsFactory({\n alwaysFilter: Boolean,\n autoSelectFirst: {\n type: [Boolean, String] as PropType,\n },\n clearOnSelect: {\n type: Boolean,\n default: true,\n },\n delimiters: Array as PropType,\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...makeSelectProps({ hideNoData: true, returnObject: true }),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty']),\n}, 'VCombobox')\n\ntype ItemType = T extends readonly (infer U)[] ? U : never\n\nexport const VCombobox = genericComponent,\n ReturnObject extends boolean = true,\n Multiple extends boolean = false,\n V extends Value = Value\n>(\n props: {\n items?: T\n itemTitle?: SelectItemKey>\n itemValue?: SelectItemKey>\n itemProps?: SelectItemKey>\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V | null\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: Omit & {\n item: { item: ListItem, index: number, props: Record }\n chip: { item: ListItem, index: number, props: Record }\n selection: { item: ListItem, index: number }\n subheader: { props: Record, index: number }\n divider: { props: Record, index: number }\n 'prepend-item': never\n 'append-item': never\n 'no-data': never\n }\n) => GenericProps>()({\n name: 'VCombobox',\n\n props: makeVComboboxProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (value: any) => true,\n 'update:search': (value: string) => true,\n 'update:menu': (value: boolean) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\n const isFocused = shallowRef(false)\n const isPristine = shallowRef(true)\n const listHasFocus = shallowRef(false)\n const vMenuRef = ref()\n const vVirtualScrollRef = ref()\n const selectionIndex = shallowRef(-1)\n let cleared = false\n const { items, transformIn, transformOut } = useItems(props)\n const { textColorClasses, textColorStyles } = useTextColor(() => vTextFieldRef.value?.color)\n const { InputIcon } = useInputIcon(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const form = useForm(props)\n\n const closableChips = toRef(() => props.closableChips && !form.isReadonly.value && !form.isDisabled.value)\n const hasChips = computed(() => !!(props.chips || slots.chip))\n const hasSelectionSlot = computed(() => hasChips.value || !!slots.selection)\n\n const _search = shallowRef(!props.multiple && !hasSelectionSlot.value ? model.value[0]?.title ?? '' : '')\n const _searchLock = shallowRef(null)\n\n const search = computed({\n get: () => {\n return _search.value\n },\n set: async (val: string | null) => {\n _search.value = val ?? ''\n if (val === null || (val === '' && !props.multiple && !hasSelectionSlot.value)) {\n model.value = []\n } else if (!props.multiple && !hasSelectionSlot.value) {\n model.value = [transformItem(props, val)]\n nextTick(() => vVirtualScrollRef.value?.scrollToIndex(0))\n }\n\n if (val && props.multiple && props.delimiters?.length) {\n const values = splitByDelimiters(val)\n if (values.length > 1) {\n selectMultiple(values)\n _search.value = ''\n }\n }\n\n if (!val) selectionIndex.value = -1\n\n isPristine.value = !val\n },\n })\n\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function' ? props.counterValue(model.value)\n : typeof props.counterValue === 'number' ? props.counterValue\n : (props.multiple ? model.value.length : search.value.length)\n })\n\n const { filteredItems, getMatches } = useFilter(\n props,\n items,\n () => _searchLock.value ?? (props.alwaysFilter || !isPristine.value ? search.value : '')\n )\n\n const displayItems = computed(() => {\n if (props.hideSelected && _searchLock.value === null) {\n return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value))\n }\n return filteredItems.value\n })\n\n const menuDisabled = computed(() => (\n (props.hideNoData && !displayItems.value.length) ||\n form.isReadonly.value || form.isDisabled.value\n ))\n const _menu = useProxiedModel(props, 'menu')\n const menu = computed({\n get: () => _menu.value,\n set: v => {\n if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return\n if (v && menuDisabled.value) return\n _menu.value = v\n },\n })\n\n const { menuId, ariaExpanded, ariaControls } = useMenuActivator(props, menu)\n\n watch(_search, value => {\n if (cleared) {\n // wait for clear to finish, VTextField sets _search to null\n // then search computed triggers and updates _search to ''\n nextTick(() => (cleared = false))\n } else if (isFocused.value && !menu.value) {\n menu.value = true\n }\n\n emit('update:search', value)\n })\n\n watch(model, value => {\n if (!props.multiple && !hasSelectionSlot.value) {\n _search.value = value[0]?.title ?? ''\n }\n })\n\n const selectedValues = computed(() => model.value.map(selection => selection.value))\n\n const firstSelectableItem = computed(() => displayItems.value.find(x => x.type === 'item' && !x.props.disabled))\n\n const highlightFirst = computed(() => {\n const selectFirst = props.autoSelectFirst === true ||\n (props.autoSelectFirst === 'exact' && search.value === firstSelectableItem.value?.title)\n return selectFirst &&\n displayItems.value.length > 0 &&\n !isPristine.value &&\n !listHasFocus.value\n })\n\n const listRef = ref()\n const listEvents = useScrolling(listRef, vTextFieldRef)\n function onClear (e: MouseEvent) {\n cleared = true\n nextTick(() => (cleared = false))\n\n if (props.openOnClear) {\n menu.value = true\n }\n }\n function onMousedownControl () {\n if (menuDisabled.value) return\n\n menu.value = true\n }\n function onMousedownMenuIcon (e: MouseEvent) {\n if (menuDisabled.value) return\n\n if (isFocused.value) {\n e.preventDefault()\n e.stopPropagation()\n }\n menu.value = !menu.value\n }\n function onListKeydown (e: KeyboardEvent) {\n if (checkPrintable(e) || e.key === 'Backspace') {\n vTextFieldRef.value?.focus()\n }\n }\n // eslint-disable-next-line complexity\n function onKeydown (e: KeyboardEvent) {\n if (isComposingIgnoreKey(e) || form.isReadonly.value) return\n\n const selectionStart = vTextFieldRef.value?.selectionStart\n const length = model.value.length\n\n if (['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown'].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape'].includes(e.key)) {\n menu.value = false\n }\n\n if (\n highlightFirst.value &&\n ['Enter', 'Tab'].includes(e.key) &&\n firstSelectableItem.value &&\n !model.value.some(({ value }) => value === firstSelectableItem.value!.value)\n ) {\n select(firstSelectableItem.value)\n }\n\n if (e.key === 'ArrowDown' && highlightFirst.value) {\n listRef.value?.focus('next')\n }\n\n if (e.key === 'Enter' && search.value) {\n select(transformItem(props, search.value), true, true)\n if (hasSelectionSlot.value) _search.value = ''\n }\n\n if (['Backspace', 'Delete'].includes(e.key)) {\n if (\n !props.multiple &&\n hasSelectionSlot.value &&\n model.value.length > 0 &&\n !search.value\n ) return select(model.value[0], false)\n\n if (~selectionIndex.value) {\n e.preventDefault()\n const originalSelectionIndex = selectionIndex.value\n select(model.value[selectionIndex.value], false)\n\n selectionIndex.value = originalSelectionIndex >= length - 1 ? (length - 2) : originalSelectionIndex\n } else if (e.key === 'Backspace' && !search.value) {\n selectionIndex.value = length - 1\n }\n\n return\n }\n\n if (!props.multiple) return\n\n if (e.key === 'ArrowLeft') {\n if (selectionIndex.value < 0 && selectionStart && selectionStart > 0) return\n\n const prev = selectionIndex.value > -1\n ? selectionIndex.value - 1\n : length - 1\n\n if (model.value[prev]) {\n selectionIndex.value = prev\n } else {\n selectionIndex.value = -1\n vTextFieldRef.value?.setSelectionRange(search.value.length, search.value.length)\n }\n } else if (e.key === 'ArrowRight') {\n if (selectionIndex.value < 0) return\n\n const next = selectionIndex.value + 1\n\n if (model.value[next]) {\n selectionIndex.value = next\n } else {\n selectionIndex.value = -1\n vTextFieldRef.value?.setSelectionRange(0, 0)\n }\n } else if (~selectionIndex.value && checkPrintable(e)) {\n selectionIndex.value = -1\n }\n }\n function onPaste (e: ClipboardEvent) {\n const clipboardText = e?.clipboardData?.getData('Text') ?? ''\n const values = splitByDelimiters(clipboardText)\n\n if (values.length > 1 && props.multiple) {\n e.preventDefault()\n selectMultiple(values)\n }\n }\n function onAfterEnter () {\n if (props.eager) {\n vVirtualScrollRef.value?.calculateVisibleItems()\n }\n }\n function onAfterLeave () {\n if (isFocused.value) {\n vTextFieldRef.value?.focus()\n }\n isPristine.value = true\n _searchLock.value = null\n }\n /** @param set - null means toggle */\n function select (item: ListItem | undefined, set: boolean | null = true, keepMenu = false) {\n if (!item || item.props.disabled) return\n\n if (props.multiple) {\n const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value))\n const add = set == null ? !~index : set\n\n if (~index) {\n const value = add ? [...model.value, item] : [...model.value]\n value.splice(index, 1)\n model.value = value\n } else if (add) {\n model.value = [...model.value, item]\n }\n\n if (props.clearOnSelect) {\n search.value = ''\n }\n } else {\n const add = set !== false\n model.value = add ? [item] : []\n if ((!isPristine.value || props.alwaysFilter) && _search.value) {\n _searchLock.value = _search.value\n }\n _search.value = add && !hasSelectionSlot.value ? item.title : ''\n\n // watch for search watcher to trigger\n nextTick(() => {\n menu.value = keepMenu\n isPristine.value = true\n })\n }\n }\n function splitByDelimiters (val: string) {\n const effectiveDelimiters = ['\\n', ...props.delimiters ?? []]\n const signsToMatch = effectiveDelimiters.map(escapeForRegex).join('|')\n return val.split(new RegExp(`(?:${signsToMatch})+`))\n }\n async function selectMultiple (values: string[]) {\n for (let value of values) {\n value = value.trim()\n if (value) {\n select(transformItem(props, value))\n await nextTick()\n }\n }\n }\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n setTimeout(() => {\n listHasFocus.value = true\n })\n }\n function onFocusout (e: FocusEvent) {\n listHasFocus.value = false\n }\n\n watch(isFocused, (val, oldVal) => {\n if (val || val === oldVal) return\n\n selectionIndex.value = -1\n menu.value = false\n\n if (search.value) {\n if (props.multiple) {\n select(transformItem(props, search.value))\n return\n }\n\n if (!hasSelectionSlot.value) return\n\n if (model.value.some(({ title }) => title === search.value)) {\n _search.value = ''\n } else {\n select(transformItem(props, search.value))\n }\n }\n })\n\n watch(menu, val => {\n if (!props.hideSelected && val && model.value.length && isPristine.value) {\n const index = displayItems.value.findIndex(\n item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value))\n )\n IN_BROWSER && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n\n if (val) _searchLock.value = null\n })\n\n watch(items, (newVal, oldVal) => {\n if (menu.value) return\n\n if (isFocused.value && !oldVal.length && newVal.length) {\n menu.value = true\n }\n })\n\n useRender(() => {\n const hasList = !!(\n (!props.hideNoData || displayItems.value.length) ||\n slots['prepend-item'] ||\n slots['append-item'] ||\n slots['no-data']\n )\n const isDirty = model.value.length > 0\n const textFieldProps = VTextField.filterProps(props)\n\n return (\n -1,\n [`v-combobox--${props.multiple ? 'multiple' : 'single'}`]: true,\n },\n props.class,\n ]}\n style={ props.style }\n readonly={ form.isReadonly.value }\n placeholder={ isDirty ? undefined : props.placeholder }\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onKeydown={ onKeydown }\n onPaste={ onPaste }\n aria-expanded={ ariaExpanded.value }\n aria-controls={ ariaControls.value }\n >\n {{\n ...slots,\n default: ({ id }) => (\n <>\n \n { hasList && (\n e.preventDefault() }\n selectable\n onKeydown={ onListKeydown }\n onFocusin={ onFocusin }\n onFocusout={ onFocusout }\n tabindex=\"-1\"\n aria-live=\"polite\"\n aria-labelledby={ `${id.value}-label` }\n aria-multiselectable={ props.multiple }\n color={ props.itemColor ?? props.color }\n { ...listEvents }\n { ...props.listProps }\n >\n { slots['prepend-item']?.() }\n\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n \n ))}\n\n \n { ({ item, index, itemRef }) => {\n const itemProps = mergeProps(item.props, {\n ref: itemRef,\n key: item.value,\n active: (highlightFirst.value && item === firstSelectableItem.value) ? true : undefined,\n onClick: () => select(item, null),\n 'aria-posinset': index + 1,\n 'aria-setsize': displayItems.value.length,\n })\n\n if (item.type === 'divider') {\n return slots.divider?.({ props: item.raw, index }) ?? (\n \n )\n }\n\n if (item.type === 'subheader') {\n return slots.subheader?.({ props: item.raw, index }) ?? (\n \n )\n }\n\n return slots.item?.({\n item,\n index,\n props: itemProps,\n }) ?? (\n \n {{\n prepend: ({ isSelected }) => (\n <>\n { props.multiple && !props.hideSelected ? (\n event.preventDefault() }\n />\n ) : undefined }\n\n { item.props.prependAvatar && (\n \n )}\n\n { item.props.prependIcon && (\n \n )}\n \n ),\n title: () => {\n return isPristine.value\n ? item.title\n : highlightResult('v-combobox', item.title, getMatches(item)?.title)\n },\n }}\n \n )\n }}\n \n\n { slots['append-item']?.() }\n \n )}\n \n\n { model.value.map((item, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(item, false)\n }\n\n const slotProps = mergeProps(VChip.filterProps(item.props), {\n 'onClick:close': onChipClose,\n onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter' && e.key !== ' ') return\n\n e.preventDefault()\n e.stopPropagation()\n\n onChipClose(e)\n },\n onMousedown (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n },\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n })\n\n const hasSlot = hasChips.value ? !!slots.chip : !!slots.selection\n const slotContent = hasSlot\n ? ensureValidVNode(\n hasChips.value\n ? slots.chip!({ item, index, props: slotProps })\n : slots.selection!({ item, index })\n )\n : undefined\n\n if (hasSlot && !slotContent) return undefined\n\n return (\n \n { hasChips.value ? (\n !slots.chip ? (\n \n ) : (\n \n { slotContent }\n \n )\n ) : (\n slotContent ?? (\n \n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n ,\n )}\n \n )\n )}\n \n )\n })}\n \n ),\n 'append-inner': (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { (!props.hideNoData || props.items.length) && props.menuIcon ? (\n \n ) : undefined }\n { props.appendInnerIcon && (\n \n )}\n \n ),\n }}\n \n )\n })\n\n return forwardRefs({\n isFocused,\n isPristine,\n menu,\n search,\n selectionIndex,\n filteredItems,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VCombobox = InstanceType\n"], + "mappings": "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", + "names": ["makeVComboboxProps", "propsFactory", "alwaysFilter", "Boolean", "autoSelectFirst", "type", "String", "clearOnSelect", "default", "delimiters", "Array", "makeFilterProps", "filterKeys", "makeSelectProps", "hideNoData", "returnObject", "omit", "makeVTextFieldProps", "modelValue", "role", "VCombobox", "genericComponent", "name", "props", "emits", "focused", "value", "setup", "_ref", "emit", "slots", "t", "useLocale", "vTextFieldRef", "ref", "isFocused", "shallowRef", "isPristine", "listHasFocus", "vMenuRef", "vVirtualScrollRef", "selectionIndex", "cleared", "items", "transformIn", "transformOut", "useItems", "textColorClasses", "textColorStyles", "useTextColor", "color", "InputIcon", "useInputIcon", "model", "useProxiedModel", "v", "wrapInArray", "transformed", "multiple", "form", "useForm", "closableChips", "toRef", "isReadonly", "isDisabled", "hasChips", "computed", "chips", "chip", "hasSelectionSlot", "selection", "_search", "title", "_searchLock", "search", "get", "set", "val", "transformItem", "nextTick", "scrollToIndex", "length", "values", "splitByDelimiters", "selectMultiple", "counterValue", "filteredItems", "getMatches", "useFilter", "displayItems", "hideSelected", "filter", "filteredItem", "some", "s", "menuDisabled", "_menu", "menu", "ΨopenChildren", "size", "menuId", "ariaExpanded", "ariaControls", "useMenuActivator", "watch", "selectedValues", "map", "firstSelectableItem", "find", "x", "disabled", "highlightFirst", "selectFirst", "listRef", "listEvents", "useScrolling", "onClear", "e", "openOnClear", "onMousedownControl", "onMousedownMenuIcon", "preventDefault", "stopPropagation", "onListKeydown", "checkPrintable", "key", "focus", "onKeydown", "isComposingIgnoreKey", "selectionStart", "includes", "_ref2", "select", "originalSelectionIndex", "prev", "setSelectionRange", "next", "onPaste", "clipboardText", "clipboardData", "getData", "onAfterEnter", "eager", "calculateVisibleItems", "onAfterLeave", "item", "arguments", "undefined", "keepMenu", "index", "findIndex", "valueComparator", "deepEqual", "add", "splice", "effectiveDelimiters", "signsToMatch", "escapeForRegex", "join", "split", "RegExp", "trim", "onFocusin", "setTimeout", "onFocusout", "oldVal", "_ref3", "IN_BROWSER", "window", "requestAnimationFrame", "newVal", "useRender", "hasList", "isDirty", "textFieldProps", "VTextField", "filterProps", "_createVNode", "_mergeProps", "$event", "externalValue", "class", "style", "placeholder", "_ref4", "id", "_createElementVNode", "_Fragment", "VMenu", "menuProps", "VList", "itemColor", "listProps", "VListItem", "noDataText", "VVirtualScroll", "_ref5", "itemRef", "itemProps", "mergeProps", "active", "onClick", "divider", "raw", "VDivider", "subheader", "VListSubheader", "prepend", "_ref6", "isSelected", "VCheckboxBtn", "event", "prependAvatar", "VAvatar", "prependIcon", "VIcon", "highlightResult", "onChipClose", "slotProps", "VChip", "onMousedown", "hasSlot", "slotContent", "ensureValidVNode", "_normalizeClass", "_normalizeStyle", "VDefaultsProvider", "closable", "text", "_createTextVNode", "_len", "args", "_key", "menuIcon", "fieldIconColor", "noop", "appendInnerIcon", "iconColor", "forwardRefs"] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6VKWM6MN.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-2AYDXCXT.js similarity index 54% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6VKWM6MN.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-2AYDXCXT.js index aff327f..7d59abb 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6VKWM6MN.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-2AYDXCXT.js @@ -1,31 +1,6 @@ import { - VOverlay, - makeVOverlayProps -} from "./chunk-TS6Y6OVT.js"; -import { - useScopeId -} from "./chunk-BVUPSGRF.js"; -import { - forwardRefs -} from "./chunk-GUNW7S2L.js"; -import { - useProxiedModel -} from "./chunk-KA77II4V.js"; -import { - genericComponent, - keys, - omit, - propsFactory, - useRender + keys } from "./chunk-LZ5T2ERG.js"; -import { - computed, - createVNode, - mergeProps, - ref, - toRef, - useId -} from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/directives/resize/index.js function mounted(el, binding) { @@ -163,95 +138,10 @@ var Touch = { }; var touch_default = Touch; -// node_modules/vuetify/lib/components/VTooltip/VTooltip.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTooltip/VTooltip.css"; -var makeVTooltipProps = propsFactory({ - id: String, - interactive: Boolean, - text: String, - ...omit(makeVOverlayProps({ - closeOnBack: false, - location: "end", - locationStrategy: "connected", - eager: true, - minWidth: 0, - offset: 10, - openOnClick: false, - openOnHover: true, - origin: "auto", - scrim: false, - scrollStrategy: "reposition", - transition: null - }), ["absolute", "retainFocus", "captureFocus", "disableInitialFocus"]) -}, "VTooltip"); -var VTooltip = genericComponent()({ - name: "VTooltip", - props: makeVTooltipProps(), - emits: { - "update:modelValue": (value) => true - }, - setup(props, _ref) { - let { - slots - } = _ref; - const isActive = useProxiedModel(props, "modelValue"); - const { - scopeId - } = useScopeId(); - const uid = useId(); - const id = toRef(() => props.id || `v-tooltip-${uid}`); - const overlay = ref(); - const location = computed(() => { - return props.location.split(" ").length > 1 ? props.location : props.location + " center"; - }); - const origin = computed(() => { - return props.origin === "auto" || props.origin === "overlap" || props.origin.split(" ").length > 1 || props.location.split(" ").length > 1 ? props.origin : props.origin + " center"; - }); - const transition = toRef(() => { - if (props.transition != null) return props.transition; - return isActive.value ? "scale-transition" : "fade-transition"; - }); - const activatorProps = computed(() => mergeProps({ - "aria-describedby": id.value - }, props.activatorProps)); - useRender(() => { - const overlayProps = VOverlay.filterProps(props); - return createVNode(VOverlay, mergeProps({ - "ref": overlay, - "class": ["v-tooltip", { - "v-tooltip--interactive": props.interactive - }, props.class], - "style": props.style, - "id": id.value - }, overlayProps, { - "modelValue": isActive.value, - "onUpdate:modelValue": ($event) => isActive.value = $event, - "transition": transition.value, - "absolute": true, - "location": location.value, - "origin": origin.value, - "role": "tooltip", - "activatorProps": activatorProps.value, - "_disableGlobalStack": true - }, scopeId), { - activator: slots.activator, - default: function() { - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - return slots.default?.(...args) ?? props.text; - } - }); - }); - return forwardRefs({}, overlay); - } -}); - export { Resize, resize_default, Touch, - touch_default, - VTooltip + touch_default }; -//# sourceMappingURL=chunk-6VKWM6MN.js.map +//# sourceMappingURL=chunk-2AYDXCXT.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-2AYDXCXT.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-2AYDXCXT.js.map new file mode 100644 index 0000000..b971084 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-2AYDXCXT.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../vuetify/src/directives/resize/index.ts", "../../vuetify/src/directives/touch/index.ts"], + "sourcesContent": ["// Types\nimport type { DirectiveBinding } from 'vue'\n\ninterface ResizeDirectiveBinding extends Omit {\n value: () => void\n modifiers?: {\n active?: boolean\n quiet?: boolean\n }\n}\n\nfunction mounted (el: HTMLElement, binding: ResizeDirectiveBinding) {\n const handler = binding.value\n const options: AddEventListenerOptions = {\n passive: !binding.modifiers?.active,\n }\n\n window.addEventListener('resize', handler, options)\n\n el._onResize = Object(el._onResize)\n el._onResize![binding.instance!.$.uid] = {\n handler,\n options,\n }\n\n if (!binding.modifiers?.quiet) {\n handler()\n }\n}\n\nfunction unmounted (el: HTMLElement, binding: ResizeDirectiveBinding) {\n if (!el._onResize?.[binding.instance!.$.uid]) return\n\n const { handler, options } = el._onResize[binding.instance!.$.uid]!\n\n window.removeEventListener('resize', handler, options)\n\n delete el._onResize[binding.instance!.$.uid]\n}\n\nexport const Resize = {\n mounted,\n unmounted,\n}\n\nexport default Resize\n", "// Utilities\nimport { keys } from '@/util'\n\n// Types\nimport type {\n DirectiveBinding,\n} from 'vue'\n\nexport interface TouchHandlers {\n start?: (wrapperEvent: { originalEvent: TouchEvent } & TouchData) => void\n end?: (wrapperEvent: { originalEvent: TouchEvent } & TouchData) => void\n move?: (wrapperEvent: { originalEvent: TouchEvent } & TouchData) => void\n left?: (wrapper: TouchData) => void\n right?: (wrapper: TouchData) => void\n up?: (wrapper: TouchData) => void\n down?: (wrapper: TouchData) => void\n}\n\nexport interface TouchData {\n touchstartX: number\n touchstartY: number\n touchmoveX: number\n touchmoveY: number\n touchendX: number\n touchendY: number\n offsetX: number\n offsetY: number\n}\n\nexport type TouchWrapper = TouchHandlers & TouchData\n\nexport interface TouchValue extends TouchHandlers {\n parent?: boolean\n options?: AddEventListenerOptions\n}\n\nexport interface TouchStoredHandlers {\n touchstart: (e: TouchEvent) => void\n touchend: (e: TouchEvent) => void\n touchmove: (e: TouchEvent) => void\n}\n\nexport interface TouchDirectiveBinding extends Omit {\n value?: TouchValue\n}\n\nconst handleGesture = (wrapper: TouchWrapper) => {\n const { touchstartX, touchendX, touchstartY, touchendY } = wrapper\n const dirRatio = 0.5\n const minDistance = 16\n wrapper.offsetX = touchendX - touchstartX\n wrapper.offsetY = touchendY - touchstartY\n\n if (Math.abs(wrapper.offsetY) < dirRatio * Math.abs(wrapper.offsetX)) {\n wrapper.left && (touchendX < touchstartX - minDistance) && wrapper.left(wrapper)\n wrapper.right && (touchendX > touchstartX + minDistance) && wrapper.right(wrapper)\n }\n\n if (Math.abs(wrapper.offsetX) < dirRatio * Math.abs(wrapper.offsetY)) {\n wrapper.up && (touchendY < touchstartY - minDistance) && wrapper.up(wrapper)\n wrapper.down && (touchendY > touchstartY + minDistance) && wrapper.down(wrapper)\n }\n}\n\nfunction touchstart (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchstartX = touch.clientX\n wrapper.touchstartY = touch.clientY\n\n wrapper.start?.({ originalEvent: event, ...wrapper })\n}\n\nfunction touchend (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchendX = touch.clientX\n wrapper.touchendY = touch.clientY\n\n wrapper.end?.({ originalEvent: event, ...wrapper })\n\n handleGesture(wrapper)\n}\n\nfunction touchmove (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchmoveX = touch.clientX\n wrapper.touchmoveY = touch.clientY\n\n wrapper.move?.({ originalEvent: event, ...wrapper })\n}\n\nfunction createHandlers (value: TouchHandlers = {}): TouchStoredHandlers {\n const wrapper = {\n touchstartX: 0,\n touchstartY: 0,\n touchendX: 0,\n touchendY: 0,\n touchmoveX: 0,\n touchmoveY: 0,\n offsetX: 0,\n offsetY: 0,\n left: value.left,\n right: value.right,\n up: value.up,\n down: value.down,\n start: value.start,\n move: value.move,\n end: value.end,\n }\n\n return {\n touchstart: (e: TouchEvent) => touchstart(e, wrapper),\n touchend: (e: TouchEvent) => touchend(e, wrapper),\n touchmove: (e: TouchEvent) => touchmove(e, wrapper),\n }\n}\n\nfunction mounted (el: HTMLElement, binding: TouchDirectiveBinding) {\n const value = binding.value\n const target = value?.parent ? el.parentElement : el\n const options = value?.options ?? { passive: true }\n const uid = binding.instance?.$.uid // TODO: use custom uid generator\n\n if (!target || uid === undefined) return\n\n const handlers = createHandlers(binding.value)\n\n target._touchHandlers = target._touchHandlers ?? Object.create(null)\n target._touchHandlers![uid] = handlers\n\n keys(handlers).forEach(eventName => {\n target.addEventListener(eventName, handlers[eventName], options)\n })\n}\n\nfunction unmounted (el: HTMLElement, binding: TouchDirectiveBinding) {\n const target = binding.value?.parent ? el.parentElement : el\n const uid = binding.instance?.$.uid\n\n if (!target?._touchHandlers || uid === undefined) return\n\n const handlers = target._touchHandlers[uid]\n\n keys(handlers).forEach(eventName => {\n target.removeEventListener(eventName, handlers[eventName])\n })\n\n delete target._touchHandlers[uid]\n}\n\nexport const Touch = {\n mounted,\n unmounted,\n}\n\nexport default Touch\n"], + "mappings": "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", + "names": ["mounted", "el", "binding", "handler", "value", "options", "passive", "modifiers", "active", "window", "addEventListener", "_onResize", "Object", "instance", "$", "uid", "quiet", "unmounted", "removeEventListener", "Resize", "handleGesture", "wrapper", "touchstartX", "touchendX", "touchstartY", "touchendY", "dirRatio", "minDistance", "offsetX", "offsetY", "Math", "abs", "left", "right", "up", "down", "touchstart", "event", "touch", "changedTouches", "clientX", "clientY", "start", "originalEvent", "touchend", "end", "touchmove", "touchmoveX", "touchmoveY", "move", "createHandlers", "value", "arguments", "length", "undefined", "e", "mounted", "el", "binding", "target", "parent", "parentElement", "options", "passive", "uid", "instance", "$", "handlers", "_touchHandlers", "Object", "create", "keys", "forEach", "eventName", "addEventListener", "unmounted", "removeEventListener", "Touch"] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MPVSDM4V.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-3NOJ7Z44.js similarity index 97% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MPVSDM4V.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-3NOJ7Z44.js index 2270a76..010b63a 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MPVSDM4V.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-3NOJ7Z44.js @@ -1,18 +1,18 @@ +import { + VAvatar +} from "./chunk-SXI5CS7S.js"; +import { + VImg +} from "./chunk-TTIGZHWR.js"; import { makePositionProps, usePosition } from "./chunk-HOEZWRBG.js"; -import { - VAvatar -} from "./chunk-Z3677HMS.js"; import { genOverlays, makeVariantProps, useVariant } from "./chunk-ADXDXPPR.js"; -import { - VImg -} from "./chunk-6CRS5HI4.js"; import { makeBorderProps, useBorder @@ -25,7 +25,7 @@ import { LoaderSlot, makeLoaderProps, useLoader -} from "./chunk-U2DSRSME.js"; +} from "./chunk-UXZ55AO7.js"; import { makeLocationProps, useLocation @@ -36,31 +36,31 @@ import { } from "./chunk-TM3MIDYC.js"; import { VIcon -} from "./chunk-CMZ4UYUX.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; +} from "./chunk-4XZHKYGH.js"; import { makeRoundedProps, useRounded } from "./chunk-AQK3CYVW.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { makeTagProps } from "./chunk-2HZIACSB.js"; import { - ripple_default -} from "./chunk-5BPWKCNA.js"; + IconValue +} from "./chunk-OJDZBU5D.js"; import { makeRouterProps, useLink } from "./chunk-573D4TYC.js"; +import { + ripple_default +} from "./chunk-DS4J67XG.js"; import { makeDimensionProps, useDimension } from "./chunk-6EZKHCRW.js"; -import { - IconValue -} from "./chunk-OJDZBU5D.js"; import { makeThemeProps, provideTheme @@ -87,7 +87,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VCard/VCard.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCard/VCard.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCard/VCard.css"; // node_modules/vuetify/lib/components/VCard/VCardActions.js var makeVCardActionsProps = propsFactory({ @@ -441,4 +441,4 @@ export { VCardText, VCard }; -//# sourceMappingURL=chunk-MPVSDM4V.js.map +//# sourceMappingURL=chunk-3NOJ7Z44.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MPVSDM4V.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-3NOJ7Z44.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MPVSDM4V.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-3NOJ7Z44.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IYFY4IHW.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-47GEKY7C.js similarity index 88% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IYFY4IHW.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-47GEKY7C.js index 6c0248b..770bb60 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IYFY4IHW.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-47GEKY7C.js @@ -23,7 +23,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VApp/VApp.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VApp/VApp.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VApp/VApp.css"; var makeVAppProps = propsFactory({ ...makeComponentProps(), ...omit(makeLayoutProps(), ["fullHeight"]), @@ -67,4 +67,4 @@ var VApp = genericComponent()({ export { VApp }; -//# sourceMappingURL=chunk-IYFY4IHW.js.map +//# sourceMappingURL=chunk-47GEKY7C.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IYFY4IHW.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-47GEKY7C.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IYFY4IHW.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-47GEKY7C.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4VABFUPG.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4VABFUPG.js.map deleted file mode 100644 index 5ccfd76..0000000 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4VABFUPG.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../vuetify/src/components/VLabel/VLabel.tsx", "../../vuetify/src/components/VMessages/VMessages.tsx", "../../vuetify/src/components/VInput/VInput.tsx", "../../vuetify/src/components/VInput/InputIcon.tsx", "../../vuetify/src/composables/focus.ts", "../../vuetify/src/labs/rules/rules.ts", "../../vuetify/src/composables/validation.ts"], - "sourcesContent": ["// Styles\nimport './VLabel.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeThemeProps } from '@/composables/theme'\n\n// Utilities\nimport { EventProp, genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVLabelProps = propsFactory({\n text: String,\n\n onClick: EventProp<[MouseEvent]>(),\n\n ...makeComponentProps(),\n ...makeThemeProps(),\n}, 'VLabel')\n\nexport const VLabel = genericComponent()({\n name: 'VLabel',\n\n props: makeVLabelProps(),\n\n setup (props, { slots }) {\n useRender(() => (\n \n { props.text }\n\n { slots.default?.() }\n \n ))\n\n return {}\n },\n})\n\nexport type VLabel = InstanceType\n", "// Styles\nimport './VMessages.sass'\n\n// Components\nimport { VSlideYTransition } from '@/components/transitions'\n\n// Composables\nimport { useTextColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { Component, PropType } from 'vue'\n\nexport type VMessageSlot = {\n message: string\n}\n\nexport type VMessagesSlots = {\n message: VMessageSlot\n}\n\nexport const makeVMessagesProps = propsFactory({\n active: Boolean,\n color: String,\n messages: {\n type: [Array, String] as PropType,\n default: () => ([]),\n },\n\n ...makeComponentProps(),\n ...makeTransitionProps({\n transition: {\n component: VSlideYTransition as Component,\n leaveAbsolute: true,\n group: true,\n },\n }),\n}, 'VMessages')\n\nexport const VMessages = genericComponent()({\n name: 'VMessages',\n\n props: makeVMessagesProps(),\n\n setup (props, { slots }) {\n const messages = computed(() => wrapInArray(props.messages))\n const { textColorClasses, textColorStyles } = useTextColor(() => props.color)\n\n useRender(() => (\n \n { props.active && (\n messages.value.map((message, i) => (\n \n { slots.message ? slots.message({ message }) : message }\n \n ))\n )}\n \n ))\n\n return {}\n },\n})\n\nexport type VMessages = InstanceType\n", "// Styles\nimport './VInput.sass'\n\n// Components\nimport { useInputIcon } from '@/components/VInput/InputIcon'\nimport { VMessages } from '@/components/VMessages/VMessages'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { IconValue } from '@/composables/icons'\nimport { useRtl } from '@/composables/locale'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeValidationProps, useValidation } from '@/composables/validation'\n\n// Utilities\nimport { computed, toRef, useId } from 'vue'\nimport { EventProp, genericComponent, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef, PropType, Ref } from 'vue'\nimport type { VMessageSlot } from '@/components/VMessages/VMessages'\nimport type { GenericProps } from '@/util'\n\nexport interface VInputSlot {\n id: ComputedRef\n messagesId: ComputedRef\n isDirty: ComputedRef\n isDisabled: ComputedRef\n isReadonly: ComputedRef\n isPristine: Ref\n isValid: ComputedRef\n isValidating: Ref\n hasDetails: Ref\n reset: () => void\n resetValidation: () => void\n validate: () => void\n}\n\nexport const makeVInputProps = propsFactory({\n id: String,\n appendIcon: IconValue,\n baseColor: String,\n centerAffix: {\n type: Boolean,\n default: true,\n },\n color: String,\n glow: Boolean,\n iconColor: [Boolean, String],\n prependIcon: IconValue,\n hideDetails: [Boolean, String] as PropType,\n hideSpinButtons: Boolean,\n hint: String,\n persistentHint: Boolean,\n messages: {\n type: [Array, String] as PropType,\n default: () => ([]),\n },\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n validator: (v: any) => ['horizontal', 'vertical'].includes(v),\n },\n\n 'onClick:prepend': EventProp<[MouseEvent]>(),\n 'onClick:append': EventProp<[MouseEvent]>(),\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...pick(makeDimensionProps(), [\n 'maxWidth',\n 'minWidth',\n 'width',\n ]),\n ...makeThemeProps(),\n ...makeValidationProps(),\n}, 'VInput')\n\nexport type VInputSlots = {\n default: VInputSlot\n prepend: VInputSlot\n append: VInputSlot\n details: VInputSlot\n message: VMessageSlot\n}\n\nexport const VInput = genericComponent(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VInputSlots,\n) => GenericProps>()({\n name: 'VInput',\n\n props: {\n ...makeVInputProps(),\n },\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { attrs, slots, emit }) {\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { themeClasses } = provideTheme(props)\n const { rtlClasses } = useRtl()\n const { InputIcon } = useInputIcon(props)\n\n const uid = useId()\n const id = computed(() => props.id || `input-${uid}`)\n\n const {\n errorMessages,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n validationClasses,\n } = useValidation(props, 'v-input', id)\n\n const messages = computed(() => {\n if (props.errorMessages?.length || (!isPristine.value && errorMessages.value.length)) {\n return errorMessages.value\n } else if (props.hint && (props.persistentHint || props.focused)) {\n return props.hint\n } else {\n return props.messages\n }\n })\n\n const hasMessages = toRef(() => messages.value.length > 0)\n\n const hasDetails = toRef(() => !props.hideDetails || (\n props.hideDetails === 'auto' &&\n (hasMessages.value || !!slots.details)\n ))\n\n const messagesId = computed(() => hasDetails.value ? `${id.value}-messages` : undefined)\n\n const slotProps = computed(() => ({\n id,\n messagesId,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n hasDetails,\n reset,\n resetValidation,\n validate,\n }))\n\n const color = toRef(() => {\n return props.error || props.disabled ? undefined\n : props.focused ? props.color\n : props.baseColor\n })\n\n const iconColor = toRef(() => {\n if (!props.iconColor) return undefined\n\n return props.iconColor === true ? color.value : props.iconColor\n })\n\n useRender(() => {\n const hasPrepend = !!(slots.prepend || props.prependIcon)\n const hasAppend = !!(slots.append || props.appendIcon)\n\n return (\n \n { hasPrepend && (\n
\n { slots.prepend\n ? slots.prepend(slotProps.value)\n : (props.prependIcon && (\n \n ))\n }\n
\n )}\n\n { slots.default && (\n
\n { slots.default?.(slotProps.value) }\n
\n )}\n\n { hasAppend && (\n
\n { slots.append\n ? slots.append(slotProps.value)\n : (props.appendIcon && (\n \n ))\n }\n
\n )}\n\n { hasDetails.value && (\n \n \n\n { slots.details?.(slotProps.value) }\n \n )}\n \n )\n })\n\n return {\n reset,\n resetValidation,\n validate,\n isValid,\n errorMessages,\n }\n },\n})\n\nexport type VInput = InstanceType\n", "// Components\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { callEvent } from '@/util'\n\n// Types\nimport type { IconValue } from '@/composables/icons'\nimport type { EventProp } from '@/util'\n\ntype names = 'clear' | 'prepend' | 'append' | 'appendInner' | 'prependInner'\n\ntype InputIconProps = {\n label: string | undefined\n} & {\n [K in `${T}Icon`]: IconValue | undefined\n} & {\n [K in `onClick:${T}`]: EventProp | undefined\n}\n\ntype Listeners = U extends `onClick:${infer V extends names}` ? V : never\n\nexport function useInputIcon> (props: T & InputIconProps) {\n const { t } = useLocale()\n\n function InputIcon ({ name, color, ...attrs }: { name: Extract, color?: string }) {\n const localeKey = {\n prepend: 'prependAction',\n prependInner: 'prependAction',\n append: 'appendAction',\n appendInner: 'appendAction',\n clear: 'clear',\n }[name]\n const listener = props[`onClick:${name}`] as EventProp | undefined\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter' && e.key !== ' ') return\n\n e.preventDefault()\n e.stopPropagation()\n callEvent(listener, new PointerEvent('click', e))\n }\n\n const label = listener && localeKey\n ? t(`$vuetify.input.${localeKey}`, props.label ?? '')\n : undefined\n\n return (\n \n )\n }\n\n return { InputIcon }\n}\n", "// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { EventProp, getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nexport interface FocusProps {\n focused: boolean\n 'onUpdate:focused': ((focused: boolean) => any) | undefined\n}\n\n// Composables\nexport const makeFocusProps = propsFactory({\n focused: Boolean,\n 'onUpdate:focused': EventProp<[boolean]>(),\n}, 'focus')\n\nexport function useFocus (\n props: FocusProps,\n name = getCurrentInstanceName()\n) {\n const isFocused = useProxiedModel(props, 'focused')\n const focusClasses = toRef(() => {\n return ({\n [`${name}--focused`]: isFocused.value,\n })\n })\n\n function focus () {\n isFocused.value = true\n }\n\n function blur () {\n isFocused.value = false\n }\n\n return { focusClasses, isFocused, focus, blur }\n}\n", "// Utilities\nimport { computed, inject, toRef } from 'vue'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\nimport type { LocaleInstance } from '@/composables/locale'\nimport type { ValidationProps, ValidationRule } from '@/composables/validation'\n\nexport type ValidationRuleBuilderWithoutOptions = (err?: string) => ValidationRule\nexport type ValidationRuleBuilderWithOptions = (options: T, err?: string) => ValidationRule\nexport type ValidationRuleBuilder =\n | ValidationRuleBuilderWithoutOptions\n | ValidationRuleBuilderWithOptions\n\nexport interface RuleAliases {\n [name: string]: ValidationRuleBuilder\n required: ValidationRuleBuilderWithoutOptions\n email: ValidationRuleBuilderWithoutOptions\n number: ValidationRuleBuilderWithoutOptions\n integer: ValidationRuleBuilderWithoutOptions\n capital: ValidationRuleBuilderWithoutOptions\n maxLength: ValidationRuleBuilderWithOptions\n minLength: ValidationRuleBuilderWithOptions\n strictLength: ValidationRuleBuilderWithOptions\n exclude: ValidationRuleBuilderWithOptions\n notEmpty: ValidationRuleBuilderWithoutOptions\n pattern: ValidationRuleBuilderWithOptions\n}\n\nexport type RulesOptions = {\n aliases?: Partial\n}\n\ntype ValidationRuleParams = [any, string?]\nexport type ValidationAlias = string | [string, ...ValidationRuleParams]\n\nexport type RulesInstance = {\n resolve: (fn: () => ValidationProps['rules']) => Readonly>\n aliases: RuleAliases\n}\n\nexport function createRules (options: RulesOptions | undefined, locale: LocaleInstance) {\n const { t } = locale\n\n const aliases: RuleAliases = {\n required: (err?: string) => {\n return (v: any) => {\n // If the modifier .number is used, the 0 will be a number and it's a falsy value so we need to check for it\n return v === 0 || !!v || t(err || '$vuetify.rules.required')\n }\n },\n email: (err?: string) => {\n return (v: any) => (!v || (typeof v === 'string' && /^.+@\\S+\\.\\S+$/.test(v))) || t(err || '$vuetify.rules.email')\n },\n number: (err?: string) => {\n return (v: string) => !v || !isNaN(Number(v)) || t(err || '$vuetify.rules.number')\n },\n integer: (err?: string) => {\n return (v: string) => (/^[\\d]*$/.test(v)) || t(err || '$vuetify.rules.integer')\n },\n capital: (err?: string) => {\n return (v: string) => (/^[A-Z]*$/.test(v)) || t(err || '$vuetify.rules.capital')\n },\n maxLength: (len: number, err?: string) => {\n return (v: any) => (!v || v.length <= len) || t(err || '$vuetify.rules.maxLength', len)\n },\n minLength: (len: number, err?: string) => {\n return (v: any) => (!v || v.length >= len) || t(err || '$vuetify.rules.minLength', len)\n },\n strictLength: (len: number, err?: string) => {\n return (v: any) => (!v || v.length === len) || t(err || '$vuetify.rules.strictLength', len)\n },\n exclude: (forbiddenCharacters: string[], err?: string) => {\n return (v: string) => {\n let error: string | true = true\n for (const character of forbiddenCharacters) {\n if (v.includes(character)) error = err || t('$vuetify.rules.exclude', character)\n }\n return error\n }\n },\n notEmpty: (err?: string) => {\n return (v: any) => (v && v.length > 0) || t(err || '$vuetify.rules.notEmpty')\n },\n pattern: (pattern: RegExp, err?: string) => {\n return (v: any) => (!v || pattern.test(v) || t(err || '$vuetify.rules.pattern'))\n },\n\n ...options?.aliases,\n }\n\n function resolve (fn: () => ValidationProps['rules']) {\n return computed(() => fn().map(rule => {\n let ruleName: string | null = null\n let ruleParams: ValidationRuleParams = [undefined]\n if (Array.isArray(rule)) {\n ruleName = rule[0]\n ruleParams = rule.slice(1) as ValidationRuleParams\n } else if (typeof rule === 'string') {\n ruleName = rule\n }\n\n if (ruleName !== null) {\n if (ruleName.startsWith('$')) {\n ruleName = ruleName.slice(1)\n }\n\n return aliases[ruleName]?.(...ruleParams)\n } else {\n return rule\n }\n }))\n }\n\n return {\n resolve,\n aliases,\n }\n}\n\nexport const RulesSymbol: InjectionKey = Symbol.for('vuetify:rules')\n\nexport function useRules (): RuleAliases\nexport function useRules (fn: () => ValidationProps['rules']): Readonly> | Readonly>\n\nexport function useRules (fn?: () => ValidationProps['rules']) {\n const rules = inject(RulesSymbol, null)\n\n if (!fn) {\n if (!rules) {\n throw new Error('Could not find Vuetify rules injection')\n }\n return rules.aliases\n }\n\n return rules?.resolve(fn) ?? toRef(fn)\n}\n", "// Composables\nimport { makeFocusProps } from '@/composables/focus'\nimport { useForm } from '@/composables/form'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useToggleScope } from '@/composables/toggleScope'\nimport { useRules } from '@/labs/rules'\n\n// Utilities\nimport { computed, nextTick, onBeforeMount, onBeforeUnmount, onMounted, ref, shallowRef, unref, useId, watch } from 'vue'\nimport { getCurrentInstance, getCurrentInstanceName, propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { ValidationAlias } from '@/labs/rules'\nimport type { EventProp, MaybeRef } from '@/util'\n\nexport type ValidationResult = string | boolean\nexport type ValidationRule =\n | ValidationResult\n | PromiseLike\n | ((value: any) => ValidationResult)\n | ((value: any) => PromiseLike)\n\ntype ValidateOnValue = 'blur' | 'input' | 'submit' | 'invalid-input'\ntype ValidateOn =\n | ValidateOnValue\n | `${ValidateOnValue} lazy`\n | `${ValidateOnValue} eager`\n | `lazy ${ValidateOnValue}`\n | `eager ${ValidateOnValue}`\n | 'lazy'\n | 'eager'\n\nexport interface ValidationProps {\n disabled: boolean | null\n error: boolean\n errorMessages: string | readonly string[] | null\n focused: boolean\n maxErrors: string | number\n name: string | undefined\n label: string | undefined\n readonly: boolean | null\n rules: readonly (ValidationRule | ValidationAlias)[]\n modelValue: any\n 'onUpdate:modelValue': EventProp | undefined\n validateOn?: ValidateOn\n validationValue: any\n}\n\nexport const makeValidationProps = propsFactory({\n disabled: {\n type: Boolean as PropType,\n default: null,\n },\n error: Boolean,\n errorMessages: {\n type: [Array, String] as PropType,\n default: () => ([]),\n },\n maxErrors: {\n type: [Number, String],\n default: 1,\n },\n name: String,\n label: String,\n readonly: {\n type: Boolean as PropType,\n default: null,\n },\n rules: {\n type: Array as PropType,\n default: () => ([]),\n },\n modelValue: null,\n validateOn: String as PropType,\n validationValue: null,\n\n ...makeFocusProps(),\n}, 'validation')\n\nexport function useValidation (\n props: ValidationProps,\n name = getCurrentInstanceName(),\n id: MaybeRef = useId(),\n) {\n const model = useProxiedModel(props, 'modelValue')\n const validationModel = computed(() => props.validationValue === undefined ? model.value : props.validationValue)\n const form = useForm(props)\n const rules = useRules(() => props.rules)\n const internalErrorMessages = ref([])\n const isPristine = shallowRef(true)\n const isDirty = computed(() => !!(\n wrapInArray(model.value === '' ? null : model.value).length ||\n wrapInArray(validationModel.value === '' ? null : validationModel.value).length\n ))\n const errorMessages = computed(() => {\n return props.errorMessages?.length\n ? wrapInArray(props.errorMessages).concat(internalErrorMessages.value).slice(0, Math.max(0, Number(props.maxErrors)))\n : internalErrorMessages.value\n })\n const validateOn = computed(() => {\n let value = (props.validateOn ?? form.validateOn?.value) || 'input'\n if (value === 'lazy') value = 'input lazy'\n if (value === 'eager') value = 'input eager'\n const set = new Set(value?.split(' ') ?? [])\n\n return {\n input: set.has('input'),\n blur: set.has('blur') || set.has('input') || set.has('invalid-input'),\n invalidInput: set.has('invalid-input'),\n lazy: set.has('lazy'),\n eager: set.has('eager'),\n }\n })\n const isValid = computed(() => {\n if (props.error || props.errorMessages?.length) return false\n if (!props.rules.length) return true\n if (isPristine.value) {\n return internalErrorMessages.value.length || validateOn.value.lazy ? null : true\n } else {\n return !internalErrorMessages.value.length\n }\n })\n const isValidating = shallowRef(false)\n const validationClasses = computed(() => {\n return {\n [`${name}--error`]: isValid.value === false,\n [`${name}--dirty`]: isDirty.value,\n [`${name}--disabled`]: form.isDisabled.value,\n [`${name}--readonly`]: form.isReadonly.value,\n }\n })\n\n const vm = getCurrentInstance('validation')\n const uid = computed(() => props.name ?? unref(id))\n\n onBeforeMount(() => {\n form.register?.({\n id: uid.value,\n vm,\n validate,\n reset,\n resetValidation,\n })\n })\n\n onBeforeUnmount(() => {\n form.unregister?.(uid.value)\n })\n\n onMounted(async () => {\n if (!validateOn.value.lazy) {\n await validate(!validateOn.value.eager)\n }\n form.update?.(uid.value, isValid.value, errorMessages.value)\n })\n\n useToggleScope(() => validateOn.value.input || (validateOn.value.invalidInput && isValid.value === false), () => {\n watch(validationModel, () => {\n if (validationModel.value != null) {\n validate()\n } else if (props.focused) {\n const unwatch = watch(() => props.focused, val => {\n if (!val) validate()\n\n unwatch()\n })\n }\n })\n })\n\n useToggleScope(() => validateOn.value.blur, () => {\n watch(() => props.focused, val => {\n if (!val) validate()\n })\n })\n\n watch([isValid, errorMessages], () => {\n form.update?.(uid.value, isValid.value, errorMessages.value)\n })\n\n async function reset () {\n model.value = null\n await nextTick()\n await resetValidation()\n }\n\n async function resetValidation () {\n isPristine.value = true\n if (!validateOn.value.lazy) {\n await validate(!validateOn.value.eager)\n } else {\n internalErrorMessages.value = []\n }\n }\n\n async function validate (silent = false) {\n const results = []\n\n isValidating.value = true\n\n for (const rule of rules.value) {\n if (results.length >= Number(props.maxErrors ?? 1)) {\n break\n }\n\n const handler = typeof rule === 'function' ? rule : () => rule\n const result = await handler(validationModel.value)\n\n if (result === true) continue\n\n if (result !== false && typeof result !== 'string') {\n // eslint-disable-next-line no-console\n console.warn(`${result} is not a valid value. Rule functions must return boolean true or a string.`)\n\n continue\n }\n\n results.push(result || '')\n }\n\n internalErrorMessages.value = results\n isValidating.value = false\n isPristine.value = silent\n\n return internalErrorMessages.value\n }\n\n return {\n errorMessages,\n isDirty,\n isDisabled: form.isDisabled,\n isReadonly: form.isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n validationClasses,\n }\n}\n"], - "mappings": "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", - "names": ["makeVLabelProps", "propsFactory", "text", "String", "onClick", "EventProp", "makeComponentProps", "makeThemeProps", "VLabel", "genericComponent", "name", "props", "setup", "_ref", "slots", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "default", "makeVMessagesProps", "propsFactory", "active", "Boolean", "color", "String", "messages", "type", "Array", "default", "makeComponentProps", "makeTransitionProps", "transition", "component", "VSlideYTransition", "leaveAbsolute", "group", "VMessages", "genericComponent", "name", "props", "setup", "_ref", "slots", "computed", "wrapInArray", "textColorClasses", "textColorStyles", "useTextColor", "useRender", "_createVNode", "MaybeTransition", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "map", "message", "i", "_createElementVNode", "useInputIcon", "props", "t", "useLocale", "InputIcon", "_ref", "name", "color", "attrs", "localeKey", "prepend", "prependInner", "append", "appendInner", "clear", "listener", "onKeydown", "e", "key", "preventDefault", "stopPropagation", "callEvent", "PointerEvent", "label", "undefined", "_createVNode", "VIcon", "_mergeProps", "makeFocusProps", "propsFactory", "focused", "Boolean", "EventProp", "useFocus", "props", "name", "arguments", "length", "undefined", "getCurrentInstanceName", "isFocused", "useProxiedModel", "focusClasses", "toRef", "value", "focus", "blur", "RulesSymbol", "Symbol", "for", "useRules", "fn", "rules", "inject", "Error", "aliases", "resolve", "toRef", "makeValidationProps", "propsFactory", "disabled", "type", "Boolean", "default", "error", "errorMessages", "Array", "String", "maxErrors", "Number", "name", "label", "readonly", "rules", "modelValue", "validateOn", "validationValue", "makeFocusProps", "useValidation", "props", "arguments", "length", "undefined", "getCurrentInstanceName", "id", "useId", "model", "useProxiedModel", "validationModel", "computed", "value", "form", "useForm", "useRules", "internalErrorMessages", "ref", "isPristine", "shallowRef", "isDirty", "wrapInArray", "concat", "slice", "Math", "max", "set", "Set", "split", "input", "has", "blur", "invalidInput", "lazy", "eager", "isValid", "isValidating", "validationClasses", "isDisabled", "isReadonly", "vm", "getCurrentInstance", "uid", "unref", "onBeforeMount", "register", "validate", "reset", "resetValidation", "onBeforeUnmount", "unregister", "onMounted", "update", "useToggleScope", "watch", "focused", "unwatch", "val", "nextTick", "silent", "results", "rule", "handler", "result", "console", "warn", "push", "makeVInputProps", "propsFactory", "id", "String", "appendIcon", "IconValue", "baseColor", "centerAffix", "type", "Boolean", "default", "color", "glow", "iconColor", "prependIcon", "hideDetails", "hideSpinButtons", "hint", "persistentHint", "messages", "Array", "direction", "validator", "v", "includes", "EventProp", "makeComponentProps", "makeDensityProps", "pick", "makeDimensionProps", "makeThemeProps", "makeValidationProps", "VInput", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "attrs", "slots", "emit", "densityClasses", "useDensity", "dimensionStyles", "useDimension", "themeClasses", "provideTheme", "rtlClasses", "useRtl", "InputIcon", "useInputIcon", "uid", "useId", "computed", "errorMessages", "isDirty", "isDisabled", "isReadonly", "isPristine", "isValid", "isValidating", "reset", "resetValidation", "validate", "validationClasses", "useValidation", "length", "focused", "hasMessages", "toRef", "hasDetails", "details", "messagesId", "undefined", "slotProps", "error", "disabled", "useRender", "hasPrepend", "prepend", "hasAppend", "append", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "_createVNode", "VMessages", "message"] -} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CMZ4UYUX.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4XZHKYGH.js similarity index 93% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CMZ4UYUX.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4XZHKYGH.js index 963aeab..d624d23 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CMZ4UYUX.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4XZHKYGH.js @@ -33,7 +33,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VIcon/VIcon.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VIcon/VIcon.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VIcon/VIcon.css"; var makeVIconProps = propsFactory({ color: String, disabled: Boolean, @@ -106,4 +106,4 @@ var VIcon = genericComponent()({ export { VIcon }; -//# sourceMappingURL=chunk-CMZ4UYUX.js.map +//# sourceMappingURL=chunk-4XZHKYGH.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CMZ4UYUX.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4XZHKYGH.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CMZ4UYUX.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4XZHKYGH.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-NURQ3473.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-5AQLTWWS.js similarity index 91% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-NURQ3473.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-5AQLTWWS.js index 42f0b6d..6fc3cb8 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-NURQ3473.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-5AQLTWWS.js @@ -44,7 +44,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VBtnGroup/VBtnGroup.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBtnGroup/VBtnGroup.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBtnGroup/VBtnGroup.css"; var makeVBtnGroupProps = propsFactory({ baseColor: String, divided: Boolean, @@ -105,7 +105,7 @@ var VBtnGroup = genericComponent()({ }); // node_modules/vuetify/lib/components/VBtnToggle/VBtnToggle.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBtnToggle/VBtnToggle.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBtnToggle/VBtnToggle.css"; var VBtnToggleSymbol = /* @__PURE__ */ Symbol.for("vuetify:v-btn-toggle"); var makeVBtnToggleProps = propsFactory({ ...makeVBtnGroupProps(), @@ -157,4 +157,4 @@ export { VBtnToggleSymbol, VBtnToggle }; -//# sourceMappingURL=chunk-NURQ3473.js.map +//# sourceMappingURL=chunk-5AQLTWWS.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-NURQ3473.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-5AQLTWWS.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-NURQ3473.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-5AQLTWWS.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6HLLVLOR.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6HLLVLOR.js new file mode 100644 index 0000000..4ae5dfa --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6HLLVLOR.js @@ -0,0 +1,162 @@ +import { + VSelectionControl, + makeVSelectionControlProps +} from "./chunk-KHWE4FHS.js"; +import { + VInput, + makeVInputProps, + useFocus +} from "./chunk-IK67YVHF.js"; +import { + forwardRefs +} from "./chunk-GUNW7S2L.js"; +import { + IconValue +} from "./chunk-OJDZBU5D.js"; +import { + useProxiedModel +} from "./chunk-KA77II4V.js"; +import { + filterInputAttrs, + genericComponent, + omit, + propsFactory, + useRender +} from "./chunk-LZ5T2ERG.js"; +import { + createVNode, + mergeProps, + ref, + toRef, + useId +} from "./chunk-2MKFL3BX.js"; + +// node_modules/vuetify/lib/components/VCheckbox/VCheckbox.js +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCheckbox/VCheckbox.css"; + +// node_modules/vuetify/lib/components/VCheckbox/VCheckboxBtn.js +var makeVCheckboxBtnProps = propsFactory({ + indeterminate: Boolean, + indeterminateIcon: { + type: IconValue, + default: "$checkboxIndeterminate" + }, + ...makeVSelectionControlProps({ + falseIcon: "$checkboxOff", + trueIcon: "$checkboxOn" + }) +}, "VCheckboxBtn"); +var VCheckboxBtn = genericComponent()({ + name: "VCheckboxBtn", + props: makeVCheckboxBtnProps(), + emits: { + "update:modelValue": (value) => true, + "update:indeterminate": (value) => true + }, + setup(props, _ref) { + let { + slots + } = _ref; + const indeterminate = useProxiedModel(props, "indeterminate"); + const model = useProxiedModel(props, "modelValue"); + function onChange(v) { + if (indeterminate.value) { + indeterminate.value = false; + } + } + const falseIcon = toRef(() => { + return indeterminate.value ? props.indeterminateIcon : props.falseIcon; + }); + const trueIcon = toRef(() => { + return indeterminate.value ? props.indeterminateIcon : props.trueIcon; + }); + useRender(() => { + const controlProps = omit(VSelectionControl.filterProps(props), ["modelValue"]); + return createVNode(VSelectionControl, mergeProps(controlProps, { + "modelValue": model.value, + "onUpdate:modelValue": [($event) => model.value = $event, onChange], + "class": ["v-checkbox-btn", props.class], + "style": props.style, + "type": "checkbox", + "falseIcon": falseIcon.value, + "trueIcon": trueIcon.value, + "aria-checked": indeterminate.value ? "mixed" : void 0 + }), slots); + }); + return {}; + } +}); + +// node_modules/vuetify/lib/components/VCheckbox/VCheckbox.js +var makeVCheckboxProps = propsFactory({ + ...makeVInputProps(), + ...omit(makeVCheckboxBtnProps(), ["inline"]) +}, "VCheckbox"); +var VCheckbox = genericComponent()({ + name: "VCheckbox", + inheritAttrs: false, + props: makeVCheckboxProps(), + emits: { + "update:modelValue": (value) => true, + "update:focused": (focused) => true + }, + setup(props, _ref) { + let { + attrs, + slots + } = _ref; + const model = useProxiedModel(props, "modelValue"); + const { + isFocused, + focus, + blur + } = useFocus(props); + const inputRef = ref(); + const uid = useId(); + useRender(() => { + const [rootAttrs, controlAttrs] = filterInputAttrs(attrs); + const inputProps = VInput.filterProps(props); + const checkboxProps = VCheckboxBtn.filterProps(props); + return createVNode(VInput, mergeProps({ + "ref": inputRef, + "class": ["v-checkbox", props.class] + }, rootAttrs, inputProps, { + "modelValue": model.value, + "onUpdate:modelValue": ($event) => model.value = $event, + "id": props.id || `checkbox-${uid}`, + "focused": isFocused.value, + "style": props.style + }), { + ...slots, + default: (_ref2) => { + let { + id, + messagesId, + isDisabled, + isReadonly, + isValid + } = _ref2; + return createVNode(VCheckboxBtn, mergeProps(checkboxProps, { + "id": id.value, + "aria-describedby": messagesId.value, + "disabled": isDisabled.value, + "readonly": isReadonly.value + }, controlAttrs, { + "error": isValid.value === false, + "modelValue": model.value, + "onUpdate:modelValue": ($event) => model.value = $event, + "onFocus": focus, + "onBlur": blur + }), slots); + } + }); + }); + return forwardRefs({}, inputRef); + } +}); + +export { + VCheckboxBtn, + VCheckbox +}; +//# sourceMappingURL=chunk-6HLLVLOR.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6HLLVLOR.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6HLLVLOR.js.map new file mode 100644 index 0000000..a1b7a35 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6HLLVLOR.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../vuetify/src/components/VCheckbox/VCheckbox.tsx", "../../vuetify/src/components/VCheckbox/VCheckboxBtn.tsx"], + "sourcesContent": ["// Styles\nimport './VCheckbox.sass'\n\n// Components\nimport { makeVCheckboxBtnProps, VCheckboxBtn } from './VCheckboxBtn'\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\n\n// Composables\nimport { useFocus } from '@/composables/focus'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { ref, useId } from 'vue'\nimport { filterInputAttrs, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '../VSelectionControl/VSelectionControl'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { GenericProps } from '@/util'\n\nexport type VCheckboxSlots = Omit & VSelectionControlSlots\n\nexport const makeVCheckboxProps = propsFactory({\n ...makeVInputProps(),\n ...omit(makeVCheckboxBtnProps(), ['inline']),\n}, 'VCheckbox')\n\nexport const VCheckbox = genericComponent(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VCheckboxSlots,\n) => GenericProps>()({\n name: 'VCheckbox',\n\n inheritAttrs: false,\n\n props: makeVCheckboxProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n 'update:focused': (focused: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { isFocused, focus, blur } = useFocus(props)\n const inputRef = ref()\n\n const uid = useId()\n\n useRender(() => {\n const [rootAttrs, controlAttrs] = filterInputAttrs(attrs)\n const inputProps = VInput.filterProps(props)\n const checkboxProps = VCheckboxBtn.filterProps(props)\n\n return (\n \n {{\n ...slots,\n default: ({\n id,\n messagesId,\n isDisabled,\n isReadonly,\n isValid,\n }) => (\n \n ),\n }}\n \n )\n })\n\n return forwardRefs({}, inputRef)\n },\n})\n\nexport type VCheckbox = InstanceType\n", "// Components\nimport { makeVSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '@/components/VSelectionControl/VSelectionControl'\nimport type { GenericProps } from '@/util'\n\nexport const makeVCheckboxBtnProps = propsFactory({\n indeterminate: Boolean,\n indeterminateIcon: {\n type: IconValue,\n default: '$checkboxIndeterminate',\n },\n\n ...makeVSelectionControlProps({\n falseIcon: '$checkboxOff',\n trueIcon: '$checkboxOn',\n }),\n}, 'VCheckboxBtn')\n\nexport const VCheckboxBtn = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VSelectionControlSlots,\n) => GenericProps>()({\n name: 'VCheckboxBtn',\n\n props: makeVCheckboxBtnProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n 'update:indeterminate': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const indeterminate = useProxiedModel(props, 'indeterminate')\n const model = useProxiedModel(props, 'modelValue')\n\n function onChange (v: any) {\n if (indeterminate.value) {\n indeterminate.value = false\n }\n }\n\n const falseIcon = toRef(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.falseIcon\n })\n\n const trueIcon = toRef(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.trueIcon\n })\n\n useRender(() => {\n const controlProps = omit(VSelectionControl.filterProps(props), ['modelValue'])\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VCheckboxBtn = InstanceType\n"], + "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAA;;;ACcO,IAAMA,wBAAwBC,aAAa;EAChDC,eAAeC;EACfC,mBAAmB;IACjBC,MAAMC;IACNC,SAAS;EACX;EAEA,GAAGC,2BAA2B;IAC5BC,WAAW;IACXC,UAAU;EACZ,CAAC;AACH,GAAG,cAAc;AAEV,IAAMC,eAAeC,iBAMmB,EAAE;EAC/CC,MAAM;EAENC,OAAOd,sBAAsB;EAE7Be,OAAO;IACL,qBAAsBC,WAAe;IACrC,wBAAyBA,WAAmB;EAC9C;EAEAC,MAAOH,OAAKI,MAAa;AAAA,QAAX;MAAEC;IAAM,IAACD;AACrB,UAAMhB,gBAAgBkB,gBAAgBN,OAAO,eAAe;AAC5D,UAAMO,QAAQD,gBAAgBN,OAAO,YAAY;AAEjD,aAASQ,SAAUC,GAAQ;AACzB,UAAIrB,cAAcc,OAAO;AACvBd,sBAAcc,QAAQ;MACxB;IACF;AAEA,UAAMP,YAAYe,MAAM,MAAM;AAC5B,aAAOtB,cAAcc,QACjBF,MAAMV,oBACNU,MAAML;IACZ,CAAC;AAED,UAAMC,WAAWc,MAAM,MAAM;AAC3B,aAAOtB,cAAcc,QACjBF,MAAMV,oBACNU,MAAMJ;IACZ,CAAC;AAEDe,cAAU,MAAM;AACd,YAAMC,eAAeC,KAAKC,kBAAkBC,YAAYf,KAAK,GAAG,CAAC,YAAY,CAAC;AAC9E,aAAAgB,YAAAF,mBAAAG,WAESL,cAAY;QAAA,cACPL,MAAML;QAAK,uBAAA,CAAAgB,YAAXX,MAAML,QAAKgB,QAOCV,QAAQ;QAAA,SANvB,CACL,kBACAR,MAAMmB,KAAK;QACZ,SACOnB,MAAMoB;QAAK,QAAA;QAAA,aAGPzB,UAAUO;QAAK,YAChBN,SAASM;QAAK,gBACVd,cAAcc,QAAQ,UAAUmB;MAAS,CAAA,GAC9ChB,KAAK;IAGrB,CAAC;AAED,WAAO,CAAC;EACV;AACF,CAAC;;;ADlEM,IAAMiB,qBAAqBC,aAAa;EAC7C,GAAGC,gBAAgB;EACnB,GAAGC,KAAKC,sBAAsB,GAAG,CAAC,QAAQ,CAAC;AAC7C,GAAG,WAAW;AAEP,IAAMC,YAAYC,iBAMsB,EAAE;EAC/CC,MAAM;EAENC,cAAc;EAEdC,OAAOT,mBAAmB;EAE1BU,OAAO;IACL,qBAAsBC,WAAe;IACrC,kBAAmBC,aAAqB;EAC1C;EAEAC,MAAOJ,OAAKK,MAAoB;AAAA,QAAlB;MAAEC;MAAOC;IAAM,IAACF;AAC5B,UAAMG,QAAQC,gBAAgBT,OAAO,YAAY;AACjD,UAAM;MAAEU;MAAWC;MAAOC;IAAK,IAAIC,SAASb,KAAK;AACjD,UAAMc,WAAWC,IAAY;AAE7B,UAAMC,MAAMC,MAAM;AAElBC,cAAU,MAAM;AACd,YAAM,CAACC,WAAWC,YAAY,IAAIC,iBAAiBf,KAAK;AACxD,YAAMgB,aAAaC,OAAOC,YAAYxB,KAAK;AAC3C,YAAMyB,gBAAgBC,aAAaF,YAAYxB,KAAK;AAEpD,aAAA2B,YAAAJ,QAAAK,WAAA;QAAA,OAEUd;QAAQ,SACP,CACL,cACAd,MAAM6B,KAAK;MACZ,GACIV,WACAG,YAAU;QAAA,cACLd,MAAMN;QAAK,uBAAA4B,YAAXtB,MAAMN,QAAK4B;QAAA,MAChB9B,MAAM+B,MAAM,YAAYf,GAAG;QAAE,WACxBN,UAAUR;QAAK,SACjBF,MAAMgC;MAAK,CAAA,GAAA;QAGjB,GAAGzB;QACH0B,SAASC,WAAA;AAAA,cAAC;YACRH;YACAI;YACAC;YACAC;YACAC;UACF,IAACJ;AAAA,iBAAAP,YAAAD,cAAAE,WAEQH,eAAa;YAAA,MACbM,GAAG7B;YAAK,oBACMiC,WAAWjC;YAAK,YACxBkC,WAAWlC;YAAK,YAChBmC,WAAWnC;UAAK,GACtBkB,cAAY;YAAA,SACTkB,QAAQpC,UAAU;YAAK,cACrBM,MAAMN;YAAK,uBAAA4B,YAAXtB,MAAMN,QAAK4B;YAAA,WACXnB;YAAK,UACNC;UAAI,CAAA,GACHL,KAAK;QAAA;MAElB,CAAA;IAIT,CAAC;AAED,WAAOgC,YAAY,CAAC,GAAGzB,QAAQ;EACjC;AACF,CAAC;", + "names": ["makeVCheckboxBtnProps", "propsFactory", "indeterminate", "Boolean", "indeterminateIcon", "type", "IconValue", "default", "makeVSelectionControlProps", "falseIcon", "trueIcon", "VCheckboxBtn", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "useProxiedModel", "model", "onChange", "v", "toRef", "useRender", "controlProps", "omit", "VSelectionControl", "filterProps", "_createVNode", "_mergeProps", "$event", "class", "style", "undefined", "makeVCheckboxProps", "propsFactory", "makeVInputProps", "omit", "makeVCheckboxBtnProps", "VCheckbox", "genericComponent", "name", "inheritAttrs", "props", "emits", "value", "focused", "setup", "_ref", "attrs", "slots", "model", "useProxiedModel", "isFocused", "focus", "blur", "useFocus", "inputRef", "ref", "uid", "useId", "useRender", "rootAttrs", "controlAttrs", "filterInputAttrs", "inputProps", "VInput", "filterProps", "checkboxProps", "VCheckboxBtn", "_createVNode", "_mergeProps", "class", "$event", "id", "style", "default", "_ref2", "messagesId", "isDisabled", "isReadonly", "isValid", "forwardRefs"] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-VSEC5QGQ.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6MO6MKTY.js similarity index 97% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-VSEC5QGQ.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6MO6MKTY.js index 07d144d..3457a46 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-VSEC5QGQ.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6MO6MKTY.js @@ -7,18 +7,18 @@ import { VCounter, VField, makeVFieldProps -} from "./chunk-J7Q2NMV7.js"; +} from "./chunk-ITO3JWXJ.js"; import { VInput, makeVInputProps, useFocus -} from "./chunk-4VABFUPG.js"; -import { - forwardRefs -} from "./chunk-GUNW7S2L.js"; +} from "./chunk-IK67YVHF.js"; import { intersect_default } from "./chunk-5ONGSJQ2.js"; +import { + forwardRefs +} from "./chunk-GUNW7S2L.js"; import { useProxiedModel } from "./chunk-KA77II4V.js"; @@ -44,7 +44,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VTextField/VTextField.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTextField/VTextField.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTextField/VTextField.css"; var activeTypes = ["color", "file", "time", "date", "datetime-local", "week", "month"]; var makeVTextFieldProps = propsFactory({ autofocus: Boolean, @@ -267,4 +267,4 @@ export { makeVTextFieldProps, VTextField }; -//# sourceMappingURL=chunk-VSEC5QGQ.js.map +//# sourceMappingURL=chunk-6MO6MKTY.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-VSEC5QGQ.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6MO6MKTY.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-VSEC5QGQ.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6MO6MKTY.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-FVDWV4NO.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6RFSM2OD.js similarity index 98% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-FVDWV4NO.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6RFSM2OD.js index 3875c00..851fc06 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-FVDWV4NO.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6RFSM2OD.js @@ -12,6 +12,10 @@ import { import { makeTagProps } from "./chunk-2HZIACSB.js"; +import { + useBackgroundColor, + useTextColor +} from "./chunk-BHV5Z34M.js"; import { useResizeObserver } from "./chunk-XDSAO7OT.js"; @@ -22,10 +26,6 @@ import { useProxiedModel, useToggleScope } from "./chunk-KA77II4V.js"; -import { - useBackgroundColor, - useTextColor -} from "./chunk-BHV5Z34M.js"; import { makeThemeProps, provideTheme @@ -53,7 +53,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VProgressLinear/VProgressLinear.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VProgressLinear/VProgressLinear.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VProgressLinear/VProgressLinear.css"; // node_modules/vuetify/lib/components/VProgressLinear/chunks.js var makeChunksProps = propsFactory({ @@ -318,4 +318,4 @@ var VProgressLinear = genericComponent()({ export { VProgressLinear }; -//# sourceMappingURL=chunk-FVDWV4NO.js.map +//# sourceMappingURL=chunk-6RFSM2OD.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-FVDWV4NO.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6RFSM2OD.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-FVDWV4NO.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6RFSM2OD.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6VKWM6MN.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6VKWM6MN.js.map deleted file mode 100644 index 1ce0f11..0000000 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6VKWM6MN.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../vuetify/src/directives/resize/index.ts", "../../vuetify/src/directives/touch/index.ts", "../../vuetify/src/components/VTooltip/VTooltip.tsx"], - "sourcesContent": ["// Types\nimport type { DirectiveBinding } from 'vue'\n\ninterface ResizeDirectiveBinding extends Omit {\n value: () => void\n modifiers?: {\n active?: boolean\n quiet?: boolean\n }\n}\n\nfunction mounted (el: HTMLElement, binding: ResizeDirectiveBinding) {\n const handler = binding.value\n const options: AddEventListenerOptions = {\n passive: !binding.modifiers?.active,\n }\n\n window.addEventListener('resize', handler, options)\n\n el._onResize = Object(el._onResize)\n el._onResize![binding.instance!.$.uid] = {\n handler,\n options,\n }\n\n if (!binding.modifiers?.quiet) {\n handler()\n }\n}\n\nfunction unmounted (el: HTMLElement, binding: ResizeDirectiveBinding) {\n if (!el._onResize?.[binding.instance!.$.uid]) return\n\n const { handler, options } = el._onResize[binding.instance!.$.uid]!\n\n window.removeEventListener('resize', handler, options)\n\n delete el._onResize[binding.instance!.$.uid]\n}\n\nexport const Resize = {\n mounted,\n unmounted,\n}\n\nexport default Resize\n", "// Utilities\nimport { keys } from '@/util'\n\n// Types\nimport type {\n DirectiveBinding,\n} from 'vue'\n\nexport interface TouchHandlers {\n start?: (wrapperEvent: { originalEvent: TouchEvent } & TouchData) => void\n end?: (wrapperEvent: { originalEvent: TouchEvent } & TouchData) => void\n move?: (wrapperEvent: { originalEvent: TouchEvent } & TouchData) => void\n left?: (wrapper: TouchData) => void\n right?: (wrapper: TouchData) => void\n up?: (wrapper: TouchData) => void\n down?: (wrapper: TouchData) => void\n}\n\nexport interface TouchData {\n touchstartX: number\n touchstartY: number\n touchmoveX: number\n touchmoveY: number\n touchendX: number\n touchendY: number\n offsetX: number\n offsetY: number\n}\n\nexport type TouchWrapper = TouchHandlers & TouchData\n\nexport interface TouchValue extends TouchHandlers {\n parent?: boolean\n options?: AddEventListenerOptions\n}\n\nexport interface TouchStoredHandlers {\n touchstart: (e: TouchEvent) => void\n touchend: (e: TouchEvent) => void\n touchmove: (e: TouchEvent) => void\n}\n\nexport interface TouchDirectiveBinding extends Omit {\n value?: TouchValue\n}\n\nconst handleGesture = (wrapper: TouchWrapper) => {\n const { touchstartX, touchendX, touchstartY, touchendY } = wrapper\n const dirRatio = 0.5\n const minDistance = 16\n wrapper.offsetX = touchendX - touchstartX\n wrapper.offsetY = touchendY - touchstartY\n\n if (Math.abs(wrapper.offsetY) < dirRatio * Math.abs(wrapper.offsetX)) {\n wrapper.left && (touchendX < touchstartX - minDistance) && wrapper.left(wrapper)\n wrapper.right && (touchendX > touchstartX + minDistance) && wrapper.right(wrapper)\n }\n\n if (Math.abs(wrapper.offsetX) < dirRatio * Math.abs(wrapper.offsetY)) {\n wrapper.up && (touchendY < touchstartY - minDistance) && wrapper.up(wrapper)\n wrapper.down && (touchendY > touchstartY + minDistance) && wrapper.down(wrapper)\n }\n}\n\nfunction touchstart (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchstartX = touch.clientX\n wrapper.touchstartY = touch.clientY\n\n wrapper.start?.({ originalEvent: event, ...wrapper })\n}\n\nfunction touchend (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchendX = touch.clientX\n wrapper.touchendY = touch.clientY\n\n wrapper.end?.({ originalEvent: event, ...wrapper })\n\n handleGesture(wrapper)\n}\n\nfunction touchmove (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchmoveX = touch.clientX\n wrapper.touchmoveY = touch.clientY\n\n wrapper.move?.({ originalEvent: event, ...wrapper })\n}\n\nfunction createHandlers (value: TouchHandlers = {}): TouchStoredHandlers {\n const wrapper = {\n touchstartX: 0,\n touchstartY: 0,\n touchendX: 0,\n touchendY: 0,\n touchmoveX: 0,\n touchmoveY: 0,\n offsetX: 0,\n offsetY: 0,\n left: value.left,\n right: value.right,\n up: value.up,\n down: value.down,\n start: value.start,\n move: value.move,\n end: value.end,\n }\n\n return {\n touchstart: (e: TouchEvent) => touchstart(e, wrapper),\n touchend: (e: TouchEvent) => touchend(e, wrapper),\n touchmove: (e: TouchEvent) => touchmove(e, wrapper),\n }\n}\n\nfunction mounted (el: HTMLElement, binding: TouchDirectiveBinding) {\n const value = binding.value\n const target = value?.parent ? el.parentElement : el\n const options = value?.options ?? { passive: true }\n const uid = binding.instance?.$.uid // TODO: use custom uid generator\n\n if (!target || uid === undefined) return\n\n const handlers = createHandlers(binding.value)\n\n target._touchHandlers = target._touchHandlers ?? Object.create(null)\n target._touchHandlers![uid] = handlers\n\n keys(handlers).forEach(eventName => {\n target.addEventListener(eventName, handlers[eventName], options)\n })\n}\n\nfunction unmounted (el: HTMLElement, binding: TouchDirectiveBinding) {\n const target = binding.value?.parent ? el.parentElement : el\n const uid = binding.instance?.$.uid\n\n if (!target?._touchHandlers || uid === undefined) return\n\n const handlers = target._touchHandlers[uid]\n\n keys(handlers).forEach(eventName => {\n target.removeEventListener(eventName, handlers[eventName])\n })\n\n delete target._touchHandlers[uid]\n}\n\nexport const Touch = {\n mounted,\n unmounted,\n}\n\nexport default Touch\n", "// Styles\nimport './VTooltip.sass'\n\n// Components\nimport { VOverlay } from '@/components/VOverlay'\nimport { makeVOverlayProps } from '@/components/VOverlay/VOverlay'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\n\n// Utilities\nimport { computed, mergeProps, ref, toRef, useId } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { StrategyProps } from '@/components/VOverlay/locationStrategies'\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\n\nexport const makeVTooltipProps = propsFactory({\n id: String,\n interactive: Boolean,\n text: String,\n\n ...omit(makeVOverlayProps({\n closeOnBack: false,\n location: 'end' as const,\n locationStrategy: 'connected' as const,\n eager: true,\n minWidth: 0,\n offset: 10,\n openOnClick: false,\n openOnHover: true,\n origin: 'auto' as const,\n scrim: false,\n scrollStrategy: 'reposition' as const,\n transition: null,\n }), [\n 'absolute',\n 'retainFocus',\n 'captureFocus',\n 'disableInitialFocus',\n ]),\n}, 'VTooltip')\n\nexport const VTooltip = genericComponent()({\n name: 'VTooltip',\n\n props: makeVTooltipProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { scopeId } = useScopeId()\n\n const uid = useId()\n const id = toRef(() => props.id || `v-tooltip-${uid}`)\n\n const overlay = ref()\n\n const location = computed(() => {\n return props.location.split(' ').length > 1\n ? props.location\n : props.location + ' center' as StrategyProps['location']\n })\n\n const origin = computed(() => {\n return (\n props.origin === 'auto' ||\n props.origin === 'overlap' ||\n props.origin.split(' ').length > 1 ||\n props.location.split(' ').length > 1\n ) ? props.origin\n : props.origin + ' center' as StrategyProps['origin']\n })\n\n const transition = toRef(() => {\n if (props.transition != null) return props.transition\n return isActive.value ? 'scale-transition' : 'fade-transition'\n })\n\n const activatorProps = computed(() =>\n mergeProps({\n 'aria-describedby': id.value,\n }, props.activatorProps)\n )\n\n useRender(() => {\n const overlayProps = VOverlay.filterProps(props)\n\n return (\n \n {{\n activator: slots.activator,\n default: (...args) => slots.default?.(...args) ?? props.text,\n }}\n \n )\n })\n\n return forwardRefs({}, overlay)\n },\n})\n\nexport type VTooltip = InstanceType\n"], - "mappings": "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", - "names": ["mounted", "el", "binding", "handler", "value", "options", "passive", "modifiers", "active", "window", "addEventListener", "_onResize", "Object", "instance", "$", "uid", "quiet", "unmounted", "removeEventListener", "Resize", "handleGesture", "wrapper", "touchstartX", "touchendX", "touchstartY", "touchendY", "dirRatio", "minDistance", "offsetX", "offsetY", "Math", "abs", "left", "right", "up", "down", "touchstart", "event", "touch", "changedTouches", "clientX", "clientY", "start", "originalEvent", "touchend", "end", "touchmove", "touchmoveX", "touchmoveY", "move", "createHandlers", "value", "arguments", "length", "undefined", "e", "mounted", "el", "binding", "target", "parent", "parentElement", "options", "passive", "uid", "instance", "$", "handlers", "_touchHandlers", "Object", "create", "keys", "forEach", "eventName", "addEventListener", "unmounted", "removeEventListener", "Touch", "makeVTooltipProps", "propsFactory", "id", "String", "interactive", "Boolean", "text", "omit", "makeVOverlayProps", "closeOnBack", "location", "locationStrategy", "eager", "minWidth", "offset", "openOnClick", "openOnHover", "origin", "scrim", "scrollStrategy", "transition", "VTooltip", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "isActive", "useProxiedModel", "scopeId", "useScopeId", "uid", "useId", "toRef", "overlay", "ref", "computed", "split", "length", "activatorProps", "mergeProps", "useRender", "overlayProps", "VOverlay", "filterProps", "_createVNode", "_mergeProps", "class", "style", "$event", "activator", "default", "_len", "arguments", "args", "Array", "_key", "forwardRefs"] -} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RNFCLGZV.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-7M5DDQ46.js similarity index 92% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RNFCLGZV.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-7M5DDQ46.js index 83dfc72..85914dd 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RNFCLGZV.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-7M5DDQ46.js @@ -21,13 +21,13 @@ import { import { makeTagProps } from "./chunk-2HZIACSB.js"; +import { + useBackgroundColor +} from "./chunk-BHV5Z34M.js"; import { makeDimensionProps, useDimension } from "./chunk-6EZKHCRW.js"; -import { - useBackgroundColor -} from "./chunk-BHV5Z34M.js"; import { makeThemeProps, provideTheme @@ -45,7 +45,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VSheet/VSheet.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSheet/VSheet.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSheet/VSheet.css"; var makeVSheetProps = propsFactory({ color: String, ...makeBorderProps(), @@ -102,4 +102,4 @@ export { makeVSheetProps, VSheet }; -//# sourceMappingURL=chunk-RNFCLGZV.js.map +//# sourceMappingURL=chunk-7M5DDQ46.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RNFCLGZV.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-7M5DDQ46.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RNFCLGZV.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-7M5DDQ46.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-BYBKODOB.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-BYBKODOB.js.map deleted file mode 100644 index 0d07268..0000000 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-BYBKODOB.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../vuetify/src/components/VCheckbox/VCheckbox.tsx", "../../vuetify/src/components/VSelectionControl/VSelectionControl.tsx", "../../vuetify/src/components/VSelectionControlGroup/VSelectionControlGroup.tsx", "../../vuetify/src/components/VCheckbox/VCheckboxBtn.tsx"], - "sourcesContent": ["// Styles\nimport './VCheckbox.sass'\n\n// Components\nimport { makeVCheckboxBtnProps, VCheckboxBtn } from './VCheckboxBtn'\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\n\n// Composables\nimport { useFocus } from '@/composables/focus'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { ref, useId } from 'vue'\nimport { filterInputAttrs, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '../VSelectionControl/VSelectionControl'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { GenericProps } from '@/util'\n\nexport type VCheckboxSlots = Omit & VSelectionControlSlots\n\nexport const makeVCheckboxProps = propsFactory({\n ...makeVInputProps(),\n ...omit(makeVCheckboxBtnProps(), ['inline']),\n}, 'VCheckbox')\n\nexport const VCheckbox = genericComponent(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VCheckboxSlots,\n) => GenericProps>()({\n name: 'VCheckbox',\n\n inheritAttrs: false,\n\n props: makeVCheckboxProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n 'update:focused': (focused: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { isFocused, focus, blur } = useFocus(props)\n const inputRef = ref()\n\n const uid = useId()\n\n useRender(() => {\n const [rootAttrs, controlAttrs] = filterInputAttrs(attrs)\n const inputProps = VInput.filterProps(props)\n const checkboxProps = VCheckboxBtn.filterProps(props)\n\n return (\n \n {{\n ...slots,\n default: ({\n id,\n messagesId,\n isDisabled,\n isReadonly,\n isValid,\n }) => (\n \n ),\n }}\n \n )\n })\n\n return forwardRefs({}, inputRef)\n },\n})\n\nexport type VCheckbox = InstanceType\n", "// Styles\nimport './VSelectionControl.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VLabel } from '@/components/VLabel'\nimport { makeSelectionControlGroupProps, VSelectionControlGroupSymbol } from '@/components/VSelectionControlGroup/VSelectionControlGroup'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { useDensity } from '@/composables/density'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport vRipple from '@/directives/ripple'\n\n// Utilities\nimport { computed, inject, nextTick, ref, shallowRef, toRef, useId } from 'vue'\nimport {\n filterInputAttrs,\n genericComponent,\n matchesSelector,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { CSSProperties, ExtractPropTypes, Ref, VNode, WritableComputedRef } from 'vue'\nimport type { IconValue } from '@/composables/icons'\nimport type { EventProp, GenericProps } from '@/util'\n\nexport type SelectionControlSlot = {\n model: WritableComputedRef\n textColorClasses: Ref\n textColorStyles: Ref\n backgroundColorClasses: Ref\n backgroundColorStyles: Ref\n inputNode: VNode\n icon: IconValue | undefined\n props: {\n onBlur: (e: Event) => void\n onFocus: (e: FocusEvent) => void\n id: string\n }\n}\n\nexport type VSelectionControlSlots = {\n default: {\n backgroundColorClasses: Ref\n backgroundColorStyles: Ref\n }\n label: { label: string | undefined, props: Record }\n input: SelectionControlSlot\n}\n\nexport const makeVSelectionControlProps = propsFactory({\n label: String,\n baseColor: String,\n trueValue: null,\n falseValue: null,\n value: null,\n\n ...makeComponentProps(),\n ...makeSelectionControlGroupProps(),\n}, 'VSelectionControl')\n\nexport function useSelectionControl (\n props: ExtractPropTypes> & {\n 'onUpdate:modelValue': EventProp | undefined\n }\n) {\n const group = inject(VSelectionControlGroupSymbol, undefined)\n const { densityClasses } = useDensity(props)\n const modelValue = useProxiedModel(props, 'modelValue')\n const trueValue = computed(() => (\n props.trueValue !== undefined ? props.trueValue\n : props.value !== undefined ? props.value\n : true\n ))\n const falseValue = computed(() => props.falseValue !== undefined ? props.falseValue : false)\n const isMultiple = computed(() => (\n !!props.multiple ||\n (props.multiple == null && Array.isArray(modelValue.value))\n ))\n const model = computed({\n get () {\n const val = group ? group.modelValue.value : modelValue.value\n\n return isMultiple.value\n ? wrapInArray(val).some((v: any) => props.valueComparator(v, trueValue.value))\n : props.valueComparator(val, trueValue.value)\n },\n set (val: boolean) {\n if (props.readonly) return\n\n const currentValue = val ? trueValue.value : falseValue.value\n\n let newVal = currentValue\n\n if (isMultiple.value) {\n newVal = val\n ? [...wrapInArray(modelValue.value), currentValue]\n : wrapInArray(modelValue.value).filter((item: any) => !props.valueComparator(item, trueValue.value))\n }\n\n if (group) {\n group.modelValue.value = newVal\n } else {\n modelValue.value = newVal\n }\n },\n })\n const { textColorClasses, textColorStyles } = useTextColor(() => {\n if (props.error || props.disabled) return undefined\n\n return model.value ? props.color : props.baseColor\n })\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => {\n return (\n model.value &&\n !props.error &&\n !props.disabled\n ) ? props.color : props.baseColor\n })\n const icon = computed(() => model.value ? props.trueIcon : props.falseIcon)\n\n return {\n group,\n densityClasses,\n trueValue,\n falseValue,\n model,\n textColorClasses,\n textColorStyles,\n backgroundColorClasses,\n backgroundColorStyles,\n icon,\n }\n}\n\nexport const VSelectionControl = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VSelectionControlSlots,\n) => GenericProps>()({\n name: 'VSelectionControl',\n\n directives: { vRipple },\n\n inheritAttrs: false,\n\n props: makeVSelectionControlProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const {\n group,\n densityClasses,\n icon,\n model,\n textColorClasses,\n textColorStyles,\n backgroundColorClasses,\n backgroundColorStyles,\n trueValue,\n } = useSelectionControl(props)\n const uid = useId()\n const isFocused = shallowRef(false)\n const isFocusVisible = shallowRef(false)\n const input = ref()\n const id = toRef(() => props.id || `input-${uid}`)\n const isInteractive = toRef(() => !props.disabled && !props.readonly)\n\n group?.onForceUpdate(() => {\n if (input.value) {\n input.value.checked = model.value\n }\n })\n\n function onFocus (e: FocusEvent) {\n if (!isInteractive.value) return\n\n isFocused.value = true\n if (matchesSelector(e.target as HTMLElement, ':focus-visible') !== false) {\n isFocusVisible.value = true\n }\n }\n\n function onBlur () {\n isFocused.value = false\n isFocusVisible.value = false\n }\n\n function onClickLabel (e: Event) {\n e.stopPropagation()\n }\n\n function onInput (e: Event) {\n if (!isInteractive.value) {\n if (input.value) {\n // model value is not updated when input is not interactive\n // but the internal checked state of the input is still updated,\n // so here it's value is restored\n input.value.checked = model.value\n }\n\n return\n }\n\n if (props.readonly && group) {\n nextTick(() => group.forceUpdate())\n }\n model.value = (e.target as HTMLInputElement).checked\n }\n\n useRender(() => {\n const label = slots.label\n ? slots.label({\n label: props.label,\n props: { for: id.value },\n })\n : props.label\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n\n const inputNode = (\n \n )\n\n return (\n \n \n { slots.default?.({\n backgroundColorClasses,\n backgroundColorStyles,\n })}\n\n \n { slots.input?.({\n model,\n textColorClasses,\n textColorStyles,\n backgroundColorClasses,\n backgroundColorStyles,\n inputNode,\n icon: icon.value,\n props: {\n onFocus,\n onBlur,\n id: id.value,\n },\n } satisfies SelectionControlSlot) ?? (\n <>\n { icon.value && }\n\n { inputNode }\n \n )}\n \n \n\n { label && (\n \n { label }\n \n )}\n \n )\n })\n\n return {\n isFocused,\n input,\n }\n },\n})\n\nexport type VSelectionControl = InstanceType\n", "// Styles\nimport './VSelectionControlGroup.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps } from '@/composables/density'\nimport { IconValue } from '@/composables/icons'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeThemeProps } from '@/composables/theme'\n\n// Utilities\nimport { onScopeDispose, provide, toRef, useId } from 'vue'\nimport { deepEqual, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType, Ref } from 'vue'\nimport type { RippleDirectiveBinding } from '@/directives/ripple'\nimport type { GenericProps, ValueComparator } from '@/util'\n\nexport interface VSelectionGroupContext {\n modelValue: Ref\n forceUpdate: () => void\n onForceUpdate: (fn: () => void) => void\n}\n\nexport const VSelectionControlGroupSymbol: InjectionKey = Symbol.for('vuetify:selection-control-group')\n\nexport const makeSelectionControlGroupProps = propsFactory({\n color: String,\n disabled: {\n type: Boolean as PropType,\n default: null,\n },\n defaultsTarget: String,\n error: Boolean,\n id: String,\n inline: Boolean,\n falseIcon: IconValue,\n trueIcon: IconValue,\n ripple: {\n type: [Boolean, Object] as PropType,\n default: true,\n },\n multiple: {\n type: Boolean as PropType,\n default: null,\n },\n name: String,\n readonly: {\n type: Boolean as PropType,\n default: null,\n },\n modelValue: null,\n type: String,\n valueComparator: {\n type: Function as PropType,\n default: deepEqual,\n },\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeThemeProps(),\n}, 'SelectionControlGroup')\n\nexport const makeVSelectionControlGroupProps = propsFactory({\n ...makeSelectionControlGroupProps({\n defaultsTarget: 'VSelectionControl',\n }),\n}, 'VSelectionControlGroup')\n\nexport const VSelectionControlGroup = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: { default: never },\n) => GenericProps>()({\n name: 'VSelectionControlGroup',\n\n props: makeVSelectionControlGroupProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const modelValue = useProxiedModel(props, 'modelValue')\n const uid = useId()\n const id = toRef(() => props.id || `v-selection-control-group-${uid}`)\n const name = toRef(() => props.name || id.value)\n\n const updateHandlers = new Set<() => void>()\n provide(VSelectionControlGroupSymbol, {\n modelValue,\n forceUpdate: () => {\n updateHandlers.forEach(fn => fn())\n },\n onForceUpdate: cb => {\n updateHandlers.add(cb)\n onScopeDispose(() => {\n updateHandlers.delete(cb)\n })\n },\n })\n\n provideDefaults({\n [props.defaultsTarget]: {\n color: toRef(() => props.color),\n disabled: toRef(() => props.disabled),\n density: toRef(() => props.density),\n error: toRef(() => props.error),\n inline: toRef(() => props.inline),\n modelValue,\n multiple: toRef(() => !!props.multiple || (props.multiple == null && Array.isArray(modelValue.value))),\n name,\n falseIcon: toRef(() => props.falseIcon),\n trueIcon: toRef(() => props.trueIcon),\n readonly: toRef(() => props.readonly),\n ripple: toRef(() => props.ripple),\n type: toRef(() => props.type),\n valueComparator: toRef(() => props.valueComparator),\n },\n })\n\n useRender(() => (\n \n { slots.default?.() }\n \n ))\n\n return {}\n },\n})\n\nexport type VSelectionControlGroup = InstanceType\n", "// Components\nimport { makeVSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '@/components/VSelectionControl/VSelectionControl'\nimport type { GenericProps } from '@/util'\n\nexport const makeVCheckboxBtnProps = propsFactory({\n indeterminate: Boolean,\n indeterminateIcon: {\n type: IconValue,\n default: '$checkboxIndeterminate',\n },\n\n ...makeVSelectionControlProps({\n falseIcon: '$checkboxOff',\n trueIcon: '$checkboxOn',\n }),\n}, 'VCheckboxBtn')\n\nexport const VCheckboxBtn = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VSelectionControlSlots,\n) => GenericProps>()({\n name: 'VCheckboxBtn',\n\n props: makeVCheckboxBtnProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n 'update:indeterminate': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const indeterminate = useProxiedModel(props, 'indeterminate')\n const model = useProxiedModel(props, 'modelValue')\n\n function onChange (v: any) {\n if (indeterminate.value) {\n indeterminate.value = false\n }\n }\n\n const falseIcon = toRef(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.falseIcon\n })\n\n const trueIcon = toRef(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.trueIcon\n })\n\n useRender(() => {\n const controlProps = omit(VSelectionControl.filterProps(props), ['modelValue'])\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VCheckboxBtn = InstanceType\n"], - "mappings": "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", - "names": ["VSelectionControlGroupSymbol", "Symbol", "for", "makeSelectionControlGroupProps", "propsFactory", "color", "String", "disabled", "type", "Boolean", "default", "defaultsTarget", "error", "id", "inline", "falseIcon", "IconValue", "trueIcon", "ripple", "Object", "multiple", "name", "readonly", "modelValue", "valueComparator", "Function", "deepEqual", "makeComponentProps", "makeDensityProps", "makeThemeProps", "makeVSelectionControlGroupProps", "VSelectionControlGroup", "genericComponent", "props", "emits", "value", "setup", "_ref", "slots", "useProxiedModel", "uid", "useId", "toRef", "updateHandlers", "Set", "provide", "forceUpdate", "forEach", "fn", "onForceUpdate", "cb", "add", "onScopeDispose", "delete", "provideDefaults", "density", "Array", "isArray", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "undefined", "makeVSelectionControlProps", "propsFactory", "label", "String", "baseColor", "trueValue", "falseValue", "value", "makeComponentProps", "makeSelectionControlGroupProps", "useSelectionControl", "props", "group", "inject", "VSelectionControlGroupSymbol", "undefined", "densityClasses", "useDensity", "modelValue", "useProxiedModel", "computed", "isMultiple", "multiple", "Array", "isArray", "model", "get", "val", "wrapInArray", "some", "v", "valueComparator", "set", "readonly", "currentValue", "newVal", "filter", "item", "textColorClasses", "textColorStyles", "useTextColor", "error", "disabled", "color", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "icon", "trueIcon", "falseIcon", "VSelectionControl", "genericComponent", "name", "directives", "vRipple", "inheritAttrs", "emits", "setup", "_ref", "attrs", "slots", "uid", "useId", "isFocused", "shallowRef", "isFocusVisible", "input", "ref", "id", "toRef", "isInteractive", "onForceUpdate", "checked", "onFocus", "e", "matchesSelector", "target", "onBlur", "onClickLabel", "stopPropagation", "onInput", "nextTick", "forceUpdate", "useRender", "for", "rootAttrs", "inputAttrs", "filterInputAttrs", "inputNode", "_createElementVNode", "_mergeProps", "type", "inline", "class", "style", "_normalizeClass", "_normalizeStyle", "default", "_withDirectives", "_Fragment", "_createVNode", "VIcon", "ripple", "center", "circle", "VLabel", "makeVCheckboxBtnProps", "propsFactory", "indeterminate", "Boolean", "indeterminateIcon", "type", "IconValue", "default", "makeVSelectionControlProps", "falseIcon", "trueIcon", "VCheckboxBtn", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "useProxiedModel", "model", "onChange", "v", "toRef", "useRender", "controlProps", "omit", "VSelectionControl", "filterProps", "_createVNode", "_mergeProps", "$event", "class", "style", "undefined", "makeVCheckboxProps", "propsFactory", "makeVInputProps", "omit", "makeVCheckboxBtnProps", "VCheckbox", "genericComponent", "name", "inheritAttrs", "props", "emits", "value", "focused", "setup", "_ref", "attrs", "slots", "model", "useProxiedModel", "isFocused", "focus", "blur", "useFocus", "inputRef", "ref", "uid", "useId", "useRender", "rootAttrs", "controlAttrs", "filterInputAttrs", "inputProps", "VInput", "filterProps", "checkboxProps", "VCheckboxBtn", "_createVNode", "_mergeProps", "class", "$event", "id", "style", "default", "_ref2", "messagesId", "isDisabled", "isReadonly", "isValid", "forwardRefs"] -} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-YDVSSFCH.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CCNWGDBL.js similarity index 96% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-YDVSSFCH.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CCNWGDBL.js index a156738..b3aa31c 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-YDVSSFCH.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CCNWGDBL.js @@ -1,3 +1,17 @@ +import { + VOverlay, + makeVOverlayProps +} from "./chunk-CL6G3ICF.js"; +import { + useScopeId +} from "./chunk-BVUPSGRF.js"; +import { + forwardRefs +} from "./chunk-GUNW7S2L.js"; +import { + VuetifyLayoutKey, + useLayout +} from "./chunk-KQXZAEJP.js"; import { makePositionProps, usePosition @@ -9,31 +23,17 @@ import { } from "./chunk-ADXDXPPR.js"; import { VProgressLinear -} from "./chunk-FVDWV4NO.js"; +} from "./chunk-6RFSM2OD.js"; import { makeLocationProps } from "./chunk-KTTVT6V2.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; import { makeRoundedProps, useRounded } from "./chunk-AQK3CYVW.js"; import { - VOverlay, - makeVOverlayProps -} from "./chunk-TS6Y6OVT.js"; -import { - useScopeId -} from "./chunk-BVUPSGRF.js"; -import { - forwardRefs -} from "./chunk-GUNW7S2L.js"; -import { - VuetifyLayoutKey, - useLayout -} from "./chunk-KQXZAEJP.js"; + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { useProxiedModel, useToggleScope @@ -65,7 +65,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VSnackbar/VSnackbar.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSnackbar/VSnackbar.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSnackbar/VSnackbar.css"; function useCountdown(milliseconds) { const time = shallowRef(milliseconds()); let timer = -1; @@ -275,4 +275,4 @@ export { makeVSnackbarProps, VSnackbar }; -//# sourceMappingURL=chunk-YDVSSFCH.js.map +//# sourceMappingURL=chunk-CCNWGDBL.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-YDVSSFCH.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CCNWGDBL.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-YDVSSFCH.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CCNWGDBL.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TS6Y6OVT.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CL6G3ICF.js similarity index 99% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TS6Y6OVT.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CL6G3ICF.js index cea2292..625bfc4 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TS6Y6OVT.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CL6G3ICF.js @@ -9,21 +9,24 @@ import { useFocusTrap, useScopeId } from "./chunk-BVUPSGRF.js"; -import { - useBackButton, - useRouter -} from "./chunk-573D4TYC.js"; import { MaybeTransition, makeTransitionProps } from "./chunk-CAGZXMOS.js"; +import { + useDisplay +} from "./chunk-N4LJHDYD.js"; +import { + useBackButton, + useRouter +} from "./chunk-573D4TYC.js"; +import { + useBackgroundColor +} from "./chunk-BHV5Z34M.js"; import { makeDimensionProps, useDimension } from "./chunk-6EZKHCRW.js"; -import { - useDisplay -} from "./chunk-N4LJHDYD.js"; import { useRtl } from "./chunk-ENTLCOCZ.js"; @@ -31,9 +34,6 @@ import { useProxiedModel, useToggleScope } from "./chunk-KA77II4V.js"; -import { - useBackgroundColor -} from "./chunk-BHV5Z34M.js"; import { makeThemeProps, provideTheme @@ -103,79 +103,8 @@ import { withDirectives } from "./chunk-2MKFL3BX.js"; -// node_modules/vuetify/lib/directives/click-outside/index.js -function defaultConditional() { - return true; -} -function checkEvent(e, el, binding) { - if (!e || checkIsActive(e, binding) === false) return false; - const root = attachedRoot(el); - if (typeof ShadowRoot !== "undefined" && root instanceof ShadowRoot && root.host === e.target) return false; - const elements = (typeof binding.value === "object" && binding.value.include || (() => []))(); - elements.push(el); - return !elements.some((el2) => el2?.contains(e.target)); -} -function checkIsActive(e, binding) { - const isActive = typeof binding.value === "object" && binding.value.closeConditional || defaultConditional; - return isActive(e); -} -function directive(e, el, binding) { - const handler = typeof binding.value === "function" ? binding.value : binding.value.handler; - e.shadowTarget = e.target; - el._clickOutside.lastMousedownWasOutside && checkEvent(e, el, binding) && setTimeout(() => { - checkIsActive(e, binding) && handler && handler(e); - }, 0); -} -function handleShadow(el, callback) { - const root = attachedRoot(el); - callback(document); - if (typeof ShadowRoot !== "undefined" && root instanceof ShadowRoot) { - callback(root); - } -} -var ClickOutside = { - // [data-app] may not be found - // if using bind, inserted makes - // sure that the root element is - // available, iOS does not support - // clicks on body - mounted(el, binding) { - const onClick = (e) => directive(e, el, binding); - const onMousedown = (e) => { - el._clickOutside.lastMousedownWasOutside = checkEvent(e, el, binding); - }; - handleShadow(el, (app) => { - app.addEventListener("click", onClick, true); - app.addEventListener("mousedown", onMousedown, true); - }); - if (!el._clickOutside) { - el._clickOutside = { - lastMousedownWasOutside: false - }; - } - el._clickOutside[binding.instance.$.uid] = { - onClick, - onMousedown - }; - }, - beforeUnmount(el, binding) { - if (!el._clickOutside) return; - handleShadow(el, (app) => { - if (!app || !el._clickOutside?.[binding.instance.$.uid]) return; - const { - onClick, - onMousedown - } = el._clickOutside[binding.instance.$.uid]; - app.removeEventListener("click", onClick, true); - app.removeEventListener("mousedown", onMousedown, true); - }); - delete el._clickOutside[binding.instance.$.uid]; - } -}; -var click_outside_default = ClickOutside; - // node_modules/vuetify/lib/components/VOverlay/VOverlay.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VOverlay/VOverlay.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VOverlay/VOverlay.css"; // node_modules/vuetify/lib/components/VOverlay/util/point.js function elementToViewport(point, offset) { @@ -1111,6 +1040,77 @@ function useTeleport(target) { }; } +// node_modules/vuetify/lib/directives/click-outside/index.js +function defaultConditional() { + return true; +} +function checkEvent(e, el, binding) { + if (!e || checkIsActive(e, binding) === false) return false; + const root = attachedRoot(el); + if (typeof ShadowRoot !== "undefined" && root instanceof ShadowRoot && root.host === e.target) return false; + const elements = (typeof binding.value === "object" && binding.value.include || (() => []))(); + elements.push(el); + return !elements.some((el2) => el2?.contains(e.target)); +} +function checkIsActive(e, binding) { + const isActive = typeof binding.value === "object" && binding.value.closeConditional || defaultConditional; + return isActive(e); +} +function directive(e, el, binding) { + const handler = typeof binding.value === "function" ? binding.value : binding.value.handler; + e.shadowTarget = e.target; + el._clickOutside.lastMousedownWasOutside && checkEvent(e, el, binding) && setTimeout(() => { + checkIsActive(e, binding) && handler && handler(e); + }, 0); +} +function handleShadow(el, callback) { + const root = attachedRoot(el); + callback(document); + if (typeof ShadowRoot !== "undefined" && root instanceof ShadowRoot) { + callback(root); + } +} +var ClickOutside = { + // [data-app] may not be found + // if using bind, inserted makes + // sure that the root element is + // available, iOS does not support + // clicks on body + mounted(el, binding) { + const onClick = (e) => directive(e, el, binding); + const onMousedown = (e) => { + el._clickOutside.lastMousedownWasOutside = checkEvent(e, el, binding); + }; + handleShadow(el, (app) => { + app.addEventListener("click", onClick, true); + app.addEventListener("mousedown", onMousedown, true); + }); + if (!el._clickOutside) { + el._clickOutside = { + lastMousedownWasOutside: false + }; + } + el._clickOutside[binding.instance.$.uid] = { + onClick, + onMousedown + }; + }, + beforeUnmount(el, binding) { + if (!el._clickOutside) return; + handleShadow(el, (app) => { + if (!app || !el._clickOutside?.[binding.instance.$.uid]) return; + const { + onClick, + onMousedown + } = el._clickOutside[binding.instance.$.uid]; + app.removeEventListener("click", onClick, true); + app.removeEventListener("mousedown", onMousedown, true); + }); + delete el._clickOutside[binding.instance.$.uid]; + } +}; +var click_outside_default = ClickOutside; + // node_modules/vuetify/lib/components/VOverlay/VOverlay.js function Scrim(props) { const { @@ -1412,10 +1412,10 @@ var VOverlay = genericComponent()({ }); export { - ClickOutside, VMenuSymbol, useHydration, + ClickOutside, makeVOverlayProps, VOverlay }; -//# sourceMappingURL=chunk-TS6Y6OVT.js.map +//# sourceMappingURL=chunk-CL6G3ICF.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CL6G3ICF.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CL6G3ICF.js.map new file mode 100644 index 0000000..a512e27 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CL6G3ICF.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../vuetify/src/components/VOverlay/VOverlay.tsx", "../../vuetify/src/components/VOverlay/util/point.ts", "../../vuetify/src/components/VOverlay/locationStrategies.ts", "../../vuetify/src/components/VOverlay/requestNewFrame.ts", "../../vuetify/src/components/VOverlay/scrollStrategies.ts", "../../vuetify/src/components/VMenu/shared.ts", "../../vuetify/src/components/VOverlay/useActivator.tsx", "../../vuetify/src/composables/hydration.ts", "../../vuetify/src/composables/stack.ts", "../../vuetify/src/composables/teleport.ts", "../../vuetify/src/directives/click-outside/index.ts"], + "sourcesContent": ["// Styles\nimport './VOverlay.sass'\n\n// Composables\nimport { makeLocationStrategyProps, useLocationStrategies } from './locationStrategies'\nimport { makeScrollStrategyProps, useScrollStrategies } from './scrollStrategies'\nimport { makeActivatorProps, useActivator } from './useActivator'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeFocusTrapProps, useFocusTrap } from '@/composables/focusTrap'\nimport { useHydration } from '@/composables/hydration'\nimport { makeLazyProps, useLazy } from '@/composables/lazy'\nimport { useRtl } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useBackButton, useRouter } from '@/composables/router'\nimport { useScopeId } from '@/composables/scopeId'\nimport { useStack } from '@/composables/stack'\nimport { useTeleport } from '@/composables/teleport'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useToggleScope } from '@/composables/toggleScope'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Directives\nimport vClickOutside from '@/directives/click-outside'\n\n// Utilities\nimport {\n computed,\n mergeProps,\n onBeforeUnmount,\n ref,\n Teleport,\n Transition,\n watch,\n} from 'vue'\nimport {\n animate,\n convertToUnit,\n genericComponent,\n getCurrentInstance,\n getScrollParent,\n IN_BROWSER,\n omit,\n propsFactory,\n standardEasing,\n useRender,\n} from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { BackgroundColorData } from '@/composables/color'\nimport type { TemplateRef } from '@/util'\n\ninterface ScrimProps {\n [key: string]: unknown\n modelValue: boolean\n color: BackgroundColorData\n}\nfunction Scrim (props: ScrimProps) {\n const { modelValue, color, ...rest } = props\n return (\n \n { props.modelValue && (\n \n )}\n \n )\n}\n\nexport type OverlaySlots = {\n default: { isActive: Ref }\n activator: { isActive: boolean, props: Record, targetRef: TemplateRef }\n}\n\nexport const makeVOverlayProps = propsFactory({\n absolute: Boolean,\n attach: [Boolean, String, Object] as PropType,\n closeOnBack: {\n type: Boolean,\n default: true,\n },\n contained: Boolean,\n contentClass: null,\n contentProps: null,\n disabled: Boolean,\n opacity: [Number, String],\n noClickAnimation: Boolean,\n modelValue: Boolean,\n persistent: Boolean,\n scrim: {\n type: [Boolean, String],\n default: true,\n },\n zIndex: {\n type: [Number, String],\n default: 2000,\n },\n\n ...makeActivatorProps(),\n ...makeComponentProps(),\n ...makeDimensionProps(),\n ...makeLazyProps(),\n ...makeLocationStrategyProps(),\n ...makeScrollStrategyProps(),\n ...makeFocusTrapProps(),\n ...makeThemeProps(),\n ...makeTransitionProps(),\n}, 'VOverlay')\n\nexport const VOverlay = genericComponent()({\n name: 'VOverlay',\n\n directives: { vClickOutside },\n\n inheritAttrs: false,\n\n props: {\n _disableGlobalStack: Boolean,\n\n ...omit(makeVOverlayProps(), ['disableInitialFocus']),\n },\n\n emits: {\n 'click:outside': (e: MouseEvent) => true,\n 'update:modelValue': (value: boolean) => true,\n keydown: (e: KeyboardEvent) => true,\n afterEnter: () => true,\n afterLeave: () => true,\n },\n\n setup (props, { slots, attrs, emit }) {\n const vm = getCurrentInstance('VOverlay')\n const root = ref()\n const scrimEl = ref()\n const contentEl = ref()\n const model = useProxiedModel(props, 'modelValue')\n const isActive = computed({\n get: () => model.value,\n set: v => {\n if (!(v && props.disabled)) model.value = v\n },\n })\n const { themeClasses } = provideTheme(props)\n const { rtlClasses, isRtl } = useRtl()\n const { hasContent, onAfterLeave: _onAfterLeave } = useLazy(props, isActive)\n const scrimColor = useBackgroundColor(() => {\n return typeof props.scrim === 'string' ? props.scrim : null\n })\n const { globalTop, localTop, stackStyles } = useStack(isActive, () => props.zIndex, props._disableGlobalStack)\n const {\n activatorEl, activatorRef,\n target, targetEl, targetRef,\n activatorEvents,\n contentEvents,\n scrimEvents,\n } = useActivator(props, { isActive, isTop: localTop, contentEl })\n const { teleportTarget } = useTeleport(() => {\n const target = props.attach || props.contained\n if (target) return target\n const rootNode = activatorEl?.value?.getRootNode() || vm.proxy?.$el?.getRootNode()\n if (rootNode instanceof ShadowRoot) return rootNode\n return false\n })\n const { dimensionStyles } = useDimension(props)\n const isMounted = useHydration()\n const { scopeId } = useScopeId()\n\n watch(() => props.disabled, v => {\n if (v) isActive.value = false\n })\n\n const { contentStyles, updateLocation } = useLocationStrategies(props, {\n isRtl,\n contentEl,\n target,\n isActive,\n })\n useScrollStrategies(props, {\n root,\n contentEl,\n targetEl,\n target,\n isActive,\n updateLocation,\n })\n\n function onClickOutside (e: MouseEvent) {\n emit('click:outside', e)\n\n if (!props.persistent) isActive.value = false\n else animateClick()\n }\n\n function closeConditional (e: Event) {\n return isActive.value && localTop.value && (\n // If using scrim, only close if clicking on it rather than anything opened on top\n !props.scrim || e.target === scrimEl.value || (e instanceof MouseEvent && e.shadowTarget === scrimEl.value)\n )\n }\n\n useFocusTrap(props, { isActive, localTop, contentEl, activatorEl })\n\n IN_BROWSER && watch(isActive, val => {\n if (val) {\n window.addEventListener('keydown', onKeydown)\n } else {\n window.removeEventListener('keydown', onKeydown)\n }\n }, { immediate: true })\n\n onBeforeUnmount(() => {\n if (!IN_BROWSER) return\n\n window.removeEventListener('keydown', onKeydown)\n })\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key === 'Escape' && globalTop.value) {\n if (!contentEl.value?.contains(document.activeElement)) {\n emit('keydown', e)\n }\n if (!props.persistent) {\n isActive.value = false\n if (contentEl.value?.contains(document.activeElement)) {\n activatorEl.value?.focus()\n }\n } else animateClick()\n }\n }\n function onKeydownSelf (e: KeyboardEvent) {\n if (e.key === 'Escape' && !globalTop.value) return\n\n emit('keydown', e)\n }\n\n const router = useRouter()\n useToggleScope(() => props.closeOnBack, () => {\n useBackButton(router, next => {\n if (globalTop.value && isActive.value) {\n next(false)\n if (!props.persistent) isActive.value = false\n else animateClick()\n } else {\n next()\n }\n })\n })\n\n const top = ref()\n watch(() => isActive.value && (props.absolute || props.contained) && teleportTarget.value == null, val => {\n if (val) {\n const scrollParent = getScrollParent(root.value)\n if (scrollParent && scrollParent !== document.scrollingElement) {\n top.value = scrollParent.scrollTop\n }\n }\n })\n\n // Add a quick \"bounce\" animation to the content\n function animateClick () {\n if (props.noClickAnimation) return\n\n contentEl.value && animate(contentEl.value, [\n { transformOrigin: 'center' },\n { transform: 'scale(1.03)' },\n { transformOrigin: 'center' },\n ], {\n duration: 150,\n easing: standardEasing,\n })\n }\n\n function onAfterEnter () {\n emit('afterEnter')\n }\n\n function onAfterLeave () {\n _onAfterLeave()\n emit('afterLeave')\n }\n\n useRender(() => (\n <>\n { slots.activator?.({\n isActive: isActive.value,\n targetRef,\n props: mergeProps({\n ref: activatorRef,\n }, activatorEvents.value, props.activatorProps),\n })}\n\n { isMounted.value && hasContent.value && (\n \n \n \n \n [activatorEl.value] }}\n class={[\n 'v-overlay__content',\n props.contentClass,\n ]}\n style={[\n dimensionStyles.value,\n contentStyles.value,\n ]}\n { ...contentEvents.value }\n { ...props.contentProps }\n >\n { slots.default?.({ isActive }) }\n \n \n \n \n )}\n \n ))\n\n return {\n activatorEl,\n scrimEl,\n target,\n animateClick,\n contentEl,\n rootEl: root,\n globalTop,\n localTop,\n updateLocation,\n }\n },\n})\n\nexport type VOverlay = InstanceType\n", "// Types\nimport type { ParsedAnchor } from '@/util'\nimport type { Box } from '@/util/box'\n\ntype Point = { x: number, y: number }\ndeclare class As {\n private as: T\n}\ntype ElementPoint = Point & As<'element'>\ntype ViewportPoint = Point & As<'viewport'>\ntype Offset = Point & As<'offset'>\n\n/** Convert a point in local space to viewport space */\nexport function elementToViewport (point: ElementPoint, offset: Offset | Box) {\n return {\n x: point.x + offset.x,\n y: point.y + offset.y,\n } as ViewportPoint\n}\n\n/** Convert a point in viewport space to local space */\nexport function viewportToElement (point: ViewportPoint, offset: Offset | Box) {\n return {\n x: point.x - offset.x,\n y: point.y - offset.y,\n } as ElementPoint\n}\n\n/** Get the difference between two points */\nexport function getOffset (a: T, b: T) {\n return {\n x: a.x - b.x,\n y: a.y - b.y,\n } as Offset\n}\n\n/** Convert an anchor object to a point in local space */\nexport function anchorToPoint (anchor: ParsedAnchor, box: Box): ViewportPoint {\n if (anchor.side === 'top' || anchor.side === 'bottom') {\n const { side, align } = anchor\n\n const x: number =\n align === 'left' ? 0\n : align === 'center' ? box.width / 2\n : align === 'right' ? box.width\n : align\n const y: number =\n side === 'top' ? 0\n : side === 'bottom' ? box.height\n : side\n\n return elementToViewport({ x, y } as ElementPoint, box)\n } else if (anchor.side === 'left' || anchor.side === 'right') {\n const { side, align } = anchor\n\n const x: number =\n side === 'left' ? 0\n : side === 'right' ? box.width\n : side\n const y: number =\n align === 'top' ? 0\n : align === 'center' ? box.height / 2\n : align === 'bottom' ? box.height\n : align\n\n return elementToViewport({ x, y } as ElementPoint, box)\n }\n\n return elementToViewport({\n x: box.width / 2,\n y: box.height / 2,\n } as ElementPoint, box)\n}\n", "// Composables\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Utilities\nimport { computed, nextTick, onScopeDispose, ref, watch } from 'vue'\nimport { anchorToPoint, getOffset } from './util/point'\nimport {\n CircularBuffer,\n clamp,\n consoleError,\n convertToUnit,\n deepEqual,\n destructComputed,\n flipAlign,\n flipCorner,\n flipSide,\n getAxis,\n getScrollParents,\n IN_BROWSER,\n isFixedPosition,\n nullifyTransforms,\n parseAnchor,\n propsFactory,\n} from '@/util'\nimport { Box, getElementBox, getOverflow, getTargetBox } from '@/util/box'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { Anchor } from '@/util'\n\nexport interface LocationStrategyData {\n contentEl: Ref\n target: Ref\n isActive: Ref\n isRtl: Ref\n}\n\nexport type LocationStrategyFunction = (\n data: LocationStrategyData,\n props: StrategyProps,\n contentStyles: Ref>\n) => undefined | { updateLocation: (e?: Event) => void }\n\nconst locationStrategies = {\n static: staticLocationStrategy, // specific viewport position, usually centered\n connected: connectedLocationStrategy, // connected to a certain element\n}\n\nexport interface StrategyProps {\n locationStrategy: keyof typeof locationStrategies | LocationStrategyFunction\n location: Anchor\n origin: Anchor | 'auto' | 'overlap'\n offset?: number | string | number[]\n stickToTarget?: boolean\n viewportMargin?: number | string\n maxHeight?: number | string\n maxWidth?: number | string\n minHeight?: number | string\n minWidth?: number | string\n}\n\nexport const makeLocationStrategyProps = propsFactory({\n locationStrategy: {\n type: [String, Function] as PropType,\n default: 'static',\n validator: (val: any) => typeof val === 'function' || val in locationStrategies,\n },\n location: {\n type: String as PropType,\n default: 'bottom',\n },\n origin: {\n type: String as PropType,\n default: 'auto',\n },\n offset: [Number, String, Array] as PropType,\n stickToTarget: Boolean,\n viewportMargin: {\n type: [Number, String],\n default: 12,\n },\n}, 'VOverlay-location-strategies')\n\nexport function useLocationStrategies (\n props: StrategyProps,\n data: LocationStrategyData\n) {\n const contentStyles = ref({})\n const updateLocation = ref<(e: Event) => void>()\n\n if (IN_BROWSER) {\n useToggleScope(() => !!(data.isActive.value && props.locationStrategy), reset => {\n watch(() => props.locationStrategy, reset)\n onScopeDispose(() => {\n window.removeEventListener('resize', onResize)\n visualViewport?.removeEventListener('resize', onVisualResize)\n visualViewport?.removeEventListener('scroll', onVisualScroll)\n updateLocation.value = undefined\n })\n\n window.addEventListener('resize', onResize, { passive: true })\n visualViewport?.addEventListener('resize', onVisualResize, { passive: true })\n visualViewport?.addEventListener('scroll', onVisualScroll, { passive: true })\n\n if (typeof props.locationStrategy === 'function') {\n updateLocation.value = props.locationStrategy(data, props, contentStyles)?.updateLocation\n } else {\n updateLocation.value = locationStrategies[props.locationStrategy](data, props, contentStyles)?.updateLocation\n }\n })\n }\n\n function onResize (e: Event) {\n updateLocation.value?.(e)\n }\n\n function onVisualResize (e: Event) {\n updateLocation.value?.(e)\n }\n\n function onVisualScroll (e: Event) {\n updateLocation.value?.(e)\n }\n\n return {\n contentStyles,\n updateLocation,\n }\n}\n\nfunction staticLocationStrategy () {\n // TODO\n}\n\n/** Get size of element ignoring max-width/max-height */\nfunction getIntrinsicSize (el: HTMLElement, isRtl: boolean) {\n // const scrollables = new Map()\n // el.querySelectorAll('*').forEach(el => {\n // const x = el.scrollLeft\n // const y = el.scrollTop\n // if (x || y) {\n // scrollables.set(el, [x, y])\n // }\n // })\n\n // const initialMaxWidth = el.style.maxWidth\n // const initialMaxHeight = el.style.maxHeight\n // el.style.removeProperty('max-width')\n // el.style.removeProperty('max-height')\n\n /* eslint-disable-next-line sonarjs/prefer-immediate-return */\n const contentBox = nullifyTransforms(el)\n\n if (isRtl) {\n contentBox.x += parseFloat(el.style.right || 0)\n } else {\n contentBox.x -= parseFloat(el.style.left || 0)\n }\n contentBox.y -= parseFloat(el.style.top || 0)\n\n // el.style.maxWidth = initialMaxWidth\n // el.style.maxHeight = initialMaxHeight\n // scrollables.forEach((position, el) => {\n // el.scrollTo(...position)\n // })\n\n return contentBox\n}\n\nfunction connectedLocationStrategy (data: LocationStrategyData, props: StrategyProps, contentStyles: Ref>) {\n const activatorFixed = Array.isArray(data.target.value) || isFixedPosition(data.target.value)\n if (activatorFixed) {\n Object.assign(contentStyles.value, {\n position: 'fixed',\n top: 0,\n [data.isRtl.value ? 'right' : 'left']: 0,\n })\n }\n\n const { preferredAnchor, preferredOrigin } = destructComputed(() => {\n const parsedAnchor = parseAnchor(props.location, data.isRtl.value)\n const parsedOrigin =\n props.origin === 'overlap' ? parsedAnchor\n : props.origin === 'auto' ? flipSide(parsedAnchor)\n : parseAnchor(props.origin, data.isRtl.value)\n\n // Some combinations of props may produce an invalid origin\n if (parsedAnchor.side === parsedOrigin.side && parsedAnchor.align === flipAlign(parsedOrigin).align) {\n return {\n preferredAnchor: flipCorner(parsedAnchor),\n preferredOrigin: flipCorner(parsedOrigin),\n }\n } else {\n return {\n preferredAnchor: parsedAnchor,\n preferredOrigin: parsedOrigin,\n }\n }\n })\n\n const [minWidth, minHeight, maxWidth, maxHeight] =\n (['minWidth', 'minHeight', 'maxWidth', 'maxHeight'] as const).map(key => {\n return computed(() => {\n const val = parseFloat(props[key]!)\n return isNaN(val) ? Infinity : val\n })\n })\n\n const offset = computed(() => {\n if (Array.isArray(props.offset)) {\n return props.offset\n }\n if (typeof props.offset === 'string') {\n const offset = props.offset.split(' ').map(parseFloat)\n if (offset.length < 2) offset.push(0)\n return offset\n }\n return typeof props.offset === 'number' ? [props.offset, 0] : [0, 0]\n })\n\n let observe = false\n let lastFrame = -1\n const flipped = new CircularBuffer<{ x: boolean, y: boolean }>(4)\n const observer = new ResizeObserver(() => {\n if (!observe) return\n\n // Detect consecutive frames\n requestAnimationFrame(newTime => {\n if (newTime !== lastFrame) flipped.clear()\n requestAnimationFrame(newNewTime => {\n lastFrame = newNewTime\n })\n })\n\n if (flipped.isFull) {\n const values = flipped.values()\n if (\n deepEqual(values.at(-1), values.at(-3)) &&\n !deepEqual(values.at(-1), values.at(-2))\n ) {\n // Flipping is causing a container resize loop\n return\n }\n }\n\n const result = updateLocation()\n if (result) flipped.push(result.flipped)\n })\n\n let targetBox = new Box({ x: 0, y: 0, width: 0, height: 0 })\n\n watch(data.target, (newTarget, oldTarget) => {\n if (oldTarget && !Array.isArray(oldTarget)) observer.unobserve(oldTarget)\n if (!Array.isArray(newTarget)) {\n if (newTarget) observer.observe(newTarget)\n } else if (!deepEqual(newTarget, oldTarget)) {\n updateLocation()\n }\n }, { immediate: true })\n\n watch(data.contentEl, (newContentEl, oldContentEl) => {\n if (oldContentEl) observer.unobserve(oldContentEl)\n if (newContentEl) observer.observe(newContentEl)\n }, { immediate: true })\n\n onScopeDispose(() => {\n observer.disconnect()\n })\n\n // eslint-disable-next-line max-statements\n function updateLocation () {\n observe = false\n requestAnimationFrame(() => observe = true)\n\n if (!data.target.value || !data.contentEl.value) return\n\n if (\n Array.isArray(data.target.value) ||\n data.target.value.offsetParent ||\n data.target.value.getClientRects().length\n ) {\n targetBox = getTargetBox(data.target.value)\n } // Otherwise target element is hidden, use last known value\n\n const contentBox = getIntrinsicSize(data.contentEl.value, data.isRtl.value)\n const scrollParents = getScrollParents(data.contentEl.value)\n const viewportMargin = Number(props.viewportMargin)\n\n if (!scrollParents.length) {\n scrollParents.push(document.documentElement)\n if (!(data.contentEl.value.style.top && data.contentEl.value.style.left)) {\n contentBox.x -= parseFloat(document.documentElement.style.getPropertyValue('--v-body-scroll-x') || 0)\n contentBox.y -= parseFloat(document.documentElement.style.getPropertyValue('--v-body-scroll-y') || 0)\n }\n }\n\n const viewport = scrollParents.reduce((box: Box | undefined, el) => {\n const scrollBox = getElementBox(el)\n\n if (box) {\n return new Box({\n x: Math.max(box.left, scrollBox.left),\n y: Math.max(box.top, scrollBox.top),\n width: Math.min(box.right, scrollBox.right) - Math.max(box.left, scrollBox.left),\n height: Math.min(box.bottom, scrollBox.bottom) - Math.max(box.top, scrollBox.top),\n })\n }\n return scrollBox\n }, undefined!)\n\n if (props.stickToTarget) {\n viewport.x += Math.min(viewportMargin, targetBox.x)\n viewport.y += Math.min(viewportMargin, targetBox.y)\n viewport.width = Math.max(\n viewport.width - viewportMargin * 2,\n targetBox.x + targetBox.width - viewportMargin\n )\n viewport.height = Math.max(\n viewport.height - viewportMargin * 2,\n targetBox.y + targetBox.height - viewportMargin\n )\n } else {\n viewport.x += viewportMargin\n viewport.y += viewportMargin\n viewport.width -= viewportMargin * 2\n viewport.height -= viewportMargin * 2\n }\n\n let placement = {\n anchor: preferredAnchor.value,\n origin: preferredOrigin.value,\n }\n\n function checkOverflow (_placement: typeof placement) {\n const box = new Box(contentBox)\n const targetPoint = anchorToPoint(_placement.anchor, targetBox)\n const contentPoint = anchorToPoint(_placement.origin, box)\n\n let { x, y } = getOffset(targetPoint, contentPoint)\n\n switch (_placement.anchor.side) {\n case 'top': y -= offset.value[0]; break\n case 'bottom': y += offset.value[0]; break\n case 'left': x -= offset.value[0]; break\n case 'right': x += offset.value[0]; break\n }\n\n switch (_placement.anchor.align) {\n case 'top': y -= offset.value[1]; break\n case 'bottom': y += offset.value[1]; break\n case 'left': x -= offset.value[1]; break\n case 'right': x += offset.value[1]; break\n }\n\n box.x += x\n box.y += y\n\n box.width = Math.min(box.width, maxWidth.value)\n box.height = Math.min(box.height, maxHeight.value)\n\n const overflows = getOverflow(box, viewport)\n\n return { overflows, x, y }\n }\n\n let x = 0; let y = 0\n const available = { x: 0, y: 0 }\n const flipped = { x: false, y: false }\n let resets = -1\n while (true) {\n if (resets++ > 10) {\n consoleError('Infinite loop detected in connectedLocationStrategy')\n break\n }\n\n const { x: _x, y: _y, overflows } = checkOverflow(placement)\n\n x += _x\n y += _y\n\n contentBox.x += _x\n contentBox.y += _y\n\n // flip\n {\n const axis = getAxis(placement.anchor)\n const hasOverflowX = overflows.x.before || overflows.x.after\n const hasOverflowY = overflows.y.before || overflows.y.after\n\n let reset = false\n ;['x', 'y'].forEach(key => {\n if (\n (key === 'x' && hasOverflowX && !flipped.x) ||\n (key === 'y' && hasOverflowY && !flipped.y)\n ) {\n const newPlacement = { anchor: { ...placement.anchor }, origin: { ...placement.origin } }\n const flip = key === 'x'\n ? axis === 'y' ? flipAlign : flipSide\n : axis === 'y' ? flipSide : flipAlign\n newPlacement.anchor = flip(newPlacement.anchor)\n newPlacement.origin = flip(newPlacement.origin)\n const { overflows: newOverflows } = checkOverflow(newPlacement)\n if (\n (newOverflows[key].before <= overflows[key].before &&\n newOverflows[key].after <= overflows[key].after) ||\n (newOverflows[key].before + newOverflows[key].after <\n (overflows[key].before + overflows[key].after) / 2)\n ) {\n placement = newPlacement\n reset = flipped[key] = true\n }\n }\n })\n if (reset) continue\n }\n\n // shift\n if (overflows.x.before) {\n x += overflows.x.before\n contentBox.x += overflows.x.before\n }\n if (overflows.x.after) {\n x -= overflows.x.after\n contentBox.x -= overflows.x.after\n }\n if (overflows.y.before) {\n y += overflows.y.before\n contentBox.y += overflows.y.before\n }\n if (overflows.y.after) {\n y -= overflows.y.after\n contentBox.y -= overflows.y.after\n }\n\n // size\n {\n const overflows = getOverflow(contentBox, viewport)\n available.x = viewport.width - overflows.x.before - overflows.x.after\n available.y = viewport.height - overflows.y.before - overflows.y.after\n\n x += overflows.x.before\n contentBox.x += overflows.x.before\n y += overflows.y.before\n contentBox.y += overflows.y.before\n }\n\n break\n }\n\n const axis = getAxis(placement.anchor)\n\n Object.assign(contentStyles.value, {\n '--v-overlay-anchor-origin': `${placement.anchor.side} ${placement.anchor.align}`,\n transformOrigin: `${placement.origin.side} ${placement.origin.align}`,\n // transform: `translate(${pixelRound(x)}px, ${pixelRound(y)}px)`,\n top: convertToUnit(pixelRound(y)),\n left: data.isRtl.value ? undefined : convertToUnit(pixelRound(x)),\n right: data.isRtl.value ? convertToUnit(pixelRound(-x)) : undefined,\n minWidth: convertToUnit(axis === 'y' ? Math.min(minWidth.value, targetBox.width) : minWidth.value),\n maxWidth: convertToUnit(pixelCeil(clamp(available.x, minWidth.value === Infinity ? 0 : minWidth.value, maxWidth.value))),\n maxHeight: convertToUnit(pixelCeil(clamp(available.y, minHeight.value === Infinity ? 0 : minHeight.value, maxHeight.value))),\n })\n\n return {\n available,\n contentBox,\n flipped,\n }\n }\n\n watch(\n () => [\n preferredAnchor.value,\n preferredOrigin.value,\n props.offset,\n props.minWidth,\n props.minHeight,\n props.maxWidth,\n props.maxHeight,\n ],\n () => updateLocation(),\n )\n\n nextTick(() => {\n const result = updateLocation()\n\n // TODO: overflowing content should only require a single updateLocation call\n // Icky hack to make sure the content is positioned consistently\n if (!result) return\n const { available, contentBox } = result\n if (contentBox.height > available.y) {\n requestAnimationFrame(() => {\n updateLocation()\n requestAnimationFrame(() => {\n updateLocation()\n })\n })\n }\n })\n\n return { updateLocation }\n}\n\nfunction pixelRound (val: number) {\n return Math.round(val * devicePixelRatio) / devicePixelRatio\n}\n\nfunction pixelCeil (val: number) {\n return Math.ceil(val * devicePixelRatio) / devicePixelRatio\n}\n", "let clean = true\nconst frames = [] as any[]\n\n/**\n * Schedule a task to run in an animation frame on its own\n * This is useful for heavy tasks that may cause jank if all ran together\n */\nexport function requestNewFrame (cb: () => void) {\n if (!clean || frames.length) {\n frames.push(cb)\n run()\n } else {\n clean = false\n cb()\n run()\n }\n}\n\nlet raf = -1\nfunction run () {\n cancelAnimationFrame(raf)\n raf = requestAnimationFrame(() => {\n const frame = frames.shift()\n if (frame) frame()\n\n if (frames.length) run()\n else clean = true\n })\n}\n", "// Utilities\nimport { effectScope, onScopeDispose, watchEffect } from 'vue'\nimport { requestNewFrame } from './requestNewFrame'\nimport { convertToUnit, getScrollParents, hasScrollbar, IN_BROWSER, propsFactory } from '@/util'\n\n// Types\nimport type { EffectScope, PropType, Ref } from 'vue'\n\nexport interface ScrollStrategyData {\n root: Ref\n contentEl: Ref\n targetEl: Ref\n target: Ref\n isActive: Ref\n updateLocation: Ref<((e: Event) => void) | undefined>\n}\n\nexport type ScrollStrategyFunction = (data: ScrollStrategyData, props: StrategyProps, scope: EffectScope) => void\n\nconst scrollStrategies = {\n none: null,\n close: closeScrollStrategy,\n block: blockScrollStrategy,\n reposition: repositionScrollStrategy,\n}\n\nexport interface StrategyProps {\n scrollStrategy: keyof typeof scrollStrategies | ScrollStrategyFunction\n contained: boolean | undefined\n}\n\nexport const makeScrollStrategyProps = propsFactory({\n scrollStrategy: {\n type: [String, Function] as PropType,\n default: 'block',\n validator: (val: any) => typeof val === 'function' || val in scrollStrategies,\n },\n}, 'VOverlay-scroll-strategies')\n\nexport function useScrollStrategies (\n props: StrategyProps,\n data: ScrollStrategyData\n) {\n if (!IN_BROWSER) return\n\n let scope: EffectScope | undefined\n watchEffect(async () => {\n scope?.stop()\n\n if (!(data.isActive.value && props.scrollStrategy)) return\n\n scope = effectScope()\n await new Promise(resolve => setTimeout(resolve))\n scope.active && scope.run(() => {\n if (typeof props.scrollStrategy === 'function') {\n props.scrollStrategy(data, props, scope!)\n } else {\n scrollStrategies[props.scrollStrategy]?.(data, props, scope!)\n }\n })\n })\n\n onScopeDispose(() => {\n scope?.stop()\n })\n}\n\nfunction closeScrollStrategy (data: ScrollStrategyData) {\n function onScroll (e: Event) {\n data.isActive.value = false\n }\n\n bindScroll(getTargetEl(data.target.value, data.contentEl.value), onScroll)\n}\n\nfunction blockScrollStrategy (data: ScrollStrategyData, props: StrategyProps) {\n const offsetParent = data.root.value?.offsetParent\n const target = getTargetEl(data.target.value, data.contentEl.value)\n const scrollElements = [...new Set([\n ...getScrollParents(target, props.contained ? offsetParent : undefined),\n ...getScrollParents(data.contentEl.value, props.contained ? offsetParent : undefined),\n ])].filter(el => !el.classList.contains('v-overlay-scroll-blocked'))\n const scrollbarWidth = window.innerWidth - document.documentElement.offsetWidth\n\n const scrollableParent = (el => hasScrollbar(el) && el)(offsetParent || document.documentElement)\n if (scrollableParent) {\n data.root.value!.classList.add('v-overlay--scroll-blocked')\n }\n\n scrollElements.forEach((el, i) => {\n el.style.setProperty('--v-body-scroll-x', convertToUnit(-el.scrollLeft))\n el.style.setProperty('--v-body-scroll-y', convertToUnit(-el.scrollTop))\n\n if (el !== document.documentElement) {\n el.style.setProperty('--v-scrollbar-offset', convertToUnit(scrollbarWidth))\n }\n\n el.classList.add('v-overlay-scroll-blocked')\n })\n\n onScopeDispose(() => {\n scrollElements.forEach((el, i) => {\n const x = parseFloat(el.style.getPropertyValue('--v-body-scroll-x'))\n const y = parseFloat(el.style.getPropertyValue('--v-body-scroll-y'))\n\n const scrollBehavior = el.style.scrollBehavior\n\n el.style.scrollBehavior = 'auto'\n el.style.removeProperty('--v-body-scroll-x')\n el.style.removeProperty('--v-body-scroll-y')\n el.style.removeProperty('--v-scrollbar-offset')\n el.classList.remove('v-overlay-scroll-blocked')\n\n el.scrollLeft = -x\n el.scrollTop = -y\n\n el.style.scrollBehavior = scrollBehavior\n })\n if (scrollableParent) {\n data.root.value!.classList.remove('v-overlay--scroll-blocked')\n }\n })\n}\n\nfunction repositionScrollStrategy (data: ScrollStrategyData, props: StrategyProps, scope: EffectScope) {\n let slow = false\n let raf = -1\n let ric = -1\n\n function update (e: Event) {\n requestNewFrame(() => {\n const start = performance.now()\n data.updateLocation.value?.(e)\n const time = performance.now() - start\n slow = time / (1000 / 60) > 2\n })\n }\n\n ric = (typeof requestIdleCallback === 'undefined' ? (cb: Function) => cb() : requestIdleCallback)(() => {\n scope.run(() => {\n bindScroll(getTargetEl(data.target.value, data.contentEl.value), e => {\n if (slow) {\n // If the position calculation is slow,\n // defer updates until scrolling is finished.\n // Browsers usually fire one scroll event per frame so\n // we just wait until we've got two frames without an event\n cancelAnimationFrame(raf)\n raf = requestAnimationFrame(() => {\n raf = requestAnimationFrame(() => {\n update(e)\n })\n })\n } else {\n update(e)\n }\n })\n })\n })\n\n onScopeDispose(() => {\n typeof cancelIdleCallback !== 'undefined' && cancelIdleCallback(ric)\n cancelAnimationFrame(raf)\n })\n}\n\nfunction getTargetEl (\n target: HTMLElement | [x: number, y: number] | undefined,\n contentEl: HTMLElement | undefined,\n) {\n return Array.isArray(target)\n ? document.elementsFromPoint(...target).find(el => !contentEl?.contains(el))\n : target ?? contentEl\n}\n\nfunction bindScroll (el: Element | undefined, onScroll: (e: Event) => void) {\n const scrollElements = [document, ...getScrollParents(el)]\n scrollElements.forEach(el => {\n el.addEventListener('scroll', onScroll, { passive: true })\n })\n\n onScopeDispose(() => {\n scrollElements.forEach(el => {\n el.removeEventListener('scroll', onScroll)\n })\n })\n}\n", "// Types\nimport type { InjectionKey } from 'vue'\n\ninterface MenuProvide {\n register (): void\n unregister (): void\n closeParents (e?: MouseEvent): void\n}\n\nexport const VMenuSymbol: InjectionKey = Symbol.for('vuetify:v-menu')\n", "// Components\nimport { VMenuSymbol } from '@/components/VMenu/shared'\n\n// Composables\nimport { makeDelayProps, useDelay } from '@/composables/delay'\n\n// Utilities\nimport {\n computed,\n effectScope,\n inject,\n mergeProps,\n nextTick,\n onScopeDispose,\n ref,\n watch,\n watchEffect,\n} from 'vue'\nimport {\n bindProps,\n getCurrentInstance,\n IN_BROWSER,\n matchesSelector,\n propsFactory,\n templateRef,\n unbindProps,\n} from '@/util'\n\n// Types\nimport type {\n ComponentInternalInstance,\n ComponentPublicInstance,\n EffectScope,\n PropType,\n Ref,\n} from 'vue'\nimport type { DelayProps } from '@/composables/delay'\n\ninterface ActivatorProps extends DelayProps {\n target: 'parent' | 'cursor' | (string & {}) | Element | ComponentPublicInstance | [x: number, y: number] | undefined\n activator: 'parent' | (string & {}) | Element | ComponentPublicInstance | undefined\n activatorProps: Record\n\n openOnClick: boolean | undefined\n openOnHover: boolean\n openOnFocus: boolean | undefined\n\n closeOnContentClick: boolean\n}\n\nexport const makeActivatorProps = propsFactory({\n target: [String, Object] as PropType,\n activator: [String, Object] as PropType,\n activatorProps: {\n type: Object as PropType,\n default: () => ({}),\n },\n\n openOnClick: {\n type: Boolean,\n default: undefined,\n },\n openOnHover: Boolean,\n openOnFocus: {\n type: Boolean,\n default: undefined,\n },\n\n closeOnContentClick: Boolean,\n\n ...makeDelayProps(),\n}, 'VOverlay-activator')\n\nexport function useActivator (\n props: ActivatorProps,\n { isActive, isTop, contentEl }: {\n isActive: Ref\n isTop: Ref\n contentEl: Ref\n }\n) {\n const vm = getCurrentInstance('useActivator')\n const activatorEl = ref()\n\n let isHovered = false\n let isFocused = false\n let firstEnter = true\n\n const openOnFocus = computed(() => props.openOnFocus || (props.openOnFocus == null && props.openOnHover))\n const openOnClick = computed(() => props.openOnClick || (props.openOnClick == null && !props.openOnHover && !openOnFocus.value))\n\n const { runOpenDelay, runCloseDelay } = useDelay(props, value => {\n if (\n value === (\n (props.openOnHover && isHovered) ||\n (openOnFocus.value && isFocused)\n ) && !(props.openOnHover && isActive.value && !isTop.value)\n ) {\n if (isActive.value !== value) {\n firstEnter = true\n }\n isActive.value = value\n }\n })\n\n const cursorTarget = ref<[x: number, y: number]>()\n const availableEvents = {\n onClick: (e: MouseEvent) => {\n e.stopPropagation()\n activatorEl.value = (e.currentTarget || e.target) as HTMLElement\n if (!isActive.value) {\n cursorTarget.value = [e.clientX, e.clientY]\n }\n isActive.value = !isActive.value\n },\n onMouseenter: (e: MouseEvent) => {\n isHovered = true\n activatorEl.value = (e.currentTarget || e.target) as HTMLElement\n runOpenDelay()\n },\n onMouseleave: (e: MouseEvent) => {\n isHovered = false\n runCloseDelay()\n },\n onFocus: (e: FocusEvent) => {\n if (matchesSelector(e.target as HTMLElement, ':focus-visible') === false) return\n\n isFocused = true\n e.stopPropagation()\n activatorEl.value = (e.currentTarget || e.target) as HTMLElement\n\n runOpenDelay()\n },\n onBlur: (e: FocusEvent) => {\n isFocused = false\n e.stopPropagation()\n\n runCloseDelay({ minDelay: 1 })\n },\n }\n\n const activatorEvents = computed(() => {\n const events: Partial = {}\n\n if (openOnClick.value) {\n events.onClick = availableEvents.onClick\n }\n if (props.openOnHover) {\n events.onMouseenter = availableEvents.onMouseenter\n events.onMouseleave = availableEvents.onMouseleave\n }\n if (openOnFocus.value) {\n events.onFocus = availableEvents.onFocus\n events.onBlur = availableEvents.onBlur\n }\n\n return events\n })\n\n const contentEvents = computed(() => {\n const events: Record = {}\n\n if (props.openOnHover) {\n events.onMouseenter = () => {\n isHovered = true\n runOpenDelay()\n }\n events.onMouseleave = () => {\n isHovered = false\n runCloseDelay()\n }\n }\n\n if (openOnFocus.value) {\n events.onFocusin = (e: Event) => {\n if (!(e.target as HTMLElement).matches(':focus-visible')) return\n isFocused = true\n runOpenDelay()\n }\n events.onFocusout = () => {\n isFocused = false\n runCloseDelay({ minDelay: 1 })\n }\n }\n\n if (props.closeOnContentClick) {\n const menu = inject(VMenuSymbol, null)\n events.onClick = () => {\n isActive.value = false\n menu?.closeParents()\n }\n }\n\n return events\n })\n\n const scrimEvents = computed(() => {\n const events: Record = {}\n\n if (props.openOnHover) {\n events.onMouseenter = () => {\n if (firstEnter) {\n isHovered = true\n firstEnter = false\n runOpenDelay()\n }\n }\n events.onMouseleave = () => {\n isHovered = false\n runCloseDelay()\n }\n }\n\n return events\n })\n\n watch(isTop, val => {\n if (val && (\n (props.openOnHover && !isHovered && (!openOnFocus.value || !isFocused)) ||\n (openOnFocus.value && !isFocused && (!props.openOnHover || !isHovered))\n ) && !contentEl.value?.contains(document.activeElement)) {\n isActive.value = false\n }\n })\n\n watch(isActive, val => {\n if (!val) {\n setTimeout(() => {\n cursorTarget.value = undefined\n })\n }\n }, { flush: 'post' })\n\n const activatorRef = templateRef()\n watchEffect(() => {\n if (!activatorRef.value) return\n\n nextTick(() => {\n activatorEl.value = activatorRef.el\n })\n })\n\n const targetRef = templateRef()\n const target = computed(() => {\n if (props.target === 'cursor' && cursorTarget.value) return cursorTarget.value\n if (targetRef.value) return targetRef.el\n return getTarget(props.target, vm) || activatorEl.value\n })\n const targetEl = computed(() => {\n return Array.isArray(target.value)\n ? undefined\n : target.value\n })\n\n let scope: EffectScope\n watch(() => !!props.activator, val => {\n if (val && IN_BROWSER) {\n scope = effectScope()\n scope.run(() => {\n _useActivator(props, vm, { activatorEl, activatorEvents })\n })\n } else if (scope) {\n scope.stop()\n }\n }, { flush: 'post', immediate: true })\n\n onScopeDispose(() => {\n scope?.stop()\n })\n\n return { activatorEl, activatorRef, target, targetEl, targetRef, activatorEvents, contentEvents, scrimEvents }\n}\n\nfunction _useActivator (\n props: ActivatorProps,\n vm: ComponentInternalInstance,\n { activatorEl, activatorEvents }: Pick, 'activatorEl' | 'activatorEvents'>\n) {\n watch(() => props.activator, (val, oldVal) => {\n if (oldVal && val !== oldVal) {\n const activator = getActivator(oldVal)\n activator && unbindActivatorProps(activator)\n }\n if (val) {\n nextTick(() => bindActivatorProps())\n }\n }, { immediate: true })\n\n watch(() => props.activatorProps, () => {\n bindActivatorProps()\n })\n\n onScopeDispose(() => {\n unbindActivatorProps()\n })\n\n function bindActivatorProps (el = getActivator(), _props = props.activatorProps) {\n if (!el) return\n\n bindProps(el, mergeProps(activatorEvents.value, _props))\n }\n\n function unbindActivatorProps (el = getActivator(), _props = props.activatorProps) {\n if (!el) return\n\n unbindProps(el, mergeProps(activatorEvents.value, _props))\n }\n\n function getActivator (selector = props.activator): HTMLElement | undefined {\n const activator = getTarget(selector, vm)\n\n // The activator should only be a valid element (Ignore comments and text nodes)\n activatorEl.value = activator?.nodeType === Node.ELEMENT_NODE ? activator : undefined\n\n return activatorEl.value\n }\n}\n\nfunction getTarget (\n selector: T,\n vm: ComponentInternalInstance\n): HTMLElement | undefined | (T extends any[] ? [x: number, y: number] : never) {\n if (!selector) return\n\n let target\n if (selector === 'parent') {\n let el = vm?.proxy?.$el?.parentNode\n while (el?.hasAttribute('data-no-activator')) {\n el = el.parentNode\n }\n target = el\n } else if (typeof selector === 'string') {\n // Selector\n target = document.querySelector(selector)\n } else if ('$el' in selector) {\n // Component (ref)\n target = selector.$el\n } else {\n // HTMLElement | Element | [x, y]\n target = selector\n }\n\n return target\n}\n", "// Composables\nimport { useDisplay } from '@/composables/display'\n\n// Utilities\nimport { onMounted, shallowRef } from 'vue'\nimport { IN_BROWSER } from '@/util'\n\nexport function useHydration () {\n if (!IN_BROWSER) return shallowRef(false)\n\n const { ssr } = useDisplay()\n\n if (ssr) {\n const isMounted = shallowRef(false)\n onMounted(() => {\n isMounted.value = true\n })\n return isMounted\n } else {\n return shallowRef(true)\n }\n}\n", "// Composables\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Utilities\nimport {\n inject,\n onScopeDispose,\n provide,\n reactive,\n readonly,\n shallowRef,\n toRaw,\n toRef,\n toValue,\n watchEffect,\n} from 'vue'\nimport { getCurrentInstance } from '@/util'\n\n// Types\nimport type { InjectionKey, MaybeRefOrGetter, Ref } from 'vue'\n\nconst StackSymbol: InjectionKey = Symbol.for('vuetify:stack')\n\ninterface StackProvide {\n activeChildren: Set\n}\n\nconst globalStack = reactive<[uid: number, zIndex: number][]>([])\n\nexport function useStack (\n isActive: Readonly>,\n zIndex: MaybeRefOrGetter,\n disableGlobalStack: boolean\n) {\n const vm = getCurrentInstance('useStack')\n const createStackEntry = !disableGlobalStack\n\n const parent = inject(StackSymbol, undefined)\n const stack: StackProvide = reactive({\n activeChildren: new Set(),\n })\n provide(StackSymbol, stack)\n\n const _zIndex = shallowRef(Number(toValue(zIndex)))\n useToggleScope(isActive, () => {\n const lastZIndex = globalStack.at(-1)?.[1]\n _zIndex.value = lastZIndex ? lastZIndex + 10 : Number(toValue(zIndex))\n\n if (createStackEntry) {\n globalStack.push([vm.uid, _zIndex.value])\n }\n\n parent?.activeChildren.add(vm.uid)\n\n onScopeDispose(() => {\n if (createStackEntry) {\n const idx = toRaw(globalStack).findIndex(v => v[0] === vm.uid)\n globalStack.splice(idx, 1)\n }\n\n parent?.activeChildren.delete(vm.uid)\n })\n })\n\n const globalTop = shallowRef(true)\n if (createStackEntry) {\n watchEffect(() => {\n const _isTop = globalStack.at(-1)?.[0] === vm.uid\n setTimeout(() => globalTop.value = _isTop)\n })\n }\n\n const localTop = toRef(() => !stack.activeChildren.size)\n\n return {\n globalTop: readonly(globalTop),\n localTop,\n stackStyles: toRef(() => ({ zIndex: _zIndex.value })),\n }\n}\n", "// Utilities\nimport { computed, warn } from 'vue'\nimport { IN_BROWSER } from '@/util'\n\nexport function useTeleport (target: () => (boolean | string | ParentNode)) {\n const teleportTarget = computed(() => {\n const _target = target()\n\n if (_target === true || !IN_BROWSER) return undefined\n\n const targetElement =\n _target === false ? document.body\n : typeof _target === 'string' ? document.querySelector(_target)\n : _target\n\n if (targetElement == null) {\n warn(`Unable to locate target ${_target}`)\n return undefined\n }\n\n let container = [...targetElement.children].find(el => el.matches('.v-overlay-container'))\n\n if (!container) {\n container = document.createElement('div')\n container.className = 'v-overlay-container'\n targetElement.appendChild(container)\n }\n\n return container\n })\n\n return { teleportTarget }\n}\n", "// Utilities\nimport { attachedRoot } from '@/util'\n\n// Types\nimport type { DirectiveBinding } from 'vue'\n\ninterface ClickOutsideBindingArgs {\n handler: (e: MouseEvent) => void\n closeConditional?: (e: Event) => boolean\n include?: () => HTMLElement[]\n}\n\ninterface ClickOutsideDirectiveBinding extends DirectiveBinding {\n value: ((e: MouseEvent) => void) | ClickOutsideBindingArgs\n}\n\nfunction defaultConditional () {\n return true\n}\n\nfunction checkEvent (e: MouseEvent, el: HTMLElement, binding: ClickOutsideDirectiveBinding): boolean {\n // The include element callbacks below can be expensive\n // so we should avoid calling them when we're not active.\n // Explicitly check for false to allow fallback compatibility\n // with non-toggleable components\n if (!e || checkIsActive(e, binding) === false) return false\n\n // If we're clicking inside the shadowroot, then the app root doesn't get the same\n // level of introspection as to _what_ we're clicking. We want to check to see if\n // our target is the shadowroot parent container, and if it is, ignore.\n const root = attachedRoot(el)\n if (\n typeof ShadowRoot !== 'undefined' &&\n root instanceof ShadowRoot &&\n root.host === e.target\n ) return false\n\n // Check if additional elements were passed to be included in check\n // (click must be outside all included elements, if any)\n const elements = ((typeof binding.value === 'object' && binding.value.include) || (() => []))()\n // Add the root element for the component this directive was defined on\n elements.push(el)\n\n // Check if it's a click outside our elements, and then if our callback returns true.\n // Non-toggleable components should take action in their callback and return falsy.\n // Toggleable can return true if it wants to deactivate.\n // Note that, because we're in the capture phase, this callback will occur before\n // the bubbling click event on any outside elements.\n return !elements.some(el => el?.contains(e.target as Node))\n}\n\nfunction checkIsActive (e: MouseEvent, binding: ClickOutsideDirectiveBinding): boolean | void {\n const isActive = (typeof binding.value === 'object' && binding.value.closeConditional) || defaultConditional\n\n return isActive(e)\n}\n\nfunction directive (e: MouseEvent, el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n const handler = typeof binding.value === 'function' ? binding.value : binding.value.handler\n\n // Clicks in the Shadow DOM change their target while using setTimeout, so the original target is saved here\n e.shadowTarget = e.target\n\n el._clickOutside!.lastMousedownWasOutside && checkEvent(e, el, binding) && setTimeout(() => {\n checkIsActive(e, binding) && handler && handler(e)\n }, 0)\n}\n\nfunction handleShadow (el: HTMLElement, callback: Function): void {\n const root = attachedRoot(el)\n\n callback(document)\n\n if (typeof ShadowRoot !== 'undefined' && root instanceof ShadowRoot) {\n callback(root)\n }\n}\n\nexport const ClickOutside = {\n // [data-app] may not be found\n // if using bind, inserted makes\n // sure that the root element is\n // available, iOS does not support\n // clicks on body\n mounted (el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n const onClick = (e: Event) => directive(e as MouseEvent, el, binding)\n const onMousedown = (e: Event) => {\n el._clickOutside!.lastMousedownWasOutside = checkEvent(e as MouseEvent, el, binding)\n }\n\n handleShadow(el, (app: HTMLElement) => {\n app.addEventListener('click', onClick, true)\n app.addEventListener('mousedown', onMousedown, true)\n })\n if (!el._clickOutside) {\n el._clickOutside = {\n lastMousedownWasOutside: false,\n }\n }\n\n el._clickOutside[binding.instance!.$.uid] = {\n onClick,\n onMousedown,\n }\n },\n\n beforeUnmount (el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n if (!el._clickOutside) return\n\n handleShadow(el, (app: HTMLElement) => {\n if (!app || !el._clickOutside?.[binding.instance!.$.uid]) return\n\n const { onClick, onMousedown } = el._clickOutside[binding.instance!.$.uid]!\n\n app.removeEventListener('click', onClick, true)\n app.removeEventListener('mousedown', onMousedown, true)\n })\n\n delete el._clickOutside[binding.instance!.$.uid]\n },\n}\n\nexport default ClickOutside\n"], + "mappings": "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", + "names": ["elementToViewport", "point", "offset", "x", "y", "getOffset", "a", "b", "x", "y", "anchorToPoint", "anchor", "box", "side", "align", "width", "height", "elementToViewport", "locationStrategies", "static", "staticLocationStrategy", "connected", "connectedLocationStrategy", "makeLocationStrategyProps", "propsFactory", "locationStrategy", "type", "String", "Function", "default", "validator", "val", "location", "origin", "offset", "Number", "Array", "stickToTarget", "Boolean", "viewportMargin", "useLocationStrategies", "props", "data", "contentStyles", "ref", "updateLocation", "IN_BROWSER", "useToggleScope", "isActive", "value", "reset", "watch", "onScopeDispose", "window", "removeEventListener", "onResize", "visualViewport", "onVisualResize", "onVisualScroll", "undefined", "addEventListener", "passive", "e", "getIntrinsicSize", "el", "isRtl", "contentBox", "nullifyTransforms", "x", "parseFloat", "style", "right", "left", "y", "top", "activatorFixed", "isArray", "target", "isFixedPosition", "Object", "assign", "position", "preferredAnchor", "preferredOrigin", "destructComputed", "parsedAnchor", "parseAnchor", "parsedOrigin", "flipSide", "side", "align", "flipAlign", "flipCorner", "minWidth", "minHeight", "maxWidth", "maxHeight", "map", "key", "computed", "isNaN", "Infinity", "split", "length", "push", "observe", "lastFrame", "flipped", "CircularBuffer", "observer", "ResizeObserver", "requestAnimationFrame", "newTime", "clear", "newNewTime", "isFull", "values", "deepEqual", "at", "result", "targetBox", "Box", "width", "height", "newTarget", "oldTarget", "unobserve", "immediate", "contentEl", "newContentEl", "oldContentEl", "disconnect", "offsetParent", "getClientRects", "getTargetBox", "scrollParents", "getScrollParents", "document", "documentElement", "getPropertyValue", "viewport", "reduce", "box", "scrollBox", "getElementBox", "Math", "max", "min", "bottom", "placement", "anchor", "checkOverflow", "_placement", "targetPoint", "anchorToPoint", "contentPoint", "getOffset", "overflows", "getOverflow", "available", "resets", "consoleError", "_x", "_y", "axis", "getAxis", "hasOverflowX", "before", "after", "hasOverflowY", "forEach", "newPlacement", "flip", "newOverflows", "transformOrigin", "convertToUnit", "pixelRound", "pixelCeil", "clamp", "nextTick", "round", "devicePixelRatio", "ceil", "clean", "frames", "requestNewFrame", "cb", "length", "push", "run", "raf", "cancelAnimationFrame", "requestAnimationFrame", "frame", "shift", "scrollStrategies", "none", "close", "closeScrollStrategy", "block", "blockScrollStrategy", "reposition", "repositionScrollStrategy", "makeScrollStrategyProps", "propsFactory", "scrollStrategy", "type", "String", "Function", "default", "validator", "val", "useScrollStrategies", "props", "data", "IN_BROWSER", "scope", "watchEffect", "stop", "isActive", "value", "effectScope", "Promise", "resolve", "setTimeout", "active", "run", "onScopeDispose", "onScroll", "e", "bindScroll", "getTargetEl", "target", "contentEl", "offsetParent", "root", "scrollElements", "Set", "getScrollParents", "contained", "undefined", "filter", "el", "classList", "contains", "scrollbarWidth", "window", "innerWidth", "document", "documentElement", "offsetWidth", "scrollableParent", "hasScrollbar", "add", "forEach", "i", "style", "setProperty", "convertToUnit", "scrollLeft", "scrollTop", "x", "parseFloat", "getPropertyValue", "y", "scrollBehavior", "removeProperty", "remove", "slow", "raf", "ric", "update", "requestNewFrame", "start", "performance", "now", "updateLocation", "time", "requestIdleCallback", "cb", "cancelAnimationFrame", "requestAnimationFrame", "cancelIdleCallback", "Array", "isArray", "elementsFromPoint", "find", "addEventListener", "passive", "removeEventListener", "VMenuSymbol", "Symbol", "for", "makeActivatorProps", "propsFactory", "target", "String", "Object", "activator", "activatorProps", "type", "default", "openOnClick", "Boolean", "undefined", "openOnHover", "openOnFocus", "closeOnContentClick", "makeDelayProps", "useActivator", "props", "_ref", "isActive", "isTop", "contentEl", "vm", "getCurrentInstance", "activatorEl", "ref", "isHovered", "isFocused", "firstEnter", "computed", "value", "runOpenDelay", "runCloseDelay", "useDelay", "cursorTarget", "availableEvents", "onClick", "e", "stopPropagation", "currentTarget", "clientX", "clientY", "onMouseenter", "onMouseleave", "onFocus", "matchesSelector", "onBlur", "minDelay", "activatorEvents", "events", "contentEvents", "onFocusin", "matches", "onFocusout", "menu", "inject", "VMenuSymbol", "closeParents", "scrimEvents", "watch", "val", "contains", "document", "activeElement", "setTimeout", "flush", "activatorRef", "templateRef", "watchEffect", "nextTick", "el", "targetRef", "getTarget", "targetEl", "Array", "isArray", "scope", "IN_BROWSER", "effectScope", "run", "_useActivator", "stop", "immediate", "onScopeDispose", "_ref2", "oldVal", "getActivator", "unbindActivatorProps", "bindActivatorProps", "arguments", "length", "_props", "bindProps", "mergeProps", "unbindProps", "selector", "nodeType", "Node", "ELEMENT_NODE", "proxy", "$el", "parentNode", "hasAttribute", "querySelector", "useHydration", "IN_BROWSER", "shallowRef", "ssr", "useDisplay", "isMounted", "onMounted", "value", "StackSymbol", "Symbol", "for", "globalStack", "reactive", "useStack", "isActive", "zIndex", "disableGlobalStack", "vm", "getCurrentInstance", "createStackEntry", "parent", "inject", "undefined", "stack", "activeChildren", "Set", "provide", "_zIndex", "shallowRef", "Number", "toValue", "useToggleScope", "lastZIndex", "at", "value", "push", "uid", "add", "onScopeDispose", "idx", "toRaw", "findIndex", "v", "splice", "delete", "globalTop", "watchEffect", "_isTop", "setTimeout", "localTop", "toRef", "size", "readonly", "stackStyles", "useTeleport", "target", "teleportTarget", "computed", "_target", "IN_BROWSER", "undefined", "targetElement", "document", "body", "querySelector", "warn", "container", "children", "find", "el", "matches", "createElement", "className", "appendChild", "defaultConditional", "checkEvent", "e", "el", "binding", "checkIsActive", "root", "attachedRoot", "ShadowRoot", "host", "target", "elements", "value", "include", "push", "some", "contains", "isActive", "closeConditional", "directive", "handler", "shadowTarget", "_clickOutside", "lastMousedownWasOutside", "setTimeout", "handleShadow", "callback", "document", "ClickOutside", "mounted", "onClick", "onMousedown", "app", "addEventListener", "instance", "$", "uid", "beforeUnmount", "removeEventListener", "Scrim", "props", "modelValue", "color", "rest", "_createVNode", "Transition", "default", "_createElementVNode", "_mergeProps", "backgroundColorClasses", "value", "backgroundColorStyles", "makeVOverlayProps", "propsFactory", "absolute", "Boolean", "attach", "String", "Object", "closeOnBack", "type", "contained", "contentClass", "contentProps", "disabled", "opacity", "Number", "noClickAnimation", "persistent", "scrim", "zIndex", "makeActivatorProps", "makeComponentProps", "makeDimensionProps", "makeLazyProps", "makeLocationStrategyProps", "makeScrollStrategyProps", "makeFocusTrapProps", "makeThemeProps", "makeTransitionProps", "VOverlay", "genericComponent", "name", "directives", "vClickOutside", "inheritAttrs", "_disableGlobalStack", "omit", "emits", "e", "keydown", "afterEnter", "afterLeave", "setup", "_ref", "slots", "attrs", "emit", "vm", "getCurrentInstance", "root", "ref", "scrimEl", "contentEl", "model", "useProxiedModel", "isActive", "computed", "get", "set", "v", "themeClasses", "provideTheme", "rtlClasses", "isRtl", "useRtl", "hasContent", "onAfterLeave", "_onAfterLeave", "useLazy", "scrimColor", "useBackgroundColor", "globalTop", "localTop", "stackStyles", "useStack", "activatorEl", "activatorRef", "target", "targetEl", "targetRef", "activatorEvents", "contentEvents", "scrimEvents", "useActivator", "isTop", "teleportTarget", "useTeleport", "rootNode", "getRootNode", "proxy", "$el", "ShadowRoot", "dimensionStyles", "useDimension", "isMounted", "useHydration", "scopeId", "useScopeId", "watch", "contentStyles", "updateLocation", "useLocationStrategies", "useScrollStrategies", "onClickOutside", "animateClick", "closeConditional", "MouseEvent", "shadowTarget", "useFocusTrap", "IN_BROWSER", "val", "window", "addEventListener", "onKeydown", "removeEventListener", "immediate", "onBeforeUnmount", "key", "contains", "document", "activeElement", "focus", "onKeydownSelf", "router", "useRouter", "useToggleScope", "useBackButton", "next", "top", "scrollParent", "getScrollParent", "scrollingElement", "scrollTop", "animate", "transformOrigin", "transform", "duration", "easing", "standardEasing", "onAfterEnter", "useRender", "_Fragment", "activator", "mergeProps", "activatorProps", "Teleport", "class", "convertToUnit", "style", "MaybeTransition", "transition", "_withDirectives", "_vShow", "handler", "include", "rootEl"] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UIXKNP5E.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CMTCIV56.js similarity index 92% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UIXKNP5E.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CMTCIV56.js index 9560c81..2297da7 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UIXKNP5E.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CMTCIV56.js @@ -1,3 +1,6 @@ +import { + breakpoints +} from "./chunk-N4LJHDYD.js"; import { makeTagProps } from "./chunk-2HZIACSB.js"; @@ -5,9 +8,6 @@ import { makeDimensionProps, useDimension } from "./chunk-6EZKHCRW.js"; -import { - breakpoints -} from "./chunk-N4LJHDYD.js"; import { useRtl } from "./chunk-ENTLCOCZ.js"; @@ -28,7 +28,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VGrid/VContainer.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VGrid/VGrid.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VGrid/VGrid.css"; var makeVContainerProps = propsFactory({ fluid: { type: Boolean, @@ -62,7 +62,7 @@ var VContainer = genericComponent()({ }); // node_modules/vuetify/lib/components/VGrid/VCol.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VGrid/VGrid.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VGrid/VGrid.css"; var breakpointProps = (() => { return breakpoints.reduce((props, val) => { props[val] = { @@ -176,7 +176,7 @@ var VCol = genericComponent()({ }); // node_modules/vuetify/lib/components/VGrid/VRow.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VGrid/VGrid.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VGrid/VGrid.css"; var ALIGNMENT = ["start", "end", "center"]; var SPACE = ["space-between", "space-around", "space-evenly"]; function makeRowProps(prefix, def) { @@ -287,7 +287,7 @@ var VRow = genericComponent()({ }); // node_modules/vuetify/lib/components/VGrid/VSpacer.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VGrid/VGrid.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VGrid/VGrid.css"; var VSpacer = createSimpleFunctional("v-spacer", "div", "VSpacer"); export { @@ -296,4 +296,4 @@ export { VRow, VSpacer }; -//# sourceMappingURL=chunk-UIXKNP5E.js.map +//# sourceMappingURL=chunk-CMTCIV56.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UIXKNP5E.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CMTCIV56.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UIXKNP5E.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-CMTCIV56.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-5BPWKCNA.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-DS4J67XG.js similarity index 97% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-5BPWKCNA.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-DS4J67XG.js index 2f3afa5..737226e 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-5BPWKCNA.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-DS4J67XG.js @@ -3,7 +3,7 @@ import { } from "./chunk-LZ5T2ERG.js"; // node_modules/vuetify/lib/directives/ripple/index.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/directives/ripple/VRipple.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/directives/ripple/VRipple.css"; var stopSymbol = /* @__PURE__ */ Symbol("rippleStop"); var DELAY_RIPPLE = 80; function transform(el, value) { @@ -287,4 +287,4 @@ export { Ripple, ripple_default }; -//# sourceMappingURL=chunk-5BPWKCNA.js.map +//# sourceMappingURL=chunk-DS4J67XG.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-5BPWKCNA.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-DS4J67XG.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-5BPWKCNA.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-DS4J67XG.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PEUMXYT2.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-EKMPZMZF.js similarity index 97% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PEUMXYT2.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-EKMPZMZF.js index 7bb2881..64df1bc 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PEUMXYT2.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-EKMPZMZF.js @@ -1,16 +1,16 @@ -import { - VChip -} from "./chunk-SHBPUR7N.js"; import { VCounter, VField, makeVFieldProps -} from "./chunk-J7Q2NMV7.js"; +} from "./chunk-ITO3JWXJ.js"; +import { + VChip +} from "./chunk-PLNIG6WP.js"; import { VInput, makeVInputProps, useFocus -} from "./chunk-4VABFUPG.js"; +} from "./chunk-IK67YVHF.js"; import { forwardRefs } from "./chunk-GUNW7S2L.js"; @@ -44,7 +44,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VFileInput/VFileInput.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VFileInput/VFileInput.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VFileInput/VFileInput.css"; // node_modules/vuetify/lib/composables/fileDrop.js function useFileDrop() { @@ -423,4 +423,4 @@ var VFileInput = genericComponent()({ export { VFileInput }; -//# sourceMappingURL=chunk-PEUMXYT2.js.map +//# sourceMappingURL=chunk-EKMPZMZF.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PEUMXYT2.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-EKMPZMZF.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PEUMXYT2.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-EKMPZMZF.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ERI3RTQS.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ERI3RTQS.js.map deleted file mode 100644 index 681abc1..0000000 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ERI3RTQS.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../vuetify/src/components/VSelect/VSelect.tsx", "../../vuetify/src/components/VVirtualScroll/VVirtualScroll.tsx", "../../vuetify/src/components/VVirtualScroll/VVirtualScrollItem.tsx", "../../vuetify/src/composables/virtual.ts", "../../vuetify/src/components/VSelect/useScrolling.ts", "../../vuetify/src/composables/menuActivator.ts"], - "sourcesContent": ["// Styles\nimport './VSelect.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\nimport { VAvatar } from '@/components/VAvatar'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDivider } from '@/components/VDivider'\nimport { VIcon } from '@/components/VIcon'\nimport { useInputIcon } from '@/components/VInput/InputIcon'\nimport { VList, VListItem, VListSubheader } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from './useScrolling'\nimport { useAutocomplete } from '@/composables/autocomplete'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { IconValue } from '@/composables/icons'\nimport { makeItemsProps, useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { makeMenuActivatorProps, useMenuActivator } from '@/composables/menuActivator'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTransitionProps } from '@/composables/transition'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, toRef, watch } from 'vue'\nimport {\n camelizeProps,\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n genericComponent,\n IN_BROWSER,\n matchesSelector,\n omit,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { Component, PropType } from 'vue'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val = [T] extends [Primitive]\n ? T\n : (ReturnObject extends true ? T : any)\n\ntype Value =\n Multiple extends true\n ? readonly Val[]\n : Val | null\n\nexport const makeSelectProps = propsFactory({\n chips: Boolean,\n closableChips: Boolean,\n eager: Boolean,\n hideNoData: Boolean,\n hideSelected: Boolean,\n listProps: {\n type: Object as PropType,\n },\n menu: Boolean,\n menuIcon: {\n type: IconValue,\n default: '$dropdown',\n },\n menuProps: {\n type: Object as PropType,\n },\n multiple: Boolean,\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n openOnClear: Boolean,\n itemColor: String,\n noAutoScroll: Boolean,\n\n ...makeMenuActivatorProps(),\n ...makeItemsProps({ itemChildren: false }),\n}, 'Select')\n\nexport const makeVSelectProps = propsFactory({\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty']),\n ...makeTransitionProps({ transition: { component: VDialogTransition as Component } }),\n}, 'VSelect')\n\ntype ItemType = T extends readonly (infer U)[] ? U : never\n\nexport const VSelect = genericComponent,\n ReturnObject extends boolean = false,\n Multiple extends boolean = false,\n V extends Value = Value\n>(\n props: {\n items?: T\n itemTitle?: SelectItemKey>\n itemValue?: SelectItemKey>\n itemProps?: SelectItemKey>\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V | null\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: Omit & {\n item: { item: ListItem, index: number, props: Record }\n chip: { item: ListItem, index: number, props: Record }\n selection: { item: ListItem, index: number }\n subheader: { props: Record, index: number }\n divider: { props: Record, index: number }\n 'prepend-item': never\n 'append-item': never\n 'no-data': never\n }\n) => GenericProps>()({\n name: 'VSelect',\n\n props: makeVSelectProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (value: any) => true,\n 'update:menu': (ue: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\n const vMenuRef = ref()\n const vVirtualScrollRef = ref()\n const { items, transformIn, transformOut } = useItems(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(v === null ? [null] : wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function' ? props.counterValue(model.value)\n : typeof props.counterValue === 'number' ? props.counterValue\n : model.value.length\n })\n const form = useForm(props)\n const autocomplete = useAutocomplete(props)\n const selectedValues = computed(() => model.value.map(selection => selection.value))\n const isFocused = shallowRef(false)\n const closableChips = toRef(() => props.closableChips && !form.isReadonly.value && !form.isDisabled.value)\n const { InputIcon } = useInputIcon(props)\n\n let keyboardLookupPrefix = ''\n let keyboardLookupIndex = 0\n let keyboardLookupLastTime: number\n\n const displayItems = computed(() => {\n if (props.hideSelected) {\n return items.value.filter(item => !model.value.some(s => (props.valueComparator || deepEqual)(s, item)))\n }\n return items.value\n })\n\n const menuDisabled = computed(() => (\n (props.hideNoData && !displayItems.value.length) ||\n form.isReadonly.value || form.isDisabled.value\n ))\n const _menu = useProxiedModel(props, 'menu')\n const menu = computed({\n get: () => _menu.value,\n set: v => {\n if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return\n if (v && menuDisabled.value) return\n _menu.value = v\n },\n })\n\n const { menuId, ariaExpanded, ariaControls } = useMenuActivator(props, menu)\n\n const computedMenuProps = computed(() => {\n return {\n ...props.menuProps,\n activatorProps: {\n ...(props.menuProps?.activatorProps || {}),\n 'aria-haspopup': 'listbox', // Set aria-haspopup to 'listbox'\n },\n }\n })\n\n const listRef = ref()\n const listEvents = useScrolling(listRef, vTextFieldRef)\n\n function onClear (e: MouseEvent | KeyboardEvent) {\n if (props.openOnClear) {\n menu.value = true\n }\n }\n function onMousedownControl () {\n if (menuDisabled.value) return\n\n menu.value = !menu.value\n }\n function onListKeydown (e: KeyboardEvent) {\n if (checkPrintable(e)) {\n onKeydown(e)\n }\n }\n function onKeydown (e: KeyboardEvent) {\n if (!e.key || form.isReadonly.value) return\n\n if (['Enter', ' ', 'ArrowDown', 'ArrowUp', 'Home', 'End'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown', ' '].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape', 'Tab'].includes(e.key)) {\n menu.value = false\n }\n\n if (props.clearable && e.key === 'Backspace') {\n e.preventDefault()\n model.value = []\n onClear(e)\n return\n }\n\n if (e.key === 'Home') {\n listRef.value?.focus('first')\n } else if (e.key === 'End') {\n listRef.value?.focus('last')\n }\n\n // html select hotkeys\n const KEYBOARD_LOOKUP_THRESHOLD = 1000 // milliseconds\n\n if (!checkPrintable(e)) return\n\n const now = performance.now()\n if (now - keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {\n keyboardLookupPrefix = ''\n keyboardLookupIndex = 0\n }\n keyboardLookupPrefix += e.key.toLowerCase()\n keyboardLookupLastTime = now\n\n const items = displayItems.value\n function findItem () {\n let result = findItemBase()\n if (result) return result\n\n if (keyboardLookupPrefix.at(-1) === keyboardLookupPrefix.at(-2)) {\n // No matches but we have a repeated letter, try the next item with that prefix\n keyboardLookupPrefix = keyboardLookupPrefix.slice(0, -1)\n keyboardLookupIndex++\n result = findItemBase()\n if (result) return result\n }\n\n // Still nothing, wrap around to the top\n keyboardLookupIndex = 0\n result = findItemBase()\n if (result) return result\n\n // Still nothing, try just the new letter\n keyboardLookupPrefix = e.key.toLowerCase()\n return findItemBase()\n }\n function findItemBase () {\n for (let i = keyboardLookupIndex; i < items.length; i++) {\n const _item = items[i]\n if (_item.title.toLowerCase().startsWith(keyboardLookupPrefix)) {\n return [_item, i] as const\n }\n }\n return undefined\n }\n\n const result = findItem()\n if (!result) return\n\n const [item, index] = result\n keyboardLookupIndex = index\n listRef.value?.focus(index)\n if (!props.multiple) {\n model.value = [item]\n }\n }\n\n /** @param set - null means toggle */\n function select (item: ListItem, set: boolean | null = true) {\n if (item.props.disabled) return\n\n if (props.multiple) {\n const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value))\n const add = set == null ? !~index : set\n\n if (~index) {\n const value = add ? [...model.value, item] : [...model.value]\n value.splice(index, 1)\n model.value = value\n } else if (add) {\n model.value = [...model.value, item]\n }\n } else {\n const add = set !== false\n model.value = add ? [item] : []\n\n nextTick(() => {\n menu.value = false\n })\n }\n }\n function onBlur (e: FocusEvent) {\n if (!listRef.value?.$el.contains(e.relatedTarget as HTMLElement)) {\n menu.value = false\n }\n }\n function onAfterEnter () {\n if (props.eager) {\n vVirtualScrollRef.value?.calculateVisibleItems()\n }\n }\n function onAfterLeave () {\n if (isFocused.value) {\n vTextFieldRef.value?.focus()\n }\n }\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n }\n function onModelUpdate (v: any) {\n if (v == null) model.value = []\n else if (matchesSelector(vTextFieldRef.value, ':autofill') || matchesSelector(vTextFieldRef.value, ':-webkit-autofill')) {\n const item = items.value.find(item => item.title === v)\n if (item) {\n select(item)\n }\n } else if (vTextFieldRef.value) {\n vTextFieldRef.value.value = ''\n }\n }\n\n watch(menu, () => {\n if (!props.hideSelected && menu.value && model.value.length) {\n const index = displayItems.value.findIndex(\n item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value))\n )\n IN_BROWSER && !props.noAutoScroll && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n })\n\n watch(items, (newVal, oldVal) => {\n if (menu.value) return\n\n if (isFocused.value && props.hideNoData && !oldVal.length && newVal.length) {\n menu.value = true\n }\n })\n\n useRender(() => {\n const hasChips = !!(props.chips || slots.chip)\n const hasList = !!(\n (!props.hideNoData || displayItems.value.length) ||\n slots['prepend-item'] ||\n slots['append-item'] ||\n slots['no-data']\n )\n const isDirty = model.value.length > 0\n const textFieldProps = VTextField.filterProps(props)\n\n const placeholder = isDirty || (\n !isFocused.value &&\n props.label &&\n !props.persistentPlaceholder\n ) ? undefined : props.placeholder\n\n return (\n v.props.title).join(', ') }\n name={ undefined }\n onUpdate:modelValue={ onModelUpdate }\n v-model:focused={ isFocused.value }\n validationValue={ model.externalValue }\n counterValue={ counterValue.value }\n dirty={ isDirty }\n class={[\n 'v-select',\n {\n 'v-select--active-menu': menu.value,\n 'v-select--chips': !!props.chips,\n [`v-select--${props.multiple ? 'multiple' : 'single'}`]: true,\n 'v-select--selected': model.value.length,\n 'v-select--selection-slot': !!slots.selection,\n },\n props.class,\n ]}\n style={ props.style }\n inputmode=\"none\"\n placeholder={ placeholder }\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onBlur={ onBlur }\n onKeydown={ onKeydown }\n aria-expanded={ ariaExpanded.value }\n aria-controls={ ariaControls.value }\n >\n {{\n ...slots,\n default: ({ id }) => (\n <>\n \n { items.value.map(item => (\n \n ))}\n \n\n \n { hasList && (\n e.preventDefault() }\n onKeydown={ onListKeydown }\n onFocusin={ onFocusin }\n tabindex=\"-1\"\n selectable\n aria-live=\"polite\"\n aria-labelledby={ `${id.value}-label` }\n aria-multiselectable={ props.multiple }\n color={ props.itemColor ?? props.color }\n { ...listEvents }\n { ...props.listProps }\n >\n { slots['prepend-item']?.() }\n\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n \n ))}\n\n \n { ({ item, index, itemRef }) => {\n const camelizedProps = camelizeProps(item.props)\n\n const itemProps = mergeProps(item.props, {\n ref: itemRef,\n key: item.value,\n onClick: () => select(item, null),\n 'aria-posinset': index + 1,\n 'aria-setsize': displayItems.value.length,\n })\n\n if (item.type === 'divider') {\n return slots.divider?.({ props: item.raw, index }) ?? (\n \n )\n }\n\n if (item.type === 'subheader') {\n return slots.subheader?.({ props: item.raw, index }) ?? (\n \n )\n }\n\n return slots.item?.({\n item,\n index,\n props: itemProps,\n }) ?? (\n \n {{\n prepend: ({ isSelected }) => (\n <>\n { props.multiple && !props.hideSelected ? (\n event.preventDefault() }\n />\n ) : undefined }\n\n { camelizedProps.prependAvatar && (\n \n )}\n\n { camelizedProps.prependIcon && (\n \n )}\n \n ),\n }}\n \n )\n }}\n \n\n { slots['append-item']?.() }\n \n )}\n \n\n { model.value.map((item, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(item, false)\n }\n\n const slotProps = mergeProps(VChip.filterProps(item.props), {\n 'onClick:close': onChipClose,\n onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter' && e.key !== ' ') return\n\n e.preventDefault()\n e.stopPropagation()\n\n onChipClose(e)\n },\n onMousedown (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n },\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n })\n\n const hasSlot = hasChips ? !!slots.chip : !!slots.selection\n const slotContent = hasSlot\n ? ensureValidVNode(\n hasChips\n ? slots.chip!({ item, index, props: slotProps })\n : slots.selection!({ item, index })\n )\n : undefined\n\n if (hasSlot && !slotContent) return undefined\n\n return (\n
\n { hasChips ? (\n !slots.chip ? (\n \n ) : (\n \n { slotContent }\n \n )\n ) : (\n slotContent ?? (\n \n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n ,\n )}\n \n )\n )}\n
\n )\n })}\n \n ),\n 'append-inner': (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { props.menuIcon ? (\n \n ) : undefined }\n { props.appendInnerIcon && (\n \n )}\n \n ),\n }}\n
\n )\n })\n\n return forwardRefs({\n isFocused,\n menu,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VSelect = InstanceType\n", "// Styles\nimport './VVirtualScroll.sass'\n\n// Components\nimport { VVirtualScrollItem } from './VVirtualScrollItem'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { useToggleScope } from '@/composables/toggleScope'\nimport { makeVirtualProps, useVirtual } from '@/composables/virtual'\n\n// Utilities\nimport { onMounted, onScopeDispose, toRef } from 'vue'\nimport {\n convertToUnit,\n genericComponent,\n getCurrentInstance,\n getScrollParent,\n propsFactory,\n useRender,\n} from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { GenericProps } from '@/util'\n\nexport interface VVirtualScrollSlot {\n item: T\n index: number\n}\n\nexport const makeVVirtualScrollProps = propsFactory({\n items: {\n type: Array as PropType,\n default: () => ([]),\n },\n renderless: Boolean,\n\n ...makeVirtualProps(),\n ...makeComponentProps(),\n ...makeDimensionProps(),\n}, 'VVirtualScroll')\n\nexport const VVirtualScroll = genericComponent(\n props: {\n items?: readonly T[]\n renderless?: Renderless\n },\n slots: {\n default: VVirtualScrollSlot & (Renderless extends true ? {\n itemRef: Ref\n } : {})\n }\n) => GenericProps>()({\n name: 'VVirtualScroll',\n\n props: makeVVirtualScrollProps(),\n\n setup (props, { slots }) {\n const vm = getCurrentInstance('VVirtualScroll')\n const { dimensionStyles } = useDimension(props)\n const {\n calculateVisibleItems,\n containerRef,\n markerRef,\n handleScroll,\n handleScrollend,\n handleItemResize,\n scrollToIndex,\n paddingTop,\n paddingBottom,\n computedItems,\n } = useVirtual(props, toRef(() => props.items))\n\n useToggleScope(() => props.renderless, () => {\n function handleListeners (add = false) {\n const method = add ? 'addEventListener' : 'removeEventListener'\n\n if (containerRef.value === document.documentElement) {\n document[method]('scroll', handleScroll, { passive: true })\n document[method]('scrollend', handleScrollend)\n } else {\n containerRef.value?.[method]('scroll', handleScroll, { passive: true })\n containerRef.value?.[method]('scrollend', handleScrollend)\n }\n }\n\n onMounted(() => {\n containerRef.value = getScrollParent(vm.vnode.el as HTMLElement, true)\n handleListeners(true)\n })\n onScopeDispose(handleListeners)\n })\n\n useRender(() => {\n const children = computedItems.value.map(item => (\n handleItemResize(item.index, height) }\n >\n { slotProps => slots.default?.({ item: item.raw, index: item.index, ...slotProps }) }\n \n ))\n\n return props.renderless ? (\n <>\n
\n { children }\n
\n \n ) : (\n \n \n { children }\n
\n
\n )\n })\n\n return {\n calculateVisibleItems,\n scrollToIndex,\n }\n },\n})\n\nexport type VVirtualScroll = InstanceType\n", "// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { watch } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { GenericProps, TemplateRef } from '@/util'\n\nexport const makeVVirtualScrollItemProps = propsFactory({\n renderless: Boolean,\n\n ...makeComponentProps(),\n}, 'VVirtualScrollItem')\n\nexport const VVirtualScrollItem = genericComponent(\n props: {\n renderless?: Renderless\n },\n slots: {\n default: Renderless extends true ? {\n itemRef: TemplateRef\n } : never\n }\n) => GenericProps>()({\n name: 'VVirtualScrollItem',\n\n inheritAttrs: false,\n\n props: makeVVirtualScrollItemProps(),\n\n emits: {\n 'update:height': (height: number) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const { resizeRef, contentRect } = useResizeObserver(undefined, 'border')\n\n watch(() => contentRect.value?.height, height => {\n if (height != null) emit('update:height', height)\n })\n\n useRender(() => props.renderless ? (\n <>\n { slots.default?.({ itemRef: resizeRef }) }\n \n ) : (\n \n { (slots.default as any)?.() }\n \n ))\n },\n})\n", "// Composables\nimport { useDisplay } from '@/composables/display'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, nextTick, onScopeDispose, ref, shallowRef, watch, watchEffect } from 'vue'\nimport { clamp, debounce, getPropertyFromItem, IN_BROWSER, propsFactory } from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { SelectItemKey } from '@/util'\n\nconst UP = -1\nconst DOWN = 1\n\n/** Determines how large each batch of items should be */\nconst BUFFER_PX = 100\n\ntype VirtualProps = {\n itemHeight: number | string | null | undefined\n itemKey: SelectItemKey\n height: number | string | undefined\n}\n\nexport const makeVirtualProps = propsFactory({\n itemHeight: {\n type: [Number, String],\n default: null,\n },\n itemKey: {\n type: [String, Array, Function] as PropType,\n default: null,\n },\n height: [Number, String],\n}, 'virtual')\n\nexport function useVirtual (props: VirtualProps, items: Ref) {\n const display = useDisplay()\n\n const itemHeight = shallowRef(0)\n watchEffect(() => {\n itemHeight.value = parseFloat(props.itemHeight || 0)\n })\n\n const first = shallowRef(0)\n const last = shallowRef(Math.ceil(\n // Assume 16px items filling the entire screen height if\n // not provided. This is probably incorrect but it minimises\n // the chance of ending up with empty space at the bottom.\n // The default value is set here to avoid poisoning getSize()\n (parseInt(props.height!) || display.height.value) / (itemHeight.value || 16)\n ) || 1)\n const paddingTop = shallowRef(0)\n const paddingBottom = shallowRef(0)\n\n /** The scrollable element */\n const containerRef = ref()\n /** An element marking the top of the scrollable area,\n * used to add an offset if there's padding or other elements above the virtual list */\n const markerRef = ref()\n /** markerRef's offsetTop, lazily evaluated */\n let markerOffset = 0\n\n const { resizeRef, contentRect } = useResizeObserver()\n watchEffect(() => {\n resizeRef.value = containerRef.value\n })\n const viewportHeight = computed(() => {\n return containerRef.value === document.documentElement\n ? display.height.value\n : contentRect.value?.height || parseInt(props.height!) || 0\n })\n /** All static elements have been rendered and we have an assumed item height */\n const hasInitialRender = computed(() => {\n return !!(containerRef.value && markerRef.value && viewportHeight.value && itemHeight.value)\n })\n\n let sizes = Array.from({ length: items.value.length })\n let offsets = Array.from({ length: items.value.length })\n const updateTime = shallowRef(0)\n let targetScrollIndex = -1\n\n function getSize (index: number) {\n return sizes[index] || itemHeight.value\n }\n\n const updateOffsets = debounce(() => {\n const start = performance.now()\n offsets[0] = 0\n const length = items.value.length\n for (let i = 1; i <= length; i++) {\n offsets[i] = (offsets[i - 1] || 0) + getSize(i - 1)\n }\n updateTime.value = Math.max(updateTime.value, performance.now() - start)\n }, updateTime)\n\n const unwatch = watch(hasInitialRender, v => {\n if (!v) return\n // First render is complete, update offsets and visible\n // items in case our assumed item height was incorrect\n\n unwatch()\n markerOffset = markerRef.value!.offsetTop\n updateOffsets.immediate()\n calculateVisibleItems()\n\n if (!~targetScrollIndex) return\n\n nextTick(() => {\n IN_BROWSER && window.requestAnimationFrame(() => {\n scrollToIndex(targetScrollIndex)\n targetScrollIndex = -1\n })\n })\n })\n\n onScopeDispose(() => {\n updateOffsets.clear()\n })\n\n function handleItemResize (index: number, height: number) {\n const prevHeight = sizes[index]\n const prevMinHeight = itemHeight.value\n\n itemHeight.value = prevMinHeight ? Math.min(itemHeight.value, height) : height\n\n if (prevHeight !== height || prevMinHeight !== itemHeight.value) {\n sizes[index] = height\n updateOffsets()\n }\n }\n\n function calculateOffset (index: number) {\n index = clamp(index, 0, items.value.length)\n const whole = Math.floor(index)\n const fraction = index % 1\n const next = whole + 1\n const wholeOffset = offsets[whole] || 0\n const nextOffset = offsets[next] || wholeOffset\n return wholeOffset + (nextOffset - wholeOffset) * fraction\n }\n\n function calculateIndex (scrollTop: number) {\n return binaryClosest(offsets, scrollTop)\n }\n\n let lastScrollTop = 0\n let scrollVelocity = 0\n let lastScrollTime = 0\n\n watch(viewportHeight, (val, oldVal) => {\n calculateVisibleItems()\n if (val < oldVal) {\n requestAnimationFrame(() => {\n scrollVelocity = 0\n calculateVisibleItems()\n })\n }\n })\n\n let scrollTimeout = -1\n function handleScroll () {\n if (!containerRef.value || !markerRef.value) return\n\n const scrollTop = containerRef.value.scrollTop\n const scrollTime = performance.now()\n const scrollDeltaT = scrollTime - lastScrollTime\n\n if (scrollDeltaT > 500) {\n scrollVelocity = Math.sign(scrollTop - lastScrollTop)\n\n // Not super important, only update at the\n // start of a scroll sequence to avoid reflows\n markerOffset = markerRef.value.offsetTop\n } else {\n scrollVelocity = scrollTop - lastScrollTop\n }\n\n lastScrollTop = scrollTop\n lastScrollTime = scrollTime\n\n window.clearTimeout(scrollTimeout)\n scrollTimeout = window.setTimeout(handleScrollend, 500)\n\n calculateVisibleItems()\n }\n function handleScrollend () {\n if (!containerRef.value || !markerRef.value) return\n\n scrollVelocity = 0\n lastScrollTime = 0\n\n window.clearTimeout(scrollTimeout)\n calculateVisibleItems()\n }\n\n let raf = -1\n function calculateVisibleItems () {\n cancelAnimationFrame(raf)\n raf = requestAnimationFrame(_calculateVisibleItems)\n }\n function _calculateVisibleItems () {\n if (!containerRef.value || !viewportHeight.value || !itemHeight.value) return\n const scrollTop = lastScrollTop - markerOffset\n const direction = Math.sign(scrollVelocity)\n\n const startPx = Math.max(0, scrollTop - BUFFER_PX)\n const start = clamp(calculateIndex(startPx), 0, items.value.length)\n\n const endPx = scrollTop + viewportHeight.value + BUFFER_PX\n const end = clamp(calculateIndex(endPx) + 1, start + 1, items.value.length)\n\n if (\n // Only update the side we're scrolling towards,\n // the other side will be updated incidentally\n (direction !== UP || start < first.value) &&\n (direction !== DOWN || end > last.value)\n ) {\n const topOverflow = calculateOffset(first.value) - calculateOffset(start)\n const bottomOverflow = calculateOffset(end) - calculateOffset(last.value)\n const bufferOverflow = Math.max(topOverflow, bottomOverflow)\n\n if (bufferOverflow > BUFFER_PX) {\n first.value = start\n last.value = end\n } else {\n // Only update the side that's reached its limit if there's still buffer left\n if (start <= 0) first.value = start\n if (end >= items.value.length) last.value = end\n }\n }\n\n paddingTop.value = calculateOffset(first.value)\n paddingBottom.value = calculateOffset(items.value.length) - calculateOffset(last.value)\n }\n\n function scrollToIndex (index: number) {\n const offset = calculateOffset(index)\n if (!containerRef.value || (index && !offset)) {\n targetScrollIndex = index\n } else {\n containerRef.value.scrollTop = offset\n }\n }\n\n const computedItems = computed(() => {\n return items.value.slice(first.value, last.value).map((item, index) => {\n const _index = index + first.value\n return {\n raw: item,\n index: _index,\n key: getPropertyFromItem(item, props.itemKey, _index),\n }\n })\n })\n\n watch(items, () => {\n sizes = Array.from({ length: items.value.length })\n offsets = Array.from({ length: items.value.length })\n updateOffsets.immediate()\n calculateVisibleItems()\n }, { deep: 1 })\n\n return {\n calculateVisibleItems,\n containerRef,\n markerRef,\n computedItems,\n paddingTop,\n paddingBottom,\n scrollToIndex,\n handleScroll,\n handleScrollend,\n handleItemResize,\n }\n}\n\n// https://gist.github.com/robertleeplummerjr/1cc657191d34ecd0a324\nfunction binaryClosest (arr: ArrayLike, val: number) {\n let high = arr.length - 1\n let low = 0\n let mid = 0\n let item = null\n let target = -1\n\n if (arr[high]! < val) {\n return high\n }\n\n while (low <= high) {\n mid = (low + high) >> 1\n item = arr[mid]!\n\n if (item > val) {\n high = mid - 1\n } else if (item < val) {\n target = mid\n low = mid + 1\n } else if (item === val) {\n return mid\n } else {\n return low\n }\n }\n\n return target\n}\n", "// Utilities\nimport { shallowRef, watch } from 'vue'\n\n// Types\nimport type { Ref } from 'vue'\nimport type { VList } from '@/components/VList'\nimport type { VTextField } from '@/components/VTextField'\n\nexport function useScrolling (listRef: Ref, textFieldRef: Ref) {\n const isScrolling = shallowRef(false)\n let scrollTimeout: number\n function onListScroll (e: Event) {\n cancelAnimationFrame(scrollTimeout)\n isScrolling.value = true\n scrollTimeout = requestAnimationFrame(() => {\n scrollTimeout = requestAnimationFrame(() => {\n isScrolling.value = false\n })\n })\n }\n async function finishScrolling () {\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise(resolve => {\n if (isScrolling.value) {\n const stop = watch(isScrolling, () => {\n stop()\n resolve()\n })\n } else resolve()\n })\n }\n async function onListKeydown (e: KeyboardEvent) {\n if (e.key === 'Tab') {\n textFieldRef.value?.focus()\n }\n\n if (!['PageDown', 'PageUp', 'Home', 'End'].includes(e.key)) return\n const el: HTMLElement = listRef.value?.$el\n if (!el) return\n\n if (e.key === 'Home' || e.key === 'End') {\n el.scrollTo({\n top: e.key === 'Home' ? 0 : el.scrollHeight,\n behavior: 'smooth',\n })\n }\n\n await finishScrolling()\n\n const children = el.querySelectorAll(':scope > :not(.v-virtual-scroll__spacer)')\n\n if (e.key === 'PageDown' || e.key === 'Home') {\n const top = el.getBoundingClientRect().top\n for (const child of children) {\n if (child.getBoundingClientRect().top >= top) {\n (child as HTMLElement).focus()\n break\n }\n }\n } else {\n const bottom = el.getBoundingClientRect().bottom\n for (const child of [...children].reverse()) {\n if (child.getBoundingClientRect().bottom <= bottom) {\n (child as HTMLElement).focus()\n break\n }\n }\n }\n }\n\n return {\n onScrollPassive: onListScroll,\n onKeydown: onListKeydown,\n } as Record // typescript doesn't know about vue's event merging\n}\n", "// Utilities\nimport { computed, toRef, toValue, useId } from 'vue'\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { MaybeRefOrGetter } from 'vue'\n\n// Types\nexport interface MenuActivatorProps {\n closeText: string\n openText: string\n}\n\n// Composables\nexport const makeMenuActivatorProps = propsFactory({\n closeText: {\n type: String,\n default: '$vuetify.close',\n },\n openText: {\n type: String,\n default: '$vuetify.open',\n },\n}, 'autocomplete')\n\nexport function useMenuActivator (props: MenuActivatorProps, isOpen: MaybeRefOrGetter) {\n const uid = useId()\n const menuId = computed(() => `menu-${uid}`)\n\n const ariaExpanded = toRef(() => toValue(isOpen))\n const ariaControls = toRef(() => menuId.value)\n\n return {\n menuId,\n ariaExpanded,\n ariaControls,\n }\n}\n"], - "mappings": "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", - "names": ["makeVVirtualScrollItemProps", "propsFactory", "renderless", "Boolean", "makeComponentProps", "VVirtualScrollItem", "genericComponent", "name", "inheritAttrs", "props", "emits", "height", "setup", "_ref", "attrs", "emit", "slots", "resizeRef", "contentRect", "useResizeObserver", "undefined", "watch", "value", "useRender", "_createElementVNode", "_Fragment", "default", "itemRef", "_mergeProps", "class", "style", "UP", "DOWN", "BUFFER_PX", "makeVirtualProps", "propsFactory", "itemHeight", "type", "Number", "String", "default", "itemKey", "Array", "Function", "height", "useVirtual", "props", "items", "display", "useDisplay", "shallowRef", "watchEffect", "value", "parseFloat", "first", "last", "Math", "ceil", "parseInt", "paddingTop", "paddingBottom", "containerRef", "ref", "markerRef", "markerOffset", "resizeRef", "contentRect", "useResizeObserver", "viewportHeight", "computed", "document", "documentElement", "hasInitialRender", "sizes", "from", "length", "offsets", "updateTime", "targetScrollIndex", "getSize", "index", "updateOffsets", "debounce", "start", "performance", "now", "i", "max", "unwatch", "watch", "v", "offsetTop", "immediate", "calculateVisibleItems", "nextTick", "IN_BROWSER", "window", "requestAnimationFrame", "scrollToIndex", "onScopeDispose", "clear", "handleItemResize", "prevHeight", "prevMinHeight", "min", "calculateOffset", "clamp", "whole", "floor", "fraction", "next", "wholeOffset", "nextOffset", "calculateIndex", "scrollTop", "binaryClosest", "lastScrollTop", "scrollVelocity", "lastScrollTime", "val", "oldVal", "scrollTimeout", "handleScroll", "scrollTime", "scrollDeltaT", "sign", "clearTimeout", "setTimeout", "handleScrollend", "raf", "cancelAnimationFrame", "_calculateVisibleItems", "direction", "startPx", "endPx", "end", "topOverflow", "bottomOverflow", "bufferOverflow", "offset", "computedItems", "slice", "map", "item", "_index", "raw", "key", "getPropertyFromItem", "deep", "arr", "high", "low", "mid", "target", "makeVVirtualScrollProps", "propsFactory", "items", "type", "Array", "default", "renderless", "Boolean", "makeVirtualProps", "makeComponentProps", "makeDimensionProps", "VVirtualScroll", "genericComponent", "name", "props", "setup", "_ref", "slots", "vm", "getCurrentInstance", "dimensionStyles", "useDimension", "calculateVisibleItems", "containerRef", "markerRef", "handleScroll", "handleScrollend", "handleItemResize", "scrollToIndex", "paddingTop", "paddingBottom", "computedItems", "useVirtual", "toRef", "useToggleScope", "handleListeners", "add", "arguments", "length", "undefined", "method", "value", "document", "documentElement", "passive", "onMounted", "getScrollParent", "vnode", "el", "onScopeDispose", "useRender", "children", "map", "item", "_createVNode", "VVirtualScrollItem", "key", "height", "index", "slotProps", "raw", "_createElementVNode", "_Fragment", "convertToUnit", "_normalizeClass", "class", "_normalizeStyle", "style", "useScrolling", "listRef", "textFieldRef", "isScrolling", "shallowRef", "scrollTimeout", "onListScroll", "e", "cancelAnimationFrame", "value", "requestAnimationFrame", "finishScrolling", "Promise", "resolve", "stop", "watch", "onListKeydown", "key", "focus", "includes", "el", "$el", "scrollTo", "top", "scrollHeight", "behavior", "children", "querySelectorAll", "getBoundingClientRect", "child", "bottom", "reverse", "onScrollPassive", "onKeydown", "makeMenuActivatorProps", "propsFactory", "closeText", "type", "String", "default", "openText", "useMenuActivator", "props", "isOpen", "uid", "useId", "menuId", "computed", "ariaExpanded", "toRef", "toValue", "ariaControls", "value", "makeSelectProps", "propsFactory", "chips", "Boolean", "closableChips", "eager", "hideNoData", "hideSelected", "listProps", "type", "Object", "menu", "menuIcon", "IconValue", "default", "menuProps", "multiple", "noDataText", "String", "openOnClear", "itemColor", "noAutoScroll", "makeMenuActivatorProps", "makeItemsProps", "itemChildren", "makeVSelectProps", "omit", "makeVTextFieldProps", "modelValue", "role", "makeTransitionProps", "transition", "component", "VDialogTransition", "VSelect", "genericComponent", "name", "props", "emits", "focused", "value", "ue", "setup", "_ref", "slots", "t", "useLocale", "vTextFieldRef", "ref", "vMenuRef", "vVirtualScrollRef", "items", "transformIn", "transformOut", "useItems", "model", "useProxiedModel", "v", "wrapInArray", "transformed", "counterValue", "computed", "length", "form", "useForm", "autocomplete", "useAutocomplete", "selectedValues", "map", "selection", "isFocused", "shallowRef", "toRef", "isReadonly", "isDisabled", "InputIcon", "useInputIcon", "keyboardLookupPrefix", "keyboardLookupIndex", "keyboardLookupLastTime", "displayItems", "filter", "item", "some", "s", "valueComparator", "deepEqual", "menuDisabled", "_menu", "get", "set", "ΨopenChildren", "size", "menuId", "ariaExpanded", "ariaControls", "useMenuActivator", "computedMenuProps", "activatorProps", "listRef", "listEvents", "useScrolling", "onClear", "e", "onMousedownControl", "onListKeydown", "checkPrintable", "onKeydown", "key", "includes", "preventDefault", "clearable", "focus", "KEYBOARD_LOOKUP_THRESHOLD", "now", "performance", "toLowerCase", "findItem", "result", "findItemBase", "at", "slice", "i", "_item", "title", "startsWith", "undefined", "index", "select", "arguments", "disabled", "findIndex", "add", "splice", "nextTick", "onBlur", "$el", "contains", "relatedTarget", "onAfterEnter", "calculateVisibleItems", "onAfterLeave", "onFocusin", "onModelUpdate", "matchesSelector", "find", "watch", "IN_BROWSER", "window", "requestAnimationFrame", "scrollToIndex", "newVal", "oldVal", "useRender", "hasChips", "chip", "hasList", "isDirty", "textFieldProps", "VTextField", "filterProps", "placeholder", "label", "persistentPlaceholder", "_createVNode", "_mergeProps", "join", "$event", "externalValue", "class", "style", "_ref2", "id", "_createElementVNode", "_Fragment", "fieldName", "VMenu", "VList", "color", "VListItem", "VVirtualScroll", "_ref3", "itemRef", "camelizedProps", "camelizeProps", "itemProps", "mergeProps", "onClick", "divider", "raw", "VDivider", "subheader", "VListSubheader", "prepend", "_ref4", "isSelected", "VCheckboxBtn", "event", "prependAvatar", "VAvatar", "prependIcon", "VIcon", "onChipClose", "stopPropagation", "slotProps", "VChip", "onMousedown", "hasSlot", "slotContent", "ensureValidVNode", "VDefaultsProvider", "closable", "text", "_createTextVNode", "_len", "args", "Array", "_key", "fieldIconColor", "appendInnerIcon", "iconColor", "forwardRefs"] -} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-EXUNAYJA.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-EXUNAYJA.js new file mode 100644 index 0000000..cf18be3 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-EXUNAYJA.js @@ -0,0 +1,116 @@ +import { + VOverlay, + makeVOverlayProps +} from "./chunk-CL6G3ICF.js"; +import { + useScopeId +} from "./chunk-BVUPSGRF.js"; +import { + forwardRefs +} from "./chunk-GUNW7S2L.js"; +import { + useProxiedModel +} from "./chunk-KA77II4V.js"; +import { + genericComponent, + omit, + propsFactory, + useRender +} from "./chunk-LZ5T2ERG.js"; +import { + computed, + createVNode, + mergeProps, + ref, + toRef, + useId +} from "./chunk-2MKFL3BX.js"; + +// node_modules/vuetify/lib/components/VTooltip/VTooltip.js +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTooltip/VTooltip.css"; +var makeVTooltipProps = propsFactory({ + id: String, + interactive: Boolean, + text: String, + ...omit(makeVOverlayProps({ + closeOnBack: false, + location: "end", + locationStrategy: "connected", + eager: true, + minWidth: 0, + offset: 10, + openOnClick: false, + openOnHover: true, + origin: "auto", + scrim: false, + scrollStrategy: "reposition", + transition: null + }), ["absolute", "retainFocus", "captureFocus", "disableInitialFocus"]) +}, "VTooltip"); +var VTooltip = genericComponent()({ + name: "VTooltip", + props: makeVTooltipProps(), + emits: { + "update:modelValue": (value) => true + }, + setup(props, _ref) { + let { + slots + } = _ref; + const isActive = useProxiedModel(props, "modelValue"); + const { + scopeId + } = useScopeId(); + const uid = useId(); + const id = toRef(() => props.id || `v-tooltip-${uid}`); + const overlay = ref(); + const location = computed(() => { + return props.location.split(" ").length > 1 ? props.location : props.location + " center"; + }); + const origin = computed(() => { + return props.origin === "auto" || props.origin === "overlap" || props.origin.split(" ").length > 1 || props.location.split(" ").length > 1 ? props.origin : props.origin + " center"; + }); + const transition = toRef(() => { + if (props.transition != null) return props.transition; + return isActive.value ? "scale-transition" : "fade-transition"; + }); + const activatorProps = computed(() => mergeProps({ + "aria-describedby": id.value + }, props.activatorProps)); + useRender(() => { + const overlayProps = VOverlay.filterProps(props); + return createVNode(VOverlay, mergeProps({ + "ref": overlay, + "class": ["v-tooltip", { + "v-tooltip--interactive": props.interactive + }, props.class], + "style": props.style, + "id": id.value + }, overlayProps, { + "modelValue": isActive.value, + "onUpdate:modelValue": ($event) => isActive.value = $event, + "transition": transition.value, + "absolute": true, + "location": location.value, + "origin": origin.value, + "role": "tooltip", + "activatorProps": activatorProps.value, + "_disableGlobalStack": true + }, scopeId), { + activator: slots.activator, + default: function() { + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + return slots.default?.(...args) ?? props.text; + } + }); + }); + return forwardRefs({}, overlay); + } +}); + +export { + VTooltip +}; +//# sourceMappingURL=chunk-EXUNAYJA.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-EXUNAYJA.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-EXUNAYJA.js.map new file mode 100644 index 0000000..f01d0eb --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-EXUNAYJA.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../vuetify/src/components/VTooltip/VTooltip.tsx"], + "sourcesContent": ["// Styles\nimport './VTooltip.sass'\n\n// Components\nimport { VOverlay } from '@/components/VOverlay'\nimport { makeVOverlayProps } from '@/components/VOverlay/VOverlay'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\n\n// Utilities\nimport { computed, mergeProps, ref, toRef, useId } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { StrategyProps } from '@/components/VOverlay/locationStrategies'\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\n\nexport const makeVTooltipProps = propsFactory({\n id: String,\n interactive: Boolean,\n text: String,\n\n ...omit(makeVOverlayProps({\n closeOnBack: false,\n location: 'end' as const,\n locationStrategy: 'connected' as const,\n eager: true,\n minWidth: 0,\n offset: 10,\n openOnClick: false,\n openOnHover: true,\n origin: 'auto' as const,\n scrim: false,\n scrollStrategy: 'reposition' as const,\n transition: null,\n }), [\n 'absolute',\n 'retainFocus',\n 'captureFocus',\n 'disableInitialFocus',\n ]),\n}, 'VTooltip')\n\nexport const VTooltip = genericComponent()({\n name: 'VTooltip',\n\n props: makeVTooltipProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { scopeId } = useScopeId()\n\n const uid = useId()\n const id = toRef(() => props.id || `v-tooltip-${uid}`)\n\n const overlay = ref()\n\n const location = computed(() => {\n return props.location.split(' ').length > 1\n ? props.location\n : props.location + ' center' as StrategyProps['location']\n })\n\n const origin = computed(() => {\n return (\n props.origin === 'auto' ||\n props.origin === 'overlap' ||\n props.origin.split(' ').length > 1 ||\n props.location.split(' ').length > 1\n ) ? props.origin\n : props.origin + ' center' as StrategyProps['origin']\n })\n\n const transition = toRef(() => {\n if (props.transition != null) return props.transition\n return isActive.value ? 'scale-transition' : 'fade-transition'\n })\n\n const activatorProps = computed(() =>\n mergeProps({\n 'aria-describedby': id.value,\n }, props.activatorProps)\n )\n\n useRender(() => {\n const overlayProps = VOverlay.filterProps(props)\n\n return (\n \n {{\n activator: slots.activator,\n default: (...args) => slots.default?.(...args) ?? props.text,\n }}\n \n )\n })\n\n return forwardRefs({}, overlay)\n },\n})\n\nexport type VTooltip = InstanceType\n"], + "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAA;AAmBO,IAAMA,oBAAoBC,aAAa;EAC5CC,IAAIC;EACJC,aAAaC;EACbC,MAAMH;EAEN,GAAGI,KAAKC,kBAAkB;IACxBC,aAAa;IACbC,UAAU;IACVC,kBAAkB;IAClBC,OAAO;IACPC,UAAU;IACVC,QAAQ;IACRC,aAAa;IACbC,aAAa;IACbC,QAAQ;IACRC,OAAO;IACPC,gBAAgB;IAChBC,YAAY;EACd,CAAC,GAAG,CACF,YACA,eACA,gBACA,qBAAqB,CACtB;AACH,GAAG,UAAU;AAEN,IAAMC,WAAWC,iBAA+B,EAAE;EACvDC,MAAM;EAENC,OAAOxB,kBAAkB;EAEzByB,OAAO;IACL,qBAAsBC,WAAmB;EAC3C;EAEAC,MAAOH,OAAKI,MAAa;AAAA,QAAX;MAAEC;IAAM,IAACD;AACrB,UAAME,WAAWC,gBAAgBP,OAAO,YAAY;AACpD,UAAM;MAAEQ;IAAQ,IAAIC,WAAW;AAE/B,UAAMC,MAAMC,MAAM;AAClB,UAAMjC,KAAKkC,MAAM,MAAMZ,MAAMtB,MAAM,aAAagC,GAAG,EAAE;AAErD,UAAMG,UAAUC,IAAc;AAE9B,UAAM5B,WAAW6B,SAAS,MAAM;AAC9B,aAAOf,MAAMd,SAAS8B,MAAM,GAAG,EAAEC,SAAS,IACtCjB,MAAMd,WACNc,MAAMd,WAAW;IACvB,CAAC;AAED,UAAMO,SAASsB,SAAS,MAAM;AAC5B,aACEf,MAAMP,WAAW,UACjBO,MAAMP,WAAW,aACjBO,MAAMP,OAAOuB,MAAM,GAAG,EAAEC,SAAS,KACjCjB,MAAMd,SAAS8B,MAAM,GAAG,EAAEC,SAAS,IACjCjB,MAAMP,SACNO,MAAMP,SAAS;IACrB,CAAC;AAED,UAAMG,aAAagB,MAAM,MAAM;AAC7B,UAAIZ,MAAMJ,cAAc,KAAM,QAAOI,MAAMJ;AAC3C,aAAOU,SAASJ,QAAQ,qBAAqB;IAC/C,CAAC;AAED,UAAMgB,iBAAiBH,SAAS,MAC9BI,WAAW;MACT,oBAAoBzC,GAAGwB;IACzB,GAAGF,MAAMkB,cAAc,CACzB;AAEAE,cAAU,MAAM;AACd,YAAMC,eAAeC,SAASC,YAAYvB,KAAK;AAE/C,aAAAwB,YAAAF,UAAAG,WAAA;QAAA,OAEUZ;QAAO,SACN,CACL,aACA;UAAE,0BAA0Bb,MAAMpB;QAAY,GAC9CoB,MAAM0B,KAAK;QACZ,SACO1B,MAAM2B;QAAK,MACdjD,GAAGwB;MAAK,GACRmB,cAAY;QAAA,cACPf,SAASJ;QAAK,uBAAA0B,YAAdtB,SAASJ,QAAK0B;QAAA,cACXhC,WAAWM;QAAK,YAAA;QAAA,YAElBhB,SAASgB;QAAK,UAChBT,OAAOS;QAAK,QAAA;QAAA,kBAEJgB,eAAehB;QAAK,uBAAA;MAAA,GAEhCM,OAAO,GAAA;QAGVqB,WAAWxB,MAAMwB;QACjBC,SAAS,WAAA;AAAA,mBAAAC,OAAAC,UAAAf,QAAIgB,OAAI,IAAAC,MAAAH,IAAA,GAAAI,OAAA,GAAAA,OAAAJ,MAAAI,QAAA;AAAJF,iBAAIE,IAAA,IAAAH,UAAAG,IAAA;UAAA;AAAA,iBAAK9B,MAAMyB,UAAU,GAAGG,IAAI,KAAKjC,MAAMlB;QAAI;MAAA,CAAA;IAIpE,CAAC;AAED,WAAOsD,YAAY,CAAC,GAAGvB,OAAO;EAChC;AACF,CAAC;", + "names": ["makeVTooltipProps", "propsFactory", "id", "String", "interactive", "Boolean", "text", "omit", "makeVOverlayProps", "closeOnBack", "location", "locationStrategy", "eager", "minWidth", "offset", "openOnClick", "openOnHover", "origin", "scrim", "scrollStrategy", "transition", "VTooltip", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "isActive", "useProxiedModel", "scopeId", "useScopeId", "uid", "useId", "toRef", "overlay", "ref", "computed", "split", "length", "activatorProps", "mergeProps", "useRender", "overlayProps", "VOverlay", "filterProps", "_createVNode", "_mergeProps", "class", "style", "$event", "activator", "default", "_len", "arguments", "args", "Array", "_key", "forwardRefs"] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4HCXUCLO.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-FCTFWI5H.js similarity index 93% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4HCXUCLO.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-FCTFWI5H.js index 98bcbc7..20225af 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4HCXUCLO.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-FCTFWI5H.js @@ -1,18 +1,29 @@ +import { + makeFilterProps, + useFilter +} from "./chunk-RB6DAYHX.js"; import { VSelect, VVirtualScrollItem, makeVirtualProps, useVirtual -} from "./chunk-ERI3RTQS.js"; +} from "./chunk-IZDIYS2S.js"; import { VCheckboxBtn -} from "./chunk-BYBKODOB.js"; +} from "./chunk-6HLLVLOR.js"; import { VChip -} from "./chunk-SHBPUR7N.js"; +} from "./chunk-PLNIG6WP.js"; +import { + VDivider +} from "./chunk-X3WY3J75.js"; +import { + makeDisplayProps, + useDisplay +} from "./chunk-N4LJHDYD.js"; import { VBtn -} from "./chunk-QC7VWQER.js"; +} from "./chunk-UQALH6SL.js"; import { makeVariantProps } from "./chunk-ADXDXPPR.js"; @@ -26,14 +37,14 @@ import { LoaderSlot, makeLoaderProps, useLoader -} from "./chunk-U2DSRSME.js"; +} from "./chunk-UXZ55AO7.js"; import { makeDensityProps, useDensity } from "./chunk-TM3MIDYC.js"; import { VIcon -} from "./chunk-CMZ4UYUX.js"; +} from "./chunk-4XZHKYGH.js"; import { makeSizeProps } from "./chunk-PIT7IT55.js"; @@ -43,13 +54,12 @@ import { import { makeTagProps } from "./chunk-2HZIACSB.js"; -import { - makeDisplayProps, - useDisplay -} from "./chunk-N4LJHDYD.js"; import { IconValue } from "./chunk-OJDZBU5D.js"; +import { + useBackgroundColor +} from "./chunk-BHV5Z34M.js"; import { useResizeObserver } from "./chunk-XDSAO7OT.js"; @@ -60,12 +70,6 @@ import { import { useProxiedModel } from "./chunk-KA77II4V.js"; -import { - VDivider -} from "./chunk-WXMECWZN.js"; -import { - useBackgroundColor -} from "./chunk-BHV5Z34M.js"; import { makeThemeProps, provideTheme @@ -116,20 +120,19 @@ import { toRef, toRefs, toValue, - unref, watch, watchEffect, withModifiers } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VDataTable/VDataTable.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDataTable/VDataTable.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDataTable/VDataTable.css"; // node_modules/vuetify/lib/components/VDataTable/VDataTableFooter.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDataTable/VDataTableFooter.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDataTable/VDataTableFooter.css"; // node_modules/vuetify/lib/components/VPagination/VPagination.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VPagination/VPagination.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VPagination/VPagination.css"; // node_modules/vuetify/lib/composables/refs.js function useRefs() { @@ -2243,7 +2246,7 @@ var VDataTableRows = genericComponent()({ }); // node_modules/vuetify/lib/components/VTable/VTable.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTable/VTable.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTable/VTable.css"; var makeVTableProps = propsFactory({ fixedHeader: Boolean, fixedFooter: Boolean, @@ -2373,160 +2376,6 @@ function useOptions(_ref) { }); } -// node_modules/vuetify/lib/composables/filter.js -var defaultFilter = (value, query, item) => { - if (value == null || query == null) return -1; - if (!query.length) return 0; - value = value.toString().toLocaleLowerCase(); - query = query.toString().toLocaleLowerCase(); - const result = []; - let idx = value.indexOf(query); - while (~idx) { - result.push([idx, idx + query.length]); - idx = value.indexOf(query, idx + query.length); - } - return result.length ? result : -1; -}; -function normaliseMatch(match, query) { - if (match == null || typeof match === "boolean" || match === -1) return; - if (typeof match === "number") return [[match, match + query.length]]; - if (Array.isArray(match[0])) return match; - return [match]; -} -var makeFilterProps = propsFactory({ - customFilter: Function, - customKeyFilter: Object, - filterKeys: [Array, String], - filterMode: { - type: String, - default: "intersection" - }, - noFilter: Boolean -}, "filter"); -function filterItems(items, query, options) { - const array = []; - const filter = options?.default ?? defaultFilter; - const keys = options?.filterKeys ? wrapInArray(options.filterKeys) : false; - const customFiltersLength = Object.keys(options?.customKeyFilter ?? {}).length; - if (!items?.length) return array; - let lookAheadItem = null; - loop: for (let i = 0; i < items.length; i++) { - const [item, transformed = item] = wrapInArray(items[i]); - const customMatches = {}; - const defaultMatches = {}; - let match = -1; - if ((query || customFiltersLength > 0) && !options?.noFilter) { - let hasOnlyCustomFilters = false; - if (typeof item === "object") { - if (item.type === "divider" || item.type === "subheader") { - if (lookAheadItem?.type === "divider" && item.type === "subheader") { - array.push(lookAheadItem); - } - lookAheadItem = { - index: i, - matches: {}, - type: item.type - }; - continue; - } - const filterKeys = keys || Object.keys(transformed); - hasOnlyCustomFilters = filterKeys.length === customFiltersLength; - for (const key of filterKeys) { - const value = getPropertyFromItem(transformed, key); - const keyFilter = options?.customKeyFilter?.[key]; - match = keyFilter ? keyFilter(value, query, item) : filter(value, query, item); - if (match !== -1 && match !== false) { - if (keyFilter) customMatches[key] = normaliseMatch(match, query); - else defaultMatches[key] = normaliseMatch(match, query); - } else if (options?.filterMode === "every") { - continue loop; - } - } - } else { - match = filter(item, query, item); - if (match !== -1 && match !== false) { - defaultMatches.title = normaliseMatch(match, query); - } - } - const defaultMatchesLength = Object.keys(defaultMatches).length; - const customMatchesLength = Object.keys(customMatches).length; - if (!defaultMatchesLength && !customMatchesLength) continue; - if (options?.filterMode === "union" && customMatchesLength !== customFiltersLength && !defaultMatchesLength) continue; - if (options?.filterMode === "intersection" && (customMatchesLength !== customFiltersLength || !defaultMatchesLength && customFiltersLength > 0 && !hasOnlyCustomFilters)) continue; - } - if (lookAheadItem) { - array.push(lookAheadItem); - lookAheadItem = null; - } - array.push({ - index: i, - matches: { - ...defaultMatches, - ...customMatches - } - }); - } - return array; -} -function useFilter(props, items, query, options) { - const filteredItems = shallowRef([]); - const filteredMatches = shallowRef(/* @__PURE__ */ new Map()); - const transformedItems = computed(() => options?.transform ? unref(items).map((item) => [item, options.transform(item)]) : unref(items)); - watchEffect(() => { - const _query = typeof query === "function" ? query() : unref(query); - const strQuery = typeof _query !== "string" && typeof _query !== "number" ? "" : String(_query); - const results = filterItems(transformedItems.value, strQuery, { - customKeyFilter: { - ...props.customKeyFilter, - ...unref(options?.customKeyFilter) - }, - default: props.customFilter, - filterKeys: props.filterKeys, - filterMode: props.filterMode, - noFilter: props.noFilter - }); - const originalItems = unref(items); - const _filteredItems = []; - const _filteredMatches = /* @__PURE__ */ new Map(); - results.forEach((_ref) => { - let { - index, - matches - } = _ref; - const item = originalItems[index]; - _filteredItems.push(item); - _filteredMatches.set(item.value, matches); - }); - filteredItems.value = _filteredItems; - filteredMatches.value = _filteredMatches; - }); - function getMatches(item) { - return filteredMatches.value.get(item.value); - } - return { - filteredItems, - filteredMatches, - getMatches - }; -} -function highlightResult(name, text, matches) { - if (matches == null || !matches.length) return text; - return matches.map((match, i) => { - const start = i === 0 ? 0 : matches[i - 1][1]; - const result = [createBaseVNode("span", { - "class": normalizeClass(`${name}__unmask`) - }, [text.slice(start, match[0])]), createBaseVNode("span", { - "class": normalizeClass(`${name}__mask`) - }, [text.slice(match[0], match[1])])]; - if (i === matches.length - 1) { - result.push(createBaseVNode("span", { - "class": normalizeClass(`${name}__unmask`) - }, [text.slice(match[1])])); - } - return createBaseVNode(Fragment, null, [result]); - }); -} - // node_modules/vuetify/lib/components/VDataTable/VDataTable.js var makeDataTableProps = propsFactory({ ...makeVDataTableRowsProps(), @@ -3157,9 +3006,6 @@ var VDataTableServer = genericComponent()({ }); export { - makeFilterProps, - useFilter, - highlightResult, makeDataTableExpandProps, provideExpanded, makeDataTableGroupProps, @@ -3186,4 +3032,4 @@ export { VDataTableVirtual, VDataTableServer }; -//# sourceMappingURL=chunk-4HCXUCLO.js.map +//# sourceMappingURL=chunk-FCTFWI5H.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4HCXUCLO.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-FCTFWI5H.js.map similarity index 56% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4HCXUCLO.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-FCTFWI5H.js.map index 8e25ade..a9d8b7f 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4HCXUCLO.js.map +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-FCTFWI5H.js.map @@ -1,7 +1,7 @@ { "version": 3, - "sources": ["../../vuetify/src/components/VDataTable/VDataTable.tsx", "../../vuetify/src/components/VDataTable/VDataTableFooter.tsx", "../../vuetify/src/components/VPagination/VPagination.tsx", "../../vuetify/src/composables/refs.ts", "../../vuetify/src/components/VDataTable/composables/paginate.ts", "../../vuetify/src/components/VDataTable/VDataTableColumn.tsx", "../../vuetify/src/components/VDataTable/composables/headers.ts", "../../vuetify/src/components/VDataTable/composables/select.ts", "../../vuetify/src/components/VDataTable/composables/sort.ts", "../../vuetify/src/components/VDataTable/VDataTableHeaders.tsx", "../../vuetify/src/components/VDataTable/composables/group.ts", "../../vuetify/src/components/VDataTable/VDataTableGroupHeaderRow.tsx", "../../vuetify/src/components/VDataTable/composables/expand.ts", "../../vuetify/src/components/VDataTable/VDataTableRow.tsx", "../../vuetify/src/components/VDataTable/VDataTableRows.tsx", "../../vuetify/src/components/VTable/VTable.tsx", "../../vuetify/src/components/VDataTable/composables/items.ts", "../../vuetify/src/components/VDataTable/composables/options.ts", "../../vuetify/src/composables/filter.tsx", "../../vuetify/src/components/VDataTable/VDataTableVirtual.tsx", "../../vuetify/src/components/VDataTable/VDataTableServer.tsx"], - "sourcesContent": ["// Styles\nimport './VDataTable.sass'\n\n// Components\nimport { makeVDataTableFooterProps, VDataTableFooter } from './VDataTableFooter'\nimport { makeVDataTableHeadersProps, VDataTableHeaders } from './VDataTableHeaders'\nimport { makeVDataTableRowsProps, VDataTableRows } from './VDataTableRows'\nimport { VDivider } from '@/components/VDivider'\nimport { makeVTableProps, VTable } from '@/components/VTable/VTable'\n\n// Composables\nimport { makeDataTableExpandProps, provideExpanded } from './composables/expand'\nimport { createGroupBy, makeDataTableGroupProps, provideGroupBy, useGroupedItems } from './composables/group'\nimport { createHeaders, makeDataTableHeaderProps } from './composables/headers'\nimport { makeDataTableItemsProps, useDataTableItems } from './composables/items'\nimport { useOptions } from './composables/options'\nimport { createPagination, makeDataTablePaginateProps, providePagination, usePaginatedItems } from './composables/paginate'\nimport { makeDataTableSelectProps, provideSelection } from './composables/select'\nimport { createSort, makeDataTableSortProps, provideSort, useSortedItems } from './composables/sort'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\n\n// Utilities\nimport { computed, toRef, toRefs } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { DeepReadonly, UnwrapRef } from 'vue'\nimport type { Group, GroupSummary } from './composables/group'\nimport type { CellProps, DataTableHeader, DataTableItem, InternalDataTableHeader, RowProps } from './types'\nimport type { VDataTableHeadersSlots } from './VDataTableHeaders'\nimport type { VDataTableRowsSlots } from './VDataTableRows'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\nexport type VDataTableSlotProps = {\n page: number\n itemsPerPage: number\n sortBy: UnwrapRef['sortBy']>\n pageCount: number\n toggleSort: ReturnType['toggleSort']\n setItemsPerPage: ReturnType['setItemsPerPage']\n someSelected: boolean\n allSelected: boolean\n isSelected: ReturnType['isSelected']\n select: ReturnType['select']\n selectAll: ReturnType['selectAll']\n toggleSelect: ReturnType['toggleSelect']\n isExpanded: ReturnType['isExpanded']\n toggleExpand: ReturnType['toggleExpand']\n isGroupOpen: ReturnType['isGroupOpen']\n toggleGroup: ReturnType['toggleGroup']\n items: readonly T[]\n internalItems: readonly DataTableItem[]\n groupedItems: readonly (DataTableItem | Group> | GroupSummary>)[]\n columns: InternalDataTableHeader[]\n headers: InternalDataTableHeader[][]\n}\n\nexport type VDataTableSlots = VDataTableRowsSlots & VDataTableHeadersSlots & {\n default: VDataTableSlotProps\n colgroup: VDataTableSlotProps\n top: VDataTableSlotProps\n body: VDataTableSlotProps\n tbody: VDataTableSlotProps\n thead: VDataTableSlotProps\n tfoot: VDataTableSlotProps\n bottom: VDataTableSlotProps\n 'body.prepend': VDataTableSlotProps\n 'body.append': VDataTableSlotProps\n 'footer.prepend': never\n}\n\nexport const makeDataTableProps = propsFactory({\n ...makeVDataTableRowsProps(),\n\n hideDefaultBody: Boolean,\n hideDefaultFooter: Boolean,\n hideDefaultHeader: Boolean,\n width: [String, Number],\n search: String,\n\n ...makeDataTableExpandProps(),\n ...makeDataTableGroupProps(),\n ...makeDataTableHeaderProps(),\n ...makeDataTableItemsProps(),\n ...makeDataTableSelectProps(),\n ...makeDataTableSortProps(),\n ...omit(makeVDataTableHeadersProps(), ['multiSort', 'initialSortOrder']),\n ...makeVTableProps(),\n}, 'DataTable')\n\nexport const makeVDataTableProps = propsFactory({\n ...makeDataTablePaginateProps(),\n ...makeDataTableProps(),\n ...makeFilterProps(),\n ...makeVDataTableFooterProps(),\n}, 'VDataTable')\n\ntype ItemType = T extends readonly (infer U)[] ? U : never\n\nexport const VDataTable = genericComponent(\n props: {\n items?: T\n itemValue?: SelectItemKey>\n rowProps?: RowProps>\n cellProps?: CellProps>\n itemSelectable?: SelectItemKey>\n headers?: DeepReadonly>[]>\n modelValue?: V\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: VDataTableSlots>,\n) => GenericProps>()({\n name: 'VDataTable',\n\n props: makeVDataTableProps(),\n\n emits: {\n 'update:modelValue': (value: any[]) => true,\n 'update:page': (value: number) => true,\n 'update:itemsPerPage': (value: number) => true,\n 'update:sortBy': (value: any) => true,\n 'update:options': (value: any) => true,\n 'update:groupBy': (value: any) => true,\n 'update:expanded': (value: any) => true,\n 'update:currentItems': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { groupBy } = createGroupBy(props)\n const { initialSortOrder, sortBy, multiSort, mustSort } = createSort(props)\n const { page, itemsPerPage } = createPagination(props)\n const { disableSort } = toRefs(props)\n\n const {\n columns,\n headers,\n sortFunctions,\n sortRawFunctions,\n filterFunctions,\n } = createHeaders(props, {\n groupBy,\n showSelect: toRef(() => props.showSelect),\n showExpand: toRef(() => props.showExpand),\n })\n\n const { items } = useDataTableItems(props, columns)\n\n const search = toRef(() => props.search)\n const { filteredItems } = useFilter(props, items, search, {\n transform: item => item.columns,\n customKeyFilter: filterFunctions,\n })\n\n const { toggleSort } = provideSort({ initialSortOrder, sortBy, multiSort, mustSort, page })\n const { sortByWithGroups, opened, extractRows, isGroupOpen, toggleGroup } = provideGroupBy({ groupBy, sortBy, disableSort })\n\n const { sortedItems } = useSortedItems(props, filteredItems, sortByWithGroups, {\n transform: item => ({ ...item.raw, ...item.columns }),\n sortFunctions,\n sortRawFunctions,\n })\n const { flatItems } = useGroupedItems(sortedItems, groupBy, opened, () => !!slots['group-summary'])\n const itemsLength = computed(() => flatItems.value.length)\n\n const { startIndex, stopIndex, pageCount, setItemsPerPage } = providePagination({ page, itemsPerPage, itemsLength })\n const { paginatedItems } = usePaginatedItems({ items: flatItems, startIndex, stopIndex, itemsPerPage })\n\n const paginatedItemsWithoutGroups = computed(() => extractRows(paginatedItems.value))\n\n const {\n isSelected,\n select,\n selectAll,\n toggleSelect,\n someSelected,\n allSelected,\n } = provideSelection(props, { allItems: items, currentPage: paginatedItemsWithoutGroups })\n\n const { isExpanded, toggleExpand } = provideExpanded(props)\n\n useOptions({\n page,\n itemsPerPage,\n sortBy,\n groupBy,\n search,\n })\n\n provideDefaults({\n VDataTableRows: {\n hideNoData: toRef(() => props.hideNoData),\n noDataText: toRef(() => props.noDataText),\n loading: toRef(() => props.loading),\n loadingText: toRef(() => props.loadingText),\n },\n })\n\n const slotProps = computed>(() => ({\n page: page.value,\n itemsPerPage: itemsPerPage.value,\n sortBy: sortBy.value,\n pageCount: pageCount.value,\n toggleSort,\n setItemsPerPage,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n isSelected,\n select,\n selectAll,\n toggleSelect,\n isExpanded,\n toggleExpand,\n isGroupOpen,\n toggleGroup,\n items: paginatedItemsWithoutGroups.value.map(item => item.raw),\n internalItems: paginatedItemsWithoutGroups.value,\n groupedItems: paginatedItems.value,\n columns: columns.value,\n headers: headers.value,\n }))\n\n useRender(() => {\n const dataTableFooterProps = VDataTableFooter.filterProps(props)\n const dataTableHeadersProps = VDataTableHeaders.filterProps(omit(props, ['multiSort']))\n const dataTableRowsProps = VDataTableRows.filterProps(props)\n const tableProps = VTable.filterProps(props)\n\n return (\n \n {{\n top: () => slots.top?.(slotProps.value),\n default: () => slots.default ? slots.default(slotProps.value) : (\n <>\n { slots.colgroup?.(slotProps.value) }\n { !props.hideDefaultHeader && (\n \n \n \n )}\n { slots.thead?.(slotProps.value) }\n { !props.hideDefaultBody && (\n \n { slots['body.prepend']?.(slotProps.value) }\n { slots.body ? slots.body(slotProps.value) : (\n \n )}\n { slots['body.append']?.(slotProps.value) }\n \n )}\n { slots.tbody?.(slotProps.value) }\n { slots.tfoot?.(slotProps.value) }\n \n ),\n bottom: () => slots.bottom ? slots.bottom(slotProps.value) : !props.hideDefaultFooter && (\n <>\n \n\n \n \n ),\n }}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VDataTable = InstanceType\n", "// Styles\nimport './VDataTableFooter.sass'\n\n// Components\nimport { VPagination } from '@/components/VPagination'\nimport { VSelect } from '@/components/VSelect'\n\n// Composables\nimport { usePagination } from './composables/paginate'\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const makeVDataTableFooterProps = propsFactory({\n color: String,\n prevIcon: {\n type: IconValue,\n default: '$prev',\n },\n nextIcon: {\n type: IconValue,\n default: '$next',\n },\n firstIcon: {\n type: IconValue,\n default: '$first',\n },\n lastIcon: {\n type: IconValue,\n default: '$last',\n },\n itemsPerPageText: {\n type: String,\n default: '$vuetify.dataFooter.itemsPerPageText',\n },\n pageText: {\n type: String,\n default: '$vuetify.dataFooter.pageText',\n },\n firstPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.firstPage',\n },\n prevPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.prevPage',\n },\n nextPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.nextPage',\n },\n lastPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.lastPage',\n },\n itemsPerPageOptions: {\n type: Array as PropType,\n default: () => ([\n { value: 10, title: '10' },\n { value: 25, title: '25' },\n { value: 50, title: '50' },\n { value: 100, title: '100' },\n { value: -1, title: '$vuetify.dataFooter.itemsPerPageAll' },\n ]),\n },\n showCurrentPage: Boolean,\n}, 'VDataTableFooter')\n\nexport const VDataTableFooter = genericComponent<{ prepend: never }>()({\n name: 'VDataTableFooter',\n\n props: makeVDataTableFooterProps(),\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const { page, pageCount, startIndex, stopIndex, itemsLength, itemsPerPage, setItemsPerPage } = usePagination()\n\n const itemsPerPageOptions = computed(() => (\n props.itemsPerPageOptions.map(option => {\n if (typeof option === 'number') {\n return {\n value: option,\n title: option === -1\n ? t('$vuetify.dataFooter.itemsPerPageAll')\n : String(option),\n }\n }\n\n return {\n ...option,\n title: !isNaN(Number(option.title)) ? option.title : t(option.title),\n }\n })\n ))\n\n useRender(() => {\n const paginationProps = VPagination.filterProps(props)\n\n return (\n
\n { slots.prepend?.() }\n\n \n\n \n\n \n
\n )\n })\n\n return {}\n },\n})\n\nexport type VDataTableFooter = InstanceType\n", "// Styles\nimport './VPagination.sass'\n\n// Components\nimport { VBtn } from '../VBtn'\n\n// Composables\nimport { useDisplay } from '@/composables'\nimport { makeBorderProps } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps } from '@/composables/density'\nimport { makeElevationProps } from '@/composables/elevation'\nimport { IconValue } from '@/composables/icons'\nimport { useLocale, useRtl } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useRefs } from '@/composables/refs'\nimport { useResizeObserver } from '@/composables/resizeObserver'\nimport { makeRoundedProps } from '@/composables/rounded'\nimport { makeSizeProps } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeVariantProps } from '@/composables/variant'\n\n// Utilities\nimport { computed, nextTick, shallowRef, toRef } from 'vue'\nimport { createRange, genericComponent, keyValues, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComponentPublicInstance } from 'vue'\n\ntype ItemSlot = {\n isActive: boolean\n key: string | number\n page: string\n props: Record\n}\n\ntype ControlSlot = {\n icon: IconValue\n onClick: (e: Event) => void\n disabled: boolean\n 'aria-label': string\n 'aria-disabled': boolean\n}\n\nexport type VPaginationSlots = {\n item: ItemSlot\n first: ControlSlot\n prev: ControlSlot\n next: ControlSlot\n last: ControlSlot\n}\n\nexport const makeVPaginationProps = propsFactory({\n activeColor: String,\n start: {\n type: [Number, String],\n default: 1,\n },\n modelValue: {\n type: Number,\n default: (props: any) => props.start as number,\n },\n disabled: Boolean,\n length: {\n type: [Number, String],\n default: 1,\n validator: (val: number) => val % 1 === 0,\n },\n totalVisible: [Number, String],\n firstIcon: {\n type: IconValue,\n default: '$first',\n },\n prevIcon: {\n type: IconValue,\n default: '$prev',\n },\n nextIcon: {\n type: IconValue,\n default: '$next',\n },\n lastIcon: {\n type: IconValue,\n default: '$last',\n },\n ariaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.root',\n },\n pageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.page',\n },\n currentPageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.currentPage',\n },\n firstAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.first',\n },\n previousAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.previous',\n },\n nextAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.next',\n },\n lastAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.last',\n },\n ellipsis: {\n type: String,\n default: '...',\n },\n showFirstLastPage: Boolean,\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeSizeProps(),\n ...makeTagProps({ tag: 'nav' }),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'text' } as const),\n}, 'VPagination')\n\nexport const VPagination = genericComponent()({\n name: 'VPagination',\n\n props: makeVPaginationProps(),\n\n emits: {\n 'update:modelValue': (value: number) => true,\n first: (value: number) => true,\n prev: (value: number) => true,\n next: (value: number) => true,\n last: (value: number) => true,\n },\n\n setup (props, { slots, emit }) {\n const page = useProxiedModel(props, 'modelValue')\n const { t, n } = useLocale()\n const { isRtl } = useRtl()\n const { themeClasses } = provideTheme(props)\n const { width } = useDisplay()\n const maxButtons = shallowRef(-1)\n\n provideDefaults(undefined, { scoped: true })\n\n const { resizeRef } = useResizeObserver((entries: ResizeObserverEntry[]) => {\n if (!entries.length) return\n\n const { target, contentRect } = entries[0]\n\n const firstItem = target.querySelector('.v-pagination__list > *') as HTMLElement\n\n if (!firstItem) return\n\n const totalWidth = contentRect.width\n const itemWidth =\n firstItem.offsetWidth +\n parseFloat(getComputedStyle(firstItem).marginRight) * 2\n\n maxButtons.value = getMax(totalWidth, itemWidth)\n })\n\n const length = computed(() => parseInt(props.length, 10))\n const start = computed(() => parseInt(props.start, 10))\n\n const totalVisible = computed(() => {\n if (props.totalVisible != null) return parseInt(props.totalVisible, 10)\n else if (maxButtons.value >= 0) return maxButtons.value\n return getMax(width.value, 58)\n })\n\n function getMax (totalWidth: number, itemWidth: number) {\n const minButtons = props.showFirstLastPage ? 5 : 3\n return Math.max(0, Math.floor(\n // Round to two decimal places to avoid floating point errors\n Number(((totalWidth - itemWidth * minButtons) / itemWidth).toFixed(2))\n ))\n }\n\n const range = computed(() => {\n if (length.value <= 0 || isNaN(length.value) || length.value > Number.MAX_SAFE_INTEGER) return []\n\n if (totalVisible.value <= 0) return []\n else if (totalVisible.value === 1) return [page.value]\n\n if (length.value <= totalVisible.value) {\n return createRange(length.value, start.value)\n }\n\n const even = totalVisible.value % 2 === 0\n const middle = even ? totalVisible.value / 2 : Math.floor(totalVisible.value / 2)\n const left = even ? middle : middle + 1\n const right = length.value - middle\n\n if (left - page.value >= 0) {\n return [...createRange(Math.max(1, totalVisible.value - 1), start.value), props.ellipsis, length.value]\n } else if (page.value - right >= (even ? 1 : 0)) {\n const rangeLength = totalVisible.value - 1\n const rangeStart = length.value - rangeLength + start.value\n return [start.value, props.ellipsis, ...createRange(rangeLength, rangeStart)]\n } else {\n const rangeLength = Math.max(1, totalVisible.value - 2)\n const rangeStart = rangeLength === 1 ? page.value : page.value - Math.ceil(rangeLength / 2) + start.value\n return [start.value, props.ellipsis, ...createRange(rangeLength, rangeStart), props.ellipsis, length.value]\n }\n })\n\n // TODO: 'first' | 'prev' | 'next' | 'last' does not work here?\n function setValue (e: Event, value: number, event?: any) {\n e.preventDefault()\n page.value = value\n event && emit(event, value)\n }\n\n const { refs, updateRef } = useRefs()\n\n provideDefaults({\n VPaginationBtn: {\n color: toRef(() => props.color),\n border: toRef(() => props.border),\n density: toRef(() => props.density),\n size: toRef(() => props.size),\n variant: toRef(() => props.variant),\n rounded: toRef(() => props.rounded),\n elevation: toRef(() => props.elevation),\n },\n })\n\n const items = computed(() => {\n return range.value.map((item, index) => {\n const ref = (e: any) => updateRef(e, index)\n\n if (typeof item === 'string') {\n return {\n isActive: false,\n key: `ellipsis-${index}`,\n page: item,\n props: {\n ref,\n ellipsis: true,\n icon: true,\n disabled: true,\n },\n }\n } else {\n const isActive = item === page.value\n return {\n isActive,\n key: item,\n page: n(item),\n props: {\n ref,\n ellipsis: false,\n icon: true,\n disabled: !!props.disabled || Number(props.length) < 2,\n color: isActive ? props.activeColor : props.color,\n 'aria-current': isActive,\n 'aria-label': t(isActive ? props.currentPageAriaLabel : props.pageAriaLabel, item),\n onClick: (e: Event) => setValue(e, item),\n },\n }\n }\n })\n })\n\n const controls = computed(() => {\n const prevDisabled = !!props.disabled || page.value <= start.value\n const nextDisabled = !!props.disabled || page.value >= start.value + length.value - 1\n\n return {\n first: props.showFirstLastPage ? {\n icon: isRtl.value ? props.lastIcon : props.firstIcon,\n onClick: (e: Event) => setValue(e, start.value, 'first'),\n disabled: prevDisabled,\n 'aria-label': t(props.firstAriaLabel),\n 'aria-disabled': prevDisabled,\n } : undefined,\n prev: {\n icon: isRtl.value ? props.nextIcon : props.prevIcon,\n onClick: (e: Event) => setValue(e, page.value - 1, 'prev'),\n disabled: prevDisabled,\n 'aria-label': t(props.previousAriaLabel),\n 'aria-disabled': prevDisabled,\n },\n next: {\n icon: isRtl.value ? props.prevIcon : props.nextIcon,\n onClick: (e: Event) => setValue(e, page.value + 1, 'next'),\n disabled: nextDisabled,\n 'aria-label': t(props.nextAriaLabel),\n 'aria-disabled': nextDisabled,\n },\n last: props.showFirstLastPage ? {\n icon: isRtl.value ? props.firstIcon : props.lastIcon,\n onClick: (e: Event) => setValue(e, start.value + length.value - 1, 'last'),\n disabled: nextDisabled,\n 'aria-label': t(props.lastAriaLabel),\n 'aria-disabled': nextDisabled,\n } : undefined,\n }\n })\n\n function updateFocus () {\n const currentIndex = page.value - start.value\n refs.value[currentIndex]?.$el.focus()\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key === keyValues.left && !props.disabled && page.value > Number(props.start)) {\n page.value = page.value - 1\n nextTick(updateFocus)\n } else if (e.key === keyValues.right && !props.disabled && page.value < start.value + length.value - 1) {\n page.value = page.value + 1\n nextTick(updateFocus)\n }\n }\n\n useRender(() => (\n \n
    \n { props.showFirstLastPage && (\n
  • \n { slots.first ? slots.first(controls.value.first!) : (\n \n )}\n
  • \n )}\n\n
  • \n { slots.prev ? slots.prev(controls.value.prev) : (\n \n )}\n
  • \n\n { items.value.map((item, index) => (\n \n { slots.item ? slots.item(item) : (\n { item.page }\n )}\n \n ))}\n\n \n { slots.next ? slots.next(controls.value.next) : (\n \n )}\n \n\n { props.showFirstLastPage && (\n \n { slots.last ? slots.last(controls.value.last!) : (\n \n )}\n \n )}\n
\n \n ))\n\n return {}\n },\n})\n\nexport type VPagination = InstanceType\n", "// Utilities\nimport { onBeforeUpdate, ref } from 'vue'\n\n// Types\nimport type { Ref } from 'vue'\n\nexport function useRefs () {\n const refs = ref<(T | undefined)[]>([]) as Ref<(T | undefined)[]>\n\n onBeforeUpdate(() => (refs.value = []))\n\n function updateRef (e: any, i: number) {\n refs.value[i] = e\n }\n\n return { refs, updateRef }\n}\n", "// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject, provide, watch } from 'vue'\nimport { clamp, getCurrentInstance, propsFactory } from '@/util'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\nimport type { Group, GroupSummary } from './group'\nimport type { EventProp } from '@/util'\n\nexport const makeDataTablePaginateProps = propsFactory({\n page: {\n type: [Number, String],\n default: 1,\n },\n itemsPerPage: {\n type: [Number, String],\n default: 10,\n },\n}, 'DataTable-paginate')\n\nconst VDataTablePaginationSymbol: InjectionKey<{\n page: Ref\n itemsPerPage: Ref\n startIndex: Ref\n stopIndex: Ref\n pageCount: Ref\n itemsLength: Ref\n prevPage: () => void\n nextPage: () => void\n setPage: (value: number) => void\n setItemsPerPage: (value: number) => void\n}> = Symbol.for('vuetify:data-table-pagination')\n\ntype PaginationProps = {\n page: number | string\n 'onUpdate:page': EventProp | undefined\n itemsPerPage: number | string\n 'onUpdate:itemsPerPage': EventProp | undefined\n itemsLength?: number | string\n}\n\nexport function createPagination (props: PaginationProps) {\n const page = useProxiedModel(props, 'page', undefined, value => Number(value ?? 1))\n const itemsPerPage = useProxiedModel(props, 'itemsPerPage', undefined, value => Number(value ?? 10))\n\n return { page, itemsPerPage }\n}\n\nexport function providePagination (options: {\n page: Ref\n itemsPerPage: Ref\n itemsLength: Ref\n}) {\n const { page, itemsPerPage, itemsLength } = options\n\n const startIndex = computed(() => {\n if (itemsPerPage.value === -1) return 0\n\n return itemsPerPage.value * (page.value - 1)\n })\n const stopIndex = computed(() => {\n if (itemsPerPage.value === -1) return itemsLength.value\n\n return Math.min(itemsLength.value, startIndex.value + itemsPerPage.value)\n })\n\n const pageCount = computed(() => {\n if (itemsPerPage.value === -1 || itemsLength.value === 0) return 1\n\n return Math.ceil(itemsLength.value / itemsPerPage.value)\n })\n\n // Don't run immediately, items may not have been loaded yet: #17966\n watch([page, pageCount], () => {\n if (page.value > pageCount.value) {\n page.value = pageCount.value\n }\n })\n\n function setItemsPerPage (value: number) {\n itemsPerPage.value = value\n page.value = 1\n }\n\n function nextPage () {\n page.value = clamp(page.value + 1, 1, pageCount.value)\n }\n\n function prevPage () {\n page.value = clamp(page.value - 1, 1, pageCount.value)\n }\n\n function setPage (value: number) {\n page.value = clamp(value, 1, pageCount.value)\n }\n\n const data = { page, itemsPerPage, startIndex, stopIndex, pageCount, itemsLength, nextPage, prevPage, setPage, setItemsPerPage }\n\n provide(VDataTablePaginationSymbol, data)\n\n return data\n}\n\nexport function usePagination () {\n const data = inject(VDataTablePaginationSymbol)\n\n if (!data) throw new Error('Missing pagination!')\n\n return data\n}\n\nexport function usePaginatedItems (options: {\n items: Ref | GroupSummary)[]>\n startIndex: Ref\n stopIndex: Ref\n itemsPerPage: Ref\n}) {\n const vm = getCurrentInstance('usePaginatedItems')\n\n const { items, startIndex, stopIndex, itemsPerPage } = options\n const paginatedItems = computed(() => {\n if (itemsPerPage.value <= 0) return items.value\n\n return items.value.slice(startIndex.value, stopIndex.value)\n })\n\n watch(paginatedItems, val => {\n vm.emit('update:currentItems', val)\n }, { immediate: true })\n\n return { paginatedItems }\n}\n", "// Utilities\nimport { convertToUnit, defineFunctionalComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VDataTableColumn = defineFunctionalComponent({\n align: {\n type: String as PropType<'start' | 'center' | 'end'>,\n default: 'start',\n },\n fixed: {\n type: [Boolean, String] as PropType,\n default: false,\n },\n fixedOffset: [Number, String],\n fixedEndOffset: [Number, String],\n height: [Number, String],\n lastFixed: Boolean,\n firstFixedEnd: Boolean,\n\n noPadding: Boolean,\n indent: [Number, String],\n empty: Boolean,\n\n tag: String,\n width: [Number, String],\n maxWidth: [Number, String],\n nowrap: Boolean,\n}, (props, { slots }) => {\n const Tag = props.tag ?? 'td'\n\n const fixedSide = typeof props.fixed === 'string' ? props.fixed\n : props.fixed ? 'start'\n : 'none'\n\n return (\n \n { slots.default?.() }\n \n )\n})\n", "// Utilities\nimport { capitalize, inject, provide, ref, watchEffect } from 'vue'\nimport { consoleError, propsFactory } from '@/util'\n\n// Types\nimport type { DeepReadonly, InjectionKey, PropType, Ref } from 'vue'\nimport type { SortItem } from './sort'\nimport type { DataTableCompareFunction, DataTableHeader, InternalDataTableHeader } from '../types'\nimport type { FilterKeyFunctions } from '@/composables/filter'\n\nexport const makeDataTableHeaderProps = propsFactory({\n headers: Array as PropType>,\n}, 'DataTable-header')\n\nexport const VDataTableHeadersSymbol: InjectionKey<{\n headers: Ref\n columns: Ref\n}> = Symbol.for('vuetify:data-table-headers')\n\ntype HeaderProps = {\n headers: DeepReadonly | undefined\n items: any[]\n}\n\nconst defaultHeader = { title: '', sortable: false }\nconst defaultActionHeader = { ...defaultHeader, width: 48 }\n\nfunction priorityQueue (arr: T[] = []) {\n const queue: { element: T, priority: number }[] = arr.map(element => ({ element, priority: 0 }))\n\n return {\n enqueue: (element: T, priority: number) => {\n let added = false\n for (let i = 0; i < queue.length; i++) {\n const item = queue[i]\n if (item.priority > priority) {\n queue.splice(i, 0, { element, priority })\n added = true\n break\n }\n }\n\n if (!added) queue.push({ element, priority })\n },\n size: () => queue.length,\n count: () => {\n let count = 0\n\n if (!queue.length) return 0\n\n const whole = Math.floor(queue[0].priority)\n for (let i = 0; i < queue.length; i++) {\n if (Math.floor(queue[i].priority) === whole) count += 1\n }\n\n return count\n },\n dequeue: () => {\n return queue.shift()\n },\n }\n}\n\nfunction extractLeaves (item: InternalDataTableHeader, columns: InternalDataTableHeader[] = []) {\n if (!item.children) {\n columns.push(item)\n } else {\n for (const child of item.children) {\n extractLeaves(child, columns)\n }\n }\n\n return columns\n}\n\nfunction extractKeys (headers: DeepReadonly, keys = new Set()) {\n for (const item of headers) {\n if (item.key) keys.add(item.key)\n\n if (item.children) {\n extractKeys(item.children, keys)\n }\n }\n\n return keys\n}\n\nfunction getDefaultItem (item: DeepReadonly) {\n if (!item.key) return undefined\n if (item.key === 'data-table-group') return defaultHeader\n if (['data-table-expand', 'data-table-select'].includes(item.key)) return defaultActionHeader\n return undefined\n}\n\nfunction getDepth (item: InternalDataTableHeader, depth = 0): number {\n if (!item.children) return depth\n\n return Math.max(depth, ...item.children.map(child => getDepth(child, depth + 1)))\n}\n\nfunction parseFixedColumns (items: InternalDataTableHeader[]) {\n let seenFixed = false\n\n function setFixed (\n item: InternalDataTableHeader,\n side: 'start' | 'end',\n parentFixedSide: 'start' | 'end' | 'none' = 'none'\n ) {\n if (!item) return\n\n if (parentFixedSide !== 'none') {\n item.fixed = parentFixedSide\n }\n\n // normalize to simplify logic below\n if (item.fixed === true) {\n item.fixed = 'start'\n }\n\n if (item.fixed === side) {\n if (item.children) {\n if (side === 'start') {\n for (let i = item.children.length - 1; i >= 0; i--) {\n setFixed(item.children[i], side, side)\n }\n } else {\n for (let i = 0; i < item.children.length; i++) {\n setFixed(item.children[i], side, side)\n }\n }\n } else {\n if (!seenFixed && side === 'start') {\n item.lastFixed = true\n } else if (!seenFixed && side === 'end') {\n item.firstFixedEnd = true\n } else if (isNaN(Number(item.width))) {\n consoleError(`Multiple fixed columns should have a static width (key: ${item.key})`)\n } else {\n item.minWidth = Math.max(Number(item.width) || 0, Number(item.minWidth) || 0)\n }\n seenFixed = true\n }\n } else {\n if (item.children) {\n if (side === 'start') {\n for (let i = item.children.length - 1; i >= 0; i--) {\n setFixed(item.children[i], side)\n }\n } else {\n for (let i = 0; i < item.children.length; i++) {\n setFixed(item.children[i], side)\n }\n }\n } else {\n seenFixed = false\n }\n }\n }\n\n for (let i = items.length - 1; i >= 0; i--) {\n setFixed(items[i], 'start')\n }\n\n for (let i = 0; i < items.length; i++) {\n setFixed(items[i], 'end')\n }\n\n let fixedOffset = 0\n for (let i = 0; i < items.length; i++) {\n fixedOffset = setFixedOffset(items[i], fixedOffset)\n }\n\n let fixedEndOffset = 0\n for (let i = items.length - 1; i >= 0; i--) {\n fixedEndOffset = setFixedEndOffset(items[i], fixedEndOffset)\n }\n}\n\nfunction setFixedOffset (item: InternalDataTableHeader, offset = 0) {\n if (!item) return offset\n\n if (item.children) {\n item.fixedOffset = offset\n for (const child of item.children) {\n offset = setFixedOffset(child, offset)\n }\n } else if (item.fixed && item.fixed !== 'end') {\n item.fixedOffset = offset\n offset += parseFloat(item.width || '0') || 0\n }\n\n return offset\n}\n\nfunction setFixedEndOffset (item: InternalDataTableHeader, offset = 0) {\n if (!item) return offset\n\n if (item.children) {\n item.fixedEndOffset = offset\n for (const child of item.children) {\n offset = setFixedEndOffset(child, offset)\n }\n } else if (item.fixed === 'end') {\n item.fixedEndOffset = offset\n offset += parseFloat(item.width || '0') || 0\n }\n\n return offset\n}\n\nfunction parse (items: InternalDataTableHeader[], maxDepth: number) {\n const headers: InternalDataTableHeader[][] = []\n let currentDepth = 0\n const queue = priorityQueue(items)\n\n while (queue.size() > 0) {\n let rowSize = queue.count()\n const row: InternalDataTableHeader[] = []\n let fraction = 1\n while (rowSize > 0) {\n const { element: item, priority } = queue.dequeue()!\n const diff = maxDepth - currentDepth - getDepth(item)\n\n row.push({\n ...item,\n rowspan: diff ?? 1,\n colspan: item.children ? extractLeaves(item).length : 1,\n })\n\n if (item.children) {\n for (const child of item.children) {\n // This internally sorts items that are on the same priority \"row\"\n const sort = priority % 1 + (fraction / Math.pow(10, currentDepth + 2))\n queue.enqueue(child, currentDepth + diff + sort)\n }\n }\n\n fraction += 1\n rowSize -= 1\n }\n currentDepth += 1\n headers.push(row)\n }\n\n const columns = items.map(item => extractLeaves(item)).flat()\n\n return { columns, headers }\n}\n\nfunction convertToInternalHeaders (items: DeepReadonly) {\n const internalHeaders: InternalDataTableHeader[] = []\n for (const item of items) {\n const defaultItem = { ...getDefaultItem(item), ...item }\n const key = defaultItem.key ?? (typeof defaultItem.value === 'string' ? defaultItem.value : null)\n const value = defaultItem.value ?? key ?? null\n const internalItem: InternalDataTableHeader = {\n ...defaultItem,\n key,\n value,\n sortable: defaultItem.sortable ?? (defaultItem.key != null || !!defaultItem.sort),\n children: defaultItem.children ? convertToInternalHeaders(defaultItem.children) : undefined,\n }\n\n internalHeaders.push(internalItem)\n }\n\n return internalHeaders\n}\n\nexport function createHeaders (\n props: HeaderProps,\n options?: {\n groupBy?: Ref\n showSelect?: Ref\n showExpand?: Ref\n }\n) {\n const headers = ref([])\n const columns = ref([])\n const sortFunctions = ref>({})\n const sortRawFunctions = ref>({})\n const filterFunctions = ref({})\n\n watchEffect(() => {\n const _headers = props.headers ||\n Object.keys(props.items[0] ?? {}).map(key => ({ key, title: capitalize(key) })) as never\n\n const items = _headers.slice()\n const keys = extractKeys(items)\n\n if (options?.groupBy?.value.length && !keys.has('data-table-group')) {\n items.unshift({ key: 'data-table-group', title: 'Group' })\n }\n\n if (options?.showSelect?.value && !keys.has('data-table-select')) {\n items.unshift({ key: 'data-table-select' })\n }\n\n if (options?.showExpand?.value && !keys.has('data-table-expand')) {\n items.push({ key: 'data-table-expand' })\n }\n\n const internalHeaders = convertToInternalHeaders(items)\n\n parseFixedColumns(internalHeaders)\n\n const maxDepth = Math.max(...internalHeaders.map(item => getDepth(item))) + 1\n const parsed = parse(internalHeaders, maxDepth)\n\n headers.value = parsed.headers\n columns.value = parsed.columns\n\n const flatHeaders = parsed.headers.flat(1)\n\n for (const header of flatHeaders) {\n if (!header.key) continue\n\n if (header.sortable) {\n if (header.sort) {\n sortFunctions.value[header.key] = header.sort\n }\n\n if (header.sortRaw) {\n sortRawFunctions.value[header.key] = header.sortRaw\n }\n }\n\n if (header.filter) {\n filterFunctions.value[header.key] = header.filter\n }\n }\n })\n\n const data = { headers, columns, sortFunctions, sortRawFunctions, filterFunctions }\n\n provide(VDataTableHeadersSymbol, data)\n\n return data\n}\n\nexport function useHeaders () {\n const data = inject(VDataTableHeadersSymbol)\n\n if (!data) throw new Error('Missing headers!')\n\n return data\n}\n", "// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject, provide, shallowRef, toRef } from 'vue'\nimport { deepEqual, isPrimitive, propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType, Ref } from 'vue'\nimport type { DataTableItemProps } from './items'\nimport type { EventProp, ValueComparator } from '@/util'\n\nexport interface SelectableItem {\n value: any\n selectable: boolean\n}\n\nexport interface DataTableSelectStrategy {\n showSelectAll: boolean\n allSelected: (data: {\n allItems: SelectableItem[]\n currentPage: SelectableItem[]\n }) => SelectableItem[]\n select: (data: {\n items: SelectableItem[]\n value: boolean\n selected: Set\n }) => Set\n selectAll: (data: {\n value: boolean\n allItems: SelectableItem[]\n currentPage: SelectableItem[]\n selected: Set\n }) => Set\n}\n\ntype SelectionProps = Pick & {\n modelValue: readonly any[]\n selectStrategy: 'single' | 'page' | 'all'\n valueComparator?: ValueComparator\n 'onUpdate:modelValue': EventProp<[any[]]> | undefined\n}\n\nconst singleSelectStrategy: DataTableSelectStrategy = {\n showSelectAll: false,\n allSelected: () => [],\n select: ({ items, value }) => {\n return new Set(value ? [items[0]?.value] : [])\n },\n selectAll: ({ selected }) => selected,\n}\n\nconst pageSelectStrategy: DataTableSelectStrategy = {\n showSelectAll: true,\n allSelected: ({ currentPage }) => currentPage,\n select: ({ items, value, selected }) => {\n for (const item of items) {\n if (value) selected.add(item.value)\n else selected.delete(item.value)\n }\n\n return selected\n },\n selectAll: ({ value, currentPage, selected }) => pageSelectStrategy.select({ items: currentPage, value, selected }),\n}\n\nconst allSelectStrategy: DataTableSelectStrategy = {\n showSelectAll: true,\n allSelected: ({ allItems }) => allItems,\n select: ({ items, value, selected }) => {\n for (const item of items) {\n if (value) selected.add(item.value)\n else selected.delete(item.value)\n }\n\n return selected\n },\n selectAll: ({ value, allItems }) => {\n return new Set(value ? allItems.map(item => item.value) : [])\n },\n}\n\nexport const makeDataTableSelectProps = propsFactory({\n showSelect: Boolean,\n selectStrategy: {\n type: [String, Object] as PropType<'single' | 'page' | 'all'>,\n default: 'page',\n },\n modelValue: {\n type: Array as PropType,\n default: () => ([]),\n },\n valueComparator: Function as PropType,\n}, 'DataTable-select')\n\nexport const VDataTableSelectionSymbol: InjectionKey> = Symbol.for('vuetify:data-table-selection')\n\nexport function provideSelection (\n props: SelectionProps,\n { allItems, currentPage }: { allItems: Ref, currentPage: Ref }\n) {\n const selected = useProxiedModel(props, 'modelValue', props.modelValue, v => {\n const customComparator = props.valueComparator\n if (customComparator) {\n return new Set(wrapInArray(v).map(v => {\n return allItems.value.find(item => customComparator(v, item.value))?.value ?? v\n }))\n }\n return new Set(wrapInArray(v).map(v => {\n return isPrimitive(v)\n ? allItems.value.find(item => v === item.value)?.value ?? v\n : allItems.value.find(item => deepEqual(v, item.value))?.value ?? v\n }))\n }, v => {\n return [...v.values()]\n })\n\n const allSelectable = computed(() => allItems.value.filter(item => item.selectable))\n const currentPageSelectable = computed(() => currentPage.value.filter(item => item.selectable))\n\n const selectStrategy = computed(() => {\n if (typeof props.selectStrategy === 'object') return props.selectStrategy\n\n switch (props.selectStrategy) {\n case 'single': return singleSelectStrategy\n case 'all': return allSelectStrategy\n case 'page':\n default: return pageSelectStrategy\n }\n })\n\n const lastSelectedIndex = shallowRef(null)\n\n function isSelected (items: SelectableItem | SelectableItem[]) {\n return wrapInArray(items).every(item => selected.value.has(item.value))\n }\n\n function isSomeSelected (items: SelectableItem | SelectableItem[]) {\n return wrapInArray(items).some(item => selected.value.has(item.value))\n }\n\n function select (items: SelectableItem[], value: boolean) {\n const newSelected = selectStrategy.value.select({\n items,\n value,\n selected: new Set(selected.value),\n })\n\n selected.value = newSelected\n }\n\n function toggleSelect (item: SelectableItem, index?: number, event?: MouseEvent) {\n const items = []\n index = index ?? currentPage.value.findIndex(i => i.value === item.value)\n\n if (props.selectStrategy !== 'single' && event?.shiftKey && lastSelectedIndex.value !== null) {\n const [start, end] = [lastSelectedIndex.value, index].sort((a, b) => a - b)\n\n items.push(...currentPage.value.slice(start, end + 1).filter(item => item.selectable))\n } else {\n items.push(item)\n lastSelectedIndex.value = index\n }\n\n select(items, !isSelected([item]))\n }\n\n function selectAll (value: boolean) {\n const newSelected = selectStrategy.value.selectAll({\n value,\n allItems: allSelectable.value,\n currentPage: currentPageSelectable.value,\n selected: new Set(selected.value),\n })\n\n selected.value = newSelected\n }\n\n const someSelected = computed(() => selected.value.size > 0)\n const allSelected = computed(() => {\n const items = selectStrategy.value.allSelected({\n allItems: allSelectable.value,\n currentPage: currentPageSelectable.value,\n })\n return !!items.length && isSelected(items)\n })\n const showSelectAll = toRef(() => selectStrategy.value.showSelectAll)\n\n const data = {\n toggleSelect,\n select,\n selectAll,\n isSelected,\n isSomeSelected,\n someSelected,\n allSelected,\n showSelectAll,\n lastSelectedIndex,\n selectStrategy,\n }\n\n provide(VDataTableSelectionSymbol, data)\n\n return data\n}\n\nexport function useSelection () {\n const data = inject(VDataTableSelectionSymbol)\n\n if (!data) throw new Error('Missing selection!')\n\n return data\n}\n", "// Composables\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject, provide, toRef } from 'vue'\nimport { getObjectValueByPath, isEmpty, isObject, propsFactory } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType, Ref } from 'vue'\nimport type { DataTableCompareFunction, InternalDataTableHeader } from '../types'\nimport type { InternalItem } from '@/composables/filter'\n\nexport const makeDataTableSortProps = propsFactory({\n initialSortOrder: {\n type: String as PropType<'asc' | 'desc'>,\n default: 'asc',\n validator: (v: any) => !v || ['asc', 'desc'].includes(v),\n },\n sortBy: {\n type: Array as PropType,\n default: () => ([]),\n },\n customKeySort: Object as PropType>,\n multiSort: {\n type: [Boolean, Object] as PropType,\n default: false,\n },\n mustSort: Boolean,\n}, 'DataTable-sort')\n\nconst VDataTableSortSymbol: InjectionKey<{\n sortBy: Ref\n toggleSort: (column: InternalDataTableHeader, event?: KeyboardEvent | PointerEvent) => void\n isSorted: (column: InternalDataTableHeader) => boolean\n}> = Symbol.for('vuetify:data-table-sort')\n\nexport type SortItem = { key: string, order?: boolean | 'asc' | 'desc' }\nexport type MultiSortProps = {\n key?: 'ctrl'\n mode?: MultiSortMode\n modifier?: 'alt' | 'shift'\n}\n\nexport type MultiSortMode = 'append' | 'prepend'\n\ntype SortProps = {\n initialSortOrder: 'asc' | 'desc'\n sortBy: readonly SortItem[]\n 'onUpdate:sortBy': ((value: any) => void) | undefined\n multiSort: boolean | MultiSortProps\n mustSort: boolean\n}\n\nexport function createSort (props: SortProps) {\n const initialSortOrder = toRef(() => props.initialSortOrder)\n const sortBy = useProxiedModel(props, 'sortBy')\n const mustSort = toRef(() => props.mustSort)\n const multiSort = toRef(() => props.multiSort)\n return { initialSortOrder, sortBy, multiSort, mustSort }\n}\n\nfunction resolveMultiSort (\n multiSort: boolean | MultiSortProps,\n event?: KeyboardEvent | PointerEvent\n): {\n active: boolean\n mode?: MultiSortMode\n } {\n if (!isObject(multiSort)) {\n return { active: !!multiSort }\n }\n\n const { key, mode, modifier } = multiSort\n const reverseMode = (modifier === 'alt' && event?.altKey) ||\n (modifier === 'shift' && event?.shiftKey)\n\n return {\n active: !key || event?.ctrlKey || event?.metaKey || false,\n mode: reverseMode ? (mode === 'append' ? 'prepend' : 'append') : mode,\n }\n}\n\nexport function provideSort (options: {\n initialSortOrder: Ref<'asc' | 'desc'>\n sortBy: Ref\n multiSort: Ref\n mustSort: Ref\n page?: Ref\n}) {\n const { initialSortOrder, sortBy, mustSort, multiSort, page } = options\n\n const toggleSort = (column: InternalDataTableHeader, event?: KeyboardEvent | PointerEvent) => {\n if (column.key == null) return\n\n let newSortBy = sortBy.value.map(x => ({ ...x })) ?? []\n const item = newSortBy.find(x => x.key === column.key)\n\n const initialOrder = initialSortOrder.value\n const secondaryOrder = initialSortOrder.value === 'desc' ? 'asc' : 'desc'\n if (!item) {\n const { active, mode } = resolveMultiSort(multiSort.value, event)\n if (active) {\n if (mode === 'prepend') {\n newSortBy.unshift({ key: column.key, order: initialOrder })\n } else {\n newSortBy.push({ key: column.key, order: initialOrder })\n }\n } else {\n newSortBy = [{ key: column.key, order: initialOrder }]\n }\n } else if (item.order === secondaryOrder) {\n if (mustSort.value && newSortBy.length === 1) {\n item.order = initialSortOrder.value\n } else {\n newSortBy = newSortBy.filter(x => x.key !== column.key)\n }\n } else {\n item.order = secondaryOrder\n }\n\n sortBy.value = newSortBy\n if (page) page.value = 1\n }\n\n function isSorted (column: InternalDataTableHeader) {\n return !!sortBy.value.find(item => item.key === column.key)\n }\n\n const data = { sortBy, toggleSort, isSorted }\n\n provide(VDataTableSortSymbol, data)\n\n return data\n}\n\nexport function useSort () {\n const data = inject(VDataTableSortSymbol)\n\n if (!data) throw new Error('Missing sort!')\n\n return data\n}\n\n// TODO: abstract into project composable\nexport function useSortedItems (\n props: {\n customKeySort: Record | undefined\n },\n items: Ref,\n sortBy: Ref,\n options?: {\n transform?: (item: T) => {}\n sortFunctions?: Ref | undefined>\n sortRawFunctions?: Ref | undefined>\n },\n) {\n const locale = useLocale()\n const sortedItems = computed(() => {\n if (!sortBy.value.length) return items.value\n\n return sortItems(items.value, sortBy.value, locale.current.value, {\n transform: options?.transform,\n sortFunctions: {\n ...props.customKeySort,\n ...options?.sortFunctions?.value,\n },\n sortRawFunctions: options?.sortRawFunctions?.value,\n })\n })\n\n return { sortedItems }\n}\n\nexport function sortItems (\n items: T[],\n sortByItems: readonly SortItem[],\n locale: string,\n options?: {\n transform?: (item: T) => Record\n sortFunctions?: Record\n sortRawFunctions?: Record\n },\n): T[] {\n const stringCollator = new Intl.Collator(locale, { sensitivity: 'accent', usage: 'sort' })\n\n const transformedItems = items.map(item => (\n [item, options?.transform ? options.transform(item) : item as never] as const)\n )\n\n return transformedItems.sort((a, b) => {\n for (let i = 0; i < sortByItems.length; i++) {\n let hasCustomResult = false\n const sortKey = sortByItems[i].key\n const sortOrder = sortByItems[i].order ?? 'asc'\n\n if (sortOrder === false) continue\n\n let sortA = getObjectValueByPath(a[1], sortKey)\n let sortB = getObjectValueByPath(b[1], sortKey)\n let sortARaw = a[0].raw\n let sortBRaw = b[0].raw\n\n if (sortOrder === 'desc') {\n [sortA, sortB] = [sortB, sortA]\n ;[sortARaw, sortBRaw] = [sortBRaw, sortARaw]\n }\n\n if (options?.sortRawFunctions?.[sortKey]) {\n const customResult = options.sortRawFunctions[sortKey](sortARaw, sortBRaw)\n\n if (customResult == null) continue\n hasCustomResult = true\n if (customResult) return customResult\n }\n\n if (options?.sortFunctions?.[sortKey]) {\n const customResult = options.sortFunctions[sortKey](sortA, sortB)\n\n if (customResult == null) continue\n hasCustomResult = true\n if (customResult) return customResult\n }\n\n if (hasCustomResult) continue\n\n // Dates should be compared numerically\n if (sortA instanceof Date && sortB instanceof Date) {\n sortA = sortA.getTime()\n sortB = sortB.getTime()\n }\n\n [sortA, sortB] = [sortA, sortB].map(s => s != null ? s.toString().toLocaleLowerCase() : s)\n\n if (sortA !== sortB) {\n if (isEmpty(sortA) && isEmpty(sortB)) return 0\n if (isEmpty(sortA)) return -1\n if (isEmpty(sortB)) return 1\n if (!isNaN(sortA) && !isNaN(sortB)) return Number(sortA) - Number(sortB)\n return stringCollator.compare(sortA, sortB)\n }\n }\n\n return 0\n }).map(([item]) => item)\n}\n", "// Components\nimport { VDataTableColumn } from './VDataTableColumn'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VIcon } from '@/components/VIcon'\nimport { VSelect } from '@/components/VSelect'\n\n// Composables\nimport { useHeaders } from './composables/headers'\nimport { useSelection } from './composables/select'\nimport { useSort } from './composables/sort'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeDensityProps } from '@/composables/density'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { IconValue } from '@/composables/icons'\nimport { LoaderSlot, makeLoaderProps, useLoader } from '@/composables/loader'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed, mergeProps } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { CSSProperties, PropType, UnwrapRef } from 'vue'\nimport type { provideSelection } from './composables/select'\nimport type { provideSort } from './composables/sort'\nimport type { InternalDataTableHeader } from './types'\nimport type { ItemProps } from '@/composables/list-items'\nimport type { LoaderSlotProps } from '@/composables/loader'\n\nexport type HeadersSlotProps = {\n headers: InternalDataTableHeader[][]\n columns: InternalDataTableHeader[]\n sortBy: UnwrapRef['sortBy']>\n someSelected: UnwrapRef['someSelected']>\n allSelected: UnwrapRef['allSelected']>\n toggleSort: ReturnType['toggleSort']\n selectAll: ReturnType['selectAll']\n getSortIcon: (column: InternalDataTableHeader) => IconValue\n isSorted: ReturnType['isSorted']\n}\n\nexport type VDataTableHeaderCellColumnSlotProps = {\n column: InternalDataTableHeader\n selectAll: ReturnType['selectAll']\n isSorted: ReturnType['isSorted']\n toggleSort: ReturnType['toggleSort']\n sortBy: UnwrapRef['sortBy']>\n someSelected: UnwrapRef['someSelected']>\n allSelected: UnwrapRef['allSelected']>\n getSortIcon: (column: InternalDataTableHeader) => IconValue\n}\n\nexport type VDataTableHeadersSlots = {\n headers: HeadersSlotProps\n loader: LoaderSlotProps\n 'header.data-table-select': VDataTableHeaderCellColumnSlotProps\n 'header.data-table-expand': VDataTableHeaderCellColumnSlotProps\n} & { [key: `header.${string}`]: VDataTableHeaderCellColumnSlotProps }\n\nexport const makeVDataTableHeadersProps = propsFactory({\n color: String,\n disableSort: Boolean,\n fixedHeader: Boolean,\n multiSort: Boolean,\n initialSortOrder: String as PropType<'asc' | 'desc'>,\n sortAscIcon: {\n type: IconValue,\n default: '$sortAsc',\n },\n sortDescIcon: {\n type: IconValue,\n default: '$sortDesc',\n },\n headerProps: {\n type: Object as PropType>,\n },\n\n /** @deprecated */\n sticky: Boolean,\n\n ...makeDensityProps(),\n ...makeDisplayProps(),\n ...makeLoaderProps(),\n}, 'VDataTableHeaders')\n\nexport const VDataTableHeaders = genericComponent()({\n name: 'VDataTableHeaders',\n\n props: makeVDataTableHeadersProps(),\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const { toggleSort, sortBy, isSorted } = useSort()\n const { someSelected, allSelected, selectAll, showSelectAll } = useSelection()\n const { columns, headers } = useHeaders()\n const { loaderClasses } = useLoader(props)\n\n function getFixedStyles (column: InternalDataTableHeader, y: number): CSSProperties | undefined {\n if (!(props.sticky || props.fixedHeader) && !column.fixed) return undefined\n\n const fixedSide = typeof column.fixed === 'string' ? column.fixed\n : column.fixed ? 'start'\n : 'none'\n\n return {\n position: 'sticky',\n left: fixedSide === 'start' ? convertToUnit(column.fixedOffset) : undefined,\n right: fixedSide === 'end' ? convertToUnit(column.fixedEndOffset) : undefined,\n top: (props.sticky || props.fixedHeader) ? `calc(var(--v-table-header-height) * ${y})` : undefined,\n }\n }\n function handleEnterKeyPress (event: KeyboardEvent, column: InternalDataTableHeader) {\n if (event.key === 'Enter' && !props.disableSort) {\n toggleSort(column, event)\n }\n }\n function getSortIcon (column: InternalDataTableHeader) {\n const item = sortBy.value.find(item => item.key === column.key)\n\n return (!item && props.initialSortOrder === 'asc') || item?.order === 'asc'\n ? props.sortAscIcon\n : props.sortDescIcon\n }\n\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n\n const { displayClasses, mobile } = useDisplay(props)\n\n const slotProps = computed(() => ({\n headers: headers.value,\n columns: columns.value,\n toggleSort,\n isSorted,\n sortBy: sortBy.value,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n selectAll,\n getSortIcon,\n } satisfies HeadersSlotProps))\n\n const headerCellClasses = computed(() => ([\n 'v-data-table__th',\n {\n 'v-data-table__th--sticky': (props.sticky || props.fixedHeader),\n },\n displayClasses.value,\n loaderClasses.value,\n ]))\n\n const VDataTableHeaderCell = ({ column, x, y }: { column: InternalDataTableHeader, x: number, y: number }) => {\n const noPadding = column.key === 'data-table-select' || column.key === 'data-table-expand'\n const isEmpty = column.key === 'data-table-group' && column.width === 0 && !column.title\n const headerProps = mergeProps(props.headerProps ?? {}, column.headerProps ?? {})\n\n return (\n toggleSort(column, event) : undefined }\n onKeydown={ column.sortable ? (event: KeyboardEvent) => handleEnterKeyPress(event, column) : undefined }\n { ...headerProps }\n >\n {{\n default: () => {\n const columnSlotName = `header.${column.key}` as const\n const columnSlotProps: VDataTableHeaderCellColumnSlotProps = {\n column,\n selectAll,\n isSorted,\n toggleSort,\n sortBy: sortBy.value,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n getSortIcon,\n }\n\n if (slots[columnSlotName]) return slots[columnSlotName]!(columnSlotProps)\n\n if (isEmpty) return ''\n\n if (column.key === 'data-table-select') {\n return slots['header.data-table-select']?.(columnSlotProps) ?? (showSelectAll.value && (\n \n ))\n }\n\n return (\n
\n { column.title }\n { column.sortable && !props.disableSort && (\n \n )}\n { props.multiSort && isSorted(column) && (\n \n { sortBy.value.findIndex(x => x.key === column.key) + 1 }\n
\n )}\n \n )\n },\n }}\n \n )\n }\n\n const VDataTableMobileHeaderCell = () => {\n const displayItems = computed(() => {\n return columns.value.filter(column => column?.sortable && !props.disableSort)\n })\n const showSelectColumn = columns.value.find(column => column.key === 'data-table-select')\n\n return (\n \n
\n sortBy.value = [] }\n >\n {{\n append: showSelectColumn ? () => (\n selectAll(!allSelected.value) }\n />\n ) : undefined,\n chip: props => (\n toggleSort(props.item.raw) : undefined }\n onMousedown={ (e: MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n }}\n >\n { props.item.title }\n \n \n ),\n }}\n \n
\n \n )\n }\n\n useRender(() => {\n return mobile.value ? (\n \n \n \n ) : (\n <>\n { slots.headers\n ? slots.headers(slotProps.value)\n : headers.value.map((row, y) => (\n \n { row.map((column, x) => (\n \n ))}\n \n ))}\n\n { props.loading && (\n \n \n \n \n \n )}\n \n )\n })\n },\n})\n\nexport type VDataTableHeaders = InstanceType\n", "// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject, provide, ref, toValue } from 'vue'\nimport { getObjectValueByPath, propsFactory } from '@/util'\n\n// Types\nimport type { InjectionKey, MaybeRefOrGetter, PropType, Ref } from 'vue'\nimport type { SortItem } from './sort'\nimport type { DataTableItem } from '../types'\n\nexport interface GroupableItem {\n type: 'item'\n raw: T\n}\n\nexport interface Group {\n type: 'group'\n depth: number\n id: string\n key: string\n value: any\n items: readonly (T | Group | GroupSummary)[]\n}\n\nexport interface GroupSummary {\n type: 'group-summary'\n depth: number\n id: string\n key: string\n value: any\n items: readonly (T | Group | GroupSummary)[]\n}\n\nexport const makeDataTableGroupProps = propsFactory({\n groupBy: {\n type: Array as PropType,\n default: () => ([]),\n },\n}, 'DataTable-group')\n\nconst VDataTableGroupSymbol: InjectionKey<{\n opened: Ref>\n toggleGroup: (group: Group) => void\n isGroupOpen: (group: Group) => boolean\n sortByWithGroups: Ref\n groupBy: Ref\n extractRows: (items: (DataTableItem | Group)[]) => DataTableItem[]\n}> = Symbol.for('vuetify:data-table-group')\n\ntype GroupProps = {\n groupBy: readonly SortItem[]\n 'onUpdate:groupBy': ((value: SortItem[]) => void) | undefined\n}\n\nexport function createGroupBy (props: GroupProps) {\n const groupBy = useProxiedModel(props, 'groupBy')\n\n return { groupBy }\n}\n\nexport function provideGroupBy (options: {\n groupBy: Ref\n sortBy: Ref\n disableSort?: Ref\n}) {\n const { disableSort, groupBy, sortBy } = options\n const opened = ref(new Set())\n\n const sortByWithGroups = computed(() => {\n return groupBy.value.map(val => ({\n ...val,\n order: val.order ?? false,\n })).concat(disableSort?.value ? [] : sortBy.value)\n })\n\n function isGroupOpen (group: Group) {\n return opened.value.has(group.id)\n }\n\n function toggleGroup (group: Group) {\n const newOpened = new Set(opened.value)\n if (!isGroupOpen(group)) newOpened.add(group.id)\n else newOpened.delete(group.id)\n\n opened.value = newOpened\n }\n\n function extractRows (items: readonly (T | Group | GroupSummary)[]) {\n function dive (group: Group): T[] {\n const arr = []\n\n for (const item of group.items) {\n if ('type' in item && item.type === 'group') {\n arr.push(...dive(item))\n } else {\n arr.push(item as T)\n }\n }\n\n return [...new Set(arr)]\n }\n return dive({ type: 'group', items, id: 'dummy', key: 'dummy', value: 'dummy', depth: 0 })\n }\n\n // onBeforeMount(() => {\n // for (const key of groupedItems.value.keys()) {\n // opened.value.add(key)\n // }\n // })\n\n const data = { sortByWithGroups, toggleGroup, opened, groupBy, extractRows, isGroupOpen }\n\n provide(VDataTableGroupSymbol, data)\n\n return data\n}\n\nexport function useGroupBy () {\n const data = inject(VDataTableGroupSymbol)\n\n if (!data) throw new Error('Missing group!')\n\n return data\n}\n\nfunction groupItemsByProperty (items: readonly T[], groupBy: string) {\n if (!items.length) return []\n\n const groups = new Map()\n for (const item of items) {\n const value = getObjectValueByPath(item.raw, groupBy)\n\n if (!groups.has(value)) {\n groups.set(value, [])\n }\n groups.get(value)!.push(item)\n }\n\n return groups\n}\n\nfunction groupItems (items: readonly T[], groupBy: readonly string[], depth = 0, prefix = 'root') {\n if (!groupBy.length) return []\n\n const groupedItems = groupItemsByProperty(items, groupBy[0])\n const groups: Group[] = []\n\n const rest = groupBy.slice(1)\n groupedItems.forEach((items, value) => {\n const key = groupBy[0]\n const id = `${prefix}_${key}_${value}`\n groups.push({\n depth,\n id,\n key,\n value,\n items: rest.length ? groupItems(items, rest, depth + 1, id) : items,\n type: 'group',\n })\n })\n\n return groups\n}\n\nfunction flattenItems (\n items: readonly (T | Group | GroupSummary)[],\n opened: Set,\n hasSummary: boolean\n): readonly (T | Group | GroupSummary)[] {\n const flatItems: (T | Group | GroupSummary)[] = []\n\n for (const item of items) {\n // TODO: make this better\n if ('type' in item && item.type === 'group') {\n if (item.value != null) {\n flatItems.push(item)\n }\n\n if (opened.has(item.id) || item.value == null) {\n flatItems.push(...flattenItems(item.items, opened, hasSummary))\n\n if (hasSummary) {\n flatItems.push({ ...item, type: 'group-summary' })\n }\n }\n } else {\n flatItems.push(item)\n }\n }\n\n return flatItems\n}\n\nexport function useGroupedItems (\n items: Ref,\n groupBy: Ref,\n opened: Ref>,\n hasSummary: MaybeRefOrGetter,\n) {\n const flatItems = computed(() => {\n if (!groupBy.value.length) return items.value\n\n const groupedItems = groupItems(items.value, groupBy.value.map(item => item.key))\n\n return flattenItems(groupedItems, opened.value, toValue(hasSummary))\n })\n\n return { flatItems }\n}\n", "// Components\nimport { VDataTableColumn } from './VDataTableColumn'\nimport { VBtn } from '@/components/VBtn'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\n\n// Composables\nimport { useGroupBy } from './composables/group'\nimport { useHeaders } from './composables/headers'\nimport { useSelection } from './composables/select'\nimport { makeDensityProps } from '@/composables/density'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { Group } from './composables/group'\n\nexport type VDataTableGroupHeaderRowSlots = {\n 'data-table-group': { item: Group, count: number, props: Record }\n 'data-table-select': { props: Record }\n}\n\nexport const makeVDataTableGroupHeaderRowProps = propsFactory({\n item: {\n type: Object as PropType,\n required: true,\n },\n groupCollapseIcon: {\n type: IconValue,\n default: '$tableGroupCollapse',\n },\n groupExpandIcon: {\n type: IconValue,\n default: '$tableGroupExpand',\n },\n ...makeDensityProps(),\n}, 'VDataTableGroupHeaderRow')\n\nexport const VDataTableGroupHeaderRow = genericComponent()({\n name: 'VDataTableGroupHeaderRow',\n\n props: makeVDataTableGroupHeaderRowProps(),\n\n setup (props, { slots }) {\n const { isGroupOpen, toggleGroup, extractRows } = useGroupBy()\n const { isSelected, isSomeSelected, select } = useSelection()\n const { columns } = useHeaders()\n\n const rows = computed(() => {\n return extractRows([props.item])\n })\n\n const colspan = toRef(() => columns.value.length - (columns.value.some(c => c.key === 'data-table-select') ? 1 : 0))\n\n return () => (\n \n { columns.value.map(column => {\n if (column.key === 'data-table-group') {\n const icon = isGroupOpen(props.item) ? props.groupCollapseIcon : props.groupExpandIcon\n const onClick = () => toggleGroup(props.item)\n\n return slots['data-table-group']?.({ item: props.item, count: rows.value.length, props: { icon, onClick } }) ?? (\n \n \n { props.item.value }\n ({ rows.value.length })\n \n )\n } else if (column.key === 'data-table-select') {\n const selectableRows = rows.value.filter(x => x.selectable)\n const modelValue = selectableRows.length > 0 && isSelected(selectableRows)\n const indeterminate = isSomeSelected(selectableRows) && !modelValue\n const selectGroup = (v: boolean) => select(selectableRows, v)\n return slots['data-table-select']?.({ props: { modelValue, indeterminate, 'onUpdate:modelValue': selectGroup } }) ?? (\n \n \n \n )\n }\n\n return ''\n })}\n \n )\n },\n})\n", "// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { inject, provide, toRaw, toRef } from 'vue'\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType, Ref } from 'vue'\nimport type { DataTableItem } from '../types'\n\nexport const makeDataTableExpandProps = propsFactory({\n expandOnClick: Boolean,\n showExpand: Boolean,\n expanded: {\n type: Array as PropType,\n default: () => ([]),\n },\n}, 'DataTable-expand')\n\nexport const VDataTableExpandedKey: InjectionKey<{\n expand: (item: DataTableItem, value: boolean) => void\n expanded: Ref>\n expandOnClick: Ref\n isExpanded: (item: DataTableItem) => boolean\n toggleExpand: (item: DataTableItem) => void\n}> = Symbol.for('vuetify:datatable:expanded')\n\ntype ExpandProps = {\n expandOnClick: boolean\n expanded: readonly string[]\n 'onUpdate:expanded': ((value: any[]) => void) | undefined\n}\n\nexport function provideExpanded (props: ExpandProps) {\n const expandOnClick = toRef(() => props.expandOnClick)\n const expanded = useProxiedModel(props, 'expanded', props.expanded, v => {\n return new Set(v)\n }, v => {\n return [...v.values()]\n })\n\n function expand (item: DataTableItem, value: boolean) {\n const newExpanded = new Set(expanded.value)\n const rawValue = toRaw(item.value)\n\n if (!value) {\n const item = [...expanded.value].find(x => toRaw(x) === rawValue)!\n newExpanded.delete(item)\n } else {\n newExpanded.add(rawValue)\n }\n\n expanded.value = newExpanded\n }\n\n function isExpanded (item: DataTableItem) {\n const rawValue = toRaw(item.value)\n return [...expanded.value].some(x => toRaw(x) === rawValue)\n }\n\n function toggleExpand (item: DataTableItem) {\n expand(item, !isExpanded(item))\n }\n\n const data = { expand, expanded, expandOnClick, isExpanded, toggleExpand }\n\n provide(VDataTableExpandedKey, data)\n\n return data\n}\n\nexport function useExpanded () {\n const data = inject(VDataTableExpandedKey)\n\n if (!data) throw new Error('foo')\n\n return data\n}\n", "// Components\nimport { VDataTableColumn } from './VDataTableColumn'\nimport { VBtn } from '@/components/VBtn'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\n\n// Composables\nimport { useExpanded } from './composables/expand'\nimport { useHeaders } from './composables/headers'\nimport { useSelection } from './composables/select'\nimport { useSort } from './composables/sort'\nimport { makeDensityProps } from '@/composables/density'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { toDisplayString, withModifiers } from 'vue'\nimport { EventProp, genericComponent, getObjectValueByPath, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { CellProps, DataTableItem, ItemKeySlot } from './types'\nimport type { VDataTableHeaderCellColumnSlotProps } from './VDataTableHeaders'\nimport type { GenericProps } from '@/util'\n\nexport type VDataTableItemCellColumnSlotProps = Omit, 'value'> & {\n props: Record\n}\n\nexport type VDataTableRowSlots = {\n 'item.data-table-select': VDataTableItemCellColumnSlotProps\n 'item.data-table-expand': VDataTableItemCellColumnSlotProps\n 'header.data-table-select': VDataTableHeaderCellColumnSlotProps\n 'header.data-table-expand': VDataTableHeaderCellColumnSlotProps\n} & {\n [key: `item.${string}`]: ItemKeySlot\n [key: `header.${string}`]: VDataTableHeaderCellColumnSlotProps\n}\n\nexport const makeVDataTableRowProps = propsFactory({\n color: String,\n index: Number,\n item: Object as PropType,\n cellProps: [Object, Function] as PropType>,\n collapseIcon: {\n type: IconValue,\n default: '$collapse',\n },\n expandIcon: {\n type: IconValue,\n default: '$expand',\n },\n\n onClick: EventProp<[MouseEvent]>(),\n onContextmenu: EventProp<[MouseEvent]>(),\n onDblclick: EventProp<[MouseEvent]>(),\n\n ...makeDensityProps(),\n ...makeDisplayProps(),\n}, 'VDataTableRow')\n\nexport const VDataTableRow = genericComponent(\n props: {\n item?: DataTableItem\n cellProps?: CellProps\n },\n slots: VDataTableRowSlots,\n) => GenericProps>()({\n name: 'VDataTableRow',\n\n props: makeVDataTableRowProps(),\n\n setup (props, { slots }) {\n const { displayClasses, mobile } = useDisplay(props, 'v-data-table__tr')\n const { isSelected, toggleSelect, someSelected, allSelected, selectAll } = useSelection()\n const { isExpanded, toggleExpand } = useExpanded()\n const { toggleSort, sortBy, isSorted } = useSort()\n const { columns } = useHeaders()\n\n useRender(() => (\n \n { props.item && columns.value.map((column, i) => {\n const item = props.item!\n const slotName = `item.${column.key}` as const\n const headerSlotName = `header.${column.key}` as const\n const slotProps = {\n index: props.index!,\n item: item.raw,\n internalItem: item,\n value: getObjectValueByPath(item.columns, column.key),\n column,\n isSelected,\n toggleSelect,\n isExpanded,\n toggleExpand,\n } satisfies ItemKeySlot\n\n const columnSlotProps: VDataTableHeaderCellColumnSlotProps = {\n column,\n selectAll,\n isSorted,\n toggleSort,\n sortBy: sortBy.value,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n getSortIcon: () => '',\n }\n\n const cellProps = typeof props.cellProps === 'function'\n ? props.cellProps({\n index: slotProps.index,\n item: slotProps.item,\n internalItem: slotProps.internalItem,\n value: slotProps.value,\n column,\n })\n : props.cellProps\n const columnCellProps = typeof column.cellProps === 'function'\n ? column.cellProps({\n index: slotProps.index,\n item: slotProps.item,\n internalItem: slotProps.internalItem,\n value: slotProps.value,\n })\n : column.cellProps\n\n const noPadding = column.key === 'data-table-select' || column.key === 'data-table-expand'\n const isEmpty = column.key === 'data-table-group' && column.width === 0 && !column.title\n\n return (\n \n {{\n default: () => {\n if (column.key === 'data-table-select') {\n return slots['item.data-table-select']?.({\n ...slotProps,\n props: {\n color: props.color,\n disabled: !item.selectable,\n modelValue: isSelected([item]),\n onClick: withModifiers(() => toggleSelect(item), ['stop']),\n },\n }) ?? (\n toggleSelect(item, props.index, event as PointerEvent),\n ['stop']\n )}\n />\n )\n }\n\n if (column.key === 'data-table-expand') {\n return slots['item.data-table-expand']?.({\n ...slotProps,\n props: {\n icon: isExpanded(item) ? props.collapseIcon : props.expandIcon,\n size: 'small',\n variant: 'text',\n onClick: withModifiers(() => toggleExpand(item), ['stop']),\n },\n }) ?? (\n toggleExpand(item), ['stop']) }\n />\n )\n }\n\n if (slots[slotName] && !mobile.value) return slots[slotName](slotProps)\n\n const displayValue = toDisplayString(slotProps.value)\n\n return !mobile.value ? displayValue : (\n <>\n
\n { slots[headerSlotName]?.(columnSlotProps) ?? column.title }\n
\n\n
\n { slots[slotName]?.(slotProps) ?? displayValue }\n
\n \n )\n },\n }}\n \n )\n })}\n \n ))\n },\n})\n\nexport type VDataTableRow = InstanceType\n", "// Components\nimport { makeVDataTableGroupHeaderRowProps, VDataTableGroupHeaderRow } from './VDataTableGroupHeaderRow'\nimport { makeVDataTableRowProps, VDataTableRow } from './VDataTableRow'\n\n// Composables\nimport { useExpanded } from './composables/expand'\nimport { useGroupBy } from './composables/group'\nimport { useHeaders } from './composables/headers'\nimport { useSelection } from './composables/select'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { Fragment, mergeProps } from 'vue'\nimport { genericComponent, getPrefixedEventHandlers, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { Group, GroupSummary } from './composables/group'\nimport type { CellProps, DataTableItem, GroupHeaderSlot, GroupSummarySlot, ItemSlot, RowProps } from './types'\nimport type { VDataTableGroupHeaderRowSlots } from './VDataTableGroupHeaderRow'\nimport type { VDataTableRowSlots } from './VDataTableRow'\nimport type { GenericProps } from '@/util'\n\nexport type VDataTableRowsSlots = VDataTableGroupHeaderRowSlots & VDataTableRowSlots & {\n item: ItemSlot & { props: Record }\n loading: never\n 'group-header': GroupHeaderSlot\n 'group-summary': GroupSummarySlot\n 'no-data': never\n 'expanded-row': ItemSlot\n}\n\nexport const makeVDataTableRowsProps = propsFactory({\n color: String,\n loading: [Boolean, String],\n loadingText: {\n type: String,\n default: '$vuetify.dataIterator.loadingText',\n },\n hideNoData: Boolean,\n items: {\n type: Array as PropType,\n default: () => ([]),\n },\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n rowProps: [Object, Function] as PropType>,\n cellProps: [Object, Function] as PropType>,\n\n ...pick(makeVDataTableRowProps(), ['collapseIcon', 'expandIcon', 'density']),\n ...pick(makeVDataTableGroupHeaderRowProps(), ['groupCollapseIcon', 'groupExpandIcon', 'density']),\n ...makeDisplayProps(),\n}, 'VDataTableRows')\n\nexport const VDataTableRows = genericComponent(\n props: {\n items?: readonly (DataTableItem | Group | GroupSummary)[]\n },\n slots: VDataTableRowsSlots,\n) => GenericProps>()({\n name: 'VDataTableRows',\n\n inheritAttrs: false,\n\n props: makeVDataTableRowsProps(),\n\n setup (props, { attrs, slots }) {\n const { columns } = useHeaders()\n const { expandOnClick, toggleExpand, isExpanded } = useExpanded()\n const { isSelected, toggleSelect } = useSelection()\n const { toggleGroup, isGroupOpen } = useGroupBy()\n const { t } = useLocale()\n const { mobile } = useDisplay(props)\n\n useRender(() => {\n const groupHeaderRowProps = pick(props, ['groupCollapseIcon', 'groupExpandIcon', 'density'])\n\n if (props.loading && (!props.items.length || slots.loading)) {\n return (\n \n \n { slots.loading?.() ?? t(props.loadingText) }\n \n \n )\n }\n\n if (!props.loading && !props.items.length && !props.hideNoData) {\n return (\n \n \n { slots['no-data']?.() ?? t(props.noDataText) }\n \n \n )\n }\n\n return (\n <>\n { props.items.map((item, index) => {\n if (item.type === 'group') {\n const slotProps = {\n index,\n item,\n columns: columns.value,\n isExpanded,\n toggleExpand,\n isSelected,\n toggleSelect,\n toggleGroup,\n isGroupOpen,\n } satisfies GroupHeaderSlot\n\n return slots['group-header'] ? slots['group-header'](slotProps) : (\n slotProps) }\n { ...groupHeaderRowProps }\n v-slots={ slots }\n />\n )\n }\n\n if (item.type === 'group-summary') {\n const slotProps = {\n index,\n item,\n columns: columns.value,\n toggleGroup,\n } satisfies GroupSummarySlot\n\n return slots['group-summary']?.(slotProps) ?? ''\n }\n\n const slotProps = {\n index: item.virtualIndex ?? index,\n item: item.raw,\n internalItem: item,\n columns: columns.value,\n isExpanded,\n toggleExpand,\n isSelected,\n toggleSelect,\n } satisfies ItemSlot\n\n const itemSlotProps = {\n ...slotProps,\n props: mergeProps(\n {\n key: `item_${item.key ?? item.index}`,\n onClick: expandOnClick.value ? () => {\n toggleExpand(item)\n } : undefined,\n index,\n item,\n color: props.color,\n cellProps: props.cellProps,\n collapseIcon: props.collapseIcon,\n expandIcon: props.expandIcon,\n density: props.density,\n mobile: mobile.value,\n },\n getPrefixedEventHandlers(attrs, ':row', () => slotProps),\n typeof props.rowProps === 'function'\n ? props.rowProps({\n item: slotProps.item,\n index: slotProps.index,\n internalItem: slotProps.internalItem,\n })\n : props.rowProps,\n ),\n }\n\n return (\n \n { slots.item ? slots.item(itemSlotProps) : (\n \n )}\n\n { isExpanded(item) && slots['expanded-row']?.(slotProps) }\n \n )\n })}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VDataTableRows = InstanceType\n", "// Styles\nimport './VTable.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type VTableSlots = {\n default: never\n top: never\n bottom: never\n wrapper: never\n}\n\nexport type Striped = null | 'odd' | 'even'\n\nexport const makeVTableProps = propsFactory({\n fixedHeader: Boolean,\n fixedFooter: Boolean,\n height: [Number, String],\n hover: Boolean,\n striped: {\n type: String as PropType,\n default: null,\n validator: (v: any) => ['even', 'odd'].includes(v),\n },\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VTable')\n\nexport const VTable = genericComponent()({\n name: 'VTable',\n\n props: makeVTableProps(),\n\n setup (props, { slots, emit }) {\n const { themeClasses } = provideTheme(props)\n const { densityClasses } = useDensity(props)\n\n useRender(() => (\n \n { slots.top?.() }\n\n { slots.default ? (\n \n \n { slots.default() }\n
\n \n ) : slots.wrapper?.()}\n\n { slots.bottom?.() }\n \n ))\n\n return {}\n },\n})\n\nexport type VTable = InstanceType\n", "// Utilities\nimport { computed } from 'vue'\nimport { getPropertyFromItem, propsFactory } from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { CellProps, DataTableItem, InternalDataTableHeader, RowProps } from '../types'\nimport type { SelectItemKey } from '@/util'\n\nexport interface DataTableItemProps {\n items: any[]\n itemValue: SelectItemKey\n itemSelectable: SelectItemKey\n returnObject: boolean\n}\n\n// Composables\nexport const makeDataTableItemsProps = propsFactory({\n items: {\n type: Array as PropType,\n default: () => ([]),\n },\n itemValue: {\n type: [String, Array, Function] as PropType,\n default: 'id',\n },\n itemSelectable: {\n type: [String, Array, Function] as PropType,\n default: null,\n },\n rowProps: [Object, Function] as PropType>,\n cellProps: [Object, Function] as PropType>,\n returnObject: Boolean,\n}, 'DataTable-items')\n\nexport function transformItem (\n props: Omit,\n item: any,\n index: number,\n columns: InternalDataTableHeader[]\n): DataTableItem {\n const value = props.returnObject ? item : getPropertyFromItem(item, props.itemValue)\n const selectable = getPropertyFromItem(item, props.itemSelectable, true)\n const itemColumns = columns.reduce((obj, column) => {\n if (column.key != null) obj[column.key] = getPropertyFromItem(item, column.value!)\n return obj\n }, {} as Record)\n\n return {\n type: 'item',\n key: props.returnObject ? getPropertyFromItem(item, props.itemValue) : value,\n index,\n value,\n selectable,\n columns: itemColumns,\n raw: item,\n }\n}\n\nexport function transformItems (\n props: Omit,\n items: DataTableItemProps['items'],\n columns: InternalDataTableHeader[]\n): DataTableItem[] {\n return items.map((item, index) => transformItem(props, item, index, columns))\n}\n\nexport function useDataTableItems (props: DataTableItemProps, columns: Ref) {\n const items = computed(() => transformItems(props, props.items, columns.value))\n\n return { items }\n}\n", "// Utilities\nimport { watch } from 'vue'\nimport { deepEqual, getCurrentInstance } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\nimport type { SortItem } from './sort'\n\nexport function useOptions ({\n page,\n itemsPerPage,\n sortBy,\n groupBy,\n search,\n}: {\n page: Ref\n itemsPerPage: Ref\n sortBy: Ref\n groupBy: Ref\n search: Ref\n}) {\n const vm = getCurrentInstance('VDataTable')\n\n const options = () => ({\n page: page.value,\n itemsPerPage: itemsPerPage.value,\n sortBy: sortBy.value,\n groupBy: groupBy.value,\n search: search.value,\n })\n\n let oldOptions: ReturnType | null = null\n watch(options, value => {\n if (deepEqual(oldOptions, value)) return\n\n // Reset page when searching\n if (oldOptions && oldOptions.search !== value.search) {\n page.value = 1\n }\n\n vm.emit('update:options', value)\n oldOptions = value\n }, { deep: true, immediate: true })\n}\n", "/* eslint-disable max-statements */\n/* eslint-disable no-labels */\n\n// Utilities\nimport { computed, shallowRef, unref, watchEffect } from 'vue'\nimport { getPropertyFromItem, propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { MaybeRef } from '@/util'\n\n/**\n * - boolean: match without highlight\n * - number: single match (index), length already known\n * - []: single match (start, end)\n * - [][]: multiple matches (start, end), shouldn't overlap\n */\nexport type FilterMatchArraySingle = readonly [number, number]\nexport type FilterMatchArrayMultiple = readonly FilterMatchArraySingle[]\nexport type FilterMatchArray = FilterMatchArraySingle | FilterMatchArrayMultiple\nexport type FilterMatch = boolean | number | FilterMatchArray\nexport type FilterFunction = (value: string, query: string, item?: InternalItem) => FilterMatch\nexport type FilterKeyFunctions = Record\nexport type FilterKeys = string | string[]\nexport type FilterMode = 'some' | 'every' | 'union' | 'intersection'\n\nexport interface FilterProps {\n customFilter?: FilterFunction\n customKeyFilter?: FilterKeyFunctions\n filterKeys?: FilterKeys\n filterMode?: FilterMode\n noFilter?: boolean\n}\n\nexport interface InternalItem {\n value: any\n raw: T\n type?: string\n}\n\ntype FilterResult = {\n index: number\n matches: Record\n type?: 'divider' | 'subheader'\n}\n\n// Composables\nexport const defaultFilter: FilterFunction = (value, query, item) => {\n if (value == null || query == null) return -1\n if (!query.length) return 0\n\n value = value.toString().toLocaleLowerCase()\n query = query.toString().toLocaleLowerCase()\n\n const result = []\n let idx = value.indexOf(query)\n while (~idx) {\n result.push([idx, idx + query.length] as const)\n\n idx = value.indexOf(query, idx + query.length)\n }\n\n return result.length ? result : -1\n}\n\nfunction normaliseMatch (match: FilterMatch, query: string): FilterMatchArrayMultiple | undefined {\n if (match == null || typeof match === 'boolean' || match === -1) return\n if (typeof match === 'number') return [[match, match + query.length]]\n if (Array.isArray(match[0])) return match as FilterMatchArrayMultiple\n return [match] as FilterMatchArrayMultiple\n}\n\nexport const makeFilterProps = propsFactory({\n customFilter: Function as PropType,\n customKeyFilter: Object as PropType,\n filterKeys: [Array, String] as PropType,\n filterMode: {\n type: String as PropType,\n default: 'intersection',\n },\n noFilter: Boolean,\n}, 'filter')\n\n// eslint-disable-next-line complexity\nexport function filterItems (\n items: readonly (readonly [item: InternalItem, transformed: {}])[] | readonly InternalItem[],\n query: string,\n options?: {\n customKeyFilter?: FilterKeyFunctions\n default?: FilterFunction\n filterKeys?: FilterKeys\n filterMode?: FilterMode\n noFilter?: boolean\n },\n) {\n const array: FilterResult[] = []\n // always ensure we fall back to a functioning filter\n const filter = options?.default ?? defaultFilter\n const keys = options?.filterKeys ? wrapInArray(options.filterKeys) : false\n const customFiltersLength = Object.keys(options?.customKeyFilter ?? {}).length\n\n if (!items?.length) return array\n\n let lookAheadItem: FilterResult | null = null\n\n loop:\n for (let i = 0; i < items.length; i++) {\n const [item, transformed = item] = wrapInArray(items[i]) as readonly [InternalItem, {}]\n const customMatches: Record = {}\n const defaultMatches: Record = {}\n let match: FilterMatch = -1\n\n if ((query || customFiltersLength > 0) && !options?.noFilter) {\n let hasOnlyCustomFilters = false\n\n if (typeof item === 'object') {\n if (item.type === 'divider' || item.type === 'subheader') {\n if (lookAheadItem?.type === 'divider' && item.type === 'subheader') {\n array.push(lookAheadItem) // divider before subheader\n }\n\n lookAheadItem = { index: i, matches: { }, type: item.type }\n continue\n }\n\n const filterKeys = keys || Object.keys(transformed)\n hasOnlyCustomFilters = filterKeys.length === customFiltersLength\n\n for (const key of filterKeys) {\n const value = getPropertyFromItem(transformed, key)\n const keyFilter = options?.customKeyFilter?.[key]\n\n match = keyFilter\n ? keyFilter(value, query, item)\n : filter(value, query, item)\n\n if (match !== -1 && match !== false) {\n if (keyFilter) customMatches[key] = normaliseMatch(match, query)\n else defaultMatches[key] = normaliseMatch(match, query)\n } else if (options?.filterMode === 'every') {\n continue loop\n }\n }\n } else {\n match = filter(item, query, item)\n if (match !== -1 && match !== false) {\n defaultMatches.title = normaliseMatch(match, query)\n }\n }\n\n const defaultMatchesLength = Object.keys(defaultMatches).length\n const customMatchesLength = Object.keys(customMatches).length\n\n if (!defaultMatchesLength && !customMatchesLength) continue\n\n if (\n options?.filterMode === 'union' &&\n customMatchesLength !== customFiltersLength &&\n !defaultMatchesLength\n ) continue\n\n if (\n options?.filterMode === 'intersection' &&\n (\n customMatchesLength !== customFiltersLength ||\n (!defaultMatchesLength && customFiltersLength > 0 && !hasOnlyCustomFilters)\n )\n ) continue\n }\n\n if (lookAheadItem) {\n array.push(lookAheadItem)\n lookAheadItem = null\n }\n\n array.push({ index: i, matches: { ...defaultMatches, ...customMatches } })\n }\n\n return array\n}\n\nexport function useFilter (\n props: FilterProps,\n items: MaybeRef,\n query: Ref | (() => string | undefined),\n options?: {\n transform?: (item: T) => {}\n customKeyFilter?: MaybeRef\n }\n) {\n const filteredItems = shallowRef([])\n const filteredMatches = shallowRef(new Map>())\n const transformedItems = computed(() => (\n options?.transform\n ? unref(items).map(item => ([item, options.transform!(item)] as const))\n : unref(items)\n ))\n\n watchEffect(() => {\n const _query = typeof query === 'function' ? query() : unref(query)\n const strQuery = (\n typeof _query !== 'string' &&\n typeof _query !== 'number'\n ) ? '' : String(_query)\n\n const results = filterItems(\n transformedItems.value,\n strQuery,\n {\n customKeyFilter: {\n ...props.customKeyFilter,\n ...unref(options?.customKeyFilter),\n },\n default: props.customFilter,\n filterKeys: props.filterKeys,\n filterMode: props.filterMode,\n noFilter: props.noFilter,\n },\n )\n\n const originalItems = unref(items)\n\n const _filteredItems: typeof filteredItems['value'] = []\n const _filteredMatches: typeof filteredMatches['value'] = new Map()\n results.forEach(({ index, matches }) => {\n const item = originalItems[index]\n _filteredItems.push(item)\n _filteredMatches.set(item.value, matches)\n })\n filteredItems.value = _filteredItems\n filteredMatches.value = _filteredMatches\n })\n\n function getMatches (item: T) {\n return filteredMatches.value.get(item.value)\n }\n\n return { filteredItems, filteredMatches, getMatches }\n}\n\nexport function highlightResult (name: string, text: string, matches: FilterMatchArrayMultiple | undefined) {\n if (matches == null || !matches.length) return text\n\n return matches.map((match, i) => {\n const start = i === 0 ? 0 : matches[i - 1][1]\n const result = [\n { text.slice(start, match[0]) },\n { text.slice(match[0], match[1]) },\n ]\n if (i === matches.length - 1) {\n result.push({ text.slice(match[1]) })\n }\n return <>{ result }\n })\n}\n", "// Components\nimport { makeDataTableProps } from './VDataTable'\nimport { VDataTableHeaders } from './VDataTableHeaders'\nimport { VDataTableRow } from './VDataTableRow'\nimport { VDataTableRows } from './VDataTableRows'\nimport { VTable } from '@/components/VTable'\nimport { VVirtualScrollItem } from '@/components/VVirtualScroll/VVirtualScrollItem'\n\n// Composables\nimport { provideExpanded } from './composables/expand'\nimport { createGroupBy, makeDataTableGroupProps, provideGroupBy, useGroupedItems } from './composables/group'\nimport { createHeaders } from './composables/headers'\nimport { useDataTableItems } from './composables/items'\nimport { useOptions } from './composables/options'\nimport { provideSelection } from './composables/select'\nimport { createSort, provideSort, useSortedItems } from './composables/sort'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\nimport { makeVirtualProps, useVirtual } from '@/composables/virtual'\n\n// Utilities\nimport { computed, shallowRef, toRef, toRefs } from 'vue'\nimport { convertToUnit, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { DeepReadonly } from 'vue'\nimport type { VDataTableSlotProps } from './VDataTable'\nimport type { VDataTableHeadersSlots } from './VDataTableHeaders'\nimport type { VDataTableRowsSlots } from './VDataTableRows'\nimport type { CellProps, DataTableHeader, RowProps } from '@/components/VDataTable/types'\nimport type { GenericProps, SelectItemKey, TemplateRef } from '@/util'\n\ntype VDataTableVirtualSlotProps = Omit<\n VDataTableSlotProps,\n | 'setItemsPerPage'\n | 'page'\n | 'pageCount'\n | 'itemsPerPage'\n>\n\nexport type VDataTableVirtualSlots = VDataTableRowsSlots & VDataTableHeadersSlots & {\n colgroup: VDataTableVirtualSlotProps\n top: VDataTableVirtualSlotProps\n headers: VDataTableHeadersSlots['headers']\n tbody: VDataTableVirtualSlotProps\n thead: VDataTableVirtualSlotProps\n tfoot: VDataTableVirtualSlotProps\n bottom: VDataTableVirtualSlotProps\n 'body.prepend': VDataTableVirtualSlotProps\n 'body.append': VDataTableVirtualSlotProps\n item: {\n itemRef: TemplateRef\n }\n}\n\nexport const makeVDataTableVirtualProps = propsFactory({\n ...omit(makeDataTableProps(), ['hideDefaultFooter']),\n ...makeDataTableGroupProps(),\n ...makeVirtualProps(),\n ...makeFilterProps(),\n}, 'VDataTableVirtual')\n\ntype ItemType = T extends readonly (infer U)[] ? U : never\n\nexport const VDataTableVirtual = genericComponent(\n props: {\n items?: T\n itemValue?: SelectItemKey>\n rowProps?: RowProps>\n cellProps?: CellProps>\n itemSelectable?: SelectItemKey>\n headers?: DeepReadonly>[]>\n modelValue?: V\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: VDataTableVirtualSlots>,\n) => GenericProps>()({\n name: 'VDataTableVirtual',\n\n props: makeVDataTableVirtualProps(),\n\n emits: {\n 'update:modelValue': (value: any[]) => true,\n 'update:sortBy': (value: any) => true,\n 'update:options': (value: any) => true,\n 'update:groupBy': (value: any) => true,\n 'update:expanded': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { groupBy } = createGroupBy(props)\n const { initialSortOrder, sortBy, multiSort, mustSort } = createSort(props)\n const { disableSort } = toRefs(props)\n\n const {\n columns,\n headers,\n filterFunctions,\n sortFunctions,\n sortRawFunctions,\n } = createHeaders(props, {\n groupBy,\n showSelect: toRef(() => props.showSelect),\n showExpand: toRef(() => props.showExpand),\n })\n const { items } = useDataTableItems(props, columns)\n\n const search = toRef(() => props.search)\n const { filteredItems } = useFilter(props, items, search, {\n transform: item => item.columns,\n customKeyFilter: filterFunctions,\n })\n\n const { toggleSort } = provideSort({ initialSortOrder, sortBy, multiSort, mustSort })\n const { sortByWithGroups, opened, extractRows, isGroupOpen, toggleGroup } = provideGroupBy({ groupBy, sortBy, disableSort })\n\n const { sortedItems } = useSortedItems(props, filteredItems, sortByWithGroups, {\n transform: item => ({ ...item.raw, ...item.columns }),\n sortFunctions,\n sortRawFunctions,\n })\n const { flatItems } = useGroupedItems(sortedItems, groupBy, opened, () => !!slots['group-summary'])\n\n const allItems = computed(() => extractRows(flatItems.value))\n\n const { isSelected, select, selectAll, toggleSelect, someSelected, allSelected } = provideSelection(props, {\n allItems,\n currentPage: allItems,\n })\n const { isExpanded, toggleExpand } = provideExpanded(props)\n\n const {\n containerRef,\n markerRef,\n paddingTop,\n paddingBottom,\n computedItems,\n handleItemResize,\n handleScroll,\n handleScrollend,\n calculateVisibleItems,\n scrollToIndex,\n } = useVirtual(props, flatItems)\n\n const displayItems = computed(() =>\n computedItems.value\n .map(item => ({\n ...item.raw,\n virtualIndex: item.index,\n }))\n )\n\n useOptions({\n sortBy,\n page: shallowRef(1),\n itemsPerPage: shallowRef(-1),\n groupBy,\n search,\n })\n\n provideDefaults({\n VDataTableRows: {\n hideNoData: toRef(() => props.hideNoData),\n noDataText: toRef(() => props.noDataText),\n loading: toRef(() => props.loading),\n loadingText: toRef(() => props.loadingText),\n },\n })\n\n const slotProps = computed>(() => ({\n sortBy: sortBy.value,\n toggleSort,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n isSelected,\n select,\n selectAll,\n toggleSelect,\n isExpanded,\n toggleExpand,\n isGroupOpen,\n toggleGroup,\n items: allItems.value.map(item => item.raw),\n internalItems: allItems.value,\n groupedItems: flatItems.value,\n columns: columns.value,\n headers: headers.value,\n }))\n\n useRender(() => {\n const dataTableHeadersProps = VDataTableHeaders.filterProps(omit(props, ['multiSort']))\n const dataTableRowsProps = VDataTableRows.filterProps(props)\n const tableProps = VTable.filterProps(props)\n\n return (\n \n {{\n top: () => slots.top?.(slotProps.value),\n wrapper: () => (\n \n \n { slots.colgroup?.(slotProps.value) }\n { !props.hideDefaultHeader && (\n \n \n \n )}\n { slots.thead?.(slotProps.value) }\n { !props.hideDefaultBody && (\n \n \n \n \n\n { slots['body.prepend']?.(slotProps.value) }\n\n \n {{\n ...slots,\n item: itemSlotProps => (\n handleItemResize(itemSlotProps.internalItem.index, height) }\n >\n { ({ itemRef }) => (\n slots.item?.({ ...itemSlotProps, itemRef }) ?? (\n \n )\n )}\n \n ),\n }}\n \n\n { slots['body.append']?.(slotProps.value) }\n\n \n \n \n \n )}\n { slots.tbody?.(slotProps.value) }\n { slots.tfoot?.(slotProps.value) }\n
\n \n ),\n bottom: () => slots.bottom?.(slotProps.value),\n }}\n \n )\n })\n\n return {\n calculateVisibleItems,\n scrollToIndex,\n }\n },\n})\n\nexport type VDataTableVirtual = InstanceType\n", "// Components\nimport { makeDataTableProps } from './VDataTable'\nimport { makeVDataTableFooterProps, VDataTableFooter } from './VDataTableFooter'\nimport { VDataTableHeaders } from './VDataTableHeaders'\nimport { VDataTableRows } from './VDataTableRows'\nimport { VDivider } from '@/components/VDivider'\nimport { VTable } from '@/components/VTable'\n\n// Composables\nimport { provideExpanded } from './composables/expand'\nimport { createGroupBy, provideGroupBy, useGroupedItems } from './composables/group'\nimport { createHeaders } from './composables/headers'\nimport { useDataTableItems } from './composables/items'\nimport { useOptions } from './composables/options'\nimport { createPagination, makeDataTablePaginateProps, providePagination } from './composables/paginate'\nimport { provideSelection } from './composables/select'\nimport { createSort, provideSort } from './composables/sort'\nimport { provideDefaults } from '@/composables/defaults'\n\n// Utilities\nimport { computed, provide, toRef, toRefs } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { DeepReadonly } from 'vue'\nimport type { VDataTableSlotProps, VDataTableSlots } from './VDataTable'\nimport type { CellProps, DataTableHeader, RowProps } from '@/components/VDataTable/types'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\nexport const makeVDataTableServerProps = propsFactory({\n itemsLength: {\n type: [Number, String],\n required: true,\n },\n\n ...makeDataTablePaginateProps(),\n ...makeDataTableProps(),\n ...makeVDataTableFooterProps(),\n}, 'VDataTableServer')\n\ntype ItemType = T extends readonly (infer U)[] ? U : never\n\nexport const VDataTableServer = genericComponent(\n props: {\n items?: T\n itemValue?: SelectItemKey>\n rowProps?: RowProps>\n cellProps?: CellProps>\n itemSelectable?: SelectItemKey>\n headers?: DeepReadonly>[]>\n modelValue?: V\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: VDataTableSlots>,\n) => GenericProps>()({\n name: 'VDataTableServer',\n\n props: makeVDataTableServerProps(),\n\n emits: {\n 'update:modelValue': (value: any[]) => true,\n 'update:page': (page: number) => true,\n 'update:itemsPerPage': (page: number) => true,\n 'update:sortBy': (sortBy: any) => true,\n 'update:options': (options: any) => true,\n 'update:expanded': (options: any) => true,\n 'update:groupBy': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { groupBy } = createGroupBy(props)\n const { initialSortOrder, sortBy, multiSort, mustSort } = createSort(props)\n const { page, itemsPerPage } = createPagination(props)\n const { disableSort } = toRefs(props)\n const itemsLength = computed(() => parseInt(props.itemsLength, 10))\n\n const { columns, headers } = createHeaders(props, {\n groupBy,\n showSelect: toRef(() => props.showSelect),\n showExpand: toRef(() => props.showExpand),\n })\n\n const { items } = useDataTableItems(props, columns)\n\n const { toggleSort } = provideSort({ initialSortOrder, sortBy, multiSort, mustSort, page })\n\n const { opened, isGroupOpen, toggleGroup, extractRows } = provideGroupBy({ groupBy, sortBy, disableSort })\n\n const { pageCount, setItemsPerPage } = providePagination({ page, itemsPerPage, itemsLength })\n\n const { flatItems } = useGroupedItems(items, groupBy, opened, () => !!slots['group-summary'])\n\n const { isSelected, select, selectAll, toggleSelect, someSelected, allSelected } = provideSelection(props, {\n allItems: items,\n currentPage: items,\n })\n\n const { isExpanded, toggleExpand } = provideExpanded(props)\n\n const itemsWithoutGroups = computed(() => extractRows(items.value))\n\n useOptions({\n page,\n itemsPerPage,\n sortBy,\n groupBy,\n search: toRef(() => props.search),\n })\n\n provide('v-data-table', {\n toggleSort,\n sortBy,\n })\n\n provideDefaults({\n VDataTableRows: {\n hideNoData: toRef(() => props.hideNoData),\n noDataText: toRef(() => props.noDataText),\n loading: toRef(() => props.loading),\n loadingText: toRef(() => props.loadingText),\n },\n })\n\n const slotProps = computed>(() => ({\n page: page.value,\n itemsPerPage: itemsPerPage.value,\n sortBy: sortBy.value,\n pageCount: pageCount.value,\n toggleSort,\n setItemsPerPage,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n isSelected,\n select,\n selectAll,\n toggleSelect,\n isExpanded,\n toggleExpand,\n isGroupOpen,\n toggleGroup,\n items: itemsWithoutGroups.value.map(item => item.raw),\n internalItems: itemsWithoutGroups.value,\n groupedItems: flatItems.value,\n columns: columns.value,\n headers: headers.value,\n }))\n\n useRender(() => {\n const dataTableFooterProps = VDataTableFooter.filterProps(props)\n const dataTableHeadersProps = VDataTableHeaders.filterProps(omit(props, ['multiSort']))\n const dataTableRowsProps = VDataTableRows.filterProps(props)\n const tableProps = VTable.filterProps(props)\n\n return (\n \n {{\n top: () => slots.top?.(slotProps.value),\n default: () => slots.default ? slots.default(slotProps.value) : (\n <>\n { slots.colgroup?.(slotProps.value) }\n { !props.hideDefaultHeader && (\n \n \n \n )}\n { slots.thead?.(slotProps.value) }\n { !props.hideDefaultBody && (\n \n { slots['body.prepend']?.(slotProps.value) }\n { slots.body ? slots.body(slotProps.value) : (\n \n )}\n { slots['body.append']?.(slotProps.value) }\n \n )}\n { slots.tbody?.(slotProps.value) }\n { slots.tfoot?.(slotProps.value) }\n \n ),\n bottom: () => slots.bottom ? slots.bottom(slotProps.value) : !props.hideDefaultFooter && (\n <>\n \n\n \n \n ),\n }}\n \n )\n })\n },\n})\n\nexport type VDataTableServer = InstanceType\n"], - "mappings": "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", - "names": ["useRefs", "refs", "ref", "onBeforeUpdate", "value", "updateRef", "e", "i", "makeVPaginationProps", "propsFactory", "activeColor", "String", "start", "type", "Number", "default", "modelValue", "props", "disabled", "Boolean", "length", "validator", "val", "totalVisible", "firstIcon", "IconValue", "prevIcon", "nextIcon", "lastIcon", "ariaLabel", "pageAriaLabel", "currentPageAriaLabel", "firstAriaLabel", "previousAriaLabel", "nextAriaLabel", "lastAriaLabel", "ellipsis", "showFirstLastPage", "makeBorderProps", "makeComponentProps", "makeDensityProps", "makeElevationProps", "makeRoundedProps", "makeSizeProps", "makeTagProps", "tag", "makeThemeProps", "makeVariantProps", "variant", "VPagination", "genericComponent", "name", "emits", "value", "first", "prev", "next", "last", "setup", "_ref", "slots", "emit", "page", "useProxiedModel", "t", "n", "useLocale", "isRtl", "useRtl", "themeClasses", "provideTheme", "width", "useDisplay", "maxButtons", "shallowRef", "provideDefaults", "undefined", "scoped", "resizeRef", "useResizeObserver", "entries", "target", "contentRect", "firstItem", "querySelector", "totalWidth", "itemWidth", "offsetWidth", "parseFloat", "getComputedStyle", "marginRight", "getMax", "computed", "parseInt", "minButtons", "Math", "max", "floor", "toFixed", "range", "isNaN", "MAX_SAFE_INTEGER", "createRange", "even", "middle", "left", "right", "rangeLength", "rangeStart", "ceil", "setValue", "e", "event", "preventDefault", "refs", "updateRef", "useRefs", "VPaginationBtn", "color", "toRef", "border", "density", "size", "rounded", "elevation", "items", "map", "item", "index", "ref", "isActive", "key", "icon", "onClick", "controls", "prevDisabled", "nextDisabled", "updateFocus", "currentIndex", "$el", "focus", "onKeydown", "keyValues", "nextTick", "useRender", "_createVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "_createElementVNode", "VBtn", "_mergeProps", "makeDataTablePaginateProps", "propsFactory", "page", "type", "Number", "String", "default", "itemsPerPage", "VDataTablePaginationSymbol", "Symbol", "for", "createPagination", "props", "useProxiedModel", "undefined", "value", "providePagination", "options", "itemsLength", "startIndex", "computed", "stopIndex", "Math", "min", "pageCount", "ceil", "watch", "setItemsPerPage", "nextPage", "clamp", "prevPage", "setPage", "data", "provide", "usePagination", "inject", "Error", "usePaginatedItems", "vm", "getCurrentInstance", "items", "paginatedItems", "slice", "val", "emit", "immediate", "makeVDataTableFooterProps", "propsFactory", "color", "String", "prevIcon", "type", "IconValue", "default", "nextIcon", "firstIcon", "lastIcon", "itemsPerPageText", "pageText", "firstPageLabel", "prevPageLabel", "nextPageLabel", "lastPageLabel", "itemsPerPageOptions", "Array", "value", "title", "showCurrentPage", "Boolean", "VDataTableFooter", "genericComponent", "name", "props", "setup", "_ref", "slots", "t", "useLocale", "page", "pageCount", "startIndex", "stopIndex", "itemsLength", "itemsPerPage", "setItemsPerPage", "usePagination", "computed", "map", "option", "isNaN", "Number", "useRender", "paginationProps", "VPagination", "filterProps", "_createElementVNode", "prepend", "_createVNode", "VSelect", "v", "_mergeProps", "$event", "omit", "VDataTableColumn", "defineFunctionalComponent", "align", "type", "String", "default", "fixed", "Boolean", "fixedOffset", "Number", "fixedEndOffset", "height", "lastFixed", "firstFixedEnd", "noPadding", "indent", "empty", "tag", "width", "maxWidth", "nowrap", "props", "_ref", "slots", "Tag", "fixedSide", "_createVNode", "_normalizeClass", "convertToUnit", "left", "undefined", "right", "paddingInlineStart", "makeDataTableHeaderProps", "propsFactory", "headers", "Array", "VDataTableHeadersSymbol", "Symbol", "for", "defaultHeader", "title", "sortable", "defaultActionHeader", "width", "priorityQueue", "arr", "arguments", "length", "undefined", "queue", "map", "element", "priority", "enqueue", "added", "i", "item", "splice", "push", "size", "count", "whole", "Math", "floor", "dequeue", "shift", "extractLeaves", "columns", "children", "child", "extractKeys", "keys", "Set", "key", "add", "getDefaultItem", "includes", "getDepth", "depth", "max", "parseFixedColumns", "items", "seenFixed", "setFixed", "side", "parentFixedSide", "fixed", "lastFixed", "firstFixedEnd", "isNaN", "Number", "consoleError", "minWidth", "fixedOffset", "setFixedOffset", "fixedEndOffset", "setFixedEndOffset", "offset", "parseFloat", "parse", "maxDepth", "currentDepth", "rowSize", "row", "fraction", "diff", "rowspan", "colspan", "sort", "pow", "flat", "convertToInternalHeaders", "internalHeaders", "defaultItem", "value", "internalItem", "createHeaders", "props", "options", "ref", "sortFunctions", "sortRawFunctions", "filterFunctions", "watchEffect", "_headers", "Object", "capitalize", "slice", "groupBy", "has", "unshift", "showSelect", "showExpand", "parsed", "flatHeaders", "header", "sortRaw", "filter", "data", "provide", "useHeaders", "inject", "Error", "singleSelectStrategy", "showSelectAll", "allSelected", "select", "_ref", "items", "value", "Set", "selectAll", "_ref2", "selected", "pageSelectStrategy", "_ref3", "currentPage", "_ref4", "item", "add", "delete", "_ref5", "allSelectStrategy", "_ref6", "allItems", "_ref7", "_ref8", "map", "makeDataTableSelectProps", "propsFactory", "showSelect", "Boolean", "selectStrategy", "type", "String", "Object", "default", "modelValue", "Array", "valueComparator", "Function", "VDataTableSelectionSymbol", "Symbol", "for", "provideSelection", "props", "_ref9", "useProxiedModel", "v", "customComparator", "wrapInArray", "find", "isPrimitive", "deepEqual", "values", "allSelectable", "computed", "filter", "selectable", "currentPageSelectable", "lastSelectedIndex", "shallowRef", "isSelected", "every", "has", "isSomeSelected", "some", "newSelected", "toggleSelect", "index", "event", "findIndex", "i", "shiftKey", "start", "end", "sort", "a", "b", "push", "slice", "someSelected", "size", "length", "toRef", "data", "provide", "useSelection", "inject", "Error", "makeDataTableSortProps", "propsFactory", "initialSortOrder", "type", "String", "default", "validator", "v", "includes", "sortBy", "Array", "customKeySort", "Object", "multiSort", "Boolean", "mustSort", "VDataTableSortSymbol", "Symbol", "for", "createSort", "props", "toRef", "useProxiedModel", "resolveMultiSort", "event", "isObject", "active", "key", "mode", "modifier", "reverseMode", "altKey", "shiftKey", "ctrlKey", "metaKey", "provideSort", "options", "page", "toggleSort", "column", "newSortBy", "value", "map", "x", "item", "find", "initialOrder", "secondaryOrder", "unshift", "order", "push", "length", "filter", "isSorted", "data", "provide", "useSort", "inject", "Error", "useSortedItems", "items", "locale", "useLocale", "sortedItems", "computed", "sortItems", "current", "transform", "sortFunctions", "sortRawFunctions", "sortByItems", "stringCollator", "Intl", "Collator", "sensitivity", "usage", "transformedItems", "sort", "a", "b", "i", "hasCustomResult", "sortKey", "sortOrder", "sortA", "getObjectValueByPath", "sortB", "sortARaw", "raw", "sortBRaw", "customResult", "Date", "getTime", "s", "toString", "toLocaleLowerCase", "isEmpty", "isNaN", "Number", "compare", "_ref", "makeVDataTableHeadersProps", "propsFactory", "color", "String", "disableSort", "Boolean", "fixedHeader", "multiSort", "initialSortOrder", "sortAscIcon", "type", "IconValue", "default", "sortDescIcon", "headerProps", "Object", "sticky", "makeDensityProps", "makeDisplayProps", "makeLoaderProps", "VDataTableHeaders", "genericComponent", "name", "props", "setup", "_ref", "slots", "t", "useLocale", "toggleSort", "sortBy", "isSorted", "useSort", "someSelected", "allSelected", "selectAll", "showSelectAll", "useSelection", "columns", "headers", "useHeaders", "loaderClasses", "useLoader", "getFixedStyles", "column", "y", "fixed", "undefined", "fixedSide", "position", "left", "convertToUnit", "fixedOffset", "right", "fixedEndOffset", "top", "handleEnterKeyPress", "event", "key", "getSortIcon", "item", "value", "find", "order", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "displayClasses", "mobile", "useDisplay", "slotProps", "computed", "headerCellClasses", "VDataTableHeaderCell", "_ref2", "x", "noPadding", "isEmpty", "width", "title", "mergeProps", "_createVNode", "VDataTableColumn", "_mergeProps", "align", "sortable", "minWidth", "maxWidth", "colspan", "rowspan", "nowrap", "lastFixed", "firstFixedEnd", "columnSlotName", "columnSlotProps", "VCheckboxBtn", "density", "_createElementVNode", "VIcon", "_normalizeClass", "_normalizeStyle", "findIndex", "VDataTableMobileHeaderCell", "displayItems", "filter", "showSelectColumn", "length", "VSelect", "onClick:clear", "append", "onUpdate:modelValue", "chip", "VChip", "raw", "e", "preventDefault", "stopPropagation", "useRender", "_Fragment", "map", "row", "loading", "LoaderSlot", "loader", "makeDataTableGroupProps", "propsFactory", "groupBy", "type", "Array", "default", "VDataTableGroupSymbol", "Symbol", "for", "createGroupBy", "props", "useProxiedModel", "provideGroupBy", "options", "disableSort", "sortBy", "opened", "ref", "Set", "sortByWithGroups", "computed", "value", "map", "val", "order", "concat", "isGroupOpen", "group", "has", "id", "toggleGroup", "newOpened", "add", "delete", "extractRows", "items", "dive", "arr", "item", "push", "key", "depth", "data", "provide", "useGroupBy", "inject", "Error", "groupItemsByProperty", "length", "groups", "Map", "getObjectValueByPath", "raw", "set", "get", "groupItems", "arguments", "undefined", "prefix", "groupedItems", "rest", "slice", "forEach", "flattenItems", "hasSummary", "flatItems", "useGroupedItems", "toValue", "makeVDataTableGroupHeaderRowProps", "propsFactory", "item", "type", "Object", "required", "groupCollapseIcon", "IconValue", "default", "groupExpandIcon", "makeDensityProps", "VDataTableGroupHeaderRow", "genericComponent", "name", "props", "setup", "_ref", "slots", "isGroupOpen", "toggleGroup", "extractRows", "useGroupBy", "isSelected", "isSomeSelected", "select", "useSelection", "columns", "useHeaders", "rows", "computed", "colspan", "toRef", "value", "length", "some", "c", "key", "_createElementVNode", "depth", "map", "column", "icon", "onClick", "count", "_createVNode", "VDataTableColumn", "VBtn", "_createTextVNode", "selectableRows", "filter", "x", "selectable", "modelValue", "indeterminate", "selectGroup", "v", "VCheckboxBtn", "density", "makeDataTableExpandProps", "propsFactory", "expandOnClick", "Boolean", "showExpand", "expanded", "type", "Array", "default", "VDataTableExpandedKey", "Symbol", "for", "provideExpanded", "props", "toRef", "useProxiedModel", "v", "Set", "values", "expand", "item", "value", "newExpanded", "rawValue", "toRaw", "find", "x", "delete", "add", "isExpanded", "some", "toggleExpand", "data", "provide", "useExpanded", "inject", "Error", "makeVDataTableRowProps", "propsFactory", "color", "String", "index", "Number", "item", "Object", "cellProps", "Function", "collapseIcon", "type", "IconValue", "default", "expandIcon", "onClick", "EventProp", "onContextmenu", "onDblclick", "makeDensityProps", "makeDisplayProps", "VDataTableRow", "genericComponent", "name", "props", "setup", "_ref", "slots", "displayClasses", "mobile", "useDisplay", "isSelected", "toggleSelect", "someSelected", "allSelected", "selectAll", "useSelection", "isExpanded", "toggleExpand", "useExpanded", "toggleSort", "sortBy", "isSorted", "useSort", "columns", "useHeaders", "useRender", "_createElementVNode", "_normalizeClass", "value", "map", "column", "i", "slotName", "key", "headerSlotName", "slotProps", "raw", "internalItem", "getObjectValueByPath", "columnSlotProps", "getSortIcon", "columnCellProps", "noPadding", "isEmpty", "width", "title", "_createVNode", "VDataTableColumn", "_mergeProps", "align", "indent", "fixed", "fixedOffset", "fixedEndOffset", "lastFixed", "firstFixedEnd", "maxWidth", "undefined", "nowrap", "disabled", "selectable", "modelValue", "withModifiers", "VCheckboxBtn", "density", "event", "icon", "size", "variant", "VBtn", "displayValue", "toDisplayString", "_Fragment", "makeVDataTableRowsProps", "propsFactory", "color", "String", "loading", "Boolean", "loadingText", "type", "default", "hideNoData", "items", "Array", "noDataText", "rowProps", "Object", "Function", "cellProps", "pick", "makeVDataTableRowProps", "makeVDataTableGroupHeaderRowProps", "makeDisplayProps", "VDataTableRows", "genericComponent", "name", "inheritAttrs", "props", "setup", "_ref", "attrs", "slots", "columns", "useHeaders", "expandOnClick", "toggleExpand", "isExpanded", "useExpanded", "isSelected", "toggleSelect", "useSelection", "toggleGroup", "isGroupOpen", "useGroupBy", "t", "useLocale", "mobile", "useDisplay", "useRender", "groupHeaderRowProps", "length", "_createElementVNode", "value", "_Fragment", "map", "item", "index", "slotProps", "_createVNode", "VDataTableGroupHeaderRow", "_mergeProps", "id", "getPrefixedEventHandlers", "virtualIndex", "raw", "internalItem", "itemSlotProps", "mergeProps", "key", "onClick", "undefined", "collapseIcon", "expandIcon", "density", "VDataTableRow", "makeVTableProps", "propsFactory", "fixedHeader", "Boolean", "fixedFooter", "height", "Number", "String", "hover", "striped", "type", "default", "validator", "v", "includes", "makeComponentProps", "makeDensityProps", "makeTagProps", "makeThemeProps", "VTable", "genericComponent", "name", "props", "setup", "_ref", "slots", "emit", "themeClasses", "provideTheme", "densityClasses", "useDensity", "useRender", "_createVNode", "tag", "_normalizeClass", "top", "bottom", "value", "class", "_normalizeStyle", "style", "_createElementVNode", "convertToUnit", "wrapper", "makeDataTableItemsProps", "propsFactory", "items", "type", "Array", "default", "itemValue", "String", "Function", "itemSelectable", "rowProps", "Object", "cellProps", "returnObject", "Boolean", "transformItem", "props", "item", "index", "columns", "value", "getPropertyFromItem", "selectable", "itemColumns", "reduce", "obj", "column", "key", "raw", "transformItems", "map", "useDataTableItems", "computed", "useOptions", "_ref", "page", "itemsPerPage", "sortBy", "groupBy", "search", "vm", "getCurrentInstance", "options", "value", "oldOptions", "watch", "deepEqual", "emit", "deep", "immediate", "defaultFilter", "value", "query", "item", "length", "toString", "toLocaleLowerCase", "result", "idx", "indexOf", "push", "normaliseMatch", "match", "Array", "isArray", "makeFilterProps", "propsFactory", "customFilter", "Function", "customKeyFilter", "Object", "filterKeys", "String", "filterMode", "type", "default", "noFilter", "Boolean", "filterItems", "items", "options", "array", "filter", "keys", "wrapInArray", "customFiltersLength", "lookAheadItem", "loop", "i", "transformed", "customMatches", "defaultMatches", "hasOnlyCustomFilters", "index", "matches", "key", "getPropertyFromItem", "keyFilter", "title", "defaultMatchesLength", "customMatchesLength", "useFilter", "props", "filteredItems", "shallowRef", "filteredMatches", "Map", "transformedItems", "computed", "transform", "unref", "map", "watchEffect", "_query", "strQuery", "results", "originalItems", "_filteredItems", "_filteredMatches", "forEach", "_ref", "set", "getMatches", "get", "highlightResult", "name", "text", "start", "_createElementVNode", "_normalizeClass", "slice", "_Fragment", "makeDataTableProps", "propsFactory", "makeVDataTableRowsProps", "hideDefaultBody", "Boolean", "hideDefaultFooter", "hideDefaultHeader", "width", "String", "Number", "search", "makeDataTableExpandProps", "makeDataTableGroupProps", "makeDataTableHeaderProps", "makeDataTableItemsProps", "makeDataTableSelectProps", "makeDataTableSortProps", "omit", "makeVDataTableHeadersProps", "makeVTableProps", "makeVDataTableProps", "makeDataTablePaginateProps", "makeFilterProps", "makeVDataTableFooterProps", "VDataTable", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "attrs", "slots", "groupBy", "createGroupBy", "initialSortOrder", "sortBy", "multiSort", "mustSort", "createSort", "page", "itemsPerPage", "createPagination", "disableSort", "toRefs", "columns", "headers", "sortFunctions", "sortRawFunctions", "filterFunctions", "createHeaders", "showSelect", "toRef", "showExpand", "items", "useDataTableItems", "filteredItems", "useFilter", "transform", "item", "customKeyFilter", "toggleSort", "provideSort", "sortByWithGroups", "opened", "extractRows", "isGroupOpen", "toggleGroup", "provideGroupBy", "sortedItems", "useSortedItems", "raw", "flatItems", "useGroupedItems", "itemsLength", "computed", "length", "startIndex", "stopIndex", "pageCount", "setItemsPerPage", "providePagination", "paginatedItems", "usePaginatedItems", "paginatedItemsWithoutGroups", "isSelected", "select", "selectAll", "toggleSelect", "someSelected", "allSelected", "provideSelection", "allItems", "currentPage", "isExpanded", "toggleExpand", "provideExpanded", "useOptions", "provideDefaults", "VDataTableRows", "hideNoData", "noDataText", "loading", "loadingText", "slotProps", "map", "internalItems", "groupedItems", "useRender", "dataTableFooterProps", "VDataTableFooter", "filterProps", "dataTableHeadersProps", "VDataTableHeaders", "dataTableRowsProps", "tableProps", "VTable", "_createVNode", "_mergeProps", "class", "style", "fixedHeader", "sticky", "top", "default", "_createElementVNode", "_Fragment", "colgroup", "thead", "body", "tbody", "tfoot", "bottom", "VDivider", "prepend", "makeVDataTableVirtualProps", "propsFactory", "omit", "makeDataTableProps", "makeDataTableGroupProps", "makeVirtualProps", "makeFilterProps", "VDataTableVirtual", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "attrs", "slots", "groupBy", "createGroupBy", "initialSortOrder", "sortBy", "multiSort", "mustSort", "createSort", "disableSort", "toRefs", "columns", "headers", "filterFunctions", "sortFunctions", "sortRawFunctions", "createHeaders", "showSelect", "toRef", "showExpand", "items", "useDataTableItems", "search", "filteredItems", "useFilter", "transform", "item", "customKeyFilter", "toggleSort", "provideSort", "sortByWithGroups", "opened", "extractRows", "isGroupOpen", "toggleGroup", "provideGroupBy", "sortedItems", "useSortedItems", "raw", "flatItems", "useGroupedItems", "allItems", "computed", "isSelected", "select", "selectAll", "toggleSelect", "someSelected", "allSelected", "provideSelection", "currentPage", "isExpanded", "toggleExpand", "provideExpanded", "containerRef", "markerRef", "paddingTop", "paddingBottom", "computedItems", "handleItemResize", "handleScroll", "handleScrollend", "calculateVisibleItems", "scrollToIndex", "useVirtual", "displayItems", "map", "virtualIndex", "index", "useOptions", "page", "shallowRef", "itemsPerPage", "provideDefaults", "VDataTableRows", "hideNoData", "noDataText", "loading", "loadingText", "slotProps", "internalItems", "groupedItems", "useRender", "dataTableHeadersProps", "VDataTableHeaders", "filterProps", "dataTableRowsProps", "tableProps", "VTable", "_createVNode", "_mergeProps", "class", "style", "fixedHeader", "sticky", "top", "wrapper", "_createElementVNode", "height", "convertToUnit", "colgroup", "hideDefaultHeader", "thead", "hideDefaultBody", "border", "length", "itemSlotProps", "VVirtualScrollItem", "internalItem", "default", "_ref2", "itemRef", "VDataTableRow", "tbody", "tfoot", "bottom", "makeVDataTableServerProps", "propsFactory", "itemsLength", "type", "Number", "String", "required", "makeDataTablePaginateProps", "makeDataTableProps", "makeVDataTableFooterProps", "VDataTableServer", "genericComponent", "name", "props", "emits", "value", "page", "sortBy", "options", "setup", "_ref", "attrs", "slots", "groupBy", "createGroupBy", "initialSortOrder", "multiSort", "mustSort", "createSort", "itemsPerPage", "createPagination", "disableSort", "toRefs", "computed", "parseInt", "columns", "headers", "createHeaders", "showSelect", "toRef", "showExpand", "items", "useDataTableItems", "toggleSort", "provideSort", "opened", "isGroupOpen", "toggleGroup", "extractRows", "provideGroupBy", "pageCount", "setItemsPerPage", "providePagination", "flatItems", "useGroupedItems", "isSelected", "select", "selectAll", "toggleSelect", "someSelected", "allSelected", "provideSelection", "allItems", "currentPage", "isExpanded", "toggleExpand", "provideExpanded", "itemsWithoutGroups", "useOptions", "search", "provide", "provideDefaults", "VDataTableRows", "hideNoData", "noDataText", "loading", "loadingText", "slotProps", "map", "item", "raw", "internalItems", "groupedItems", "useRender", "dataTableFooterProps", "VDataTableFooter", "filterProps", "dataTableHeadersProps", "VDataTableHeaders", "omit", "dataTableRowsProps", "tableProps", "VTable", "_createVNode", "_mergeProps", "class", "style", "fixedHeader", "sticky", "top", "default", "_createElementVNode", "_Fragment", "colgroup", "hideDefaultHeader", "thead", "hideDefaultBody", "body", "tbody", "tfoot", "bottom", "hideDefaultFooter", "VDivider", "prepend"] + "sources": ["../../vuetify/src/components/VDataTable/VDataTable.tsx", "../../vuetify/src/components/VDataTable/VDataTableFooter.tsx", "../../vuetify/src/components/VPagination/VPagination.tsx", "../../vuetify/src/composables/refs.ts", "../../vuetify/src/components/VDataTable/composables/paginate.ts", "../../vuetify/src/components/VDataTable/VDataTableColumn.tsx", "../../vuetify/src/components/VDataTable/composables/headers.ts", "../../vuetify/src/components/VDataTable/composables/select.ts", "../../vuetify/src/components/VDataTable/composables/sort.ts", "../../vuetify/src/components/VDataTable/VDataTableHeaders.tsx", "../../vuetify/src/components/VDataTable/composables/group.ts", "../../vuetify/src/components/VDataTable/VDataTableGroupHeaderRow.tsx", "../../vuetify/src/components/VDataTable/composables/expand.ts", "../../vuetify/src/components/VDataTable/VDataTableRow.tsx", "../../vuetify/src/components/VDataTable/VDataTableRows.tsx", "../../vuetify/src/components/VTable/VTable.tsx", "../../vuetify/src/components/VDataTable/composables/items.ts", "../../vuetify/src/components/VDataTable/composables/options.ts", "../../vuetify/src/components/VDataTable/VDataTableVirtual.tsx", "../../vuetify/src/components/VDataTable/VDataTableServer.tsx"], + "sourcesContent": ["// Styles\nimport './VDataTable.sass'\n\n// Components\nimport { makeVDataTableFooterProps, VDataTableFooter } from './VDataTableFooter'\nimport { makeVDataTableHeadersProps, VDataTableHeaders } from './VDataTableHeaders'\nimport { makeVDataTableRowsProps, VDataTableRows } from './VDataTableRows'\nimport { VDivider } from '@/components/VDivider'\nimport { makeVTableProps, VTable } from '@/components/VTable/VTable'\n\n// Composables\nimport { makeDataTableExpandProps, provideExpanded } from './composables/expand'\nimport { createGroupBy, makeDataTableGroupProps, provideGroupBy, useGroupedItems } from './composables/group'\nimport { createHeaders, makeDataTableHeaderProps } from './composables/headers'\nimport { makeDataTableItemsProps, useDataTableItems } from './composables/items'\nimport { useOptions } from './composables/options'\nimport { createPagination, makeDataTablePaginateProps, providePagination, usePaginatedItems } from './composables/paginate'\nimport { makeDataTableSelectProps, provideSelection } from './composables/select'\nimport { createSort, makeDataTableSortProps, provideSort, useSortedItems } from './composables/sort'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\n\n// Utilities\nimport { computed, toRef, toRefs } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { DeepReadonly, UnwrapRef } from 'vue'\nimport type { Group, GroupSummary } from './composables/group'\nimport type { CellProps, DataTableHeader, DataTableItem, InternalDataTableHeader, RowProps } from './types'\nimport type { VDataTableHeadersSlots } from './VDataTableHeaders'\nimport type { VDataTableRowsSlots } from './VDataTableRows'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\nexport type VDataTableSlotProps = {\n page: number\n itemsPerPage: number\n sortBy: UnwrapRef['sortBy']>\n pageCount: number\n toggleSort: ReturnType['toggleSort']\n setItemsPerPage: ReturnType['setItemsPerPage']\n someSelected: boolean\n allSelected: boolean\n isSelected: ReturnType['isSelected']\n select: ReturnType['select']\n selectAll: ReturnType['selectAll']\n toggleSelect: ReturnType['toggleSelect']\n isExpanded: ReturnType['isExpanded']\n toggleExpand: ReturnType['toggleExpand']\n isGroupOpen: ReturnType['isGroupOpen']\n toggleGroup: ReturnType['toggleGroup']\n items: readonly T[]\n internalItems: readonly DataTableItem[]\n groupedItems: readonly (DataTableItem | Group> | GroupSummary>)[]\n columns: InternalDataTableHeader[]\n headers: InternalDataTableHeader[][]\n}\n\nexport type VDataTableSlots = VDataTableRowsSlots & VDataTableHeadersSlots & {\n default: VDataTableSlotProps\n colgroup: VDataTableSlotProps\n top: VDataTableSlotProps\n body: VDataTableSlotProps\n tbody: VDataTableSlotProps\n thead: VDataTableSlotProps\n tfoot: VDataTableSlotProps\n bottom: VDataTableSlotProps\n 'body.prepend': VDataTableSlotProps\n 'body.append': VDataTableSlotProps\n 'footer.prepend': never\n}\n\nexport const makeDataTableProps = propsFactory({\n ...makeVDataTableRowsProps(),\n\n hideDefaultBody: Boolean,\n hideDefaultFooter: Boolean,\n hideDefaultHeader: Boolean,\n width: [String, Number],\n search: String,\n\n ...makeDataTableExpandProps(),\n ...makeDataTableGroupProps(),\n ...makeDataTableHeaderProps(),\n ...makeDataTableItemsProps(),\n ...makeDataTableSelectProps(),\n ...makeDataTableSortProps(),\n ...omit(makeVDataTableHeadersProps(), ['multiSort', 'initialSortOrder']),\n ...makeVTableProps(),\n}, 'DataTable')\n\nexport const makeVDataTableProps = propsFactory({\n ...makeDataTablePaginateProps(),\n ...makeDataTableProps(),\n ...makeFilterProps(),\n ...makeVDataTableFooterProps(),\n}, 'VDataTable')\n\ntype ItemType = T extends readonly (infer U)[] ? U : never\n\nexport const VDataTable = genericComponent(\n props: {\n items?: T\n itemValue?: SelectItemKey>\n rowProps?: RowProps>\n cellProps?: CellProps>\n itemSelectable?: SelectItemKey>\n headers?: DeepReadonly>[]>\n modelValue?: V\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: VDataTableSlots>,\n) => GenericProps>()({\n name: 'VDataTable',\n\n props: makeVDataTableProps(),\n\n emits: {\n 'update:modelValue': (value: any[]) => true,\n 'update:page': (value: number) => true,\n 'update:itemsPerPage': (value: number) => true,\n 'update:sortBy': (value: any) => true,\n 'update:options': (value: any) => true,\n 'update:groupBy': (value: any) => true,\n 'update:expanded': (value: any) => true,\n 'update:currentItems': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { groupBy } = createGroupBy(props)\n const { initialSortOrder, sortBy, multiSort, mustSort } = createSort(props)\n const { page, itemsPerPage } = createPagination(props)\n const { disableSort } = toRefs(props)\n\n const {\n columns,\n headers,\n sortFunctions,\n sortRawFunctions,\n filterFunctions,\n } = createHeaders(props, {\n groupBy,\n showSelect: toRef(() => props.showSelect),\n showExpand: toRef(() => props.showExpand),\n })\n\n const { items } = useDataTableItems(props, columns)\n\n const search = toRef(() => props.search)\n const { filteredItems } = useFilter(props, items, search, {\n transform: item => item.columns,\n customKeyFilter: filterFunctions,\n })\n\n const { toggleSort } = provideSort({ initialSortOrder, sortBy, multiSort, mustSort, page })\n const { sortByWithGroups, opened, extractRows, isGroupOpen, toggleGroup } = provideGroupBy({ groupBy, sortBy, disableSort })\n\n const { sortedItems } = useSortedItems(props, filteredItems, sortByWithGroups, {\n transform: item => ({ ...item.raw, ...item.columns }),\n sortFunctions,\n sortRawFunctions,\n })\n const { flatItems } = useGroupedItems(sortedItems, groupBy, opened, () => !!slots['group-summary'])\n const itemsLength = computed(() => flatItems.value.length)\n\n const { startIndex, stopIndex, pageCount, setItemsPerPage } = providePagination({ page, itemsPerPage, itemsLength })\n const { paginatedItems } = usePaginatedItems({ items: flatItems, startIndex, stopIndex, itemsPerPage })\n\n const paginatedItemsWithoutGroups = computed(() => extractRows(paginatedItems.value))\n\n const {\n isSelected,\n select,\n selectAll,\n toggleSelect,\n someSelected,\n allSelected,\n } = provideSelection(props, { allItems: items, currentPage: paginatedItemsWithoutGroups })\n\n const { isExpanded, toggleExpand } = provideExpanded(props)\n\n useOptions({\n page,\n itemsPerPage,\n sortBy,\n groupBy,\n search,\n })\n\n provideDefaults({\n VDataTableRows: {\n hideNoData: toRef(() => props.hideNoData),\n noDataText: toRef(() => props.noDataText),\n loading: toRef(() => props.loading),\n loadingText: toRef(() => props.loadingText),\n },\n })\n\n const slotProps = computed>(() => ({\n page: page.value,\n itemsPerPage: itemsPerPage.value,\n sortBy: sortBy.value,\n pageCount: pageCount.value,\n toggleSort,\n setItemsPerPage,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n isSelected,\n select,\n selectAll,\n toggleSelect,\n isExpanded,\n toggleExpand,\n isGroupOpen,\n toggleGroup,\n items: paginatedItemsWithoutGroups.value.map(item => item.raw),\n internalItems: paginatedItemsWithoutGroups.value,\n groupedItems: paginatedItems.value,\n columns: columns.value,\n headers: headers.value,\n }))\n\n useRender(() => {\n const dataTableFooterProps = VDataTableFooter.filterProps(props)\n const dataTableHeadersProps = VDataTableHeaders.filterProps(omit(props, ['multiSort']))\n const dataTableRowsProps = VDataTableRows.filterProps(props)\n const tableProps = VTable.filterProps(props)\n\n return (\n \n {{\n top: () => slots.top?.(slotProps.value),\n default: () => slots.default ? slots.default(slotProps.value) : (\n <>\n { slots.colgroup?.(slotProps.value) }\n { !props.hideDefaultHeader && (\n \n \n \n )}\n { slots.thead?.(slotProps.value) }\n { !props.hideDefaultBody && (\n \n { slots['body.prepend']?.(slotProps.value) }\n { slots.body ? slots.body(slotProps.value) : (\n \n )}\n { slots['body.append']?.(slotProps.value) }\n \n )}\n { slots.tbody?.(slotProps.value) }\n { slots.tfoot?.(slotProps.value) }\n \n ),\n bottom: () => slots.bottom ? slots.bottom(slotProps.value) : !props.hideDefaultFooter && (\n <>\n \n\n \n \n ),\n }}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VDataTable = InstanceType\n", "// Styles\nimport './VDataTableFooter.sass'\n\n// Components\nimport { VPagination } from '@/components/VPagination'\nimport { VSelect } from '@/components/VSelect'\n\n// Composables\nimport { usePagination } from './composables/paginate'\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const makeVDataTableFooterProps = propsFactory({\n color: String,\n prevIcon: {\n type: IconValue,\n default: '$prev',\n },\n nextIcon: {\n type: IconValue,\n default: '$next',\n },\n firstIcon: {\n type: IconValue,\n default: '$first',\n },\n lastIcon: {\n type: IconValue,\n default: '$last',\n },\n itemsPerPageText: {\n type: String,\n default: '$vuetify.dataFooter.itemsPerPageText',\n },\n pageText: {\n type: String,\n default: '$vuetify.dataFooter.pageText',\n },\n firstPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.firstPage',\n },\n prevPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.prevPage',\n },\n nextPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.nextPage',\n },\n lastPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.lastPage',\n },\n itemsPerPageOptions: {\n type: Array as PropType,\n default: () => ([\n { value: 10, title: '10' },\n { value: 25, title: '25' },\n { value: 50, title: '50' },\n { value: 100, title: '100' },\n { value: -1, title: '$vuetify.dataFooter.itemsPerPageAll' },\n ]),\n },\n showCurrentPage: Boolean,\n}, 'VDataTableFooter')\n\nexport const VDataTableFooter = genericComponent<{ prepend: never }>()({\n name: 'VDataTableFooter',\n\n props: makeVDataTableFooterProps(),\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const { page, pageCount, startIndex, stopIndex, itemsLength, itemsPerPage, setItemsPerPage } = usePagination()\n\n const itemsPerPageOptions = computed(() => (\n props.itemsPerPageOptions.map(option => {\n if (typeof option === 'number') {\n return {\n value: option,\n title: option === -1\n ? t('$vuetify.dataFooter.itemsPerPageAll')\n : String(option),\n }\n }\n\n return {\n ...option,\n title: !isNaN(Number(option.title)) ? option.title : t(option.title),\n }\n })\n ))\n\n useRender(() => {\n const paginationProps = VPagination.filterProps(props)\n\n return (\n
\n { slots.prepend?.() }\n\n \n\n \n\n \n
\n )\n })\n\n return {}\n },\n})\n\nexport type VDataTableFooter = InstanceType\n", "// Styles\nimport './VPagination.sass'\n\n// Components\nimport { VBtn } from '../VBtn'\n\n// Composables\nimport { useDisplay } from '@/composables'\nimport { makeBorderProps } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps } from '@/composables/density'\nimport { makeElevationProps } from '@/composables/elevation'\nimport { IconValue } from '@/composables/icons'\nimport { useLocale, useRtl } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useRefs } from '@/composables/refs'\nimport { useResizeObserver } from '@/composables/resizeObserver'\nimport { makeRoundedProps } from '@/composables/rounded'\nimport { makeSizeProps } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeVariantProps } from '@/composables/variant'\n\n// Utilities\nimport { computed, nextTick, shallowRef, toRef } from 'vue'\nimport { createRange, genericComponent, keyValues, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComponentPublicInstance } from 'vue'\n\ntype ItemSlot = {\n isActive: boolean\n key: string | number\n page: string\n props: Record\n}\n\ntype ControlSlot = {\n icon: IconValue\n onClick: (e: Event) => void\n disabled: boolean\n 'aria-label': string\n 'aria-disabled': boolean\n}\n\nexport type VPaginationSlots = {\n item: ItemSlot\n first: ControlSlot\n prev: ControlSlot\n next: ControlSlot\n last: ControlSlot\n}\n\nexport const makeVPaginationProps = propsFactory({\n activeColor: String,\n start: {\n type: [Number, String],\n default: 1,\n },\n modelValue: {\n type: Number,\n default: (props: any) => props.start as number,\n },\n disabled: Boolean,\n length: {\n type: [Number, String],\n default: 1,\n validator: (val: number) => val % 1 === 0,\n },\n totalVisible: [Number, String],\n firstIcon: {\n type: IconValue,\n default: '$first',\n },\n prevIcon: {\n type: IconValue,\n default: '$prev',\n },\n nextIcon: {\n type: IconValue,\n default: '$next',\n },\n lastIcon: {\n type: IconValue,\n default: '$last',\n },\n ariaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.root',\n },\n pageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.page',\n },\n currentPageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.currentPage',\n },\n firstAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.first',\n },\n previousAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.previous',\n },\n nextAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.next',\n },\n lastAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.last',\n },\n ellipsis: {\n type: String,\n default: '...',\n },\n showFirstLastPage: Boolean,\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeSizeProps(),\n ...makeTagProps({ tag: 'nav' }),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'text' } as const),\n}, 'VPagination')\n\nexport const VPagination = genericComponent()({\n name: 'VPagination',\n\n props: makeVPaginationProps(),\n\n emits: {\n 'update:modelValue': (value: number) => true,\n first: (value: number) => true,\n prev: (value: number) => true,\n next: (value: number) => true,\n last: (value: number) => true,\n },\n\n setup (props, { slots, emit }) {\n const page = useProxiedModel(props, 'modelValue')\n const { t, n } = useLocale()\n const { isRtl } = useRtl()\n const { themeClasses } = provideTheme(props)\n const { width } = useDisplay()\n const maxButtons = shallowRef(-1)\n\n provideDefaults(undefined, { scoped: true })\n\n const { resizeRef } = useResizeObserver((entries: ResizeObserverEntry[]) => {\n if (!entries.length) return\n\n const { target, contentRect } = entries[0]\n\n const firstItem = target.querySelector('.v-pagination__list > *') as HTMLElement\n\n if (!firstItem) return\n\n const totalWidth = contentRect.width\n const itemWidth =\n firstItem.offsetWidth +\n parseFloat(getComputedStyle(firstItem).marginRight) * 2\n\n maxButtons.value = getMax(totalWidth, itemWidth)\n })\n\n const length = computed(() => parseInt(props.length, 10))\n const start = computed(() => parseInt(props.start, 10))\n\n const totalVisible = computed(() => {\n if (props.totalVisible != null) return parseInt(props.totalVisible, 10)\n else if (maxButtons.value >= 0) return maxButtons.value\n return getMax(width.value, 58)\n })\n\n function getMax (totalWidth: number, itemWidth: number) {\n const minButtons = props.showFirstLastPage ? 5 : 3\n return Math.max(0, Math.floor(\n // Round to two decimal places to avoid floating point errors\n Number(((totalWidth - itemWidth * minButtons) / itemWidth).toFixed(2))\n ))\n }\n\n const range = computed(() => {\n if (length.value <= 0 || isNaN(length.value) || length.value > Number.MAX_SAFE_INTEGER) return []\n\n if (totalVisible.value <= 0) return []\n else if (totalVisible.value === 1) return [page.value]\n\n if (length.value <= totalVisible.value) {\n return createRange(length.value, start.value)\n }\n\n const even = totalVisible.value % 2 === 0\n const middle = even ? totalVisible.value / 2 : Math.floor(totalVisible.value / 2)\n const left = even ? middle : middle + 1\n const right = length.value - middle\n\n if (left - page.value >= 0) {\n return [...createRange(Math.max(1, totalVisible.value - 1), start.value), props.ellipsis, length.value]\n } else if (page.value - right >= (even ? 1 : 0)) {\n const rangeLength = totalVisible.value - 1\n const rangeStart = length.value - rangeLength + start.value\n return [start.value, props.ellipsis, ...createRange(rangeLength, rangeStart)]\n } else {\n const rangeLength = Math.max(1, totalVisible.value - 2)\n const rangeStart = rangeLength === 1 ? page.value : page.value - Math.ceil(rangeLength / 2) + start.value\n return [start.value, props.ellipsis, ...createRange(rangeLength, rangeStart), props.ellipsis, length.value]\n }\n })\n\n // TODO: 'first' | 'prev' | 'next' | 'last' does not work here?\n function setValue (e: Event, value: number, event?: any) {\n e.preventDefault()\n page.value = value\n event && emit(event, value)\n }\n\n const { refs, updateRef } = useRefs()\n\n provideDefaults({\n VPaginationBtn: {\n color: toRef(() => props.color),\n border: toRef(() => props.border),\n density: toRef(() => props.density),\n size: toRef(() => props.size),\n variant: toRef(() => props.variant),\n rounded: toRef(() => props.rounded),\n elevation: toRef(() => props.elevation),\n },\n })\n\n const items = computed(() => {\n return range.value.map((item, index) => {\n const ref = (e: any) => updateRef(e, index)\n\n if (typeof item === 'string') {\n return {\n isActive: false,\n key: `ellipsis-${index}`,\n page: item,\n props: {\n ref,\n ellipsis: true,\n icon: true,\n disabled: true,\n },\n }\n } else {\n const isActive = item === page.value\n return {\n isActive,\n key: item,\n page: n(item),\n props: {\n ref,\n ellipsis: false,\n icon: true,\n disabled: !!props.disabled || Number(props.length) < 2,\n color: isActive ? props.activeColor : props.color,\n 'aria-current': isActive,\n 'aria-label': t(isActive ? props.currentPageAriaLabel : props.pageAriaLabel, item),\n onClick: (e: Event) => setValue(e, item),\n },\n }\n }\n })\n })\n\n const controls = computed(() => {\n const prevDisabled = !!props.disabled || page.value <= start.value\n const nextDisabled = !!props.disabled || page.value >= start.value + length.value - 1\n\n return {\n first: props.showFirstLastPage ? {\n icon: isRtl.value ? props.lastIcon : props.firstIcon,\n onClick: (e: Event) => setValue(e, start.value, 'first'),\n disabled: prevDisabled,\n 'aria-label': t(props.firstAriaLabel),\n 'aria-disabled': prevDisabled,\n } : undefined,\n prev: {\n icon: isRtl.value ? props.nextIcon : props.prevIcon,\n onClick: (e: Event) => setValue(e, page.value - 1, 'prev'),\n disabled: prevDisabled,\n 'aria-label': t(props.previousAriaLabel),\n 'aria-disabled': prevDisabled,\n },\n next: {\n icon: isRtl.value ? props.prevIcon : props.nextIcon,\n onClick: (e: Event) => setValue(e, page.value + 1, 'next'),\n disabled: nextDisabled,\n 'aria-label': t(props.nextAriaLabel),\n 'aria-disabled': nextDisabled,\n },\n last: props.showFirstLastPage ? {\n icon: isRtl.value ? props.firstIcon : props.lastIcon,\n onClick: (e: Event) => setValue(e, start.value + length.value - 1, 'last'),\n disabled: nextDisabled,\n 'aria-label': t(props.lastAriaLabel),\n 'aria-disabled': nextDisabled,\n } : undefined,\n }\n })\n\n function updateFocus () {\n const currentIndex = page.value - start.value\n refs.value[currentIndex]?.$el.focus()\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key === keyValues.left && !props.disabled && page.value > Number(props.start)) {\n page.value = page.value - 1\n nextTick(updateFocus)\n } else if (e.key === keyValues.right && !props.disabled && page.value < start.value + length.value - 1) {\n page.value = page.value + 1\n nextTick(updateFocus)\n }\n }\n\n useRender(() => (\n \n
    \n { props.showFirstLastPage && (\n
  • \n { slots.first ? slots.first(controls.value.first!) : (\n \n )}\n
  • \n )}\n\n
  • \n { slots.prev ? slots.prev(controls.value.prev) : (\n \n )}\n
  • \n\n { items.value.map((item, index) => (\n \n { slots.item ? slots.item(item) : (\n { item.page }\n )}\n \n ))}\n\n \n { slots.next ? slots.next(controls.value.next) : (\n \n )}\n \n\n { props.showFirstLastPage && (\n \n { slots.last ? slots.last(controls.value.last!) : (\n \n )}\n \n )}\n
\n \n ))\n\n return {}\n },\n})\n\nexport type VPagination = InstanceType\n", "// Utilities\nimport { onBeforeUpdate, ref } from 'vue'\n\n// Types\nimport type { Ref } from 'vue'\n\nexport function useRefs () {\n const refs = ref<(T | undefined)[]>([]) as Ref<(T | undefined)[]>\n\n onBeforeUpdate(() => (refs.value = []))\n\n function updateRef (e: any, i: number) {\n refs.value[i] = e\n }\n\n return { refs, updateRef }\n}\n", "// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject, provide, watch } from 'vue'\nimport { clamp, getCurrentInstance, propsFactory } from '@/util'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\nimport type { Group, GroupSummary } from './group'\nimport type { EventProp } from '@/util'\n\nexport const makeDataTablePaginateProps = propsFactory({\n page: {\n type: [Number, String],\n default: 1,\n },\n itemsPerPage: {\n type: [Number, String],\n default: 10,\n },\n}, 'DataTable-paginate')\n\nconst VDataTablePaginationSymbol: InjectionKey<{\n page: Ref\n itemsPerPage: Ref\n startIndex: Ref\n stopIndex: Ref\n pageCount: Ref\n itemsLength: Ref\n prevPage: () => void\n nextPage: () => void\n setPage: (value: number) => void\n setItemsPerPage: (value: number) => void\n}> = Symbol.for('vuetify:data-table-pagination')\n\ntype PaginationProps = {\n page: number | string\n 'onUpdate:page': EventProp | undefined\n itemsPerPage: number | string\n 'onUpdate:itemsPerPage': EventProp | undefined\n itemsLength?: number | string\n}\n\nexport function createPagination (props: PaginationProps) {\n const page = useProxiedModel(props, 'page', undefined, value => Number(value ?? 1))\n const itemsPerPage = useProxiedModel(props, 'itemsPerPage', undefined, value => Number(value ?? 10))\n\n return { page, itemsPerPage }\n}\n\nexport function providePagination (options: {\n page: Ref\n itemsPerPage: Ref\n itemsLength: Ref\n}) {\n const { page, itemsPerPage, itemsLength } = options\n\n const startIndex = computed(() => {\n if (itemsPerPage.value === -1) return 0\n\n return itemsPerPage.value * (page.value - 1)\n })\n const stopIndex = computed(() => {\n if (itemsPerPage.value === -1) return itemsLength.value\n\n return Math.min(itemsLength.value, startIndex.value + itemsPerPage.value)\n })\n\n const pageCount = computed(() => {\n if (itemsPerPage.value === -1 || itemsLength.value === 0) return 1\n\n return Math.ceil(itemsLength.value / itemsPerPage.value)\n })\n\n // Don't run immediately, items may not have been loaded yet: #17966\n watch([page, pageCount], () => {\n if (page.value > pageCount.value) {\n page.value = pageCount.value\n }\n })\n\n function setItemsPerPage (value: number) {\n itemsPerPage.value = value\n page.value = 1\n }\n\n function nextPage () {\n page.value = clamp(page.value + 1, 1, pageCount.value)\n }\n\n function prevPage () {\n page.value = clamp(page.value - 1, 1, pageCount.value)\n }\n\n function setPage (value: number) {\n page.value = clamp(value, 1, pageCount.value)\n }\n\n const data = { page, itemsPerPage, startIndex, stopIndex, pageCount, itemsLength, nextPage, prevPage, setPage, setItemsPerPage }\n\n provide(VDataTablePaginationSymbol, data)\n\n return data\n}\n\nexport function usePagination () {\n const data = inject(VDataTablePaginationSymbol)\n\n if (!data) throw new Error('Missing pagination!')\n\n return data\n}\n\nexport function usePaginatedItems (options: {\n items: Ref | GroupSummary)[]>\n startIndex: Ref\n stopIndex: Ref\n itemsPerPage: Ref\n}) {\n const vm = getCurrentInstance('usePaginatedItems')\n\n const { items, startIndex, stopIndex, itemsPerPage } = options\n const paginatedItems = computed(() => {\n if (itemsPerPage.value <= 0) return items.value\n\n return items.value.slice(startIndex.value, stopIndex.value)\n })\n\n watch(paginatedItems, val => {\n vm.emit('update:currentItems', val)\n }, { immediate: true })\n\n return { paginatedItems }\n}\n", "// Utilities\nimport { convertToUnit, defineFunctionalComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VDataTableColumn = defineFunctionalComponent({\n align: {\n type: String as PropType<'start' | 'center' | 'end'>,\n default: 'start',\n },\n fixed: {\n type: [Boolean, String] as PropType,\n default: false,\n },\n fixedOffset: [Number, String],\n fixedEndOffset: [Number, String],\n height: [Number, String],\n lastFixed: Boolean,\n firstFixedEnd: Boolean,\n\n noPadding: Boolean,\n indent: [Number, String],\n empty: Boolean,\n\n tag: String,\n width: [Number, String],\n maxWidth: [Number, String],\n nowrap: Boolean,\n}, (props, { slots }) => {\n const Tag = props.tag ?? 'td'\n\n const fixedSide = typeof props.fixed === 'string' ? props.fixed\n : props.fixed ? 'start'\n : 'none'\n\n return (\n \n { slots.default?.() }\n \n )\n})\n", "// Utilities\nimport { capitalize, inject, provide, ref, watchEffect } from 'vue'\nimport { consoleError, propsFactory } from '@/util'\n\n// Types\nimport type { DeepReadonly, InjectionKey, PropType, Ref } from 'vue'\nimport type { SortItem } from './sort'\nimport type { DataTableCompareFunction, DataTableHeader, InternalDataTableHeader } from '../types'\nimport type { FilterKeyFunctions } from '@/composables/filter'\n\nexport const makeDataTableHeaderProps = propsFactory({\n headers: Array as PropType>,\n}, 'DataTable-header')\n\nexport const VDataTableHeadersSymbol: InjectionKey<{\n headers: Ref\n columns: Ref\n}> = Symbol.for('vuetify:data-table-headers')\n\ntype HeaderProps = {\n headers: DeepReadonly | undefined\n items: any[]\n}\n\nconst defaultHeader = { title: '', sortable: false }\nconst defaultActionHeader = { ...defaultHeader, width: 48 }\n\nfunction priorityQueue (arr: T[] = []) {\n const queue: { element: T, priority: number }[] = arr.map(element => ({ element, priority: 0 }))\n\n return {\n enqueue: (element: T, priority: number) => {\n let added = false\n for (let i = 0; i < queue.length; i++) {\n const item = queue[i]\n if (item.priority > priority) {\n queue.splice(i, 0, { element, priority })\n added = true\n break\n }\n }\n\n if (!added) queue.push({ element, priority })\n },\n size: () => queue.length,\n count: () => {\n let count = 0\n\n if (!queue.length) return 0\n\n const whole = Math.floor(queue[0].priority)\n for (let i = 0; i < queue.length; i++) {\n if (Math.floor(queue[i].priority) === whole) count += 1\n }\n\n return count\n },\n dequeue: () => {\n return queue.shift()\n },\n }\n}\n\nfunction extractLeaves (item: InternalDataTableHeader, columns: InternalDataTableHeader[] = []) {\n if (!item.children) {\n columns.push(item)\n } else {\n for (const child of item.children) {\n extractLeaves(child, columns)\n }\n }\n\n return columns\n}\n\nfunction extractKeys (headers: DeepReadonly, keys = new Set()) {\n for (const item of headers) {\n if (item.key) keys.add(item.key)\n\n if (item.children) {\n extractKeys(item.children, keys)\n }\n }\n\n return keys\n}\n\nfunction getDefaultItem (item: DeepReadonly) {\n if (!item.key) return undefined\n if (item.key === 'data-table-group') return defaultHeader\n if (['data-table-expand', 'data-table-select'].includes(item.key)) return defaultActionHeader\n return undefined\n}\n\nfunction getDepth (item: InternalDataTableHeader, depth = 0): number {\n if (!item.children) return depth\n\n return Math.max(depth, ...item.children.map(child => getDepth(child, depth + 1)))\n}\n\nfunction parseFixedColumns (items: InternalDataTableHeader[]) {\n let seenFixed = false\n\n function setFixed (\n item: InternalDataTableHeader,\n side: 'start' | 'end',\n parentFixedSide: 'start' | 'end' | 'none' = 'none'\n ) {\n if (!item) return\n\n if (parentFixedSide !== 'none') {\n item.fixed = parentFixedSide\n }\n\n // normalize to simplify logic below\n if (item.fixed === true) {\n item.fixed = 'start'\n }\n\n if (item.fixed === side) {\n if (item.children) {\n if (side === 'start') {\n for (let i = item.children.length - 1; i >= 0; i--) {\n setFixed(item.children[i], side, side)\n }\n } else {\n for (let i = 0; i < item.children.length; i++) {\n setFixed(item.children[i], side, side)\n }\n }\n } else {\n if (!seenFixed && side === 'start') {\n item.lastFixed = true\n } else if (!seenFixed && side === 'end') {\n item.firstFixedEnd = true\n } else if (isNaN(Number(item.width))) {\n consoleError(`Multiple fixed columns should have a static width (key: ${item.key})`)\n } else {\n item.minWidth = Math.max(Number(item.width) || 0, Number(item.minWidth) || 0)\n }\n seenFixed = true\n }\n } else {\n if (item.children) {\n if (side === 'start') {\n for (let i = item.children.length - 1; i >= 0; i--) {\n setFixed(item.children[i], side)\n }\n } else {\n for (let i = 0; i < item.children.length; i++) {\n setFixed(item.children[i], side)\n }\n }\n } else {\n seenFixed = false\n }\n }\n }\n\n for (let i = items.length - 1; i >= 0; i--) {\n setFixed(items[i], 'start')\n }\n\n for (let i = 0; i < items.length; i++) {\n setFixed(items[i], 'end')\n }\n\n let fixedOffset = 0\n for (let i = 0; i < items.length; i++) {\n fixedOffset = setFixedOffset(items[i], fixedOffset)\n }\n\n let fixedEndOffset = 0\n for (let i = items.length - 1; i >= 0; i--) {\n fixedEndOffset = setFixedEndOffset(items[i], fixedEndOffset)\n }\n}\n\nfunction setFixedOffset (item: InternalDataTableHeader, offset = 0) {\n if (!item) return offset\n\n if (item.children) {\n item.fixedOffset = offset\n for (const child of item.children) {\n offset = setFixedOffset(child, offset)\n }\n } else if (item.fixed && item.fixed !== 'end') {\n item.fixedOffset = offset\n offset += parseFloat(item.width || '0') || 0\n }\n\n return offset\n}\n\nfunction setFixedEndOffset (item: InternalDataTableHeader, offset = 0) {\n if (!item) return offset\n\n if (item.children) {\n item.fixedEndOffset = offset\n for (const child of item.children) {\n offset = setFixedEndOffset(child, offset)\n }\n } else if (item.fixed === 'end') {\n item.fixedEndOffset = offset\n offset += parseFloat(item.width || '0') || 0\n }\n\n return offset\n}\n\nfunction parse (items: InternalDataTableHeader[], maxDepth: number) {\n const headers: InternalDataTableHeader[][] = []\n let currentDepth = 0\n const queue = priorityQueue(items)\n\n while (queue.size() > 0) {\n let rowSize = queue.count()\n const row: InternalDataTableHeader[] = []\n let fraction = 1\n while (rowSize > 0) {\n const { element: item, priority } = queue.dequeue()!\n const diff = maxDepth - currentDepth - getDepth(item)\n\n row.push({\n ...item,\n rowspan: diff ?? 1,\n colspan: item.children ? extractLeaves(item).length : 1,\n })\n\n if (item.children) {\n for (const child of item.children) {\n // This internally sorts items that are on the same priority \"row\"\n const sort = priority % 1 + (fraction / Math.pow(10, currentDepth + 2))\n queue.enqueue(child, currentDepth + diff + sort)\n }\n }\n\n fraction += 1\n rowSize -= 1\n }\n currentDepth += 1\n headers.push(row)\n }\n\n const columns = items.map(item => extractLeaves(item)).flat()\n\n return { columns, headers }\n}\n\nfunction convertToInternalHeaders (items: DeepReadonly) {\n const internalHeaders: InternalDataTableHeader[] = []\n for (const item of items) {\n const defaultItem = { ...getDefaultItem(item), ...item }\n const key = defaultItem.key ?? (typeof defaultItem.value === 'string' ? defaultItem.value : null)\n const value = defaultItem.value ?? key ?? null\n const internalItem: InternalDataTableHeader = {\n ...defaultItem,\n key,\n value,\n sortable: defaultItem.sortable ?? (defaultItem.key != null || !!defaultItem.sort),\n children: defaultItem.children ? convertToInternalHeaders(defaultItem.children) : undefined,\n }\n\n internalHeaders.push(internalItem)\n }\n\n return internalHeaders\n}\n\nexport function createHeaders (\n props: HeaderProps,\n options?: {\n groupBy?: Ref\n showSelect?: Ref\n showExpand?: Ref\n }\n) {\n const headers = ref([])\n const columns = ref([])\n const sortFunctions = ref>({})\n const sortRawFunctions = ref>({})\n const filterFunctions = ref({})\n\n watchEffect(() => {\n const _headers = props.headers ||\n Object.keys(props.items[0] ?? {}).map(key => ({ key, title: capitalize(key) })) as never\n\n const items = _headers.slice()\n const keys = extractKeys(items)\n\n if (options?.groupBy?.value.length && !keys.has('data-table-group')) {\n items.unshift({ key: 'data-table-group', title: 'Group' })\n }\n\n if (options?.showSelect?.value && !keys.has('data-table-select')) {\n items.unshift({ key: 'data-table-select' })\n }\n\n if (options?.showExpand?.value && !keys.has('data-table-expand')) {\n items.push({ key: 'data-table-expand' })\n }\n\n const internalHeaders = convertToInternalHeaders(items)\n\n parseFixedColumns(internalHeaders)\n\n const maxDepth = Math.max(...internalHeaders.map(item => getDepth(item))) + 1\n const parsed = parse(internalHeaders, maxDepth)\n\n headers.value = parsed.headers\n columns.value = parsed.columns\n\n const flatHeaders = parsed.headers.flat(1)\n\n for (const header of flatHeaders) {\n if (!header.key) continue\n\n if (header.sortable) {\n if (header.sort) {\n sortFunctions.value[header.key] = header.sort\n }\n\n if (header.sortRaw) {\n sortRawFunctions.value[header.key] = header.sortRaw\n }\n }\n\n if (header.filter) {\n filterFunctions.value[header.key] = header.filter\n }\n }\n })\n\n const data = { headers, columns, sortFunctions, sortRawFunctions, filterFunctions }\n\n provide(VDataTableHeadersSymbol, data)\n\n return data\n}\n\nexport function useHeaders () {\n const data = inject(VDataTableHeadersSymbol)\n\n if (!data) throw new Error('Missing headers!')\n\n return data\n}\n", "// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject, provide, shallowRef, toRef } from 'vue'\nimport { deepEqual, isPrimitive, propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType, Ref } from 'vue'\nimport type { DataTableItemProps } from './items'\nimport type { EventProp, ValueComparator } from '@/util'\n\nexport interface SelectableItem {\n value: any\n selectable: boolean\n}\n\nexport interface DataTableSelectStrategy {\n showSelectAll: boolean\n allSelected: (data: {\n allItems: SelectableItem[]\n currentPage: SelectableItem[]\n }) => SelectableItem[]\n select: (data: {\n items: SelectableItem[]\n value: boolean\n selected: Set\n }) => Set\n selectAll: (data: {\n value: boolean\n allItems: SelectableItem[]\n currentPage: SelectableItem[]\n selected: Set\n }) => Set\n}\n\ntype SelectionProps = Pick & {\n modelValue: readonly any[]\n selectStrategy: 'single' | 'page' | 'all'\n valueComparator?: ValueComparator\n 'onUpdate:modelValue': EventProp<[any[]]> | undefined\n}\n\nconst singleSelectStrategy: DataTableSelectStrategy = {\n showSelectAll: false,\n allSelected: () => [],\n select: ({ items, value }) => {\n return new Set(value ? [items[0]?.value] : [])\n },\n selectAll: ({ selected }) => selected,\n}\n\nconst pageSelectStrategy: DataTableSelectStrategy = {\n showSelectAll: true,\n allSelected: ({ currentPage }) => currentPage,\n select: ({ items, value, selected }) => {\n for (const item of items) {\n if (value) selected.add(item.value)\n else selected.delete(item.value)\n }\n\n return selected\n },\n selectAll: ({ value, currentPage, selected }) => pageSelectStrategy.select({ items: currentPage, value, selected }),\n}\n\nconst allSelectStrategy: DataTableSelectStrategy = {\n showSelectAll: true,\n allSelected: ({ allItems }) => allItems,\n select: ({ items, value, selected }) => {\n for (const item of items) {\n if (value) selected.add(item.value)\n else selected.delete(item.value)\n }\n\n return selected\n },\n selectAll: ({ value, allItems }) => {\n return new Set(value ? allItems.map(item => item.value) : [])\n },\n}\n\nexport const makeDataTableSelectProps = propsFactory({\n showSelect: Boolean,\n selectStrategy: {\n type: [String, Object] as PropType<'single' | 'page' | 'all'>,\n default: 'page',\n },\n modelValue: {\n type: Array as PropType,\n default: () => ([]),\n },\n valueComparator: Function as PropType,\n}, 'DataTable-select')\n\nexport const VDataTableSelectionSymbol: InjectionKey> = Symbol.for('vuetify:data-table-selection')\n\nexport function provideSelection (\n props: SelectionProps,\n { allItems, currentPage }: { allItems: Ref, currentPage: Ref }\n) {\n const selected = useProxiedModel(props, 'modelValue', props.modelValue, v => {\n const customComparator = props.valueComparator\n if (customComparator) {\n return new Set(wrapInArray(v).map(v => {\n return allItems.value.find(item => customComparator(v, item.value))?.value ?? v\n }))\n }\n return new Set(wrapInArray(v).map(v => {\n return isPrimitive(v)\n ? allItems.value.find(item => v === item.value)?.value ?? v\n : allItems.value.find(item => deepEqual(v, item.value))?.value ?? v\n }))\n }, v => {\n return [...v.values()]\n })\n\n const allSelectable = computed(() => allItems.value.filter(item => item.selectable))\n const currentPageSelectable = computed(() => currentPage.value.filter(item => item.selectable))\n\n const selectStrategy = computed(() => {\n if (typeof props.selectStrategy === 'object') return props.selectStrategy\n\n switch (props.selectStrategy) {\n case 'single': return singleSelectStrategy\n case 'all': return allSelectStrategy\n case 'page':\n default: return pageSelectStrategy\n }\n })\n\n const lastSelectedIndex = shallowRef(null)\n\n function isSelected (items: SelectableItem | SelectableItem[]) {\n return wrapInArray(items).every(item => selected.value.has(item.value))\n }\n\n function isSomeSelected (items: SelectableItem | SelectableItem[]) {\n return wrapInArray(items).some(item => selected.value.has(item.value))\n }\n\n function select (items: SelectableItem[], value: boolean) {\n const newSelected = selectStrategy.value.select({\n items,\n value,\n selected: new Set(selected.value),\n })\n\n selected.value = newSelected\n }\n\n function toggleSelect (item: SelectableItem, index?: number, event?: MouseEvent) {\n const items = []\n index = index ?? currentPage.value.findIndex(i => i.value === item.value)\n\n if (props.selectStrategy !== 'single' && event?.shiftKey && lastSelectedIndex.value !== null) {\n const [start, end] = [lastSelectedIndex.value, index].sort((a, b) => a - b)\n\n items.push(...currentPage.value.slice(start, end + 1).filter(item => item.selectable))\n } else {\n items.push(item)\n lastSelectedIndex.value = index\n }\n\n select(items, !isSelected([item]))\n }\n\n function selectAll (value: boolean) {\n const newSelected = selectStrategy.value.selectAll({\n value,\n allItems: allSelectable.value,\n currentPage: currentPageSelectable.value,\n selected: new Set(selected.value),\n })\n\n selected.value = newSelected\n }\n\n const someSelected = computed(() => selected.value.size > 0)\n const allSelected = computed(() => {\n const items = selectStrategy.value.allSelected({\n allItems: allSelectable.value,\n currentPage: currentPageSelectable.value,\n })\n return !!items.length && isSelected(items)\n })\n const showSelectAll = toRef(() => selectStrategy.value.showSelectAll)\n\n const data = {\n toggleSelect,\n select,\n selectAll,\n isSelected,\n isSomeSelected,\n someSelected,\n allSelected,\n showSelectAll,\n lastSelectedIndex,\n selectStrategy,\n }\n\n provide(VDataTableSelectionSymbol, data)\n\n return data\n}\n\nexport function useSelection () {\n const data = inject(VDataTableSelectionSymbol)\n\n if (!data) throw new Error('Missing selection!')\n\n return data\n}\n", "// Composables\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject, provide, toRef } from 'vue'\nimport { getObjectValueByPath, isEmpty, isObject, propsFactory } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType, Ref } from 'vue'\nimport type { DataTableCompareFunction, InternalDataTableHeader } from '../types'\nimport type { InternalItem } from '@/composables/filter'\n\nexport const makeDataTableSortProps = propsFactory({\n initialSortOrder: {\n type: String as PropType<'asc' | 'desc'>,\n default: 'asc',\n validator: (v: any) => !v || ['asc', 'desc'].includes(v),\n },\n sortBy: {\n type: Array as PropType,\n default: () => ([]),\n },\n customKeySort: Object as PropType>,\n multiSort: {\n type: [Boolean, Object] as PropType,\n default: false,\n },\n mustSort: Boolean,\n}, 'DataTable-sort')\n\nconst VDataTableSortSymbol: InjectionKey<{\n sortBy: Ref\n toggleSort: (column: InternalDataTableHeader, event?: KeyboardEvent | PointerEvent) => void\n isSorted: (column: InternalDataTableHeader) => boolean\n}> = Symbol.for('vuetify:data-table-sort')\n\nexport type SortItem = { key: string, order?: boolean | 'asc' | 'desc' }\nexport type MultiSortProps = {\n key?: 'ctrl'\n mode?: MultiSortMode\n modifier?: 'alt' | 'shift'\n}\n\nexport type MultiSortMode = 'append' | 'prepend'\n\ntype SortProps = {\n initialSortOrder: 'asc' | 'desc'\n sortBy: readonly SortItem[]\n 'onUpdate:sortBy': ((value: any) => void) | undefined\n multiSort: boolean | MultiSortProps\n mustSort: boolean\n}\n\nexport function createSort (props: SortProps) {\n const initialSortOrder = toRef(() => props.initialSortOrder)\n const sortBy = useProxiedModel(props, 'sortBy')\n const mustSort = toRef(() => props.mustSort)\n const multiSort = toRef(() => props.multiSort)\n return { initialSortOrder, sortBy, multiSort, mustSort }\n}\n\nfunction resolveMultiSort (\n multiSort: boolean | MultiSortProps,\n event?: KeyboardEvent | PointerEvent\n): {\n active: boolean\n mode?: MultiSortMode\n } {\n if (!isObject(multiSort)) {\n return { active: !!multiSort }\n }\n\n const { key, mode, modifier } = multiSort\n const reverseMode = (modifier === 'alt' && event?.altKey) ||\n (modifier === 'shift' && event?.shiftKey)\n\n return {\n active: !key || event?.ctrlKey || event?.metaKey || false,\n mode: reverseMode ? (mode === 'append' ? 'prepend' : 'append') : mode,\n }\n}\n\nexport function provideSort (options: {\n initialSortOrder: Ref<'asc' | 'desc'>\n sortBy: Ref\n multiSort: Ref\n mustSort: Ref\n page?: Ref\n}) {\n const { initialSortOrder, sortBy, mustSort, multiSort, page } = options\n\n const toggleSort = (column: InternalDataTableHeader, event?: KeyboardEvent | PointerEvent) => {\n if (column.key == null) return\n\n let newSortBy = sortBy.value.map(x => ({ ...x })) ?? []\n const item = newSortBy.find(x => x.key === column.key)\n\n const initialOrder = initialSortOrder.value\n const secondaryOrder = initialSortOrder.value === 'desc' ? 'asc' : 'desc'\n if (!item) {\n const { active, mode } = resolveMultiSort(multiSort.value, event)\n if (active) {\n if (mode === 'prepend') {\n newSortBy.unshift({ key: column.key, order: initialOrder })\n } else {\n newSortBy.push({ key: column.key, order: initialOrder })\n }\n } else {\n newSortBy = [{ key: column.key, order: initialOrder }]\n }\n } else if (item.order === secondaryOrder) {\n if (mustSort.value && newSortBy.length === 1) {\n item.order = initialSortOrder.value\n } else {\n newSortBy = newSortBy.filter(x => x.key !== column.key)\n }\n } else {\n item.order = secondaryOrder\n }\n\n sortBy.value = newSortBy\n if (page) page.value = 1\n }\n\n function isSorted (column: InternalDataTableHeader) {\n return !!sortBy.value.find(item => item.key === column.key)\n }\n\n const data = { sortBy, toggleSort, isSorted }\n\n provide(VDataTableSortSymbol, data)\n\n return data\n}\n\nexport function useSort () {\n const data = inject(VDataTableSortSymbol)\n\n if (!data) throw new Error('Missing sort!')\n\n return data\n}\n\n// TODO: abstract into project composable\nexport function useSortedItems (\n props: {\n customKeySort: Record | undefined\n },\n items: Ref,\n sortBy: Ref,\n options?: {\n transform?: (item: T) => {}\n sortFunctions?: Ref | undefined>\n sortRawFunctions?: Ref | undefined>\n },\n) {\n const locale = useLocale()\n const sortedItems = computed(() => {\n if (!sortBy.value.length) return items.value\n\n return sortItems(items.value, sortBy.value, locale.current.value, {\n transform: options?.transform,\n sortFunctions: {\n ...props.customKeySort,\n ...options?.sortFunctions?.value,\n },\n sortRawFunctions: options?.sortRawFunctions?.value,\n })\n })\n\n return { sortedItems }\n}\n\nexport function sortItems (\n items: T[],\n sortByItems: readonly SortItem[],\n locale: string,\n options?: {\n transform?: (item: T) => Record\n sortFunctions?: Record\n sortRawFunctions?: Record\n },\n): T[] {\n const stringCollator = new Intl.Collator(locale, { sensitivity: 'accent', usage: 'sort' })\n\n const transformedItems = items.map(item => (\n [item, options?.transform ? options.transform(item) : item as never] as const)\n )\n\n return transformedItems.sort((a, b) => {\n for (let i = 0; i < sortByItems.length; i++) {\n let hasCustomResult = false\n const sortKey = sortByItems[i].key\n const sortOrder = sortByItems[i].order ?? 'asc'\n\n if (sortOrder === false) continue\n\n let sortA = getObjectValueByPath(a[1], sortKey)\n let sortB = getObjectValueByPath(b[1], sortKey)\n let sortARaw = a[0].raw\n let sortBRaw = b[0].raw\n\n if (sortOrder === 'desc') {\n [sortA, sortB] = [sortB, sortA]\n ;[sortARaw, sortBRaw] = [sortBRaw, sortARaw]\n }\n\n if (options?.sortRawFunctions?.[sortKey]) {\n const customResult = options.sortRawFunctions[sortKey](sortARaw, sortBRaw)\n\n if (customResult == null) continue\n hasCustomResult = true\n if (customResult) return customResult\n }\n\n if (options?.sortFunctions?.[sortKey]) {\n const customResult = options.sortFunctions[sortKey](sortA, sortB)\n\n if (customResult == null) continue\n hasCustomResult = true\n if (customResult) return customResult\n }\n\n if (hasCustomResult) continue\n\n // Dates should be compared numerically\n if (sortA instanceof Date && sortB instanceof Date) {\n sortA = sortA.getTime()\n sortB = sortB.getTime()\n }\n\n [sortA, sortB] = [sortA, sortB].map(s => s != null ? s.toString().toLocaleLowerCase() : s)\n\n if (sortA !== sortB) {\n if (isEmpty(sortA) && isEmpty(sortB)) return 0\n if (isEmpty(sortA)) return -1\n if (isEmpty(sortB)) return 1\n if (!isNaN(sortA) && !isNaN(sortB)) return Number(sortA) - Number(sortB)\n return stringCollator.compare(sortA, sortB)\n }\n }\n\n return 0\n }).map(([item]) => item)\n}\n", "// Components\nimport { VDataTableColumn } from './VDataTableColumn'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VIcon } from '@/components/VIcon'\nimport { VSelect } from '@/components/VSelect'\n\n// Composables\nimport { useHeaders } from './composables/headers'\nimport { useSelection } from './composables/select'\nimport { useSort } from './composables/sort'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeDensityProps } from '@/composables/density'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { IconValue } from '@/composables/icons'\nimport { LoaderSlot, makeLoaderProps, useLoader } from '@/composables/loader'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed, mergeProps } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { CSSProperties, PropType, UnwrapRef } from 'vue'\nimport type { provideSelection } from './composables/select'\nimport type { provideSort } from './composables/sort'\nimport type { InternalDataTableHeader } from './types'\nimport type { ItemProps } from '@/composables/list-items'\nimport type { LoaderSlotProps } from '@/composables/loader'\n\nexport type HeadersSlotProps = {\n headers: InternalDataTableHeader[][]\n columns: InternalDataTableHeader[]\n sortBy: UnwrapRef['sortBy']>\n someSelected: UnwrapRef['someSelected']>\n allSelected: UnwrapRef['allSelected']>\n toggleSort: ReturnType['toggleSort']\n selectAll: ReturnType['selectAll']\n getSortIcon: (column: InternalDataTableHeader) => IconValue\n isSorted: ReturnType['isSorted']\n}\n\nexport type VDataTableHeaderCellColumnSlotProps = {\n column: InternalDataTableHeader\n selectAll: ReturnType['selectAll']\n isSorted: ReturnType['isSorted']\n toggleSort: ReturnType['toggleSort']\n sortBy: UnwrapRef['sortBy']>\n someSelected: UnwrapRef['someSelected']>\n allSelected: UnwrapRef['allSelected']>\n getSortIcon: (column: InternalDataTableHeader) => IconValue\n}\n\nexport type VDataTableHeadersSlots = {\n headers: HeadersSlotProps\n loader: LoaderSlotProps\n 'header.data-table-select': VDataTableHeaderCellColumnSlotProps\n 'header.data-table-expand': VDataTableHeaderCellColumnSlotProps\n} & { [key: `header.${string}`]: VDataTableHeaderCellColumnSlotProps }\n\nexport const makeVDataTableHeadersProps = propsFactory({\n color: String,\n disableSort: Boolean,\n fixedHeader: Boolean,\n multiSort: Boolean,\n initialSortOrder: String as PropType<'asc' | 'desc'>,\n sortAscIcon: {\n type: IconValue,\n default: '$sortAsc',\n },\n sortDescIcon: {\n type: IconValue,\n default: '$sortDesc',\n },\n headerProps: {\n type: Object as PropType>,\n },\n\n /** @deprecated */\n sticky: Boolean,\n\n ...makeDensityProps(),\n ...makeDisplayProps(),\n ...makeLoaderProps(),\n}, 'VDataTableHeaders')\n\nexport const VDataTableHeaders = genericComponent()({\n name: 'VDataTableHeaders',\n\n props: makeVDataTableHeadersProps(),\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const { toggleSort, sortBy, isSorted } = useSort()\n const { someSelected, allSelected, selectAll, showSelectAll } = useSelection()\n const { columns, headers } = useHeaders()\n const { loaderClasses } = useLoader(props)\n\n function getFixedStyles (column: InternalDataTableHeader, y: number): CSSProperties | undefined {\n if (!(props.sticky || props.fixedHeader) && !column.fixed) return undefined\n\n const fixedSide = typeof column.fixed === 'string' ? column.fixed\n : column.fixed ? 'start'\n : 'none'\n\n return {\n position: 'sticky',\n left: fixedSide === 'start' ? convertToUnit(column.fixedOffset) : undefined,\n right: fixedSide === 'end' ? convertToUnit(column.fixedEndOffset) : undefined,\n top: (props.sticky || props.fixedHeader) ? `calc(var(--v-table-header-height) * ${y})` : undefined,\n }\n }\n function handleEnterKeyPress (event: KeyboardEvent, column: InternalDataTableHeader) {\n if (event.key === 'Enter' && !props.disableSort) {\n toggleSort(column, event)\n }\n }\n function getSortIcon (column: InternalDataTableHeader) {\n const item = sortBy.value.find(item => item.key === column.key)\n\n return (!item && props.initialSortOrder === 'asc') || item?.order === 'asc'\n ? props.sortAscIcon\n : props.sortDescIcon\n }\n\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n\n const { displayClasses, mobile } = useDisplay(props)\n\n const slotProps = computed(() => ({\n headers: headers.value,\n columns: columns.value,\n toggleSort,\n isSorted,\n sortBy: sortBy.value,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n selectAll,\n getSortIcon,\n } satisfies HeadersSlotProps))\n\n const headerCellClasses = computed(() => ([\n 'v-data-table__th',\n {\n 'v-data-table__th--sticky': (props.sticky || props.fixedHeader),\n },\n displayClasses.value,\n loaderClasses.value,\n ]))\n\n const VDataTableHeaderCell = ({ column, x, y }: { column: InternalDataTableHeader, x: number, y: number }) => {\n const noPadding = column.key === 'data-table-select' || column.key === 'data-table-expand'\n const isEmpty = column.key === 'data-table-group' && column.width === 0 && !column.title\n const headerProps = mergeProps(props.headerProps ?? {}, column.headerProps ?? {})\n\n return (\n toggleSort(column, event) : undefined }\n onKeydown={ column.sortable ? (event: KeyboardEvent) => handleEnterKeyPress(event, column) : undefined }\n { ...headerProps }\n >\n {{\n default: () => {\n const columnSlotName = `header.${column.key}` as const\n const columnSlotProps: VDataTableHeaderCellColumnSlotProps = {\n column,\n selectAll,\n isSorted,\n toggleSort,\n sortBy: sortBy.value,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n getSortIcon,\n }\n\n if (slots[columnSlotName]) return slots[columnSlotName]!(columnSlotProps)\n\n if (isEmpty) return ''\n\n if (column.key === 'data-table-select') {\n return slots['header.data-table-select']?.(columnSlotProps) ?? (showSelectAll.value && (\n \n ))\n }\n\n return (\n
\n { column.title }\n { column.sortable && !props.disableSort && (\n \n )}\n { props.multiSort && isSorted(column) && (\n \n { sortBy.value.findIndex(x => x.key === column.key) + 1 }\n
\n )}\n \n )\n },\n }}\n \n )\n }\n\n const VDataTableMobileHeaderCell = () => {\n const displayItems = computed(() => {\n return columns.value.filter(column => column?.sortable && !props.disableSort)\n })\n const showSelectColumn = columns.value.find(column => column.key === 'data-table-select')\n\n return (\n \n
\n sortBy.value = [] }\n >\n {{\n append: showSelectColumn ? () => (\n selectAll(!allSelected.value) }\n />\n ) : undefined,\n chip: props => (\n toggleSort(props.item.raw) : undefined }\n onMousedown={ (e: MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n }}\n >\n { props.item.title }\n \n \n ),\n }}\n \n
\n \n )\n }\n\n useRender(() => {\n return mobile.value ? (\n \n \n \n ) : (\n <>\n { slots.headers\n ? slots.headers(slotProps.value)\n : headers.value.map((row, y) => (\n \n { row.map((column, x) => (\n \n ))}\n \n ))}\n\n { props.loading && (\n \n \n \n \n \n )}\n \n )\n })\n },\n})\n\nexport type VDataTableHeaders = InstanceType\n", "// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject, provide, ref, toValue } from 'vue'\nimport { getObjectValueByPath, propsFactory } from '@/util'\n\n// Types\nimport type { InjectionKey, MaybeRefOrGetter, PropType, Ref } from 'vue'\nimport type { SortItem } from './sort'\nimport type { DataTableItem } from '../types'\n\nexport interface GroupableItem {\n type: 'item'\n raw: T\n}\n\nexport interface Group {\n type: 'group'\n depth: number\n id: string\n key: string\n value: any\n items: readonly (T | Group | GroupSummary)[]\n}\n\nexport interface GroupSummary {\n type: 'group-summary'\n depth: number\n id: string\n key: string\n value: any\n items: readonly (T | Group | GroupSummary)[]\n}\n\nexport const makeDataTableGroupProps = propsFactory({\n groupBy: {\n type: Array as PropType,\n default: () => ([]),\n },\n}, 'DataTable-group')\n\nconst VDataTableGroupSymbol: InjectionKey<{\n opened: Ref>\n toggleGroup: (group: Group) => void\n isGroupOpen: (group: Group) => boolean\n sortByWithGroups: Ref\n groupBy: Ref\n extractRows: (items: (DataTableItem | Group)[]) => DataTableItem[]\n}> = Symbol.for('vuetify:data-table-group')\n\ntype GroupProps = {\n groupBy: readonly SortItem[]\n 'onUpdate:groupBy': ((value: SortItem[]) => void) | undefined\n}\n\nexport function createGroupBy (props: GroupProps) {\n const groupBy = useProxiedModel(props, 'groupBy')\n\n return { groupBy }\n}\n\nexport function provideGroupBy (options: {\n groupBy: Ref\n sortBy: Ref\n disableSort?: Ref\n}) {\n const { disableSort, groupBy, sortBy } = options\n const opened = ref(new Set())\n\n const sortByWithGroups = computed(() => {\n return groupBy.value.map(val => ({\n ...val,\n order: val.order ?? false,\n })).concat(disableSort?.value ? [] : sortBy.value)\n })\n\n function isGroupOpen (group: Group) {\n return opened.value.has(group.id)\n }\n\n function toggleGroup (group: Group) {\n const newOpened = new Set(opened.value)\n if (!isGroupOpen(group)) newOpened.add(group.id)\n else newOpened.delete(group.id)\n\n opened.value = newOpened\n }\n\n function extractRows (items: readonly (T | Group | GroupSummary)[]) {\n function dive (group: Group): T[] {\n const arr = []\n\n for (const item of group.items) {\n if ('type' in item && item.type === 'group') {\n arr.push(...dive(item))\n } else {\n arr.push(item as T)\n }\n }\n\n return [...new Set(arr)]\n }\n return dive({ type: 'group', items, id: 'dummy', key: 'dummy', value: 'dummy', depth: 0 })\n }\n\n // onBeforeMount(() => {\n // for (const key of groupedItems.value.keys()) {\n // opened.value.add(key)\n // }\n // })\n\n const data = { sortByWithGroups, toggleGroup, opened, groupBy, extractRows, isGroupOpen }\n\n provide(VDataTableGroupSymbol, data)\n\n return data\n}\n\nexport function useGroupBy () {\n const data = inject(VDataTableGroupSymbol)\n\n if (!data) throw new Error('Missing group!')\n\n return data\n}\n\nfunction groupItemsByProperty (items: readonly T[], groupBy: string) {\n if (!items.length) return []\n\n const groups = new Map()\n for (const item of items) {\n const value = getObjectValueByPath(item.raw, groupBy)\n\n if (!groups.has(value)) {\n groups.set(value, [])\n }\n groups.get(value)!.push(item)\n }\n\n return groups\n}\n\nfunction groupItems (items: readonly T[], groupBy: readonly string[], depth = 0, prefix = 'root') {\n if (!groupBy.length) return []\n\n const groupedItems = groupItemsByProperty(items, groupBy[0])\n const groups: Group[] = []\n\n const rest = groupBy.slice(1)\n groupedItems.forEach((items, value) => {\n const key = groupBy[0]\n const id = `${prefix}_${key}_${value}`\n groups.push({\n depth,\n id,\n key,\n value,\n items: rest.length ? groupItems(items, rest, depth + 1, id) : items,\n type: 'group',\n })\n })\n\n return groups\n}\n\nfunction flattenItems (\n items: readonly (T | Group | GroupSummary)[],\n opened: Set,\n hasSummary: boolean\n): readonly (T | Group | GroupSummary)[] {\n const flatItems: (T | Group | GroupSummary)[] = []\n\n for (const item of items) {\n // TODO: make this better\n if ('type' in item && item.type === 'group') {\n if (item.value != null) {\n flatItems.push(item)\n }\n\n if (opened.has(item.id) || item.value == null) {\n flatItems.push(...flattenItems(item.items, opened, hasSummary))\n\n if (hasSummary) {\n flatItems.push({ ...item, type: 'group-summary' })\n }\n }\n } else {\n flatItems.push(item)\n }\n }\n\n return flatItems\n}\n\nexport function useGroupedItems (\n items: Ref,\n groupBy: Ref,\n opened: Ref>,\n hasSummary: MaybeRefOrGetter,\n) {\n const flatItems = computed(() => {\n if (!groupBy.value.length) return items.value\n\n const groupedItems = groupItems(items.value, groupBy.value.map(item => item.key))\n\n return flattenItems(groupedItems, opened.value, toValue(hasSummary))\n })\n\n return { flatItems }\n}\n", "// Components\nimport { VDataTableColumn } from './VDataTableColumn'\nimport { VBtn } from '@/components/VBtn'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\n\n// Composables\nimport { useGroupBy } from './composables/group'\nimport { useHeaders } from './composables/headers'\nimport { useSelection } from './composables/select'\nimport { makeDensityProps } from '@/composables/density'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { Group } from './composables/group'\n\nexport type VDataTableGroupHeaderRowSlots = {\n 'data-table-group': { item: Group, count: number, props: Record }\n 'data-table-select': { props: Record }\n}\n\nexport const makeVDataTableGroupHeaderRowProps = propsFactory({\n item: {\n type: Object as PropType,\n required: true,\n },\n groupCollapseIcon: {\n type: IconValue,\n default: '$tableGroupCollapse',\n },\n groupExpandIcon: {\n type: IconValue,\n default: '$tableGroupExpand',\n },\n ...makeDensityProps(),\n}, 'VDataTableGroupHeaderRow')\n\nexport const VDataTableGroupHeaderRow = genericComponent()({\n name: 'VDataTableGroupHeaderRow',\n\n props: makeVDataTableGroupHeaderRowProps(),\n\n setup (props, { slots }) {\n const { isGroupOpen, toggleGroup, extractRows } = useGroupBy()\n const { isSelected, isSomeSelected, select } = useSelection()\n const { columns } = useHeaders()\n\n const rows = computed(() => {\n return extractRows([props.item])\n })\n\n const colspan = toRef(() => columns.value.length - (columns.value.some(c => c.key === 'data-table-select') ? 1 : 0))\n\n return () => (\n \n { columns.value.map(column => {\n if (column.key === 'data-table-group') {\n const icon = isGroupOpen(props.item) ? props.groupCollapseIcon : props.groupExpandIcon\n const onClick = () => toggleGroup(props.item)\n\n return slots['data-table-group']?.({ item: props.item, count: rows.value.length, props: { icon, onClick } }) ?? (\n \n \n { props.item.value }\n ({ rows.value.length })\n \n )\n } else if (column.key === 'data-table-select') {\n const selectableRows = rows.value.filter(x => x.selectable)\n const modelValue = selectableRows.length > 0 && isSelected(selectableRows)\n const indeterminate = isSomeSelected(selectableRows) && !modelValue\n const selectGroup = (v: boolean) => select(selectableRows, v)\n return slots['data-table-select']?.({ props: { modelValue, indeterminate, 'onUpdate:modelValue': selectGroup } }) ?? (\n \n \n \n )\n }\n\n return ''\n })}\n \n )\n },\n})\n", "// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { inject, provide, toRaw, toRef } from 'vue'\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType, Ref } from 'vue'\nimport type { DataTableItem } from '../types'\n\nexport const makeDataTableExpandProps = propsFactory({\n expandOnClick: Boolean,\n showExpand: Boolean,\n expanded: {\n type: Array as PropType,\n default: () => ([]),\n },\n}, 'DataTable-expand')\n\nexport const VDataTableExpandedKey: InjectionKey<{\n expand: (item: DataTableItem, value: boolean) => void\n expanded: Ref>\n expandOnClick: Ref\n isExpanded: (item: DataTableItem) => boolean\n toggleExpand: (item: DataTableItem) => void\n}> = Symbol.for('vuetify:datatable:expanded')\n\ntype ExpandProps = {\n expandOnClick: boolean\n expanded: readonly string[]\n 'onUpdate:expanded': ((value: any[]) => void) | undefined\n}\n\nexport function provideExpanded (props: ExpandProps) {\n const expandOnClick = toRef(() => props.expandOnClick)\n const expanded = useProxiedModel(props, 'expanded', props.expanded, v => {\n return new Set(v)\n }, v => {\n return [...v.values()]\n })\n\n function expand (item: DataTableItem, value: boolean) {\n const newExpanded = new Set(expanded.value)\n const rawValue = toRaw(item.value)\n\n if (!value) {\n const item = [...expanded.value].find(x => toRaw(x) === rawValue)!\n newExpanded.delete(item)\n } else {\n newExpanded.add(rawValue)\n }\n\n expanded.value = newExpanded\n }\n\n function isExpanded (item: DataTableItem) {\n const rawValue = toRaw(item.value)\n return [...expanded.value].some(x => toRaw(x) === rawValue)\n }\n\n function toggleExpand (item: DataTableItem) {\n expand(item, !isExpanded(item))\n }\n\n const data = { expand, expanded, expandOnClick, isExpanded, toggleExpand }\n\n provide(VDataTableExpandedKey, data)\n\n return data\n}\n\nexport function useExpanded () {\n const data = inject(VDataTableExpandedKey)\n\n if (!data) throw new Error('foo')\n\n return data\n}\n", "// Components\nimport { VDataTableColumn } from './VDataTableColumn'\nimport { VBtn } from '@/components/VBtn'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\n\n// Composables\nimport { useExpanded } from './composables/expand'\nimport { useHeaders } from './composables/headers'\nimport { useSelection } from './composables/select'\nimport { useSort } from './composables/sort'\nimport { makeDensityProps } from '@/composables/density'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { toDisplayString, withModifiers } from 'vue'\nimport { EventProp, genericComponent, getObjectValueByPath, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { CellProps, DataTableItem, ItemKeySlot } from './types'\nimport type { VDataTableHeaderCellColumnSlotProps } from './VDataTableHeaders'\nimport type { GenericProps } from '@/util'\n\nexport type VDataTableItemCellColumnSlotProps = Omit, 'value'> & {\n props: Record\n}\n\nexport type VDataTableRowSlots = {\n 'item.data-table-select': VDataTableItemCellColumnSlotProps\n 'item.data-table-expand': VDataTableItemCellColumnSlotProps\n 'header.data-table-select': VDataTableHeaderCellColumnSlotProps\n 'header.data-table-expand': VDataTableHeaderCellColumnSlotProps\n} & {\n [key: `item.${string}`]: ItemKeySlot\n [key: `header.${string}`]: VDataTableHeaderCellColumnSlotProps\n}\n\nexport const makeVDataTableRowProps = propsFactory({\n color: String,\n index: Number,\n item: Object as PropType,\n cellProps: [Object, Function] as PropType>,\n collapseIcon: {\n type: IconValue,\n default: '$collapse',\n },\n expandIcon: {\n type: IconValue,\n default: '$expand',\n },\n\n onClick: EventProp<[MouseEvent]>(),\n onContextmenu: EventProp<[MouseEvent]>(),\n onDblclick: EventProp<[MouseEvent]>(),\n\n ...makeDensityProps(),\n ...makeDisplayProps(),\n}, 'VDataTableRow')\n\nexport const VDataTableRow = genericComponent(\n props: {\n item?: DataTableItem\n cellProps?: CellProps\n },\n slots: VDataTableRowSlots,\n) => GenericProps>()({\n name: 'VDataTableRow',\n\n props: makeVDataTableRowProps(),\n\n setup (props, { slots }) {\n const { displayClasses, mobile } = useDisplay(props, 'v-data-table__tr')\n const { isSelected, toggleSelect, someSelected, allSelected, selectAll } = useSelection()\n const { isExpanded, toggleExpand } = useExpanded()\n const { toggleSort, sortBy, isSorted } = useSort()\n const { columns } = useHeaders()\n\n useRender(() => (\n \n { props.item && columns.value.map((column, i) => {\n const item = props.item!\n const slotName = `item.${column.key}` as const\n const headerSlotName = `header.${column.key}` as const\n const slotProps = {\n index: props.index!,\n item: item.raw,\n internalItem: item,\n value: getObjectValueByPath(item.columns, column.key),\n column,\n isSelected,\n toggleSelect,\n isExpanded,\n toggleExpand,\n } satisfies ItemKeySlot\n\n const columnSlotProps: VDataTableHeaderCellColumnSlotProps = {\n column,\n selectAll,\n isSorted,\n toggleSort,\n sortBy: sortBy.value,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n getSortIcon: () => '',\n }\n\n const cellProps = typeof props.cellProps === 'function'\n ? props.cellProps({\n index: slotProps.index,\n item: slotProps.item,\n internalItem: slotProps.internalItem,\n value: slotProps.value,\n column,\n })\n : props.cellProps\n const columnCellProps = typeof column.cellProps === 'function'\n ? column.cellProps({\n index: slotProps.index,\n item: slotProps.item,\n internalItem: slotProps.internalItem,\n value: slotProps.value,\n })\n : column.cellProps\n\n const noPadding = column.key === 'data-table-select' || column.key === 'data-table-expand'\n const isEmpty = column.key === 'data-table-group' && column.width === 0 && !column.title\n\n return (\n \n {{\n default: () => {\n if (column.key === 'data-table-select') {\n return slots['item.data-table-select']?.({\n ...slotProps,\n props: {\n color: props.color,\n disabled: !item.selectable,\n modelValue: isSelected([item]),\n onClick: withModifiers(() => toggleSelect(item), ['stop']),\n },\n }) ?? (\n toggleSelect(item, props.index, event as PointerEvent),\n ['stop']\n )}\n />\n )\n }\n\n if (column.key === 'data-table-expand') {\n return slots['item.data-table-expand']?.({\n ...slotProps,\n props: {\n icon: isExpanded(item) ? props.collapseIcon : props.expandIcon,\n size: 'small',\n variant: 'text',\n onClick: withModifiers(() => toggleExpand(item), ['stop']),\n },\n }) ?? (\n toggleExpand(item), ['stop']) }\n />\n )\n }\n\n if (slots[slotName] && !mobile.value) return slots[slotName](slotProps)\n\n const displayValue = toDisplayString(slotProps.value)\n\n return !mobile.value ? displayValue : (\n <>\n
\n { slots[headerSlotName]?.(columnSlotProps) ?? column.title }\n
\n\n
\n { slots[slotName]?.(slotProps) ?? displayValue }\n
\n \n )\n },\n }}\n \n )\n })}\n \n ))\n },\n})\n\nexport type VDataTableRow = InstanceType\n", "// Components\nimport { makeVDataTableGroupHeaderRowProps, VDataTableGroupHeaderRow } from './VDataTableGroupHeaderRow'\nimport { makeVDataTableRowProps, VDataTableRow } from './VDataTableRow'\n\n// Composables\nimport { useExpanded } from './composables/expand'\nimport { useGroupBy } from './composables/group'\nimport { useHeaders } from './composables/headers'\nimport { useSelection } from './composables/select'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { Fragment, mergeProps } from 'vue'\nimport { genericComponent, getPrefixedEventHandlers, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { Group, GroupSummary } from './composables/group'\nimport type { CellProps, DataTableItem, GroupHeaderSlot, GroupSummarySlot, ItemSlot, RowProps } from './types'\nimport type { VDataTableGroupHeaderRowSlots } from './VDataTableGroupHeaderRow'\nimport type { VDataTableRowSlots } from './VDataTableRow'\nimport type { GenericProps } from '@/util'\n\nexport type VDataTableRowsSlots = VDataTableGroupHeaderRowSlots & VDataTableRowSlots & {\n item: ItemSlot & { props: Record }\n loading: never\n 'group-header': GroupHeaderSlot\n 'group-summary': GroupSummarySlot\n 'no-data': never\n 'expanded-row': ItemSlot\n}\n\nexport const makeVDataTableRowsProps = propsFactory({\n color: String,\n loading: [Boolean, String],\n loadingText: {\n type: String,\n default: '$vuetify.dataIterator.loadingText',\n },\n hideNoData: Boolean,\n items: {\n type: Array as PropType,\n default: () => ([]),\n },\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n rowProps: [Object, Function] as PropType>,\n cellProps: [Object, Function] as PropType>,\n\n ...pick(makeVDataTableRowProps(), ['collapseIcon', 'expandIcon', 'density']),\n ...pick(makeVDataTableGroupHeaderRowProps(), ['groupCollapseIcon', 'groupExpandIcon', 'density']),\n ...makeDisplayProps(),\n}, 'VDataTableRows')\n\nexport const VDataTableRows = genericComponent(\n props: {\n items?: readonly (DataTableItem | Group | GroupSummary)[]\n },\n slots: VDataTableRowsSlots,\n) => GenericProps>()({\n name: 'VDataTableRows',\n\n inheritAttrs: false,\n\n props: makeVDataTableRowsProps(),\n\n setup (props, { attrs, slots }) {\n const { columns } = useHeaders()\n const { expandOnClick, toggleExpand, isExpanded } = useExpanded()\n const { isSelected, toggleSelect } = useSelection()\n const { toggleGroup, isGroupOpen } = useGroupBy()\n const { t } = useLocale()\n const { mobile } = useDisplay(props)\n\n useRender(() => {\n const groupHeaderRowProps = pick(props, ['groupCollapseIcon', 'groupExpandIcon', 'density'])\n\n if (props.loading && (!props.items.length || slots.loading)) {\n return (\n \n \n { slots.loading?.() ?? t(props.loadingText) }\n \n \n )\n }\n\n if (!props.loading && !props.items.length && !props.hideNoData) {\n return (\n \n \n { slots['no-data']?.() ?? t(props.noDataText) }\n \n \n )\n }\n\n return (\n <>\n { props.items.map((item, index) => {\n if (item.type === 'group') {\n const slotProps = {\n index,\n item,\n columns: columns.value,\n isExpanded,\n toggleExpand,\n isSelected,\n toggleSelect,\n toggleGroup,\n isGroupOpen,\n } satisfies GroupHeaderSlot\n\n return slots['group-header'] ? slots['group-header'](slotProps) : (\n slotProps) }\n { ...groupHeaderRowProps }\n v-slots={ slots }\n />\n )\n }\n\n if (item.type === 'group-summary') {\n const slotProps = {\n index,\n item,\n columns: columns.value,\n toggleGroup,\n } satisfies GroupSummarySlot\n\n return slots['group-summary']?.(slotProps) ?? ''\n }\n\n const slotProps = {\n index: item.virtualIndex ?? index,\n item: item.raw,\n internalItem: item,\n columns: columns.value,\n isExpanded,\n toggleExpand,\n isSelected,\n toggleSelect,\n } satisfies ItemSlot\n\n const itemSlotProps = {\n ...slotProps,\n props: mergeProps(\n {\n key: `item_${item.key ?? item.index}`,\n onClick: expandOnClick.value ? () => {\n toggleExpand(item)\n } : undefined,\n index,\n item,\n color: props.color,\n cellProps: props.cellProps,\n collapseIcon: props.collapseIcon,\n expandIcon: props.expandIcon,\n density: props.density,\n mobile: mobile.value,\n },\n getPrefixedEventHandlers(attrs, ':row', () => slotProps),\n typeof props.rowProps === 'function'\n ? props.rowProps({\n item: slotProps.item,\n index: slotProps.index,\n internalItem: slotProps.internalItem,\n })\n : props.rowProps,\n ),\n }\n\n return (\n \n { slots.item ? slots.item(itemSlotProps) : (\n \n )}\n\n { isExpanded(item) && slots['expanded-row']?.(slotProps) }\n \n )\n })}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VDataTableRows = InstanceType\n", "// Styles\nimport './VTable.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type VTableSlots = {\n default: never\n top: never\n bottom: never\n wrapper: never\n}\n\nexport type Striped = null | 'odd' | 'even'\n\nexport const makeVTableProps = propsFactory({\n fixedHeader: Boolean,\n fixedFooter: Boolean,\n height: [Number, String],\n hover: Boolean,\n striped: {\n type: String as PropType,\n default: null,\n validator: (v: any) => ['even', 'odd'].includes(v),\n },\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VTable')\n\nexport const VTable = genericComponent()({\n name: 'VTable',\n\n props: makeVTableProps(),\n\n setup (props, { slots, emit }) {\n const { themeClasses } = provideTheme(props)\n const { densityClasses } = useDensity(props)\n\n useRender(() => (\n \n { slots.top?.() }\n\n { slots.default ? (\n \n \n { slots.default() }\n
\n \n ) : slots.wrapper?.()}\n\n { slots.bottom?.() }\n \n ))\n\n return {}\n },\n})\n\nexport type VTable = InstanceType\n", "// Utilities\nimport { computed } from 'vue'\nimport { getPropertyFromItem, propsFactory } from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { CellProps, DataTableItem, InternalDataTableHeader, RowProps } from '../types'\nimport type { SelectItemKey } from '@/util'\n\nexport interface DataTableItemProps {\n items: any[]\n itemValue: SelectItemKey\n itemSelectable: SelectItemKey\n returnObject: boolean\n}\n\n// Composables\nexport const makeDataTableItemsProps = propsFactory({\n items: {\n type: Array as PropType,\n default: () => ([]),\n },\n itemValue: {\n type: [String, Array, Function] as PropType,\n default: 'id',\n },\n itemSelectable: {\n type: [String, Array, Function] as PropType,\n default: null,\n },\n rowProps: [Object, Function] as PropType>,\n cellProps: [Object, Function] as PropType>,\n returnObject: Boolean,\n}, 'DataTable-items')\n\nexport function transformItem (\n props: Omit,\n item: any,\n index: number,\n columns: InternalDataTableHeader[]\n): DataTableItem {\n const value = props.returnObject ? item : getPropertyFromItem(item, props.itemValue)\n const selectable = getPropertyFromItem(item, props.itemSelectable, true)\n const itemColumns = columns.reduce((obj, column) => {\n if (column.key != null) obj[column.key] = getPropertyFromItem(item, column.value!)\n return obj\n }, {} as Record)\n\n return {\n type: 'item',\n key: props.returnObject ? getPropertyFromItem(item, props.itemValue) : value,\n index,\n value,\n selectable,\n columns: itemColumns,\n raw: item,\n }\n}\n\nexport function transformItems (\n props: Omit,\n items: DataTableItemProps['items'],\n columns: InternalDataTableHeader[]\n): DataTableItem[] {\n return items.map((item, index) => transformItem(props, item, index, columns))\n}\n\nexport function useDataTableItems (props: DataTableItemProps, columns: Ref) {\n const items = computed(() => transformItems(props, props.items, columns.value))\n\n return { items }\n}\n", "// Utilities\nimport { watch } from 'vue'\nimport { deepEqual, getCurrentInstance } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\nimport type { SortItem } from './sort'\n\nexport function useOptions ({\n page,\n itemsPerPage,\n sortBy,\n groupBy,\n search,\n}: {\n page: Ref\n itemsPerPage: Ref\n sortBy: Ref\n groupBy: Ref\n search: Ref\n}) {\n const vm = getCurrentInstance('VDataTable')\n\n const options = () => ({\n page: page.value,\n itemsPerPage: itemsPerPage.value,\n sortBy: sortBy.value,\n groupBy: groupBy.value,\n search: search.value,\n })\n\n let oldOptions: ReturnType | null = null\n watch(options, value => {\n if (deepEqual(oldOptions, value)) return\n\n // Reset page when searching\n if (oldOptions && oldOptions.search !== value.search) {\n page.value = 1\n }\n\n vm.emit('update:options', value)\n oldOptions = value\n }, { deep: true, immediate: true })\n}\n", "// Components\nimport { makeDataTableProps } from './VDataTable'\nimport { VDataTableHeaders } from './VDataTableHeaders'\nimport { VDataTableRow } from './VDataTableRow'\nimport { VDataTableRows } from './VDataTableRows'\nimport { VTable } from '@/components/VTable'\nimport { VVirtualScrollItem } from '@/components/VVirtualScroll/VVirtualScrollItem'\n\n// Composables\nimport { provideExpanded } from './composables/expand'\nimport { createGroupBy, makeDataTableGroupProps, provideGroupBy, useGroupedItems } from './composables/group'\nimport { createHeaders } from './composables/headers'\nimport { useDataTableItems } from './composables/items'\nimport { useOptions } from './composables/options'\nimport { provideSelection } from './composables/select'\nimport { createSort, provideSort, useSortedItems } from './composables/sort'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\nimport { makeVirtualProps, useVirtual } from '@/composables/virtual'\n\n// Utilities\nimport { computed, shallowRef, toRef, toRefs } from 'vue'\nimport { convertToUnit, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { DeepReadonly } from 'vue'\nimport type { VDataTableSlotProps } from './VDataTable'\nimport type { VDataTableHeadersSlots } from './VDataTableHeaders'\nimport type { VDataTableRowsSlots } from './VDataTableRows'\nimport type { CellProps, DataTableHeader, RowProps } from '@/components/VDataTable/types'\nimport type { GenericProps, SelectItemKey, TemplateRef } from '@/util'\n\ntype VDataTableVirtualSlotProps = Omit<\n VDataTableSlotProps,\n | 'setItemsPerPage'\n | 'page'\n | 'pageCount'\n | 'itemsPerPage'\n>\n\nexport type VDataTableVirtualSlots = VDataTableRowsSlots & VDataTableHeadersSlots & {\n colgroup: VDataTableVirtualSlotProps\n top: VDataTableVirtualSlotProps\n headers: VDataTableHeadersSlots['headers']\n tbody: VDataTableVirtualSlotProps\n thead: VDataTableVirtualSlotProps\n tfoot: VDataTableVirtualSlotProps\n bottom: VDataTableVirtualSlotProps\n 'body.prepend': VDataTableVirtualSlotProps\n 'body.append': VDataTableVirtualSlotProps\n item: {\n itemRef: TemplateRef\n }\n}\n\nexport const makeVDataTableVirtualProps = propsFactory({\n ...omit(makeDataTableProps(), ['hideDefaultFooter']),\n ...makeDataTableGroupProps(),\n ...makeVirtualProps(),\n ...makeFilterProps(),\n}, 'VDataTableVirtual')\n\ntype ItemType = T extends readonly (infer U)[] ? U : never\n\nexport const VDataTableVirtual = genericComponent(\n props: {\n items?: T\n itemValue?: SelectItemKey>\n rowProps?: RowProps>\n cellProps?: CellProps>\n itemSelectable?: SelectItemKey>\n headers?: DeepReadonly>[]>\n modelValue?: V\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: VDataTableVirtualSlots>,\n) => GenericProps>()({\n name: 'VDataTableVirtual',\n\n props: makeVDataTableVirtualProps(),\n\n emits: {\n 'update:modelValue': (value: any[]) => true,\n 'update:sortBy': (value: any) => true,\n 'update:options': (value: any) => true,\n 'update:groupBy': (value: any) => true,\n 'update:expanded': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { groupBy } = createGroupBy(props)\n const { initialSortOrder, sortBy, multiSort, mustSort } = createSort(props)\n const { disableSort } = toRefs(props)\n\n const {\n columns,\n headers,\n filterFunctions,\n sortFunctions,\n sortRawFunctions,\n } = createHeaders(props, {\n groupBy,\n showSelect: toRef(() => props.showSelect),\n showExpand: toRef(() => props.showExpand),\n })\n const { items } = useDataTableItems(props, columns)\n\n const search = toRef(() => props.search)\n const { filteredItems } = useFilter(props, items, search, {\n transform: item => item.columns,\n customKeyFilter: filterFunctions,\n })\n\n const { toggleSort } = provideSort({ initialSortOrder, sortBy, multiSort, mustSort })\n const { sortByWithGroups, opened, extractRows, isGroupOpen, toggleGroup } = provideGroupBy({ groupBy, sortBy, disableSort })\n\n const { sortedItems } = useSortedItems(props, filteredItems, sortByWithGroups, {\n transform: item => ({ ...item.raw, ...item.columns }),\n sortFunctions,\n sortRawFunctions,\n })\n const { flatItems } = useGroupedItems(sortedItems, groupBy, opened, () => !!slots['group-summary'])\n\n const allItems = computed(() => extractRows(flatItems.value))\n\n const { isSelected, select, selectAll, toggleSelect, someSelected, allSelected } = provideSelection(props, {\n allItems,\n currentPage: allItems,\n })\n const { isExpanded, toggleExpand } = provideExpanded(props)\n\n const {\n containerRef,\n markerRef,\n paddingTop,\n paddingBottom,\n computedItems,\n handleItemResize,\n handleScroll,\n handleScrollend,\n calculateVisibleItems,\n scrollToIndex,\n } = useVirtual(props, flatItems)\n\n const displayItems = computed(() =>\n computedItems.value\n .map(item => ({\n ...item.raw,\n virtualIndex: item.index,\n }))\n )\n\n useOptions({\n sortBy,\n page: shallowRef(1),\n itemsPerPage: shallowRef(-1),\n groupBy,\n search,\n })\n\n provideDefaults({\n VDataTableRows: {\n hideNoData: toRef(() => props.hideNoData),\n noDataText: toRef(() => props.noDataText),\n loading: toRef(() => props.loading),\n loadingText: toRef(() => props.loadingText),\n },\n })\n\n const slotProps = computed>(() => ({\n sortBy: sortBy.value,\n toggleSort,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n isSelected,\n select,\n selectAll,\n toggleSelect,\n isExpanded,\n toggleExpand,\n isGroupOpen,\n toggleGroup,\n items: allItems.value.map(item => item.raw),\n internalItems: allItems.value,\n groupedItems: flatItems.value,\n columns: columns.value,\n headers: headers.value,\n }))\n\n useRender(() => {\n const dataTableHeadersProps = VDataTableHeaders.filterProps(omit(props, ['multiSort']))\n const dataTableRowsProps = VDataTableRows.filterProps(props)\n const tableProps = VTable.filterProps(props)\n\n return (\n \n {{\n top: () => slots.top?.(slotProps.value),\n wrapper: () => (\n \n \n { slots.colgroup?.(slotProps.value) }\n { !props.hideDefaultHeader && (\n \n \n \n )}\n { slots.thead?.(slotProps.value) }\n { !props.hideDefaultBody && (\n \n \n \n \n\n { slots['body.prepend']?.(slotProps.value) }\n\n \n {{\n ...slots,\n item: itemSlotProps => (\n handleItemResize(itemSlotProps.internalItem.index, height) }\n >\n { ({ itemRef }) => (\n slots.item?.({ ...itemSlotProps, itemRef }) ?? (\n \n )\n )}\n \n ),\n }}\n \n\n { slots['body.append']?.(slotProps.value) }\n\n \n \n \n \n )}\n { slots.tbody?.(slotProps.value) }\n { slots.tfoot?.(slotProps.value) }\n
\n \n ),\n bottom: () => slots.bottom?.(slotProps.value),\n }}\n \n )\n })\n\n return {\n calculateVisibleItems,\n scrollToIndex,\n }\n },\n})\n\nexport type VDataTableVirtual = InstanceType\n", "// Components\nimport { makeDataTableProps } from './VDataTable'\nimport { makeVDataTableFooterProps, VDataTableFooter } from './VDataTableFooter'\nimport { VDataTableHeaders } from './VDataTableHeaders'\nimport { VDataTableRows } from './VDataTableRows'\nimport { VDivider } from '@/components/VDivider'\nimport { VTable } from '@/components/VTable'\n\n// Composables\nimport { provideExpanded } from './composables/expand'\nimport { createGroupBy, provideGroupBy, useGroupedItems } from './composables/group'\nimport { createHeaders } from './composables/headers'\nimport { useDataTableItems } from './composables/items'\nimport { useOptions } from './composables/options'\nimport { createPagination, makeDataTablePaginateProps, providePagination } from './composables/paginate'\nimport { provideSelection } from './composables/select'\nimport { createSort, provideSort } from './composables/sort'\nimport { provideDefaults } from '@/composables/defaults'\n\n// Utilities\nimport { computed, provide, toRef, toRefs } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { DeepReadonly } from 'vue'\nimport type { VDataTableSlotProps, VDataTableSlots } from './VDataTable'\nimport type { CellProps, DataTableHeader, RowProps } from '@/components/VDataTable/types'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\nexport const makeVDataTableServerProps = propsFactory({\n itemsLength: {\n type: [Number, String],\n required: true,\n },\n\n ...makeDataTablePaginateProps(),\n ...makeDataTableProps(),\n ...makeVDataTableFooterProps(),\n}, 'VDataTableServer')\n\ntype ItemType = T extends readonly (infer U)[] ? U : never\n\nexport const VDataTableServer = genericComponent(\n props: {\n items?: T\n itemValue?: SelectItemKey>\n rowProps?: RowProps>\n cellProps?: CellProps>\n itemSelectable?: SelectItemKey>\n headers?: DeepReadonly>[]>\n modelValue?: V\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: VDataTableSlots>,\n) => GenericProps>()({\n name: 'VDataTableServer',\n\n props: makeVDataTableServerProps(),\n\n emits: {\n 'update:modelValue': (value: any[]) => true,\n 'update:page': (page: number) => true,\n 'update:itemsPerPage': (page: number) => true,\n 'update:sortBy': (sortBy: any) => true,\n 'update:options': (options: any) => true,\n 'update:expanded': (options: any) => true,\n 'update:groupBy': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { groupBy } = createGroupBy(props)\n const { initialSortOrder, sortBy, multiSort, mustSort } = createSort(props)\n const { page, itemsPerPage } = createPagination(props)\n const { disableSort } = toRefs(props)\n const itemsLength = computed(() => parseInt(props.itemsLength, 10))\n\n const { columns, headers } = createHeaders(props, {\n groupBy,\n showSelect: toRef(() => props.showSelect),\n showExpand: toRef(() => props.showExpand),\n })\n\n const { items } = useDataTableItems(props, columns)\n\n const { toggleSort } = provideSort({ initialSortOrder, sortBy, multiSort, mustSort, page })\n\n const { opened, isGroupOpen, toggleGroup, extractRows } = provideGroupBy({ groupBy, sortBy, disableSort })\n\n const { pageCount, setItemsPerPage } = providePagination({ page, itemsPerPage, itemsLength })\n\n const { flatItems } = useGroupedItems(items, groupBy, opened, () => !!slots['group-summary'])\n\n const { isSelected, select, selectAll, toggleSelect, someSelected, allSelected } = provideSelection(props, {\n allItems: items,\n currentPage: items,\n })\n\n const { isExpanded, toggleExpand } = provideExpanded(props)\n\n const itemsWithoutGroups = computed(() => extractRows(items.value))\n\n useOptions({\n page,\n itemsPerPage,\n sortBy,\n groupBy,\n search: toRef(() => props.search),\n })\n\n provide('v-data-table', {\n toggleSort,\n sortBy,\n })\n\n provideDefaults({\n VDataTableRows: {\n hideNoData: toRef(() => props.hideNoData),\n noDataText: toRef(() => props.noDataText),\n loading: toRef(() => props.loading),\n loadingText: toRef(() => props.loadingText),\n },\n })\n\n const slotProps = computed>(() => ({\n page: page.value,\n itemsPerPage: itemsPerPage.value,\n sortBy: sortBy.value,\n pageCount: pageCount.value,\n toggleSort,\n setItemsPerPage,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n isSelected,\n select,\n selectAll,\n toggleSelect,\n isExpanded,\n toggleExpand,\n isGroupOpen,\n toggleGroup,\n items: itemsWithoutGroups.value.map(item => item.raw),\n internalItems: itemsWithoutGroups.value,\n groupedItems: flatItems.value,\n columns: columns.value,\n headers: headers.value,\n }))\n\n useRender(() => {\n const dataTableFooterProps = VDataTableFooter.filterProps(props)\n const dataTableHeadersProps = VDataTableHeaders.filterProps(omit(props, ['multiSort']))\n const dataTableRowsProps = VDataTableRows.filterProps(props)\n const tableProps = VTable.filterProps(props)\n\n return (\n \n {{\n top: () => slots.top?.(slotProps.value),\n default: () => slots.default ? slots.default(slotProps.value) : (\n <>\n { slots.colgroup?.(slotProps.value) }\n { !props.hideDefaultHeader && (\n \n \n \n )}\n { slots.thead?.(slotProps.value) }\n { !props.hideDefaultBody && (\n \n { slots['body.prepend']?.(slotProps.value) }\n { slots.body ? slots.body(slotProps.value) : (\n \n )}\n { slots['body.append']?.(slotProps.value) }\n \n )}\n { slots.tbody?.(slotProps.value) }\n { slots.tfoot?.(slotProps.value) }\n \n ),\n bottom: () => slots.bottom ? slots.bottom(slotProps.value) : !props.hideDefaultFooter && (\n <>\n \n\n \n \n ),\n }}\n \n )\n })\n },\n})\n\nexport type VDataTableServer = InstanceType\n"], + "mappings": "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", + "names": ["useRefs", "refs", "ref", "onBeforeUpdate", "value", "updateRef", "e", "i", "makeVPaginationProps", "propsFactory", "activeColor", "String", "start", "type", "Number", "default", "modelValue", "props", "disabled", "Boolean", "length", "validator", "val", "totalVisible", "firstIcon", "IconValue", "prevIcon", "nextIcon", "lastIcon", "ariaLabel", "pageAriaLabel", "currentPageAriaLabel", "firstAriaLabel", "previousAriaLabel", "nextAriaLabel", "lastAriaLabel", "ellipsis", "showFirstLastPage", "makeBorderProps", "makeComponentProps", "makeDensityProps", "makeElevationProps", "makeRoundedProps", "makeSizeProps", "makeTagProps", "tag", "makeThemeProps", "makeVariantProps", "variant", "VPagination", "genericComponent", "name", "emits", "value", "first", "prev", "next", "last", "setup", "_ref", "slots", "emit", "page", "useProxiedModel", "t", "n", "useLocale", "isRtl", "useRtl", "themeClasses", "provideTheme", "width", "useDisplay", "maxButtons", "shallowRef", "provideDefaults", "undefined", "scoped", "resizeRef", "useResizeObserver", "entries", "target", "contentRect", "firstItem", "querySelector", "totalWidth", "itemWidth", "offsetWidth", "parseFloat", "getComputedStyle", "marginRight", "getMax", "computed", "parseInt", "minButtons", "Math", "max", "floor", "toFixed", "range", "isNaN", "MAX_SAFE_INTEGER", "createRange", "even", "middle", "left", "right", "rangeLength", "rangeStart", "ceil", "setValue", "e", "event", "preventDefault", "refs", "updateRef", "useRefs", "VPaginationBtn", "color", "toRef", "border", "density", "size", "rounded", "elevation", "items", "map", "item", "index", "ref", "isActive", "key", "icon", "onClick", "controls", "prevDisabled", "nextDisabled", "updateFocus", "currentIndex", "$el", "focus", "onKeydown", "keyValues", "nextTick", "useRender", "_createVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "_createElementVNode", "VBtn", "_mergeProps", "makeDataTablePaginateProps", "propsFactory", "page", "type", "Number", "String", "default", "itemsPerPage", "VDataTablePaginationSymbol", "Symbol", "for", "createPagination", "props", "useProxiedModel", "undefined", "value", "providePagination", "options", "itemsLength", "startIndex", "computed", "stopIndex", "Math", "min", "pageCount", "ceil", "watch", "setItemsPerPage", "nextPage", "clamp", "prevPage", "setPage", "data", "provide", "usePagination", "inject", "Error", "usePaginatedItems", "vm", "getCurrentInstance", "items", "paginatedItems", "slice", "val", "emit", "immediate", "makeVDataTableFooterProps", "propsFactory", "color", "String", "prevIcon", "type", "IconValue", "default", "nextIcon", "firstIcon", "lastIcon", "itemsPerPageText", "pageText", "firstPageLabel", "prevPageLabel", "nextPageLabel", "lastPageLabel", "itemsPerPageOptions", "Array", "value", "title", "showCurrentPage", "Boolean", "VDataTableFooter", "genericComponent", "name", "props", "setup", "_ref", "slots", "t", "useLocale", "page", "pageCount", "startIndex", "stopIndex", "itemsLength", "itemsPerPage", "setItemsPerPage", "usePagination", "computed", "map", "option", "isNaN", "Number", "useRender", "paginationProps", "VPagination", "filterProps", "_createElementVNode", "prepend", "_createVNode", "VSelect", "v", "_mergeProps", "$event", "omit", "VDataTableColumn", "defineFunctionalComponent", "align", "type", "String", "default", "fixed", "Boolean", "fixedOffset", "Number", "fixedEndOffset", "height", "lastFixed", "firstFixedEnd", "noPadding", "indent", "empty", "tag", "width", "maxWidth", "nowrap", "props", "_ref", "slots", "Tag", "fixedSide", "_createVNode", "_normalizeClass", "convertToUnit", "left", "undefined", "right", "paddingInlineStart", "makeDataTableHeaderProps", "propsFactory", "headers", "Array", "VDataTableHeadersSymbol", "Symbol", "for", "defaultHeader", "title", "sortable", "defaultActionHeader", "width", "priorityQueue", "arr", "arguments", "length", "undefined", "queue", "map", "element", "priority", "enqueue", "added", "i", "item", "splice", "push", "size", "count", "whole", "Math", "floor", "dequeue", "shift", "extractLeaves", "columns", "children", "child", "extractKeys", "keys", "Set", "key", "add", "getDefaultItem", "includes", "getDepth", "depth", "max", "parseFixedColumns", "items", "seenFixed", "setFixed", "side", "parentFixedSide", "fixed", "lastFixed", "firstFixedEnd", "isNaN", "Number", "consoleError", "minWidth", "fixedOffset", "setFixedOffset", "fixedEndOffset", "setFixedEndOffset", "offset", "parseFloat", "parse", "maxDepth", "currentDepth", "rowSize", "row", "fraction", "diff", "rowspan", "colspan", "sort", "pow", "flat", "convertToInternalHeaders", "internalHeaders", "defaultItem", "value", "internalItem", "createHeaders", "props", "options", "ref", "sortFunctions", "sortRawFunctions", "filterFunctions", "watchEffect", "_headers", "Object", "capitalize", "slice", "groupBy", "has", "unshift", "showSelect", "showExpand", "parsed", "flatHeaders", "header", "sortRaw", "filter", "data", "provide", "useHeaders", "inject", "Error", "singleSelectStrategy", "showSelectAll", "allSelected", "select", "_ref", "items", "value", "Set", "selectAll", "_ref2", "selected", "pageSelectStrategy", "_ref3", "currentPage", "_ref4", "item", "add", "delete", "_ref5", "allSelectStrategy", "_ref6", "allItems", "_ref7", "_ref8", "map", "makeDataTableSelectProps", "propsFactory", "showSelect", "Boolean", "selectStrategy", "type", "String", "Object", "default", "modelValue", "Array", "valueComparator", "Function", "VDataTableSelectionSymbol", "Symbol", "for", "provideSelection", "props", "_ref9", "useProxiedModel", "v", "customComparator", "wrapInArray", "find", "isPrimitive", "deepEqual", "values", "allSelectable", "computed", "filter", "selectable", "currentPageSelectable", "lastSelectedIndex", "shallowRef", "isSelected", "every", "has", "isSomeSelected", "some", "newSelected", "toggleSelect", "index", "event", "findIndex", "i", "shiftKey", "start", "end", "sort", "a", "b", "push", "slice", "someSelected", "size", "length", "toRef", "data", "provide", "useSelection", "inject", "Error", "makeDataTableSortProps", "propsFactory", "initialSortOrder", "type", "String", "default", "validator", "v", "includes", "sortBy", "Array", "customKeySort", "Object", "multiSort", "Boolean", "mustSort", "VDataTableSortSymbol", "Symbol", "for", "createSort", "props", "toRef", "useProxiedModel", "resolveMultiSort", "event", "isObject", "active", "key", "mode", "modifier", "reverseMode", "altKey", "shiftKey", "ctrlKey", "metaKey", "provideSort", "options", "page", "toggleSort", "column", "newSortBy", "value", "map", "x", "item", "find", "initialOrder", "secondaryOrder", "unshift", "order", "push", "length", "filter", "isSorted", "data", "provide", "useSort", "inject", "Error", "useSortedItems", "items", "locale", "useLocale", "sortedItems", "computed", "sortItems", "current", "transform", "sortFunctions", "sortRawFunctions", "sortByItems", "stringCollator", "Intl", "Collator", "sensitivity", "usage", "transformedItems", "sort", "a", "b", "i", "hasCustomResult", "sortKey", "sortOrder", "sortA", "getObjectValueByPath", "sortB", "sortARaw", "raw", "sortBRaw", "customResult", "Date", "getTime", "s", "toString", "toLocaleLowerCase", "isEmpty", "isNaN", "Number", "compare", "_ref", "makeVDataTableHeadersProps", "propsFactory", "color", "String", "disableSort", "Boolean", "fixedHeader", "multiSort", "initialSortOrder", "sortAscIcon", "type", "IconValue", "default", "sortDescIcon", "headerProps", "Object", "sticky", "makeDensityProps", "makeDisplayProps", "makeLoaderProps", "VDataTableHeaders", "genericComponent", "name", "props", "setup", "_ref", "slots", "t", "useLocale", "toggleSort", "sortBy", "isSorted", "useSort", "someSelected", "allSelected", "selectAll", "showSelectAll", "useSelection", "columns", "headers", "useHeaders", "loaderClasses", "useLoader", "getFixedStyles", "column", "y", "fixed", "undefined", "fixedSide", "position", "left", "convertToUnit", "fixedOffset", "right", "fixedEndOffset", "top", "handleEnterKeyPress", "event", "key", "getSortIcon", "item", "value", "find", "order", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "displayClasses", "mobile", "useDisplay", "slotProps", "computed", "headerCellClasses", "VDataTableHeaderCell", "_ref2", "x", "noPadding", "isEmpty", "width", "title", "mergeProps", "_createVNode", "VDataTableColumn", "_mergeProps", "align", "sortable", "minWidth", "maxWidth", "colspan", "rowspan", "nowrap", "lastFixed", "firstFixedEnd", "columnSlotName", "columnSlotProps", "VCheckboxBtn", "density", "_createElementVNode", "VIcon", "_normalizeClass", "_normalizeStyle", "findIndex", "VDataTableMobileHeaderCell", "displayItems", "filter", "showSelectColumn", "length", "VSelect", "onClick:clear", "append", "onUpdate:modelValue", "chip", "VChip", "raw", "e", "preventDefault", "stopPropagation", "useRender", "_Fragment", "map", "row", "loading", "LoaderSlot", "loader", "makeDataTableGroupProps", "propsFactory", "groupBy", "type", "Array", "default", "VDataTableGroupSymbol", "Symbol", "for", "createGroupBy", "props", "useProxiedModel", "provideGroupBy", "options", "disableSort", "sortBy", "opened", "ref", "Set", "sortByWithGroups", "computed", "value", "map", "val", "order", "concat", "isGroupOpen", "group", "has", "id", "toggleGroup", "newOpened", "add", "delete", "extractRows", "items", "dive", "arr", "item", "push", "key", "depth", "data", "provide", "useGroupBy", "inject", "Error", "groupItemsByProperty", "length", "groups", "Map", "getObjectValueByPath", "raw", "set", "get", "groupItems", "arguments", "undefined", "prefix", "groupedItems", "rest", "slice", "forEach", "flattenItems", "hasSummary", "flatItems", "useGroupedItems", "toValue", "makeVDataTableGroupHeaderRowProps", "propsFactory", "item", "type", "Object", "required", "groupCollapseIcon", "IconValue", "default", "groupExpandIcon", "makeDensityProps", "VDataTableGroupHeaderRow", "genericComponent", "name", "props", "setup", "_ref", "slots", "isGroupOpen", "toggleGroup", "extractRows", "useGroupBy", "isSelected", "isSomeSelected", "select", "useSelection", "columns", "useHeaders", "rows", "computed", "colspan", "toRef", "value", "length", "some", "c", "key", "_createElementVNode", "depth", "map", "column", "icon", "onClick", "count", "_createVNode", "VDataTableColumn", "VBtn", "_createTextVNode", "selectableRows", "filter", "x", "selectable", "modelValue", "indeterminate", "selectGroup", "v", "VCheckboxBtn", "density", "makeDataTableExpandProps", "propsFactory", "expandOnClick", "Boolean", "showExpand", "expanded", "type", "Array", "default", "VDataTableExpandedKey", "Symbol", "for", "provideExpanded", "props", "toRef", "useProxiedModel", "v", "Set", "values", "expand", "item", "value", "newExpanded", "rawValue", "toRaw", "find", "x", "delete", "add", "isExpanded", "some", "toggleExpand", "data", "provide", "useExpanded", "inject", "Error", "makeVDataTableRowProps", "propsFactory", "color", "String", "index", "Number", "item", "Object", "cellProps", "Function", "collapseIcon", "type", "IconValue", "default", "expandIcon", "onClick", "EventProp", "onContextmenu", "onDblclick", "makeDensityProps", "makeDisplayProps", "VDataTableRow", "genericComponent", "name", "props", "setup", "_ref", "slots", "displayClasses", "mobile", "useDisplay", "isSelected", "toggleSelect", "someSelected", "allSelected", "selectAll", "useSelection", "isExpanded", "toggleExpand", "useExpanded", "toggleSort", "sortBy", "isSorted", "useSort", "columns", "useHeaders", "useRender", "_createElementVNode", "_normalizeClass", "value", "map", "column", "i", "slotName", "key", "headerSlotName", "slotProps", "raw", "internalItem", "getObjectValueByPath", "columnSlotProps", "getSortIcon", "columnCellProps", "noPadding", "isEmpty", "width", "title", "_createVNode", "VDataTableColumn", "_mergeProps", "align", "indent", "fixed", "fixedOffset", "fixedEndOffset", "lastFixed", "firstFixedEnd", "maxWidth", "undefined", "nowrap", "disabled", "selectable", "modelValue", "withModifiers", "VCheckboxBtn", "density", "event", "icon", "size", "variant", "VBtn", "displayValue", "toDisplayString", "_Fragment", "makeVDataTableRowsProps", "propsFactory", "color", "String", "loading", "Boolean", "loadingText", "type", "default", "hideNoData", "items", "Array", "noDataText", "rowProps", "Object", "Function", "cellProps", "pick", "makeVDataTableRowProps", "makeVDataTableGroupHeaderRowProps", "makeDisplayProps", "VDataTableRows", "genericComponent", "name", "inheritAttrs", "props", "setup", "_ref", "attrs", "slots", "columns", "useHeaders", "expandOnClick", "toggleExpand", "isExpanded", "useExpanded", "isSelected", "toggleSelect", "useSelection", "toggleGroup", "isGroupOpen", "useGroupBy", "t", "useLocale", "mobile", "useDisplay", "useRender", "groupHeaderRowProps", "length", "_createElementVNode", "value", "_Fragment", "map", "item", "index", "slotProps", "_createVNode", "VDataTableGroupHeaderRow", "_mergeProps", "id", "getPrefixedEventHandlers", "virtualIndex", "raw", "internalItem", "itemSlotProps", "mergeProps", "key", "onClick", "undefined", "collapseIcon", "expandIcon", "density", "VDataTableRow", "makeVTableProps", "propsFactory", "fixedHeader", "Boolean", "fixedFooter", "height", "Number", "String", "hover", "striped", "type", "default", "validator", "v", "includes", "makeComponentProps", "makeDensityProps", "makeTagProps", "makeThemeProps", "VTable", "genericComponent", "name", "props", "setup", "_ref", "slots", "emit", "themeClasses", "provideTheme", "densityClasses", "useDensity", "useRender", "_createVNode", "tag", "_normalizeClass", "top", "bottom", "value", "class", "_normalizeStyle", "style", "_createElementVNode", "convertToUnit", "wrapper", "makeDataTableItemsProps", "propsFactory", "items", "type", "Array", "default", "itemValue", "String", "Function", "itemSelectable", "rowProps", "Object", "cellProps", "returnObject", "Boolean", "transformItem", "props", "item", "index", "columns", "value", "getPropertyFromItem", "selectable", "itemColumns", "reduce", "obj", "column", "key", "raw", "transformItems", "map", "useDataTableItems", "computed", "useOptions", "_ref", "page", "itemsPerPage", "sortBy", "groupBy", "search", "vm", "getCurrentInstance", "options", "value", "oldOptions", "watch", "deepEqual", "emit", "deep", "immediate", "makeDataTableProps", "propsFactory", "makeVDataTableRowsProps", "hideDefaultBody", "Boolean", "hideDefaultFooter", "hideDefaultHeader", "width", "String", "Number", "search", "makeDataTableExpandProps", "makeDataTableGroupProps", "makeDataTableHeaderProps", "makeDataTableItemsProps", "makeDataTableSelectProps", "makeDataTableSortProps", "omit", "makeVDataTableHeadersProps", "makeVTableProps", "makeVDataTableProps", "makeDataTablePaginateProps", "makeFilterProps", "makeVDataTableFooterProps", "VDataTable", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "attrs", "slots", "groupBy", "createGroupBy", "initialSortOrder", "sortBy", "multiSort", "mustSort", "createSort", "page", "itemsPerPage", "createPagination", "disableSort", "toRefs", "columns", "headers", "sortFunctions", "sortRawFunctions", "filterFunctions", "createHeaders", "showSelect", "toRef", "showExpand", "items", "useDataTableItems", "filteredItems", "useFilter", "transform", "item", "customKeyFilter", "toggleSort", "provideSort", "sortByWithGroups", "opened", "extractRows", "isGroupOpen", "toggleGroup", "provideGroupBy", "sortedItems", "useSortedItems", "raw", "flatItems", "useGroupedItems", "itemsLength", "computed", "length", "startIndex", "stopIndex", "pageCount", "setItemsPerPage", "providePagination", "paginatedItems", "usePaginatedItems", "paginatedItemsWithoutGroups", "isSelected", "select", "selectAll", "toggleSelect", "someSelected", "allSelected", "provideSelection", "allItems", "currentPage", "isExpanded", "toggleExpand", "provideExpanded", "useOptions", "provideDefaults", "VDataTableRows", "hideNoData", "noDataText", "loading", "loadingText", "slotProps", "map", "internalItems", "groupedItems", "useRender", "dataTableFooterProps", "VDataTableFooter", "filterProps", "dataTableHeadersProps", "VDataTableHeaders", "dataTableRowsProps", "tableProps", "VTable", "_createVNode", "_mergeProps", "class", "style", "fixedHeader", "sticky", "top", "default", "_createElementVNode", "_Fragment", "colgroup", "thead", "body", "tbody", "tfoot", "bottom", "VDivider", "prepend", "makeVDataTableVirtualProps", "propsFactory", "omit", "makeDataTableProps", "makeDataTableGroupProps", "makeVirtualProps", "makeFilterProps", "VDataTableVirtual", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "attrs", "slots", "groupBy", "createGroupBy", "initialSortOrder", "sortBy", "multiSort", "mustSort", "createSort", "disableSort", "toRefs", "columns", "headers", "filterFunctions", "sortFunctions", "sortRawFunctions", "createHeaders", "showSelect", "toRef", "showExpand", "items", "useDataTableItems", "search", "filteredItems", "useFilter", "transform", "item", "customKeyFilter", "toggleSort", "provideSort", "sortByWithGroups", "opened", "extractRows", "isGroupOpen", "toggleGroup", "provideGroupBy", "sortedItems", "useSortedItems", "raw", "flatItems", "useGroupedItems", "allItems", "computed", "isSelected", "select", "selectAll", "toggleSelect", "someSelected", "allSelected", "provideSelection", "currentPage", "isExpanded", "toggleExpand", "provideExpanded", "containerRef", "markerRef", "paddingTop", "paddingBottom", "computedItems", "handleItemResize", "handleScroll", "handleScrollend", "calculateVisibleItems", "scrollToIndex", "useVirtual", "displayItems", "map", "virtualIndex", "index", "useOptions", "page", "shallowRef", "itemsPerPage", "provideDefaults", "VDataTableRows", "hideNoData", "noDataText", "loading", "loadingText", "slotProps", "internalItems", "groupedItems", "useRender", "dataTableHeadersProps", "VDataTableHeaders", "filterProps", "dataTableRowsProps", "tableProps", "VTable", "_createVNode", "_mergeProps", "class", "style", "fixedHeader", "sticky", "top", "wrapper", "_createElementVNode", "height", "convertToUnit", "colgroup", "hideDefaultHeader", "thead", "hideDefaultBody", "border", "length", "itemSlotProps", "VVirtualScrollItem", "internalItem", "default", "_ref2", "itemRef", "VDataTableRow", "tbody", "tfoot", "bottom", "makeVDataTableServerProps", "propsFactory", "itemsLength", "type", "Number", "String", "required", "makeDataTablePaginateProps", "makeDataTableProps", "makeVDataTableFooterProps", "VDataTableServer", "genericComponent", "name", "props", "emits", "value", "page", "sortBy", "options", "setup", "_ref", "attrs", "slots", "groupBy", "createGroupBy", "initialSortOrder", "multiSort", "mustSort", "createSort", "itemsPerPage", "createPagination", "disableSort", "toRefs", "computed", "parseInt", "columns", "headers", "createHeaders", "showSelect", "toRef", "showExpand", "items", "useDataTableItems", "toggleSort", "provideSort", "opened", "isGroupOpen", "toggleGroup", "extractRows", "provideGroupBy", "pageCount", "setItemsPerPage", "providePagination", "flatItems", "useGroupedItems", "isSelected", "select", "selectAll", "toggleSelect", "someSelected", "allSelected", "provideSelection", "allItems", "currentPage", "isExpanded", "toggleExpand", "provideExpanded", "itemsWithoutGroups", "useOptions", "search", "provide", "provideDefaults", "VDataTableRows", "hideNoData", "noDataText", "loading", "loadingText", "slotProps", "map", "item", "raw", "internalItems", "groupedItems", "useRender", "dataTableFooterProps", "VDataTableFooter", "filterProps", "dataTableHeadersProps", "VDataTableHeaders", "omit", "dataTableRowsProps", "tableProps", "VTable", "_createVNode", "_mergeProps", "class", "style", "fixedHeader", "sticky", "top", "default", "_createElementVNode", "_Fragment", "colgroup", "hideDefaultHeader", "thead", "hideDefaultBody", "body", "tbody", "tfoot", "bottom", "hideDefaultFooter", "VDivider", "prepend"] } diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-GSWLJLRT.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-GSWLJLRT.js new file mode 100644 index 0000000..e69de29 diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-GSWLJLRT.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-GSWLJLRT.js.map new file mode 100644 index 0000000..9865211 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-GSWLJLRT.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": [], + "sourcesContent": [], + "mappings": "", + "names": [] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LPZZJ62X.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-H2QFYTJQ.js similarity index 96% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LPZZJ62X.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-H2QFYTJQ.js index 3b920c3..efac25b 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LPZZJ62X.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-H2QFYTJQ.js @@ -1,6 +1,9 @@ import { VImg -} from "./chunk-6CRS5HI4.js"; +} from "./chunk-TTIGZHWR.js"; +import { + VExpandTransition +} from "./chunk-B4JFJDWM.js"; import { makeBorderProps, useBorder @@ -9,25 +12,22 @@ import { makeElevationProps, useElevation } from "./chunk-YJD2PNP6.js"; -import { - VExpandTransition -} from "./chunk-B4JFJDWM.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; import { makeRoundedProps, useRounded } from "./chunk-AQK3CYVW.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { makeTagProps } from "./chunk-2HZIACSB.js"; -import { - useRtl -} from "./chunk-ENTLCOCZ.js"; import { useBackgroundColor } from "./chunk-BHV5Z34M.js"; +import { + useRtl +} from "./chunk-ENTLCOCZ.js"; import { makeThemeProps, provideTheme @@ -78,7 +78,7 @@ var VToolbarTitle = genericComponent()({ }); // node_modules/vuetify/lib/components/VToolbar/VToolbar.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VToolbar/VToolbar.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VToolbar/VToolbar.css"; var allowedDensities = [null, "prominent", "default", "comfortable", "compact"]; var makeVToolbarProps = propsFactory({ absolute: Boolean, @@ -236,4 +236,4 @@ export { makeVToolbarProps, VToolbar }; -//# sourceMappingURL=chunk-LPZZJ62X.js.map +//# sourceMappingURL=chunk-H2QFYTJQ.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LPZZJ62X.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-H2QFYTJQ.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LPZZJ62X.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-H2QFYTJQ.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4VABFUPG.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IK67YVHF.js similarity index 96% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4VABFUPG.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IK67YVHF.js index 4bcd0c1..c3e9fec 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-4VABFUPG.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IK67YVHF.js @@ -4,24 +4,27 @@ import { import { VSlideYTransition } from "./chunk-B4JFJDWM.js"; +import { + MaybeTransition, + makeTransitionProps +} from "./chunk-CAGZXMOS.js"; import { makeDensityProps, useDensity } from "./chunk-TM3MIDYC.js"; import { VIcon -} from "./chunk-CMZ4UYUX.js"; +} from "./chunk-4XZHKYGH.js"; import { - MaybeTransition, - makeTransitionProps -} from "./chunk-CAGZXMOS.js"; + IconValue +} from "./chunk-OJDZBU5D.js"; +import { + useTextColor +} from "./chunk-BHV5Z34M.js"; import { makeDimensionProps, useDimension } from "./chunk-6EZKHCRW.js"; -import { - IconValue -} from "./chunk-OJDZBU5D.js"; import { useLocale, useRtl @@ -30,9 +33,6 @@ import { useProxiedModel, useToggleScope } from "./chunk-KA77II4V.js"; -import { - useTextColor -} from "./chunk-BHV5Z34M.js"; import { makeThemeProps, provideTheme @@ -69,34 +69,8 @@ import { watch } from "./chunk-2MKFL3BX.js"; -// node_modules/vuetify/lib/components/VLabel/VLabel.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VLabel/VLabel.css"; -var makeVLabelProps = propsFactory({ - text: String, - onClick: EventProp(), - ...makeComponentProps(), - ...makeThemeProps() -}, "VLabel"); -var VLabel = genericComponent()({ - name: "VLabel", - props: makeVLabelProps(), - setup(props, _ref) { - let { - slots - } = _ref; - useRender(() => createBaseVNode("label", { - "class": normalizeClass(["v-label", { - "v-label--clickable": !!props.onClick - }, props.class]), - "style": normalizeStyle(props.style), - "onClick": props.onClick - }, [props.text, slots.default?.()])); - return {}; - } -}); - // node_modules/vuetify/lib/components/VMessages/VMessages.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VMessages/VMessages.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VMessages/VMessages.css"; var makeVMessagesProps = propsFactory({ active: Boolean, color: String, @@ -143,7 +117,7 @@ var VMessages = genericComponent()({ }); // node_modules/vuetify/lib/components/VInput/VInput.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VInput/VInput.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VInput/VInput.css"; // node_modules/vuetify/lib/components/VInput/InputIcon.js function useInputIcon(props) { @@ -548,15 +522,41 @@ var VInput = genericComponent()({ } }); +// node_modules/vuetify/lib/components/VLabel/VLabel.js +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VLabel/VLabel.css"; +var makeVLabelProps = propsFactory({ + text: String, + onClick: EventProp(), + ...makeComponentProps(), + ...makeThemeProps() +}, "VLabel"); +var VLabel = genericComponent()({ + name: "VLabel", + props: makeVLabelProps(), + setup(props, _ref) { + let { + slots + } = _ref; + useRender(() => createBaseVNode("label", { + "class": normalizeClass(["v-label", { + "v-label--clickable": !!props.onClick + }, props.class]), + "style": normalizeStyle(props.style), + "onClick": props.onClick + }, [props.text, slots.default?.()])); + return {}; + } +}); + export { - VLabel, useInputIcon, + VMessages, makeFocusProps, useFocus, - VMessages, makeValidationProps, useValidation, makeVInputProps, - VInput + VInput, + VLabel }; -//# sourceMappingURL=chunk-4VABFUPG.js.map +//# sourceMappingURL=chunk-IK67YVHF.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IK67YVHF.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IK67YVHF.js.map new file mode 100644 index 0000000..7f99363 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IK67YVHF.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../vuetify/src/components/VMessages/VMessages.tsx", "../../vuetify/src/components/VInput/VInput.tsx", "../../vuetify/src/components/VInput/InputIcon.tsx", "../../vuetify/src/composables/focus.ts", "../../vuetify/src/labs/rules/rules.ts", "../../vuetify/src/composables/validation.ts", "../../vuetify/src/components/VLabel/VLabel.tsx"], + "sourcesContent": ["// Styles\nimport './VMessages.sass'\n\n// Components\nimport { VSlideYTransition } from '@/components/transitions'\n\n// Composables\nimport { useTextColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { Component, PropType } from 'vue'\n\nexport type VMessageSlot = {\n message: string\n}\n\nexport type VMessagesSlots = {\n message: VMessageSlot\n}\n\nexport const makeVMessagesProps = propsFactory({\n active: Boolean,\n color: String,\n messages: {\n type: [Array, String] as PropType,\n default: () => ([]),\n },\n\n ...makeComponentProps(),\n ...makeTransitionProps({\n transition: {\n component: VSlideYTransition as Component,\n leaveAbsolute: true,\n group: true,\n },\n }),\n}, 'VMessages')\n\nexport const VMessages = genericComponent()({\n name: 'VMessages',\n\n props: makeVMessagesProps(),\n\n setup (props, { slots }) {\n const messages = computed(() => wrapInArray(props.messages))\n const { textColorClasses, textColorStyles } = useTextColor(() => props.color)\n\n useRender(() => (\n \n { props.active && (\n messages.value.map((message, i) => (\n \n { slots.message ? slots.message({ message }) : message }\n \n ))\n )}\n \n ))\n\n return {}\n },\n})\n\nexport type VMessages = InstanceType\n", "// Styles\nimport './VInput.sass'\n\n// Components\nimport { useInputIcon } from '@/components/VInput/InputIcon'\nimport { VMessages } from '@/components/VMessages/VMessages'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { IconValue } from '@/composables/icons'\nimport { useRtl } from '@/composables/locale'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeValidationProps, useValidation } from '@/composables/validation'\n\n// Utilities\nimport { computed, toRef, useId } from 'vue'\nimport { EventProp, genericComponent, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef, PropType, Ref } from 'vue'\nimport type { VMessageSlot } from '@/components/VMessages/VMessages'\nimport type { GenericProps } from '@/util'\n\nexport interface VInputSlot {\n id: ComputedRef\n messagesId: ComputedRef\n isDirty: ComputedRef\n isDisabled: ComputedRef\n isReadonly: ComputedRef\n isPristine: Ref\n isValid: ComputedRef\n isValidating: Ref\n hasDetails: Ref\n reset: () => void\n resetValidation: () => void\n validate: () => void\n}\n\nexport const makeVInputProps = propsFactory({\n id: String,\n appendIcon: IconValue,\n baseColor: String,\n centerAffix: {\n type: Boolean,\n default: true,\n },\n color: String,\n glow: Boolean,\n iconColor: [Boolean, String],\n prependIcon: IconValue,\n hideDetails: [Boolean, String] as PropType,\n hideSpinButtons: Boolean,\n hint: String,\n persistentHint: Boolean,\n messages: {\n type: [Array, String] as PropType,\n default: () => ([]),\n },\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n validator: (v: any) => ['horizontal', 'vertical'].includes(v),\n },\n\n 'onClick:prepend': EventProp<[MouseEvent]>(),\n 'onClick:append': EventProp<[MouseEvent]>(),\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...pick(makeDimensionProps(), [\n 'maxWidth',\n 'minWidth',\n 'width',\n ]),\n ...makeThemeProps(),\n ...makeValidationProps(),\n}, 'VInput')\n\nexport type VInputSlots = {\n default: VInputSlot\n prepend: VInputSlot\n append: VInputSlot\n details: VInputSlot\n message: VMessageSlot\n}\n\nexport const VInput = genericComponent(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VInputSlots,\n) => GenericProps>()({\n name: 'VInput',\n\n props: {\n ...makeVInputProps(),\n },\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { attrs, slots, emit }) {\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { themeClasses } = provideTheme(props)\n const { rtlClasses } = useRtl()\n const { InputIcon } = useInputIcon(props)\n\n const uid = useId()\n const id = computed(() => props.id || `input-${uid}`)\n\n const {\n errorMessages,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n validationClasses,\n } = useValidation(props, 'v-input', id)\n\n const messages = computed(() => {\n if (props.errorMessages?.length || (!isPristine.value && errorMessages.value.length)) {\n return errorMessages.value\n } else if (props.hint && (props.persistentHint || props.focused)) {\n return props.hint\n } else {\n return props.messages\n }\n })\n\n const hasMessages = toRef(() => messages.value.length > 0)\n\n const hasDetails = toRef(() => !props.hideDetails || (\n props.hideDetails === 'auto' &&\n (hasMessages.value || !!slots.details)\n ))\n\n const messagesId = computed(() => hasDetails.value ? `${id.value}-messages` : undefined)\n\n const slotProps = computed(() => ({\n id,\n messagesId,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n hasDetails,\n reset,\n resetValidation,\n validate,\n }))\n\n const color = toRef(() => {\n return props.error || props.disabled ? undefined\n : props.focused ? props.color\n : props.baseColor\n })\n\n const iconColor = toRef(() => {\n if (!props.iconColor) return undefined\n\n return props.iconColor === true ? color.value : props.iconColor\n })\n\n useRender(() => {\n const hasPrepend = !!(slots.prepend || props.prependIcon)\n const hasAppend = !!(slots.append || props.appendIcon)\n\n return (\n \n { hasPrepend && (\n
\n { slots.prepend\n ? slots.prepend(slotProps.value)\n : (props.prependIcon && (\n \n ))\n }\n
\n )}\n\n { slots.default && (\n
\n { slots.default?.(slotProps.value) }\n
\n )}\n\n { hasAppend && (\n
\n { slots.append\n ? slots.append(slotProps.value)\n : (props.appendIcon && (\n \n ))\n }\n
\n )}\n\n { hasDetails.value && (\n \n \n\n { slots.details?.(slotProps.value) }\n \n )}\n \n )\n })\n\n return {\n reset,\n resetValidation,\n validate,\n isValid,\n errorMessages,\n }\n },\n})\n\nexport type VInput = InstanceType\n", "// Components\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { callEvent } from '@/util'\n\n// Types\nimport type { IconValue } from '@/composables/icons'\nimport type { EventProp } from '@/util'\n\ntype names = 'clear' | 'prepend' | 'append' | 'appendInner' | 'prependInner'\n\ntype InputIconProps = {\n label: string | undefined\n} & {\n [K in `${T}Icon`]: IconValue | undefined\n} & {\n [K in `onClick:${T}`]: EventProp | undefined\n}\n\ntype Listeners = U extends `onClick:${infer V extends names}` ? V : never\n\nexport function useInputIcon> (props: T & InputIconProps) {\n const { t } = useLocale()\n\n function InputIcon ({ name, color, ...attrs }: { name: Extract, color?: string }) {\n const localeKey = {\n prepend: 'prependAction',\n prependInner: 'prependAction',\n append: 'appendAction',\n appendInner: 'appendAction',\n clear: 'clear',\n }[name]\n const listener = props[`onClick:${name}`] as EventProp | undefined\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter' && e.key !== ' ') return\n\n e.preventDefault()\n e.stopPropagation()\n callEvent(listener, new PointerEvent('click', e))\n }\n\n const label = listener && localeKey\n ? t(`$vuetify.input.${localeKey}`, props.label ?? '')\n : undefined\n\n return (\n \n )\n }\n\n return { InputIcon }\n}\n", "// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { EventProp, getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nexport interface FocusProps {\n focused: boolean\n 'onUpdate:focused': ((focused: boolean) => any) | undefined\n}\n\n// Composables\nexport const makeFocusProps = propsFactory({\n focused: Boolean,\n 'onUpdate:focused': EventProp<[boolean]>(),\n}, 'focus')\n\nexport function useFocus (\n props: FocusProps,\n name = getCurrentInstanceName()\n) {\n const isFocused = useProxiedModel(props, 'focused')\n const focusClasses = toRef(() => {\n return ({\n [`${name}--focused`]: isFocused.value,\n })\n })\n\n function focus () {\n isFocused.value = true\n }\n\n function blur () {\n isFocused.value = false\n }\n\n return { focusClasses, isFocused, focus, blur }\n}\n", "// Utilities\nimport { computed, inject, toRef } from 'vue'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\nimport type { LocaleInstance } from '@/composables/locale'\nimport type { ValidationProps, ValidationRule } from '@/composables/validation'\n\nexport type ValidationRuleBuilderWithoutOptions = (err?: string) => ValidationRule\nexport type ValidationRuleBuilderWithOptions = (options: T, err?: string) => ValidationRule\nexport type ValidationRuleBuilder =\n | ValidationRuleBuilderWithoutOptions\n | ValidationRuleBuilderWithOptions\n\nexport interface RuleAliases {\n [name: string]: ValidationRuleBuilder\n required: ValidationRuleBuilderWithoutOptions\n email: ValidationRuleBuilderWithoutOptions\n number: ValidationRuleBuilderWithoutOptions\n integer: ValidationRuleBuilderWithoutOptions\n capital: ValidationRuleBuilderWithoutOptions\n maxLength: ValidationRuleBuilderWithOptions\n minLength: ValidationRuleBuilderWithOptions\n strictLength: ValidationRuleBuilderWithOptions\n exclude: ValidationRuleBuilderWithOptions\n notEmpty: ValidationRuleBuilderWithoutOptions\n pattern: ValidationRuleBuilderWithOptions\n}\n\nexport type RulesOptions = {\n aliases?: Partial\n}\n\ntype ValidationRuleParams = [any, string?]\nexport type ValidationAlias = string | [string, ...ValidationRuleParams]\n\nexport type RulesInstance = {\n resolve: (fn: () => ValidationProps['rules']) => Readonly>\n aliases: RuleAliases\n}\n\nexport function createRules (options: RulesOptions | undefined, locale: LocaleInstance) {\n const { t } = locale\n\n const aliases: RuleAliases = {\n required: (err?: string) => {\n return (v: any) => {\n // If the modifier .number is used, the 0 will be a number and it's a falsy value so we need to check for it\n return v === 0 || !!v || t(err || '$vuetify.rules.required')\n }\n },\n email: (err?: string) => {\n return (v: any) => (!v || (typeof v === 'string' && /^.+@\\S+\\.\\S+$/.test(v))) || t(err || '$vuetify.rules.email')\n },\n number: (err?: string) => {\n return (v: string) => !v || !isNaN(Number(v)) || t(err || '$vuetify.rules.number')\n },\n integer: (err?: string) => {\n return (v: string) => (/^[\\d]*$/.test(v)) || t(err || '$vuetify.rules.integer')\n },\n capital: (err?: string) => {\n return (v: string) => (/^[A-Z]*$/.test(v)) || t(err || '$vuetify.rules.capital')\n },\n maxLength: (len: number, err?: string) => {\n return (v: any) => (!v || v.length <= len) || t(err || '$vuetify.rules.maxLength', len)\n },\n minLength: (len: number, err?: string) => {\n return (v: any) => (!v || v.length >= len) || t(err || '$vuetify.rules.minLength', len)\n },\n strictLength: (len: number, err?: string) => {\n return (v: any) => (!v || v.length === len) || t(err || '$vuetify.rules.strictLength', len)\n },\n exclude: (forbiddenCharacters: string[], err?: string) => {\n return (v: string) => {\n let error: string | true = true\n for (const character of forbiddenCharacters) {\n if (v.includes(character)) error = err || t('$vuetify.rules.exclude', character)\n }\n return error\n }\n },\n notEmpty: (err?: string) => {\n return (v: any) => (v && v.length > 0) || t(err || '$vuetify.rules.notEmpty')\n },\n pattern: (pattern: RegExp, err?: string) => {\n return (v: any) => (!v || pattern.test(v) || t(err || '$vuetify.rules.pattern'))\n },\n\n ...options?.aliases,\n }\n\n function resolve (fn: () => ValidationProps['rules']) {\n return computed(() => fn().map(rule => {\n let ruleName: string | null = null\n let ruleParams: ValidationRuleParams = [undefined]\n if (Array.isArray(rule)) {\n ruleName = rule[0]\n ruleParams = rule.slice(1) as ValidationRuleParams\n } else if (typeof rule === 'string') {\n ruleName = rule\n }\n\n if (ruleName !== null) {\n if (ruleName.startsWith('$')) {\n ruleName = ruleName.slice(1)\n }\n\n return aliases[ruleName]?.(...ruleParams)\n } else {\n return rule\n }\n }))\n }\n\n return {\n resolve,\n aliases,\n }\n}\n\nexport const RulesSymbol: InjectionKey = Symbol.for('vuetify:rules')\n\nexport function useRules (): RuleAliases\nexport function useRules (fn: () => ValidationProps['rules']): Readonly> | Readonly>\n\nexport function useRules (fn?: () => ValidationProps['rules']) {\n const rules = inject(RulesSymbol, null)\n\n if (!fn) {\n if (!rules) {\n throw new Error('Could not find Vuetify rules injection')\n }\n return rules.aliases\n }\n\n return rules?.resolve(fn) ?? toRef(fn)\n}\n", "// Composables\nimport { makeFocusProps } from '@/composables/focus'\nimport { useForm } from '@/composables/form'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useToggleScope } from '@/composables/toggleScope'\nimport { useRules } from '@/labs/rules'\n\n// Utilities\nimport { computed, nextTick, onBeforeMount, onBeforeUnmount, onMounted, ref, shallowRef, unref, useId, watch } from 'vue'\nimport { getCurrentInstance, getCurrentInstanceName, propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { ValidationAlias } from '@/labs/rules'\nimport type { EventProp, MaybeRef } from '@/util'\n\nexport type ValidationResult = string | boolean\nexport type ValidationRule =\n | ValidationResult\n | PromiseLike\n | ((value: any) => ValidationResult)\n | ((value: any) => PromiseLike)\n\ntype ValidateOnValue = 'blur' | 'input' | 'submit' | 'invalid-input'\ntype ValidateOn =\n | ValidateOnValue\n | `${ValidateOnValue} lazy`\n | `${ValidateOnValue} eager`\n | `lazy ${ValidateOnValue}`\n | `eager ${ValidateOnValue}`\n | 'lazy'\n | 'eager'\n\nexport interface ValidationProps {\n disabled: boolean | null\n error: boolean\n errorMessages: string | readonly string[] | null\n focused: boolean\n maxErrors: string | number\n name: string | undefined\n label: string | undefined\n readonly: boolean | null\n rules: readonly (ValidationRule | ValidationAlias)[]\n modelValue: any\n 'onUpdate:modelValue': EventProp | undefined\n validateOn?: ValidateOn\n validationValue: any\n}\n\nexport const makeValidationProps = propsFactory({\n disabled: {\n type: Boolean as PropType,\n default: null,\n },\n error: Boolean,\n errorMessages: {\n type: [Array, String] as PropType,\n default: () => ([]),\n },\n maxErrors: {\n type: [Number, String],\n default: 1,\n },\n name: String,\n label: String,\n readonly: {\n type: Boolean as PropType,\n default: null,\n },\n rules: {\n type: Array as PropType,\n default: () => ([]),\n },\n modelValue: null,\n validateOn: String as PropType,\n validationValue: null,\n\n ...makeFocusProps(),\n}, 'validation')\n\nexport function useValidation (\n props: ValidationProps,\n name = getCurrentInstanceName(),\n id: MaybeRef = useId(),\n) {\n const model = useProxiedModel(props, 'modelValue')\n const validationModel = computed(() => props.validationValue === undefined ? model.value : props.validationValue)\n const form = useForm(props)\n const rules = useRules(() => props.rules)\n const internalErrorMessages = ref([])\n const isPristine = shallowRef(true)\n const isDirty = computed(() => !!(\n wrapInArray(model.value === '' ? null : model.value).length ||\n wrapInArray(validationModel.value === '' ? null : validationModel.value).length\n ))\n const errorMessages = computed(() => {\n return props.errorMessages?.length\n ? wrapInArray(props.errorMessages).concat(internalErrorMessages.value).slice(0, Math.max(0, Number(props.maxErrors)))\n : internalErrorMessages.value\n })\n const validateOn = computed(() => {\n let value = (props.validateOn ?? form.validateOn?.value) || 'input'\n if (value === 'lazy') value = 'input lazy'\n if (value === 'eager') value = 'input eager'\n const set = new Set(value?.split(' ') ?? [])\n\n return {\n input: set.has('input'),\n blur: set.has('blur') || set.has('input') || set.has('invalid-input'),\n invalidInput: set.has('invalid-input'),\n lazy: set.has('lazy'),\n eager: set.has('eager'),\n }\n })\n const isValid = computed(() => {\n if (props.error || props.errorMessages?.length) return false\n if (!props.rules.length) return true\n if (isPristine.value) {\n return internalErrorMessages.value.length || validateOn.value.lazy ? null : true\n } else {\n return !internalErrorMessages.value.length\n }\n })\n const isValidating = shallowRef(false)\n const validationClasses = computed(() => {\n return {\n [`${name}--error`]: isValid.value === false,\n [`${name}--dirty`]: isDirty.value,\n [`${name}--disabled`]: form.isDisabled.value,\n [`${name}--readonly`]: form.isReadonly.value,\n }\n })\n\n const vm = getCurrentInstance('validation')\n const uid = computed(() => props.name ?? unref(id))\n\n onBeforeMount(() => {\n form.register?.({\n id: uid.value,\n vm,\n validate,\n reset,\n resetValidation,\n })\n })\n\n onBeforeUnmount(() => {\n form.unregister?.(uid.value)\n })\n\n onMounted(async () => {\n if (!validateOn.value.lazy) {\n await validate(!validateOn.value.eager)\n }\n form.update?.(uid.value, isValid.value, errorMessages.value)\n })\n\n useToggleScope(() => validateOn.value.input || (validateOn.value.invalidInput && isValid.value === false), () => {\n watch(validationModel, () => {\n if (validationModel.value != null) {\n validate()\n } else if (props.focused) {\n const unwatch = watch(() => props.focused, val => {\n if (!val) validate()\n\n unwatch()\n })\n }\n })\n })\n\n useToggleScope(() => validateOn.value.blur, () => {\n watch(() => props.focused, val => {\n if (!val) validate()\n })\n })\n\n watch([isValid, errorMessages], () => {\n form.update?.(uid.value, isValid.value, errorMessages.value)\n })\n\n async function reset () {\n model.value = null\n await nextTick()\n await resetValidation()\n }\n\n async function resetValidation () {\n isPristine.value = true\n if (!validateOn.value.lazy) {\n await validate(!validateOn.value.eager)\n } else {\n internalErrorMessages.value = []\n }\n }\n\n async function validate (silent = false) {\n const results = []\n\n isValidating.value = true\n\n for (const rule of rules.value) {\n if (results.length >= Number(props.maxErrors ?? 1)) {\n break\n }\n\n const handler = typeof rule === 'function' ? rule : () => rule\n const result = await handler(validationModel.value)\n\n if (result === true) continue\n\n if (result !== false && typeof result !== 'string') {\n // eslint-disable-next-line no-console\n console.warn(`${result} is not a valid value. Rule functions must return boolean true or a string.`)\n\n continue\n }\n\n results.push(result || '')\n }\n\n internalErrorMessages.value = results\n isValidating.value = false\n isPristine.value = silent\n\n return internalErrorMessages.value\n }\n\n return {\n errorMessages,\n isDirty,\n isDisabled: form.isDisabled,\n isReadonly: form.isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n validationClasses,\n }\n}\n", "// Styles\nimport './VLabel.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeThemeProps } from '@/composables/theme'\n\n// Utilities\nimport { EventProp, genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVLabelProps = propsFactory({\n text: String,\n\n onClick: EventProp<[MouseEvent]>(),\n\n ...makeComponentProps(),\n ...makeThemeProps(),\n}, 'VLabel')\n\nexport const VLabel = genericComponent()({\n name: 'VLabel',\n\n props: makeVLabelProps(),\n\n setup (props, { slots }) {\n useRender(() => (\n \n { props.text }\n\n { slots.default?.() }\n \n ))\n\n return {}\n },\n})\n\nexport type VLabel = InstanceType\n"], + "mappings": "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", + "names": ["makeVMessagesProps", "propsFactory", "active", "Boolean", "color", "String", "messages", "type", "Array", "default", "makeComponentProps", "makeTransitionProps", "transition", "component", "VSlideYTransition", "leaveAbsolute", "group", "VMessages", "genericComponent", "name", "props", "setup", "_ref", "slots", "computed", "wrapInArray", "textColorClasses", "textColorStyles", "useTextColor", "useRender", "_createVNode", "MaybeTransition", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "map", "message", "i", "_createElementVNode", "useInputIcon", "props", "t", "useLocale", "InputIcon", "_ref", "name", "color", "attrs", "localeKey", "prepend", "prependInner", "append", "appendInner", "clear", "listener", "onKeydown", "e", "key", "preventDefault", "stopPropagation", "callEvent", "PointerEvent", "label", "undefined", "_createVNode", "VIcon", "_mergeProps", "makeFocusProps", "propsFactory", "focused", "Boolean", "EventProp", "useFocus", "props", "name", "arguments", "length", "undefined", "getCurrentInstanceName", "isFocused", "useProxiedModel", "focusClasses", "toRef", "value", "focus", "blur", "RulesSymbol", "Symbol", "for", "useRules", "fn", "rules", "inject", "Error", "aliases", "resolve", "toRef", "makeValidationProps", "propsFactory", "disabled", "type", "Boolean", "default", "error", "errorMessages", "Array", "String", "maxErrors", "Number", "name", "label", "readonly", "rules", "modelValue", "validateOn", "validationValue", "makeFocusProps", "useValidation", "props", "arguments", "length", "undefined", "getCurrentInstanceName", "id", "useId", "model", "useProxiedModel", "validationModel", "computed", "value", "form", "useForm", "useRules", "internalErrorMessages", "ref", "isPristine", "shallowRef", "isDirty", "wrapInArray", "concat", "slice", "Math", "max", "set", "Set", "split", "input", "has", "blur", "invalidInput", "lazy", "eager", "isValid", "isValidating", "validationClasses", "isDisabled", "isReadonly", "vm", "getCurrentInstance", "uid", "unref", "onBeforeMount", "register", "validate", "reset", "resetValidation", "onBeforeUnmount", "unregister", "onMounted", "update", "useToggleScope", "watch", "focused", "unwatch", "val", "nextTick", "silent", "results", "rule", "handler", "result", "console", "warn", "push", "makeVInputProps", "propsFactory", "id", "String", "appendIcon", "IconValue", "baseColor", "centerAffix", "type", "Boolean", "default", "color", "glow", "iconColor", "prependIcon", "hideDetails", "hideSpinButtons", "hint", "persistentHint", "messages", "Array", "direction", "validator", "v", "includes", "EventProp", "makeComponentProps", "makeDensityProps", "pick", "makeDimensionProps", "makeThemeProps", "makeValidationProps", "VInput", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "attrs", "slots", "emit", "densityClasses", "useDensity", "dimensionStyles", "useDimension", "themeClasses", "provideTheme", "rtlClasses", "useRtl", "InputIcon", "useInputIcon", "uid", "useId", "computed", "errorMessages", "isDirty", "isDisabled", "isReadonly", "isPristine", "isValid", "isValidating", "reset", "resetValidation", "validate", "validationClasses", "useValidation", "length", "focused", "hasMessages", "toRef", "hasDetails", "details", "messagesId", "undefined", "slotProps", "error", "disabled", "useRender", "hasPrepend", "prepend", "hasAppend", "append", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "_createVNode", "VMessages", "message", "makeVLabelProps", "propsFactory", "text", "String", "onClick", "EventProp", "makeComponentProps", "makeThemeProps", "VLabel", "genericComponent", "name", "props", "setup", "_ref", "slots", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "default"] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-J7Q2NMV7.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ITO3JWXJ.js similarity index 96% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-J7Q2NMV7.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ITO3JWXJ.js index cef65a8..5e0afbe 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-J7Q2NMV7.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ITO3JWXJ.js @@ -3,37 +3,37 @@ import { makeFocusProps, useFocus, useInputIcon -} from "./chunk-4VABFUPG.js"; +} from "./chunk-IK67YVHF.js"; import { VExpandXTransition, VSlideYTransition } from "./chunk-B4JFJDWM.js"; +import { + MaybeTransition, + makeTransitionProps +} from "./chunk-CAGZXMOS.js"; import { LoaderSlot, makeLoaderProps, useLoader -} from "./chunk-U2DSRSME.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; +} from "./chunk-UXZ55AO7.js"; import { makeRoundedProps, useRounded } from "./chunk-AQK3CYVW.js"; import { - MaybeTransition, - makeTransitionProps -} from "./chunk-CAGZXMOS.js"; + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { IconValue } from "./chunk-OJDZBU5D.js"; -import { - useRtl -} from "./chunk-ENTLCOCZ.js"; import { useBackgroundColor, useTextColor } from "./chunk-BHV5Z34M.js"; +import { + useRtl +} from "./chunk-ENTLCOCZ.js"; import { makeThemeProps, provideTheme @@ -67,7 +67,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VCounter/VCounter.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCounter/VCounter.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCounter/VCounter.css"; var makeVCounterProps = propsFactory({ active: Boolean, disabled: Boolean, @@ -135,7 +135,7 @@ var VFieldLabel = genericComponent()({ }); // node_modules/vuetify/lib/components/VField/VField.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VField/VField.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VField/VField.css"; var allowedVariants = ["underlined", "outlined", "filled", "solo", "solo-inverted", "solo-filled", "plain"]; var makeVFieldProps = propsFactory({ appendInnerIcon: IconValue, @@ -452,4 +452,4 @@ export { makeVFieldProps, VField }; -//# sourceMappingURL=chunk-J7Q2NMV7.js.map +//# sourceMappingURL=chunk-ITO3JWXJ.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-J7Q2NMV7.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ITO3JWXJ.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-J7Q2NMV7.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ITO3JWXJ.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ERI3RTQS.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IZDIYS2S.js similarity index 98% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ERI3RTQS.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IZDIYS2S.js index fb65ce7..31f99f0 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ERI3RTQS.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IZDIYS2S.js @@ -1,60 +1,63 @@ import { VTextField, makeVTextFieldProps -} from "./chunk-VSEC5QGQ.js"; +} from "./chunk-6MO6MKTY.js"; +import { + useAutocomplete +} from "./chunk-IZQZFEAL.js"; import { VCheckboxBtn -} from "./chunk-BYBKODOB.js"; +} from "./chunk-6HLLVLOR.js"; import { VChip -} from "./chunk-SHBPUR7N.js"; +} from "./chunk-PLNIG6WP.js"; import { VMenu -} from "./chunk-HGIC64KW.js"; +} from "./chunk-LPDOFVDK.js"; import { VList, VListItem, VListSubheader, makeItemsProps, useItems -} from "./chunk-HV7P7R7J.js"; +} from "./chunk-MQSMF5CI.js"; import { VAvatar -} from "./chunk-Z3677HMS.js"; +} from "./chunk-SXI5CS7S.js"; import { - useAutocomplete -} from "./chunk-IZQZFEAL.js"; + VDivider +} from "./chunk-X3WY3J75.js"; import { useInputIcon -} from "./chunk-4VABFUPG.js"; +} from "./chunk-IK67YVHF.js"; import { useForm } from "./chunk-GAYXO4FM.js"; import { VDialogTransition } from "./chunk-B4JFJDWM.js"; -import { - VIcon -} from "./chunk-CMZ4UYUX.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; import { forwardRefs } from "./chunk-GUNW7S2L.js"; import { makeTransitionProps } from "./chunk-CAGZXMOS.js"; -import { - makeDimensionProps, - useDimension -} from "./chunk-6EZKHCRW.js"; import { useDisplay } from "./chunk-N4LJHDYD.js"; +import { + VIcon +} from "./chunk-4XZHKYGH.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { IconValue } from "./chunk-OJDZBU5D.js"; +import { + makeDimensionProps, + useDimension +} from "./chunk-6EZKHCRW.js"; import { useResizeObserver } from "./chunk-XDSAO7OT.js"; @@ -65,9 +68,6 @@ import { useProxiedModel, useToggleScope } from "./chunk-KA77II4V.js"; -import { - VDivider -} from "./chunk-WXMECWZN.js"; import { IN_BROWSER, camelizeProps, @@ -109,11 +109,8 @@ import { watchEffect } from "./chunk-2MKFL3BX.js"; -// node_modules/vuetify/lib/components/VSelect/VSelect.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSelect/VSelect.css"; - // node_modules/vuetify/lib/components/VVirtualScroll/VVirtualScroll.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VVirtualScroll/VVirtualScroll.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VVirtualScroll/VVirtualScroll.css"; // node_modules/vuetify/lib/components/VVirtualScroll/VVirtualScrollItem.js var makeVVirtualScrollItemProps = propsFactory({ @@ -494,6 +491,9 @@ var VVirtualScroll = genericComponent()({ } }); +// node_modules/vuetify/lib/components/VSelect/VSelect.js +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSelect/VSelect.css"; + // node_modules/vuetify/lib/components/VSelect/useScrolling.js function useScrolling(listRef, textFieldRef) { const isScrolling = shallowRef(false); @@ -1079,4 +1079,4 @@ export { makeSelectProps, VSelect }; -//# sourceMappingURL=chunk-ERI3RTQS.js.map +//# sourceMappingURL=chunk-IZDIYS2S.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IZDIYS2S.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IZDIYS2S.js.map new file mode 100644 index 0000000..5a04d19 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-IZDIYS2S.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../vuetify/src/components/VVirtualScroll/VVirtualScroll.tsx", "../../vuetify/src/components/VVirtualScroll/VVirtualScrollItem.tsx", "../../vuetify/src/composables/virtual.ts", "../../vuetify/src/components/VSelect/VSelect.tsx", "../../vuetify/src/components/VSelect/useScrolling.ts", "../../vuetify/src/composables/menuActivator.ts"], + "sourcesContent": ["// Styles\nimport './VVirtualScroll.sass'\n\n// Components\nimport { VVirtualScrollItem } from './VVirtualScrollItem'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { useToggleScope } from '@/composables/toggleScope'\nimport { makeVirtualProps, useVirtual } from '@/composables/virtual'\n\n// Utilities\nimport { onMounted, onScopeDispose, toRef } from 'vue'\nimport {\n convertToUnit,\n genericComponent,\n getCurrentInstance,\n getScrollParent,\n propsFactory,\n useRender,\n} from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { GenericProps } from '@/util'\n\nexport interface VVirtualScrollSlot {\n item: T\n index: number\n}\n\nexport const makeVVirtualScrollProps = propsFactory({\n items: {\n type: Array as PropType,\n default: () => ([]),\n },\n renderless: Boolean,\n\n ...makeVirtualProps(),\n ...makeComponentProps(),\n ...makeDimensionProps(),\n}, 'VVirtualScroll')\n\nexport const VVirtualScroll = genericComponent(\n props: {\n items?: readonly T[]\n renderless?: Renderless\n },\n slots: {\n default: VVirtualScrollSlot & (Renderless extends true ? {\n itemRef: Ref\n } : {})\n }\n) => GenericProps>()({\n name: 'VVirtualScroll',\n\n props: makeVVirtualScrollProps(),\n\n setup (props, { slots }) {\n const vm = getCurrentInstance('VVirtualScroll')\n const { dimensionStyles } = useDimension(props)\n const {\n calculateVisibleItems,\n containerRef,\n markerRef,\n handleScroll,\n handleScrollend,\n handleItemResize,\n scrollToIndex,\n paddingTop,\n paddingBottom,\n computedItems,\n } = useVirtual(props, toRef(() => props.items))\n\n useToggleScope(() => props.renderless, () => {\n function handleListeners (add = false) {\n const method = add ? 'addEventListener' : 'removeEventListener'\n\n if (containerRef.value === document.documentElement) {\n document[method]('scroll', handleScroll, { passive: true })\n document[method]('scrollend', handleScrollend)\n } else {\n containerRef.value?.[method]('scroll', handleScroll, { passive: true })\n containerRef.value?.[method]('scrollend', handleScrollend)\n }\n }\n\n onMounted(() => {\n containerRef.value = getScrollParent(vm.vnode.el as HTMLElement, true)\n handleListeners(true)\n })\n onScopeDispose(handleListeners)\n })\n\n useRender(() => {\n const children = computedItems.value.map(item => (\n handleItemResize(item.index, height) }\n >\n { slotProps => slots.default?.({ item: item.raw, index: item.index, ...slotProps }) }\n \n ))\n\n return props.renderless ? (\n <>\n
\n { children }\n
\n \n ) : (\n \n \n { children }\n
\n
\n )\n })\n\n return {\n calculateVisibleItems,\n scrollToIndex,\n }\n },\n})\n\nexport type VVirtualScroll = InstanceType\n", "// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { watch } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { GenericProps, TemplateRef } from '@/util'\n\nexport const makeVVirtualScrollItemProps = propsFactory({\n renderless: Boolean,\n\n ...makeComponentProps(),\n}, 'VVirtualScrollItem')\n\nexport const VVirtualScrollItem = genericComponent(\n props: {\n renderless?: Renderless\n },\n slots: {\n default: Renderless extends true ? {\n itemRef: TemplateRef\n } : never\n }\n) => GenericProps>()({\n name: 'VVirtualScrollItem',\n\n inheritAttrs: false,\n\n props: makeVVirtualScrollItemProps(),\n\n emits: {\n 'update:height': (height: number) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const { resizeRef, contentRect } = useResizeObserver(undefined, 'border')\n\n watch(() => contentRect.value?.height, height => {\n if (height != null) emit('update:height', height)\n })\n\n useRender(() => props.renderless ? (\n <>\n { slots.default?.({ itemRef: resizeRef }) }\n \n ) : (\n \n { (slots.default as any)?.() }\n \n ))\n },\n})\n", "// Composables\nimport { useDisplay } from '@/composables/display'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, nextTick, onScopeDispose, ref, shallowRef, watch, watchEffect } from 'vue'\nimport { clamp, debounce, getPropertyFromItem, IN_BROWSER, propsFactory } from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { SelectItemKey } from '@/util'\n\nconst UP = -1\nconst DOWN = 1\n\n/** Determines how large each batch of items should be */\nconst BUFFER_PX = 100\n\ntype VirtualProps = {\n itemHeight: number | string | null | undefined\n itemKey: SelectItemKey\n height: number | string | undefined\n}\n\nexport const makeVirtualProps = propsFactory({\n itemHeight: {\n type: [Number, String],\n default: null,\n },\n itemKey: {\n type: [String, Array, Function] as PropType,\n default: null,\n },\n height: [Number, String],\n}, 'virtual')\n\nexport function useVirtual (props: VirtualProps, items: Ref) {\n const display = useDisplay()\n\n const itemHeight = shallowRef(0)\n watchEffect(() => {\n itemHeight.value = parseFloat(props.itemHeight || 0)\n })\n\n const first = shallowRef(0)\n const last = shallowRef(Math.ceil(\n // Assume 16px items filling the entire screen height if\n // not provided. This is probably incorrect but it minimises\n // the chance of ending up with empty space at the bottom.\n // The default value is set here to avoid poisoning getSize()\n (parseInt(props.height!) || display.height.value) / (itemHeight.value || 16)\n ) || 1)\n const paddingTop = shallowRef(0)\n const paddingBottom = shallowRef(0)\n\n /** The scrollable element */\n const containerRef = ref()\n /** An element marking the top of the scrollable area,\n * used to add an offset if there's padding or other elements above the virtual list */\n const markerRef = ref()\n /** markerRef's offsetTop, lazily evaluated */\n let markerOffset = 0\n\n const { resizeRef, contentRect } = useResizeObserver()\n watchEffect(() => {\n resizeRef.value = containerRef.value\n })\n const viewportHeight = computed(() => {\n return containerRef.value === document.documentElement\n ? display.height.value\n : contentRect.value?.height || parseInt(props.height!) || 0\n })\n /** All static elements have been rendered and we have an assumed item height */\n const hasInitialRender = computed(() => {\n return !!(containerRef.value && markerRef.value && viewportHeight.value && itemHeight.value)\n })\n\n let sizes = Array.from({ length: items.value.length })\n let offsets = Array.from({ length: items.value.length })\n const updateTime = shallowRef(0)\n let targetScrollIndex = -1\n\n function getSize (index: number) {\n return sizes[index] || itemHeight.value\n }\n\n const updateOffsets = debounce(() => {\n const start = performance.now()\n offsets[0] = 0\n const length = items.value.length\n for (let i = 1; i <= length; i++) {\n offsets[i] = (offsets[i - 1] || 0) + getSize(i - 1)\n }\n updateTime.value = Math.max(updateTime.value, performance.now() - start)\n }, updateTime)\n\n const unwatch = watch(hasInitialRender, v => {\n if (!v) return\n // First render is complete, update offsets and visible\n // items in case our assumed item height was incorrect\n\n unwatch()\n markerOffset = markerRef.value!.offsetTop\n updateOffsets.immediate()\n calculateVisibleItems()\n\n if (!~targetScrollIndex) return\n\n nextTick(() => {\n IN_BROWSER && window.requestAnimationFrame(() => {\n scrollToIndex(targetScrollIndex)\n targetScrollIndex = -1\n })\n })\n })\n\n onScopeDispose(() => {\n updateOffsets.clear()\n })\n\n function handleItemResize (index: number, height: number) {\n const prevHeight = sizes[index]\n const prevMinHeight = itemHeight.value\n\n itemHeight.value = prevMinHeight ? Math.min(itemHeight.value, height) : height\n\n if (prevHeight !== height || prevMinHeight !== itemHeight.value) {\n sizes[index] = height\n updateOffsets()\n }\n }\n\n function calculateOffset (index: number) {\n index = clamp(index, 0, items.value.length)\n const whole = Math.floor(index)\n const fraction = index % 1\n const next = whole + 1\n const wholeOffset = offsets[whole] || 0\n const nextOffset = offsets[next] || wholeOffset\n return wholeOffset + (nextOffset - wholeOffset) * fraction\n }\n\n function calculateIndex (scrollTop: number) {\n return binaryClosest(offsets, scrollTop)\n }\n\n let lastScrollTop = 0\n let scrollVelocity = 0\n let lastScrollTime = 0\n\n watch(viewportHeight, (val, oldVal) => {\n calculateVisibleItems()\n if (val < oldVal) {\n requestAnimationFrame(() => {\n scrollVelocity = 0\n calculateVisibleItems()\n })\n }\n })\n\n let scrollTimeout = -1\n function handleScroll () {\n if (!containerRef.value || !markerRef.value) return\n\n const scrollTop = containerRef.value.scrollTop\n const scrollTime = performance.now()\n const scrollDeltaT = scrollTime - lastScrollTime\n\n if (scrollDeltaT > 500) {\n scrollVelocity = Math.sign(scrollTop - lastScrollTop)\n\n // Not super important, only update at the\n // start of a scroll sequence to avoid reflows\n markerOffset = markerRef.value.offsetTop\n } else {\n scrollVelocity = scrollTop - lastScrollTop\n }\n\n lastScrollTop = scrollTop\n lastScrollTime = scrollTime\n\n window.clearTimeout(scrollTimeout)\n scrollTimeout = window.setTimeout(handleScrollend, 500)\n\n calculateVisibleItems()\n }\n function handleScrollend () {\n if (!containerRef.value || !markerRef.value) return\n\n scrollVelocity = 0\n lastScrollTime = 0\n\n window.clearTimeout(scrollTimeout)\n calculateVisibleItems()\n }\n\n let raf = -1\n function calculateVisibleItems () {\n cancelAnimationFrame(raf)\n raf = requestAnimationFrame(_calculateVisibleItems)\n }\n function _calculateVisibleItems () {\n if (!containerRef.value || !viewportHeight.value || !itemHeight.value) return\n const scrollTop = lastScrollTop - markerOffset\n const direction = Math.sign(scrollVelocity)\n\n const startPx = Math.max(0, scrollTop - BUFFER_PX)\n const start = clamp(calculateIndex(startPx), 0, items.value.length)\n\n const endPx = scrollTop + viewportHeight.value + BUFFER_PX\n const end = clamp(calculateIndex(endPx) + 1, start + 1, items.value.length)\n\n if (\n // Only update the side we're scrolling towards,\n // the other side will be updated incidentally\n (direction !== UP || start < first.value) &&\n (direction !== DOWN || end > last.value)\n ) {\n const topOverflow = calculateOffset(first.value) - calculateOffset(start)\n const bottomOverflow = calculateOffset(end) - calculateOffset(last.value)\n const bufferOverflow = Math.max(topOverflow, bottomOverflow)\n\n if (bufferOverflow > BUFFER_PX) {\n first.value = start\n last.value = end\n } else {\n // Only update the side that's reached its limit if there's still buffer left\n if (start <= 0) first.value = start\n if (end >= items.value.length) last.value = end\n }\n }\n\n paddingTop.value = calculateOffset(first.value)\n paddingBottom.value = calculateOffset(items.value.length) - calculateOffset(last.value)\n }\n\n function scrollToIndex (index: number) {\n const offset = calculateOffset(index)\n if (!containerRef.value || (index && !offset)) {\n targetScrollIndex = index\n } else {\n containerRef.value.scrollTop = offset\n }\n }\n\n const computedItems = computed(() => {\n return items.value.slice(first.value, last.value).map((item, index) => {\n const _index = index + first.value\n return {\n raw: item,\n index: _index,\n key: getPropertyFromItem(item, props.itemKey, _index),\n }\n })\n })\n\n watch(items, () => {\n sizes = Array.from({ length: items.value.length })\n offsets = Array.from({ length: items.value.length })\n updateOffsets.immediate()\n calculateVisibleItems()\n }, { deep: 1 })\n\n return {\n calculateVisibleItems,\n containerRef,\n markerRef,\n computedItems,\n paddingTop,\n paddingBottom,\n scrollToIndex,\n handleScroll,\n handleScrollend,\n handleItemResize,\n }\n}\n\n// https://gist.github.com/robertleeplummerjr/1cc657191d34ecd0a324\nfunction binaryClosest (arr: ArrayLike, val: number) {\n let high = arr.length - 1\n let low = 0\n let mid = 0\n let item = null\n let target = -1\n\n if (arr[high]! < val) {\n return high\n }\n\n while (low <= high) {\n mid = (low + high) >> 1\n item = arr[mid]!\n\n if (item > val) {\n high = mid - 1\n } else if (item < val) {\n target = mid\n low = mid + 1\n } else if (item === val) {\n return mid\n } else {\n return low\n }\n }\n\n return target\n}\n", "// Styles\nimport './VSelect.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\nimport { VAvatar } from '@/components/VAvatar'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDivider } from '@/components/VDivider'\nimport { VIcon } from '@/components/VIcon'\nimport { useInputIcon } from '@/components/VInput/InputIcon'\nimport { VList, VListItem, VListSubheader } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from './useScrolling'\nimport { useAutocomplete } from '@/composables/autocomplete'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { IconValue } from '@/composables/icons'\nimport { makeItemsProps, useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { makeMenuActivatorProps, useMenuActivator } from '@/composables/menuActivator'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTransitionProps } from '@/composables/transition'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, toRef, watch } from 'vue'\nimport {\n camelizeProps,\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n genericComponent,\n IN_BROWSER,\n matchesSelector,\n omit,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { Component, PropType } from 'vue'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val = [T] extends [Primitive]\n ? T\n : (ReturnObject extends true ? T : any)\n\ntype Value =\n Multiple extends true\n ? readonly Val[]\n : Val | null\n\nexport const makeSelectProps = propsFactory({\n chips: Boolean,\n closableChips: Boolean,\n eager: Boolean,\n hideNoData: Boolean,\n hideSelected: Boolean,\n listProps: {\n type: Object as PropType,\n },\n menu: Boolean,\n menuIcon: {\n type: IconValue,\n default: '$dropdown',\n },\n menuProps: {\n type: Object as PropType,\n },\n multiple: Boolean,\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n openOnClear: Boolean,\n itemColor: String,\n noAutoScroll: Boolean,\n\n ...makeMenuActivatorProps(),\n ...makeItemsProps({ itemChildren: false }),\n}, 'Select')\n\nexport const makeVSelectProps = propsFactory({\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty']),\n ...makeTransitionProps({ transition: { component: VDialogTransition as Component } }),\n}, 'VSelect')\n\ntype ItemType = T extends readonly (infer U)[] ? U : never\n\nexport const VSelect = genericComponent,\n ReturnObject extends boolean = false,\n Multiple extends boolean = false,\n V extends Value = Value\n>(\n props: {\n items?: T\n itemTitle?: SelectItemKey>\n itemValue?: SelectItemKey>\n itemProps?: SelectItemKey>\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V | null\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: Omit & {\n item: { item: ListItem, index: number, props: Record }\n chip: { item: ListItem, index: number, props: Record }\n selection: { item: ListItem, index: number }\n subheader: { props: Record, index: number }\n divider: { props: Record, index: number }\n 'prepend-item': never\n 'append-item': never\n 'no-data': never\n }\n) => GenericProps>()({\n name: 'VSelect',\n\n props: makeVSelectProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (value: any) => true,\n 'update:menu': (ue: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\n const vMenuRef = ref()\n const vVirtualScrollRef = ref()\n const { items, transformIn, transformOut } = useItems(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(v === null ? [null] : wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function' ? props.counterValue(model.value)\n : typeof props.counterValue === 'number' ? props.counterValue\n : model.value.length\n })\n const form = useForm(props)\n const autocomplete = useAutocomplete(props)\n const selectedValues = computed(() => model.value.map(selection => selection.value))\n const isFocused = shallowRef(false)\n const closableChips = toRef(() => props.closableChips && !form.isReadonly.value && !form.isDisabled.value)\n const { InputIcon } = useInputIcon(props)\n\n let keyboardLookupPrefix = ''\n let keyboardLookupIndex = 0\n let keyboardLookupLastTime: number\n\n const displayItems = computed(() => {\n if (props.hideSelected) {\n return items.value.filter(item => !model.value.some(s => (props.valueComparator || deepEqual)(s, item)))\n }\n return items.value\n })\n\n const menuDisabled = computed(() => (\n (props.hideNoData && !displayItems.value.length) ||\n form.isReadonly.value || form.isDisabled.value\n ))\n const _menu = useProxiedModel(props, 'menu')\n const menu = computed({\n get: () => _menu.value,\n set: v => {\n if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return\n if (v && menuDisabled.value) return\n _menu.value = v\n },\n })\n\n const { menuId, ariaExpanded, ariaControls } = useMenuActivator(props, menu)\n\n const computedMenuProps = computed(() => {\n return {\n ...props.menuProps,\n activatorProps: {\n ...(props.menuProps?.activatorProps || {}),\n 'aria-haspopup': 'listbox', // Set aria-haspopup to 'listbox'\n },\n }\n })\n\n const listRef = ref()\n const listEvents = useScrolling(listRef, vTextFieldRef)\n\n function onClear (e: MouseEvent | KeyboardEvent) {\n if (props.openOnClear) {\n menu.value = true\n }\n }\n function onMousedownControl () {\n if (menuDisabled.value) return\n\n menu.value = !menu.value\n }\n function onListKeydown (e: KeyboardEvent) {\n if (checkPrintable(e)) {\n onKeydown(e)\n }\n }\n function onKeydown (e: KeyboardEvent) {\n if (!e.key || form.isReadonly.value) return\n\n if (['Enter', ' ', 'ArrowDown', 'ArrowUp', 'Home', 'End'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown', ' '].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape', 'Tab'].includes(e.key)) {\n menu.value = false\n }\n\n if (props.clearable && e.key === 'Backspace') {\n e.preventDefault()\n model.value = []\n onClear(e)\n return\n }\n\n if (e.key === 'Home') {\n listRef.value?.focus('first')\n } else if (e.key === 'End') {\n listRef.value?.focus('last')\n }\n\n // html select hotkeys\n const KEYBOARD_LOOKUP_THRESHOLD = 1000 // milliseconds\n\n if (!checkPrintable(e)) return\n\n const now = performance.now()\n if (now - keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {\n keyboardLookupPrefix = ''\n keyboardLookupIndex = 0\n }\n keyboardLookupPrefix += e.key.toLowerCase()\n keyboardLookupLastTime = now\n\n const items = displayItems.value\n function findItem () {\n let result = findItemBase()\n if (result) return result\n\n if (keyboardLookupPrefix.at(-1) === keyboardLookupPrefix.at(-2)) {\n // No matches but we have a repeated letter, try the next item with that prefix\n keyboardLookupPrefix = keyboardLookupPrefix.slice(0, -1)\n keyboardLookupIndex++\n result = findItemBase()\n if (result) return result\n }\n\n // Still nothing, wrap around to the top\n keyboardLookupIndex = 0\n result = findItemBase()\n if (result) return result\n\n // Still nothing, try just the new letter\n keyboardLookupPrefix = e.key.toLowerCase()\n return findItemBase()\n }\n function findItemBase () {\n for (let i = keyboardLookupIndex; i < items.length; i++) {\n const _item = items[i]\n if (_item.title.toLowerCase().startsWith(keyboardLookupPrefix)) {\n return [_item, i] as const\n }\n }\n return undefined\n }\n\n const result = findItem()\n if (!result) return\n\n const [item, index] = result\n keyboardLookupIndex = index\n listRef.value?.focus(index)\n if (!props.multiple) {\n model.value = [item]\n }\n }\n\n /** @param set - null means toggle */\n function select (item: ListItem, set: boolean | null = true) {\n if (item.props.disabled) return\n\n if (props.multiple) {\n const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value))\n const add = set == null ? !~index : set\n\n if (~index) {\n const value = add ? [...model.value, item] : [...model.value]\n value.splice(index, 1)\n model.value = value\n } else if (add) {\n model.value = [...model.value, item]\n }\n } else {\n const add = set !== false\n model.value = add ? [item] : []\n\n nextTick(() => {\n menu.value = false\n })\n }\n }\n function onBlur (e: FocusEvent) {\n if (!listRef.value?.$el.contains(e.relatedTarget as HTMLElement)) {\n menu.value = false\n }\n }\n function onAfterEnter () {\n if (props.eager) {\n vVirtualScrollRef.value?.calculateVisibleItems()\n }\n }\n function onAfterLeave () {\n if (isFocused.value) {\n vTextFieldRef.value?.focus()\n }\n }\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n }\n function onModelUpdate (v: any) {\n if (v == null) model.value = []\n else if (matchesSelector(vTextFieldRef.value, ':autofill') || matchesSelector(vTextFieldRef.value, ':-webkit-autofill')) {\n const item = items.value.find(item => item.title === v)\n if (item) {\n select(item)\n }\n } else if (vTextFieldRef.value) {\n vTextFieldRef.value.value = ''\n }\n }\n\n watch(menu, () => {\n if (!props.hideSelected && menu.value && model.value.length) {\n const index = displayItems.value.findIndex(\n item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value))\n )\n IN_BROWSER && !props.noAutoScroll && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n })\n\n watch(items, (newVal, oldVal) => {\n if (menu.value) return\n\n if (isFocused.value && props.hideNoData && !oldVal.length && newVal.length) {\n menu.value = true\n }\n })\n\n useRender(() => {\n const hasChips = !!(props.chips || slots.chip)\n const hasList = !!(\n (!props.hideNoData || displayItems.value.length) ||\n slots['prepend-item'] ||\n slots['append-item'] ||\n slots['no-data']\n )\n const isDirty = model.value.length > 0\n const textFieldProps = VTextField.filterProps(props)\n\n const placeholder = isDirty || (\n !isFocused.value &&\n props.label &&\n !props.persistentPlaceholder\n ) ? undefined : props.placeholder\n\n return (\n v.props.title).join(', ') }\n name={ undefined }\n onUpdate:modelValue={ onModelUpdate }\n v-model:focused={ isFocused.value }\n validationValue={ model.externalValue }\n counterValue={ counterValue.value }\n dirty={ isDirty }\n class={[\n 'v-select',\n {\n 'v-select--active-menu': menu.value,\n 'v-select--chips': !!props.chips,\n [`v-select--${props.multiple ? 'multiple' : 'single'}`]: true,\n 'v-select--selected': model.value.length,\n 'v-select--selection-slot': !!slots.selection,\n },\n props.class,\n ]}\n style={ props.style }\n inputmode=\"none\"\n placeholder={ placeholder }\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onBlur={ onBlur }\n onKeydown={ onKeydown }\n aria-expanded={ ariaExpanded.value }\n aria-controls={ ariaControls.value }\n >\n {{\n ...slots,\n default: ({ id }) => (\n <>\n \n { items.value.map(item => (\n \n ))}\n \n\n \n { hasList && (\n e.preventDefault() }\n onKeydown={ onListKeydown }\n onFocusin={ onFocusin }\n tabindex=\"-1\"\n selectable\n aria-live=\"polite\"\n aria-labelledby={ `${id.value}-label` }\n aria-multiselectable={ props.multiple }\n color={ props.itemColor ?? props.color }\n { ...listEvents }\n { ...props.listProps }\n >\n { slots['prepend-item']?.() }\n\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n \n ))}\n\n \n { ({ item, index, itemRef }) => {\n const camelizedProps = camelizeProps(item.props)\n\n const itemProps = mergeProps(item.props, {\n ref: itemRef,\n key: item.value,\n onClick: () => select(item, null),\n 'aria-posinset': index + 1,\n 'aria-setsize': displayItems.value.length,\n })\n\n if (item.type === 'divider') {\n return slots.divider?.({ props: item.raw, index }) ?? (\n \n )\n }\n\n if (item.type === 'subheader') {\n return slots.subheader?.({ props: item.raw, index }) ?? (\n \n )\n }\n\n return slots.item?.({\n item,\n index,\n props: itemProps,\n }) ?? (\n \n {{\n prepend: ({ isSelected }) => (\n <>\n { props.multiple && !props.hideSelected ? (\n event.preventDefault() }\n />\n ) : undefined }\n\n { camelizedProps.prependAvatar && (\n \n )}\n\n { camelizedProps.prependIcon && (\n \n )}\n \n ),\n }}\n \n )\n }}\n \n\n { slots['append-item']?.() }\n \n )}\n \n\n { model.value.map((item, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(item, false)\n }\n\n const slotProps = mergeProps(VChip.filterProps(item.props), {\n 'onClick:close': onChipClose,\n onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter' && e.key !== ' ') return\n\n e.preventDefault()\n e.stopPropagation()\n\n onChipClose(e)\n },\n onMousedown (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n },\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n })\n\n const hasSlot = hasChips ? !!slots.chip : !!slots.selection\n const slotContent = hasSlot\n ? ensureValidVNode(\n hasChips\n ? slots.chip!({ item, index, props: slotProps })\n : slots.selection!({ item, index })\n )\n : undefined\n\n if (hasSlot && !slotContent) return undefined\n\n return (\n
\n { hasChips ? (\n !slots.chip ? (\n \n ) : (\n \n { slotContent }\n \n )\n ) : (\n slotContent ?? (\n \n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n ,\n )}\n \n )\n )}\n
\n )\n })}\n \n ),\n 'append-inner': (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { props.menuIcon ? (\n \n ) : undefined }\n { props.appendInnerIcon && (\n \n )}\n \n ),\n }}\n
\n )\n })\n\n return forwardRefs({\n isFocused,\n menu,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VSelect = InstanceType\n", "// Utilities\nimport { shallowRef, watch } from 'vue'\n\n// Types\nimport type { Ref } from 'vue'\nimport type { VList } from '@/components/VList'\nimport type { VTextField } from '@/components/VTextField'\n\nexport function useScrolling (listRef: Ref, textFieldRef: Ref) {\n const isScrolling = shallowRef(false)\n let scrollTimeout: number\n function onListScroll (e: Event) {\n cancelAnimationFrame(scrollTimeout)\n isScrolling.value = true\n scrollTimeout = requestAnimationFrame(() => {\n scrollTimeout = requestAnimationFrame(() => {\n isScrolling.value = false\n })\n })\n }\n async function finishScrolling () {\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise(resolve => {\n if (isScrolling.value) {\n const stop = watch(isScrolling, () => {\n stop()\n resolve()\n })\n } else resolve()\n })\n }\n async function onListKeydown (e: KeyboardEvent) {\n if (e.key === 'Tab') {\n textFieldRef.value?.focus()\n }\n\n if (!['PageDown', 'PageUp', 'Home', 'End'].includes(e.key)) return\n const el: HTMLElement = listRef.value?.$el\n if (!el) return\n\n if (e.key === 'Home' || e.key === 'End') {\n el.scrollTo({\n top: e.key === 'Home' ? 0 : el.scrollHeight,\n behavior: 'smooth',\n })\n }\n\n await finishScrolling()\n\n const children = el.querySelectorAll(':scope > :not(.v-virtual-scroll__spacer)')\n\n if (e.key === 'PageDown' || e.key === 'Home') {\n const top = el.getBoundingClientRect().top\n for (const child of children) {\n if (child.getBoundingClientRect().top >= top) {\n (child as HTMLElement).focus()\n break\n }\n }\n } else {\n const bottom = el.getBoundingClientRect().bottom\n for (const child of [...children].reverse()) {\n if (child.getBoundingClientRect().bottom <= bottom) {\n (child as HTMLElement).focus()\n break\n }\n }\n }\n }\n\n return {\n onScrollPassive: onListScroll,\n onKeydown: onListKeydown,\n } as Record // typescript doesn't know about vue's event merging\n}\n", "// Utilities\nimport { computed, toRef, toValue, useId } from 'vue'\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { MaybeRefOrGetter } from 'vue'\n\n// Types\nexport interface MenuActivatorProps {\n closeText: string\n openText: string\n}\n\n// Composables\nexport const makeMenuActivatorProps = propsFactory({\n closeText: {\n type: String,\n default: '$vuetify.close',\n },\n openText: {\n type: String,\n default: '$vuetify.open',\n },\n}, 'autocomplete')\n\nexport function useMenuActivator (props: MenuActivatorProps, isOpen: MaybeRefOrGetter) {\n const uid = useId()\n const menuId = computed(() => `menu-${uid}`)\n\n const ariaExpanded = toRef(() => toValue(isOpen))\n const ariaControls = toRef(() => menuId.value)\n\n return {\n menuId,\n ariaExpanded,\n ariaControls,\n }\n}\n"], + "mappings": "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", + "names": ["makeVVirtualScrollItemProps", "propsFactory", "renderless", "Boolean", "makeComponentProps", "VVirtualScrollItem", "genericComponent", "name", "inheritAttrs", "props", "emits", "height", "setup", "_ref", "attrs", "emit", "slots", "resizeRef", "contentRect", "useResizeObserver", "undefined", "watch", "value", "useRender", "_createElementVNode", "_Fragment", "default", "itemRef", "_mergeProps", "class", "style", "UP", "DOWN", "BUFFER_PX", "makeVirtualProps", "propsFactory", "itemHeight", "type", "Number", "String", "default", "itemKey", "Array", "Function", "height", "useVirtual", "props", "items", "display", "useDisplay", "shallowRef", "watchEffect", "value", "parseFloat", "first", "last", "Math", "ceil", "parseInt", "paddingTop", "paddingBottom", "containerRef", "ref", "markerRef", "markerOffset", "resizeRef", "contentRect", "useResizeObserver", "viewportHeight", "computed", "document", "documentElement", "hasInitialRender", "sizes", "from", "length", "offsets", "updateTime", "targetScrollIndex", "getSize", "index", "updateOffsets", "debounce", "start", "performance", "now", "i", "max", "unwatch", "watch", "v", "offsetTop", "immediate", "calculateVisibleItems", "nextTick", "IN_BROWSER", "window", "requestAnimationFrame", "scrollToIndex", "onScopeDispose", "clear", "handleItemResize", "prevHeight", "prevMinHeight", "min", "calculateOffset", "clamp", "whole", "floor", "fraction", "next", "wholeOffset", "nextOffset", "calculateIndex", "scrollTop", "binaryClosest", "lastScrollTop", "scrollVelocity", "lastScrollTime", "val", "oldVal", "scrollTimeout", "handleScroll", "scrollTime", "scrollDeltaT", "sign", "clearTimeout", "setTimeout", "handleScrollend", "raf", "cancelAnimationFrame", "_calculateVisibleItems", "direction", "startPx", "endPx", "end", "topOverflow", "bottomOverflow", "bufferOverflow", "offset", "computedItems", "slice", "map", "item", "_index", "raw", "key", "getPropertyFromItem", "deep", "arr", "high", "low", "mid", "target", "makeVVirtualScrollProps", "propsFactory", "items", "type", "Array", "default", "renderless", "Boolean", "makeVirtualProps", "makeComponentProps", "makeDimensionProps", "VVirtualScroll", "genericComponent", "name", "props", "setup", "_ref", "slots", "vm", "getCurrentInstance", "dimensionStyles", "useDimension", "calculateVisibleItems", "containerRef", "markerRef", "handleScroll", "handleScrollend", "handleItemResize", "scrollToIndex", "paddingTop", "paddingBottom", "computedItems", "useVirtual", "toRef", "useToggleScope", "handleListeners", "add", "arguments", "length", "undefined", "method", "value", "document", "documentElement", "passive", "onMounted", "getScrollParent", "vnode", "el", "onScopeDispose", "useRender", "children", "map", "item", "_createVNode", "VVirtualScrollItem", "key", "height", "index", "slotProps", "raw", "_createElementVNode", "_Fragment", "convertToUnit", "_normalizeClass", "class", "_normalizeStyle", "style", "useScrolling", "listRef", "textFieldRef", "isScrolling", "shallowRef", "scrollTimeout", "onListScroll", "e", "cancelAnimationFrame", "value", "requestAnimationFrame", "finishScrolling", "Promise", "resolve", "stop", "watch", "onListKeydown", "key", "focus", "includes", "el", "$el", "scrollTo", "top", "scrollHeight", "behavior", "children", "querySelectorAll", "getBoundingClientRect", "child", "bottom", "reverse", "onScrollPassive", "onKeydown", "makeMenuActivatorProps", "propsFactory", "closeText", "type", "String", "default", "openText", "useMenuActivator", "props", "isOpen", "uid", "useId", "menuId", "computed", "ariaExpanded", "toRef", "toValue", "ariaControls", "value", "makeSelectProps", "propsFactory", "chips", "Boolean", "closableChips", "eager", "hideNoData", "hideSelected", "listProps", "type", "Object", "menu", "menuIcon", "IconValue", "default", "menuProps", "multiple", "noDataText", "String", "openOnClear", "itemColor", "noAutoScroll", "makeMenuActivatorProps", "makeItemsProps", "itemChildren", "makeVSelectProps", "omit", "makeVTextFieldProps", "modelValue", "role", "makeTransitionProps", "transition", "component", "VDialogTransition", "VSelect", "genericComponent", "name", "props", "emits", "focused", "value", "ue", "setup", "_ref", "slots", "t", "useLocale", "vTextFieldRef", "ref", "vMenuRef", "vVirtualScrollRef", "items", "transformIn", "transformOut", "useItems", "model", "useProxiedModel", "v", "wrapInArray", "transformed", "counterValue", "computed", "length", "form", "useForm", "autocomplete", "useAutocomplete", "selectedValues", "map", "selection", "isFocused", "shallowRef", "toRef", "isReadonly", "isDisabled", "InputIcon", "useInputIcon", "keyboardLookupPrefix", "keyboardLookupIndex", "keyboardLookupLastTime", "displayItems", "filter", "item", "some", "s", "valueComparator", "deepEqual", "menuDisabled", "_menu", "get", "set", "ΨopenChildren", "size", "menuId", "ariaExpanded", "ariaControls", "useMenuActivator", "computedMenuProps", "activatorProps", "listRef", "listEvents", "useScrolling", "onClear", "e", "onMousedownControl", "onListKeydown", "checkPrintable", "onKeydown", "key", "includes", "preventDefault", "clearable", "focus", "KEYBOARD_LOOKUP_THRESHOLD", "now", "performance", "toLowerCase", "findItem", "result", "findItemBase", "at", "slice", "i", "_item", "title", "startsWith", "undefined", "index", "select", "arguments", "disabled", "findIndex", "add", "splice", "nextTick", "onBlur", "$el", "contains", "relatedTarget", "onAfterEnter", "calculateVisibleItems", "onAfterLeave", "onFocusin", "onModelUpdate", "matchesSelector", "find", "watch", "IN_BROWSER", "window", "requestAnimationFrame", "scrollToIndex", "newVal", "oldVal", "useRender", "hasChips", "chip", "hasList", "isDirty", "textFieldProps", "VTextField", "filterProps", "placeholder", "label", "persistentPlaceholder", "_createVNode", "_mergeProps", "join", "$event", "externalValue", "class", "style", "_ref2", "id", "_createElementVNode", "_Fragment", "fieldName", "VMenu", "VList", "color", "VListItem", "VVirtualScroll", "_ref3", "itemRef", "camelizedProps", "camelizeProps", "itemProps", "mergeProps", "onClick", "divider", "raw", "VDivider", "subheader", "VListSubheader", "prepend", "_ref4", "isSelected", "VCheckboxBtn", "event", "prependAvatar", "VAvatar", "prependIcon", "VIcon", "onChipClose", "stopPropagation", "slotProps", "VChip", "onMousedown", "hasSlot", "slotContent", "ensureValidVNode", "VDefaultsProvider", "closable", "text", "_createTextVNode", "_len", "args", "Array", "_key", "fieldIconColor", "appendInnerIcon", "iconColor", "forwardRefs"] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-BYBKODOB.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-KHWE4FHS.js similarity index 68% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-BYBKODOB.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-KHWE4FHS.js index 32aeb7b..cdb35ea 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-BYBKODOB.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-KHWE4FHS.js @@ -1,32 +1,26 @@ import { - VInput, - VLabel, - makeVInputProps, - useFocus -} from "./chunk-4VABFUPG.js"; + VLabel +} from "./chunk-IK67YVHF.js"; import { makeDensityProps, useDensity } from "./chunk-TM3MIDYC.js"; import { VIcon -} from "./chunk-CMZ4UYUX.js"; -import { - ripple_default -} from "./chunk-5BPWKCNA.js"; -import { - forwardRefs -} from "./chunk-GUNW7S2L.js"; +} from "./chunk-4XZHKYGH.js"; import { IconValue } from "./chunk-OJDZBU5D.js"; import { - useProxiedModel -} from "./chunk-KA77II4V.js"; + ripple_default +} from "./chunk-DS4J67XG.js"; import { useBackgroundColor, useTextColor } from "./chunk-BHV5Z34M.js"; +import { + useProxiedModel +} from "./chunk-KA77II4V.js"; import { makeThemeProps } from "./chunk-3DSR7NCB.js"; @@ -36,7 +30,6 @@ import { genericComponent, makeComponentProps, matchesSelector, - omit, propsFactory, provideDefaults, useRender, @@ -61,14 +54,8 @@ import { withDirectives } from "./chunk-2MKFL3BX.js"; -// node_modules/vuetify/lib/components/VCheckbox/VCheckbox.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCheckbox/VCheckbox.css"; - -// node_modules/vuetify/lib/components/VSelectionControl/VSelectionControl.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSelectionControl/VSelectionControl.css"; - // node_modules/vuetify/lib/components/VSelectionControlGroup/VSelectionControlGroup.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSelectionControlGroup/VSelectionControlGroup.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSelectionControlGroup/VSelectionControlGroup.css"; var VSelectionControlGroupSymbol = /* @__PURE__ */ Symbol.for("vuetify:selection-control-group"); var makeSelectionControlGroupProps = propsFactory({ color: String, @@ -167,6 +154,7 @@ var VSelectionControlGroup = genericComponent()({ }); // node_modules/vuetify/lib/components/VSelectionControl/VSelectionControl.js +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSelectionControl/VSelectionControl.css"; var makeVSelectionControlProps = propsFactory({ label: String, baseColor: String, @@ -369,133 +357,10 @@ var VSelectionControl = genericComponent()({ } }); -// node_modules/vuetify/lib/components/VCheckbox/VCheckboxBtn.js -var makeVCheckboxBtnProps = propsFactory({ - indeterminate: Boolean, - indeterminateIcon: { - type: IconValue, - default: "$checkboxIndeterminate" - }, - ...makeVSelectionControlProps({ - falseIcon: "$checkboxOff", - trueIcon: "$checkboxOn" - }) -}, "VCheckboxBtn"); -var VCheckboxBtn = genericComponent()({ - name: "VCheckboxBtn", - props: makeVCheckboxBtnProps(), - emits: { - "update:modelValue": (value) => true, - "update:indeterminate": (value) => true - }, - setup(props, _ref) { - let { - slots - } = _ref; - const indeterminate = useProxiedModel(props, "indeterminate"); - const model = useProxiedModel(props, "modelValue"); - function onChange(v) { - if (indeterminate.value) { - indeterminate.value = false; - } - } - const falseIcon = toRef(() => { - return indeterminate.value ? props.indeterminateIcon : props.falseIcon; - }); - const trueIcon = toRef(() => { - return indeterminate.value ? props.indeterminateIcon : props.trueIcon; - }); - useRender(() => { - const controlProps = omit(VSelectionControl.filterProps(props), ["modelValue"]); - return createVNode(VSelectionControl, mergeProps(controlProps, { - "modelValue": model.value, - "onUpdate:modelValue": [($event) => model.value = $event, onChange], - "class": ["v-checkbox-btn", props.class], - "style": props.style, - "type": "checkbox", - "falseIcon": falseIcon.value, - "trueIcon": trueIcon.value, - "aria-checked": indeterminate.value ? "mixed" : void 0 - }), slots); - }); - return {}; - } -}); - -// node_modules/vuetify/lib/components/VCheckbox/VCheckbox.js -var makeVCheckboxProps = propsFactory({ - ...makeVInputProps(), - ...omit(makeVCheckboxBtnProps(), ["inline"]) -}, "VCheckbox"); -var VCheckbox = genericComponent()({ - name: "VCheckbox", - inheritAttrs: false, - props: makeVCheckboxProps(), - emits: { - "update:modelValue": (value) => true, - "update:focused": (focused) => true - }, - setup(props, _ref) { - let { - attrs, - slots - } = _ref; - const model = useProxiedModel(props, "modelValue"); - const { - isFocused, - focus, - blur - } = useFocus(props); - const inputRef = ref(); - const uid = useId(); - useRender(() => { - const [rootAttrs, controlAttrs] = filterInputAttrs(attrs); - const inputProps = VInput.filterProps(props); - const checkboxProps = VCheckboxBtn.filterProps(props); - return createVNode(VInput, mergeProps({ - "ref": inputRef, - "class": ["v-checkbox", props.class] - }, rootAttrs, inputProps, { - "modelValue": model.value, - "onUpdate:modelValue": ($event) => model.value = $event, - "id": props.id || `checkbox-${uid}`, - "focused": isFocused.value, - "style": props.style - }), { - ...slots, - default: (_ref2) => { - let { - id, - messagesId, - isDisabled, - isReadonly, - isValid - } = _ref2; - return createVNode(VCheckboxBtn, mergeProps(checkboxProps, { - "id": id.value, - "aria-describedby": messagesId.value, - "disabled": isDisabled.value, - "readonly": isReadonly.value - }, controlAttrs, { - "error": isValid.value === false, - "modelValue": model.value, - "onUpdate:modelValue": ($event) => model.value = $event, - "onFocus": focus, - "onBlur": blur - }), slots); - } - }); - }); - return forwardRefs({}, inputRef); - } -}); - export { makeSelectionControlGroupProps, VSelectionControlGroup, makeVSelectionControlProps, - VSelectionControl, - VCheckboxBtn, - VCheckbox + VSelectionControl }; -//# sourceMappingURL=chunk-BYBKODOB.js.map +//# sourceMappingURL=chunk-KHWE4FHS.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-KHWE4FHS.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-KHWE4FHS.js.map new file mode 100644 index 0000000..423864b --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-KHWE4FHS.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../vuetify/src/components/VSelectionControlGroup/VSelectionControlGroup.tsx", "../../vuetify/src/components/VSelectionControl/VSelectionControl.tsx"], + "sourcesContent": ["// Styles\nimport './VSelectionControlGroup.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps } from '@/composables/density'\nimport { IconValue } from '@/composables/icons'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeThemeProps } from '@/composables/theme'\n\n// Utilities\nimport { onScopeDispose, provide, toRef, useId } from 'vue'\nimport { deepEqual, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType, Ref } from 'vue'\nimport type { RippleDirectiveBinding } from '@/directives/ripple'\nimport type { GenericProps, ValueComparator } from '@/util'\n\nexport interface VSelectionGroupContext {\n modelValue: Ref\n forceUpdate: () => void\n onForceUpdate: (fn: () => void) => void\n}\n\nexport const VSelectionControlGroupSymbol: InjectionKey = Symbol.for('vuetify:selection-control-group')\n\nexport const makeSelectionControlGroupProps = propsFactory({\n color: String,\n disabled: {\n type: Boolean as PropType,\n default: null,\n },\n defaultsTarget: String,\n error: Boolean,\n id: String,\n inline: Boolean,\n falseIcon: IconValue,\n trueIcon: IconValue,\n ripple: {\n type: [Boolean, Object] as PropType,\n default: true,\n },\n multiple: {\n type: Boolean as PropType,\n default: null,\n },\n name: String,\n readonly: {\n type: Boolean as PropType,\n default: null,\n },\n modelValue: null,\n type: String,\n valueComparator: {\n type: Function as PropType,\n default: deepEqual,\n },\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeThemeProps(),\n}, 'SelectionControlGroup')\n\nexport const makeVSelectionControlGroupProps = propsFactory({\n ...makeSelectionControlGroupProps({\n defaultsTarget: 'VSelectionControl',\n }),\n}, 'VSelectionControlGroup')\n\nexport const VSelectionControlGroup = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: { default: never },\n) => GenericProps>()({\n name: 'VSelectionControlGroup',\n\n props: makeVSelectionControlGroupProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const modelValue = useProxiedModel(props, 'modelValue')\n const uid = useId()\n const id = toRef(() => props.id || `v-selection-control-group-${uid}`)\n const name = toRef(() => props.name || id.value)\n\n const updateHandlers = new Set<() => void>()\n provide(VSelectionControlGroupSymbol, {\n modelValue,\n forceUpdate: () => {\n updateHandlers.forEach(fn => fn())\n },\n onForceUpdate: cb => {\n updateHandlers.add(cb)\n onScopeDispose(() => {\n updateHandlers.delete(cb)\n })\n },\n })\n\n provideDefaults({\n [props.defaultsTarget]: {\n color: toRef(() => props.color),\n disabled: toRef(() => props.disabled),\n density: toRef(() => props.density),\n error: toRef(() => props.error),\n inline: toRef(() => props.inline),\n modelValue,\n multiple: toRef(() => !!props.multiple || (props.multiple == null && Array.isArray(modelValue.value))),\n name,\n falseIcon: toRef(() => props.falseIcon),\n trueIcon: toRef(() => props.trueIcon),\n readonly: toRef(() => props.readonly),\n ripple: toRef(() => props.ripple),\n type: toRef(() => props.type),\n valueComparator: toRef(() => props.valueComparator),\n },\n })\n\n useRender(() => (\n \n { slots.default?.() }\n \n ))\n\n return {}\n },\n})\n\nexport type VSelectionControlGroup = InstanceType\n", "// Styles\nimport './VSelectionControl.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VLabel } from '@/components/VLabel'\nimport { makeSelectionControlGroupProps, VSelectionControlGroupSymbol } from '@/components/VSelectionControlGroup/VSelectionControlGroup'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { useDensity } from '@/composables/density'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport vRipple from '@/directives/ripple'\n\n// Utilities\nimport { computed, inject, nextTick, ref, shallowRef, toRef, useId } from 'vue'\nimport {\n filterInputAttrs,\n genericComponent,\n matchesSelector,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { CSSProperties, ExtractPropTypes, Ref, VNode, WritableComputedRef } from 'vue'\nimport type { IconValue } from '@/composables/icons'\nimport type { EventProp, GenericProps } from '@/util'\n\nexport type SelectionControlSlot = {\n model: WritableComputedRef\n textColorClasses: Ref\n textColorStyles: Ref\n backgroundColorClasses: Ref\n backgroundColorStyles: Ref\n inputNode: VNode\n icon: IconValue | undefined\n props: {\n onBlur: (e: Event) => void\n onFocus: (e: FocusEvent) => void\n id: string\n }\n}\n\nexport type VSelectionControlSlots = {\n default: {\n backgroundColorClasses: Ref\n backgroundColorStyles: Ref\n }\n label: { label: string | undefined, props: Record }\n input: SelectionControlSlot\n}\n\nexport const makeVSelectionControlProps = propsFactory({\n label: String,\n baseColor: String,\n trueValue: null,\n falseValue: null,\n value: null,\n\n ...makeComponentProps(),\n ...makeSelectionControlGroupProps(),\n}, 'VSelectionControl')\n\nexport function useSelectionControl (\n props: ExtractPropTypes> & {\n 'onUpdate:modelValue': EventProp | undefined\n }\n) {\n const group = inject(VSelectionControlGroupSymbol, undefined)\n const { densityClasses } = useDensity(props)\n const modelValue = useProxiedModel(props, 'modelValue')\n const trueValue = computed(() => (\n props.trueValue !== undefined ? props.trueValue\n : props.value !== undefined ? props.value\n : true\n ))\n const falseValue = computed(() => props.falseValue !== undefined ? props.falseValue : false)\n const isMultiple = computed(() => (\n !!props.multiple ||\n (props.multiple == null && Array.isArray(modelValue.value))\n ))\n const model = computed({\n get () {\n const val = group ? group.modelValue.value : modelValue.value\n\n return isMultiple.value\n ? wrapInArray(val).some((v: any) => props.valueComparator(v, trueValue.value))\n : props.valueComparator(val, trueValue.value)\n },\n set (val: boolean) {\n if (props.readonly) return\n\n const currentValue = val ? trueValue.value : falseValue.value\n\n let newVal = currentValue\n\n if (isMultiple.value) {\n newVal = val\n ? [...wrapInArray(modelValue.value), currentValue]\n : wrapInArray(modelValue.value).filter((item: any) => !props.valueComparator(item, trueValue.value))\n }\n\n if (group) {\n group.modelValue.value = newVal\n } else {\n modelValue.value = newVal\n }\n },\n })\n const { textColorClasses, textColorStyles } = useTextColor(() => {\n if (props.error || props.disabled) return undefined\n\n return model.value ? props.color : props.baseColor\n })\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => {\n return (\n model.value &&\n !props.error &&\n !props.disabled\n ) ? props.color : props.baseColor\n })\n const icon = computed(() => model.value ? props.trueIcon : props.falseIcon)\n\n return {\n group,\n densityClasses,\n trueValue,\n falseValue,\n model,\n textColorClasses,\n textColorStyles,\n backgroundColorClasses,\n backgroundColorStyles,\n icon,\n }\n}\n\nexport const VSelectionControl = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VSelectionControlSlots,\n) => GenericProps>()({\n name: 'VSelectionControl',\n\n directives: { vRipple },\n\n inheritAttrs: false,\n\n props: makeVSelectionControlProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const {\n group,\n densityClasses,\n icon,\n model,\n textColorClasses,\n textColorStyles,\n backgroundColorClasses,\n backgroundColorStyles,\n trueValue,\n } = useSelectionControl(props)\n const uid = useId()\n const isFocused = shallowRef(false)\n const isFocusVisible = shallowRef(false)\n const input = ref()\n const id = toRef(() => props.id || `input-${uid}`)\n const isInteractive = toRef(() => !props.disabled && !props.readonly)\n\n group?.onForceUpdate(() => {\n if (input.value) {\n input.value.checked = model.value\n }\n })\n\n function onFocus (e: FocusEvent) {\n if (!isInteractive.value) return\n\n isFocused.value = true\n if (matchesSelector(e.target as HTMLElement, ':focus-visible') !== false) {\n isFocusVisible.value = true\n }\n }\n\n function onBlur () {\n isFocused.value = false\n isFocusVisible.value = false\n }\n\n function onClickLabel (e: Event) {\n e.stopPropagation()\n }\n\n function onInput (e: Event) {\n if (!isInteractive.value) {\n if (input.value) {\n // model value is not updated when input is not interactive\n // but the internal checked state of the input is still updated,\n // so here it's value is restored\n input.value.checked = model.value\n }\n\n return\n }\n\n if (props.readonly && group) {\n nextTick(() => group.forceUpdate())\n }\n model.value = (e.target as HTMLInputElement).checked\n }\n\n useRender(() => {\n const label = slots.label\n ? slots.label({\n label: props.label,\n props: { for: id.value },\n })\n : props.label\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n\n const inputNode = (\n \n )\n\n return (\n \n \n { slots.default?.({\n backgroundColorClasses,\n backgroundColorStyles,\n })}\n\n \n { slots.input?.({\n model,\n textColorClasses,\n textColorStyles,\n backgroundColorClasses,\n backgroundColorStyles,\n inputNode,\n icon: icon.value,\n props: {\n onFocus,\n onBlur,\n id: id.value,\n },\n } satisfies SelectionControlSlot) ?? (\n <>\n { icon.value && }\n\n { inputNode }\n \n )}\n \n \n\n { label && (\n \n { label }\n \n )}\n \n )\n })\n\n return {\n isFocused,\n input,\n }\n },\n})\n\nexport type VSelectionControl = InstanceType\n"], + "mappings": "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", + "names": ["VSelectionControlGroupSymbol", "Symbol", "for", "makeSelectionControlGroupProps", "propsFactory", "color", "String", "disabled", "type", "Boolean", "default", "defaultsTarget", "error", "id", "inline", "falseIcon", "IconValue", "trueIcon", "ripple", "Object", "multiple", "name", "readonly", "modelValue", "valueComparator", "Function", "deepEqual", "makeComponentProps", "makeDensityProps", "makeThemeProps", "makeVSelectionControlGroupProps", "VSelectionControlGroup", "genericComponent", "props", "emits", "value", "setup", "_ref", "slots", "useProxiedModel", "uid", "useId", "toRef", "updateHandlers", "Set", "provide", "forceUpdate", "forEach", "fn", "onForceUpdate", "cb", "add", "onScopeDispose", "delete", "provideDefaults", "density", "Array", "isArray", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "undefined", "makeVSelectionControlProps", "propsFactory", "label", "String", "baseColor", "trueValue", "falseValue", "value", "makeComponentProps", "makeSelectionControlGroupProps", "useSelectionControl", "props", "group", "inject", "VSelectionControlGroupSymbol", "undefined", "densityClasses", "useDensity", "modelValue", "useProxiedModel", "computed", "isMultiple", "multiple", "Array", "isArray", "model", "get", "val", "wrapInArray", "some", "v", "valueComparator", "set", "readonly", "currentValue", "newVal", "filter", "item", "textColorClasses", "textColorStyles", "useTextColor", "error", "disabled", "color", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "icon", "trueIcon", "falseIcon", "VSelectionControl", "genericComponent", "name", "directives", "vRipple", "inheritAttrs", "emits", "setup", "_ref", "attrs", "slots", "uid", "useId", "isFocused", "shallowRef", "isFocusVisible", "input", "ref", "id", "toRef", "isInteractive", "onForceUpdate", "checked", "onFocus", "e", "matchesSelector", "target", "onBlur", "onClickLabel", "stopPropagation", "onInput", "nextTick", "forceUpdate", "useRender", "for", "rootAttrs", "inputAttrs", "filterInputAttrs", "inputNode", "_createElementVNode", "_mergeProps", "type", "inline", "class", "style", "_normalizeClass", "_normalizeStyle", "default", "_withDirectives", "_Fragment", "_createVNode", "VIcon", "ripple", "center", "circle", "VLabel"] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-L7BQJLEW.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-L7BQJLEW.js new file mode 100644 index 0000000..6c0ce7f --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-L7BQJLEW.js @@ -0,0 +1,226 @@ +import { + VSelectionControl, + makeVSelectionControlProps +} from "./chunk-KHWE4FHS.js"; +import { + VInput, + makeVInputProps, + useFocus +} from "./chunk-IK67YVHF.js"; +import { + VScaleTransition +} from "./chunk-B4JFJDWM.js"; +import { + forwardRefs +} from "./chunk-GUNW7S2L.js"; +import { + VProgressCircular +} from "./chunk-MH76ZJYE.js"; +import { + LoaderSlot, + useLoader +} from "./chunk-UXZ55AO7.js"; +import { + VIcon +} from "./chunk-4XZHKYGH.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; +import { + useProxiedModel +} from "./chunk-KA77II4V.js"; +import { + SUPPORTS_MATCH_MEDIA, + filterInputAttrs, + genericComponent, + propsFactory, + useRender +} from "./chunk-LZ5T2ERG.js"; +import { + Fragment, + createBaseVNode, + createVNode, + mergeProps, + normalizeClass, + normalizeStyle, + ref, + toRef, + useId +} from "./chunk-2MKFL3BX.js"; + +// node_modules/vuetify/lib/components/VSwitch/VSwitch.js +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSwitch/VSwitch.css"; +var makeVSwitchProps = propsFactory({ + indeterminate: Boolean, + inset: Boolean, + flat: Boolean, + loading: { + type: [Boolean, String], + default: false + }, + ...makeVInputProps(), + ...makeVSelectionControlProps() +}, "VSwitch"); +var VSwitch = genericComponent()({ + name: "VSwitch", + inheritAttrs: false, + props: makeVSwitchProps(), + emits: { + "update:focused": (focused) => true, + "update:modelValue": (value) => true, + "update:indeterminate": (value) => true + }, + setup(props, _ref) { + let { + attrs, + slots + } = _ref; + const indeterminate = useProxiedModel(props, "indeterminate"); + const model = useProxiedModel(props, "modelValue"); + const { + loaderClasses + } = useLoader(props); + const { + isFocused, + focus, + blur + } = useFocus(props); + const control = ref(); + const inputRef = ref(); + const isForcedColorsModeActive = SUPPORTS_MATCH_MEDIA && window.matchMedia("(forced-colors: active)").matches; + const loaderColor = toRef(() => { + return typeof props.loading === "string" && props.loading !== "" ? props.loading : props.color; + }); + const uid = useId(); + const id = toRef(() => props.id || `switch-${uid}`); + function onChange() { + if (indeterminate.value) { + indeterminate.value = false; + } + } + function onTrackClick(e) { + e.stopPropagation(); + e.preventDefault(); + control.value?.input?.click(); + } + useRender(() => { + const [rootAttrs, controlAttrs] = filterInputAttrs(attrs); + const inputProps = VInput.filterProps(props); + const controlProps = VSelectionControl.filterProps(props); + return createVNode(VInput, mergeProps({ + "ref": inputRef, + "class": ["v-switch", { + "v-switch--flat": props.flat + }, { + "v-switch--inset": props.inset + }, { + "v-switch--indeterminate": indeterminate.value + }, loaderClasses.value, props.class] + }, rootAttrs, inputProps, { + "modelValue": model.value, + "onUpdate:modelValue": ($event) => model.value = $event, + "id": id.value, + "focused": isFocused.value, + "style": props.style + }), { + ...slots, + default: (_ref2) => { + let { + id: id2, + messagesId, + isDisabled, + isReadonly, + isValid + } = _ref2; + const slotProps = { + model, + isValid + }; + return createVNode(VSelectionControl, mergeProps({ + "ref": control + }, controlProps, { + "modelValue": model.value, + "onUpdate:modelValue": [($event) => model.value = $event, onChange], + "id": id2.value, + "aria-describedby": messagesId.value, + "type": "checkbox", + "aria-checked": indeterminate.value ? "mixed" : void 0, + "disabled": isDisabled.value, + "readonly": isReadonly.value, + "onFocus": focus, + "onBlur": blur + }, controlAttrs), { + ...slots, + default: (_ref3) => { + let { + backgroundColorClasses, + backgroundColorStyles + } = _ref3; + return createBaseVNode("div", { + "class": normalizeClass(["v-switch__track", !isForcedColorsModeActive ? backgroundColorClasses.value : void 0]), + "style": normalizeStyle(backgroundColorStyles.value), + "onClick": onTrackClick + }, [slots["track-true"] && createBaseVNode("div", { + "key": "prepend", + "class": "v-switch__track-true" + }, [slots["track-true"](slotProps)]), slots["track-false"] && createBaseVNode("div", { + "key": "append", + "class": "v-switch__track-false" + }, [slots["track-false"](slotProps)])]); + }, + input: (_ref4) => { + let { + inputNode, + icon, + backgroundColorClasses, + backgroundColorStyles + } = _ref4; + return createBaseVNode(Fragment, null, [inputNode, createBaseVNode("div", { + "class": normalizeClass(["v-switch__thumb", { + "v-switch__thumb--filled": icon || props.loading + }, props.inset || isForcedColorsModeActive ? void 0 : backgroundColorClasses.value]), + "style": normalizeStyle(props.inset ? void 0 : backgroundColorStyles.value) + }, [slots.thumb ? createVNode(VDefaultsProvider, { + "defaults": { + VIcon: { + icon, + size: "x-small" + } + } + }, { + default: () => [slots.thumb({ + ...slotProps, + icon + })] + }) : createVNode(VScaleTransition, null, { + default: () => [!props.loading ? icon && createVNode(VIcon, { + "key": String(icon), + "icon": icon, + "size": "x-small" + }, null) : createVNode(LoaderSlot, { + "name": "v-switch", + "active": true, + "color": isValid.value === false ? void 0 : loaderColor.value + }, { + default: (slotProps2) => slots.loader ? slots.loader(slotProps2) : createVNode(VProgressCircular, { + "active": slotProps2.isActive, + "color": slotProps2.color, + "indeterminate": true, + "size": "16", + "width": "2" + }, null) + })] + })])]); + } + }); + } + }); + }); + return forwardRefs({}, inputRef); + } +}); + +export { + VSwitch +}; +//# sourceMappingURL=chunk-L7BQJLEW.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-L7BQJLEW.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-L7BQJLEW.js.map new file mode 100644 index 0000000..0bfdeff --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-L7BQJLEW.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../vuetify/src/components/VSwitch/VSwitch.tsx"], + "sourcesContent": ["// Styles\nimport './VSwitch.sass'\n\n// Components\nimport { VScaleTransition } from '@/components/transitions'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VProgressCircular } from '@/components/VProgressCircular'\nimport { makeVSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\n\n// Composables\nimport { useFocus } from '@/composables/focus'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { LoaderSlot, useLoader } from '@/composables/loader'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { ref, toRef, useId } from 'vue'\nimport { filterInputAttrs, genericComponent, propsFactory, SUPPORTS_MATCH_MEDIA, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef, Ref } from 'vue'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { VSelectionControlSlots } from '@/components/VSelectionControl/VSelectionControl'\nimport type { IconValue } from '@/composables/icons'\nimport type { LoaderSlotProps } from '@/composables/loader'\nimport type { GenericProps } from '@/util'\n\nexport type VSwitchSlot = {\n model: Ref\n isValid: ComputedRef\n}\n\nexport type VSwitchSlots =\n & VInputSlots\n & VSelectionControlSlots\n & {\n loader: LoaderSlotProps\n thumb: { icon: IconValue | undefined } & VSwitchSlot\n 'track-false': VSwitchSlot\n 'track-true': VSwitchSlot\n }\n\nexport const makeVSwitchProps = propsFactory({\n indeterminate: Boolean,\n inset: Boolean,\n flat: Boolean,\n loading: {\n type: [Boolean, String],\n default: false,\n },\n\n ...makeVInputProps(),\n ...makeVSelectionControlProps(),\n}, 'VSwitch')\n\nexport const VSwitch = genericComponent(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VSwitchSlots,\n) => GenericProps>()({\n name: 'VSwitch',\n\n inheritAttrs: false,\n\n props: makeVSwitchProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (value: any) => true,\n 'update:indeterminate': (value: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const indeterminate = useProxiedModel(props, 'indeterminate')\n const model = useProxiedModel(props, 'modelValue')\n const { loaderClasses } = useLoader(props)\n const { isFocused, focus, blur } = useFocus(props)\n const control = ref()\n const inputRef = ref()\n const isForcedColorsModeActive = SUPPORTS_MATCH_MEDIA && window.matchMedia('(forced-colors: active)').matches\n\n const loaderColor = toRef(() => {\n return typeof props.loading === 'string' && props.loading !== ''\n ? props.loading\n : props.color\n })\n\n const uid = useId()\n const id = toRef(() => props.id || `switch-${uid}`)\n\n function onChange () {\n if (indeterminate.value) {\n indeterminate.value = false\n }\n }\n function onTrackClick (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n control.value?.input?.click()\n }\n\n useRender(() => {\n const [rootAttrs, controlAttrs] = filterInputAttrs(attrs)\n const inputProps = VInput.filterProps(props)\n const controlProps = VSelectionControl.filterProps(props)\n\n return (\n \n {{\n ...slots,\n default: ({\n id,\n messagesId,\n isDisabled,\n isReadonly,\n isValid,\n }) => {\n const slotProps = {\n model,\n isValid,\n }\n\n return (\n \n {{\n ...slots,\n default: ({ backgroundColorClasses, backgroundColorStyles }) => (\n \n { slots['track-true'] && (\n
\n { slots['track-true'](slotProps) }\n
\n )}\n\n { slots['track-false'] && (\n
\n { slots['track-false'](slotProps) }\n
\n )}\n \n ),\n input: ({ inputNode, icon, backgroundColorClasses, backgroundColorStyles }) => (\n <>\n { inputNode }\n \n { slots.thumb ? (\n \n { slots.thumb({ ...slotProps, icon }) }\n \n ) : (\n \n { !props.loading ? (\n (icon && (\n \n ))) : (\n \n { slotProps => (\n slots.loader\n ? slots.loader(slotProps)\n : (\n \n )\n )}\n \n )}\n \n )}\n \n \n ),\n }}\n
\n )\n },\n }}\n \n )\n })\n\n return forwardRefs({}, inputRef)\n },\n})\n\nexport type VSwitch = InstanceType\n"], + "mappings": "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", + "names": ["makeVSwitchProps", "propsFactory", "indeterminate", "Boolean", "inset", "flat", "loading", "type", "String", "default", "makeVInputProps", "makeVSelectionControlProps", "VSwitch", "genericComponent", "name", "inheritAttrs", "props", "emits", "focused", "value", "setup", "_ref", "attrs", "slots", "useProxiedModel", "model", "loaderClasses", "useLoader", "isFocused", "focus", "blur", "useFocus", "control", "ref", "inputRef", "isForcedColorsModeActive", "SUPPORTS_MATCH_MEDIA", "window", "matchMedia", "matches", "loaderColor", "toRef", "color", "uid", "useId", "id", "onChange", "onTrackClick", "e", "stopPropagation", "preventDefault", "input", "click", "useRender", "rootAttrs", "controlAttrs", "filterInputAttrs", "inputProps", "VInput", "filterProps", "controlProps", "VSelectionControl", "_createVNode", "_mergeProps", "class", "$event", "style", "_ref2", "messagesId", "isDisabled", "isReadonly", "isValid", "slotProps", "undefined", "_ref3", "backgroundColorClasses", "backgroundColorStyles", "_createElementVNode", "_normalizeClass", "_normalizeStyle", "_ref4", "inputNode", "icon", "_Fragment", "thumb", "VDefaultsProvider", "VIcon", "size", "VScaleTransition", "LoaderSlot", "loader", "VProgressCircular", "isActive", "forwardRefs"] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LFKLAYDH.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LFKLAYDH.js new file mode 100644 index 0000000..d8355a4 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LFKLAYDH.js @@ -0,0 +1,177 @@ +import { + useSsrBoot +} from "./chunk-PCKQGDLK.js"; +import { + makeLayoutItemProps, + useLayoutItem +} from "./chunk-KQXZAEJP.js"; +import { + VBtnToggleSymbol +} from "./chunk-5AQLTWWS.js"; +import { + makeGroupProps, + useGroup +} from "./chunk-W6DJL42A.js"; +import { + makeBorderProps, + useBorder +} from "./chunk-X7YBE6PF.js"; +import { + makeElevationProps, + useElevation +} from "./chunk-YJD2PNP6.js"; +import { + makeDensityProps, + useDensity +} from "./chunk-TM3MIDYC.js"; +import { + makeRoundedProps, + useRounded +} from "./chunk-AQK3CYVW.js"; +import { + makeTagProps +} from "./chunk-2HZIACSB.js"; +import { + useBackgroundColor +} from "./chunk-BHV5Z34M.js"; +import { + useProxiedModel +} from "./chunk-KA77II4V.js"; +import { + makeThemeProps, + useTheme +} from "./chunk-3DSR7NCB.js"; +import { + convertToUnit, + genericComponent, + makeComponentProps, + propsFactory, + provideDefaults, + useRender +} from "./chunk-LZ5T2ERG.js"; +import { + computed, + createBaseVNode, + createVNode, + normalizeClass, + normalizeStyle, + toRef +} from "./chunk-2MKFL3BX.js"; + +// node_modules/vuetify/lib/components/VBottomNavigation/VBottomNavigation.js +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBottomNavigation/VBottomNavigation.css"; +var makeVBottomNavigationProps = propsFactory({ + baseColor: String, + bgColor: String, + color: String, + grow: Boolean, + mode: { + type: String, + validator: (v) => !v || ["horizontal", "shift"].includes(v) + }, + height: { + type: [Number, String], + default: 56 + }, + active: { + type: Boolean, + default: true + }, + ...makeBorderProps(), + ...makeComponentProps(), + ...makeDensityProps(), + ...makeElevationProps(), + ...makeRoundedProps(), + ...makeLayoutItemProps({ + name: "bottom-navigation" + }), + ...makeTagProps({ + tag: "header" + }), + ...makeGroupProps({ + selectedClass: "v-btn--selected" + }), + ...makeThemeProps() +}, "VBottomNavigation"); +var VBottomNavigation = genericComponent()({ + name: "VBottomNavigation", + props: makeVBottomNavigationProps(), + emits: { + "update:active": (value) => true, + "update:modelValue": (value) => true + }, + setup(props, _ref) { + let { + slots + } = _ref; + const { + themeClasses + } = useTheme(); + const { + borderClasses + } = useBorder(props); + const { + backgroundColorClasses, + backgroundColorStyles + } = useBackgroundColor(() => props.bgColor); + const { + densityClasses + } = useDensity(props); + const { + elevationClasses + } = useElevation(props); + const { + roundedClasses + } = useRounded(props); + const { + ssrBootStyles + } = useSsrBoot(); + const height = computed(() => Number(props.height) - (props.density === "comfortable" ? 8 : 0) - (props.density === "compact" ? 16 : 0)); + const isActive = useProxiedModel(props, "active", props.active); + const { + layoutItemStyles + } = useLayoutItem({ + id: props.name, + order: computed(() => parseInt(props.order, 10)), + position: toRef(() => "bottom"), + layoutSize: toRef(() => isActive.value ? height.value : 0), + elementSize: height, + active: isActive, + absolute: toRef(() => props.absolute) + }); + useGroup(props, VBtnToggleSymbol); + provideDefaults({ + VBtn: { + baseColor: toRef(() => props.baseColor), + color: toRef(() => props.color), + density: toRef(() => props.density), + stacked: toRef(() => props.mode !== "horizontal"), + variant: "text" + } + }, { + scoped: true + }); + useRender(() => { + return createVNode(props.tag, { + "class": normalizeClass(["v-bottom-navigation", { + "v-bottom-navigation--active": isActive.value, + "v-bottom-navigation--grow": props.grow, + "v-bottom-navigation--shift": props.mode === "shift" + }, themeClasses.value, backgroundColorClasses.value, borderClasses.value, densityClasses.value, elevationClasses.value, roundedClasses.value, props.class]), + "style": normalizeStyle([backgroundColorStyles.value, layoutItemStyles.value, { + height: convertToUnit(height.value) + }, ssrBootStyles.value, props.style]) + }, { + default: () => [slots.default && createBaseVNode("div", { + "class": "v-bottom-navigation__content" + }, [slots.default()])] + }); + }); + return {}; + } +}); + +export { + VBottomNavigation +}; +//# sourceMappingURL=chunk-LFKLAYDH.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LFKLAYDH.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LFKLAYDH.js.map new file mode 100644 index 0000000..e817fc5 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LFKLAYDH.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../vuetify/src/components/VBottomNavigation/VBottomNavigation.tsx"], + "sourcesContent": ["// Styles\nimport './VBottomNavigation.sass'\n\n// Components\nimport { VBtnToggleSymbol } from '@/components/VBtnToggle/VBtnToggle'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { useSsrBoot } from '@/composables/ssrBoot'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, useTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { GenericProps } from '@/util'\n\nexport const makeVBottomNavigationProps = propsFactory({\n baseColor: String,\n bgColor: String,\n color: String,\n grow: Boolean,\n mode: {\n type: String,\n validator: (v: any) => !v || ['horizontal', 'shift'].includes(v),\n },\n height: {\n type: [Number, String],\n default: 56,\n },\n active: {\n type: Boolean,\n default: true,\n },\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeLayoutItemProps({ name: 'bottom-navigation' }),\n ...makeTagProps({ tag: 'header' }),\n ...makeGroupProps({ selectedClass: 'v-btn--selected' }),\n ...makeThemeProps(),\n}, 'VBottomNavigation')\n\nexport const VBottomNavigation = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: { default: never },\n) => GenericProps>()({\n name: 'VBottomNavigation',\n\n props: makeVBottomNavigationProps(),\n\n emits: {\n 'update:active': (value: any) => true,\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = useTheme()\n const { borderClasses } = useBorder(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.bgColor)\n const { densityClasses } = useDensity(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const { ssrBootStyles } = useSsrBoot()\n const height = computed(() => (\n Number(props.height) -\n (props.density === 'comfortable' ? 8 : 0) -\n (props.density === 'compact' ? 16 : 0)\n ))\n const isActive = useProxiedModel(props, 'active', props.active)\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(() => 'bottom'),\n layoutSize: toRef(() => isActive.value ? height.value : 0),\n elementSize: height,\n active: isActive,\n absolute: toRef(() => props.absolute),\n })\n\n useGroup(props, VBtnToggleSymbol)\n\n provideDefaults({\n VBtn: {\n baseColor: toRef(() => props.baseColor),\n color: toRef(() => props.color),\n density: toRef(() => props.density),\n stacked: toRef(() => props.mode !== 'horizontal'),\n variant: 'text',\n },\n }, { scoped: true })\n\n useRender(() => {\n return (\n \n { slots.default && (\n
\n { slots.default() }\n
\n )}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VBottomNavigation = InstanceType\n"], + "mappings": "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", + "names": ["makeVBottomNavigationProps", "propsFactory", "baseColor", "String", "bgColor", "color", "grow", "Boolean", "mode", "type", "validator", "v", "includes", "height", "Number", "default", "active", "makeBorderProps", "makeComponentProps", "makeDensityProps", "makeElevationProps", "makeRoundedProps", "makeLayoutItemProps", "name", "makeTagProps", "tag", "makeGroupProps", "selectedClass", "makeThemeProps", "VBottomNavigation", "genericComponent", "props", "emits", "value", "setup", "_ref", "slots", "themeClasses", "useTheme", "borderClasses", "useBorder", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "densityClasses", "useDensity", "elevationClasses", "useElevation", "roundedClasses", "useRounded", "ssrBootStyles", "useSsrBoot", "computed", "density", "isActive", "useProxiedModel", "layoutItemStyles", "useLayoutItem", "id", "order", "parseInt", "position", "toRef", "layoutSize", "elementSize", "absolute", "useGroup", "VBtnToggleSymbol", "provideDefaults", "VBtn", "stacked", "variant", "scoped", "useRender", "_createVNode", "_normalizeClass", "class", "_normalizeStyle", "convertToUnit", "style", "_createElementVNode"] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-HGIC64KW.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LPDOFVDK.js similarity index 95% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-HGIC64KW.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LPDOFVDK.js index acc0c60..e5bd590 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-HGIC64KW.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LPDOFVDK.js @@ -1,20 +1,20 @@ import { VDialogTransition } from "./chunk-B4JFJDWM.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; import { VMenuSymbol, VOverlay, makeVOverlayProps -} from "./chunk-TS6Y6OVT.js"; +} from "./chunk-CL6G3ICF.js"; import { useScopeId } from "./chunk-BVUPSGRF.js"; import { forwardRefs } from "./chunk-GUNW7S2L.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { useRtl } from "./chunk-ENTLCOCZ.js"; @@ -47,7 +47,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VMenu/VMenu.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VMenu/VMenu.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VMenu/VMenu.css"; var makeVMenuProps = propsFactory({ // TODO // disableKeys: Boolean, @@ -203,4 +203,4 @@ export { makeVMenuProps, VMenu }; -//# sourceMappingURL=chunk-HGIC64KW.js.map +//# sourceMappingURL=chunk-LPDOFVDK.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-HGIC64KW.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LPDOFVDK.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-HGIC64KW.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LPDOFVDK.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ET5GCC5W.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MH76ZJYE.js similarity index 96% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ET5GCC5W.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MH76ZJYE.js index 37eb816..290f597 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ET5GCC5W.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MH76ZJYE.js @@ -8,12 +8,12 @@ import { import { makeTagProps } from "./chunk-2HZIACSB.js"; -import { - useResizeObserver -} from "./chunk-XDSAO7OT.js"; import { useTextColor } from "./chunk-BHV5Z34M.js"; +import { + useResizeObserver +} from "./chunk-XDSAO7OT.js"; import { makeThemeProps, provideTheme @@ -39,7 +39,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VProgressCircular/VProgressCircular.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VProgressCircular/VProgressCircular.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VProgressCircular/VProgressCircular.css"; var makeVProgressCircularProps = propsFactory({ bgColor: String, color: String, @@ -168,4 +168,4 @@ var VProgressCircular = genericComponent()({ export { VProgressCircular }; -//# sourceMappingURL=chunk-ET5GCC5W.js.map +//# sourceMappingURL=chunk-MH76ZJYE.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ET5GCC5W.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MH76ZJYE.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ET5GCC5W.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MH76ZJYE.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-HV7P7R7J.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MQSMF5CI.js similarity index 99% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-HV7P7R7J.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MQSMF5CI.js index 4887772..25afa46 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-HV7P7R7J.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MQSMF5CI.js @@ -1,14 +1,23 @@ import { VAvatar -} from "./chunk-Z3677HMS.js"; +} from "./chunk-SXI5CS7S.js"; +import { + VDivider +} from "./chunk-X3WY3J75.js"; +import { + useSsrBoot +} from "./chunk-PCKQGDLK.js"; +import { + VExpandTransition +} from "./chunk-B4JFJDWM.js"; +import { + MaybeTransition +} from "./chunk-CAGZXMOS.js"; import { genOverlays, makeVariantProps, useVariant } from "./chunk-ADXDXPPR.js"; -import { - useSsrBoot -} from "./chunk-PCKQGDLK.js"; import { makeBorderProps, useBorder @@ -17,53 +26,44 @@ import { makeElevationProps, useElevation } from "./chunk-YJD2PNP6.js"; -import { - VExpandTransition -} from "./chunk-B4JFJDWM.js"; import { makeDensityProps, useDensity } from "./chunk-TM3MIDYC.js"; import { VIcon -} from "./chunk-CMZ4UYUX.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; +} from "./chunk-4XZHKYGH.js"; import { makeRoundedProps, useRounded } from "./chunk-AQK3CYVW.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { makeTagProps } from "./chunk-2HZIACSB.js"; import { - ripple_default -} from "./chunk-5BPWKCNA.js"; + IconValue +} from "./chunk-OJDZBU5D.js"; import { makeRouterProps, useLink } from "./chunk-573D4TYC.js"; import { - MaybeTransition -} from "./chunk-CAGZXMOS.js"; + ripple_default +} from "./chunk-DS4J67XG.js"; +import { + useBackgroundColor, + useTextColor +} from "./chunk-BHV5Z34M.js"; import { makeDimensionProps, useDimension } from "./chunk-6EZKHCRW.js"; -import { - IconValue -} from "./chunk-OJDZBU5D.js"; import { useProxiedModel } from "./chunk-KA77II4V.js"; -import { - VDivider -} from "./chunk-WXMECWZN.js"; -import { - useBackgroundColor, - useTextColor -} from "./chunk-BHV5Z34M.js"; import { makeThemeProps, provideTheme @@ -116,7 +116,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VList/VList.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VList/VList.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VList/VList.css"; // node_modules/vuetify/lib/components/VList/list.js var ListKey = /* @__PURE__ */ Symbol.for("vuetify:list"); @@ -1015,7 +1015,7 @@ var VListGroup = genericComponent()({ }); // node_modules/vuetify/lib/components/VList/VListItem.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VList/VListItem.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VList/VListItem.css"; // node_modules/vuetify/lib/components/VList/VListItemSubtitle.js var makeVListItemSubtitleProps = propsFactory({ @@ -1893,4 +1893,4 @@ export { VListItemAction, VListItemMedia }; -//# sourceMappingURL=chunk-HV7P7R7J.js.map +//# sourceMappingURL=chunk-MQSMF5CI.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-HV7P7R7J.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MQSMF5CI.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-HV7P7R7J.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-MQSMF5CI.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-BXEVD6W6.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-P6EQK5CJ.js similarity index 97% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-BXEVD6W6.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-P6EQK5CJ.js index 78c7166..8243aa2 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-BXEVD6W6.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-P6EQK5CJ.js @@ -3,11 +3,7 @@ import { VToolbarTitle, makeVToolbarProps, makeVToolbarTitleProps -} from "./chunk-LPZZJ62X.js"; -import { - VBtn, - makeVBtnProps -} from "./chunk-QC7VWQER.js"; +} from "./chunk-H2QFYTJQ.js"; import { useSsrBoot } from "./chunk-PCKQGDLK.js"; @@ -15,6 +11,10 @@ import { makeLayoutItemProps, useLayoutItem } from "./chunk-KQXZAEJP.js"; +import { + VBtn, + makeVBtnProps +} from "./chunk-UQALH6SL.js"; import { useProxiedModel, useToggleScope @@ -41,7 +41,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VAppBar/VAppBar.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VAppBar/VAppBar.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VAppBar/VAppBar.css"; // node_modules/vuetify/lib/composables/scroll.js var makeScrollProps = propsFactory({ @@ -357,4 +357,4 @@ export { VAppBarNavIcon, VAppBarTitle }; -//# sourceMappingURL=chunk-BXEVD6W6.js.map +//# sourceMappingURL=chunk-P6EQK5CJ.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-BXEVD6W6.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-P6EQK5CJ.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-BXEVD6W6.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-P6EQK5CJ.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-VH7QIDM4.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PAT7NP2Z.js similarity index 95% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-VH7QIDM4.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PAT7NP2Z.js index fd3d925..c9cc377 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-VH7QIDM4.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PAT7NP2Z.js @@ -42,4 +42,4 @@ var VDefaultsProvider = genericComponent(false)({ export { VDefaultsProvider }; -//# sourceMappingURL=chunk-VH7QIDM4.js.map +//# sourceMappingURL=chunk-PAT7NP2Z.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-VH7QIDM4.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PAT7NP2Z.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-VH7QIDM4.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PAT7NP2Z.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SHBPUR7N.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PLNIG6WP.js similarity index 97% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SHBPUR7N.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PLNIG6WP.js index f511481..4d78da4 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SHBPUR7N.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PLNIG6WP.js @@ -1,12 +1,23 @@ +import { + VAvatar +} from "./chunk-SXI5CS7S.js"; +import { + VExpandXTransition, + VFadeTransition +} from "./chunk-B4JFJDWM.js"; +import { + useGoTo +} from "./chunk-NJV3GUE4.js"; +import { + makeDisplayProps, + useDisplay +} from "./chunk-N4LJHDYD.js"; import { makeGroupItemProps, makeGroupProps, useGroup, useGroupItem } from "./chunk-W6DJL42A.js"; -import { - VAvatar -} from "./chunk-Z3677HMS.js"; import { genOverlays, makeVariantProps, @@ -20,48 +31,37 @@ import { makeElevationProps, useElevation } from "./chunk-YJD2PNP6.js"; -import { - VExpandXTransition, - VFadeTransition -} from "./chunk-B4JFJDWM.js"; import { makeDensityProps, useDensity } from "./chunk-TM3MIDYC.js"; import { VIcon -} from "./chunk-CMZ4UYUX.js"; +} from "./chunk-4XZHKYGH.js"; import { makeSizeProps, useSize } from "./chunk-PIT7IT55.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; import { makeRoundedProps, useRounded } from "./chunk-AQK3CYVW.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { makeTagProps } from "./chunk-2HZIACSB.js"; import { - useGoTo -} from "./chunk-NJV3GUE4.js"; -import { - ripple_default -} from "./chunk-5BPWKCNA.js"; + IconValue +} from "./chunk-OJDZBU5D.js"; import { makeRouterProps, useLink } from "./chunk-573D4TYC.js"; import { - makeDisplayProps, - useDisplay -} from "./chunk-N4LJHDYD.js"; -import { - IconValue -} from "./chunk-OJDZBU5D.js"; + ripple_default +} from "./chunk-DS4J67XG.js"; import { useResizeObserver } from "./chunk-XDSAO7OT.js"; @@ -104,13 +104,13 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VChip/VChip.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VChip/VChip.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VChip/VChip.css"; // node_modules/vuetify/lib/components/VChipGroup/VChipGroup.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VChipGroup/VChipGroup.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VChipGroup/VChipGroup.css"; // node_modules/vuetify/lib/components/VSlideGroup/VSlideGroup.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSlideGroup/VSlideGroup.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSlideGroup/VSlideGroup.css"; // node_modules/vuetify/lib/components/VSlideGroup/helpers.js function calculateUpdatedTarget(_ref) { @@ -862,4 +862,4 @@ export { VChipGroup, VChip }; -//# sourceMappingURL=chunk-SHBPUR7N.js.map +//# sourceMappingURL=chunk-PLNIG6WP.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SHBPUR7N.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PLNIG6WP.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SHBPUR7N.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-PLNIG6WP.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-DRSCVHAQ.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-Q5BHIW5H.js similarity index 88% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-DRSCVHAQ.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-Q5BHIW5H.js index bbd7dd5..de11106 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-DRSCVHAQ.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-Q5BHIW5H.js @@ -1,6 +1,9 @@ import { useSsrBoot } from "./chunk-PCKQGDLK.js"; +import { + useLayout +} from "./chunk-KQXZAEJP.js"; import { makeTagProps } from "./chunk-2HZIACSB.js"; @@ -8,9 +11,6 @@ import { makeDimensionProps, useDimension } from "./chunk-6EZKHCRW.js"; -import { - useLayout -} from "./chunk-KQXZAEJP.js"; import { genericComponent, makeComponentProps, @@ -25,7 +25,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VMain/VMain.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VMain/VMain.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VMain/VMain.css"; var makeVMainProps = propsFactory({ scrollable: Boolean, ...makeComponentProps(), @@ -67,4 +67,4 @@ var VMain = genericComponent()({ export { VMain }; -//# sourceMappingURL=chunk-DRSCVHAQ.js.map +//# sourceMappingURL=chunk-Q5BHIW5H.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-DRSCVHAQ.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-Q5BHIW5H.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-DRSCVHAQ.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-Q5BHIW5H.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TSYQL5U3.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QMLWKRPM.js similarity index 96% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TSYQL5U3.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QMLWKRPM.js index 6789e60..de1a764 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TSYQL5U3.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QMLWKRPM.js @@ -1,6 +1,6 @@ import { VBtn -} from "./chunk-QC7VWQER.js"; +} from "./chunk-UQALH6SL.js"; import { makePositionProps, usePosition @@ -24,33 +24,33 @@ import { } from "./chunk-TM3MIDYC.js"; import { VIcon -} from "./chunk-CMZ4UYUX.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; +} from "./chunk-4XZHKYGH.js"; import { makeRoundedProps, useRounded } from "./chunk-AQK3CYVW.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { makeTagProps } from "./chunk-2HZIACSB.js"; +import { + IconValue +} from "./chunk-OJDZBU5D.js"; +import { + useTextColor +} from "./chunk-BHV5Z34M.js"; import { makeDimensionProps, useDimension } from "./chunk-6EZKHCRW.js"; -import { - IconValue -} from "./chunk-OJDZBU5D.js"; import { useLocale } from "./chunk-ENTLCOCZ.js"; import { useProxiedModel } from "./chunk-KA77II4V.js"; -import { - useTextColor -} from "./chunk-BHV5Z34M.js"; import { makeThemeProps, provideTheme @@ -72,7 +72,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VAlert/VAlert.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VAlert/VAlert.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VAlert/VAlert.css"; // node_modules/vuetify/lib/components/VAlert/VAlertTitle.js var VAlertTitle = createSimpleFunctional("v-alert-title"); @@ -286,4 +286,4 @@ export { useIconSizes, VAlert }; -//# sourceMappingURL=chunk-TSYQL5U3.js.map +//# sourceMappingURL=chunk-QMLWKRPM.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TSYQL5U3.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QMLWKRPM.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TSYQL5U3.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QMLWKRPM.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QV3QXWPM.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QV3QXWPM.js new file mode 100644 index 0000000..e69de29 diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QV3QXWPM.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QV3QXWPM.js.map new file mode 100644 index 0000000..9865211 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QV3QXWPM.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": [], + "sourcesContent": [], + "mappings": "", + "names": [] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RB6DAYHX.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RB6DAYHX.js new file mode 100644 index 0000000..e0cf31e --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RB6DAYHX.js @@ -0,0 +1,175 @@ +import { + getPropertyFromItem, + propsFactory, + wrapInArray +} from "./chunk-LZ5T2ERG.js"; +import { + Fragment, + computed, + createBaseVNode, + normalizeClass, + shallowRef, + unref, + watchEffect +} from "./chunk-2MKFL3BX.js"; + +// node_modules/vuetify/lib/composables/filter.js +var defaultFilter = (value, query, item) => { + if (value == null || query == null) return -1; + if (!query.length) return 0; + value = value.toString().toLocaleLowerCase(); + query = query.toString().toLocaleLowerCase(); + const result = []; + let idx = value.indexOf(query); + while (~idx) { + result.push([idx, idx + query.length]); + idx = value.indexOf(query, idx + query.length); + } + return result.length ? result : -1; +}; +function normaliseMatch(match, query) { + if (match == null || typeof match === "boolean" || match === -1) return; + if (typeof match === "number") return [[match, match + query.length]]; + if (Array.isArray(match[0])) return match; + return [match]; +} +var makeFilterProps = propsFactory({ + customFilter: Function, + customKeyFilter: Object, + filterKeys: [Array, String], + filterMode: { + type: String, + default: "intersection" + }, + noFilter: Boolean +}, "filter"); +function filterItems(items, query, options) { + const array = []; + const filter = options?.default ?? defaultFilter; + const keys = options?.filterKeys ? wrapInArray(options.filterKeys) : false; + const customFiltersLength = Object.keys(options?.customKeyFilter ?? {}).length; + if (!items?.length) return array; + let lookAheadItem = null; + loop: for (let i = 0; i < items.length; i++) { + const [item, transformed = item] = wrapInArray(items[i]); + const customMatches = {}; + const defaultMatches = {}; + let match = -1; + if ((query || customFiltersLength > 0) && !options?.noFilter) { + let hasOnlyCustomFilters = false; + if (typeof item === "object") { + if (item.type === "divider" || item.type === "subheader") { + if (lookAheadItem?.type === "divider" && item.type === "subheader") { + array.push(lookAheadItem); + } + lookAheadItem = { + index: i, + matches: {}, + type: item.type + }; + continue; + } + const filterKeys = keys || Object.keys(transformed); + hasOnlyCustomFilters = filterKeys.length === customFiltersLength; + for (const key of filterKeys) { + const value = getPropertyFromItem(transformed, key); + const keyFilter = options?.customKeyFilter?.[key]; + match = keyFilter ? keyFilter(value, query, item) : filter(value, query, item); + if (match !== -1 && match !== false) { + if (keyFilter) customMatches[key] = normaliseMatch(match, query); + else defaultMatches[key] = normaliseMatch(match, query); + } else if (options?.filterMode === "every") { + continue loop; + } + } + } else { + match = filter(item, query, item); + if (match !== -1 && match !== false) { + defaultMatches.title = normaliseMatch(match, query); + } + } + const defaultMatchesLength = Object.keys(defaultMatches).length; + const customMatchesLength = Object.keys(customMatches).length; + if (!defaultMatchesLength && !customMatchesLength) continue; + if (options?.filterMode === "union" && customMatchesLength !== customFiltersLength && !defaultMatchesLength) continue; + if (options?.filterMode === "intersection" && (customMatchesLength !== customFiltersLength || !defaultMatchesLength && customFiltersLength > 0 && !hasOnlyCustomFilters)) continue; + } + if (lookAheadItem) { + array.push(lookAheadItem); + lookAheadItem = null; + } + array.push({ + index: i, + matches: { + ...defaultMatches, + ...customMatches + } + }); + } + return array; +} +function useFilter(props, items, query, options) { + const filteredItems = shallowRef([]); + const filteredMatches = shallowRef(/* @__PURE__ */ new Map()); + const transformedItems = computed(() => options?.transform ? unref(items).map((item) => [item, options.transform(item)]) : unref(items)); + watchEffect(() => { + const _query = typeof query === "function" ? query() : unref(query); + const strQuery = typeof _query !== "string" && typeof _query !== "number" ? "" : String(_query); + const results = filterItems(transformedItems.value, strQuery, { + customKeyFilter: { + ...props.customKeyFilter, + ...unref(options?.customKeyFilter) + }, + default: props.customFilter, + filterKeys: props.filterKeys, + filterMode: props.filterMode, + noFilter: props.noFilter + }); + const originalItems = unref(items); + const _filteredItems = []; + const _filteredMatches = /* @__PURE__ */ new Map(); + results.forEach((_ref) => { + let { + index, + matches + } = _ref; + const item = originalItems[index]; + _filteredItems.push(item); + _filteredMatches.set(item.value, matches); + }); + filteredItems.value = _filteredItems; + filteredMatches.value = _filteredMatches; + }); + function getMatches(item) { + return filteredMatches.value.get(item.value); + } + return { + filteredItems, + filteredMatches, + getMatches + }; +} +function highlightResult(name, text, matches) { + if (matches == null || !matches.length) return text; + return matches.map((match, i) => { + const start = i === 0 ? 0 : matches[i - 1][1]; + const result = [createBaseVNode("span", { + "class": normalizeClass(`${name}__unmask`) + }, [text.slice(start, match[0])]), createBaseVNode("span", { + "class": normalizeClass(`${name}__mask`) + }, [text.slice(match[0], match[1])])]; + if (i === matches.length - 1) { + result.push(createBaseVNode("span", { + "class": normalizeClass(`${name}__unmask`) + }, [text.slice(match[1])])); + } + return createBaseVNode(Fragment, null, [result]); + }); +} + +export { + makeFilterProps, + useFilter, + highlightResult +}; +//# sourceMappingURL=chunk-RB6DAYHX.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RB6DAYHX.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RB6DAYHX.js.map new file mode 100644 index 0000000..294e91d --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RB6DAYHX.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../vuetify/src/composables/filter.tsx"], + "sourcesContent": ["/* eslint-disable max-statements */\n/* eslint-disable no-labels */\n\n// Utilities\nimport { computed, shallowRef, unref, watchEffect } from 'vue'\nimport { getPropertyFromItem, propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { MaybeRef } from '@/util'\n\n/**\n * - boolean: match without highlight\n * - number: single match (index), length already known\n * - []: single match (start, end)\n * - [][]: multiple matches (start, end), shouldn't overlap\n */\nexport type FilterMatchArraySingle = readonly [number, number]\nexport type FilterMatchArrayMultiple = readonly FilterMatchArraySingle[]\nexport type FilterMatchArray = FilterMatchArraySingle | FilterMatchArrayMultiple\nexport type FilterMatch = boolean | number | FilterMatchArray\nexport type FilterFunction = (value: string, query: string, item?: InternalItem) => FilterMatch\nexport type FilterKeyFunctions = Record\nexport type FilterKeys = string | string[]\nexport type FilterMode = 'some' | 'every' | 'union' | 'intersection'\n\nexport interface FilterProps {\n customFilter?: FilterFunction\n customKeyFilter?: FilterKeyFunctions\n filterKeys?: FilterKeys\n filterMode?: FilterMode\n noFilter?: boolean\n}\n\nexport interface InternalItem {\n value: any\n raw: T\n type?: string\n}\n\ntype FilterResult = {\n index: number\n matches: Record\n type?: 'divider' | 'subheader'\n}\n\n// Composables\nexport const defaultFilter: FilterFunction = (value, query, item) => {\n if (value == null || query == null) return -1\n if (!query.length) return 0\n\n value = value.toString().toLocaleLowerCase()\n query = query.toString().toLocaleLowerCase()\n\n const result = []\n let idx = value.indexOf(query)\n while (~idx) {\n result.push([idx, idx + query.length] as const)\n\n idx = value.indexOf(query, idx + query.length)\n }\n\n return result.length ? result : -1\n}\n\nfunction normaliseMatch (match: FilterMatch, query: string): FilterMatchArrayMultiple | undefined {\n if (match == null || typeof match === 'boolean' || match === -1) return\n if (typeof match === 'number') return [[match, match + query.length]]\n if (Array.isArray(match[0])) return match as FilterMatchArrayMultiple\n return [match] as FilterMatchArrayMultiple\n}\n\nexport const makeFilterProps = propsFactory({\n customFilter: Function as PropType,\n customKeyFilter: Object as PropType,\n filterKeys: [Array, String] as PropType,\n filterMode: {\n type: String as PropType,\n default: 'intersection',\n },\n noFilter: Boolean,\n}, 'filter')\n\n// eslint-disable-next-line complexity\nexport function filterItems (\n items: readonly (readonly [item: InternalItem, transformed: {}])[] | readonly InternalItem[],\n query: string,\n options?: {\n customKeyFilter?: FilterKeyFunctions\n default?: FilterFunction\n filterKeys?: FilterKeys\n filterMode?: FilterMode\n noFilter?: boolean\n },\n) {\n const array: FilterResult[] = []\n // always ensure we fall back to a functioning filter\n const filter = options?.default ?? defaultFilter\n const keys = options?.filterKeys ? wrapInArray(options.filterKeys) : false\n const customFiltersLength = Object.keys(options?.customKeyFilter ?? {}).length\n\n if (!items?.length) return array\n\n let lookAheadItem: FilterResult | null = null\n\n loop:\n for (let i = 0; i < items.length; i++) {\n const [item, transformed = item] = wrapInArray(items[i]) as readonly [InternalItem, {}]\n const customMatches: Record = {}\n const defaultMatches: Record = {}\n let match: FilterMatch = -1\n\n if ((query || customFiltersLength > 0) && !options?.noFilter) {\n let hasOnlyCustomFilters = false\n\n if (typeof item === 'object') {\n if (item.type === 'divider' || item.type === 'subheader') {\n if (lookAheadItem?.type === 'divider' && item.type === 'subheader') {\n array.push(lookAheadItem) // divider before subheader\n }\n\n lookAheadItem = { index: i, matches: { }, type: item.type }\n continue\n }\n\n const filterKeys = keys || Object.keys(transformed)\n hasOnlyCustomFilters = filterKeys.length === customFiltersLength\n\n for (const key of filterKeys) {\n const value = getPropertyFromItem(transformed, key)\n const keyFilter = options?.customKeyFilter?.[key]\n\n match = keyFilter\n ? keyFilter(value, query, item)\n : filter(value, query, item)\n\n if (match !== -1 && match !== false) {\n if (keyFilter) customMatches[key] = normaliseMatch(match, query)\n else defaultMatches[key] = normaliseMatch(match, query)\n } else if (options?.filterMode === 'every') {\n continue loop\n }\n }\n } else {\n match = filter(item, query, item)\n if (match !== -1 && match !== false) {\n defaultMatches.title = normaliseMatch(match, query)\n }\n }\n\n const defaultMatchesLength = Object.keys(defaultMatches).length\n const customMatchesLength = Object.keys(customMatches).length\n\n if (!defaultMatchesLength && !customMatchesLength) continue\n\n if (\n options?.filterMode === 'union' &&\n customMatchesLength !== customFiltersLength &&\n !defaultMatchesLength\n ) continue\n\n if (\n options?.filterMode === 'intersection' &&\n (\n customMatchesLength !== customFiltersLength ||\n (!defaultMatchesLength && customFiltersLength > 0 && !hasOnlyCustomFilters)\n )\n ) continue\n }\n\n if (lookAheadItem) {\n array.push(lookAheadItem)\n lookAheadItem = null\n }\n\n array.push({ index: i, matches: { ...defaultMatches, ...customMatches } })\n }\n\n return array\n}\n\nexport function useFilter (\n props: FilterProps,\n items: MaybeRef,\n query: Ref | (() => string | undefined),\n options?: {\n transform?: (item: T) => {}\n customKeyFilter?: MaybeRef\n }\n) {\n const filteredItems = shallowRef([])\n const filteredMatches = shallowRef(new Map>())\n const transformedItems = computed(() => (\n options?.transform\n ? unref(items).map(item => ([item, options.transform!(item)] as const))\n : unref(items)\n ))\n\n watchEffect(() => {\n const _query = typeof query === 'function' ? query() : unref(query)\n const strQuery = (\n typeof _query !== 'string' &&\n typeof _query !== 'number'\n ) ? '' : String(_query)\n\n const results = filterItems(\n transformedItems.value,\n strQuery,\n {\n customKeyFilter: {\n ...props.customKeyFilter,\n ...unref(options?.customKeyFilter),\n },\n default: props.customFilter,\n filterKeys: props.filterKeys,\n filterMode: props.filterMode,\n noFilter: props.noFilter,\n },\n )\n\n const originalItems = unref(items)\n\n const _filteredItems: typeof filteredItems['value'] = []\n const _filteredMatches: typeof filteredMatches['value'] = new Map()\n results.forEach(({ index, matches }) => {\n const item = originalItems[index]\n _filteredItems.push(item)\n _filteredMatches.set(item.value, matches)\n })\n filteredItems.value = _filteredItems\n filteredMatches.value = _filteredMatches\n })\n\n function getMatches (item: T) {\n return filteredMatches.value.get(item.value)\n }\n\n return { filteredItems, filteredMatches, getMatches }\n}\n\nexport function highlightResult (name: string, text: string, matches: FilterMatchArrayMultiple | undefined) {\n if (matches == null || !matches.length) return text\n\n return matches.map((match, i) => {\n const start = i === 0 ? 0 : matches[i - 1][1]\n const result = [\n { text.slice(start, match[0]) },\n { text.slice(match[0], match[1]) },\n ]\n if (i === matches.length - 1) {\n result.push({ text.slice(match[1]) })\n }\n return <>{ result }\n })\n}\n"], + "mappings": "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", + "names": ["defaultFilter", "value", "query", "item", "length", "toString", "toLocaleLowerCase", "result", "idx", "indexOf", "push", "normaliseMatch", "match", "Array", "isArray", "makeFilterProps", "propsFactory", "customFilter", "Function", "customKeyFilter", "Object", "filterKeys", "String", "filterMode", "type", "default", "noFilter", "Boolean", "filterItems", "items", "options", "array", "filter", "keys", "wrapInArray", "customFiltersLength", "lookAheadItem", "loop", "i", "transformed", "customMatches", "defaultMatches", "hasOnlyCustomFilters", "index", "matches", "key", "getPropertyFromItem", "keyFilter", "title", "defaultMatchesLength", "customMatchesLength", "useFilter", "props", "filteredItems", "shallowRef", "filteredMatches", "Map", "transformedItems", "computed", "transform", "unref", "map", "watchEffect", "_query", "strQuery", "results", "originalItems", "_filteredItems", "_filteredMatches", "forEach", "_ref", "set", "getMatches", "get", "highlightResult", "name", "text", "start", "_createElementVNode", "_normalizeClass", "slice", "_Fragment"] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-34XWDQGB.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RWSHRKUK.js similarity index 93% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-34XWDQGB.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RWSHRKUK.js index e434666..a46630a 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-34XWDQGB.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RWSHRKUK.js @@ -1,19 +1,19 @@ import { VDialogTransition } from "./chunk-B4JFJDWM.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; import { VOverlay, makeVOverlayProps -} from "./chunk-TS6Y6OVT.js"; +} from "./chunk-CL6G3ICF.js"; import { useScopeId } from "./chunk-BVUPSGRF.js"; import { forwardRefs } from "./chunk-GUNW7S2L.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { useProxiedModel } from "./chunk-KA77II4V.js"; @@ -32,7 +32,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VDialog/VDialog.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDialog/VDialog.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDialog/VDialog.css"; var makeVDialogProps = propsFactory({ fullscreen: Boolean, scrollable: Boolean, @@ -134,4 +134,4 @@ export { makeVDialogProps, VDialog }; -//# sourceMappingURL=chunk-34XWDQGB.js.map +//# sourceMappingURL=chunk-RWSHRKUK.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-34XWDQGB.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RWSHRKUK.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-34XWDQGB.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-RWSHRKUK.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TSTWIJCO.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SCY7DFFY.js similarity index 97% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TSTWIJCO.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SCY7DFFY.js index d2af195..0d5db94 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TSTWIJCO.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SCY7DFFY.js @@ -1,3 +1,10 @@ +import { + VExpandTransition +} from "./chunk-B4JFJDWM.js"; +import { + makeLazyProps, + useLazy +} from "./chunk-YGX2Z63P.js"; import { makeGroupItemProps, makeGroupProps, @@ -8,39 +15,32 @@ import { makeElevationProps, useElevation } from "./chunk-YJD2PNP6.js"; -import { - VExpandTransition -} from "./chunk-B4JFJDWM.js"; import { VIcon -} from "./chunk-CMZ4UYUX.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; +} from "./chunk-4XZHKYGH.js"; import { makeRoundedProps, useRounded } from "./chunk-AQK3CYVW.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { makeTagProps } from "./chunk-2HZIACSB.js"; -import { - makeLazyProps, - useLazy -} from "./chunk-YGX2Z63P.js"; -import { - ripple_default -} from "./chunk-5BPWKCNA.js"; -import { - makeDimensionProps, - useDimension -} from "./chunk-6EZKHCRW.js"; import { IconValue } from "./chunk-OJDZBU5D.js"; +import { + ripple_default +} from "./chunk-DS4J67XG.js"; import { useBackgroundColor } from "./chunk-BHV5Z34M.js"; +import { + makeDimensionProps, + useDimension +} from "./chunk-6EZKHCRW.js"; import { makeThemeProps, provideTheme @@ -67,7 +67,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VExpansionPanel/VExpansionPanels.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VExpansionPanel/VExpansionPanel.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VExpansionPanel/VExpansionPanel.css"; // node_modules/vuetify/lib/components/VExpansionPanel/shared.js var VExpansionPanelSymbol = /* @__PURE__ */ Symbol.for("vuetify:v-expansion-panel"); @@ -347,4 +347,4 @@ export { VExpansionPanel, VExpansionPanels }; -//# sourceMappingURL=chunk-TSTWIJCO.js.map +//# sourceMappingURL=chunk-SCY7DFFY.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TSTWIJCO.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SCY7DFFY.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TSTWIJCO.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SCY7DFFY.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-Z3677HMS.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SXI5CS7S.js similarity index 91% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-Z3677HMS.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SXI5CS7S.js index 9e305d5..ebc6ecc 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-Z3677HMS.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SXI5CS7S.js @@ -1,11 +1,11 @@ +import { + VImg +} from "./chunk-TTIGZHWR.js"; import { genOverlays, makeVariantProps, useVariant } from "./chunk-ADXDXPPR.js"; -import { - VImg -} from "./chunk-6CRS5HI4.js"; import { makeBorderProps, useBorder @@ -16,18 +16,18 @@ import { } from "./chunk-TM3MIDYC.js"; import { VIcon -} from "./chunk-CMZ4UYUX.js"; +} from "./chunk-4XZHKYGH.js"; import { makeSizeProps, useSize } from "./chunk-PIT7IT55.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; import { makeRoundedProps, useRounded } from "./chunk-AQK3CYVW.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { makeTagProps } from "./chunk-2HZIACSB.js"; @@ -51,7 +51,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VAvatar/VAvatar.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VAvatar/VAvatar.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VAvatar/VAvatar.css"; var makeVAvatarProps = propsFactory({ start: Boolean, end: Boolean, @@ -134,4 +134,4 @@ var VAvatar = genericComponent()({ export { VAvatar }; -//# sourceMappingURL=chunk-Z3677HMS.js.map +//# sourceMappingURL=chunk-SXI5CS7S.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-Z3677HMS.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SXI5CS7S.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-Z3677HMS.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-SXI5CS7S.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-I4SZJCEY.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-T4XKRUDE.js similarity index 96% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-I4SZJCEY.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-T4XKRUDE.js index b1c6ee0..fda9d4f 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-I4SZJCEY.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-T4XKRUDE.js @@ -7,18 +7,18 @@ import { VCounter, VField, makeVFieldProps -} from "./chunk-J7Q2NMV7.js"; +} from "./chunk-ITO3JWXJ.js"; import { VInput, makeVInputProps, useFocus -} from "./chunk-4VABFUPG.js"; -import { - forwardRefs -} from "./chunk-GUNW7S2L.js"; +} from "./chunk-IK67YVHF.js"; import { intersect_default } from "./chunk-5ONGSJQ2.js"; +import { + forwardRefs +} from "./chunk-GUNW7S2L.js"; import { useDisplay } from "./chunk-N4LJHDYD.js"; @@ -53,8 +53,8 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VTextarea/VTextarea.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTextarea/VTextarea.css"; -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTextField/VTextField.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTextarea/VTextarea.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTextField/VTextField.css"; var makeVTextareaProps = propsFactory({ autoGrow: Boolean, autofocus: Boolean, @@ -350,4 +350,4 @@ var VTextarea = genericComponent()({ export { VTextarea }; -//# sourceMappingURL=chunk-I4SZJCEY.js.map +//# sourceMappingURL=chunk-T4XKRUDE.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-I4SZJCEY.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-T4XKRUDE.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-I4SZJCEY.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-T4XKRUDE.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WNCBJDZZ.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TN4XZECZ.js similarity index 96% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WNCBJDZZ.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TN4XZECZ.js index 8f24576..cec6ee8 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WNCBJDZZ.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TN4XZECZ.js @@ -4,32 +4,32 @@ import { } from "./chunk-TM3MIDYC.js"; import { VIcon -} from "./chunk-CMZ4UYUX.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; +} from "./chunk-4XZHKYGH.js"; import { makeRoundedProps, useRounded } from "./chunk-AQK3CYVW.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { makeTagProps } from "./chunk-2HZIACSB.js"; +import { + IconValue +} from "./chunk-OJDZBU5D.js"; import { makeRouterProps, useLink } from "./chunk-573D4TYC.js"; -import { - makeDimensionProps, - useDimension -} from "./chunk-6EZKHCRW.js"; -import { - IconValue -} from "./chunk-OJDZBU5D.js"; import { useBackgroundColor, useTextColor } from "./chunk-BHV5Z34M.js"; +import { + makeDimensionProps, + useDimension +} from "./chunk-6EZKHCRW.js"; import { genericComponent, isObject, @@ -51,7 +51,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VBreadcrumbs/VBreadcrumbs.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBreadcrumbs/VBreadcrumbs.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBreadcrumbs/VBreadcrumbs.css"; // node_modules/vuetify/lib/components/VBreadcrumbs/VBreadcrumbsDivider.js var makeVBreadcrumbsDividerProps = propsFactory({ @@ -247,4 +247,4 @@ export { VBreadcrumbsItem, VBreadcrumbs }; -//# sourceMappingURL=chunk-WNCBJDZZ.js.map +//# sourceMappingURL=chunk-TN4XZECZ.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WNCBJDZZ.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TN4XZECZ.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WNCBJDZZ.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TN4XZECZ.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TS6Y6OVT.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TS6Y6OVT.js.map deleted file mode 100644 index 05ee560..0000000 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TS6Y6OVT.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../vuetify/src/directives/click-outside/index.ts", "../../vuetify/src/components/VOverlay/VOverlay.tsx", "../../vuetify/src/components/VOverlay/util/point.ts", "../../vuetify/src/components/VOverlay/locationStrategies.ts", "../../vuetify/src/components/VOverlay/requestNewFrame.ts", "../../vuetify/src/components/VOverlay/scrollStrategies.ts", "../../vuetify/src/components/VMenu/shared.ts", "../../vuetify/src/components/VOverlay/useActivator.tsx", "../../vuetify/src/composables/hydration.ts", "../../vuetify/src/composables/stack.ts", "../../vuetify/src/composables/teleport.ts"], - "sourcesContent": ["// Utilities\nimport { attachedRoot } from '@/util'\n\n// Types\nimport type { DirectiveBinding } from 'vue'\n\ninterface ClickOutsideBindingArgs {\n handler: (e: MouseEvent) => void\n closeConditional?: (e: Event) => boolean\n include?: () => HTMLElement[]\n}\n\ninterface ClickOutsideDirectiveBinding extends DirectiveBinding {\n value: ((e: MouseEvent) => void) | ClickOutsideBindingArgs\n}\n\nfunction defaultConditional () {\n return true\n}\n\nfunction checkEvent (e: MouseEvent, el: HTMLElement, binding: ClickOutsideDirectiveBinding): boolean {\n // The include element callbacks below can be expensive\n // so we should avoid calling them when we're not active.\n // Explicitly check for false to allow fallback compatibility\n // with non-toggleable components\n if (!e || checkIsActive(e, binding) === false) return false\n\n // If we're clicking inside the shadowroot, then the app root doesn't get the same\n // level of introspection as to _what_ we're clicking. We want to check to see if\n // our target is the shadowroot parent container, and if it is, ignore.\n const root = attachedRoot(el)\n if (\n typeof ShadowRoot !== 'undefined' &&\n root instanceof ShadowRoot &&\n root.host === e.target\n ) return false\n\n // Check if additional elements were passed to be included in check\n // (click must be outside all included elements, if any)\n const elements = ((typeof binding.value === 'object' && binding.value.include) || (() => []))()\n // Add the root element for the component this directive was defined on\n elements.push(el)\n\n // Check if it's a click outside our elements, and then if our callback returns true.\n // Non-toggleable components should take action in their callback and return falsy.\n // Toggleable can return true if it wants to deactivate.\n // Note that, because we're in the capture phase, this callback will occur before\n // the bubbling click event on any outside elements.\n return !elements.some(el => el?.contains(e.target as Node))\n}\n\nfunction checkIsActive (e: MouseEvent, binding: ClickOutsideDirectiveBinding): boolean | void {\n const isActive = (typeof binding.value === 'object' && binding.value.closeConditional) || defaultConditional\n\n return isActive(e)\n}\n\nfunction directive (e: MouseEvent, el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n const handler = typeof binding.value === 'function' ? binding.value : binding.value.handler\n\n // Clicks in the Shadow DOM change their target while using setTimeout, so the original target is saved here\n e.shadowTarget = e.target\n\n el._clickOutside!.lastMousedownWasOutside && checkEvent(e, el, binding) && setTimeout(() => {\n checkIsActive(e, binding) && handler && handler(e)\n }, 0)\n}\n\nfunction handleShadow (el: HTMLElement, callback: Function): void {\n const root = attachedRoot(el)\n\n callback(document)\n\n if (typeof ShadowRoot !== 'undefined' && root instanceof ShadowRoot) {\n callback(root)\n }\n}\n\nexport const ClickOutside = {\n // [data-app] may not be found\n // if using bind, inserted makes\n // sure that the root element is\n // available, iOS does not support\n // clicks on body\n mounted (el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n const onClick = (e: Event) => directive(e as MouseEvent, el, binding)\n const onMousedown = (e: Event) => {\n el._clickOutside!.lastMousedownWasOutside = checkEvent(e as MouseEvent, el, binding)\n }\n\n handleShadow(el, (app: HTMLElement) => {\n app.addEventListener('click', onClick, true)\n app.addEventListener('mousedown', onMousedown, true)\n })\n if (!el._clickOutside) {\n el._clickOutside = {\n lastMousedownWasOutside: false,\n }\n }\n\n el._clickOutside[binding.instance!.$.uid] = {\n onClick,\n onMousedown,\n }\n },\n\n beforeUnmount (el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n if (!el._clickOutside) return\n\n handleShadow(el, (app: HTMLElement) => {\n if (!app || !el._clickOutside?.[binding.instance!.$.uid]) return\n\n const { onClick, onMousedown } = el._clickOutside[binding.instance!.$.uid]!\n\n app.removeEventListener('click', onClick, true)\n app.removeEventListener('mousedown', onMousedown, true)\n })\n\n delete el._clickOutside[binding.instance!.$.uid]\n },\n}\n\nexport default ClickOutside\n", "// Styles\nimport './VOverlay.sass'\n\n// Composables\nimport { makeLocationStrategyProps, useLocationStrategies } from './locationStrategies'\nimport { makeScrollStrategyProps, useScrollStrategies } from './scrollStrategies'\nimport { makeActivatorProps, useActivator } from './useActivator'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeFocusTrapProps, useFocusTrap } from '@/composables/focusTrap'\nimport { useHydration } from '@/composables/hydration'\nimport { makeLazyProps, useLazy } from '@/composables/lazy'\nimport { useRtl } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useBackButton, useRouter } from '@/composables/router'\nimport { useScopeId } from '@/composables/scopeId'\nimport { useStack } from '@/composables/stack'\nimport { useTeleport } from '@/composables/teleport'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useToggleScope } from '@/composables/toggleScope'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Directives\nimport vClickOutside from '@/directives/click-outside'\n\n// Utilities\nimport {\n computed,\n mergeProps,\n onBeforeUnmount,\n ref,\n Teleport,\n Transition,\n watch,\n} from 'vue'\nimport {\n animate,\n convertToUnit,\n genericComponent,\n getCurrentInstance,\n getScrollParent,\n IN_BROWSER,\n omit,\n propsFactory,\n standardEasing,\n useRender,\n} from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { BackgroundColorData } from '@/composables/color'\nimport type { TemplateRef } from '@/util'\n\ninterface ScrimProps {\n [key: string]: unknown\n modelValue: boolean\n color: BackgroundColorData\n}\nfunction Scrim (props: ScrimProps) {\n const { modelValue, color, ...rest } = props\n return (\n \n { props.modelValue && (\n \n )}\n \n )\n}\n\nexport type OverlaySlots = {\n default: { isActive: Ref }\n activator: { isActive: boolean, props: Record, targetRef: TemplateRef }\n}\n\nexport const makeVOverlayProps = propsFactory({\n absolute: Boolean,\n attach: [Boolean, String, Object] as PropType,\n closeOnBack: {\n type: Boolean,\n default: true,\n },\n contained: Boolean,\n contentClass: null,\n contentProps: null,\n disabled: Boolean,\n opacity: [Number, String],\n noClickAnimation: Boolean,\n modelValue: Boolean,\n persistent: Boolean,\n scrim: {\n type: [Boolean, String],\n default: true,\n },\n zIndex: {\n type: [Number, String],\n default: 2000,\n },\n\n ...makeActivatorProps(),\n ...makeComponentProps(),\n ...makeDimensionProps(),\n ...makeLazyProps(),\n ...makeLocationStrategyProps(),\n ...makeScrollStrategyProps(),\n ...makeFocusTrapProps(),\n ...makeThemeProps(),\n ...makeTransitionProps(),\n}, 'VOverlay')\n\nexport const VOverlay = genericComponent()({\n name: 'VOverlay',\n\n directives: { vClickOutside },\n\n inheritAttrs: false,\n\n props: {\n _disableGlobalStack: Boolean,\n\n ...omit(makeVOverlayProps(), ['disableInitialFocus']),\n },\n\n emits: {\n 'click:outside': (e: MouseEvent) => true,\n 'update:modelValue': (value: boolean) => true,\n keydown: (e: KeyboardEvent) => true,\n afterEnter: () => true,\n afterLeave: () => true,\n },\n\n setup (props, { slots, attrs, emit }) {\n const vm = getCurrentInstance('VOverlay')\n const root = ref()\n const scrimEl = ref()\n const contentEl = ref()\n const model = useProxiedModel(props, 'modelValue')\n const isActive = computed({\n get: () => model.value,\n set: v => {\n if (!(v && props.disabled)) model.value = v\n },\n })\n const { themeClasses } = provideTheme(props)\n const { rtlClasses, isRtl } = useRtl()\n const { hasContent, onAfterLeave: _onAfterLeave } = useLazy(props, isActive)\n const scrimColor = useBackgroundColor(() => {\n return typeof props.scrim === 'string' ? props.scrim : null\n })\n const { globalTop, localTop, stackStyles } = useStack(isActive, () => props.zIndex, props._disableGlobalStack)\n const {\n activatorEl, activatorRef,\n target, targetEl, targetRef,\n activatorEvents,\n contentEvents,\n scrimEvents,\n } = useActivator(props, { isActive, isTop: localTop, contentEl })\n const { teleportTarget } = useTeleport(() => {\n const target = props.attach || props.contained\n if (target) return target\n const rootNode = activatorEl?.value?.getRootNode() || vm.proxy?.$el?.getRootNode()\n if (rootNode instanceof ShadowRoot) return rootNode\n return false\n })\n const { dimensionStyles } = useDimension(props)\n const isMounted = useHydration()\n const { scopeId } = useScopeId()\n\n watch(() => props.disabled, v => {\n if (v) isActive.value = false\n })\n\n const { contentStyles, updateLocation } = useLocationStrategies(props, {\n isRtl,\n contentEl,\n target,\n isActive,\n })\n useScrollStrategies(props, {\n root,\n contentEl,\n targetEl,\n target,\n isActive,\n updateLocation,\n })\n\n function onClickOutside (e: MouseEvent) {\n emit('click:outside', e)\n\n if (!props.persistent) isActive.value = false\n else animateClick()\n }\n\n function closeConditional (e: Event) {\n return isActive.value && localTop.value && (\n // If using scrim, only close if clicking on it rather than anything opened on top\n !props.scrim || e.target === scrimEl.value || (e instanceof MouseEvent && e.shadowTarget === scrimEl.value)\n )\n }\n\n useFocusTrap(props, { isActive, localTop, contentEl, activatorEl })\n\n IN_BROWSER && watch(isActive, val => {\n if (val) {\n window.addEventListener('keydown', onKeydown)\n } else {\n window.removeEventListener('keydown', onKeydown)\n }\n }, { immediate: true })\n\n onBeforeUnmount(() => {\n if (!IN_BROWSER) return\n\n window.removeEventListener('keydown', onKeydown)\n })\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key === 'Escape' && globalTop.value) {\n if (!contentEl.value?.contains(document.activeElement)) {\n emit('keydown', e)\n }\n if (!props.persistent) {\n isActive.value = false\n if (contentEl.value?.contains(document.activeElement)) {\n activatorEl.value?.focus()\n }\n } else animateClick()\n }\n }\n function onKeydownSelf (e: KeyboardEvent) {\n if (e.key === 'Escape' && !globalTop.value) return\n\n emit('keydown', e)\n }\n\n const router = useRouter()\n useToggleScope(() => props.closeOnBack, () => {\n useBackButton(router, next => {\n if (globalTop.value && isActive.value) {\n next(false)\n if (!props.persistent) isActive.value = false\n else animateClick()\n } else {\n next()\n }\n })\n })\n\n const top = ref()\n watch(() => isActive.value && (props.absolute || props.contained) && teleportTarget.value == null, val => {\n if (val) {\n const scrollParent = getScrollParent(root.value)\n if (scrollParent && scrollParent !== document.scrollingElement) {\n top.value = scrollParent.scrollTop\n }\n }\n })\n\n // Add a quick \"bounce\" animation to the content\n function animateClick () {\n if (props.noClickAnimation) return\n\n contentEl.value && animate(contentEl.value, [\n { transformOrigin: 'center' },\n { transform: 'scale(1.03)' },\n { transformOrigin: 'center' },\n ], {\n duration: 150,\n easing: standardEasing,\n })\n }\n\n function onAfterEnter () {\n emit('afterEnter')\n }\n\n function onAfterLeave () {\n _onAfterLeave()\n emit('afterLeave')\n }\n\n useRender(() => (\n <>\n { slots.activator?.({\n isActive: isActive.value,\n targetRef,\n props: mergeProps({\n ref: activatorRef,\n }, activatorEvents.value, props.activatorProps),\n })}\n\n { isMounted.value && hasContent.value && (\n \n \n \n \n [activatorEl.value] }}\n class={[\n 'v-overlay__content',\n props.contentClass,\n ]}\n style={[\n dimensionStyles.value,\n contentStyles.value,\n ]}\n { ...contentEvents.value }\n { ...props.contentProps }\n >\n { slots.default?.({ isActive }) }\n \n \n \n \n )}\n \n ))\n\n return {\n activatorEl,\n scrimEl,\n target,\n animateClick,\n contentEl,\n rootEl: root,\n globalTop,\n localTop,\n updateLocation,\n }\n },\n})\n\nexport type VOverlay = InstanceType\n", "// Types\nimport type { ParsedAnchor } from '@/util'\nimport type { Box } from '@/util/box'\n\ntype Point = { x: number, y: number }\ndeclare class As {\n private as: T\n}\ntype ElementPoint = Point & As<'element'>\ntype ViewportPoint = Point & As<'viewport'>\ntype Offset = Point & As<'offset'>\n\n/** Convert a point in local space to viewport space */\nexport function elementToViewport (point: ElementPoint, offset: Offset | Box) {\n return {\n x: point.x + offset.x,\n y: point.y + offset.y,\n } as ViewportPoint\n}\n\n/** Convert a point in viewport space to local space */\nexport function viewportToElement (point: ViewportPoint, offset: Offset | Box) {\n return {\n x: point.x - offset.x,\n y: point.y - offset.y,\n } as ElementPoint\n}\n\n/** Get the difference between two points */\nexport function getOffset (a: T, b: T) {\n return {\n x: a.x - b.x,\n y: a.y - b.y,\n } as Offset\n}\n\n/** Convert an anchor object to a point in local space */\nexport function anchorToPoint (anchor: ParsedAnchor, box: Box): ViewportPoint {\n if (anchor.side === 'top' || anchor.side === 'bottom') {\n const { side, align } = anchor\n\n const x: number =\n align === 'left' ? 0\n : align === 'center' ? box.width / 2\n : align === 'right' ? box.width\n : align\n const y: number =\n side === 'top' ? 0\n : side === 'bottom' ? box.height\n : side\n\n return elementToViewport({ x, y } as ElementPoint, box)\n } else if (anchor.side === 'left' || anchor.side === 'right') {\n const { side, align } = anchor\n\n const x: number =\n side === 'left' ? 0\n : side === 'right' ? box.width\n : side\n const y: number =\n align === 'top' ? 0\n : align === 'center' ? box.height / 2\n : align === 'bottom' ? box.height\n : align\n\n return elementToViewport({ x, y } as ElementPoint, box)\n }\n\n return elementToViewport({\n x: box.width / 2,\n y: box.height / 2,\n } as ElementPoint, box)\n}\n", "// Composables\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Utilities\nimport { computed, nextTick, onScopeDispose, ref, watch } from 'vue'\nimport { anchorToPoint, getOffset } from './util/point'\nimport {\n CircularBuffer,\n clamp,\n consoleError,\n convertToUnit,\n deepEqual,\n destructComputed,\n flipAlign,\n flipCorner,\n flipSide,\n getAxis,\n getScrollParents,\n IN_BROWSER,\n isFixedPosition,\n nullifyTransforms,\n parseAnchor,\n propsFactory,\n} from '@/util'\nimport { Box, getElementBox, getOverflow, getTargetBox } from '@/util/box'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { Anchor } from '@/util'\n\nexport interface LocationStrategyData {\n contentEl: Ref\n target: Ref\n isActive: Ref\n isRtl: Ref\n}\n\nexport type LocationStrategyFunction = (\n data: LocationStrategyData,\n props: StrategyProps,\n contentStyles: Ref>\n) => undefined | { updateLocation: (e?: Event) => void }\n\nconst locationStrategies = {\n static: staticLocationStrategy, // specific viewport position, usually centered\n connected: connectedLocationStrategy, // connected to a certain element\n}\n\nexport interface StrategyProps {\n locationStrategy: keyof typeof locationStrategies | LocationStrategyFunction\n location: Anchor\n origin: Anchor | 'auto' | 'overlap'\n offset?: number | string | number[]\n stickToTarget?: boolean\n viewportMargin?: number | string\n maxHeight?: number | string\n maxWidth?: number | string\n minHeight?: number | string\n minWidth?: number | string\n}\n\nexport const makeLocationStrategyProps = propsFactory({\n locationStrategy: {\n type: [String, Function] as PropType,\n default: 'static',\n validator: (val: any) => typeof val === 'function' || val in locationStrategies,\n },\n location: {\n type: String as PropType,\n default: 'bottom',\n },\n origin: {\n type: String as PropType,\n default: 'auto',\n },\n offset: [Number, String, Array] as PropType,\n stickToTarget: Boolean,\n viewportMargin: {\n type: [Number, String],\n default: 12,\n },\n}, 'VOverlay-location-strategies')\n\nexport function useLocationStrategies (\n props: StrategyProps,\n data: LocationStrategyData\n) {\n const contentStyles = ref({})\n const updateLocation = ref<(e: Event) => void>()\n\n if (IN_BROWSER) {\n useToggleScope(() => !!(data.isActive.value && props.locationStrategy), reset => {\n watch(() => props.locationStrategy, reset)\n onScopeDispose(() => {\n window.removeEventListener('resize', onResize)\n visualViewport?.removeEventListener('resize', onVisualResize)\n visualViewport?.removeEventListener('scroll', onVisualScroll)\n updateLocation.value = undefined\n })\n\n window.addEventListener('resize', onResize, { passive: true })\n visualViewport?.addEventListener('resize', onVisualResize, { passive: true })\n visualViewport?.addEventListener('scroll', onVisualScroll, { passive: true })\n\n if (typeof props.locationStrategy === 'function') {\n updateLocation.value = props.locationStrategy(data, props, contentStyles)?.updateLocation\n } else {\n updateLocation.value = locationStrategies[props.locationStrategy](data, props, contentStyles)?.updateLocation\n }\n })\n }\n\n function onResize (e: Event) {\n updateLocation.value?.(e)\n }\n\n function onVisualResize (e: Event) {\n updateLocation.value?.(e)\n }\n\n function onVisualScroll (e: Event) {\n updateLocation.value?.(e)\n }\n\n return {\n contentStyles,\n updateLocation,\n }\n}\n\nfunction staticLocationStrategy () {\n // TODO\n}\n\n/** Get size of element ignoring max-width/max-height */\nfunction getIntrinsicSize (el: HTMLElement, isRtl: boolean) {\n // const scrollables = new Map()\n // el.querySelectorAll('*').forEach(el => {\n // const x = el.scrollLeft\n // const y = el.scrollTop\n // if (x || y) {\n // scrollables.set(el, [x, y])\n // }\n // })\n\n // const initialMaxWidth = el.style.maxWidth\n // const initialMaxHeight = el.style.maxHeight\n // el.style.removeProperty('max-width')\n // el.style.removeProperty('max-height')\n\n /* eslint-disable-next-line sonarjs/prefer-immediate-return */\n const contentBox = nullifyTransforms(el)\n\n if (isRtl) {\n contentBox.x += parseFloat(el.style.right || 0)\n } else {\n contentBox.x -= parseFloat(el.style.left || 0)\n }\n contentBox.y -= parseFloat(el.style.top || 0)\n\n // el.style.maxWidth = initialMaxWidth\n // el.style.maxHeight = initialMaxHeight\n // scrollables.forEach((position, el) => {\n // el.scrollTo(...position)\n // })\n\n return contentBox\n}\n\nfunction connectedLocationStrategy (data: LocationStrategyData, props: StrategyProps, contentStyles: Ref>) {\n const activatorFixed = Array.isArray(data.target.value) || isFixedPosition(data.target.value)\n if (activatorFixed) {\n Object.assign(contentStyles.value, {\n position: 'fixed',\n top: 0,\n [data.isRtl.value ? 'right' : 'left']: 0,\n })\n }\n\n const { preferredAnchor, preferredOrigin } = destructComputed(() => {\n const parsedAnchor = parseAnchor(props.location, data.isRtl.value)\n const parsedOrigin =\n props.origin === 'overlap' ? parsedAnchor\n : props.origin === 'auto' ? flipSide(parsedAnchor)\n : parseAnchor(props.origin, data.isRtl.value)\n\n // Some combinations of props may produce an invalid origin\n if (parsedAnchor.side === parsedOrigin.side && parsedAnchor.align === flipAlign(parsedOrigin).align) {\n return {\n preferredAnchor: flipCorner(parsedAnchor),\n preferredOrigin: flipCorner(parsedOrigin),\n }\n } else {\n return {\n preferredAnchor: parsedAnchor,\n preferredOrigin: parsedOrigin,\n }\n }\n })\n\n const [minWidth, minHeight, maxWidth, maxHeight] =\n (['minWidth', 'minHeight', 'maxWidth', 'maxHeight'] as const).map(key => {\n return computed(() => {\n const val = parseFloat(props[key]!)\n return isNaN(val) ? Infinity : val\n })\n })\n\n const offset = computed(() => {\n if (Array.isArray(props.offset)) {\n return props.offset\n }\n if (typeof props.offset === 'string') {\n const offset = props.offset.split(' ').map(parseFloat)\n if (offset.length < 2) offset.push(0)\n return offset\n }\n return typeof props.offset === 'number' ? [props.offset, 0] : [0, 0]\n })\n\n let observe = false\n let lastFrame = -1\n const flipped = new CircularBuffer<{ x: boolean, y: boolean }>(4)\n const observer = new ResizeObserver(() => {\n if (!observe) return\n\n // Detect consecutive frames\n requestAnimationFrame(newTime => {\n if (newTime !== lastFrame) flipped.clear()\n requestAnimationFrame(newNewTime => {\n lastFrame = newNewTime\n })\n })\n\n if (flipped.isFull) {\n const values = flipped.values()\n if (\n deepEqual(values.at(-1), values.at(-3)) &&\n !deepEqual(values.at(-1), values.at(-2))\n ) {\n // Flipping is causing a container resize loop\n return\n }\n }\n\n const result = updateLocation()\n if (result) flipped.push(result.flipped)\n })\n\n let targetBox = new Box({ x: 0, y: 0, width: 0, height: 0 })\n\n watch(data.target, (newTarget, oldTarget) => {\n if (oldTarget && !Array.isArray(oldTarget)) observer.unobserve(oldTarget)\n if (!Array.isArray(newTarget)) {\n if (newTarget) observer.observe(newTarget)\n } else if (!deepEqual(newTarget, oldTarget)) {\n updateLocation()\n }\n }, { immediate: true })\n\n watch(data.contentEl, (newContentEl, oldContentEl) => {\n if (oldContentEl) observer.unobserve(oldContentEl)\n if (newContentEl) observer.observe(newContentEl)\n }, { immediate: true })\n\n onScopeDispose(() => {\n observer.disconnect()\n })\n\n // eslint-disable-next-line max-statements\n function updateLocation () {\n observe = false\n requestAnimationFrame(() => observe = true)\n\n if (!data.target.value || !data.contentEl.value) return\n\n if (\n Array.isArray(data.target.value) ||\n data.target.value.offsetParent ||\n data.target.value.getClientRects().length\n ) {\n targetBox = getTargetBox(data.target.value)\n } // Otherwise target element is hidden, use last known value\n\n const contentBox = getIntrinsicSize(data.contentEl.value, data.isRtl.value)\n const scrollParents = getScrollParents(data.contentEl.value)\n const viewportMargin = Number(props.viewportMargin)\n\n if (!scrollParents.length) {\n scrollParents.push(document.documentElement)\n if (!(data.contentEl.value.style.top && data.contentEl.value.style.left)) {\n contentBox.x -= parseFloat(document.documentElement.style.getPropertyValue('--v-body-scroll-x') || 0)\n contentBox.y -= parseFloat(document.documentElement.style.getPropertyValue('--v-body-scroll-y') || 0)\n }\n }\n\n const viewport = scrollParents.reduce((box: Box | undefined, el) => {\n const scrollBox = getElementBox(el)\n\n if (box) {\n return new Box({\n x: Math.max(box.left, scrollBox.left),\n y: Math.max(box.top, scrollBox.top),\n width: Math.min(box.right, scrollBox.right) - Math.max(box.left, scrollBox.left),\n height: Math.min(box.bottom, scrollBox.bottom) - Math.max(box.top, scrollBox.top),\n })\n }\n return scrollBox\n }, undefined!)\n\n if (props.stickToTarget) {\n viewport.x += Math.min(viewportMargin, targetBox.x)\n viewport.y += Math.min(viewportMargin, targetBox.y)\n viewport.width = Math.max(\n viewport.width - viewportMargin * 2,\n targetBox.x + targetBox.width - viewportMargin\n )\n viewport.height = Math.max(\n viewport.height - viewportMargin * 2,\n targetBox.y + targetBox.height - viewportMargin\n )\n } else {\n viewport.x += viewportMargin\n viewport.y += viewportMargin\n viewport.width -= viewportMargin * 2\n viewport.height -= viewportMargin * 2\n }\n\n let placement = {\n anchor: preferredAnchor.value,\n origin: preferredOrigin.value,\n }\n\n function checkOverflow (_placement: typeof placement) {\n const box = new Box(contentBox)\n const targetPoint = anchorToPoint(_placement.anchor, targetBox)\n const contentPoint = anchorToPoint(_placement.origin, box)\n\n let { x, y } = getOffset(targetPoint, contentPoint)\n\n switch (_placement.anchor.side) {\n case 'top': y -= offset.value[0]; break\n case 'bottom': y += offset.value[0]; break\n case 'left': x -= offset.value[0]; break\n case 'right': x += offset.value[0]; break\n }\n\n switch (_placement.anchor.align) {\n case 'top': y -= offset.value[1]; break\n case 'bottom': y += offset.value[1]; break\n case 'left': x -= offset.value[1]; break\n case 'right': x += offset.value[1]; break\n }\n\n box.x += x\n box.y += y\n\n box.width = Math.min(box.width, maxWidth.value)\n box.height = Math.min(box.height, maxHeight.value)\n\n const overflows = getOverflow(box, viewport)\n\n return { overflows, x, y }\n }\n\n let x = 0; let y = 0\n const available = { x: 0, y: 0 }\n const flipped = { x: false, y: false }\n let resets = -1\n while (true) {\n if (resets++ > 10) {\n consoleError('Infinite loop detected in connectedLocationStrategy')\n break\n }\n\n const { x: _x, y: _y, overflows } = checkOverflow(placement)\n\n x += _x\n y += _y\n\n contentBox.x += _x\n contentBox.y += _y\n\n // flip\n {\n const axis = getAxis(placement.anchor)\n const hasOverflowX = overflows.x.before || overflows.x.after\n const hasOverflowY = overflows.y.before || overflows.y.after\n\n let reset = false\n ;['x', 'y'].forEach(key => {\n if (\n (key === 'x' && hasOverflowX && !flipped.x) ||\n (key === 'y' && hasOverflowY && !flipped.y)\n ) {\n const newPlacement = { anchor: { ...placement.anchor }, origin: { ...placement.origin } }\n const flip = key === 'x'\n ? axis === 'y' ? flipAlign : flipSide\n : axis === 'y' ? flipSide : flipAlign\n newPlacement.anchor = flip(newPlacement.anchor)\n newPlacement.origin = flip(newPlacement.origin)\n const { overflows: newOverflows } = checkOverflow(newPlacement)\n if (\n (newOverflows[key].before <= overflows[key].before &&\n newOverflows[key].after <= overflows[key].after) ||\n (newOverflows[key].before + newOverflows[key].after <\n (overflows[key].before + overflows[key].after) / 2)\n ) {\n placement = newPlacement\n reset = flipped[key] = true\n }\n }\n })\n if (reset) continue\n }\n\n // shift\n if (overflows.x.before) {\n x += overflows.x.before\n contentBox.x += overflows.x.before\n }\n if (overflows.x.after) {\n x -= overflows.x.after\n contentBox.x -= overflows.x.after\n }\n if (overflows.y.before) {\n y += overflows.y.before\n contentBox.y += overflows.y.before\n }\n if (overflows.y.after) {\n y -= overflows.y.after\n contentBox.y -= overflows.y.after\n }\n\n // size\n {\n const overflows = getOverflow(contentBox, viewport)\n available.x = viewport.width - overflows.x.before - overflows.x.after\n available.y = viewport.height - overflows.y.before - overflows.y.after\n\n x += overflows.x.before\n contentBox.x += overflows.x.before\n y += overflows.y.before\n contentBox.y += overflows.y.before\n }\n\n break\n }\n\n const axis = getAxis(placement.anchor)\n\n Object.assign(contentStyles.value, {\n '--v-overlay-anchor-origin': `${placement.anchor.side} ${placement.anchor.align}`,\n transformOrigin: `${placement.origin.side} ${placement.origin.align}`,\n // transform: `translate(${pixelRound(x)}px, ${pixelRound(y)}px)`,\n top: convertToUnit(pixelRound(y)),\n left: data.isRtl.value ? undefined : convertToUnit(pixelRound(x)),\n right: data.isRtl.value ? convertToUnit(pixelRound(-x)) : undefined,\n minWidth: convertToUnit(axis === 'y' ? Math.min(minWidth.value, targetBox.width) : minWidth.value),\n maxWidth: convertToUnit(pixelCeil(clamp(available.x, minWidth.value === Infinity ? 0 : minWidth.value, maxWidth.value))),\n maxHeight: convertToUnit(pixelCeil(clamp(available.y, minHeight.value === Infinity ? 0 : minHeight.value, maxHeight.value))),\n })\n\n return {\n available,\n contentBox,\n flipped,\n }\n }\n\n watch(\n () => [\n preferredAnchor.value,\n preferredOrigin.value,\n props.offset,\n props.minWidth,\n props.minHeight,\n props.maxWidth,\n props.maxHeight,\n ],\n () => updateLocation(),\n )\n\n nextTick(() => {\n const result = updateLocation()\n\n // TODO: overflowing content should only require a single updateLocation call\n // Icky hack to make sure the content is positioned consistently\n if (!result) return\n const { available, contentBox } = result\n if (contentBox.height > available.y) {\n requestAnimationFrame(() => {\n updateLocation()\n requestAnimationFrame(() => {\n updateLocation()\n })\n })\n }\n })\n\n return { updateLocation }\n}\n\nfunction pixelRound (val: number) {\n return Math.round(val * devicePixelRatio) / devicePixelRatio\n}\n\nfunction pixelCeil (val: number) {\n return Math.ceil(val * devicePixelRatio) / devicePixelRatio\n}\n", "let clean = true\nconst frames = [] as any[]\n\n/**\n * Schedule a task to run in an animation frame on its own\n * This is useful for heavy tasks that may cause jank if all ran together\n */\nexport function requestNewFrame (cb: () => void) {\n if (!clean || frames.length) {\n frames.push(cb)\n run()\n } else {\n clean = false\n cb()\n run()\n }\n}\n\nlet raf = -1\nfunction run () {\n cancelAnimationFrame(raf)\n raf = requestAnimationFrame(() => {\n const frame = frames.shift()\n if (frame) frame()\n\n if (frames.length) run()\n else clean = true\n })\n}\n", "// Utilities\nimport { effectScope, onScopeDispose, watchEffect } from 'vue'\nimport { requestNewFrame } from './requestNewFrame'\nimport { convertToUnit, getScrollParents, hasScrollbar, IN_BROWSER, propsFactory } from '@/util'\n\n// Types\nimport type { EffectScope, PropType, Ref } from 'vue'\n\nexport interface ScrollStrategyData {\n root: Ref\n contentEl: Ref\n targetEl: Ref\n target: Ref\n isActive: Ref\n updateLocation: Ref<((e: Event) => void) | undefined>\n}\n\nexport type ScrollStrategyFunction = (data: ScrollStrategyData, props: StrategyProps, scope: EffectScope) => void\n\nconst scrollStrategies = {\n none: null,\n close: closeScrollStrategy,\n block: blockScrollStrategy,\n reposition: repositionScrollStrategy,\n}\n\nexport interface StrategyProps {\n scrollStrategy: keyof typeof scrollStrategies | ScrollStrategyFunction\n contained: boolean | undefined\n}\n\nexport const makeScrollStrategyProps = propsFactory({\n scrollStrategy: {\n type: [String, Function] as PropType,\n default: 'block',\n validator: (val: any) => typeof val === 'function' || val in scrollStrategies,\n },\n}, 'VOverlay-scroll-strategies')\n\nexport function useScrollStrategies (\n props: StrategyProps,\n data: ScrollStrategyData\n) {\n if (!IN_BROWSER) return\n\n let scope: EffectScope | undefined\n watchEffect(async () => {\n scope?.stop()\n\n if (!(data.isActive.value && props.scrollStrategy)) return\n\n scope = effectScope()\n await new Promise(resolve => setTimeout(resolve))\n scope.active && scope.run(() => {\n if (typeof props.scrollStrategy === 'function') {\n props.scrollStrategy(data, props, scope!)\n } else {\n scrollStrategies[props.scrollStrategy]?.(data, props, scope!)\n }\n })\n })\n\n onScopeDispose(() => {\n scope?.stop()\n })\n}\n\nfunction closeScrollStrategy (data: ScrollStrategyData) {\n function onScroll (e: Event) {\n data.isActive.value = false\n }\n\n bindScroll(getTargetEl(data.target.value, data.contentEl.value), onScroll)\n}\n\nfunction blockScrollStrategy (data: ScrollStrategyData, props: StrategyProps) {\n const offsetParent = data.root.value?.offsetParent\n const target = getTargetEl(data.target.value, data.contentEl.value)\n const scrollElements = [...new Set([\n ...getScrollParents(target, props.contained ? offsetParent : undefined),\n ...getScrollParents(data.contentEl.value, props.contained ? offsetParent : undefined),\n ])].filter(el => !el.classList.contains('v-overlay-scroll-blocked'))\n const scrollbarWidth = window.innerWidth - document.documentElement.offsetWidth\n\n const scrollableParent = (el => hasScrollbar(el) && el)(offsetParent || document.documentElement)\n if (scrollableParent) {\n data.root.value!.classList.add('v-overlay--scroll-blocked')\n }\n\n scrollElements.forEach((el, i) => {\n el.style.setProperty('--v-body-scroll-x', convertToUnit(-el.scrollLeft))\n el.style.setProperty('--v-body-scroll-y', convertToUnit(-el.scrollTop))\n\n if (el !== document.documentElement) {\n el.style.setProperty('--v-scrollbar-offset', convertToUnit(scrollbarWidth))\n }\n\n el.classList.add('v-overlay-scroll-blocked')\n })\n\n onScopeDispose(() => {\n scrollElements.forEach((el, i) => {\n const x = parseFloat(el.style.getPropertyValue('--v-body-scroll-x'))\n const y = parseFloat(el.style.getPropertyValue('--v-body-scroll-y'))\n\n const scrollBehavior = el.style.scrollBehavior\n\n el.style.scrollBehavior = 'auto'\n el.style.removeProperty('--v-body-scroll-x')\n el.style.removeProperty('--v-body-scroll-y')\n el.style.removeProperty('--v-scrollbar-offset')\n el.classList.remove('v-overlay-scroll-blocked')\n\n el.scrollLeft = -x\n el.scrollTop = -y\n\n el.style.scrollBehavior = scrollBehavior\n })\n if (scrollableParent) {\n data.root.value!.classList.remove('v-overlay--scroll-blocked')\n }\n })\n}\n\nfunction repositionScrollStrategy (data: ScrollStrategyData, props: StrategyProps, scope: EffectScope) {\n let slow = false\n let raf = -1\n let ric = -1\n\n function update (e: Event) {\n requestNewFrame(() => {\n const start = performance.now()\n data.updateLocation.value?.(e)\n const time = performance.now() - start\n slow = time / (1000 / 60) > 2\n })\n }\n\n ric = (typeof requestIdleCallback === 'undefined' ? (cb: Function) => cb() : requestIdleCallback)(() => {\n scope.run(() => {\n bindScroll(getTargetEl(data.target.value, data.contentEl.value), e => {\n if (slow) {\n // If the position calculation is slow,\n // defer updates until scrolling is finished.\n // Browsers usually fire one scroll event per frame so\n // we just wait until we've got two frames without an event\n cancelAnimationFrame(raf)\n raf = requestAnimationFrame(() => {\n raf = requestAnimationFrame(() => {\n update(e)\n })\n })\n } else {\n update(e)\n }\n })\n })\n })\n\n onScopeDispose(() => {\n typeof cancelIdleCallback !== 'undefined' && cancelIdleCallback(ric)\n cancelAnimationFrame(raf)\n })\n}\n\nfunction getTargetEl (\n target: HTMLElement | [x: number, y: number] | undefined,\n contentEl: HTMLElement | undefined,\n) {\n return Array.isArray(target)\n ? document.elementsFromPoint(...target).find(el => !contentEl?.contains(el))\n : target ?? contentEl\n}\n\nfunction bindScroll (el: Element | undefined, onScroll: (e: Event) => void) {\n const scrollElements = [document, ...getScrollParents(el)]\n scrollElements.forEach(el => {\n el.addEventListener('scroll', onScroll, { passive: true })\n })\n\n onScopeDispose(() => {\n scrollElements.forEach(el => {\n el.removeEventListener('scroll', onScroll)\n })\n })\n}\n", "// Types\nimport type { InjectionKey } from 'vue'\n\ninterface MenuProvide {\n register (): void\n unregister (): void\n closeParents (e?: MouseEvent): void\n}\n\nexport const VMenuSymbol: InjectionKey = Symbol.for('vuetify:v-menu')\n", "// Components\nimport { VMenuSymbol } from '@/components/VMenu/shared'\n\n// Composables\nimport { makeDelayProps, useDelay } from '@/composables/delay'\n\n// Utilities\nimport {\n computed,\n effectScope,\n inject,\n mergeProps,\n nextTick,\n onScopeDispose,\n ref,\n watch,\n watchEffect,\n} from 'vue'\nimport {\n bindProps,\n getCurrentInstance,\n IN_BROWSER,\n matchesSelector,\n propsFactory,\n templateRef,\n unbindProps,\n} from '@/util'\n\n// Types\nimport type {\n ComponentInternalInstance,\n ComponentPublicInstance,\n EffectScope,\n PropType,\n Ref,\n} from 'vue'\nimport type { DelayProps } from '@/composables/delay'\n\ninterface ActivatorProps extends DelayProps {\n target: 'parent' | 'cursor' | (string & {}) | Element | ComponentPublicInstance | [x: number, y: number] | undefined\n activator: 'parent' | (string & {}) | Element | ComponentPublicInstance | undefined\n activatorProps: Record\n\n openOnClick: boolean | undefined\n openOnHover: boolean\n openOnFocus: boolean | undefined\n\n closeOnContentClick: boolean\n}\n\nexport const makeActivatorProps = propsFactory({\n target: [String, Object] as PropType,\n activator: [String, Object] as PropType,\n activatorProps: {\n type: Object as PropType,\n default: () => ({}),\n },\n\n openOnClick: {\n type: Boolean,\n default: undefined,\n },\n openOnHover: Boolean,\n openOnFocus: {\n type: Boolean,\n default: undefined,\n },\n\n closeOnContentClick: Boolean,\n\n ...makeDelayProps(),\n}, 'VOverlay-activator')\n\nexport function useActivator (\n props: ActivatorProps,\n { isActive, isTop, contentEl }: {\n isActive: Ref\n isTop: Ref\n contentEl: Ref\n }\n) {\n const vm = getCurrentInstance('useActivator')\n const activatorEl = ref()\n\n let isHovered = false\n let isFocused = false\n let firstEnter = true\n\n const openOnFocus = computed(() => props.openOnFocus || (props.openOnFocus == null && props.openOnHover))\n const openOnClick = computed(() => props.openOnClick || (props.openOnClick == null && !props.openOnHover && !openOnFocus.value))\n\n const { runOpenDelay, runCloseDelay } = useDelay(props, value => {\n if (\n value === (\n (props.openOnHover && isHovered) ||\n (openOnFocus.value && isFocused)\n ) && !(props.openOnHover && isActive.value && !isTop.value)\n ) {\n if (isActive.value !== value) {\n firstEnter = true\n }\n isActive.value = value\n }\n })\n\n const cursorTarget = ref<[x: number, y: number]>()\n const availableEvents = {\n onClick: (e: MouseEvent) => {\n e.stopPropagation()\n activatorEl.value = (e.currentTarget || e.target) as HTMLElement\n if (!isActive.value) {\n cursorTarget.value = [e.clientX, e.clientY]\n }\n isActive.value = !isActive.value\n },\n onMouseenter: (e: MouseEvent) => {\n isHovered = true\n activatorEl.value = (e.currentTarget || e.target) as HTMLElement\n runOpenDelay()\n },\n onMouseleave: (e: MouseEvent) => {\n isHovered = false\n runCloseDelay()\n },\n onFocus: (e: FocusEvent) => {\n if (matchesSelector(e.target as HTMLElement, ':focus-visible') === false) return\n\n isFocused = true\n e.stopPropagation()\n activatorEl.value = (e.currentTarget || e.target) as HTMLElement\n\n runOpenDelay()\n },\n onBlur: (e: FocusEvent) => {\n isFocused = false\n e.stopPropagation()\n\n runCloseDelay({ minDelay: 1 })\n },\n }\n\n const activatorEvents = computed(() => {\n const events: Partial = {}\n\n if (openOnClick.value) {\n events.onClick = availableEvents.onClick\n }\n if (props.openOnHover) {\n events.onMouseenter = availableEvents.onMouseenter\n events.onMouseleave = availableEvents.onMouseleave\n }\n if (openOnFocus.value) {\n events.onFocus = availableEvents.onFocus\n events.onBlur = availableEvents.onBlur\n }\n\n return events\n })\n\n const contentEvents = computed(() => {\n const events: Record = {}\n\n if (props.openOnHover) {\n events.onMouseenter = () => {\n isHovered = true\n runOpenDelay()\n }\n events.onMouseleave = () => {\n isHovered = false\n runCloseDelay()\n }\n }\n\n if (openOnFocus.value) {\n events.onFocusin = (e: Event) => {\n if (!(e.target as HTMLElement).matches(':focus-visible')) return\n isFocused = true\n runOpenDelay()\n }\n events.onFocusout = () => {\n isFocused = false\n runCloseDelay({ minDelay: 1 })\n }\n }\n\n if (props.closeOnContentClick) {\n const menu = inject(VMenuSymbol, null)\n events.onClick = () => {\n isActive.value = false\n menu?.closeParents()\n }\n }\n\n return events\n })\n\n const scrimEvents = computed(() => {\n const events: Record = {}\n\n if (props.openOnHover) {\n events.onMouseenter = () => {\n if (firstEnter) {\n isHovered = true\n firstEnter = false\n runOpenDelay()\n }\n }\n events.onMouseleave = () => {\n isHovered = false\n runCloseDelay()\n }\n }\n\n return events\n })\n\n watch(isTop, val => {\n if (val && (\n (props.openOnHover && !isHovered && (!openOnFocus.value || !isFocused)) ||\n (openOnFocus.value && !isFocused && (!props.openOnHover || !isHovered))\n ) && !contentEl.value?.contains(document.activeElement)) {\n isActive.value = false\n }\n })\n\n watch(isActive, val => {\n if (!val) {\n setTimeout(() => {\n cursorTarget.value = undefined\n })\n }\n }, { flush: 'post' })\n\n const activatorRef = templateRef()\n watchEffect(() => {\n if (!activatorRef.value) return\n\n nextTick(() => {\n activatorEl.value = activatorRef.el\n })\n })\n\n const targetRef = templateRef()\n const target = computed(() => {\n if (props.target === 'cursor' && cursorTarget.value) return cursorTarget.value\n if (targetRef.value) return targetRef.el\n return getTarget(props.target, vm) || activatorEl.value\n })\n const targetEl = computed(() => {\n return Array.isArray(target.value)\n ? undefined\n : target.value\n })\n\n let scope: EffectScope\n watch(() => !!props.activator, val => {\n if (val && IN_BROWSER) {\n scope = effectScope()\n scope.run(() => {\n _useActivator(props, vm, { activatorEl, activatorEvents })\n })\n } else if (scope) {\n scope.stop()\n }\n }, { flush: 'post', immediate: true })\n\n onScopeDispose(() => {\n scope?.stop()\n })\n\n return { activatorEl, activatorRef, target, targetEl, targetRef, activatorEvents, contentEvents, scrimEvents }\n}\n\nfunction _useActivator (\n props: ActivatorProps,\n vm: ComponentInternalInstance,\n { activatorEl, activatorEvents }: Pick, 'activatorEl' | 'activatorEvents'>\n) {\n watch(() => props.activator, (val, oldVal) => {\n if (oldVal && val !== oldVal) {\n const activator = getActivator(oldVal)\n activator && unbindActivatorProps(activator)\n }\n if (val) {\n nextTick(() => bindActivatorProps())\n }\n }, { immediate: true })\n\n watch(() => props.activatorProps, () => {\n bindActivatorProps()\n })\n\n onScopeDispose(() => {\n unbindActivatorProps()\n })\n\n function bindActivatorProps (el = getActivator(), _props = props.activatorProps) {\n if (!el) return\n\n bindProps(el, mergeProps(activatorEvents.value, _props))\n }\n\n function unbindActivatorProps (el = getActivator(), _props = props.activatorProps) {\n if (!el) return\n\n unbindProps(el, mergeProps(activatorEvents.value, _props))\n }\n\n function getActivator (selector = props.activator): HTMLElement | undefined {\n const activator = getTarget(selector, vm)\n\n // The activator should only be a valid element (Ignore comments and text nodes)\n activatorEl.value = activator?.nodeType === Node.ELEMENT_NODE ? activator : undefined\n\n return activatorEl.value\n }\n}\n\nfunction getTarget (\n selector: T,\n vm: ComponentInternalInstance\n): HTMLElement | undefined | (T extends any[] ? [x: number, y: number] : never) {\n if (!selector) return\n\n let target\n if (selector === 'parent') {\n let el = vm?.proxy?.$el?.parentNode\n while (el?.hasAttribute('data-no-activator')) {\n el = el.parentNode\n }\n target = el\n } else if (typeof selector === 'string') {\n // Selector\n target = document.querySelector(selector)\n } else if ('$el' in selector) {\n // Component (ref)\n target = selector.$el\n } else {\n // HTMLElement | Element | [x, y]\n target = selector\n }\n\n return target\n}\n", "// Composables\nimport { useDisplay } from '@/composables/display'\n\n// Utilities\nimport { onMounted, shallowRef } from 'vue'\nimport { IN_BROWSER } from '@/util'\n\nexport function useHydration () {\n if (!IN_BROWSER) return shallowRef(false)\n\n const { ssr } = useDisplay()\n\n if (ssr) {\n const isMounted = shallowRef(false)\n onMounted(() => {\n isMounted.value = true\n })\n return isMounted\n } else {\n return shallowRef(true)\n }\n}\n", "// Composables\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Utilities\nimport {\n inject,\n onScopeDispose,\n provide,\n reactive,\n readonly,\n shallowRef,\n toRaw,\n toRef,\n toValue,\n watchEffect,\n} from 'vue'\nimport { getCurrentInstance } from '@/util'\n\n// Types\nimport type { InjectionKey, MaybeRefOrGetter, Ref } from 'vue'\n\nconst StackSymbol: InjectionKey = Symbol.for('vuetify:stack')\n\ninterface StackProvide {\n activeChildren: Set\n}\n\nconst globalStack = reactive<[uid: number, zIndex: number][]>([])\n\nexport function useStack (\n isActive: Readonly>,\n zIndex: MaybeRefOrGetter,\n disableGlobalStack: boolean\n) {\n const vm = getCurrentInstance('useStack')\n const createStackEntry = !disableGlobalStack\n\n const parent = inject(StackSymbol, undefined)\n const stack: StackProvide = reactive({\n activeChildren: new Set(),\n })\n provide(StackSymbol, stack)\n\n const _zIndex = shallowRef(Number(toValue(zIndex)))\n useToggleScope(isActive, () => {\n const lastZIndex = globalStack.at(-1)?.[1]\n _zIndex.value = lastZIndex ? lastZIndex + 10 : Number(toValue(zIndex))\n\n if (createStackEntry) {\n globalStack.push([vm.uid, _zIndex.value])\n }\n\n parent?.activeChildren.add(vm.uid)\n\n onScopeDispose(() => {\n if (createStackEntry) {\n const idx = toRaw(globalStack).findIndex(v => v[0] === vm.uid)\n globalStack.splice(idx, 1)\n }\n\n parent?.activeChildren.delete(vm.uid)\n })\n })\n\n const globalTop = shallowRef(true)\n if (createStackEntry) {\n watchEffect(() => {\n const _isTop = globalStack.at(-1)?.[0] === vm.uid\n setTimeout(() => globalTop.value = _isTop)\n })\n }\n\n const localTop = toRef(() => !stack.activeChildren.size)\n\n return {\n globalTop: readonly(globalTop),\n localTop,\n stackStyles: toRef(() => ({ zIndex: _zIndex.value })),\n }\n}\n", "// Utilities\nimport { computed, warn } from 'vue'\nimport { IN_BROWSER } from '@/util'\n\nexport function useTeleport (target: () => (boolean | string | ParentNode)) {\n const teleportTarget = computed(() => {\n const _target = target()\n\n if (_target === true || !IN_BROWSER) return undefined\n\n const targetElement =\n _target === false ? document.body\n : typeof _target === 'string' ? document.querySelector(_target)\n : _target\n\n if (targetElement == null) {\n warn(`Unable to locate target ${_target}`)\n return undefined\n }\n\n let container = [...targetElement.children].find(el => el.matches('.v-overlay-container'))\n\n if (!container) {\n container = document.createElement('div')\n container.className = 'v-overlay-container'\n targetElement.appendChild(container)\n }\n\n return container\n })\n\n return { teleportTarget }\n}\n"], - "mappings": "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", - "names": ["defaultConditional", "checkEvent", "e", "el", "binding", "checkIsActive", "root", "attachedRoot", "ShadowRoot", "host", "target", "elements", "value", "include", "push", "some", "contains", "isActive", "closeConditional", "directive", "handler", "shadowTarget", "_clickOutside", "lastMousedownWasOutside", "setTimeout", "handleShadow", "callback", "document", "ClickOutside", "mounted", "onClick", "onMousedown", "app", "addEventListener", "instance", "$", "uid", "beforeUnmount", "removeEventListener", "elementToViewport", "point", "offset", "x", "y", "getOffset", "a", "b", "x", "y", "anchorToPoint", "anchor", "box", "side", "align", "width", "height", "elementToViewport", "locationStrategies", "static", "staticLocationStrategy", "connected", "connectedLocationStrategy", "makeLocationStrategyProps", "propsFactory", "locationStrategy", "type", "String", "Function", "default", "validator", "val", "location", "origin", "offset", "Number", "Array", "stickToTarget", "Boolean", "viewportMargin", "useLocationStrategies", "props", "data", "contentStyles", "ref", "updateLocation", "IN_BROWSER", "useToggleScope", "isActive", "value", "reset", "watch", "onScopeDispose", "window", "removeEventListener", "onResize", "visualViewport", "onVisualResize", "onVisualScroll", "undefined", "addEventListener", "passive", "e", "getIntrinsicSize", "el", "isRtl", "contentBox", "nullifyTransforms", "x", "parseFloat", "style", "right", "left", "y", "top", "activatorFixed", "isArray", "target", "isFixedPosition", "Object", "assign", "position", "preferredAnchor", "preferredOrigin", "destructComputed", "parsedAnchor", "parseAnchor", "parsedOrigin", "flipSide", "side", "align", "flipAlign", "flipCorner", "minWidth", "minHeight", "maxWidth", "maxHeight", "map", "key", "computed", "isNaN", "Infinity", "split", "length", "push", "observe", "lastFrame", "flipped", "CircularBuffer", "observer", "ResizeObserver", "requestAnimationFrame", "newTime", "clear", "newNewTime", "isFull", "values", "deepEqual", "at", "result", "targetBox", "Box", "width", "height", "newTarget", "oldTarget", "unobserve", "immediate", "contentEl", "newContentEl", "oldContentEl", "disconnect", "offsetParent", "getClientRects", "getTargetBox", "scrollParents", "getScrollParents", "document", "documentElement", "getPropertyValue", "viewport", "reduce", "box", "scrollBox", "getElementBox", "Math", "max", "min", "bottom", "placement", "anchor", "checkOverflow", "_placement", "targetPoint", "anchorToPoint", "contentPoint", "getOffset", "overflows", "getOverflow", "available", "resets", "consoleError", "_x", "_y", "axis", "getAxis", "hasOverflowX", "before", "after", "hasOverflowY", "forEach", "newPlacement", "flip", "newOverflows", "transformOrigin", "convertToUnit", "pixelRound", "pixelCeil", "clamp", "nextTick", "round", "devicePixelRatio", "ceil", "clean", "frames", "requestNewFrame", "cb", "length", "push", "run", "raf", "cancelAnimationFrame", "requestAnimationFrame", "frame", "shift", "scrollStrategies", "none", "close", "closeScrollStrategy", "block", "blockScrollStrategy", "reposition", "repositionScrollStrategy", "makeScrollStrategyProps", "propsFactory", "scrollStrategy", "type", "String", "Function", "default", "validator", "val", "useScrollStrategies", "props", "data", "IN_BROWSER", "scope", "watchEffect", "stop", "isActive", "value", "effectScope", "Promise", "resolve", "setTimeout", "active", "run", "onScopeDispose", "onScroll", "e", "bindScroll", "getTargetEl", "target", "contentEl", "offsetParent", "root", "scrollElements", "Set", "getScrollParents", "contained", "undefined", "filter", "el", "classList", "contains", "scrollbarWidth", "window", "innerWidth", "document", "documentElement", "offsetWidth", "scrollableParent", "hasScrollbar", "add", "forEach", "i", "style", "setProperty", "convertToUnit", "scrollLeft", "scrollTop", "x", "parseFloat", "getPropertyValue", "y", "scrollBehavior", "removeProperty", "remove", "slow", "raf", "ric", "update", "requestNewFrame", "start", "performance", "now", "updateLocation", "time", "requestIdleCallback", "cb", "cancelAnimationFrame", "requestAnimationFrame", "cancelIdleCallback", "Array", "isArray", "elementsFromPoint", "find", "addEventListener", "passive", "removeEventListener", "VMenuSymbol", "Symbol", "for", "makeActivatorProps", "propsFactory", "target", "String", "Object", "activator", "activatorProps", "type", "default", "openOnClick", "Boolean", "undefined", "openOnHover", "openOnFocus", "closeOnContentClick", "makeDelayProps", "useActivator", "props", "_ref", "isActive", "isTop", "contentEl", "vm", "getCurrentInstance", "activatorEl", "ref", "isHovered", "isFocused", "firstEnter", "computed", "value", "runOpenDelay", "runCloseDelay", "useDelay", "cursorTarget", "availableEvents", "onClick", "e", "stopPropagation", "currentTarget", "clientX", "clientY", "onMouseenter", "onMouseleave", "onFocus", "matchesSelector", "onBlur", "minDelay", "activatorEvents", "events", "contentEvents", "onFocusin", "matches", "onFocusout", "menu", "inject", "VMenuSymbol", "closeParents", "scrimEvents", "watch", "val", "contains", "document", "activeElement", "setTimeout", "flush", "activatorRef", "templateRef", "watchEffect", "nextTick", "el", "targetRef", "getTarget", "targetEl", "Array", "isArray", "scope", "IN_BROWSER", "effectScope", "run", "_useActivator", "stop", "immediate", "onScopeDispose", "_ref2", "oldVal", "getActivator", "unbindActivatorProps", "bindActivatorProps", "arguments", "length", "_props", "bindProps", "mergeProps", "unbindProps", "selector", "nodeType", "Node", "ELEMENT_NODE", "proxy", "$el", "parentNode", "hasAttribute", "querySelector", "useHydration", "IN_BROWSER", "shallowRef", "ssr", "useDisplay", "isMounted", "onMounted", "value", "StackSymbol", "Symbol", "for", "globalStack", "reactive", "useStack", "isActive", "zIndex", "disableGlobalStack", "vm", "getCurrentInstance", "createStackEntry", "parent", "inject", "undefined", "stack", "activeChildren", "Set", "provide", "_zIndex", "shallowRef", "Number", "toValue", "useToggleScope", "lastZIndex", "at", "value", "push", "uid", "add", "onScopeDispose", "idx", "toRaw", "findIndex", "v", "splice", "delete", "globalTop", "watchEffect", "_isTop", "setTimeout", "localTop", "toRef", "size", "readonly", "stackStyles", "useTeleport", "target", "teleportTarget", "computed", "_target", "IN_BROWSER", "undefined", "targetElement", "document", "body", "querySelector", "warn", "container", "children", "find", "el", "matches", "createElement", "className", "appendChild", "Scrim", "props", "modelValue", "color", "rest", "_createVNode", "Transition", "default", "_createElementVNode", "_mergeProps", "backgroundColorClasses", "value", "backgroundColorStyles", "makeVOverlayProps", "propsFactory", "absolute", "Boolean", "attach", "String", "Object", "closeOnBack", "type", "contained", "contentClass", "contentProps", "disabled", "opacity", "Number", "noClickAnimation", "persistent", "scrim", "zIndex", "makeActivatorProps", "makeComponentProps", "makeDimensionProps", "makeLazyProps", "makeLocationStrategyProps", "makeScrollStrategyProps", "makeFocusTrapProps", "makeThemeProps", "makeTransitionProps", "VOverlay", "genericComponent", "name", "directives", "vClickOutside", "inheritAttrs", "_disableGlobalStack", "omit", "emits", "e", "keydown", "afterEnter", "afterLeave", "setup", "_ref", "slots", "attrs", "emit", "vm", "getCurrentInstance", "root", "ref", "scrimEl", "contentEl", "model", "useProxiedModel", "isActive", "computed", "get", "set", "v", "themeClasses", "provideTheme", "rtlClasses", "isRtl", "useRtl", "hasContent", "onAfterLeave", "_onAfterLeave", "useLazy", "scrimColor", "useBackgroundColor", "globalTop", "localTop", "stackStyles", "useStack", "activatorEl", "activatorRef", "target", "targetEl", "targetRef", "activatorEvents", "contentEvents", "scrimEvents", "useActivator", "isTop", "teleportTarget", "useTeleport", "rootNode", "getRootNode", "proxy", "$el", "ShadowRoot", "dimensionStyles", "useDimension", "isMounted", "useHydration", "scopeId", "useScopeId", "watch", "contentStyles", "updateLocation", "useLocationStrategies", "useScrollStrategies", "onClickOutside", "animateClick", "closeConditional", "MouseEvent", "shadowTarget", "useFocusTrap", "IN_BROWSER", "val", "window", "addEventListener", "onKeydown", "removeEventListener", "immediate", "onBeforeUnmount", "key", "contains", "document", "activeElement", "focus", "onKeydownSelf", "router", "useRouter", "useToggleScope", "useBackButton", "next", "top", "scrollParent", "getScrollParent", "scrollingElement", "scrollTop", "animate", "transformOrigin", "transform", "duration", "easing", "standardEasing", "onAfterEnter", "useRender", "_Fragment", "activator", "mergeProps", "activatorProps", "Teleport", "class", "convertToUnit", "style", "MaybeTransition", "transition", "_withDirectives", "_vShow", "handler", "include", "rootEl"] -} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6CRS5HI4.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TTIGZHWR.js similarity index 97% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6CRS5HI4.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TTIGZHWR.js index 994e03c..95b7cc1 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6CRS5HI4.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TTIGZHWR.js @@ -1,7 +1,3 @@ -import { - makeRoundedProps, - useRounded -} from "./chunk-AQK3CYVW.js"; import { intersect_default } from "./chunk-5ONGSJQ2.js"; @@ -10,12 +6,16 @@ import { makeTransitionProps } from "./chunk-CAGZXMOS.js"; import { - makeDimensionProps, - useDimension -} from "./chunk-6EZKHCRW.js"; + makeRoundedProps, + useRounded +} from "./chunk-AQK3CYVW.js"; import { useBackgroundColor } from "./chunk-BHV5Z34M.js"; +import { + makeDimensionProps, + useDimension +} from "./chunk-6EZKHCRW.js"; import { SUPPORTS_INTERSECTION, convertToUnit, @@ -45,10 +45,10 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VImg/VImg.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VImg/VImg.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VImg/VImg.css"; // node_modules/vuetify/lib/components/VResponsive/VResponsive.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VResponsive/VResponsive.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VResponsive/VResponsive.css"; function useAspectStyles(props) { return { aspectStyles: computed(() => { @@ -384,4 +384,4 @@ export { makeVImgProps, VImg }; -//# sourceMappingURL=chunk-6CRS5HI4.js.map +//# sourceMappingURL=chunk-TTIGZHWR.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6CRS5HI4.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TTIGZHWR.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-6CRS5HI4.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-TTIGZHWR.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QC7VWQER.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UQALH6SL.js similarity index 96% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QC7VWQER.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UQALH6SL.js index d0a84f3..adc258c 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QC7VWQER.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UQALH6SL.js @@ -1,9 +1,6 @@ import { VBtnToggleSymbol -} from "./chunk-NURQ3473.js"; -import { - VProgressCircular -} from "./chunk-ET5GCC5W.js"; +} from "./chunk-5AQLTWWS.js"; import { makeGroupItemProps, useGroupItem @@ -25,10 +22,13 @@ import { makeElevationProps, useElevation } from "./chunk-YJD2PNP6.js"; +import { + VProgressCircular +} from "./chunk-MH76ZJYE.js"; import { makeLoaderProps, useLoader -} from "./chunk-U2DSRSME.js"; +} from "./chunk-UXZ55AO7.js"; import { makeLocationProps, useLocation @@ -39,35 +39,35 @@ import { } from "./chunk-TM3MIDYC.js"; import { VIcon -} from "./chunk-CMZ4UYUX.js"; +} from "./chunk-4XZHKYGH.js"; import { makeSizeProps, useSize } from "./chunk-PIT7IT55.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; import { makeRoundedProps, useRounded } from "./chunk-AQK3CYVW.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { makeTagProps } from "./chunk-2HZIACSB.js"; import { - ripple_default -} from "./chunk-5BPWKCNA.js"; + IconValue +} from "./chunk-OJDZBU5D.js"; import { makeRouterProps, useLink } from "./chunk-573D4TYC.js"; +import { + ripple_default +} from "./chunk-DS4J67XG.js"; import { makeDimensionProps, useDimension } from "./chunk-6EZKHCRW.js"; -import { - IconValue -} from "./chunk-OJDZBU5D.js"; import { makeThemeProps, provideTheme @@ -91,7 +91,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VBtn/VBtn.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBtn/VBtn.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBtn/VBtn.css"; // node_modules/vuetify/lib/composables/selectLink.js function useSelectLink(link, select) { @@ -330,4 +330,4 @@ export { makeVBtnProps, VBtn }; -//# sourceMappingURL=chunk-QC7VWQER.js.map +//# sourceMappingURL=chunk-UQALH6SL.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QC7VWQER.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UQALH6SL.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-QC7VWQER.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UQALH6SL.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-U2DSRSME.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UXZ55AO7.js similarity index 93% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-U2DSRSME.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UXZ55AO7.js index 9837766..7e2f8cc 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-U2DSRSME.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UXZ55AO7.js @@ -1,6 +1,6 @@ import { VProgressLinear -} from "./chunk-FVDWV4NO.js"; +} from "./chunk-6RFSM2OD.js"; import { getCurrentInstanceName, propsFactory @@ -48,4 +48,4 @@ export { useLoader, LoaderSlot }; -//# sourceMappingURL=chunk-U2DSRSME.js.map +//# sourceMappingURL=chunk-UXZ55AO7.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-U2DSRSME.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UXZ55AO7.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-U2DSRSME.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-UXZ55AO7.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LHMOJDYM.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WGWEQK64.js similarity index 97% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LHMOJDYM.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WGWEQK64.js index f56fec1..21f256a 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LHMOJDYM.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WGWEQK64.js @@ -1,40 +1,40 @@ -import { - makeElevationProps, - useElevation -} from "./chunk-YJD2PNP6.js"; import { VInput, VLabel, makeFocusProps, makeVInputProps, useFocus -} from "./chunk-4VABFUPG.js"; +} from "./chunk-IK67YVHF.js"; import { useForm } from "./chunk-GAYXO4FM.js"; import { VScaleTransition } from "./chunk-B4JFJDWM.js"; +import { + forwardRefs +} from "./chunk-GUNW7S2L.js"; +import { + makeElevationProps, + useElevation +} from "./chunk-YJD2PNP6.js"; import { makeRoundedProps, useRounded } from "./chunk-AQK3CYVW.js"; import { ripple_default -} from "./chunk-5BPWKCNA.js"; +} from "./chunk-DS4J67XG.js"; import { - forwardRefs -} from "./chunk-GUNW7S2L.js"; + useBackgroundColor, + useTextColor +} from "./chunk-BHV5Z34M.js"; import { useRtl } from "./chunk-ENTLCOCZ.js"; import { useProxiedModel } from "./chunk-KA77II4V.js"; -import { - useBackgroundColor, - useTextColor -} from "./chunk-BHV5Z34M.js"; import { clamp, convertToUnit, @@ -67,10 +67,10 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VSlider/VSlider.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSlider/VSlider.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSlider/VSlider.css"; // node_modules/vuetify/lib/components/VSlider/VSliderThumb.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSlider/VSliderThumb.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSlider/VSliderThumb.css"; // node_modules/vuetify/lib/components/VSlider/slider.js var VSliderSymbol = /* @__PURE__ */ Symbol.for("vuetify:v-slider"); @@ -549,7 +549,7 @@ var VSliderThumb = genericComponent()({ }); // node_modules/vuetify/lib/components/VSlider/VSliderTrack.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSlider/VSliderTrack.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSlider/VSliderTrack.css"; var makeVSliderTrackProps = propsFactory({ start: { type: Number, @@ -827,4 +827,4 @@ export { VSliderTrack, VSlider }; -//# sourceMappingURL=chunk-LHMOJDYM.js.map +//# sourceMappingURL=chunk-WGWEQK64.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LHMOJDYM.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WGWEQK64.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-LHMOJDYM.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WGWEQK64.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WXMECWZN.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-X3WY3J75.js similarity index 94% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WXMECWZN.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-X3WY3J75.js index ccfef3c..2be601e 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WXMECWZN.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-X3WY3J75.js @@ -21,7 +21,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VDivider/VDivider.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDivider/VDivider.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDivider/VDivider.css"; var allowedVariants = ["dotted", "dashed", "solid", "double"]; var makeVDividerProps = propsFactory({ color: String, @@ -109,4 +109,4 @@ var VDivider = genericComponent()({ export { VDivider }; -//# sourceMappingURL=chunk-WXMECWZN.js.map +//# sourceMappingURL=chunk-X3WY3J75.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WXMECWZN.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-X3WY3J75.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-WXMECWZN.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-X3WY3J75.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-7SKEB5LN.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ZB5S5BI5.js similarity index 98% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-7SKEB5LN.js rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ZB5S5BI5.js index c3367bd..fe462fa 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-7SKEB5LN.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ZB5S5BI5.js @@ -1,27 +1,9 @@ +import { + VImg +} from "./chunk-TTIGZHWR.js"; import { useSsrBoot } from "./chunk-PCKQGDLK.js"; -import { - VImg -} from "./chunk-6CRS5HI4.js"; -import { - makeBorderProps, - useBorder -} from "./chunk-X7YBE6PF.js"; -import { - makeElevationProps, - useElevation -} from "./chunk-YJD2PNP6.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; -import { - makeRoundedProps, - useRounded -} from "./chunk-AQK3CYVW.js"; -import { - makeTagProps -} from "./chunk-2HZIACSB.js"; import { makeDelayProps, makeFocusTrapProps, @@ -29,9 +11,6 @@ import { useFocusTrap, useScopeId } from "./chunk-BVUPSGRF.js"; -import { - useRouter -} from "./chunk-573D4TYC.js"; import { makeDisplayProps, useDisplay @@ -40,6 +19,30 @@ import { makeLayoutItemProps, useLayoutItem } from "./chunk-KQXZAEJP.js"; +import { + makeBorderProps, + useBorder +} from "./chunk-X7YBE6PF.js"; +import { + makeElevationProps, + useElevation +} from "./chunk-YJD2PNP6.js"; +import { + makeRoundedProps, + useRounded +} from "./chunk-AQK3CYVW.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; +import { + makeTagProps +} from "./chunk-2HZIACSB.js"; +import { + useRouter +} from "./chunk-573D4TYC.js"; +import { + useBackgroundColor +} from "./chunk-BHV5Z34M.js"; import { useRtl } from "./chunk-ENTLCOCZ.js"; @@ -47,9 +50,6 @@ import { useProxiedModel, useToggleScope } from "./chunk-KA77II4V.js"; -import { - useBackgroundColor -} from "./chunk-BHV5Z34M.js"; import { makeThemeProps, provideTheme @@ -86,7 +86,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.css"; // node_modules/vuetify/lib/components/VNavigationDrawer/sticky.js function useSticky(_ref) { @@ -640,4 +640,4 @@ var VNavigationDrawer = genericComponent()({ export { VNavigationDrawer }; -//# sourceMappingURL=chunk-7SKEB5LN.js.map +//# sourceMappingURL=chunk-ZB5S5BI5.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-7SKEB5LN.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ZB5S5BI5.js.map similarity index 100% rename from ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-7SKEB5LN.js.map rename to ServerManagerWebApp/frontend/node_modules/.vite/deps/chunk-ZB5S5BI5.js.map diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify.js index 19ea7d6..796bfda 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify.js @@ -1,7 +1,3 @@ -import { - aliases, - mdi -} from "./chunk-KPWCGWEX.js"; import { DateAdapterSymbol, DateOptionsSymbol, @@ -15,19 +11,23 @@ import { createGoTo, useGoTo } from "./chunk-NJV3GUE4.js"; +import { + aliases, + mdi +} from "./chunk-KPWCGWEX.js"; import { DisplaySymbol, createDisplay, useDisplay } from "./chunk-N4LJHDYD.js"; +import { + useLayout +} from "./chunk-KQXZAEJP.js"; import { IconSymbol, VClassIcon, VSvgIcon } from "./chunk-OJDZBU5D.js"; -import { - useLayout -} from "./chunk-KQXZAEJP.js"; import "./chunk-XDSAO7OT.js"; import { LocaleSymbol, diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components.js index 250ca7d..f9f590a 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components.js @@ -1,8 +1,32 @@ +import { + VCombobox +} from "./chunk-244ON7Z6.js"; import { VForm } from "./chunk-5LZQZ6A5.js"; -import "./chunk-F6LZGKE2.js"; +import { + VTextarea +} from "./chunk-T4XKRUDE.js"; import "./chunk-4MMPKXON.js"; +import "./chunk-F6LZGKE2.js"; +import { + VBottomNavigation +} from "./chunk-LFKLAYDH.js"; +import { + VToolbarItems +} from "./chunk-RH43OVWP.js"; +import { + VAlert, + VAlertTitle, + makeIconSizeProps, + useIconSizes +} from "./chunk-QMLWKRPM.js"; +import { + VExpansionPanel, + VExpansionPanelText, + VExpansionPanelTitle, + VExpansionPanels +} from "./chunk-SCY7DFFY.js"; import { VSlider, VSliderThumb, @@ -11,36 +35,19 @@ import { makeSliderProps, useSlider, useSteps -} from "./chunk-LHMOJDYM.js"; -import { - VExpansionPanel, - VExpansionPanelText, - VExpansionPanelTitle, - VExpansionPanels -} from "./chunk-TSTWIJCO.js"; -import { - VSnackbar, - makeVSnackbarProps -} from "./chunk-YDVSSFCH.js"; +} from "./chunk-WGWEQK64.js"; import { VSheet, makeVSheetProps -} from "./chunk-RNFCLGZV.js"; +} from "./chunk-7M5DDQ46.js"; import { - VBreadcrumbs, - VBreadcrumbsDivider, - VBreadcrumbsItem -} from "./chunk-WNCBJDZZ.js"; -import { - VDialog, - makeVDialogProps -} from "./chunk-34XWDQGB.js"; -import { - VToolbarItems -} from "./chunk-RH43OVWP.js"; -import { - VFileInput -} from "./chunk-PEUMXYT2.js"; + VCard, + VCardActions, + VCardItem, + VCardSubtitle, + VCardText, + VCardTitle +} from "./chunk-3NOJ7Z44.js"; import { VDataTable, VDataTableFooter, @@ -53,97 +60,87 @@ import { VTable, createPagination, createSort, - highlightResult, makeDataTableExpandProps, makeDataTableGroupProps, makeDataTablePaginateProps, makeDataTableSelectProps, makeDataTableSortProps, - makeFilterProps, provideExpanded, provideGroupBy, providePagination, provideSelection, provideSort, - useFilter, useGroupedItems, useOptions, usePaginatedItems, useSortedItems -} from "./chunk-4HCXUCLO.js"; +} from "./chunk-FCTFWI5H.js"; +import { + highlightResult, + makeFilterProps, + useFilter +} from "./chunk-RB6DAYHX.js"; +import "./chunk-QV3QXWPM.js"; import { VSelect, VVirtualScroll, makeSelectProps, useMenuActivator, useScrolling -} from "./chunk-ERI3RTQS.js"; +} from "./chunk-IZDIYS2S.js"; import { VTextField, makeVTextFieldProps -} from "./chunk-VSEC5QGQ.js"; +} from "./chunk-6MO6MKTY.js"; +import "./chunk-IZQZFEAL.js"; import { VCheckbox, - VCheckboxBtn, - VSelectionControl, - VSelectionControlGroup, - makeSelectionControlGroupProps, - makeVSelectionControlProps -} from "./chunk-BYBKODOB.js"; + VCheckboxBtn +} from "./chunk-6HLLVLOR.js"; +import { + VDialog, + makeVDialogProps +} from "./chunk-RWSHRKUK.js"; +import { + VFileInput +} from "./chunk-EKMPZMZF.js"; +import "./chunk-OI3EYDCB.js"; +import { + VCounter, + VField, + VFieldLabel, + makeVFieldProps +} from "./chunk-ITO3JWXJ.js"; import { VChip, VChipGroup, VSlideGroup, VSlideGroupSymbol, makeVSlideGroupProps -} from "./chunk-SHBPUR7N.js"; +} from "./chunk-PLNIG6WP.js"; import { VMenu, makeVMenuProps -} from "./chunk-HGIC64KW.js"; +} from "./chunk-LPDOFVDK.js"; +import { + VSnackbar, + makeVSnackbarProps +} from "./chunk-CCNWGDBL.js"; import { VAppBar, VAppBarNavIcon, VAppBarTitle -} from "./chunk-BXEVD6W6.js"; +} from "./chunk-P6EQK5CJ.js"; import { VToolbar, VToolbarTitle -} from "./chunk-LPZZJ62X.js"; +} from "./chunk-H2QFYTJQ.js"; import { VCol, VContainer, VRow, VSpacer -} from "./chunk-UIXKNP5E.js"; -import { - VMain -} from "./chunk-DRSCVHAQ.js"; -import { - VAlert, - VAlertTitle, - makeIconSizeProps, - useIconSizes -} from "./chunk-TSYQL5U3.js"; -import "./chunk-MVBFAXEB.js"; -import { - VBtn, - makeVBtnProps -} from "./chunk-QC7VWQER.js"; -import { - VBtnGroup, - VBtnToggle, - VBtnToggleSymbol -} from "./chunk-NURQ3473.js"; -import { - VProgressCircular -} from "./chunk-ET5GCC5W.js"; -import { - makeGroupItemProps, - makeGroupProps, - useGroup, - useGroupItem -} from "./chunk-W6DJL42A.js"; +} from "./chunk-CMTCIV56.js"; import { VList, VListGroup, @@ -157,60 +154,43 @@ import { makeVListGroupProps, makeVListItemProps, makeVListProps, - transformItem, useItems, useListItems -} from "./chunk-HV7P7R7J.js"; -import { - VCard, - VCardActions, - VCardItem, - VCardSubtitle, - VCardText, - VCardTitle -} from "./chunk-MPVSDM4V.js"; -import { - makePositionProps, - usePosition -} from "./chunk-HOEZWRBG.js"; +} from "./chunk-MQSMF5CI.js"; import { VAvatar -} from "./chunk-Z3677HMS.js"; +} from "./chunk-SXI5CS7S.js"; import { - genOverlays, - makeVariantProps, - useVariant -} from "./chunk-ADXDXPPR.js"; + VDivider +} from "./chunk-X3WY3J75.js"; +import { + VMain +} from "./chunk-Q5BHIW5H.js"; import { VNavigationDrawer -} from "./chunk-7SKEB5LN.js"; -import { - useSsrBoot -} from "./chunk-PCKQGDLK.js"; +} from "./chunk-ZB5S5BI5.js"; import { VImg, VResponsive, makeVImgProps -} from "./chunk-6CRS5HI4.js"; +} from "./chunk-TTIGZHWR.js"; import { - makeBorderProps, - useBorder -} from "./chunk-X7YBE6PF.js"; + useSsrBoot +} from "./chunk-PCKQGDLK.js"; import { - makeElevationProps, - useElevation -} from "./chunk-YJD2PNP6.js"; + VBreadcrumbs, + VBreadcrumbsDivider, + VBreadcrumbsItem +} from "./chunk-TN4XZECZ.js"; import { - VTextarea -} from "./chunk-I4SZJCEY.js"; -import "./chunk-OI3EYDCB.js"; -import "./chunk-IZQZFEAL.js"; + VSwitch +} from "./chunk-L7BQJLEW.js"; import { - VCounter, - VField, - VFieldLabel, - makeVFieldProps -} from "./chunk-J7Q2NMV7.js"; + VSelectionControl, + VSelectionControlGroup, + makeSelectionControlGroupProps, + makeVSelectionControlProps +} from "./chunk-KHWE4FHS.js"; import { VInput, VLabel, @@ -221,7 +201,7 @@ import { useFocus, useInputIcon, useValidation -} from "./chunk-4VABFUPG.js"; +} from "./chunk-IK67YVHF.js"; import { useForm } from "./chunk-GAYXO4FM.js"; @@ -244,12 +224,98 @@ import { VSlideYTransition } from "./chunk-B4JFJDWM.js"; import { - LoaderSlot, - useLoader -} from "./chunk-U2DSRSME.js"; + createDateRange, + daysDiff, + splitKeyCombination, + splitKeySequence, + useDate +} from "./chunk-WGYWYQOA.js"; +import "./chunk-NJV3GUE4.js"; +import { + resize_default, + touch_default +} from "./chunk-2AYDXCXT.js"; +import { + VTooltip +} from "./chunk-EXUNAYJA.js"; +import { + VOverlay, + useHydration +} from "./chunk-CL6G3ICF.js"; +import { + makeLazyProps, + useLazy +} from "./chunk-YGX2Z63P.js"; +import { + makeDelayProps, + useDelay, + useScopeId +} from "./chunk-BVUPSGRF.js"; +import { + intersect_default +} from "./chunk-5ONGSJQ2.js"; +import { + forwardRefs +} from "./chunk-GUNW7S2L.js"; +import { + MaybeTransition, + makeTransitionProps +} from "./chunk-CAGZXMOS.js"; +import { + makeDisplayProps, + useDisplay +} from "./chunk-N4LJHDYD.js"; +import { + VApp +} from "./chunk-47GEKY7C.js"; +import { + createLayout, + makeLayoutItemProps, + makeLayoutProps, + useLayoutItem +} from "./chunk-KQXZAEJP.js"; +import "./chunk-MVBFAXEB.js"; +import { + VBtn, + makeVBtnProps +} from "./chunk-UQALH6SL.js"; +import { + VBtnGroup, + VBtnToggle +} from "./chunk-5AQLTWWS.js"; +import { + makeGroupItemProps, + makeGroupProps, + useGroup, + useGroupItem +} from "./chunk-W6DJL42A.js"; +import { + makePositionProps, + usePosition +} from "./chunk-HOEZWRBG.js"; +import { + genOverlays, + makeVariantProps, + useVariant +} from "./chunk-ADXDXPPR.js"; +import { + makeBorderProps, + useBorder +} from "./chunk-X7YBE6PF.js"; +import { + makeElevationProps, + useElevation +} from "./chunk-YJD2PNP6.js"; +import "./chunk-GSWLJLRT.js"; +import { + VProgressCircular +} from "./chunk-MH76ZJYE.js"; +import { + LoaderSlot +} from "./chunk-UXZ55AO7.js"; import { VProgressLinear -} from "./chunk-FVDWV4NO.js"; +} from "./chunk-6RFSM2OD.js"; import { useIntersectionObserver } from "./chunk-AJ7MUB7M.js"; @@ -263,69 +329,21 @@ import { } from "./chunk-TM3MIDYC.js"; import { VIcon -} from "./chunk-CMZ4UYUX.js"; +} from "./chunk-4XZHKYGH.js"; import { makeSizeProps, useSize } from "./chunk-PIT7IT55.js"; -import { - VDefaultsProvider -} from "./chunk-VH7QIDM4.js"; import { makeRoundedProps, useRounded } from "./chunk-AQK3CYVW.js"; +import { + VDefaultsProvider +} from "./chunk-PAT7NP2Z.js"; import { makeTagProps } from "./chunk-2HZIACSB.js"; -import { - createDateRange, - daysDiff, - splitKeyCombination, - splitKeySequence, - useDate -} from "./chunk-WGYWYQOA.js"; -import "./chunk-NJV3GUE4.js"; -import { - VTooltip, - resize_default, - touch_default -} from "./chunk-6VKWM6MN.js"; -import { - VOverlay, - useHydration -} from "./chunk-TS6Y6OVT.js"; -import { - makeLazyProps, - useLazy -} from "./chunk-YGX2Z63P.js"; -import { - ripple_default -} from "./chunk-5BPWKCNA.js"; -import { - makeDelayProps, - useDelay, - useScopeId -} from "./chunk-BVUPSGRF.js"; -import "./chunk-573D4TYC.js"; -import { - forwardRefs -} from "./chunk-GUNW7S2L.js"; -import { - intersect_default -} from "./chunk-5ONGSJQ2.js"; -import { - MaybeTransition, - makeTransitionProps -} from "./chunk-CAGZXMOS.js"; -import { - makeDimensionProps, - useDimension -} from "./chunk-6EZKHCRW.js"; -import { - makeDisplayProps, - useDisplay -} from "./chunk-N4LJHDYD.js"; import { IconValue, VClassIcon, @@ -333,15 +351,19 @@ import { VLigatureIcon, VSvgIcon } from "./chunk-OJDZBU5D.js"; +import "./chunk-573D4TYC.js"; import { - VApp -} from "./chunk-IYFY4IHW.js"; + ripple_default +} from "./chunk-DS4J67XG.js"; import { - createLayout, - makeLayoutItemProps, - makeLayoutProps, - useLayoutItem -} from "./chunk-KQXZAEJP.js"; + computeColor, + useBackgroundColor, + useTextColor +} from "./chunk-BHV5Z34M.js"; +import { + makeDimensionProps, + useDimension +} from "./chunk-6EZKHCRW.js"; import { useResizeObserver } from "./chunk-XDSAO7OT.js"; @@ -354,14 +376,6 @@ import { useProxiedModel, useToggleScope } from "./chunk-KA77II4V.js"; -import { - VDivider -} from "./chunk-WXMECWZN.js"; -import { - computeColor, - useBackgroundColor, - useTextColor -} from "./chunk-BHV5Z34M.js"; import { makeThemeProps, provideTheme, @@ -380,7 +394,6 @@ import { RGBtoCSS, RGBtoHSV, SUPPORTS_EYE_DROPPER, - SUPPORTS_MATCH_MEDIA, animate, checkPrintable, clamp, @@ -405,7 +418,6 @@ import { getPropertyFromItem, getScrollParent, has, - isComposingIgnoreKey, isObject, makeComponentProps, matchesSelector, @@ -459,7 +471,7 @@ import { } from "./chunk-2MKFL3BX.js"; // node_modules/vuetify/lib/components/VAutocomplete/VAutocomplete.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VAutocomplete/VAutocomplete.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VAutocomplete/VAutocomplete.css"; var makeVAutocompleteProps = propsFactory({ autoSelectFirst: { type: [Boolean, String] @@ -963,7 +975,7 @@ var VAutocomplete = genericComponent()({ }); // node_modules/vuetify/lib/components/VBadge/VBadge.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBadge/VBadge.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBadge/VBadge.css"; var makeVBadgeProps = propsFactory({ bordered: Boolean, color: String, @@ -1064,7 +1076,7 @@ var VBadge = genericComponent()({ }); // node_modules/vuetify/lib/components/VBanner/VBanner.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBanner/VBanner.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBanner/VBanner.css"; // node_modules/vuetify/lib/components/VBanner/VBannerActions.js var makeVBannerActionsProps = propsFactory({ @@ -1216,121 +1228,8 @@ var VBanner = genericComponent()({ } }); -// node_modules/vuetify/lib/components/VBottomNavigation/VBottomNavigation.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBottomNavigation/VBottomNavigation.css"; -var makeVBottomNavigationProps = propsFactory({ - baseColor: String, - bgColor: String, - color: String, - grow: Boolean, - mode: { - type: String, - validator: (v) => !v || ["horizontal", "shift"].includes(v) - }, - height: { - type: [Number, String], - default: 56 - }, - active: { - type: Boolean, - default: true - }, - ...makeBorderProps(), - ...makeComponentProps(), - ...makeDensityProps(), - ...makeElevationProps(), - ...makeRoundedProps(), - ...makeLayoutItemProps({ - name: "bottom-navigation" - }), - ...makeTagProps({ - tag: "header" - }), - ...makeGroupProps({ - selectedClass: "v-btn--selected" - }), - ...makeThemeProps() -}, "VBottomNavigation"); -var VBottomNavigation = genericComponent()({ - name: "VBottomNavigation", - props: makeVBottomNavigationProps(), - emits: { - "update:active": (value) => true, - "update:modelValue": (value) => true - }, - setup(props, _ref) { - let { - slots - } = _ref; - const { - themeClasses - } = useTheme(); - const { - borderClasses - } = useBorder(props); - const { - backgroundColorClasses, - backgroundColorStyles - } = useBackgroundColor(() => props.bgColor); - const { - densityClasses - } = useDensity(props); - const { - elevationClasses - } = useElevation(props); - const { - roundedClasses - } = useRounded(props); - const { - ssrBootStyles - } = useSsrBoot(); - const height = computed(() => Number(props.height) - (props.density === "comfortable" ? 8 : 0) - (props.density === "compact" ? 16 : 0)); - const isActive = useProxiedModel(props, "active", props.active); - const { - layoutItemStyles - } = useLayoutItem({ - id: props.name, - order: computed(() => parseInt(props.order, 10)), - position: toRef(() => "bottom"), - layoutSize: toRef(() => isActive.value ? height.value : 0), - elementSize: height, - active: isActive, - absolute: toRef(() => props.absolute) - }); - useGroup(props, VBtnToggleSymbol); - provideDefaults({ - VBtn: { - baseColor: toRef(() => props.baseColor), - color: toRef(() => props.color), - density: toRef(() => props.density), - stacked: toRef(() => props.mode !== "horizontal"), - variant: "text" - } - }, { - scoped: true - }); - useRender(() => { - return createVNode(props.tag, { - "class": normalizeClass(["v-bottom-navigation", { - "v-bottom-navigation--active": isActive.value, - "v-bottom-navigation--grow": props.grow, - "v-bottom-navigation--shift": props.mode === "shift" - }, themeClasses.value, backgroundColorClasses.value, borderClasses.value, densityClasses.value, elevationClasses.value, roundedClasses.value, props.class]), - "style": normalizeStyle([backgroundColorStyles.value, layoutItemStyles.value, { - height: convertToUnit(height.value) - }, ssrBootStyles.value, props.style]) - }, { - default: () => [slots.default && createBaseVNode("div", { - "class": "v-bottom-navigation__content" - }, [slots.default()])] - }); - }); - return {}; - } -}); - // node_modules/vuetify/lib/components/VBottomSheet/VBottomSheet.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBottomSheet/VBottomSheet.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VBottomSheet/VBottomSheet.css"; var makeVBottomSheetProps = propsFactory({ inset: Boolean, ...makeVDialogProps({ @@ -1365,12 +1264,12 @@ var VBottomSheet = genericComponent()({ }); // node_modules/vuetify/lib/components/VCalendar/VCalendar.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCalendar/VCalendarCategory.css"; -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCalendar/VCalendarDaily.css"; -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCalendar/VCalendarWeekly.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCalendar/VCalendarCategory.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCalendar/VCalendarDaily.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCalendar/VCalendarWeekly.css"; // node_modules/vuetify/lib/labs/VIconBtn/VIconBtn.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/labs/VIconBtn/VIconBtn.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/labs/VIconBtn/VIconBtn.css"; var makeVIconBtnProps = propsFactory({ active: { type: Boolean, @@ -2894,7 +2793,7 @@ var VCalendarWeekly = defineComponent({ }); // node_modules/vuetify/lib/components/VCalendar/composables/calendarWithEvents.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCalendar/composables/calendarWithEvents.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCalendar/composables/calendarWithEvents.css"; // node_modules/vuetify/lib/components/VCalendar/modes/common.js var MILLIS_IN_DAY = 864e5; @@ -4039,10 +3938,10 @@ var VCalendar = genericComponent()({ }); // node_modules/vuetify/lib/components/VCarousel/VCarousel.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCarousel/VCarousel.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCarousel/VCarousel.css"; // node_modules/vuetify/lib/components/VWindow/VWindow.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VWindow/VWindow.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VWindow/VWindow.css"; var VWindowSymbol = /* @__PURE__ */ Symbol.for("vuetify:v-window"); var VWindowGroupSymbol = /* @__PURE__ */ Symbol.for("vuetify:v-window-group"); var makeVWindowProps = propsFactory({ @@ -4514,14 +4413,14 @@ var VCarouselItem = genericComponent()({ }); // node_modules/vuetify/lib/components/VCode/index.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCode/VCode.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCode/VCode.css"; var VCode = createSimpleFunctional("v-code", "code"); // node_modules/vuetify/lib/components/VColorPicker/VColorPicker.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VColorPicker/VColorPicker.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VColorPicker/VColorPicker.css"; // node_modules/vuetify/lib/components/VColorPicker/VColorPickerCanvas.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VColorPicker/VColorPickerCanvas.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VColorPicker/VColorPickerCanvas.css"; var makeVColorPickerCanvasProps = propsFactory({ color: { type: Object @@ -4701,7 +4600,7 @@ var VColorPickerCanvas = defineComponent({ }); // node_modules/vuetify/lib/components/VColorPicker/VColorPickerEdit.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VColorPicker/VColorPickerEdit.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VColorPicker/VColorPickerEdit.css"; // node_modules/vuetify/lib/components/VColorPicker/util/index.js function stripAlpha(color, stripAlpha2) { @@ -4988,7 +4887,7 @@ var VColorPickerEdit = defineComponent({ }); // node_modules/vuetify/lib/components/VColorPicker/VColorPickerPreview.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VColorPicker/VColorPickerPreview.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VColorPicker/VColorPickerPreview.css"; var makeVColorPickerPreviewProps = propsFactory({ color: { type: Object @@ -5093,7 +4992,7 @@ var VColorPickerPreview = defineComponent({ }); // node_modules/vuetify/lib/components/VColorPicker/VColorPickerSwatches.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VColorPicker/VColorPickerSwatches.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VColorPicker/VColorPickerSwatches.css"; // node_modules/vuetify/lib/util/colors.js var red = { @@ -5480,7 +5379,7 @@ var VColorPickerSwatches = defineComponent({ }); // node_modules/vuetify/lib/labs/VPicker/VPicker.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/labs/VPicker/VPicker.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/labs/VPicker/VPicker.css"; // node_modules/vuetify/lib/labs/VPicker/VPickerTitle.js var VPickerTitle = createSimpleFunctional("v-picker-title"); @@ -5701,574 +5600,6 @@ var VColorPicker = defineComponent({ } }); -// node_modules/vuetify/lib/components/VCombobox/VCombobox.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VCombobox/VCombobox.css"; -var makeVComboboxProps = propsFactory({ - alwaysFilter: Boolean, - autoSelectFirst: { - type: [Boolean, String] - }, - clearOnSelect: { - type: Boolean, - default: true - }, - delimiters: Array, - ...makeFilterProps({ - filterKeys: ["title"] - }), - ...makeSelectProps({ - hideNoData: true, - returnObject: true - }), - ...omit(makeVTextFieldProps({ - modelValue: null, - role: "combobox" - }), ["validationValue", "dirty"]) -}, "VCombobox"); -var VCombobox = genericComponent()({ - name: "VCombobox", - props: makeVComboboxProps(), - emits: { - "update:focused": (focused) => true, - "update:modelValue": (value) => true, - "update:search": (value) => true, - "update:menu": (value) => true - }, - setup(props, _ref) { - let { - emit, - slots - } = _ref; - const { - t - } = useLocale(); - const vTextFieldRef = ref(); - const isFocused = shallowRef(false); - const isPristine = shallowRef(true); - const listHasFocus = shallowRef(false); - const vMenuRef = ref(); - const vVirtualScrollRef = ref(); - const selectionIndex = shallowRef(-1); - let cleared = false; - const { - items, - transformIn, - transformOut - } = useItems(props); - const { - textColorClasses, - textColorStyles - } = useTextColor(() => vTextFieldRef.value?.color); - const { - InputIcon - } = useInputIcon(props); - const model = useProxiedModel(props, "modelValue", [], (v) => transformIn(wrapInArray(v)), (v) => { - const transformed = transformOut(v); - return props.multiple ? transformed : transformed[0] ?? null; - }); - const form = useForm(props); - const closableChips = toRef(() => props.closableChips && !form.isReadonly.value && !form.isDisabled.value); - const hasChips = computed(() => !!(props.chips || slots.chip)); - const hasSelectionSlot = computed(() => hasChips.value || !!slots.selection); - const _search = shallowRef(!props.multiple && !hasSelectionSlot.value ? model.value[0]?.title ?? "" : ""); - const _searchLock = shallowRef(null); - const search = computed({ - get: () => { - return _search.value; - }, - set: async (val) => { - _search.value = val ?? ""; - if (val === null || val === "" && !props.multiple && !hasSelectionSlot.value) { - model.value = []; - } else if (!props.multiple && !hasSelectionSlot.value) { - model.value = [transformItem(props, val)]; - nextTick(() => vVirtualScrollRef.value?.scrollToIndex(0)); - } - if (val && props.multiple && props.delimiters?.length) { - const values = splitByDelimiters(val); - if (values.length > 1) { - selectMultiple(values); - _search.value = ""; - } - } - if (!val) selectionIndex.value = -1; - isPristine.value = !val; - } - }); - const counterValue = computed(() => { - return typeof props.counterValue === "function" ? props.counterValue(model.value) : typeof props.counterValue === "number" ? props.counterValue : props.multiple ? model.value.length : search.value.length; - }); - const { - filteredItems, - getMatches - } = useFilter(props, items, () => _searchLock.value ?? (props.alwaysFilter || !isPristine.value ? search.value : "")); - const displayItems = computed(() => { - if (props.hideSelected && _searchLock.value === null) { - return filteredItems.value.filter((filteredItem) => !model.value.some((s) => s.value === filteredItem.value)); - } - return filteredItems.value; - }); - const menuDisabled = computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value); - const _menu = useProxiedModel(props, "menu"); - const menu = computed({ - get: () => _menu.value, - set: (v) => { - if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return; - if (v && menuDisabled.value) return; - _menu.value = v; - } - }); - const { - menuId, - ariaExpanded, - ariaControls - } = useMenuActivator(props, menu); - watch(_search, (value) => { - if (cleared) { - nextTick(() => cleared = false); - } else if (isFocused.value && !menu.value) { - menu.value = true; - } - emit("update:search", value); - }); - watch(model, (value) => { - if (!props.multiple && !hasSelectionSlot.value) { - _search.value = value[0]?.title ?? ""; - } - }); - const selectedValues = computed(() => model.value.map((selection) => selection.value)); - const firstSelectableItem = computed(() => displayItems.value.find((x) => x.type === "item" && !x.props.disabled)); - const highlightFirst = computed(() => { - const selectFirst = props.autoSelectFirst === true || props.autoSelectFirst === "exact" && search.value === firstSelectableItem.value?.title; - return selectFirst && displayItems.value.length > 0 && !isPristine.value && !listHasFocus.value; - }); - const listRef = ref(); - const listEvents = useScrolling(listRef, vTextFieldRef); - function onClear(e) { - cleared = true; - nextTick(() => cleared = false); - if (props.openOnClear) { - menu.value = true; - } - } - function onMousedownControl() { - if (menuDisabled.value) return; - menu.value = true; - } - function onMousedownMenuIcon(e) { - if (menuDisabled.value) return; - if (isFocused.value) { - e.preventDefault(); - e.stopPropagation(); - } - menu.value = !menu.value; - } - function onListKeydown(e) { - if (checkPrintable(e) || e.key === "Backspace") { - vTextFieldRef.value?.focus(); - } - } - function onKeydown(e) { - if (isComposingIgnoreKey(e) || form.isReadonly.value) return; - const selectionStart = vTextFieldRef.value?.selectionStart; - const length = model.value.length; - if (["Enter", "ArrowDown", "ArrowUp"].includes(e.key)) { - e.preventDefault(); - } - if (["Enter", "ArrowDown"].includes(e.key)) { - menu.value = true; - } - if (["Escape"].includes(e.key)) { - menu.value = false; - } - if (highlightFirst.value && ["Enter", "Tab"].includes(e.key) && firstSelectableItem.value && !model.value.some((_ref2) => { - let { - value - } = _ref2; - return value === firstSelectableItem.value.value; - })) { - select(firstSelectableItem.value); - } - if (e.key === "ArrowDown" && highlightFirst.value) { - listRef.value?.focus("next"); - } - if (e.key === "Enter" && search.value) { - select(transformItem(props, search.value), true, true); - if (hasSelectionSlot.value) _search.value = ""; - } - if (["Backspace", "Delete"].includes(e.key)) { - if (!props.multiple && hasSelectionSlot.value && model.value.length > 0 && !search.value) return select(model.value[0], false); - if (~selectionIndex.value) { - e.preventDefault(); - const originalSelectionIndex = selectionIndex.value; - select(model.value[selectionIndex.value], false); - selectionIndex.value = originalSelectionIndex >= length - 1 ? length - 2 : originalSelectionIndex; - } else if (e.key === "Backspace" && !search.value) { - selectionIndex.value = length - 1; - } - return; - } - if (!props.multiple) return; - if (e.key === "ArrowLeft") { - if (selectionIndex.value < 0 && selectionStart && selectionStart > 0) return; - const prev = selectionIndex.value > -1 ? selectionIndex.value - 1 : length - 1; - if (model.value[prev]) { - selectionIndex.value = prev; - } else { - selectionIndex.value = -1; - vTextFieldRef.value?.setSelectionRange(search.value.length, search.value.length); - } - } else if (e.key === "ArrowRight") { - if (selectionIndex.value < 0) return; - const next = selectionIndex.value + 1; - if (model.value[next]) { - selectionIndex.value = next; - } else { - selectionIndex.value = -1; - vTextFieldRef.value?.setSelectionRange(0, 0); - } - } else if (~selectionIndex.value && checkPrintable(e)) { - selectionIndex.value = -1; - } - } - function onPaste(e) { - const clipboardText = e?.clipboardData?.getData("Text") ?? ""; - const values = splitByDelimiters(clipboardText); - if (values.length > 1 && props.multiple) { - e.preventDefault(); - selectMultiple(values); - } - } - function onAfterEnter() { - if (props.eager) { - vVirtualScrollRef.value?.calculateVisibleItems(); - } - } - function onAfterLeave() { - if (isFocused.value) { - vTextFieldRef.value?.focus(); - } - isPristine.value = true; - _searchLock.value = null; - } - function select(item) { - let set = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : true; - let keepMenu = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false; - if (!item || item.props.disabled) return; - if (props.multiple) { - const index = model.value.findIndex((selection) => (props.valueComparator || deepEqual)(selection.value, item.value)); - const add = set == null ? !~index : set; - if (~index) { - const value = add ? [...model.value, item] : [...model.value]; - value.splice(index, 1); - model.value = value; - } else if (add) { - model.value = [...model.value, item]; - } - if (props.clearOnSelect) { - search.value = ""; - } - } else { - const add = set !== false; - model.value = add ? [item] : []; - if ((!isPristine.value || props.alwaysFilter) && _search.value) { - _searchLock.value = _search.value; - } - _search.value = add && !hasSelectionSlot.value ? item.title : ""; - nextTick(() => { - menu.value = keepMenu; - isPristine.value = true; - }); - } - } - function splitByDelimiters(val) { - const effectiveDelimiters = ["\n", ...props.delimiters ?? []]; - const signsToMatch = effectiveDelimiters.map(escapeForRegex).join("|"); - return val.split(new RegExp(`(?:${signsToMatch})+`)); - } - async function selectMultiple(values) { - for (let value of values) { - value = value.trim(); - if (value) { - select(transformItem(props, value)); - await nextTick(); - } - } - } - function onFocusin(e) { - isFocused.value = true; - setTimeout(() => { - listHasFocus.value = true; - }); - } - function onFocusout(e) { - listHasFocus.value = false; - } - watch(isFocused, (val, oldVal) => { - if (val || val === oldVal) return; - selectionIndex.value = -1; - menu.value = false; - if (search.value) { - if (props.multiple) { - select(transformItem(props, search.value)); - return; - } - if (!hasSelectionSlot.value) return; - if (model.value.some((_ref3) => { - let { - title - } = _ref3; - return title === search.value; - })) { - _search.value = ""; - } else { - select(transformItem(props, search.value)); - } - } - }); - watch(menu, (val) => { - if (!props.hideSelected && val && model.value.length && isPristine.value) { - const index = displayItems.value.findIndex((item) => model.value.some((s) => (props.valueComparator || deepEqual)(s.value, item.value))); - IN_BROWSER && window.requestAnimationFrame(() => { - index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index); - }); - } - if (val) _searchLock.value = null; - }); - watch(items, (newVal, oldVal) => { - if (menu.value) return; - if (isFocused.value && !oldVal.length && newVal.length) { - menu.value = true; - } - }); - useRender(() => { - const hasList = !!(!props.hideNoData || displayItems.value.length || slots["prepend-item"] || slots["append-item"] || slots["no-data"]); - const isDirty = model.value.length > 0; - const textFieldProps = VTextField.filterProps(props); - return createVNode(VTextField, mergeProps({ - "ref": vTextFieldRef - }, textFieldProps, { - "modelValue": search.value, - "onUpdate:modelValue": ($event) => search.value = $event, - "focused": isFocused.value, - "onUpdate:focused": ($event) => isFocused.value = $event, - "validationValue": model.externalValue, - "counterValue": counterValue.value, - "dirty": isDirty, - "class": ["v-combobox", { - "v-combobox--active-menu": menu.value, - "v-combobox--chips": !!props.chips, - "v-combobox--selection-slot": !!hasSelectionSlot.value, - "v-combobox--selecting-index": selectionIndex.value > -1, - [`v-combobox--${props.multiple ? "multiple" : "single"}`]: true - }, props.class], - "style": props.style, - "readonly": form.isReadonly.value, - "placeholder": isDirty ? void 0 : props.placeholder, - "onClick:clear": onClear, - "onMousedown:control": onMousedownControl, - "onKeydown": onKeydown, - "onPaste": onPaste, - "aria-expanded": ariaExpanded.value, - "aria-controls": ariaControls.value - }), { - ...slots, - default: (_ref4) => { - let { - id - } = _ref4; - return createBaseVNode(Fragment, null, [createVNode(VMenu, mergeProps({ - "id": menuId.value, - "ref": vMenuRef, - "modelValue": menu.value, - "onUpdate:modelValue": ($event) => menu.value = $event, - "activator": "parent", - "contentClass": "v-combobox__content", - "disabled": menuDisabled.value, - "eager": props.eager, - "maxHeight": 310, - "openOnClick": false, - "closeOnContentClick": false, - "onAfterEnter": onAfterEnter, - "onAfterLeave": onAfterLeave - }, props.menuProps), { - default: () => [hasList && createVNode(VList, mergeProps({ - "ref": listRef, - "filterable": true, - "selected": selectedValues.value, - "selectStrategy": props.multiple ? "independent" : "single-independent", - "onMousedown": (e) => e.preventDefault(), - "selectable": true, - "onKeydown": onListKeydown, - "onFocusin": onFocusin, - "onFocusout": onFocusout, - "tabindex": "-1", - "aria-live": "polite", - "aria-labelledby": `${id.value}-label`, - "aria-multiselectable": props.multiple, - "color": props.itemColor ?? props.color - }, listEvents, props.listProps), { - default: () => [slots["prepend-item"]?.(), !displayItems.value.length && !props.hideNoData && (slots["no-data"]?.() ?? createVNode(VListItem, { - "key": "no-data", - "title": t(props.noDataText) - }, null)), createVNode(VVirtualScroll, { - "ref": vVirtualScrollRef, - "renderless": true, - "items": displayItems.value, - "itemKey": "value" - }, { - default: (_ref5) => { - let { - item, - index, - itemRef - } = _ref5; - const itemProps = mergeProps(item.props, { - ref: itemRef, - key: item.value, - active: highlightFirst.value && item === firstSelectableItem.value ? true : void 0, - onClick: () => select(item, null), - "aria-posinset": index + 1, - "aria-setsize": displayItems.value.length - }); - if (item.type === "divider") { - return slots.divider?.({ - props: item.raw, - index - }) ?? createVNode(VDivider, mergeProps(item.props, { - "key": `divider-${index}` - }), null); - } - if (item.type === "subheader") { - return slots.subheader?.({ - props: item.raw, - index - }) ?? createVNode(VListSubheader, mergeProps(item.props, { - "key": `subheader-${index}` - }), null); - } - return slots.item?.({ - item, - index, - props: itemProps - }) ?? createVNode(VListItem, mergeProps(itemProps, { - "role": "option" - }), { - prepend: (_ref6) => { - let { - isSelected - } = _ref6; - return createBaseVNode(Fragment, null, [props.multiple && !props.hideSelected ? createVNode(VCheckboxBtn, { - "key": item.value, - "modelValue": isSelected, - "ripple": false, - "tabindex": "-1", - "aria-hidden": true, - "onClick": (event) => event.preventDefault() - }, null) : void 0, item.props.prependAvatar && createVNode(VAvatar, { - "image": item.props.prependAvatar - }, null), item.props.prependIcon && createVNode(VIcon, { - "icon": item.props.prependIcon - }, null)]); - }, - title: () => { - return isPristine.value ? item.title : highlightResult("v-combobox", item.title, getMatches(item)?.title); - } - }); - } - }), slots["append-item"]?.()] - })] - }), model.value.map((item, index) => { - function onChipClose(e) { - e.stopPropagation(); - e.preventDefault(); - select(item, false); - } - const slotProps = mergeProps(VChip.filterProps(item.props), { - "onClick:close": onChipClose, - onKeydown(e) { - if (e.key !== "Enter" && e.key !== " ") return; - e.preventDefault(); - e.stopPropagation(); - onChipClose(e); - }, - onMousedown(e) { - e.preventDefault(); - e.stopPropagation(); - }, - modelValue: true, - "onUpdate:modelValue": void 0 - }); - const hasSlot = hasChips.value ? !!slots.chip : !!slots.selection; - const slotContent = hasSlot ? ensureValidVNode(hasChips.value ? slots.chip({ - item, - index, - props: slotProps - }) : slots.selection({ - item, - index - })) : void 0; - if (hasSlot && !slotContent) return void 0; - return createBaseVNode("div", { - "key": item.value, - "class": normalizeClass(["v-combobox__selection", index === selectionIndex.value && ["v-combobox__selection--selected", textColorClasses.value]]), - "style": normalizeStyle(index === selectionIndex.value ? textColorStyles.value : {}) - }, [hasChips.value ? !slots.chip ? createVNode(VChip, mergeProps({ - "key": "chip", - "closable": closableChips.value, - "size": "small", - "text": item.title, - "disabled": item.props.disabled - }, slotProps), null) : createVNode(VDefaultsProvider, { - "key": "chip-defaults", - "defaults": { - VChip: { - closable: closableChips.value, - size: "small", - text: item.title - } - } - }, { - default: () => [slotContent] - }) : slotContent ?? createBaseVNode("span", { - "class": "v-combobox__selection-text" - }, [item.title, props.multiple && index < model.value.length - 1 && createBaseVNode("span", { - "class": "v-combobox__selection-comma" - }, [createTextVNode(",")])])]); - })]); - }, - "append-inner": function() { - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - return createBaseVNode(Fragment, null, [slots["append-inner"]?.(...args), (!props.hideNoData || props.items.length) && props.menuIcon ? createVNode(VIcon, { - "class": "v-combobox__menu-icon", - "color": vTextFieldRef.value?.fieldIconColor, - "icon": props.menuIcon, - "onMousedown": onMousedownMenuIcon, - "onClick": noop, - "aria-hidden": true, - "tabindex": "-1" - }, null) : void 0, props.appendInnerIcon && createVNode(InputIcon, { - "key": "append-icon", - "name": "appendInner", - "color": args[0].iconColor.value - }, null)]); - } - }); - }); - return forwardRefs({ - isFocused, - isPristine, - menu, - search, - selectionIndex, - filteredItems, - select - }, vTextFieldRef); - } -}); - // node_modules/vuetify/lib/components/VConfirmEdit/VConfirmEdit.js var makeVConfirmEditProps = propsFactory({ modelValue: null, @@ -6382,7 +5713,7 @@ var makeDataIteratorItemsProps = propsFactory({ }, returnObject: Boolean }, "DataIterator-items"); -function transformItem2(props, item) { +function transformItem(props, item) { const value = props.returnObject ? item : getPropertyFromItem(item, props.itemValue); const selectable = getPropertyFromItem(item, props.itemSelectable, true); return { @@ -6395,7 +5726,7 @@ function transformItem2(props, item) { function transformItems(props, items) { const array = []; for (const item of items) { - array.push(transformItem2(props, item)); + array.push(transformItem(props, item)); } return array; } @@ -6582,10 +5913,10 @@ var VDataIterator = genericComponent()({ }); // node_modules/vuetify/lib/components/VDatePicker/VDatePicker.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDatePicker/VDatePicker.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDatePicker/VDatePicker.css"; // node_modules/vuetify/lib/components/VDatePicker/VDatePickerControls.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDatePicker/VDatePickerControls.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDatePicker/VDatePickerControls.css"; var makeVDatePickerControlsProps = propsFactory({ active: { type: [String, Array], @@ -6798,7 +6129,7 @@ var VDatePickerControls = genericComponent()({ }); // node_modules/vuetify/lib/components/VDatePicker/VDatePickerHeader.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDatePicker/VDatePickerHeader.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDatePicker/VDatePickerHeader.css"; var makeVDatePickerHeaderProps = propsFactory({ appendIcon: IconValue, color: String, @@ -6873,7 +6204,7 @@ var VDatePickerHeader = genericComponent()({ }); // node_modules/vuetify/lib/components/VDatePicker/VDatePickerMonth.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDatePicker/VDatePickerMonth.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDatePicker/VDatePickerMonth.css"; // node_modules/vuetify/lib/composables/calendar.js var makeCalendarProps = propsFactory({ @@ -7277,7 +6608,7 @@ var VDatePickerMonth = genericComponent()({ }); // node_modules/vuetify/lib/components/VDatePicker/VDatePickerMonths.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDatePicker/VDatePickerMonths.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDatePicker/VDatePickerMonths.css"; var makeVDatePickerMonthsProps = propsFactory({ color: String, height: [String, Number], @@ -7368,7 +6699,7 @@ var VDatePickerMonths = genericComponent()({ }); // node_modules/vuetify/lib/components/VDatePicker/VDatePickerYears.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDatePicker/VDatePickerYears.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VDatePicker/VDatePickerYears.css"; var makeVDatePickerYearsProps = propsFactory({ color: String, height: [String, Number], @@ -7830,7 +7161,7 @@ var VDatePicker = genericComponent()({ }); // node_modules/vuetify/lib/components/VEmptyState/VEmptyState.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VEmptyState/VEmptyState.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VEmptyState/VEmptyState.css"; var makeVEmptyStateProps = propsFactory({ actionText: String, bgColor: String, @@ -7965,7 +7296,7 @@ var VEmptyState = genericComponent()({ }); // node_modules/vuetify/lib/components/VFab/VFab.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VFab/VFab.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VFab/VFab.css"; var makeVFabProps = propsFactory({ app: Boolean, appear: Boolean, @@ -8064,7 +7395,7 @@ var VFab = genericComponent()({ }); // node_modules/vuetify/lib/components/VFooter/VFooter.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VFooter/VFooter.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VFooter/VFooter.css"; var makeVFooterProps = propsFactory({ app: Boolean, color: String, @@ -8140,13 +7471,13 @@ var VFooter = genericComponent()({ }); // node_modules/vuetify/lib/components/VHotkey/VHotkey.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VHotkey/VHotkey.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VHotkey/VHotkey.css"; // node_modules/vuetify/lib/components/VKbd/index.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VKbd/VKbd.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VKbd/VKbd.css"; // node_modules/vuetify/lib/components/VKbd/VKbd.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VKbd/VKbd.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VKbd/VKbd.css"; var makeVKbdProps = propsFactory({ color: String, ...makeBorderProps(), @@ -8550,7 +7881,7 @@ var VHover = genericComponent()({ }); // node_modules/vuetify/lib/components/VInfiniteScroll/VInfiniteScroll.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VInfiniteScroll/VInfiniteScroll.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VInfiniteScroll/VInfiniteScroll.css"; var makeVInfiniteScrollProps = propsFactory({ color: String, direction: { @@ -8808,7 +8139,7 @@ var VInfiniteScroll = genericComponent()({ }); // node_modules/vuetify/lib/components/VItemGroup/VItemGroup.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VItemGroup/VItemGroup.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VItemGroup/VItemGroup.css"; var VItemGroupSymbol = /* @__PURE__ */ Symbol.for("vuetify:v-item-group"); var makeVItemGroupProps = propsFactory({ ...makeComponentProps(), @@ -8884,7 +8215,7 @@ var VItem = genericComponent()({ }); // node_modules/vuetify/lib/components/VLayout/VLayout.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VLayout/VLayout.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VLayout/VLayout.css"; var makeVLayoutProps = propsFactory({ ...makeComponentProps(), ...makeDimensionProps(), @@ -8920,7 +8251,7 @@ var VLayout = genericComponent()({ }); // node_modules/vuetify/lib/components/VLayout/VLayoutItem.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VLayout/VLayoutItem.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VLayout/VLayoutItem.css"; var makeVLayoutItemProps = propsFactory({ position: { type: String, @@ -9019,7 +8350,7 @@ var VLazy = genericComponent()({ }); // node_modules/vuetify/lib/components/VLocaleProvider/VLocaleProvider.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VLocaleProvider/VLocaleProvider.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VLocaleProvider/VLocaleProvider.css"; var makeVLocaleProviderProps = propsFactory({ locale: String, fallbackLocale: String, @@ -9061,7 +8392,7 @@ var VNoSsr = defineComponent({ }); // node_modules/vuetify/lib/components/VNumberInput/VNumberInput.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VNumberInput/VNumberInput.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VNumberInput/VNumberInput.css"; // node_modules/vuetify/lib/components/VNumberInput/hold.js var HOLD_REPEAT = 50; @@ -9502,7 +8833,7 @@ var VNumberInput = genericComponent()({ }); // node_modules/vuetify/lib/components/VOtpInput/VOtpInput.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VOtpInput/VOtpInput.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VOtpInput/VOtpInput.css"; var makeVOtpInputProps = propsFactory({ autofocus: Boolean, divider: String, @@ -9753,7 +9084,7 @@ var VOtpInput = genericComponent()({ }); // node_modules/vuetify/lib/components/VParallax/VParallax.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VParallax/VParallax.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VParallax/VParallax.css"; function floor(val) { return Math.floor(Math.abs(val)) * Math.sign(val); } @@ -9865,7 +9196,7 @@ var VRadio = genericComponent()({ }); // node_modules/vuetify/lib/components/VRadioGroup/VRadioGroup.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VRadioGroup/VRadioGroup.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VRadioGroup/VRadioGroup.css"; var makeVRadioGroupProps = propsFactory({ height: { type: [Number, String], @@ -9956,7 +9287,7 @@ var VRadioGroup = genericComponent()({ }); // node_modules/vuetify/lib/components/VRangeSlider/VRangeSlider.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSlider/VSlider.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSlider/VSlider.css"; var makeVRangeSliderProps = propsFactory({ ...makeFocusProps(), ...makeVInputProps(), @@ -10175,7 +9506,7 @@ var VRangeSlider = genericComponent()({ }); // node_modules/vuetify/lib/components/VRating/VRating.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VRating/VRating.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VRating/VRating.css"; var makeVRatingProps = propsFactory({ name: String, itemAriaLabel: { @@ -10399,7 +9730,7 @@ var VRating = genericComponent()({ }); // node_modules/vuetify/lib/components/VSkeletonLoader/VSkeletonLoader.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSkeletonLoader/VSkeletonLoader.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSkeletonLoader/VSkeletonLoader.css"; var rootTypes = { actions: "button@2", article: "heading, paragraph", @@ -11072,7 +10403,7 @@ var VSparkline = genericComponent()({ }); // node_modules/vuetify/lib/components/VSpeedDial/VSpeedDial.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSpeedDial/VSpeedDial.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSpeedDial/VSpeedDial.css"; var makeVSpeedDialProps = propsFactory({ ...makeComponentProps(), ...makeVMenuProps({ @@ -11138,7 +10469,7 @@ var VSpeedDial = genericComponent()({ }); // node_modules/vuetify/lib/components/VStepper/VStepper.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VStepper/VStepper.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VStepper/VStepper.css"; // node_modules/vuetify/lib/components/VStepper/shared.js var VStepperSymbol = /* @__PURE__ */ Symbol.for("vuetify:v-stepper"); @@ -11224,7 +10555,7 @@ var VStepperActions = genericComponent()({ var VStepperHeader = createSimpleFunctional("v-stepper-header"); // node_modules/vuetify/lib/components/VStepper/VStepperItem.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VStepper/VStepperItem.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VStepper/VStepperItem.css"; var makeStepperItemProps = propsFactory({ color: String, title: String, @@ -11564,180 +10895,8 @@ var VStepper = genericComponent()({ } }); -// node_modules/vuetify/lib/components/VSwitch/VSwitch.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSwitch/VSwitch.css"; -var makeVSwitchProps = propsFactory({ - indeterminate: Boolean, - inset: Boolean, - flat: Boolean, - loading: { - type: [Boolean, String], - default: false - }, - ...makeVInputProps(), - ...makeVSelectionControlProps() -}, "VSwitch"); -var VSwitch = genericComponent()({ - name: "VSwitch", - inheritAttrs: false, - props: makeVSwitchProps(), - emits: { - "update:focused": (focused) => true, - "update:modelValue": (value) => true, - "update:indeterminate": (value) => true - }, - setup(props, _ref) { - let { - attrs, - slots - } = _ref; - const indeterminate = useProxiedModel(props, "indeterminate"); - const model = useProxiedModel(props, "modelValue"); - const { - loaderClasses - } = useLoader(props); - const { - isFocused, - focus, - blur - } = useFocus(props); - const control = ref(); - const inputRef = ref(); - const isForcedColorsModeActive = SUPPORTS_MATCH_MEDIA && window.matchMedia("(forced-colors: active)").matches; - const loaderColor = toRef(() => { - return typeof props.loading === "string" && props.loading !== "" ? props.loading : props.color; - }); - const uid = useId(); - const id = toRef(() => props.id || `switch-${uid}`); - function onChange() { - if (indeterminate.value) { - indeterminate.value = false; - } - } - function onTrackClick(e) { - e.stopPropagation(); - e.preventDefault(); - control.value?.input?.click(); - } - useRender(() => { - const [rootAttrs, controlAttrs] = filterInputAttrs(attrs); - const inputProps = VInput.filterProps(props); - const controlProps = VSelectionControl.filterProps(props); - return createVNode(VInput, mergeProps({ - "ref": inputRef, - "class": ["v-switch", { - "v-switch--flat": props.flat - }, { - "v-switch--inset": props.inset - }, { - "v-switch--indeterminate": indeterminate.value - }, loaderClasses.value, props.class] - }, rootAttrs, inputProps, { - "modelValue": model.value, - "onUpdate:modelValue": ($event) => model.value = $event, - "id": id.value, - "focused": isFocused.value, - "style": props.style - }), { - ...slots, - default: (_ref2) => { - let { - id: id2, - messagesId, - isDisabled, - isReadonly, - isValid - } = _ref2; - const slotProps = { - model, - isValid - }; - return createVNode(VSelectionControl, mergeProps({ - "ref": control - }, controlProps, { - "modelValue": model.value, - "onUpdate:modelValue": [($event) => model.value = $event, onChange], - "id": id2.value, - "aria-describedby": messagesId.value, - "type": "checkbox", - "aria-checked": indeterminate.value ? "mixed" : void 0, - "disabled": isDisabled.value, - "readonly": isReadonly.value, - "onFocus": focus, - "onBlur": blur - }, controlAttrs), { - ...slots, - default: (_ref3) => { - let { - backgroundColorClasses, - backgroundColorStyles - } = _ref3; - return createBaseVNode("div", { - "class": normalizeClass(["v-switch__track", !isForcedColorsModeActive ? backgroundColorClasses.value : void 0]), - "style": normalizeStyle(backgroundColorStyles.value), - "onClick": onTrackClick - }, [slots["track-true"] && createBaseVNode("div", { - "key": "prepend", - "class": "v-switch__track-true" - }, [slots["track-true"](slotProps)]), slots["track-false"] && createBaseVNode("div", { - "key": "append", - "class": "v-switch__track-false" - }, [slots["track-false"](slotProps)])]); - }, - input: (_ref4) => { - let { - inputNode, - icon, - backgroundColorClasses, - backgroundColorStyles - } = _ref4; - return createBaseVNode(Fragment, null, [inputNode, createBaseVNode("div", { - "class": normalizeClass(["v-switch__thumb", { - "v-switch__thumb--filled": icon || props.loading - }, props.inset || isForcedColorsModeActive ? void 0 : backgroundColorClasses.value]), - "style": normalizeStyle(props.inset ? void 0 : backgroundColorStyles.value) - }, [slots.thumb ? createVNode(VDefaultsProvider, { - "defaults": { - VIcon: { - icon, - size: "x-small" - } - } - }, { - default: () => [slots.thumb({ - ...slotProps, - icon - })] - }) : createVNode(VScaleTransition, null, { - default: () => [!props.loading ? icon && createVNode(VIcon, { - "key": String(icon), - "icon": icon, - "size": "x-small" - }, null) : createVNode(LoaderSlot, { - "name": "v-switch", - "active": true, - "color": isValid.value === false ? void 0 : loaderColor.value - }, { - default: (slotProps2) => slots.loader ? slots.loader(slotProps2) : createVNode(VProgressCircular, { - "active": slotProps2.isActive, - "color": slotProps2.color, - "indeterminate": true, - "size": "16", - "width": "2" - }, null) - })] - })])]); - } - }); - } - }); - }); - return forwardRefs({}, inputRef); - } -}); - // node_modules/vuetify/lib/components/VSystemBar/VSystemBar.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSystemBar/VSystemBar.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VSystemBar/VSystemBar.css"; var makeVSystemBarProps = propsFactory({ color: String, height: [Number, String], @@ -11795,7 +10954,7 @@ var VSystemBar = genericComponent()({ }); // node_modules/vuetify/lib/components/VTabs/VTab.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTabs/VTab.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTabs/VTab.css"; // node_modules/vuetify/lib/components/VTabs/shared.js var VTabsSymbol = /* @__PURE__ */ Symbol.for("vuetify:v-tabs"); @@ -11926,7 +11085,7 @@ var VTab = genericComponent()({ }); // node_modules/vuetify/lib/components/VTabs/VTabs.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTabs/VTabs.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTabs/VTabs.css"; // node_modules/vuetify/lib/components/VTabs/VTabsWindow.js var makeVTabsWindowProps = propsFactory({ @@ -12126,7 +11285,7 @@ var VTabs = genericComponent()({ }); // node_modules/vuetify/lib/components/VThemeProvider/VThemeProvider.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VThemeProvider/VThemeProvider.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VThemeProvider/VThemeProvider.css"; var makeVThemeProviderProps = propsFactory({ withBackground: Boolean, ...makeComponentProps(), @@ -12156,7 +11315,7 @@ var VThemeProvider = genericComponent()({ }); // node_modules/vuetify/lib/components/VTimeline/VTimeline.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTimeline/VTimeline.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTimeline/VTimeline.css"; // node_modules/vuetify/lib/components/VTimeline/VTimelineDivider.js var makeVTimelineDividerProps = propsFactory({ @@ -12407,10 +11566,10 @@ var VTimeline = genericComponent()({ }); // node_modules/vuetify/lib/components/VTimePicker/VTimePicker.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTimePicker/VTimePicker.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTimePicker/VTimePicker.css"; // node_modules/vuetify/lib/components/VTimePicker/VTimePickerClock.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTimePicker/VTimePickerClock.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTimePicker/VTimePickerClock.css"; var makeVTimePickerClockProps = propsFactory({ allowedValues: Function, ampm: Boolean, @@ -12654,7 +11813,7 @@ var VTimePickerClock = genericComponent()({ }); // node_modules/vuetify/lib/components/VTimePicker/VTimePickerControls.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTimePicker/VTimePickerControls.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTimePicker/VTimePickerControls.css"; // node_modules/vuetify/lib/components/VTimePicker/VTimePickerField.js var makeVTimePickerFieldProps = propsFactory({ @@ -13328,7 +12487,7 @@ var VTreeviewGroup = genericComponent()({ }); // node_modules/vuetify/lib/components/VTreeview/VTreeviewItem.js -import "/home/david/Documents/vscode/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTreeview/VTreeviewItem.css"; +import "/home/david/gitea_repo/personal_development/ServerManagerWebApp/frontend/node_modules/vuetify/lib/components/VTreeview/VTreeviewItem.css"; // node_modules/vuetify/lib/components/VTreeview/shared.js var VTreeviewSymbol = /* @__PURE__ */ Symbol.for("vuetify:v-treeview"); diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components.js.map index 871ba04..e03538d 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components.js.map +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components.js.map @@ -1,7 +1,7 @@ { "version": 3, - "sources": ["../../vuetify/src/components/VAutocomplete/VAutocomplete.tsx", "../../vuetify/src/components/VBadge/VBadge.tsx", "../../vuetify/src/components/VBanner/VBanner.tsx", "../../vuetify/src/components/VBanner/VBannerActions.tsx", "../../vuetify/src/components/VBanner/VBannerText.ts", "../../vuetify/src/components/VBottomNavigation/VBottomNavigation.tsx", "../../vuetify/src/components/VBottomSheet/VBottomSheet.tsx", "../../vuetify/src/components/VCalendar/VCalendar.tsx", "../../vuetify/src/labs/VIconBtn/VIconBtn.tsx", "../../vuetify/src/components/VCalendar/util/dateTimeUtils.ts", "../../vuetify/src/components/VCalendar/util/timestamp.ts", "../../vuetify/src/components/VCalendar/composables/times.ts", "../../vuetify/src/components/VCalendar/composables/calendarBase.ts", "../../vuetify/src/components/VCalendar/composables/calendarWithIntervals.ts", "../../vuetify/src/components/VCalendar/VCalendarDaily.tsx", "../../vuetify/src/components/VCalendar/util/parser.ts", "../../vuetify/src/components/VCalendar/VCalendarCategory.tsx", "../../vuetify/src/components/VCalendar/VCalendarWeekly.tsx", "../../vuetify/src/components/VCalendar/composables/calendarWithEvents.tsx", "../../vuetify/src/components/VCalendar/modes/common.ts", "../../vuetify/src/components/VCalendar/modes/column.ts", "../../vuetify/src/components/VCalendar/modes/stack.ts", "../../vuetify/src/components/VCalendar/modes/index.ts", "../../vuetify/src/components/VCalendar/util/events.ts", "../../vuetify/src/components/VCarousel/VCarousel.tsx", "../../vuetify/src/components/VWindow/VWindow.tsx", "../../vuetify/src/components/VWindow/VWindowItem.tsx", "../../vuetify/src/components/VCarousel/VCarouselItem.tsx", "../../vuetify/src/components/VCode/index.ts", "../../vuetify/src/components/VColorPicker/VColorPicker.tsx", "../../vuetify/src/components/VColorPicker/VColorPickerCanvas.tsx", "../../vuetify/src/components/VColorPicker/VColorPickerEdit.tsx", "../../vuetify/src/components/VColorPicker/util/index.ts", "../../vuetify/src/components/VColorPicker/VColorPickerPreview.tsx", "../../vuetify/src/components/VColorPicker/VColorPickerSwatches.tsx", "../../vuetify/src/util/colors.ts", "../../vuetify/src/labs/VPicker/VPicker.tsx", "../../vuetify/src/labs/VPicker/VPickerTitle.ts", "../../vuetify/src/components/VCombobox/VCombobox.tsx", "../../vuetify/src/components/VConfirmEdit/VConfirmEdit.tsx", "../../vuetify/src/components/VDataIterator/composables/items.ts", "../../vuetify/src/components/VDataIterator/VDataIterator.tsx", "../../vuetify/src/components/VDatePicker/VDatePicker.tsx", "../../vuetify/src/components/VDatePicker/VDatePickerControls.tsx", "../../vuetify/src/components/VDatePicker/VDatePickerHeader.tsx", "../../vuetify/src/components/VDatePicker/VDatePickerMonth.tsx", "../../vuetify/src/composables/calendar.ts", "../../vuetify/src/components/VDatePicker/VDatePickerMonths.tsx", "../../vuetify/src/components/VDatePicker/VDatePickerYears.tsx", "../../vuetify/src/components/VEmptyState/VEmptyState.tsx", "../../vuetify/src/components/VFab/VFab.tsx", "../../vuetify/src/components/VFooter/VFooter.tsx", "../../vuetify/src/components/VHotkey/VHotkey.tsx", "../../vuetify/src/components/VKbd/index.ts", "../../vuetify/src/components/VKbd/VKbd.tsx", "../../vuetify/src/components/VHover/VHover.tsx", "../../vuetify/src/components/VInfiniteScroll/VInfiniteScroll.tsx", "../../vuetify/src/components/VItemGroup/VItemGroup.tsx", "../../vuetify/src/components/VItemGroup/VItem.tsx", "../../vuetify/src/components/VLayout/VLayout.tsx", "../../vuetify/src/components/VLayout/VLayoutItem.tsx", "../../vuetify/src/components/VLazy/VLazy.tsx", "../../vuetify/src/components/VLocaleProvider/VLocaleProvider.tsx", "../../vuetify/src/components/VNoSsr/VNoSsr.tsx", "../../vuetify/src/components/VNumberInput/VNumberInput.tsx", "../../vuetify/src/components/VNumberInput/hold.ts", "../../vuetify/src/components/VOtpInput/VOtpInput.tsx", "../../vuetify/src/components/VParallax/VParallax.tsx", "../../vuetify/src/components/VRadio/VRadio.tsx", "../../vuetify/src/components/VRadioGroup/VRadioGroup.tsx", "../../vuetify/src/components/VRangeSlider/VRangeSlider.tsx", "../../vuetify/src/components/VRating/VRating.tsx", "../../vuetify/src/components/VSkeletonLoader/VSkeletonLoader.tsx", "../../vuetify/src/components/VSlideGroup/VSlideGroupItem.tsx", "../../vuetify/src/components/VSnackbarQueue/VSnackbarQueue.tsx", "../../vuetify/src/components/VSparkline/util/line.ts", "../../vuetify/src/components/VSparkline/VBarline.tsx", "../../vuetify/src/components/VSparkline/util/path.ts", "../../vuetify/src/components/VSparkline/VTrendline.tsx", "../../vuetify/src/components/VSparkline/VSparkline.tsx", "../../vuetify/src/components/VSpeedDial/VSpeedDial.tsx", "../../vuetify/src/components/VStepper/VStepper.tsx", "../../vuetify/src/components/VStepper/shared.ts", "../../vuetify/src/components/VStepper/VStepperActions.tsx", "../../vuetify/src/components/VStepper/VStepperHeader.ts", "../../vuetify/src/components/VStepper/VStepperItem.tsx", "../../vuetify/src/components/VStepper/VStepperWindow.tsx", "../../vuetify/src/components/VStepper/VStepperWindowItem.tsx", "../../vuetify/src/components/VSwitch/VSwitch.tsx", "../../vuetify/src/components/VSystemBar/VSystemBar.tsx", "../../vuetify/src/components/VTabs/VTab.tsx", "../../vuetify/src/components/VTabs/shared.ts", "../../vuetify/src/components/VTabs/VTabs.tsx", "../../vuetify/src/components/VTabs/VTabsWindow.tsx", "../../vuetify/src/components/VTabs/VTabsWindowItem.tsx", "../../vuetify/src/components/VThemeProvider/VThemeProvider.tsx", "../../vuetify/src/components/VTimeline/VTimeline.tsx", "../../vuetify/src/components/VTimeline/VTimelineDivider.tsx", "../../vuetify/src/components/VTimeline/VTimelineItem.tsx", "../../vuetify/src/components/VTimePicker/VTimePicker.tsx", "../../vuetify/src/components/VTimePicker/VTimePickerClock.tsx", "../../vuetify/src/components/VTimePicker/VTimePickerControls.tsx", "../../vuetify/src/components/VTimePicker/VTimePickerField.tsx", "../../vuetify/src/components/VTimePicker/util.ts", "../../vuetify/src/components/VTreeview/VTreeviewGroup.tsx", "../../vuetify/src/components/VTreeview/VTreeviewItem.tsx", "../../vuetify/src/components/VTreeview/shared.ts", "../../vuetify/src/components/VTreeview/VTreeviewChildren.tsx", "../../vuetify/src/components/VTreeview/VTreeview.tsx", "../../vuetify/src/components/VValidation/VValidation.tsx"], - "sourcesContent": ["// Styles\nimport './VAutocomplete.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDivider } from '@/components/VDivider'\nimport { VIcon } from '@/components/VIcon'\nimport { useInputIcon } from '@/components/VInput/InputIcon'\nimport { VList, VListItem, VListSubheader } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { makeSelectProps } from '@/components/VSelect/VSelect'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from '../VSelect/useScrolling'\nimport { useTextColor } from '@/composables/color'\nimport { highlightResult, makeFilterProps, useFilter } from '@/composables/filter'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { useMenuActivator } from '@/composables/menuActivator'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, toRef, watch } from 'vue'\nimport {\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n genericComponent,\n IN_BROWSER,\n matchesSelector,\n noop,\n omit,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val = [T] extends [Primitive]\n ? T\n : (ReturnObject extends true ? T : any)\n\ntype Value =\n Multiple extends true\n ? readonly Val[]\n : Val | null\n\nexport const makeVAutocompleteProps = propsFactory({\n autoSelectFirst: {\n type: [Boolean, String] as PropType,\n },\n clearOnSelect: Boolean,\n search: String,\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty']),\n}, 'VAutocomplete')\n\ntype ItemType = T extends readonly (infer U)[] ? U : never\n\nexport const VAutocomplete = genericComponent,\n ReturnObject extends boolean = false,\n Multiple extends boolean = false,\n V extends Value = Value\n>(\n props: {\n items?: T\n itemTitle?: SelectItemKey>\n itemValue?: SelectItemKey>\n itemProps?: SelectItemKey>\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V | null\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: Omit & {\n item: { item: ListItem, index: number, props: Record }\n chip: { item: ListItem, index: number, props: Record }\n selection: { item: ListItem, index: number }\n subheader: { props: Record, index: number }\n divider: { props: Record, index: number }\n 'prepend-item': never\n 'append-item': never\n 'no-data': never\n }\n) => GenericProps>()({\n name: 'VAutocomplete',\n\n props: makeVAutocompleteProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:search': (value: any) => true,\n 'update:modelValue': (value: any) => true,\n 'update:menu': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\n const isFocused = shallowRef(false)\n const isPristine = shallowRef(true)\n const listHasFocus = shallowRef(false)\n const vMenuRef = ref()\n const vVirtualScrollRef = ref()\n const selectionIndex = shallowRef(-1)\n const _searchLock = shallowRef(null)\n const { items, transformIn, transformOut } = useItems(props)\n const { textColorClasses, textColorStyles } = useTextColor(() => vTextFieldRef.value?.color)\n const { InputIcon } = useInputIcon(props)\n const search = useProxiedModel(props, 'search', '')\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(v === null ? [null] : wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function' ? props.counterValue(model.value)\n : typeof props.counterValue === 'number' ? props.counterValue\n : model.value.length\n })\n const form = useForm(props)\n const { filteredItems, getMatches } = useFilter(\n props,\n items,\n () => _searchLock.value ?? (isPristine.value ? '' : search.value))\n\n const displayItems = computed(() => {\n if (props.hideSelected && _searchLock.value === null) {\n return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value))\n }\n return filteredItems.value\n })\n\n const closableChips = toRef(() => props.closableChips && !form.isReadonly.value && !form.isDisabled.value)\n const hasChips = computed(() => !!(props.chips || slots.chip))\n const hasSelectionSlot = computed(() => hasChips.value || !!slots.selection)\n\n const selectedValues = computed(() => model.value.map(selection => selection.props.value))\n\n const firstSelectableItem = computed(() => displayItems.value.find(x => x.type === 'item' && !x.props.disabled))\n\n const highlightFirst = computed(() => {\n const selectFirst = props.autoSelectFirst === true ||\n (props.autoSelectFirst === 'exact' && search.value === firstSelectableItem.value?.title)\n return selectFirst &&\n displayItems.value.length > 0 &&\n !isPristine.value &&\n !listHasFocus.value\n })\n\n const menuDisabled = computed(() => (\n (props.hideNoData && !displayItems.value.length) ||\n form.isReadonly.value || form.isDisabled.value\n ))\n const _menu = useProxiedModel(props, 'menu')\n const menu = computed({\n get: () => _menu.value,\n set: v => {\n if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return\n if (v && menuDisabled.value) return\n _menu.value = v\n },\n })\n\n const { menuId, ariaExpanded, ariaControls } = useMenuActivator(props, menu)\n\n const listRef = ref()\n const listEvents = useScrolling(listRef, vTextFieldRef)\n function onClear (e: MouseEvent) {\n if (props.openOnClear) {\n menu.value = true\n }\n\n search.value = ''\n }\n function onMousedownControl () {\n if (menuDisabled.value) return\n\n menu.value = true\n }\n function onMousedownMenuIcon (e: MouseEvent) {\n if (menuDisabled.value) return\n\n if (isFocused.value) {\n e.preventDefault()\n e.stopPropagation()\n }\n menu.value = !menu.value\n }\n function onListKeydown (e: KeyboardEvent) {\n if (checkPrintable(e) || e.key === 'Backspace') {\n vTextFieldRef.value?.focus()\n }\n }\n // eslint-disable-next-line complexity\n function onKeydown (e: KeyboardEvent) {\n if (form.isReadonly.value) return\n\n const selectionStart = vTextFieldRef.value?.selectionStart\n const length = model.value.length\n\n if (['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown'].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape'].includes(e.key)) {\n menu.value = false\n }\n\n if (\n highlightFirst.value &&\n ['Enter', 'Tab'].includes(e.key) &&\n firstSelectableItem.value &&\n !model.value.some(({ value }) => value === firstSelectableItem.value!.value)\n ) {\n select(firstSelectableItem.value)\n }\n\n if (e.key === 'ArrowDown' && highlightFirst.value) {\n listRef.value?.focus('next')\n }\n\n if (['Backspace', 'Delete'].includes(e.key)) {\n if (\n !props.multiple &&\n hasSelectionSlot.value &&\n model.value.length > 0 &&\n !search.value\n ) return select(model.value[0], false)\n\n if (~selectionIndex.value) {\n e.preventDefault()\n const originalSelectionIndex = selectionIndex.value\n select(model.value[selectionIndex.value], false)\n\n selectionIndex.value = originalSelectionIndex >= length - 1 ? (length - 2) : originalSelectionIndex\n } else if (e.key === 'Backspace' && !search.value) {\n selectionIndex.value = length - 1\n }\n\n return\n }\n\n if (!props.multiple) return\n\n if (e.key === 'ArrowLeft') {\n if (selectionIndex.value < 0 && selectionStart && selectionStart > 0) return\n\n const prev = selectionIndex.value > -1\n ? selectionIndex.value - 1\n : length - 1\n\n if (model.value[prev]) {\n selectionIndex.value = prev\n } else {\n const searchLength = search.value?.length ?? null\n selectionIndex.value = -1\n vTextFieldRef.value?.setSelectionRange(searchLength, searchLength)\n }\n } else if (e.key === 'ArrowRight') {\n if (selectionIndex.value < 0) return\n\n const next = selectionIndex.value + 1\n\n if (model.value[next]) {\n selectionIndex.value = next\n } else {\n selectionIndex.value = -1\n vTextFieldRef.value?.setSelectionRange(0, 0)\n }\n } else if (~selectionIndex.value && checkPrintable(e)) {\n selectionIndex.value = -1\n }\n }\n\n function onChange (e: Event) {\n if (matchesSelector(vTextFieldRef.value, ':autofill') || matchesSelector(vTextFieldRef.value, ':-webkit-autofill')) {\n const item = items.value.find(item => item.title === (e.target as HTMLInputElement).value)\n if (item) {\n select(item)\n }\n }\n }\n\n function onAfterEnter () {\n if (props.eager) {\n vVirtualScrollRef.value?.calculateVisibleItems()\n }\n }\n function onAfterLeave () {\n if (isFocused.value) {\n isPristine.value = true\n vTextFieldRef.value?.focus()\n }\n _searchLock.value = null\n }\n\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n setTimeout(() => {\n listHasFocus.value = true\n })\n }\n function onFocusout (e: FocusEvent) {\n listHasFocus.value = false\n }\n function onUpdateModelValue (v: any) {\n if (v == null || (v === '' && !props.multiple && !hasSelectionSlot.value)) model.value = []\n }\n\n const isSelecting = shallowRef(false)\n\n /** @param set - null means toggle */\n function select (item: ListItem | undefined, set: boolean | null = true) {\n if (!item || item.props.disabled) return\n\n if (props.multiple) {\n const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value))\n const add = set == null ? !~index : set\n\n if (~index) {\n const value = add ? [...model.value, item] : [...model.value]\n value.splice(index, 1)\n model.value = value\n } else if (add) {\n model.value = [...model.value, item]\n }\n\n if (props.clearOnSelect) {\n search.value = ''\n }\n } else {\n const add = set !== false\n model.value = add ? [item] : []\n _searchLock.value = isPristine.value ? '' : (search.value ?? '')\n search.value = add && !hasSelectionSlot.value ? item.title : ''\n\n // watch for search watcher to trigger\n nextTick(() => {\n menu.value = false\n isPristine.value = true\n })\n }\n }\n\n watch(isFocused, (val, oldVal) => {\n if (val === oldVal) return\n\n if (val) {\n isSelecting.value = true\n search.value = (props.multiple || hasSelectionSlot.value) ? '' : String(model.value.at(-1)?.props.title ?? '')\n isPristine.value = true\n\n nextTick(() => isSelecting.value = false)\n } else {\n if (!props.multiple && search.value == null) model.value = []\n menu.value = false\n if (!isPristine.value && search.value) {\n _searchLock.value = search.value\n }\n search.value = ''\n selectionIndex.value = -1\n }\n })\n\n watch(search, val => {\n if (!isFocused.value || isSelecting.value) return\n\n if (val) menu.value = true\n\n isPristine.value = !val\n })\n\n watch(menu, val => {\n if (!props.hideSelected && val && model.value.length && isPristine.value) {\n const index = displayItems.value.findIndex(\n item => model.value.some(s => item.value === s.value)\n )\n IN_BROWSER && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n if (val) _searchLock.value = null\n })\n\n watch(items, (newVal, oldVal) => {\n if (menu.value) return\n\n if (isFocused.value && !oldVal.length && newVal.length) {\n menu.value = true\n }\n })\n\n useRender(() => {\n const hasList = !!(\n (!props.hideNoData || displayItems.value.length) ||\n slots['prepend-item'] ||\n slots['append-item'] ||\n slots['no-data']\n )\n const isDirty = model.value.length > 0\n const textFieldProps = VTextField.filterProps(props)\n\n return (\n -1,\n },\n props.class,\n ]}\n style={ props.style }\n readonly={ form.isReadonly.value }\n placeholder={ isDirty ? undefined : props.placeholder }\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onKeydown={ onKeydown }\n aria-expanded={ ariaExpanded.value }\n aria-controls={ ariaControls.value }\n >\n {{\n ...slots,\n default: ({ id }) => (\n <>\n \n { hasList && (\n e.preventDefault() }\n onKeydown={ onListKeydown }\n onFocusin={ onFocusin }\n onFocusout={ onFocusout }\n tabindex=\"-1\"\n selectable\n aria-live=\"polite\"\n aria-labelledby={ `${id.value}-label` }\n aria-multiselectable={ props.multiple }\n color={ props.itemColor ?? props.color }\n { ...listEvents }\n { ...props.listProps }\n >\n { slots['prepend-item']?.() }\n\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n \n ))}\n\n \n { ({ item, index, itemRef }) => {\n const itemProps = mergeProps(item.props, {\n ref: itemRef,\n key: item.value,\n active: (highlightFirst.value && item === firstSelectableItem.value) ? true : undefined,\n onClick: () => select(item, null),\n 'aria-posinset': index + 1,\n 'aria-setsize': displayItems.value.length,\n })\n\n if (item.type === 'divider') {\n return slots.divider?.({ props: item.raw, index }) ?? (\n \n )\n }\n\n if (item.type === 'subheader') {\n return slots.subheader?.({ props: item.raw, index }) ?? (\n \n )\n }\n\n return slots.item?.({\n item,\n index,\n props: itemProps,\n }) ?? (\n \n {{\n prepend: ({ isSelected }) => (\n <>\n { props.multiple && !props.hideSelected ? (\n event.preventDefault() }\n />\n ) : undefined }\n\n { item.props.prependAvatar && (\n \n )}\n\n { item.props.prependIcon && (\n \n )}\n \n ),\n title: () => {\n return isPristine.value\n ? item.title\n : highlightResult('v-autocomplete', item.title, getMatches(item)?.title)\n },\n }}\n \n )\n }}\n \n\n { slots['append-item']?.() }\n \n )}\n \n\n { model.value.map((item, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(item, false)\n }\n\n const slotProps = mergeProps(VChip.filterProps(item.props), {\n 'onClick:close': onChipClose,\n onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter' && e.key !== ' ') return\n\n e.preventDefault()\n e.stopPropagation()\n\n onChipClose(e)\n },\n onMousedown (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n },\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n })\n\n const hasSlot = hasChips.value ? !!slots.chip : !!slots.selection\n const slotContent = hasSlot\n ? ensureValidVNode(\n hasChips.value\n ? slots.chip!({ item, index, props: slotProps })\n : slots.selection!({ item, index })\n )\n : undefined\n\n if (hasSlot && !slotContent) return undefined\n\n return (\n \n { hasChips.value ? (\n !slots.chip ? (\n \n ) : (\n \n { slotContent }\n \n )\n ) : (\n slotContent ?? (\n \n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n ,\n )}\n \n )\n )}\n \n )\n })}\n \n ),\n 'append-inner': (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { props.menuIcon ? (\n \n ) : undefined }\n { props.appendInnerIcon && (\n \n )}\n \n ),\n }}\n \n )\n })\n\n return forwardRefs({\n isFocused,\n isPristine,\n menu,\n search,\n filteredItems,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VAutocomplete = InstanceType\n", "// Styles\nimport './VBadge.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, useTheme } from '@/composables/theme'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { genericComponent, pickWithRest, propsFactory, useRender } from '@/util'\n\nexport type VBadgeSlots = {\n default: never\n badge: never\n}\n\nexport const makeVBadgeProps = propsFactory({\n bordered: Boolean,\n color: String,\n content: [Number, String],\n dot: Boolean,\n floating: Boolean,\n icon: IconValue,\n inline: Boolean,\n label: {\n type: String,\n default: '$vuetify.badge',\n },\n max: [Number, String],\n modelValue: {\n type: Boolean,\n default: true,\n },\n offsetX: [Number, String],\n offsetY: [Number, String],\n textColor: String,\n\n ...makeComponentProps(),\n ...makeLocationProps({ location: 'top end' } as const),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeTransitionProps({ transition: 'scale-rotate-transition' }),\n ...makeDimensionProps(),\n}, 'VBadge')\n\nexport const VBadge = genericComponent()({\n name: 'VBadge',\n\n inheritAttrs: false,\n\n props: makeVBadgeProps(),\n\n setup (props, ctx) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n const { roundedClasses } = useRounded(props)\n const { t } = useLocale()\n const { textColorClasses, textColorStyles } = useTextColor(() => props.textColor)\n const { themeClasses } = useTheme()\n\n const { locationStyles } = useLocation(props, true, side => {\n const base = props.floating\n ? (props.dot ? 2 : 4)\n : (props.dot ? 8 : 12)\n\n return base + (\n ['top', 'bottom'].includes(side) ? Number(props.offsetY ?? 0)\n : ['left', 'right'].includes(side) ? Number(props.offsetX ?? 0)\n : 0\n )\n })\n\n const { dimensionStyles } = useDimension(props)\n\n useRender(() => {\n const value = Number(props.content)\n const content = (!props.max || isNaN(value)) ? props.content\n : value <= Number(props.max) ? value\n : `${props.max}+`\n\n const [badgeAttrs, attrs] = pickWithRest(ctx.attrs as Record, [\n 'aria-atomic',\n 'aria-label',\n 'aria-live',\n 'role',\n 'title',\n ])\n\n return (\n \n
\n { ctx.slots.default?.() }\n\n \n \n {\n props.dot ? undefined\n : ctx.slots.badge ? ctx.slots.badge?.()\n : props.icon ? \n : content\n }\n \n \n
\n \n )\n })\n\n return {}\n },\n})\n\nexport type VBadge = InstanceType\n", "// Styles\nimport './VBanner.sass'\n\n// Components\nimport { VBannerActions } from './VBannerActions'\nimport { VBannerText } from './VBannerText'\nimport { VAvatar } from '@/components/VAvatar'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { IconValue } from '@/composables/icons'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type VBannerSlots = {\n default: never\n prepend: never\n text: never\n actions: never\n}\n\nexport const makeVBannerProps = propsFactory({\n avatar: String,\n bgColor: String,\n color: String,\n icon: IconValue,\n lines: String as PropType<'one' | 'two' | 'three'>,\n stacked: Boolean,\n sticky: Boolean,\n text: String,\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeDisplayProps({ mobile: null }),\n ...makeElevationProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VBanner')\n\nexport const VBanner = genericComponent()({\n name: 'VBanner',\n\n props: makeVBannerProps(),\n\n setup (props, { slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.bgColor)\n const { borderClasses } = useBorder(props)\n const { densityClasses } = useDensity(props)\n const { displayClasses, mobile } = useDisplay(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n\n const { themeClasses } = provideTheme(props)\n\n const color = toRef(() => props.color)\n const density = toRef(() => props.density)\n\n provideDefaults({ VBannerActions: { color, density } })\n\n useRender(() => {\n const hasText = !!(props.text || slots.text)\n const hasPrependMedia = !!(props.avatar || props.icon)\n const hasPrepend = !!(hasPrependMedia || slots.prepend)\n\n return (\n \n { hasPrepend && (\n
\n { !slots.prepend ? (\n \n ) : (\n \n )}\n
\n )}\n\n
\n { hasText && (\n \n { slots.text?.() ?? props.text }\n \n )}\n\n { slots.default?.() }\n
\n\n { slots.actions && (\n \n )}\n \n )\n })\n },\n})\n\nexport type VBanner = InstanceType\n", "// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVBannerActionsProps = propsFactory({\n color: String,\n density: String,\n\n ...makeComponentProps(),\n}, 'VBannerActions')\n\nexport const VBannerActions = genericComponent()({\n name: 'VBannerActions',\n\n props: makeVBannerActionsProps(),\n\n setup (props, { slots }) {\n provideDefaults({\n VBtn: {\n color: props.color,\n density: props.density,\n slim: true,\n variant: 'text',\n },\n })\n\n useRender(() => (\n \n { slots.default?.() }\n \n ))\n\n return {}\n },\n})\n\nexport type VBannerActions = InstanceType\n", "// Utilities\nimport { createSimpleFunctional } from '@/util'\n\nexport const VBannerText = createSimpleFunctional('v-banner-text')\n\nexport type VBannerText = InstanceType\n", "// Styles\nimport './VBottomNavigation.sass'\n\n// Components\nimport { VBtnToggleSymbol } from '@/components/VBtnToggle/VBtnToggle'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { useSsrBoot } from '@/composables/ssrBoot'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, useTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { GenericProps } from '@/util'\n\nexport const makeVBottomNavigationProps = propsFactory({\n baseColor: String,\n bgColor: String,\n color: String,\n grow: Boolean,\n mode: {\n type: String,\n validator: (v: any) => !v || ['horizontal', 'shift'].includes(v),\n },\n height: {\n type: [Number, String],\n default: 56,\n },\n active: {\n type: Boolean,\n default: true,\n },\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeLayoutItemProps({ name: 'bottom-navigation' }),\n ...makeTagProps({ tag: 'header' }),\n ...makeGroupProps({ selectedClass: 'v-btn--selected' }),\n ...makeThemeProps(),\n}, 'VBottomNavigation')\n\nexport const VBottomNavigation = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: { default: never },\n) => GenericProps>()({\n name: 'VBottomNavigation',\n\n props: makeVBottomNavigationProps(),\n\n emits: {\n 'update:active': (value: any) => true,\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = useTheme()\n const { borderClasses } = useBorder(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.bgColor)\n const { densityClasses } = useDensity(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const { ssrBootStyles } = useSsrBoot()\n const height = computed(() => (\n Number(props.height) -\n (props.density === 'comfortable' ? 8 : 0) -\n (props.density === 'compact' ? 16 : 0)\n ))\n const isActive = useProxiedModel(props, 'active', props.active)\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(() => 'bottom'),\n layoutSize: toRef(() => isActive.value ? height.value : 0),\n elementSize: height,\n active: isActive,\n absolute: toRef(() => props.absolute),\n })\n\n useGroup(props, VBtnToggleSymbol)\n\n provideDefaults({\n VBtn: {\n baseColor: toRef(() => props.baseColor),\n color: toRef(() => props.color),\n density: toRef(() => props.density),\n stacked: toRef(() => props.mode !== 'horizontal'),\n variant: 'text',\n },\n }, { scoped: true })\n\n useRender(() => {\n return (\n \n { slots.default && (\n
\n { slots.default() }\n
\n )}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VBottomNavigation = InstanceType\n", "// Styles\nimport './VBottomSheet.sass'\n\n// Components\nimport { makeVDialogProps, VDialog } from '@/components/VDialog/VDialog'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\n\nexport const makeVBottomSheetProps = propsFactory({\n inset: Boolean,\n\n ...makeVDialogProps({\n transition: 'bottom-sheet-transition',\n }),\n}, 'VBottomSheet')\n\nexport const VBottomSheet = genericComponent()({\n name: 'VBottomSheet',\n\n props: makeVBottomSheetProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n\n useRender(() => {\n const dialogProps = VDialog.filterProps(props)\n\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VBottomSheet = InstanceType\n", "// Styles\nimport './VCalendarCategory.sass'\nimport './VCalendarDaily.sass'\nimport './VCalendarWeekly.sass'\n\n// Components\nimport { VCalendarCategory } from './VCalendarCategory'\nimport { VCalendarDaily } from './VCalendarDaily'\nimport { VCalendarWeekly } from './VCalendarWeekly'\n\n// Composables\nimport { makeCalendarBaseProps } from './composables/calendarBase'\nimport { makeCalendarWithEventsProps, useCalendarWithEvents } from './composables/calendarWithEvents'\nimport { forwardRefs } from '@/composables/forwardRefs'\n\n// Directives\nimport vResize from '@/directives/resize'\n\n// Utilities\nimport { computed, onMounted, onUpdated, ref, watch } from 'vue'\nimport { getParsedCategories } from './util/parser'\nimport {\n copyTimestamp,\n DAY_MIN,\n DAYS_IN_MONTH_MAX,\n DAYS_IN_WEEK,\n getEndOfMonth,\n getStartOfMonth,\n nextDay,\n prevDay,\n relativeDays,\n timestampToDate,\n updateFormatted,\n updateRelative,\n updateWeekday,\n validateTimestamp,\n} from './util/timestamp'\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type {\n CalendarCategory, CalendarCategoryTextFunction,\n CalendarDayBodySlotScope,\n CalendarDaySlotScope, CalendarEvent, CalendarEventParsed,\n CalendarTimestamp,\n} from './types'\nimport type { EventProp, GenericProps, JSXComponent } from '@/util'\n\n// Types\ninterface VCalendarRenderProps {\n start: CalendarTimestamp\n end: CalendarTimestamp\n component: JSXComponent & { filterProps: (props: T) => Partial }\n maxDays: number\n categories: CalendarCategory[]\n}\n\ninterface EventSlotScope {\n event: CalendarEvent\n outside: boolean\n singline: boolean\n overlapsNoon: boolean\n formatTime: (withTime: CalendarTimestamp, ampm: boolean) => string\n timeSummary: () => string\n eventSummary: () => JSX.Element\n eventParsed: CalendarEventParsed\n day: CalendarDaySlotScope\n start: boolean\n end: boolean\n timed: boolean\n}\n\ninterface DaySlotScope extends CalendarTimestamp {\n outside: boolean\n index: number\n week: CalendarTimestamp[]\n}\n\ninterface DayHeaderSlotScope extends CalendarTimestamp {\n index: number\n week: CalendarTimestamp[]\n}\n\ninterface CalendarDayCategorySlotScope extends CalendarDayBodySlotScope {\n category: CalendarCategory\n}\n\nexport const VCalendar = genericComponent}:date`]: EventProp<[Event, CalendarTimestamp]>\n [key: `on${Capitalize}:dayCategory`]: EventProp<[Event, CalendarDayCategorySlotScope]>\n [key: `on${Capitalize}:day`]: EventProp<[Event, CalendarDayBodySlotScope]>\n [key: `on${Capitalize}:event`]: EventProp<[Event, EventSlotScope]>\n [key: `on${Capitalize}:interval`]: EventProp<[Event, CalendarTimestamp]>\n [key: `on${Capitalize}:more`]: EventProp<[Event, CalendarDaySlotScope]>\n [key: `on${Capitalize}:timeCategory`]: EventProp<[Event, CalendarDayCategorySlotScope]>\n [key: `on${Capitalize}:time`]: EventProp<[Event, CalendarDayBodySlotScope]>\n },\n slots: {\n 'category': CalendarDayCategorySlotScope\n 'day': DaySlotScope\n 'day-body': CalendarDayBodySlotScope\n 'day-header': DayHeaderSlotScope\n 'day-label': CalendarTimestamp\n 'day-label-header': CalendarTimestamp\n 'day-month': CalendarTimestamp\n 'event': EventSlotScope\n 'interval': CalendarDayCategorySlotScope\n 'interval-header': never\n },\n) => GenericProps>()({\n name: 'VCalendar',\n\n directives: { vResize },\n\n props: {\n modelValue: {\n type: [String, Number, Date] as PropType,\n validate: validateTimestamp,\n },\n categoryDays: {\n type: [Number, String],\n default: 1,\n validate: (x: any) => isFinite(parseInt(x)) && parseInt(x) > 0,\n },\n categories: {\n type: [Array, String] as PropType,\n default: '',\n },\n categoryText: {\n type: [String, Function] as PropType,\n },\n maxDays: {\n type: Number,\n default: 7,\n },\n categoryHideDynamic: {\n type: Boolean,\n },\n categoryShowAll: {\n type: Boolean,\n },\n categoryForInvalid: {\n type: String,\n default: '',\n },\n\n ...makeCalendarBaseProps(),\n ...makeCalendarWithEventsProps(),\n },\n\n setup (props, { slots, attrs, emit }) {\n const root = ref()\n const base = useCalendarWithEvents(props, slots, attrs)\n\n const lastStart = ref(null)\n const lastEnd = ref(null)\n\n const parsedCategoryDays = computed((): number => {\n return parseInt(String(props.categoryDays)) || 1\n })\n\n const parsedCategories = computed((): CalendarCategory[] => {\n return getParsedCategories(props.categories, props.categoryText)\n })\n\n const renderProps = computed((): VCalendarRenderProps => {\n const around = base.parsedValue.value\n let component: any = null\n let maxDays = props.maxDays\n let categories = parsedCategories.value\n let start = around\n let end = around\n\n switch (props.type) {\n case 'month':\n component = VCalendarWeekly\n start = getStartOfMonth(around)\n end = getEndOfMonth(around)\n break\n case 'week':\n component = VCalendarDaily\n start = base.getStartOfWeek(around)\n end = base.getEndOfWeek(around)\n maxDays = 7\n break\n case 'day':\n component = VCalendarDaily\n maxDays = 1\n break\n case '4day':\n component = VCalendarDaily\n end = relativeDays(copyTimestamp(end), nextDay, 3)\n updateFormatted(end)\n maxDays = 4\n break\n case 'custom-weekly':\n component = VCalendarWeekly\n start = base.parsedStart.value || around\n end = base.parsedEnd.value\n break\n case 'custom-daily':\n component = VCalendarDaily\n start = base.parsedStart.value || around\n end = base.parsedEnd.value\n break\n case 'category':\n const days = parsedCategoryDays.value\n\n component = VCalendarCategory\n end = relativeDays(copyTimestamp(end), nextDay, days)\n updateFormatted(end)\n maxDays = days\n\n categories = getCategoryList(categories)\n break\n default:\n const type = props.type satisfies never\n throw new Error(`${type} is not a valid Calendar type`)\n }\n\n return { component, start, end, maxDays, categories }\n })\n\n const eventWeekdays = computed((): number[] => {\n return base.effectiveWeekdays.value\n })\n\n const categoryMode = computed((): boolean => {\n return props.type === 'category'\n })\n\n const monthLongFormatter = computed(() => {\n return base.getFormatter({\n timeZone: 'UTC', month: 'long',\n })\n })\n\n const monthShortFormatter = computed(() => {\n return base.getFormatter({\n timeZone: 'UTC', month: 'short',\n })\n })\n\n const title = computed((): string => {\n const { start, end } = renderProps.value\n const spanYears = start.year !== end.year\n const spanMonths = spanYears || start.month !== end.month\n\n if (spanYears) {\n return monthShortFormatter.value(start, true) + ' ' + start.year + ' - ' + monthShortFormatter.value(end, true) + ' ' + end.year\n }\n\n if (spanMonths) {\n return monthShortFormatter.value(start, true) + ' - ' + monthShortFormatter.value(end, true) + ' ' + end.year\n } else {\n return monthLongFormatter.value(start, false) + ' ' + start.year\n }\n })\n\n function checkChange (): void {\n const { start, end } = renderProps.value\n if (!lastStart.value || !lastEnd.value ||\n start.date !== lastStart.value.date ||\n end.date !== lastEnd.value.date) {\n lastStart.value = start\n lastEnd.value = end\n emit('change', { start, end })\n }\n }\n\n function move (amount = 1): void {\n const moved = copyTimestamp(base.parsedValue.value)\n const forward = amount > 0\n const mover = forward ? nextDay : prevDay\n const limit = forward ? DAYS_IN_MONTH_MAX : DAY_MIN\n let times = forward ? amount : -amount\n\n while (--times >= 0) {\n switch (props.type) {\n case 'month':\n moved.day = limit\n mover(moved)\n break\n case 'week':\n relativeDays(moved, mover, DAYS_IN_WEEK)\n break\n case 'day':\n relativeDays(moved, mover, 1)\n break\n case '4day':\n relativeDays(moved, mover, 4)\n break\n case 'category':\n relativeDays(moved, mover, parsedCategoryDays.value)\n break\n }\n }\n\n updateWeekday(moved)\n updateFormatted(moved)\n updateRelative(moved, base.times.now)\n\n if (props.modelValue instanceof Date) {\n emit('update:modelValue', timestampToDate(moved))\n } else if (typeof props.modelValue === 'number') {\n emit('update:modelValue', timestampToDate(moved).getTime())\n } else {\n emit('update:modelValue', moved.date)\n }\n\n emit('moved', moved)\n }\n\n function next (amount = 1): void {\n move(amount)\n }\n\n function prev (amount = 1): void {\n move(-amount)\n }\n\n function getCategoryList (categories: CalendarCategory[]): CalendarCategory[] {\n if (!base.noEvents.value) {\n const categoryMap: any = categories.reduce((map: any, category, index) => {\n if (typeof category === 'object' && category.categoryName) map[category.categoryName] = { index, count: 0 }\n else if (typeof category === 'string') map[category] = { index, count: 0 }\n return map\n }, {})\n\n if (!props.categoryHideDynamic || !props.categoryShowAll) {\n let categoryLength = categories.length\n\n base.parsedEvents.value.forEach(ev => {\n let category = ev.category\n\n if (typeof category !== 'string') {\n category = props.categoryForInvalid\n }\n\n if (!category) {\n return\n }\n\n if (category in categoryMap) {\n categoryMap[category].count++\n } else if (!props.categoryHideDynamic) {\n categoryMap[category] = {\n index: categoryLength++,\n count: 1,\n }\n }\n })\n }\n\n if (!props.categoryShowAll) {\n for (const category in categoryMap) {\n if (categoryMap[category].count === 0) {\n delete categoryMap[category]\n }\n }\n }\n\n categories = categories.filter((category: CalendarCategory) => {\n if (typeof category === 'object' && category.categoryName) {\n return categoryMap.hasOwnProperty(category.categoryName)\n } else if (typeof category === 'string') {\n return categoryMap.hasOwnProperty(category)\n }\n return false\n })\n }\n return categories\n }\n\n watch(renderProps, checkChange)\n\n onMounted(() => {\n base.updateEventVisibility()\n checkChange()\n })\n\n onUpdated(() => {\n window.requestAnimationFrame(base.updateEventVisibility)\n })\n\n useRender(() => {\n const { start, end, maxDays, component: Component, categories } = renderProps.value\n return (\n {\n if (attrs['onUpdate:modelValue']) emit('update:modelValue', day.date)\n }}\n v-slots={ base.getScopedSlots() }\n />\n )\n })\n\n return forwardRefs({\n ...base,\n lastStart,\n lastEnd,\n parsedCategoryDays,\n renderProps,\n eventWeekdays,\n categoryMode,\n title,\n monthLongFormatter,\n monthShortFormatter,\n parsedCategories,\n checkChange,\n move,\n next,\n prev,\n getCategoryList,\n }, root)\n },\n})\n\nexport type VCalendar = InstanceType\n", "// Styles\nimport './VIconBtn.scss'\n\n// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeIconSizeProps, useIconSizes } from '@/composables/iconSizes'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\n\n// Utilities\nimport { toDisplayString } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { IconValue } from '@/composables/icons'\nimport type { Variant } from '@/composables/variant'\n\nexport type VIconBtnSlots = {\n default: never\n loader: never\n}\n\nexport type VIconBtnSizes = 'x-small' | 'small' | 'default' | 'large' | 'x-large'\n\nexport const makeVIconBtnProps = propsFactory({\n active: {\n type: Boolean,\n default: undefined,\n },\n activeColor: String,\n activeIcon: [String, Function, Object] as PropType,\n activeVariant: String as PropType,\n baseVariant: {\n type: String as PropType,\n default: 'tonal',\n },\n disabled: Boolean,\n height: [Number, String],\n width: [Number, String],\n hideOverlay: Boolean,\n icon: [String, Function, Object] as PropType,\n iconColor: String,\n loading: Boolean,\n opacity: [Number, String],\n readonly: Boolean,\n rotate: [Number, String],\n size: {\n type: [Number, String] as PropType,\n default: 'default',\n },\n sizes: {\n type: Array as PropType<[VIconBtnSizes, number][]>,\n default: () => ([\n ['x-small', 16],\n ['small', 24],\n ['default', 40],\n ['large', 48],\n ['x-large', 56],\n ]),\n },\n text: {\n type: [String, Number, Boolean],\n default: undefined,\n },\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeElevationProps(),\n ...makeIconSizeProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'button' }),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'flat' } as const),\n}, 'VIconBtn')\n\nexport const VIconBtn = genericComponent()({\n name: 'VIconBtn',\n\n props: makeVIconBtnProps(),\n\n emits: {\n 'update:active': (value: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const isActive = useProxiedModel(props, 'active')\n\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n\n const { colorClasses, colorStyles, variantClasses } = useVariant(() => ({\n color: (() => {\n if (props.disabled) return undefined\n if (!isActive.value) return props.color\n // Use an inline fallback as opposed to setting a default color\n // because non-toggle buttons are default flat whereas toggle\n // buttons are default tonal and active flat. The exact use\n // case for this is a toggle button with no active color.\n return props.activeColor ?? props.color ?? 'surface-variant'\n })(),\n variant: (() => {\n if (isActive.value === undefined) return props.variant\n if (isActive.value) return props.activeVariant ?? props.variant\n return props.baseVariant ?? props.variant\n })(),\n }))\n\n const btnSizeMap = new Map(props.sizes)\n\n function onClick () {\n if (\n props.disabled ||\n props.readonly ||\n isActive.value === undefined ||\n (props.tag === 'a' && attrs.href)\n ) return\n\n isActive.value = !isActive.value\n }\n\n useRender(() => {\n const icon = isActive.value ? props.activeIcon ?? props.icon : props.icon\n\n const _btnSize = props.size as VIconBtnSizes\n const hasNamedSize = btnSizeMap.has(_btnSize)\n const btnSize = hasNamedSize ? btnSizeMap.get(_btnSize) : _btnSize\n const btnHeight = props.height ?? btnSize\n const btnWidth = props.width ?? btnSize\n const { iconSize } = useIconSizes(props, () => new Map(props.iconSizes).get(_btnSize))\n\n const iconProps = {\n icon,\n size: iconSize.value,\n color: props.iconColor,\n opacity: props.opacity,\n }\n\n return (\n \n { genOverlays(!props.hideOverlay, 'v-icon-btn') }\n\n
\n { (!slots.default && icon) ? (\n \n ) : (\n slots.default?.() ?? toDisplayString(props.text),\n }}\n />\n )}\n
\n\n { !!props.loading && (\n \n { slots.loader?.() ?? (\n \n )}\n \n )}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VIconBtn = InstanceType\n", "export function isLeapYear (year: number): boolean {\n return ((year % 4 === 0) && (year % 100 !== 0)) || (year % 400 === 0)\n}\n", "import { isLeapYear } from './dateTimeUtils'\n\n// Types\nimport type { CalendarFormatter, CalendarTimestamp } from '../types'\n\nexport const PARSE_REGEX = /^(\\d{4})-(\\d{1,2})(-(\\d{1,2}))?([^\\d]+(\\d{1,2}))?(:(\\d{1,2}))?(:(\\d{1,2}))?$/\nexport const PARSE_TIME = /(\\d\\d?)(:(\\d\\d?)|)(:(\\d\\d?)|)/\n\nexport const DAYS_IN_MONTH: number[] = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\nexport const DAYS_IN_MONTH_LEAP: number[] = [0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\nexport const DAYS_IN_MONTH_MIN = 28\nexport const DAYS_IN_MONTH_MAX = 31\nexport const MONTH_MAX = 12\nexport const MONTH_MIN = 1\nexport const DAY_MIN = 1\nexport const DAYS_IN_WEEK = 7\nexport const MINUTES_IN_HOUR = 60\nexport const MINUTE_MAX = 59\nexport const MINUTES_IN_DAY = 24 * 60\nexport const HOURS_IN_DAY = 24\nexport const HOUR_MAX = 23\nexport const FIRST_HOUR = 0\nexport const OFFSET_YEAR = 10000\nexport const OFFSET_MONTH = 100\nexport const OFFSET_HOUR = 100\nexport const OFFSET_TIME = 10000\n\ntype CalendarTimestampFormatOptions = (timestamp: CalendarTimestamp, short: boolean) => Intl.DateTimeFormatOptions\ntype CalendarTimestampOperation = (timestamp: CalendarTimestamp) => CalendarTimestamp\nexport type VTime = number | string | {\n hour: number\n minute: number\n}\n\nexport type VTimestampInput = number | string | Date;\n\nexport function getStartOfWeek (timestamp: CalendarTimestamp, weekdays: number[], today?: CalendarTimestamp): CalendarTimestamp {\n const start = copyTimestamp(timestamp)\n findWeekday(start, weekdays[0], prevDay)\n updateFormatted(start)\n if (today) {\n updateRelative(start, today, start.hasTime)\n }\n\n return start\n}\n\nexport function getEndOfWeek (timestamp: CalendarTimestamp, weekdays: number[], today?: CalendarTimestamp): CalendarTimestamp {\n const end = copyTimestamp(timestamp)\n findWeekday(end, weekdays[weekdays.length - 1])\n updateFormatted(end)\n if (today) {\n updateRelative(end, today, end.hasTime)\n }\n\n return end\n}\n\nexport function getStartOfMonth (timestamp: CalendarTimestamp): CalendarTimestamp {\n const start = copyTimestamp(timestamp)\n start.day = DAY_MIN\n updateWeekday(start)\n updateFormatted(start)\n\n return start\n}\n\nexport function getEndOfMonth (timestamp: CalendarTimestamp): CalendarTimestamp {\n const end = copyTimestamp(timestamp)\n end.day = daysInMonth(end.year, end.month)\n updateWeekday(end)\n updateFormatted(end)\n\n return end\n}\n\nexport function validateNumber (input: any): boolean {\n return isFinite(parseInt(input))\n}\n\nexport function validateTime (input: any): input is VTime {\n return (typeof input === 'number' && isFinite(input)) ||\n (!!PARSE_TIME.exec(input)) ||\n (typeof input === 'object' && isFinite(input.hour) && isFinite(input.minute))\n}\n\nexport function parseTime (input: any): number | false {\n if (typeof input === 'number') {\n // when a number is given, it's minutes since 12:00am\n return input\n } else if (typeof input === 'string') {\n // when a string is given, it's a hh:mm:ss format where seconds are optional\n const parts = PARSE_TIME.exec(input)\n if (!parts) {\n return false\n }\n\n return parseInt(parts[1]) * 60 + parseInt(parts[3] || 0)\n } else if (typeof input === 'object') {\n // when an object is given, it must have hour and minute\n if (typeof input.hour !== 'number' || typeof input.minute !== 'number') {\n return false\n }\n\n return input.hour * 60 + input.minute\n } else {\n // unsupported type\n return false\n }\n}\n\nexport function validateTimestamp (input: any): input is VTimestampInput {\n return (typeof input === 'number' && isFinite(input)) ||\n (typeof input === 'string' && !!PARSE_REGEX.exec(input)) ||\n (input instanceof Date)\n}\n\nexport function parseTimestamp (input: VTimestampInput | null, required?: false, now?: CalendarTimestamp | null): CalendarTimestamp | null\nexport function parseTimestamp (input: VTimestampInput, required: true, now?: CalendarTimestamp): CalendarTimestamp\nexport function parseTimestamp (input: VTimestampInput | null, required = false, now?: CalendarTimestamp | null): CalendarTimestamp | null {\n if (typeof input === 'number' && isFinite(input)) {\n input = new Date(input)\n }\n\n if (input instanceof Date) {\n const date: CalendarTimestamp = parseDate(input)\n\n if (now) {\n updateRelative(date, now, date.hasTime)\n }\n\n return date\n }\n\n if (typeof input !== 'string') {\n if (required) {\n throw new Error(`${input} is not a valid timestamp. It must be a Date, number of milliseconds since Epoch, or a string in the format of YYYY-MM-DD or YYYY-MM-DD hh:mm. Zero-padding is optional and seconds are ignored.`)\n }\n return null\n }\n\n // YYYY-MM-DD hh:mm:ss\n const parts = PARSE_REGEX.exec(input)\n\n if (!parts) {\n if (required) {\n throw new Error(`${input} is not a valid timestamp. It must be a Date, number of milliseconds since Epoch, or a string in the format of YYYY-MM-DD or YYYY-MM-DD hh:mm. Zero-padding is optional and seconds are ignored.`)\n }\n\n return null\n }\n\n const timestamp: CalendarTimestamp = {\n date: input,\n time: '',\n year: parseInt(parts[1]),\n month: parseInt(parts[2]),\n day: parseInt(parts[4]) || 1,\n hour: parseInt(parts[6]) || 0,\n minute: parseInt(parts[8]) || 0,\n weekday: 0,\n hasDay: !!parts[4],\n hasTime: !!(parts[6] && parts[8]),\n past: false,\n present: false,\n future: false,\n }\n\n updateWeekday(timestamp)\n updateFormatted(timestamp)\n\n if (now) {\n updateRelative(timestamp, now, timestamp.hasTime)\n }\n\n return timestamp\n}\n\nexport function parseDate (date: Date): CalendarTimestamp {\n return updateFormatted({\n date: '',\n time: '',\n year: date.getFullYear(),\n month: date.getMonth() + 1,\n day: date.getDate(),\n weekday: date.getDay(),\n hour: date.getHours(),\n minute: date.getMinutes(),\n hasDay: true,\n hasTime: true,\n past: false,\n present: true,\n future: false,\n })\n}\n\nexport function getDayIdentifier (timestamp: { year: number, month: number, day: number }): number {\n return timestamp.year * OFFSET_YEAR + timestamp.month * OFFSET_MONTH + timestamp.day\n}\n\nexport function getTimeIdentifier (timestamp: { hour: number, minute: number }): number {\n return timestamp.hour * OFFSET_HOUR + timestamp.minute\n}\n\nexport function getTimestampIdentifier (timestamp: CalendarTimestamp): number {\n return getDayIdentifier(timestamp) * OFFSET_TIME + getTimeIdentifier(timestamp)\n}\n\nexport function updateRelative (timestamp: CalendarTimestamp, now: CalendarTimestamp, time = false): CalendarTimestamp {\n let a = getDayIdentifier(now)\n let b = getDayIdentifier(timestamp)\n let present = a === b\n\n if (timestamp.hasTime && time && present) {\n a = getTimeIdentifier(now)\n b = getTimeIdentifier(timestamp)\n present = a === b\n }\n\n timestamp.past = b < a\n timestamp.present = present\n timestamp.future = b > a\n\n return timestamp\n}\n\nexport function isTimedless (input: VTimestampInput): input is (Date | number) {\n return (input instanceof Date) || (typeof input === 'number' && isFinite(input))\n}\n\nexport function updateHasTime (timestamp: CalendarTimestamp, hasTime: boolean, now?: CalendarTimestamp): CalendarTimestamp {\n if (timestamp.hasTime !== hasTime) {\n timestamp.hasTime = hasTime\n if (!hasTime) {\n timestamp.hour = HOUR_MAX\n timestamp.minute = MINUTE_MAX\n timestamp.time = getTime(timestamp)\n }\n if (now) {\n updateRelative(timestamp, now, timestamp.hasTime)\n }\n }\n\n return timestamp\n}\n\nexport function updateMinutes (timestamp: CalendarTimestamp, minutes: number, now?: CalendarTimestamp): CalendarTimestamp {\n timestamp.hasTime = true\n timestamp.hour = 0\n timestamp.minute = 0\n nextMinutes(timestamp, minutes)\n updateFormatted(timestamp)\n if (now) {\n updateRelative(timestamp, now, true)\n }\n\n return timestamp\n}\n\nexport function updateWeekday (timestamp: CalendarTimestamp): CalendarTimestamp {\n timestamp.weekday = getWeekday(timestamp)\n\n return timestamp\n}\n\nexport function updateFormatted (timestamp: CalendarTimestamp): CalendarTimestamp {\n timestamp.time = getTime(timestamp)\n timestamp.date = getDate(timestamp)\n\n return timestamp\n}\n\nexport function getWeekday (timestamp: CalendarTimestamp): number {\n if (timestamp.hasDay) {\n const _ = Math.floor\n const k = timestamp.day\n const m = ((timestamp.month + 9) % MONTH_MAX) + 1\n const C = _(timestamp.year / 100)\n const Y = (timestamp.year % 100) - (timestamp.month <= 2 ? 1 : 0)\n\n return (((k + _(2.6 * m - 0.2) - 2 * C + Y + _(Y / 4) + _(C / 4)) % 7) + 7) % 7\n }\n\n return timestamp.weekday\n}\n\nexport function daysInMonth (year: number, month: number) {\n return isLeapYear(year) ? DAYS_IN_MONTH_LEAP[month] : DAYS_IN_MONTH[month]\n}\n\nexport function copyTimestamp (timestamp: null): null\nexport function copyTimestamp (timestamp: CalendarTimestamp): CalendarTimestamp\nexport function copyTimestamp (timestamp: CalendarTimestamp | null): CalendarTimestamp | null {\n if (timestamp == null) return null\n\n const { date, time, year, month, day, weekday, hour, minute, hasDay, hasTime, past, present, future } = timestamp\n\n return { date, time, year, month, day, weekday, hour, minute, hasDay, hasTime, past, present, future }\n}\n\nexport function padNumber (x: number, length: number): string {\n let padded = String(x)\n while (padded.length < length) {\n padded = '0' + padded\n }\n\n return padded\n}\n\nexport function getDate (timestamp: CalendarTimestamp): string {\n let str = `${padNumber(timestamp.year, 4)}-${padNumber(timestamp.month, 2)}`\n\n if (timestamp.hasDay) str += `-${padNumber(timestamp.day, 2)}`\n\n return str\n}\n\nexport function getTime (timestamp: CalendarTimestamp): string {\n if (!timestamp.hasTime) {\n return ''\n }\n\n return `${padNumber(timestamp.hour, 2)}:${padNumber(timestamp.minute, 2)}`\n}\n\nexport function nextMinutes (timestamp: CalendarTimestamp, minutes: number): CalendarTimestamp {\n timestamp.minute += minutes\n while (timestamp.minute >= MINUTES_IN_HOUR) {\n timestamp.minute -= MINUTES_IN_HOUR\n timestamp.hour++\n if (timestamp.hour >= HOURS_IN_DAY) {\n nextDay(timestamp)\n timestamp.hour = FIRST_HOUR\n }\n }\n\n return timestamp\n}\n\nexport function nextDay (timestamp: CalendarTimestamp): CalendarTimestamp {\n timestamp.day++\n timestamp.weekday = (timestamp.weekday + 1) % DAYS_IN_WEEK\n if (timestamp.day > DAYS_IN_MONTH_MIN && timestamp.day > daysInMonth(timestamp.year, timestamp.month)) {\n timestamp.day = DAY_MIN\n timestamp.month++\n if (timestamp.month > MONTH_MAX) {\n timestamp.month = MONTH_MIN\n timestamp.year++\n }\n }\n\n return timestamp\n}\n\nexport function prevDay (timestamp: CalendarTimestamp): CalendarTimestamp {\n timestamp.day--\n timestamp.weekday = (timestamp.weekday + 6) % DAYS_IN_WEEK\n if (timestamp.day < DAY_MIN) {\n timestamp.month--\n if (timestamp.month < MONTH_MIN) {\n timestamp.year--\n timestamp.month = MONTH_MAX\n }\n timestamp.day = daysInMonth(timestamp.year, timestamp.month)\n }\n\n return timestamp\n}\n\nexport function relativeDays (\n timestamp: CalendarTimestamp,\n mover: CalendarTimestampOperation = nextDay,\n days = 1\n): CalendarTimestamp {\n while (--days >= 0) mover(timestamp)\n\n return timestamp\n}\n\nexport function diffMinutes (min: CalendarTimestamp, max: CalendarTimestamp) {\n const Y = (max.year - min.year) * 525600\n const M = (max.month - min.month) * 43800\n const D = (max.day - min.day) * 1440\n const h = (max.hour - min.hour) * 60\n const m = (max.minute - min.minute)\n\n return Y + M + D + h + m\n}\n\nexport function findWeekday (timestamp: CalendarTimestamp, weekday: number,\n mover: CalendarTimestampOperation = nextDay, maxDays = 6): CalendarTimestamp {\n while (timestamp.weekday !== weekday && --maxDays >= 0) mover(timestamp)\n\n return timestamp\n}\n\nexport function getWeekdaySkips (weekdays: number[]): number[] {\n const skips: number[] = [1, 1, 1, 1, 1, 1, 1]\n const filled: number[] = [0, 0, 0, 0, 0, 0, 0]\n for (let i = 0; i < weekdays.length; i++) {\n filled[weekdays[i]] = 1\n }\n for (let k = 0; k < DAYS_IN_WEEK; k++) {\n let skip = 1\n for (let j = 1; j < DAYS_IN_WEEK; j++) {\n const next = (k + j) % DAYS_IN_WEEK\n if (filled[next]) {\n break\n }\n skip++\n }\n skips[k] = filled[k] * skip\n }\n\n return skips\n}\n\nexport function timestampToDate (timestamp: CalendarTimestamp): Date {\n const time = `${padNumber(timestamp.hour, 2)}:${padNumber(timestamp.minute, 2)}`\n const date = timestamp.date\n\n return new Date(`${date}T${time}:00+00:00`)\n}\n\nexport function createDayList (\n start: CalendarTimestamp,\n end: CalendarTimestamp,\n now: CalendarTimestamp,\n weekdaySkips: number[],\n max = 42,\n min = 0\n): CalendarTimestamp[] {\n const stop = getDayIdentifier(end)\n const days: CalendarTimestamp[] = []\n let current = copyTimestamp(start)\n let currentIdentifier = 0\n let stopped = currentIdentifier === stop\n\n if (stop < getDayIdentifier(start)) {\n throw new Error('End date is earlier than start date.')\n }\n\n while ((!stopped || days.length < min) && days.length < max) {\n currentIdentifier = getDayIdentifier(current)\n stopped = stopped || currentIdentifier === stop\n if (weekdaySkips[current.weekday] === 0) {\n current = nextDay(current)\n continue\n }\n const day = copyTimestamp(current)\n updateFormatted(day)\n updateRelative(day, now)\n days.push(day)\n current = relativeDays(current, nextDay, weekdaySkips[current.weekday])\n }\n\n if (!days.length) throw new Error('No dates found using specified start date, end date, and weekdays.')\n\n return days\n}\n\nexport function createIntervalList (\n timestamp: CalendarTimestamp,\n first: number,\n minutes: number,\n count: number,\n now?: CalendarTimestamp\n): CalendarTimestamp[] {\n const intervals: CalendarTimestamp[] = []\n\n for (let i = 0; i < count; i++) {\n const mins = first + (i * minutes)\n const int = copyTimestamp(timestamp)\n intervals.push(updateMinutes(int, mins, now))\n }\n\n return intervals\n}\n\nexport function createNativeLocaleFormatter (locale: string, getOptions: CalendarTimestampFormatOptions): CalendarFormatter {\n const emptyFormatter: CalendarFormatter = (_t, _s) => ''\n\n if (typeof Intl === 'undefined' || typeof Intl.DateTimeFormat === 'undefined') {\n return emptyFormatter\n }\n\n return (timestamp, short) => {\n try {\n const intlFormatter = new Intl.DateTimeFormat(locale || undefined, getOptions(timestamp, short))\n\n return intlFormatter.format(timestampToDate(timestamp))\n } catch (e) {\n return ''\n }\n }\n}\n\nexport function validateWeekdays (input: string | (number | string)[]): boolean {\n if (typeof input === 'string') {\n input = input.split(',')\n }\n\n if (Array.isArray(input)) {\n const ints = input.map(x => parseInt(x))\n\n if (ints.length > DAYS_IN_WEEK || ints.length === 0) {\n return false\n }\n\n const visited: Record = {}\n let wrapped = false\n\n for (let i = 0; i < ints.length; i++) {\n const x = ints[i]\n\n if (!isFinite(x) || x < 0 || x >= DAYS_IN_WEEK) {\n return false\n }\n\n if (i > 0) {\n const d = x - ints[i - 1]\n if (d < 0) {\n if (wrapped) {\n return false\n }\n wrapped = true\n } else if (d === 0) {\n return false\n }\n }\n\n if (visited[x]) {\n return false\n }\n visited[x] = true\n }\n\n return true\n }\n\n return false\n}\n", "// Utilities\nimport { computed, reactive, watch } from 'vue'\nimport {\n parseDate,\n parseTimestamp,\n validateTimestamp,\n} from '../util/timestamp'\n\n// Types\nimport type { CalendarTimestamp } from '../types'\n\nexport function useTimes (props: { now: string | undefined }) {\n const times = reactive({\n now: parseTimestamp('0000-00-00 00:00', true),\n today: parseTimestamp('0000-00-00', true),\n })\n\n const parsedNow = computed((): CalendarTimestamp | null => {\n return props.now && validateTimestamp(props.now) ? parseTimestamp(props.now, true) : null\n })\n\n function setPresent (): void {\n times.now.present = times.today.present = true\n times.now.past = times.today.past = false\n times.now.future = times.today.future = false\n }\n\n function getNow (): CalendarTimestamp {\n return parseDate(new Date())\n }\n\n function updateDay (now: CalendarTimestamp, target: CalendarTimestamp): void {\n if (now.date !== target.date) {\n target.year = now.year\n target.month = now.month\n target.day = now.day\n target.weekday = now.weekday\n target.date = now.date\n }\n }\n\n function updateTime (now: CalendarTimestamp, target: CalendarTimestamp): void {\n if (now.time !== target.time) {\n target.hour = now.hour\n target.minute = now.minute\n target.time = now.time\n }\n }\n\n function updateTimes (): void {\n const now: CalendarTimestamp = parsedNow.value || getNow()\n updateDay(now, times.now)\n updateTime(now, times.now)\n updateDay(now, times.today)\n }\n\n watch(parsedNow, updateTimes)\n\n updateTimes()\n setPresent()\n\n return {\n times,\n parsedNow,\n updateTimes,\n setPresent,\n getNow,\n updateDay,\n updateTime,\n }\n}\n", "// Composables\nimport { useTimes } from './times'\nimport { computeColor } from '@/composables/color'\nimport { useDate } from '@/composables/date'\nimport { provideLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed } from 'vue'\nimport {\n createDayList,\n createNativeLocaleFormatter,\n getEndOfMonth,\n getEndOfWeek,\n getStartOfMonth,\n getStartOfWeek,\n getTimestampIdentifier,\n getWeekdaySkips,\n parseDate,\n parseTimestamp,\n validateTimestamp,\n validateWeekdays,\n} from '../util/timestamp'\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { CalendarFormatter, CalendarTimestamp } from '../types'\nimport type { ColorValue } from '@/composables/color'\n\nexport const makeCalendarBaseProps = propsFactory({\n start: {\n type: [String, Number, Date],\n validate: validateTimestamp,\n default: () => parseDate(new Date()).date,\n },\n end: {\n type: [String, Number, Date],\n validate: validateTimestamp,\n },\n weekdays: {\n type: [Array, String] as PropType,\n default: () => [0, 1, 2, 3, 4, 5, 6],\n validate: validateWeekdays,\n },\n firstDayOfWeek: [Number, String],\n firstDayOfYear: [Number, String],\n weekdayFormat: {\n type: Function as PropType,\n default: null,\n },\n dayFormat: {\n type: Function as PropType,\n default: null,\n },\n locale: String,\n now: {\n type: String,\n validator: validateTimestamp,\n },\n type: {\n type: String as PropType<'month' | 'week' | 'day' | '4day' | 'custom-weekly' | 'custom-daily' | 'category'>,\n default: 'month',\n },\n}, 'VCalendar-base')\n\nexport interface CalendarBaseProps {\n modelValue?: string | number | Date\n categoryDays?: string | number\n start: string | number | Date\n end: string | number | Date | undefined\n weekdays: string | number[]\n firstDayOfWeek: number | string | undefined\n firstDayOfYear: number | string | undefined\n weekdayFormat: CalendarFormatter | string | undefined\n dayFormat: CalendarFormatter | string | undefined\n locale: string | undefined\n now: string | undefined\n type: 'month' | 'week' | 'day' | '4day' | 'custom-weekly' | 'custom-daily' | 'category'\n}\n\nexport function useCalendarBase (props: CalendarBaseProps) {\n const { times, updateTimes } = useTimes({ now: props.now })\n const locale = provideLocale(props)\n\n const adapter = useDate()\n\n const parsedStart = computed((): CalendarTimestamp => {\n if (props.type === 'month') {\n return getStartOfMonth(parseTimestamp(props.start, true))\n }\n return parseTimestamp(props.start, true)\n })\n\n const parsedEnd = computed((): CalendarTimestamp => {\n const start = parsedStart.value\n const end: CalendarTimestamp = props.end ? parseTimestamp(props.end) || start : start\n const value = getTimestampIdentifier(end) < getTimestampIdentifier(start) ? start : end\n\n if (props.type === 'month') {\n return getEndOfMonth(value)\n }\n return value\n })\n\n const parsedValue = computed((): CalendarTimestamp => {\n return (validateTimestamp(props.modelValue)\n ? parseTimestamp(props.modelValue, true)\n : (parsedStart.value || times.today))\n })\n\n const parsedWeekdays = computed((): number[] => {\n const weekdays = Array.isArray(props.weekdays)\n ? props.weekdays\n : (props.weekdays || '').split(',').map(x => parseInt(x, 10))\n\n const first = adapter.toJsDate(adapter.startOfWeek(adapter.date(), props.firstDayOfWeek)).getDay()\n return [\n ...weekdays.toSorted().filter(v => v >= first),\n ...weekdays.toSorted().filter(v => v < first),\n ]\n })\n\n const effectiveWeekdays = computed((): number[] => {\n const start = parsedValue.value\n const days = parseInt(String(props.categoryDays)) || 1\n\n switch (props.type) {\n case 'day': return [start.weekday]\n case '4day': return [\n start.weekday,\n (start.weekday + 1) % 7,\n (start.weekday + 2) % 7,\n (start.weekday + 3) % 7,\n ]\n case 'category': return Array.from({ length: days }, (_, i) => (start.weekday + i) % 7)\n default: return parsedWeekdays.value\n }\n })\n\n const weekdaySkips = computed((): number[] => {\n return getWeekdaySkips(parsedWeekdays.value)\n })\n\n const days = computed((): CalendarTimestamp[] => {\n return createDayList(\n parsedStart.value,\n parsedEnd.value,\n times.today,\n weekdaySkips.value,\n )\n })\n\n const dayFormatter = computed((): CalendarFormatter => {\n if (props.dayFormat) {\n return props.dayFormat as CalendarFormatter\n }\n\n return createNativeLocaleFormatter(\n locale.current.value,\n () => ({ timeZone: 'UTC', day: 'numeric' })\n )\n })\n\n const weekdayFormatter = computed((): CalendarFormatter => {\n if (props.weekdayFormat) {\n return props.weekdayFormat as CalendarFormatter\n }\n\n return createNativeLocaleFormatter(\n locale.current.value,\n (_tms, short) => ({ timeZone: 'UTC', weekday: short ? 'short' : 'long' })\n )\n })\n\n function getColorProps (colors: { background?: ColorValue, text?: ColorValue }) {\n return computeColor(colors)\n }\n\n function getRelativeClasses (timestamp: CalendarTimestamp, outside = false) {\n return {\n 'v-present': timestamp.present,\n 'v-past': timestamp.past,\n 'v-future': timestamp.future,\n 'v-outside': outside,\n }\n }\n\n function getWeekNumber (timestamp: CalendarTimestamp): number {\n return adapter.getWeek(\n adapter.date(timestamp.date),\n props.firstDayOfWeek,\n props.firstDayOfYear,\n )\n }\n\n function _getStartOfWeek (timestamp: CalendarTimestamp): CalendarTimestamp {\n return getStartOfWeek(timestamp, parsedWeekdays.value, times.today)\n }\n\n function _getEndOfWeek (timestamp: CalendarTimestamp): CalendarTimestamp {\n return getEndOfWeek(timestamp, parsedWeekdays.value, times.today)\n }\n\n function getFormatter (options: Intl.DateTimeFormatOptions): CalendarFormatter {\n return createNativeLocaleFormatter(locale.current.value, () => options)\n }\n\n return {\n times,\n locale,\n parsedValue,\n parsedWeekdays,\n effectiveWeekdays,\n weekdaySkips,\n parsedStart,\n parsedEnd,\n days,\n dayFormatter,\n weekdayFormatter,\n getColorProps,\n getRelativeClasses,\n getWeekNumber,\n getStartOfWeek: _getStartOfWeek,\n getEndOfWeek: _getEndOfWeek,\n getFormatter,\n updateTimes,\n }\n}\n", "// Composables\nimport { useCalendarBase } from './calendarBase'\n\n// Utilities\nimport { computed, shallowRef } from 'vue'\nimport {\n copyTimestamp,\n createDayList,\n createIntervalList,\n createNativeLocaleFormatter,\n getDayIdentifier,\n MINUTES_IN_DAY,\n parseTime,\n updateMinutes,\n validateNumber,\n validateTime,\n} from '../util/timestamp'\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { PropType, StyleValue } from 'vue'\nimport type { CalendarBaseProps } from './calendarBase'\nimport type { CalendarDayBodySlotScope, CalendarFormatter, CalendarTimestamp } from '../types'\nimport type { VTime } from '../util/timestamp'\n\nexport const makeCalendarWithIntervalsProps = propsFactory({\n maxDays: {\n type: Number,\n default: 7,\n },\n intervalHeight: {\n type: [Number, String],\n default: 48,\n validate: validateNumber,\n },\n intervalWidth: {\n type: [Number, String],\n default: 60,\n validate: validateNumber,\n },\n intervalMinutes: {\n type: [Number, String],\n default: 60,\n validate: validateNumber,\n },\n firstInterval: {\n type: [Number, String],\n default: 0,\n validate: validateNumber,\n },\n firstTime: {\n type: [Number, String, Object] as PropType,\n validate: validateTime,\n },\n intervalCount: {\n type: [Number, String],\n default: 24,\n validate: validateNumber,\n },\n intervalFormat: {\n type: Function as PropType,\n default: null,\n },\n intervalStyle: {\n type: Function as PropType<(interval: CalendarTimestamp) => StyleValue>,\n default: null,\n },\n showIntervalLabel: {\n type: Function as PropType<(interval: CalendarTimestamp) => boolean>,\n default: null,\n },\n}, 'VCalendar-intervals')\n\ninterface CalendarWithIntervalsProps extends CalendarBaseProps {\n maxDays: number\n intervalHeight: string | number\n intervalMinutes: string | number\n firstInterval: string | number\n firstTime: VTime | undefined\n intervalCount: string | number\n intervalFormat: CalendarFormatter | string | undefined\n}\n\nexport function useCalendarWithIntervals (props: CalendarWithIntervalsProps) {\n const base = useCalendarBase(props)\n\n const scrollAreaRef = shallowRef()\n\n const parsedFirstInterval = computed((): number => {\n return parseInt(String(props.firstInterval || 0))\n })\n\n const parsedIntervalMinutes = computed((): number => {\n return parseInt(String(props.intervalMinutes || 60))\n })\n\n const parsedIntervalCount = computed((): number => {\n return parseInt(String(props.intervalCount || 24))\n })\n\n const parsedIntervalHeight = computed((): number => {\n return parseFloat(String(props.intervalHeight || 48))\n })\n\n const parsedFirstTime = computed((): number | false => {\n return parseTime(props.firstTime)\n })\n\n const firstMinute = computed((): number => {\n const time = parsedFirstTime.value\n\n return time !== false && time >= 0 && time <= MINUTES_IN_DAY\n ? time\n : parsedFirstInterval.value * parsedIntervalMinutes.value\n })\n\n const bodyHeight = computed((): number => {\n return parsedIntervalCount.value * parsedIntervalHeight.value\n })\n\n const days = computed((): CalendarTimestamp[] => {\n return createDayList(\n base.parsedStart.value,\n base.parsedEnd.value,\n base.times.today,\n base.weekdaySkips.value,\n props.maxDays\n )\n })\n\n const intervals = computed((): CalendarTimestamp[][] => {\n const daysValue = days.value\n const first: number = firstMinute.value\n const minutes: number = parsedIntervalMinutes.value\n const count: number = parsedIntervalCount.value\n const now: CalendarTimestamp = base.times.now\n\n return daysValue.map(d => createIntervalList(d, first, minutes, count, now))\n })\n\n const intervalFormatter = computed((): CalendarFormatter => {\n if (props.intervalFormat) {\n return props.intervalFormat as CalendarFormatter\n }\n\n return createNativeLocaleFormatter(\n base.locale.current.value,\n (tms, short) => (\n !short ? { timeZone: 'UTC', hour: '2-digit', minute: '2-digit' }\n : tms.minute === 0 ? { timeZone: 'UTC', hour: 'numeric' }\n : { timeZone: 'UTC', hour: 'numeric', minute: '2-digit' }\n )\n )\n })\n\n function showIntervalLabelDefault (interval: CalendarTimestamp): boolean {\n const first: CalendarTimestamp = intervals.value[0][0]\n const isFirst: boolean = first.hour === interval.hour && first.minute === interval.minute\n return !isFirst\n }\n\n function intervalStyleDefault (_interval: CalendarTimestamp): StyleValue {\n return undefined\n }\n\n function getTimestampAtEvent (e: Event, day: CalendarTimestamp): CalendarTimestamp {\n const timestamp: CalendarTimestamp = copyTimestamp(day)\n const bounds = (e.currentTarget as HTMLElement).getBoundingClientRect()\n const baseMinutes: number = firstMinute.value\n const touchEvent: TouchEvent = e as TouchEvent\n const mouseEvent: MouseEvent = e as MouseEvent\n const touches: TouchList = touchEvent.changedTouches || touchEvent.touches\n const clientY: number = touches && touches[0] ? touches[0].clientY : mouseEvent.clientY\n const addIntervals: number = (clientY - bounds.top) / parsedIntervalHeight.value\n const addMinutes: number = Math.floor(addIntervals * parsedIntervalMinutes.value)\n const minutes: number = baseMinutes + addMinutes\n\n return updateMinutes(timestamp, minutes, base.times.now)\n }\n\n function getSlotScope (timestamp: CalendarTimestamp): CalendarDayBodySlotScope {\n const scope = copyTimestamp(timestamp) as any\n scope.timeToY = timeToY\n scope.timeDelta = timeDelta\n scope.minutesToPixels = minutesToPixels\n scope.week = days.value\n scope.intervalRange = [\n firstMinute.value,\n firstMinute.value + parsedIntervalCount.value * parsedIntervalMinutes.value,\n ]\n return scope\n }\n\n function scrollToTime (time: VTime): boolean {\n const y = timeToY(time)\n\n const pane = scrollAreaRef.value\n\n if (y === false || !pane) {\n return false\n }\n\n pane.scrollTop = y\n\n return true\n }\n\n function minutesToPixels (minutes: number): number {\n return minutes / parsedIntervalMinutes.value * parsedIntervalHeight.value\n }\n\n function timeToY (\n time: VTime | CalendarTimestamp,\n targetDateOrClamp: CalendarTimestamp | boolean = false\n ): number | false {\n const clamp = targetDateOrClamp !== false\n const targetDate = typeof targetDateOrClamp !== 'boolean' ? targetDateOrClamp : undefined\n\n let y = timeDelta(time, targetDate)\n if (y === false) return y\n\n y *= bodyHeight.value\n\n if (clamp) {\n if (y < 0) {\n y = 0\n } else if (y > bodyHeight.value) {\n y = bodyHeight.value\n }\n } else {\n if (y < 0) {\n y = y + bodyHeight.value\n } else if (y > bodyHeight.value) {\n y = y - bodyHeight.value\n }\n }\n\n return y\n }\n\n function timeDelta (time: VTime | CalendarTimestamp, targetDate?: CalendarTimestamp): number | false {\n let minutes = parseTime(time)\n\n if (minutes === false) {\n return false\n }\n\n const gap: number = parsedIntervalCount.value * parsedIntervalMinutes.value\n\n if (targetDate && typeof time === 'object' && 'day' in time) {\n const a = getDayIdentifier(time)\n const b = getDayIdentifier(targetDate)\n minutes += (a - b) * gap\n }\n\n const min: number = firstMinute.value\n\n return (minutes - min) / gap\n }\n\n return {\n ...base,\n scrollAreaRef,\n parsedFirstInterval,\n parsedIntervalMinutes,\n parsedIntervalCount,\n parsedIntervalHeight,\n parsedFirstTime,\n firstMinute,\n bodyHeight,\n days,\n intervals,\n intervalFormatter,\n showIntervalLabelDefault,\n intervalStyleDefault,\n getTimestampAtEvent,\n getSlotScope,\n scrollToTime,\n minutesToPixels,\n timeToY,\n timeDelta,\n }\n}\n", "// Components\nimport { VIconBtn } from '@/labs/VIconBtn'\n\n// Composables\nimport { makeCalendarBaseProps } from './composables/calendarBase'\nimport { makeCalendarWithIntervalsProps, useCalendarWithIntervals } from './composables/calendarWithIntervals'\n\n// Directives\nimport vResize from '@/directives/resize'\n\n// Utilities\nimport { nextTick, onMounted, ref } from 'vue'\nimport { convertToUnit, defineComponent, getPrefixedEventHandlers, noop, useRender } from '@/util'\n\n// Types\nimport type { CalendarTimestamp } from './types'\n\nexport const VCalendarDaily = defineComponent({\n name: 'VCalendarDaily',\n\n directives: { vResize },\n\n props: {\n color: String,\n shortWeekdays: {\n type: Boolean,\n default: true,\n },\n shortIntervals: {\n type: Boolean,\n default: true,\n },\n hideHeader: Boolean,\n\n ...makeCalendarBaseProps(),\n ...makeCalendarWithIntervalsProps(),\n },\n\n setup (props, { slots, attrs }) {\n const scrollPush = ref(0)\n const pane = ref()\n const base = useCalendarWithIntervals(props)\n\n function init () {\n nextTick(onResize)\n }\n\n function onResize () {\n scrollPush.value = getScrollPush()\n }\n\n function getScrollPush (): number {\n return base.scrollAreaRef.value && pane.value\n ? (base.scrollAreaRef.value.offsetWidth - pane.value.offsetWidth)\n : 0\n }\n\n function genHead () {\n return (\n \n { genHeadIntervals() }\n { genHeadDays() }\n \n )\n }\n\n function genHeadIntervals () {\n const width: string | undefined = convertToUnit(props.intervalWidth)\n return (\n \n { slots['interval-header']?.() }\n \n )\n }\n\n function genHeadDays () {\n return base.days.value.map(genHeadDay)\n }\n\n function genHeadDay (day: CalendarTimestamp, index: number) {\n const events = getPrefixedEventHandlers(attrs, ':day', nativeEvent => ({\n nativeEvent, ...base.getSlotScope(day),\n }))\n return (\n \n { genHeadWeekday(day) }\n { genHeadDayLabel(day) }\n { genDayHeader(day, index) }\n \n )\n }\n\n function genDayHeader (day: CalendarTimestamp, index: number) {\n return slots['day-header']?.({\n week: base.days.value,\n ...day,\n index,\n }) ?? []\n }\n\n function genHeadWeekday (day: CalendarTimestamp) {\n const color = day.present ? props.color : undefined\n return (\n \n { base.weekdayFormatter.value(day, props.shortWeekdays) }\n \n )\n }\n\n function genHeadDayLabel (day: CalendarTimestamp) {\n return (\n
\n { slots['day-label-header']?.(day) ?? genHeadDayButton(day) }\n
\n )\n }\n\n function genHeadDayButton (day: CalendarTimestamp) {\n const events = getPrefixedEventHandlers(attrs, ':date', nativeEvent => ({\n nativeEvent, ...day,\n }))\n return (\n \n { base.dayFormatter.value(day, false) }\n \n )\n }\n\n function genBody () {\n return (\n
\n { genScrollArea() }\n
\n )\n }\n\n function genScrollArea () {\n return (\n
\n { genPane() }\n
\n )\n }\n\n function genPane () {\n return (\n \n { genDayContainer() }\n \n )\n }\n\n function genDayContainer () {\n return (\n
\n { genBodyIntervals() }\n { slots.days?.() ?? genDays() }\n
\n )\n }\n\n function genDays () {\n return base.days.value.map((day, index) => {\n const events = getPrefixedEventHandlers(attrs, ':time', nativeEvent => ({\n nativeEvent,\n ...base.getSlotScope(base.getTimestampAtEvent(nativeEvent, day)),\n }))\n return (\n \n { genDayIntervals(index) }\n { genDayBody(day) }\n \n )\n })\n }\n\n function genDayBody (day: CalendarTimestamp) {\n return slots['day-body']?.(base.getSlotScope(day)) ?? []\n }\n\n function genDayIntervals (index: number) {\n return base.intervals.value[index].map(genDayInterval)\n }\n\n function genDayInterval (interval: CalendarTimestamp) {\n const height: string | undefined = convertToUnit(props.intervalHeight)\n const styler = props.intervalStyle || base.intervalStyleDefault\n return (\n \n { slots.interval?.(base.getSlotScope(interval)) }\n \n )\n }\n\n function genBodyIntervals () {\n const width: string | undefined = convertToUnit(props.intervalWidth)\n const events = getPrefixedEventHandlers(attrs, ':interval', nativeEvent => ({\n nativeEvent, ...base.getTimestampAtEvent(nativeEvent, base.parsedStart.value),\n }))\n return (\n \n { genIntervalLabels() }\n \n )\n }\n\n function genIntervalLabels () {\n if (!base.intervals.value.length) return null\n return base.intervals.value[0].map(genIntervalLabel)\n }\n\n function genIntervalLabel (interval: CalendarTimestamp) {\n const height: string | undefined = convertToUnit(props.intervalHeight)\n const short = props.shortIntervals\n const shower = props.showIntervalLabel || base.showIntervalLabelDefault\n const show = shower(interval)\n const label = show ? base.intervalFormatter.value(interval, short) : undefined\n return (\n \n
\n { label }\n
\n \n )\n }\n\n onMounted(init)\n\n useRender(() => (\n e.preventDefault() }\n v-resize_quiet={ onResize }\n >\n { !props.hideHeader ? genHead() : undefined }\n { genBody() }\n \n ))\n\n return {\n ...base,\n scrollPush,\n pane,\n init,\n onResize,\n getScrollPush,\n }\n },\n})\n\nexport type VCalendarDaily = InstanceType\n", "// Types\nimport type { CalendarCategory, CalendarCategoryTextFunction } from '../types'\n\nexport function parsedCategoryText (\n category: CalendarCategory,\n categoryText: string | CalendarCategoryTextFunction | undefined\n): string {\n return typeof categoryText === 'function' ? categoryText(category)\n : typeof categoryText === 'string' && typeof category === 'object' && category ? category[categoryText]\n : typeof category === 'string' ? category\n : ''\n}\n\nexport function getParsedCategories (\n categories: CalendarCategory | CalendarCategory[],\n categoryText: string | CalendarCategoryTextFunction | undefined\n): CalendarCategory[] {\n if (typeof categories === 'string') return categories.split(/\\s*,\\s/)\n if (Array.isArray(categories)) {\n return categories.map((category: CalendarCategory) => {\n if (typeof category === 'string') return category\n\n const categoryName = typeof category.categoryName === 'string'\n ? category.categoryName\n : parsedCategoryText(category, categoryText)\n return { ...category, categoryName }\n })\n }\n return []\n}\n", "// Components\nimport { VCalendarDaily } from './VCalendarDaily'\n\n// Composables\nimport { makeCalendarBaseProps } from './composables/calendarBase'\nimport { makeCalendarWithIntervalsProps, useCalendarWithIntervals } from './composables/calendarWithIntervals'\n\n// Utilities\nimport { computed } from 'vue'\nimport { getParsedCategories } from './util/parser'\nimport { convertToUnit, defineComponent, getPrefixedEventHandlers, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { CalendarCategory, CalendarCategoryTextFunction, CalendarTimestamp } from './types'\n\nexport const VCalendarCategory = defineComponent({\n name: 'VCalendarCategory',\n\n props: {\n categories: {\n type: [Array, String] as PropType,\n default: '',\n },\n categoryText: [String, Function] as PropType,\n categoryForInvalid: {\n type: String,\n default: '',\n },\n\n ...makeCalendarBaseProps(),\n ...makeCalendarWithIntervalsProps(),\n },\n\n setup (props, { slots, attrs }) {\n const base = useCalendarWithIntervals(props)\n\n const parsedCategories = computed((): CalendarCategory[] => {\n return getParsedCategories(props.categories, props.categoryText)\n })\n\n function getCategoryScope (scope: any, category: CalendarCategory) {\n const cat = typeof category === 'object' && category &&\n category.categoryName === props.categoryForInvalid ? null : category\n return {\n ...scope,\n category: cat,\n }\n }\n\n function genDayHeader (scope: CalendarTimestamp & { week: any, index: number }) {\n return (\n
\n { parsedCategories.value.map(category => {\n return genDayHeaderCategory(scope, getCategoryScope(scope, category))\n })}\n
\n )\n }\n\n function genDayHeaderCategory (day: CalendarTimestamp, scope: any) {\n const headerTitle = typeof scope.category === 'object' ? scope.category.categoryName : scope.category\n const events = getPrefixedEventHandlers(attrs, ':dayCategory', () => {\n return getCategoryScope(base.getSlotScope(day) || day, scope.category)\n })\n return (\n \n { slots.category?.(scope) ?? genDayHeaderCategoryTitle(headerTitle) }\n { slots['day-header']?.(scope) }\n \n )\n }\n\n function genDayHeaderCategoryTitle (categoryName: string | null) {\n return (\n
\n { categoryName === null ? props.categoryForInvalid : categoryName }\n
\n )\n }\n\n function genDays () {\n const days: any[] = []\n base.days.value.forEach((d: CalendarTimestamp, j: number) => {\n const day = new Array(parsedCategories.value.length || 1)\n day.fill(d)\n days.push(...day.map((v: CalendarTimestamp, i: number) => genDay(v, j, i)))\n })\n return days\n }\n\n function genDay (day: CalendarTimestamp, index: number, categoryIndex: number) {\n const category = parsedCategories.value[categoryIndex]\n const events = getPrefixedEventHandlers(attrs, ':time', e => {\n return base.getSlotScope(base.getTimestampAtEvent(e, day))\n })\n return (\n \n { genDayIntervals(index, category) }\n { genDayBody(day, category) }\n \n )\n }\n\n function genDayIntervals (index: number, category: CalendarCategory) {\n return base.intervals.value[index].map((v: CalendarTimestamp) => genDayInterval(v, category))\n }\n\n function genDayInterval (interval: CalendarTimestamp, category: CalendarCategory) {\n const height: string | undefined = convertToUnit(props.intervalHeight)\n const styler = props.intervalStyle || base.intervalStyleDefault\n\n return (\n \n { slots.interval?.(\n getCategoryScope(base.getSlotScope(interval), category)\n )}\n \n )\n }\n\n function genDayBody (day: CalendarTimestamp, category: CalendarCategory) {\n return (\n
\n { genDayBodyCategory(day, category) }\n
\n )\n }\n\n function genDayBodyCategory (day: CalendarTimestamp, category: CalendarCategory) {\n const events = getPrefixedEventHandlers(attrs, ':timeCategory', e => {\n return getCategoryScope(\n base.getSlotScope(base.getTimestampAtEvent(e, day)),\n category\n )\n })\n\n return (\n
\n { slots['day-body']?.(getCategoryScope(base.getSlotScope(day), category)) }\n
\n )\n }\n\n useRender(() => (\n \n {{\n ...slots,\n days: genDays,\n 'day-header': genDayHeader,\n }}\n \n ))\n\n return {\n ...base,\n parsedCategories,\n }\n },\n})\n\nexport type VCalendarCategory = InstanceType\n", "// Components\nimport { VIconBtn } from '@/labs/VIconBtn'\n\n// Composables\nimport { makeCalendarBaseProps, useCalendarBase } from './composables/calendarBase'\nimport { useTheme } from '@/composables'\n\n// Utilities\nimport { computed } from 'vue'\nimport {\n createDayList,\n createNativeLocaleFormatter,\n getDayIdentifier,\n validateNumber,\n} from './util/timestamp'\nimport { defineComponent, getPrefixedEventHandlers, noop, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { CalendarFormatter, CalendarTimestamp } from './types'\n\nexport const VCalendarWeekly = defineComponent({\n name: 'VCalendarWeekly',\n\n props: {\n minWeeks: {\n validate: validateNumber,\n default: 1,\n },\n monthFormat: Function as PropType,\n showWeek: Boolean,\n color: String,\n shortWeekdays: {\n type: Boolean,\n default: true,\n },\n showMonthOnFirst: {\n type: Boolean,\n default: true,\n },\n shortMonths: {\n type: Boolean,\n default: true,\n },\n hideHeader: Boolean,\n\n ...makeCalendarBaseProps(),\n },\n\n setup (props, { slots, attrs }) {\n const base = useCalendarBase(props)\n\n const theme = useTheme()\n\n const parsedMinWeeks = computed((): number => {\n return parseInt(String(props.minWeeks))\n })\n\n const days = computed((): CalendarTimestamp[] => {\n const minDays = parsedMinWeeks.value * base.parsedWeekdays.value.length\n const start = base.getStartOfWeek(base.parsedStart.value)\n const end = base.getEndOfWeek(base.parsedEnd.value)\n\n return createDayList(\n start,\n end,\n base.times.today,\n base.weekdaySkips.value,\n Number.MAX_SAFE_INTEGER,\n minDays\n )\n })\n\n const todayWeek = computed((): CalendarTimestamp[] => {\n const today = base.times.today\n const start = base.getStartOfWeek(today)\n const end = base.getEndOfWeek(today)\n\n return createDayList(\n start,\n end,\n today,\n base.weekdaySkips.value,\n base.parsedWeekdays.value.length,\n base.parsedWeekdays.value.length\n )\n })\n\n const monthFormatter = computed((): CalendarFormatter => {\n if (props.monthFormat) {\n // TODO: what happens when this is a string?\n return props.monthFormat as CalendarFormatter\n }\n\n return createNativeLocaleFormatter(\n base.locale.current.value,\n (_tms, short) => ({ timeZone: 'UTC', month: short ? 'short' : 'long' })\n )\n })\n\n function isOutside (day: CalendarTimestamp): boolean {\n const dayIdentifier = getDayIdentifier(day)\n\n return dayIdentifier < getDayIdentifier(base.parsedStart.value) ||\n dayIdentifier > getDayIdentifier(base.parsedEnd.value)\n }\n\n function genHead () {\n return (\n
\n { genHeadDays() }\n
\n )\n }\n\n function genHeadDays () {\n const header = todayWeek.value.map(genHeadDay)\n\n if (props.showWeek) {\n header.unshift(\n
\n )\n }\n\n return header\n }\n\n function genHeadDay (day: CalendarTimestamp, index: number) {\n const outside = isOutside(days.value[index])\n const color = day.present ? props.color : undefined\n\n return (\n \n { base.weekdayFormatter.value(day, props.shortWeekdays) }\n
\n )\n }\n\n function genWeeks () {\n const daysValue = days.value\n const weekDays = base.parsedWeekdays.value.length\n const weeks: any[] = []\n\n for (let i = 0; i < daysValue.length; i += weekDays) {\n weeks.push(genWeek(daysValue.slice(i, i + weekDays), getWeekNumber(daysValue[i])))\n }\n\n return weeks\n }\n\n function genWeek (week: CalendarTimestamp[], weekNumber: number) {\n const weekNodes = week.map((day, index) => genDay(day, index, week))\n\n if (props.showWeek) {\n weekNodes.unshift(genWeekNumber(weekNumber))\n }\n\n return (\n \n { weekNodes }\n \n )\n }\n\n function getWeekNumber (determineDay: CalendarTimestamp) {\n return base.getWeekNumber(determineDay)\n }\n\n function genWeekNumber (weekNumber: number) {\n return (\n
\n { String(weekNumber) }\n
\n )\n }\n\n function genDay (day: CalendarTimestamp, index: number, week: CalendarTimestamp[]) {\n const outside = isOutside(day)\n const events = getPrefixedEventHandlers(attrs, ':day', nativeEvent => {\n return { nativeEvent, ...day }\n })\n\n return (\n \n { genDayLabel(day) }\n { slots.day?.({ outside, index, week, ...day }) }\n \n )\n }\n\n function genDayLabel (day: CalendarTimestamp) {\n return (\n
\n { slots['day-label']?.(day) ?? genDayLabelButton(day) }\n
\n )\n }\n\n function genDayLabelButton (day: CalendarTimestamp) {\n const hasMonth = day.day === 1 && props.showMonthOnFirst\n const events = getPrefixedEventHandlers(attrs, ':date', nativeEvent => ({ nativeEvent, ...day }))\n\n return (\n \n { hasMonth\n ? monthFormatter.value(day, props.shortMonths) + ' ' + base.dayFormatter.value(day, false)\n : base.dayFormatter.value(day, false)\n }\n \n )\n }\n\n useRender(() => (\n e.preventDefault() }\n >\n { !props.hideHeader ? genHead() : undefined }\n { genWeeks() }\n \n ))\n\n return {\n ...base,\n days,\n todayWeek,\n monthFormatter,\n isOutside,\n }\n },\n})\n\nexport type VCalendarWeekly = InstanceType\n", "// Styles\nimport './calendarWithEvents.sass'\n\n// Composables\nimport { useCalendarBase } from './calendarBase'\n\n// Directives\nimport vRipple from '@/directives/ripple'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { CalendarEventOverlapModes } from '../modes'\nimport {\n isEventHiddenOn,\n isEventOn,\n isEventOnDay,\n isEventOverlapping,\n isEventStart,\n parseEvent,\n} from '../util/events'\nimport { diffMinutes, getDayIdentifier } from '../util/timestamp'\nimport { getPrefixedEventHandlers, propsFactory } from '@/util'\n\n// Types\nimport type { PropType, VNode } from 'vue'\nimport type { CalendarBaseProps } from './calendarBase'\nimport type {\n CalendarCategory,\n CalendarDayBodySlotScope,\n CalendarDaySlotScope,\n CalendarEvent,\n CalendarEventCategoryFunction,\n CalendarEventColorFunction,\n CalendarEventNameFunction,\n CalendarEventOverlapMode,\n CalendarEventParsed,\n CalendarEventTimedFunction,\n CalendarEventVisual,\n CalendarTimestamp,\n} from '../types'\n\n// Constants\nconst WIDTH_FULL = 100\nconst WIDTH_START = 95\n// const MINUTES_IN_DAY = 1440\n\ntype VEventGetter = (day: D) => CalendarEventParsed[]\ntype VEventVisualToNode = (visual: CalendarEventVisual, day: D) => VNode | false\ntype VEventsToNodes = (\n day: D,\n getter: VEventGetter,\n mapper: VEventVisualToNode,\n timed: boolean) => VNode[] | undefined\n\ntype VDailyEventsMap = {\n [date: string]: {\n parent: HTMLElement\n more: HTMLElement | null\n events: HTMLElement[]\n }\n}\n\nexport interface VEventScopeInput {\n eventParsed: CalendarEventParsed\n day: CalendarDaySlotScope\n start: boolean\n end: boolean\n timed: boolean\n}\n\n// Prevent import from being erased\nvoid vRipple\n\nexport const makeCalendarWithEventsProps = propsFactory({\n events: {\n type: Array as PropType,\n default: () => [],\n },\n eventStart: {\n type: String,\n default: 'start',\n },\n eventEnd: {\n type: String,\n default: 'end',\n },\n eventTimed: {\n type: [String, Function] as PropType,\n default: 'timed',\n },\n eventCategory: {\n type: [String, Function] as PropType,\n default: 'category',\n },\n eventHeight: {\n type: Number,\n default: 20,\n },\n eventColor: {\n type: [String, Function] as PropType,\n default: 'primary',\n },\n eventTextColor: {\n type: [String, Function] as PropType,\n },\n eventName: {\n type: [String, Function] as PropType,\n default: 'name',\n },\n eventOverlapThreshold: {\n type: [String, Number],\n default: 60,\n },\n eventOverlapMode: {\n type: [String, Function] as PropType<'stack' | 'column' | CalendarEventOverlapMode>,\n default: 'stack',\n validate: (mode: any) => mode in CalendarEventOverlapModes || typeof mode === 'function',\n },\n eventMore: {\n type: Boolean,\n default: true,\n },\n eventMoreText: {\n type: String,\n default: '$vuetify.calendar.moreEvents',\n },\n eventRipple: {\n type: [Boolean, Object],\n default: null,\n },\n eventMarginBottom: {\n type: Number,\n default: 1,\n },\n}, 'VCalendar-events')\n\ninterface CalendarWithEventsProps extends CalendarBaseProps {\n events: CalendarEvent[]\n eventStart: string\n eventEnd: string\n eventTimed: string | CalendarEventTimedFunction\n eventCategory: string | CalendarEventCategoryFunction\n eventHeight: number\n eventColor: string | CalendarEventColorFunction\n eventTextColor: string | CalendarEventColorFunction | undefined\n eventName: string | CalendarEventNameFunction\n eventOverlapThreshold: string | number\n eventOverlapMode: string | CalendarEventOverlapMode\n eventMore: boolean\n eventMoreText: string\n eventRipple: boolean | object | null | undefined\n eventMarginBottom: number\n type: 'month' | 'week' | 'day' | '4day' | 'custom-weekly' | 'custom-daily' | 'category'\n}\n\nexport function useCalendarWithEvents (props: CalendarWithEventsProps, slots: any, attrs: any) {\n const base = useCalendarBase(props)\n\n const noEvents = computed((): boolean => {\n return !Array.isArray(props.events) || props.events.length === 0\n })\n\n const categoryMode = computed((): boolean => {\n return props.type === 'category'\n })\n\n const eventTimedFunction = computed((): CalendarEventTimedFunction => {\n return typeof props.eventTimed === 'function'\n ? props.eventTimed\n : event => !!event[props.eventTimed as string]\n })\n\n const eventCategoryFunction = computed((): CalendarEventCategoryFunction => {\n return typeof props.eventCategory === 'function'\n ? props.eventCategory\n : event => event[props.eventCategory as string]\n })\n\n const parsedEvents = computed((): CalendarEventParsed[] => {\n if (!props.events) return []\n return props.events.map((event, index) => parseEvent(\n event,\n index,\n props.eventStart || '',\n props.eventEnd || '',\n eventTimedFunction.value(event),\n categoryMode.value ? eventCategoryFunction.value(event) : false,\n ))\n })\n\n const parsedEventOverlapThreshold = computed((): number => {\n return parseInt(String(props.eventOverlapThreshold || 0))\n })\n\n const eventTextColorFunction = computed((): CalendarEventColorFunction => {\n return typeof props.eventTextColor === 'function'\n ? props.eventTextColor\n : () => props.eventTextColor as string\n })\n\n const eventNameFunction = computed((): CalendarEventNameFunction => {\n return typeof props.eventName === 'function'\n ? props.eventName\n : (event, timedEvent) => event.input[props.eventName as string] as string || ''\n })\n\n const eventModeFunction = computed((): CalendarEventOverlapMode => {\n return typeof props.eventOverlapMode === 'function'\n ? props.eventOverlapMode\n : CalendarEventOverlapModes[props.eventOverlapMode as keyof typeof CalendarEventOverlapModes]\n })\n\n const eventWeekdays = computed((): number[] => {\n return base.effectiveWeekdays.value\n })\n\n function eventColorFunction (e: CalendarEvent): string | undefined {\n return typeof props.eventColor === 'function'\n ? props.eventColor(e)\n : e.color || props.eventColor\n }\n\n const eventsRef = ref([])\n\n function updateEventVisibility () {\n if (noEvents.value || !props.eventMore) {\n return\n }\n\n const eventHeight = props.eventHeight || 0\n const eventsMap = getEventsMap()\n\n for (const date in eventsMap) {\n const { parent, events, more } = eventsMap[date]\n if (!more) {\n break\n }\n\n const parentBounds = parent.getBoundingClientRect()\n const last = events.length - 1\n const eventsSorted = events.map(event => ({\n event,\n bottom: event.getBoundingClientRect().bottom,\n })).sort((a, b) => a.bottom - b.bottom)\n let hidden = 0\n\n for (let i = 0; i <= last; i++) {\n const bottom = eventsSorted[i].bottom\n const hide = i === last\n ? (bottom > parentBounds.bottom)\n : (bottom + eventHeight > parentBounds.bottom)\n\n if (hide) {\n eventsSorted[i].event.style.display = 'none'\n hidden++\n }\n }\n\n // TODO: avoid direct DOM manipulation\n if (hidden) {\n more.style.display = ''\n more.innerHTML = base.locale.t(props.eventMoreText, hidden)\n } else {\n more.style.display = 'none'\n }\n }\n }\n\n function getEventsMap (): VDailyEventsMap {\n const eventsMap: VDailyEventsMap = {}\n const elements = eventsRef.value\n\n if (!elements || !elements.length) {\n return eventsMap\n }\n\n elements.forEach(el => {\n const date = el.getAttribute('data-date')\n if (el.parentElement && date) {\n if (!(date in eventsMap)) {\n eventsMap[date] = {\n parent: el.parentElement,\n more: null,\n events: [],\n }\n }\n if (el.getAttribute('data-more')) {\n eventsMap[date].more = el\n } else {\n eventsMap[date].events.push(el)\n el.style.display = ''\n }\n }\n })\n\n return eventsMap\n }\n\n function genDayEvent ({ event }: CalendarEventVisual, day: CalendarDaySlotScope): VNode {\n const eventHeight = props.eventHeight || 0\n const eventMarginBottom = props.eventMarginBottom || 0\n const dayIdentifier = getDayIdentifier(day)\n const week = day.week\n const start = dayIdentifier === event.startIdentifier\n let end = dayIdentifier === event.endIdentifier\n let width = WIDTH_START\n\n if (!categoryMode.value) {\n for (let i = day.index + 1; i < week.length; i++) {\n const weekdayIdentifier = getDayIdentifier(week[i])\n if (event.endIdentifier >= weekdayIdentifier) {\n width += WIDTH_FULL\n end = end || weekdayIdentifier === event.endIdentifier\n } else {\n end = true\n break\n }\n }\n }\n const scope = { eventParsed: event, day, start, end, timed: false }\n\n return genEvent(event, scope, false, {\n class: [\n 'v-event',\n { 'v-event-start': start, 'v-event-end': end },\n ],\n style: {\n height: `${eventHeight}px`,\n width: `${width}%`,\n marginBottom: `${eventMarginBottom}px`,\n },\n 'data-date': day.date,\n })\n }\n\n function genTimedEvent ({ event, left, width }: CalendarEventVisual, day: CalendarDayBodySlotScope): VNode | false {\n const startDelta = day.timeDelta(event.start, day)\n const endDelta = day.timeDelta(event.end, day)\n if (\n endDelta === false ||\n startDelta === false ||\n endDelta < 0 ||\n startDelta >= 1 ||\n isEventHiddenOn(event, day)\n ) {\n return false\n }\n\n const dayIdentifier = getDayIdentifier(day)\n const start = event.startIdentifier >= dayIdentifier\n const end = event.endIdentifier > dayIdentifier\n const top = day.timeToY(event.start, day)\n const bottom = day.timeToY(event.end, day)\n const height = Math.max(props.eventHeight || 0, bottom - top)\n const scope = { eventParsed: event, day, start, end, timed: true }\n\n return genEvent(event, scope, true, {\n class: 'v-event-timed',\n style: {\n top: `${top}px`,\n height: `${height}px`,\n left: `${left}%`,\n width: `${width}%`,\n },\n })\n }\n\n function genEvent (\n event: CalendarEventParsed,\n scopeInput: VEventScopeInput,\n timedEvent: boolean,\n data: Record\n ): VNode {\n const slot = slots.event\n const text = eventTextColorFunction.value(event.input)\n const background = eventColorFunction(event.input)\n const overlapsNoon = event.start.hour < 12 && event.end.hour >= 12\n const singline = diffMinutes(event.start, event.end) <= parsedEventOverlapThreshold.value\n const formatTime = (withTime: CalendarTimestamp, ampm: boolean): string => {\n const formatter = base.getFormatter({\n timeZone: 'UTC',\n hour: 'numeric',\n minute: withTime.minute > 0 ? 'numeric' : undefined,\n })\n return formatter(withTime, true)\n }\n\n const timeSummary = () => formatTime(event.start, overlapsNoon) + ' - ' + formatTime(event.end, true)\n\n const eventSummary = () => {\n const name = eventNameFunction.value(event, timedEvent)\n if (event.start.hasTime) {\n if (timedEvent) {\n const time = timeSummary()\n const delimiter = singline ? ', ' :
\n\n return (\n \n { name }\n { delimiter }\n { time }\n \n )\n } else {\n const time = formatTime(event.start, true)\n\n return (\n \n { time } { name }\n \n )\n }\n }\n\n return { name }\n }\n\n const scope = {\n ...scopeInput,\n event: event.input,\n outside: scopeInput.day.outside,\n singline,\n overlapsNoon,\n formatTime,\n timeSummary,\n eventSummary,\n }\n\n const events = getPrefixedEventHandlers(attrs, ':event', (nativeEvent: Event) => ({ ...scope, nativeEvent }))\n\n return (\n \n { slot?.(scope) ?? genName(eventSummary) }\n \n )\n }\n\n function genName (eventSummary: () => string | VNode): VNode {\n return (\n
\n { eventSummary() }\n
\n )\n }\n\n function genPlaceholder (day: CalendarTimestamp): VNode {\n const height = (props.eventHeight || 0) + (props.eventMarginBottom || 0)\n return (\n \n )\n }\n\n function genMore (day: CalendarDaySlotScope): VNode {\n const eventHeight = props.eventHeight || 0\n const eventMarginBottom = props.eventMarginBottom || 0\n const events = getPrefixedEventHandlers(attrs, ':more', (nativeEvent: Event) => ({ nativeEvent, ...day }))\n\n return (\n \n )\n }\n\n function getVisibleEvents (): CalendarEventParsed[] {\n const days = base.days.value\n const start = getDayIdentifier(days[0])\n const end = getDayIdentifier(days[days.length - 1])\n\n return parsedEvents.value.filter(\n event => isEventOverlapping(event, start, end)\n )\n }\n\n function isEventForCategory (event: CalendarEventParsed, category: CalendarCategory): boolean {\n return !categoryMode.value ||\n (typeof category === 'object' && category.categoryName &&\n category.categoryName === event.category) ||\n (typeof event.category === 'string' && category === event.category) ||\n (typeof event.category !== 'string' && category === null)\n }\n\n function getEventsForDay (day: CalendarDaySlotScope): CalendarEventParsed[] {\n const identifier = getDayIdentifier(day)\n const firstWeekday = eventWeekdays.value[0]\n\n return parsedEvents.value.filter(\n event => isEventStart(event, day, identifier, firstWeekday)\n )\n }\n\n function getEventsForDayAll (day: CalendarDaySlotScope): CalendarEventParsed[] {\n const identifier = getDayIdentifier(day)\n const firstWeekday = eventWeekdays.value[0]\n\n return parsedEvents.value.filter(\n event => event.allDay &&\n (categoryMode.value ? isEventOn(event, identifier) : isEventStart(event, day, identifier, firstWeekday)) &&\n isEventForCategory(event, day.category)\n )\n }\n\n function getEventsForDayTimed (day: CalendarDaySlotScope): CalendarEventParsed[] {\n return parsedEvents.value.filter(\n event => !event.allDay &&\n isEventOnDay(event, day, day.intervalRange) &&\n isEventForCategory(event, day.category)\n )\n }\n\n function getScopedSlots () {\n if (noEvents.value) {\n return { ...slots }\n }\n\n const mode = eventModeFunction.value(\n parsedEvents.value,\n eventWeekdays.value[0],\n parsedEventOverlapThreshold.value\n )\n\n const isNode = (input: VNode | false): input is VNode => !!input\n const getSlotChildren: VEventsToNodes = (day, getter, mapper, timed) => {\n const events = getter(day)\n const visuals = mode(day, events, timed, categoryMode.value)\n\n if (timed) {\n return visuals.map(visual => mapper(visual, day)).filter(isNode)\n }\n\n const children: VNode[] = []\n\n visuals.forEach((visual, index) => {\n while (children.length < visual.column) {\n children.push(genPlaceholder(day) as VNode)\n }\n\n const mapped = mapper(visual, day)\n if (mapped) {\n children.push(mapped)\n }\n })\n\n return children\n }\n\n return {\n ...slots,\n day: (day: CalendarDaySlotScope) => {\n let children = getSlotChildren(day, getEventsForDay, genDayEvent, false)\n if (children && children.length > 0 && props.eventMore) {\n children.push(genMore(day) as VNode)\n }\n if (slots.day) {\n const slot = slots.day(day)\n if (slot) {\n children = children ? children.concat(slot) : slot\n }\n }\n return children\n },\n 'day-header': (day: CalendarDaySlotScope) => {\n let children = getSlotChildren(day, getEventsForDayAll, genDayEvent, false)\n\n if (slots['day-header']) {\n const slot = slots['day-header'](day)\n if (slot) {\n children = children ? children.concat(slot) : slot\n }\n }\n return children\n },\n 'day-body': (day: CalendarDayBodySlotScope) => {\n const events = getSlotChildren(day, getEventsForDayTimed, genTimedEvent, true)\n let children: VNode[] = [\n
{ events }
,\n ]\n\n if (slots['day-body']) {\n const slot = slots['day-body'](day)\n if (slot) {\n children = children.concat(slot)\n }\n }\n return children\n },\n }\n }\n\n return {\n ...base,\n noEvents,\n parsedEvents,\n parsedEventOverlapThreshold,\n eventTimedFunction,\n eventCategoryFunction,\n eventTextColorFunction,\n eventNameFunction,\n eventModeFunction,\n eventWeekdays,\n categoryMode,\n eventColorFunction,\n eventsRef,\n updateEventVisibility,\n getEventsMap,\n genDayEvent,\n genTimedEvent,\n genEvent,\n genName,\n genPlaceholder,\n genMore,\n getVisibleEvents,\n isEventForCategory,\n getEventsForDay,\n getEventsForDayAll,\n getEventsForDayTimed,\n getScopedSlots,\n }\n}\n", "// Types\nimport type { CalendarEventParsed, CalendarEventVisual, CalendarTimestamp } from '../types'\nimport { getTimestampIdentifier } from '../util/timestamp'\n\nconst MILLIS_IN_DAY = 86400000\n\nexport type GetRange = (event: CalendarEventParsed) => [number, number]\n\nexport function getVisuals (events: CalendarEventParsed[], minStart = 0): CalendarEventVisual[] {\n const visuals = events.map(event => ({\n event,\n columnCount: 0,\n column: 0,\n left: 0,\n width: 100,\n }))\n\n visuals.sort((a, b) => {\n return (\n Math.max(minStart, a.event.startTimestampIdentifier) - Math.max(minStart, b.event.startTimestampIdentifier)\n ) || (b.event.endTimestampIdentifier - a.event.endTimestampIdentifier)\n })\n\n return visuals\n}\n\nexport interface ColumnGroup {\n start: number\n end: number\n visuals: CalendarEventVisual[]\n}\n\nexport function hasOverlap (s0: number, e0: number, s1: number, e1: number, exclude = true): boolean {\n return exclude ? !(s0 >= e1 || e0 <= s1) : !(s0 > e1 || e0 < s1)\n}\n\nexport function setColumnCount (groups: ColumnGroup[]) {\n groups.forEach(group => {\n group.visuals.forEach(groupVisual => {\n groupVisual.columnCount = groups.length\n })\n })\n}\n\nexport function getRange (event: CalendarEventParsed): [number, number] {\n return [event.startTimestampIdentifier, event.endTimestampIdentifier]\n}\n\nexport function getDayRange (event: CalendarEventParsed): [number, number] {\n return [event.startIdentifier, event.endIdentifier]\n}\n\nexport function getNormalizedRange (event: CalendarEventParsed, dayStart: number): [number, number] {\n return [Math.max(dayStart, event.startTimestampIdentifier), Math.min(dayStart + MILLIS_IN_DAY, event.endTimestampIdentifier)]\n}\n\nexport function getOpenGroup (groups: ColumnGroup[], start: number, end: number, timed: boolean) {\n for (let i = 0; i < groups.length; i++) {\n const group = groups[i]\n let intersected = false\n\n if (hasOverlap(start, end, group.start, group.end, timed)) {\n for (let k = 0; k < group.visuals.length; k++) {\n const groupVisual = group.visuals[k]\n const [groupStart, groupEnd] = timed ? getRange(groupVisual.event) : getDayRange(groupVisual.event)\n\n if (hasOverlap(start, end, groupStart, groupEnd, timed)) {\n intersected = true\n break\n }\n }\n }\n\n if (!intersected) {\n return i\n }\n }\n\n return -1\n}\n\nexport function getOverlapGroupHandler (firstWeekday: number) {\n const handler = {\n groups: [] as ColumnGroup[],\n min: -1,\n max: -1,\n reset: () => {\n handler.groups = []\n handler.min = handler.max = -1\n },\n getVisuals: (day: CalendarTimestamp, dayEvents: CalendarEventParsed[], timed: boolean, reset = false) => {\n if (day.weekday === firstWeekday || reset) {\n handler.reset()\n }\n\n const dayStart = getTimestampIdentifier(day)\n const visuals = getVisuals(dayEvents, dayStart)\n\n visuals.forEach(visual => {\n const [start, end] = timed ? getRange(visual.event) : getDayRange(visual.event)\n\n if (handler.groups.length > 0 && !hasOverlap(start, end, handler.min, handler.max, timed)) {\n setColumnCount(handler.groups)\n handler.reset()\n }\n\n let targetGroup = getOpenGroup(handler.groups, start, end, timed)\n\n if (targetGroup === -1) {\n targetGroup = handler.groups.length\n\n handler.groups.push({ start, end, visuals: [] })\n }\n\n const target = handler.groups[targetGroup]\n target.visuals.push(visual)\n target.start = Math.min(target.start, start)\n target.end = Math.max(target.end, end)\n\n visual.column = targetGroup\n\n if (handler.min === -1) {\n handler.min = start\n handler.max = end\n } else {\n handler.min = Math.min(handler.min, start)\n handler.max = Math.max(handler.max, end)\n }\n })\n\n setColumnCount(handler.groups)\n\n if (timed) {\n handler.reset()\n }\n\n return visuals\n },\n }\n\n return handler\n}\n", "// Types\nimport { getOverlapGroupHandler } from './common'\nimport type { CalendarEventOverlapMode } from '../types'\n\nconst FULL_WIDTH = 100\n\nexport const column: CalendarEventOverlapMode = (events, firstWeekday, overlapThreshold) => {\n const handler = getOverlapGroupHandler(firstWeekday)\n\n return (day, dayEvents, timed, reset) => {\n const visuals = handler.getVisuals(day, dayEvents, timed, reset)\n\n if (timed) {\n visuals.forEach(visual => {\n visual.left = visual.column * FULL_WIDTH / visual.columnCount\n visual.width = FULL_WIDTH / visual.columnCount\n })\n }\n\n return visuals\n }\n}\n", "// Types\nimport { getNormalizedRange, getOverlapGroupHandler, getVisuals, hasOverlap } from './common'\nimport type { CalendarEventOverlapMode, CalendarEventVisual } from '../types'\nimport { getTimestampIdentifier } from '../util/timestamp'\n\ninterface Group {\n start: number\n end: number\n visuals: CalendarEventVisual[]\n}\n\ninterface Node {\n parent: Node | null\n sibling: boolean\n index: number\n visual: CalendarEventVisual\n start: number\n end: number\n children: Node[]\n}\n\nconst FULL_WIDTH = 100\n\nconst DEFAULT_OFFSET = 5\n\nconst WIDTH_MULTIPLIER = 1.7\n\n/**\n * Variation of column mode where events can be stacked. The priority of this\n * mode is to stack events together taking up the least amount of space while\n * trying to ensure the content of the event is always visible as well as its\n * start and end. A sibling column has intersecting event content and must be\n * placed beside each other. Non-sibling columns are offset by 5% from the\n * previous column. The width is scaled by 1.7 so the events overlap and\n * whitespace is reduced. If there is a hole in columns the event width is\n * scaled up so it intersects with the next column. The columns have equal\n * width in the space they are given. If the event doesn't have any to the\n * right of it that intersect with it's content it's right side is extended\n * to the right side.\n */\n\nexport const stack: CalendarEventOverlapMode = (events, firstWeekday, overlapThreshold) => {\n const handler = getOverlapGroupHandler(firstWeekday)\n\n // eslint-disable-next-line max-statements\n return (day, dayEvents, timed, reset) => {\n if (!timed) {\n return handler.getVisuals(day, dayEvents, timed, reset)\n }\n\n const dayStart = getTimestampIdentifier(day)\n const visuals = getVisuals(dayEvents, dayStart)\n const groups = getGroups(visuals, dayStart)\n\n for (const group of groups) {\n const nodes: Node[] = []\n\n for (const visual of group.visuals) {\n const child = getNode(visual, dayStart)\n const index = getNextIndex(child, nodes)\n\n if (index === false) {\n const parent = getParent(child, nodes)\n if (parent) {\n child.parent = parent\n child.sibling = hasOverlap(child.start, child.end, parent.start, addTime(parent.start, overlapThreshold))\n child.index = parent.index + 1\n parent.children.push(child)\n }\n } else {\n const [parent] = getOverlappingRange(child, nodes, index - 1, index - 1)\n const children = getOverlappingRange(child, nodes, index + 1, index + nodes.length, true)\n\n child.children = children\n child.index = index\n\n if (parent) {\n child.parent = parent\n child.sibling = hasOverlap(child.start, child.end, parent.start, addTime(parent.start, overlapThreshold))\n parent.children.push(child)\n }\n\n for (const grand of children) {\n if (grand.parent === parent) {\n grand.parent = child\n }\n\n const grandNext = grand.index - child.index <= 1\n if (grandNext && child.sibling &&\n hasOverlap(child.start, addTime(child.start, overlapThreshold), grand.start, grand.end)) {\n grand.sibling = true\n }\n }\n }\n\n nodes.push(child)\n }\n\n calculateBounds(nodes, overlapThreshold)\n }\n\n visuals.sort((a, b) => (a.left - b.left) || (a.event.startTimestampIdentifier - b.event.startTimestampIdentifier))\n\n return visuals\n }\n}\n\nfunction calculateBounds (nodes: Node[], overlapThreshold: number) {\n for (const node of nodes) {\n const { visual, parent } = node\n const columns = getMaxChildIndex(node) + 1\n const spaceLeft = parent ? parent.visual.left : 0\n const spaceWidth = FULL_WIDTH - spaceLeft\n const offset = Math.min(DEFAULT_OFFSET, FULL_WIDTH / columns)\n const columnWidthMultiplier = getColumnWidthMultiplier(node, nodes)\n const columnOffset = spaceWidth / (columns - node.index + 1)\n const columnWidth = spaceWidth / (columns - node.index + (node.sibling ? 1 : 0)) * columnWidthMultiplier\n\n if (parent) {\n visual.left = node.sibling\n ? spaceLeft + columnOffset\n : spaceLeft + offset\n }\n\n visual.width = hasFullWidth(node, nodes, overlapThreshold)\n ? FULL_WIDTH - visual.left\n : Math.min(FULL_WIDTH - visual.left, columnWidth * WIDTH_MULTIPLIER)\n }\n}\n\nfunction getColumnWidthMultiplier (node: Node, nodes: Node[]): number {\n if (!node.children.length) {\n return 1\n }\n\n const maxColumn = node.index + nodes.length\n const minColumn = node.children.reduce((min, c) => Math.min(min, c.index), maxColumn)\n\n return minColumn - node.index\n}\n\nfunction getOverlappingIndices (node: Node, nodes: Node[]): number[] {\n const indices: number[] = []\n for (const other of nodes) {\n if (hasOverlap(node.start, node.end, other.start, other.end)) {\n indices.push(other.index)\n }\n }\n return indices\n}\n\nfunction getNextIndex (node: Node, nodes: Node[]): number | false {\n const indices = getOverlappingIndices(node, nodes)\n indices.sort()\n\n for (let i = 0; i < indices.length; i++) {\n if (i < indices[i]) {\n return i\n }\n }\n return false\n}\n\nfunction getOverlappingRange (node: Node, nodes: Node[], indexMin: number, indexMax: number, returnFirstColumn = false): Node[] {\n const overlapping: Node[] = []\n for (const other of nodes) {\n if (other.index >= indexMin && other.index <= indexMax && hasOverlap(node.start, node.end, other.start, other.end)) {\n overlapping.push(other)\n }\n }\n if (returnFirstColumn && overlapping.length > 0) {\n const first = overlapping.reduce((min, n) => Math.min(min, n.index), overlapping[0].index)\n return overlapping.filter(n => n.index === first)\n }\n return overlapping\n}\n\nfunction getParent (node: Node, nodes: Node[]): Node | null {\n let parent: Node | null = null\n for (const other of nodes) {\n if (hasOverlap(node.start, node.end, other.start, other.end) && (parent === null || other.index > parent.index)) {\n parent = other\n }\n }\n return parent\n}\n\nfunction hasFullWidth (node: Node, nodes: Node[], overlapThreshold: number): boolean {\n for (const other of nodes) {\n if (other !== node &&\n other.index > node.index &&\n hasOverlap(node.start, addTime(node.start, overlapThreshold), other.start, other.end)) {\n return false\n }\n }\n\n return true\n}\n\nfunction getGroups (visuals: CalendarEventVisual[], dayStart: number): Group[] {\n const groups: Group[] = []\n\n for (const visual of visuals) {\n const [start, end] = getNormalizedRange(visual.event, dayStart)\n let added = false\n\n for (const group of groups) {\n if (hasOverlap(start, end, group.start, group.end)) {\n group.visuals.push(visual)\n group.end = Math.max(group.end, end)\n added = true\n break\n }\n }\n\n if (!added) {\n groups.push({ start, end, visuals: [visual] })\n }\n }\n\n return groups\n}\n\nfunction getNode (visual: CalendarEventVisual, dayStart: number): Node {\n const [start, end] = getNormalizedRange(visual.event, dayStart)\n\n return {\n parent: null,\n sibling: true,\n index: 0,\n visual,\n start,\n end,\n children: [],\n }\n}\n\nfunction getMaxChildIndex (node: Node): number {\n let max = node.index\n for (const child of node.children) {\n const childMax = getMaxChildIndex(child)\n if (childMax > max) {\n max = childMax\n }\n }\n return max\n}\n\nfunction addTime (identifier: number, minutes: number): number {\n const removeMinutes = identifier % 100\n const totalMinutes = removeMinutes + minutes\n const addHours = Math.floor(totalMinutes / 60)\n const addMinutes = totalMinutes % 60\n\n return identifier - removeMinutes + addHours * 100 + addMinutes\n}\n", "// Types\nimport { column } from './column'\nimport { stack } from './stack'\nimport type { CalendarEventOverlapMode } from '../types'\n\nexport const CalendarEventOverlapModes: Record = {\n stack,\n column,\n}\n", "import {\n copyTimestamp,\n getDayIdentifier,\n getTimestampIdentifier,\n isTimedless,\n nextMinutes,\n parseTimestamp,\n updateHasTime,\n} from './timestamp'\n\n// Types\nimport type { CalendarEvent, CalendarEventParsed, CalendarTimestamp } from '../types'\n\nexport function parseEvent (\n input: CalendarEvent,\n index: number,\n startProperty: string,\n endProperty: string,\n timed = false,\n category: string | false = false,\n): CalendarEventParsed {\n const startInput = input[startProperty]\n const endInput = input[endProperty]\n const startParsed: CalendarTimestamp = parseTimestamp(startInput, true)\n const endParsed: CalendarTimestamp = (endInput ? parseTimestamp(endInput, true) : startParsed)\n const start: CalendarTimestamp = isTimedless(startInput)\n ? updateHasTime(startParsed, timed)\n : startParsed\n const end: CalendarTimestamp = isTimedless(endInput)\n ? updateHasTime(endParsed, timed)\n : endParsed\n const startIdentifier: number = getDayIdentifier(start)\n const startTimestampIdentifier: number = getTimestampIdentifier(start)\n const endIdentifier: number = getDayIdentifier(end)\n const endOffset: number = start.hasTime ? 0 : 2359\n const endTimestampIdentifier: number = getTimestampIdentifier(end) + endOffset\n const allDay = !start.hasTime\n\n return { input, start, startIdentifier, startTimestampIdentifier, end, endIdentifier, endTimestampIdentifier, allDay, index, category }\n}\n\nexport function isEventOn (event: CalendarEventParsed, dayIdentifier: number): boolean {\n return dayIdentifier >= event.startIdentifier && dayIdentifier <= event.endIdentifier\n}\n\nexport function isEventOnDay (\n event: CalendarEventParsed,\n day: CalendarTimestamp,\n inRange?: [number, number]\n): boolean {\n if (inRange) {\n const dayStart = nextMinutes(copyTimestamp(day), inRange[0])\n const dayEnd = nextMinutes(copyTimestamp(day), inRange[1])\n\n const starts = event.startTimestampIdentifier < getTimestampIdentifier(dayEnd)\n const ends = event.endTimestampIdentifier > getTimestampIdentifier(dayStart)\n\n return starts && ends\n }\n\n return isEventOn(event, getDayIdentifier(day))\n}\n\nexport function isEventHiddenOn (event: CalendarEventParsed, day: CalendarTimestamp): boolean {\n return event.end.time === '00:00' && event.end.date === day.date && event.start.date !== day.date\n}\n\nexport function isEventStart (\n event: CalendarEventParsed,\n day: CalendarTimestamp,\n dayIdentifier: number,\n firstWeekday: number\n): boolean {\n return dayIdentifier === event.startIdentifier || (firstWeekday === day.weekday && isEventOn(event, dayIdentifier))\n}\n\nexport function isEventOverlapping (\n event: CalendarEventParsed,\n startIdentifier: number,\n endIdentifier: number\n): boolean {\n return startIdentifier <= event.endIdentifier && endIdentifier >= event.startIdentifier\n}\n", "// Styles\nimport './VCarousel.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VProgressLinear } from '@/components/VProgressLinear'\nimport { makeVWindowProps, VWindow } from '@/components/VWindow/VWindow'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { onMounted, ref, watch } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VWindowSlots } from '@/components/VWindow/VWindow'\nimport type { GroupProvide } from '@/composables/group'\nimport type { GenericProps } from '@/util'\n\nexport const makeVCarouselProps = propsFactory({\n color: String,\n cycle: Boolean,\n delimiterIcon: {\n type: IconValue,\n default: '$delimiter',\n },\n height: {\n type: [Number, String],\n default: 500,\n },\n hideDelimiters: Boolean,\n hideDelimiterBackground: Boolean,\n interval: {\n type: [Number, String],\n default: 6000,\n validator: (value: string | number) => Number(value) > 0,\n },\n progress: [Boolean, String],\n verticalDelimiters: [Boolean, String] as PropType,\n\n ...makeVWindowProps({\n continuous: true,\n mandatory: 'force' as const,\n showArrows: true,\n }),\n}, 'VCarousel')\n\ntype VCarouselSlots = Omit & {\n item: {\n props: Record\n item: {\n id: string\n value: unknown\n disabled: boolean | undefined\n }\n }\n}\n\nexport const VCarousel = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VCarouselSlots,\n) => GenericProps>()({\n name: 'VCarousel',\n\n props: makeVCarouselProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { t } = useLocale()\n const windowRef = ref()\n\n let slideTimeout = -1\n watch(model, restartTimeout)\n watch(() => props.interval, restartTimeout)\n watch(() => props.cycle, val => {\n if (val) restartTimeout()\n else window.clearTimeout(slideTimeout)\n })\n\n onMounted(startTimeout)\n\n function startTimeout () {\n if (!props.cycle || !windowRef.value) return\n\n slideTimeout = window.setTimeout(\n windowRef.value.group.next,\n Number(props.interval) > 0 ? Number(props.interval) : 6000\n )\n }\n\n function restartTimeout () {\n window.clearTimeout(slideTimeout)\n window.requestAnimationFrame(startTimeout)\n }\n\n useRender(() => {\n const windowProps = VWindow.filterProps(props)\n\n return (\n \n {{\n default: slots.default,\n additional: ({ group }: { group: GroupProvide }) => (\n <>\n { !props.hideDelimiters && (\n \n { group.items.value.length > 0 && (\n \n { group.items.value.map((item, index) => {\n const props = {\n id: `carousel-item-${item.id}`,\n 'aria-label': t('$vuetify.carousel.ariaLabel.delimiter', index + 1, group.items.value.length),\n class: [\n 'v-carousel__controls__item',\n group.isSelected(item.id) && 'v-btn--active',\n ],\n onClick: () => group.select(item.id, true),\n }\n\n return slots.item\n ? slots.item({ props, item })\n : ()\n })}\n \n )}\n \n )}\n\n { props.progress && (\n \n )}\n \n ),\n prev: slots.prev,\n next: slots.next,\n }}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VCarousel = InstanceType\n", "// Styles\nimport './VWindow.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { useGroup } from '@/composables/group'\nimport { useLocale, useRtl } from '@/composables/locale'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Directives\nimport vTouch from '@/directives/touch'\n\n// Utilities\nimport { computed, nextTick, provide, ref, shallowRef, toRef, watch } from 'vue'\nimport { convertToUnit, genericComponent, IN_BROWSER, PREFERS_REDUCED_MOTION, propsFactory, useRender } from '@/util'\nimport { getScrollParent } from '@/util/getScrollParent'\n\n// Types\nimport type { ComputedRef, InjectionKey, PropType, Ref } from 'vue'\nimport type { GroupItemProvide, GroupProvide } from '@/composables/group'\nimport type { IconValue } from '@/composables/icons'\nimport type { TouchHandlers } from '@/directives/touch'\nimport type { GenericProps } from '@/util'\n\nexport type VWindowSlots = {\n default: { group: GroupProvide }\n additional: { group: GroupProvide }\n prev: { props: ControlProps }\n next: { props: ControlProps }\n}\n\ntype WindowProvide = {\n transition: ComputedRef\n transitionCount: Ref\n transitionHeight: Ref\n isReversed: Ref\n rootRef: Ref\n}\n\ntype ControlProps = {\n icon: IconValue\n class: string\n onClick: () => void\n 'aria-label': string\n}\n\nexport const VWindowSymbol: InjectionKey = Symbol.for('vuetify:v-window')\nexport const VWindowGroupSymbol: InjectionKey = Symbol.for('vuetify:v-window-group')\n\nexport const makeVWindowProps = propsFactory({\n continuous: Boolean,\n nextIcon: {\n type: [Boolean, String, Function, Object] as PropType,\n default: '$next',\n },\n prevIcon: {\n type: [Boolean, String, Function, Object] as PropType,\n default: '$prev',\n },\n reverse: Boolean,\n showArrows: {\n type: [Boolean, String],\n validator: (v: any) => typeof v === 'boolean' || v === 'hover',\n },\n verticalArrows: [Boolean, String] as PropType,\n touch: {\n type: [Object, Boolean] as PropType,\n default: undefined,\n },\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n },\n\n modelValue: null,\n disabled: Boolean,\n selectedClass: {\n type: String,\n default: 'v-window-item--active',\n },\n // TODO: mandatory should probably not be exposed but do this for now\n mandatory: {\n type: [Boolean, String] as PropType,\n default: 'force' as const,\n },\n crossfade: Boolean,\n transitionDuration: Number,\n\n ...makeComponentProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VWindow')\n\nexport const VWindow = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VWindowSlots,\n) => GenericProps>()({\n name: 'VWindow',\n\n directives: { vTouch },\n\n props: makeVWindowProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { isRtl } = useRtl()\n const { t } = useLocale()\n\n const group = useGroup(props, VWindowGroupSymbol)\n\n const rootRef = ref()\n const isRtlReverse = computed(() => isRtl.value ? !props.reverse : props.reverse)\n const isReversed = shallowRef(false)\n const transition = computed(() => {\n if (props.crossfade) {\n return 'v-window-crossfade-transition'\n }\n\n const axis = props.direction === 'vertical' ? 'y' : 'x'\n const reverse = isRtlReverse.value ? !isReversed.value : isReversed.value\n const direction = reverse ? '-reverse' : ''\n\n return `v-window-${axis}${direction}-transition`\n })\n const transitionCount = shallowRef(0)\n const transitionHeight = ref(undefined)\n\n const activeIndex = computed(() => {\n return group.items.value.findIndex(item => group.selected.value.includes(item.id))\n })\n\n // Fix for https://github.com/vuetifyjs/vuetify/issues/18447\n watch(activeIndex, (newVal, oldVal) => {\n let scrollableParent: HTMLElement | undefined\n const savedScrollPosition = { left: 0, top: 0 }\n\n if (IN_BROWSER && oldVal >= 0) {\n scrollableParent = getScrollParent(rootRef.value)\n\n savedScrollPosition.left = scrollableParent?.scrollLeft\n savedScrollPosition.top = scrollableParent?.scrollTop\n }\n\n const itemsLength = group.items.value.length\n const lastIndex = itemsLength - 1\n\n if (itemsLength <= 2) {\n isReversed.value = newVal < oldVal\n } else if (newVal === lastIndex && oldVal === 0) {\n isReversed.value = false\n } else if (newVal === 0 && oldVal === lastIndex) {\n isReversed.value = true\n } else {\n isReversed.value = newVal < oldVal\n }\n\n nextTick(() => {\n if (!IN_BROWSER || !scrollableParent) return\n\n const currentScrollY = scrollableParent.scrollTop\n\n if (currentScrollY !== savedScrollPosition.top) {\n scrollableParent.scrollTo({ ...savedScrollPosition, behavior: 'instant' })\n }\n\n requestAnimationFrame(() => {\n if (!scrollableParent) return\n\n const rafScrollY = scrollableParent.scrollTop\n\n if (rafScrollY !== savedScrollPosition.top) {\n scrollableParent.scrollTo({ ...savedScrollPosition, behavior: 'instant' })\n }\n })\n })\n }, { flush: 'sync' }) // Run synchronously before DOM updates\n\n provide(VWindowSymbol, {\n transition,\n isReversed,\n transitionCount,\n transitionHeight,\n rootRef,\n })\n\n const canMoveBack = toRef(() => props.continuous || activeIndex.value !== 0)\n const canMoveForward = toRef(() => props.continuous || activeIndex.value !== group.items.value.length - 1)\n\n function prev () {\n canMoveBack.value && group.prev()\n }\n\n function next () {\n canMoveForward.value && group.next()\n }\n\n const arrows = computed(() => {\n const arrows = []\n\n const prevProps = {\n icon: isRtl.value ? props.nextIcon : props.prevIcon,\n class: `v-window__${isRtlReverse.value ? 'right' : 'left'}`,\n onClick: group.prev,\n 'aria-label': t('$vuetify.carousel.prev'),\n }\n\n arrows.push(canMoveBack.value\n ? slots.prev\n ? slots.prev({ props: prevProps })\n : \n :
\n )\n\n const nextProps = {\n icon: isRtl.value ? props.prevIcon : props.nextIcon,\n class: `v-window__${isRtlReverse.value ? 'left' : 'right'}`,\n onClick: group.next,\n 'aria-label': t('$vuetify.carousel.next'),\n }\n\n arrows.push(canMoveForward.value\n ? slots.next\n ? slots.next({ props: nextProps })\n : \n :
\n )\n\n return arrows\n })\n\n const touchOptions = computed(() => {\n if (props.touch === false) return props.touch\n\n const options: TouchHandlers = {\n left: () => {\n isRtlReverse.value ? prev() : next()\n },\n right: () => {\n isRtlReverse.value ? next() : prev()\n },\n start: ({ originalEvent }) => {\n originalEvent.stopPropagation()\n },\n }\n\n return {\n ...options,\n ...(props.touch === true ? {} : props.touch),\n }\n })\n\n useRender(() => (\n \n \n { slots.default?.({ group }) }\n\n { props.showArrows !== false && (\n \n { arrows.value }\n
\n )}\n
\n\n { slots.additional?.({ group }) }\n \n ))\n\n return {\n group,\n }\n },\n})\n\nexport type VWindow = InstanceType\n", "// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { makeLazyProps, useLazy } from '@/composables/lazy'\nimport { useSsrBoot } from '@/composables/ssrBoot'\nimport { MaybeTransition } from '@/composables/transition'\n\n// Directives\nimport vTouch from '@/directives/touch'\n\n// Utilities\nimport { computed, inject, nextTick, shallowRef } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport { VWindowGroupSymbol, VWindowSymbol } from './VWindow'\n\nexport const makeVWindowItemProps = propsFactory({\n reverseTransition: {\n type: [Boolean, String],\n default: undefined,\n },\n transition: {\n type: [Boolean, String],\n default: undefined,\n },\n\n ...makeComponentProps(),\n ...makeGroupItemProps(),\n ...makeLazyProps(),\n}, 'VWindowItem')\n\nexport const VWindowItem = genericComponent()({\n name: 'VWindowItem',\n\n directives: { vTouch },\n\n props: makeVWindowItemProps(),\n\n emits: {\n 'group:selected': (val: { value: boolean }) => true,\n },\n\n setup (props, { slots }) {\n const window = inject(VWindowSymbol)\n const groupItem = useGroupItem(props, VWindowGroupSymbol)\n const { isBooted } = useSsrBoot()\n\n if (!window || !groupItem) throw new Error('[Vuetify] VWindowItem must be used inside VWindow')\n\n const isTransitioning = shallowRef(false)\n const hasTransition = computed(() => isBooted.value && (\n window.isReversed.value\n ? props.reverseTransition !== false\n : props.transition !== false\n ))\n\n function onAfterTransition () {\n if (!isTransitioning.value || !window) {\n return\n }\n\n // Finalize transition state.\n isTransitioning.value = false\n if (window.transitionCount.value > 0) {\n window.transitionCount.value -= 1\n\n // Remove container height if we are out of transition.\n if (window.transitionCount.value === 0) {\n window.transitionHeight.value = undefined\n }\n }\n }\n\n function onBeforeTransition () {\n if (isTransitioning.value || !window) {\n return\n }\n\n // Initialize transition state here.\n isTransitioning.value = true\n\n if (window.transitionCount.value === 0) {\n // Set initial height for height transition.\n window.transitionHeight.value = convertToUnit(window.rootRef.value?.clientHeight)\n }\n\n window.transitionCount.value += 1\n }\n\n function onTransitionCancelled () {\n onAfterTransition() // This should have the same path as normal transition end.\n }\n\n function onEnterTransition (el: Element) {\n if (!isTransitioning.value) {\n return\n }\n\n nextTick(() => {\n // Do not set height if no transition or cancelled.\n if (!hasTransition.value || !isTransitioning.value || !window) {\n return\n }\n\n // Set transition target height.\n window.transitionHeight.value = convertToUnit(el.clientHeight)\n })\n }\n\n const transition = computed(() => {\n const name = window.isReversed.value\n ? props.reverseTransition\n : props.transition\n\n return !hasTransition.value ? false : {\n name: typeof name !== 'string' ? window.transition.value : name,\n onBeforeEnter: onBeforeTransition,\n onAfterEnter: onAfterTransition,\n onEnterCancelled: onTransitionCancelled,\n onBeforeLeave: onBeforeTransition,\n onAfterLeave: onAfterTransition,\n onLeaveCancelled: onTransitionCancelled,\n onEnter: onEnterTransition,\n }\n })\n\n const { hasContent } = useLazy(props, groupItem.isSelected)\n\n useRender(() => (\n \n \n { hasContent.value && slots.default?.() }\n \n \n ))\n\n return { groupItem }\n },\n})\n\nexport type VWindowItem = InstanceType\n", "// Components\nimport { makeVImgProps, VImg } from '@/components/VImg/VImg'\nimport { makeVWindowItemProps, VWindowItem } from '@/components/VWindow/VWindowItem'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VImgSlots } from '@/components/VImg/VImg'\n\nexport const makeVCarouselItemProps = propsFactory({\n ...makeVImgProps(),\n ...makeVWindowItemProps(),\n}, 'VCarouselItem')\n\nexport const VCarouselItem = genericComponent()({\n name: 'VCarouselItem',\n\n inheritAttrs: false,\n\n props: makeVCarouselItemProps(),\n\n setup (props, { slots, attrs }) {\n useRender(() => {\n const imgProps = VImg.filterProps(props)\n const windowItemProps = VWindowItem.filterProps(props)\n\n return (\n \n \n \n )\n })\n },\n})\n\nexport type VCarouselItem = InstanceType\n", "// Styles\nimport './VCode.sass'\n\n// Utilities\nimport { createSimpleFunctional } from '@/util'\n\nexport const VCode = createSimpleFunctional('v-code', 'code')\n\nexport type VCode = InstanceType\n", "// Styles\nimport './VColorPicker.sass'\n\n// Components\nimport { VColorPickerCanvas } from './VColorPickerCanvas'\nimport { VColorPickerEdit } from './VColorPickerEdit'\nimport { makeVColorPickerPreviewProps, VColorPickerPreview } from './VColorPickerPreview'\nimport { VColorPickerSwatches } from './VColorPickerSwatches'\nimport { makeVPickerProps, VPicker } from '@/labs/VPicker/VPicker'\n\n// Composables\nimport { useRtl } from '@/composables'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, onBeforeMount, ref, watch } from 'vue'\nimport { extractColor, modes, nullColor } from './util'\nimport { consoleWarn, defineComponent, HSVtoCSS, parseColor, pick, propsFactory, RGBtoHSV, useRender } from '@/util'\n\n// Types\nimport type { DeepReadonly, PropType } from 'vue'\nimport type { Color, HSV } from '@/util'\n\nexport const makeVColorPickerProps = propsFactory({\n canvasHeight: {\n type: [String, Number],\n default: 150,\n },\n disabled: Boolean,\n dotSize: {\n type: [Number, String],\n default: 10,\n },\n hideCanvas: Boolean,\n hideSliders: Boolean,\n hideInputs: Boolean,\n mode: {\n type: String as PropType,\n default: 'rgba',\n validator: (v: string) => Object.keys(modes).includes(v),\n },\n modes: {\n type: Array as PropType,\n default: () => Object.keys(modes),\n validator: (v: any) => Array.isArray(v) && v.every(m => Object.keys(modes).includes(m)),\n },\n showSwatches: Boolean,\n swatches: Array as PropType>,\n swatchesMaxHeight: {\n type: [Number, String],\n default: 150,\n },\n modelValue: {\n type: [Object, String] as PropType | string | undefined | null>,\n },\n\n ...makeVPickerProps({ hideHeader: true }),\n ...pick(makeVColorPickerPreviewProps(), ['hideEyeDropper', 'eyeDropperIcon']),\n}, 'VColorPicker')\n\nexport const VColorPicker = defineComponent({\n name: 'VColorPicker',\n\n props: makeVColorPickerProps(),\n\n emits: {\n 'update:modelValue': (color: any) => true,\n 'update:mode': (mode: keyof typeof modes) => true,\n },\n\n setup (props, { slots }) {\n const mode = useProxiedModel(props, 'mode')\n const hue = ref(null)\n const model = useProxiedModel(\n props,\n 'modelValue',\n undefined,\n v => {\n if (v == null || v === '') return null\n\n let c: HSV\n try {\n c = RGBtoHSV(parseColor(v as any))\n } catch (err) {\n consoleWarn(err as any)\n return null\n }\n\n return c\n },\n v => {\n if (!v) return null\n\n return extractColor(v, props.modelValue)\n }\n )\n const currentColor = computed(() => {\n return model.value\n ? { ...model.value, h: hue.value ?? model.value.h }\n : null\n })\n const { rtlClasses } = useRtl()\n\n let externalChange = true\n watch(model, v => {\n if (!externalChange) {\n // prevent hue shift from rgb conversion inaccuracy\n externalChange = true\n return\n }\n if (!v) return\n hue.value = v.h\n }, { immediate: true })\n\n const updateColor = (hsva: HSV) => {\n externalChange = false\n hue.value = hsva.h\n model.value = hsva\n }\n\n onBeforeMount(() => {\n if (!props.modes.includes(mode.value)) mode.value = props.modes[0]\n })\n\n provideDefaults({\n VSlider: {\n color: undefined,\n trackColor: undefined,\n trackFillColor: undefined,\n },\n })\n\n useRender(() => {\n const pickerProps = VPicker.filterProps(props)\n\n return (\n (\n <>\n { !props.hideCanvas && (\n \n )}\n\n { (!props.hideSliders || !props.hideInputs) && (\n
\n { !props.hideSliders && (\n \n )}\n\n { !props.hideInputs && (\n mode.value = m }\n color={ currentColor.value }\n onUpdate:color={ updateColor }\n disabled={ props.disabled }\n />\n )}\n
\n )}\n\n { props.showSwatches && (\n \n )}\n \n ),\n }}\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VColorPicker = InstanceType\n", "// Styles\nimport './VColorPickerCanvas.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, onMounted, ref, shallowRef, watch } from 'vue'\nimport { clamp, convertToUnit, defineComponent, getEventCoordinates, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { HSV } from '@/util'\n\nexport const makeVColorPickerCanvasProps = propsFactory({\n color: {\n type: Object as PropType,\n },\n disabled: Boolean,\n dotSize: {\n type: [Number, String],\n default: 10,\n },\n height: {\n type: [Number, String],\n default: 150,\n },\n width: {\n type: [Number, String],\n default: 300,\n },\n\n ...makeComponentProps(),\n}, 'VColorPickerCanvas')\n\nexport const VColorPickerCanvas = defineComponent({\n name: 'VColorPickerCanvas',\n\n props: makeVColorPickerCanvasProps(),\n\n emits: {\n 'update:color': (color: HSV) => true,\n 'update:position': (hue: any) => true,\n },\n\n setup (props, { emit }) {\n const isInteracting = shallowRef(false)\n const canvasRef = ref()\n const canvasWidth = shallowRef(parseFloat(props.width))\n const canvasHeight = shallowRef(parseFloat(props.height))\n\n const _dotPosition = ref({ x: 0, y: 0 })\n const dotPosition = computed({\n get: () => _dotPosition.value,\n set (val) {\n if (!canvasRef.value) return\n\n const { x, y } = val\n _dotPosition.value = val\n\n emit('update:color', {\n h: props.color?.h ?? 0,\n s: clamp(x, 0, canvasWidth.value) / canvasWidth.value,\n v: 1 - clamp(y, 0, canvasHeight.value) / canvasHeight.value,\n a: props.color?.a ?? 1,\n })\n },\n })\n\n const dotStyles = computed(() => {\n const { x, y } = dotPosition.value\n const radius = parseInt(props.dotSize, 10) / 2\n\n return {\n width: convertToUnit(props.dotSize),\n height: convertToUnit(props.dotSize),\n transform: `translate(${convertToUnit(x - radius)}, ${convertToUnit(y - radius)})`,\n }\n })\n\n const { resizeRef } = useResizeObserver(entries => {\n if (!resizeRef.el?.offsetParent) return\n\n const { width, height } = entries[0].contentRect\n\n canvasWidth.value = width\n canvasHeight.value = height\n })\n\n function updateDotPosition (x: number, y: number, rect: DOMRect) {\n const { left, top, width, height } = rect\n dotPosition.value = {\n x: clamp(x - left, 0, width),\n y: clamp(y - top, 0, height),\n }\n }\n\n function handleMouseDown (e: MouseEvent | TouchEvent) {\n if (e.type === 'mousedown') {\n // Prevent text selection while dragging\n e.preventDefault()\n }\n\n if (props.disabled) return\n\n handleMouseMove(e)\n\n window.addEventListener('mousemove', handleMouseMove)\n window.addEventListener('mouseup', handleMouseUp)\n window.addEventListener('touchmove', handleMouseMove)\n window.addEventListener('touchend', handleMouseUp)\n }\n\n function handleMouseMove (e: MouseEvent | TouchEvent) {\n if (props.disabled || !canvasRef.value) return\n\n isInteracting.value = true\n\n const coords = getEventCoordinates(e)\n\n updateDotPosition(coords.clientX, coords.clientY, canvasRef.value.getBoundingClientRect())\n }\n\n function handleMouseUp () {\n window.removeEventListener('mousemove', handleMouseMove)\n window.removeEventListener('mouseup', handleMouseUp)\n window.removeEventListener('touchmove', handleMouseMove)\n window.removeEventListener('touchend', handleMouseUp)\n }\n\n function updateCanvas () {\n if (!canvasRef.value) return\n\n const canvas = canvasRef.value\n const ctx = canvas.getContext('2d')\n\n if (!ctx) return\n\n const saturationGradient = ctx.createLinearGradient(0, 0, canvas.width, 0)\n saturationGradient.addColorStop(0, 'hsla(0, 0%, 100%, 1)') // white\n saturationGradient.addColorStop(1, `hsla(${props.color?.h ?? 0}, 100%, 50%, 1)`)\n ctx.fillStyle = saturationGradient\n ctx.fillRect(0, 0, canvas.width, canvas.height)\n\n const valueGradient = ctx.createLinearGradient(0, 0, 0, canvas.height)\n valueGradient.addColorStop(0, 'hsla(0, 0%, 0%, 0)') // transparent\n valueGradient.addColorStop(1, 'hsla(0, 0%, 0%, 1)') // black\n ctx.fillStyle = valueGradient\n ctx.fillRect(0, 0, canvas.width, canvas.height)\n }\n\n watch(() => props.color?.h, updateCanvas, { immediate: true })\n watch(() => [canvasWidth.value, canvasHeight.value], (newVal, oldVal) => {\n updateCanvas()\n _dotPosition.value = {\n x: dotPosition.value.x * newVal[0] / oldVal[0],\n y: dotPosition.value.y * newVal[1] / oldVal[1],\n }\n }, { flush: 'post' })\n\n watch(() => props.color, () => {\n if (isInteracting.value) {\n isInteracting.value = false\n return\n }\n\n _dotPosition.value = props.color ? {\n x: props.color.s * canvasWidth.value,\n y: (1 - props.color.v) * canvasHeight.value,\n } : { x: 0, y: 0 }\n }, { deep: true, immediate: true })\n\n onMounted(() => updateCanvas())\n\n useRender(() => (\n \n \n { props.color && (\n \n )}\n \n ))\n\n return {}\n },\n})\n\nexport type VColorPickerCanvas = InstanceType\n", "// Styles\nimport './VColorPickerEdit.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed } from 'vue'\nimport { modes, nullColor } from './util'\nimport { defineComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { HSV } from '@/util/colorUtils'\n\nconst VColorPickerInput = ({ label, ...rest }: any) => {\n return (\n \n \n { label }\n \n )\n}\n\nexport const makeVColorPickerEditProps = propsFactory({\n color: Object as PropType,\n disabled: Boolean,\n mode: {\n type: String as PropType,\n default: 'rgba',\n validator: (v: string) => Object.keys(modes).includes(v),\n },\n modes: {\n type: Array as PropType,\n default: () => Object.keys(modes),\n validator: (v: any) => Array.isArray(v) && v.every(m => Object.keys(modes).includes(m)),\n },\n\n ...makeComponentProps(),\n}, 'VColorPickerEdit')\n\nexport const VColorPickerEdit = defineComponent({\n name: 'VColorPickerEdit',\n\n props: makeVColorPickerEditProps(),\n\n emits: {\n 'update:color': (color: HSV) => true,\n 'update:mode': (mode: keyof typeof modes) => true,\n },\n\n setup (props, { emit }) {\n const { t } = useLocale()\n const enabledModes = computed(() => {\n return props.modes.map(key => ({ ...modes[key], name: key }))\n })\n\n const inputs = computed(() => {\n const mode = enabledModes.value.find(m => m.name === props.mode)\n\n if (!mode) return []\n\n const color = props.color ? mode.to(props.color) : null\n\n return mode.inputs?.map(({ getValue, getColor, localeKey, ...inputProps }) => {\n return {\n ...mode.inputProps,\n ...inputProps,\n ariaLabel: t(`$vuetify.colorPicker.ariaLabel.${localeKey}`),\n disabled: props.disabled,\n value: color && getValue(color),\n onChange: (e: InputEvent) => {\n const target = e.target as HTMLInputElement | null\n\n if (!target) return\n\n emit('update:color', mode.from(getColor(color ?? mode.to(nullColor), target.value)))\n },\n }\n })\n })\n\n useRender(() => (\n \n { inputs.value?.map(props => (\n \n ))}\n { enabledModes.value.length > 1 && (\n {\n const mi = enabledModes.value.findIndex(m => m.name === props.mode)\n\n emit('update:mode', enabledModes.value[(mi + 1) % enabledModes.value.length].name)\n }}\n />\n )}\n \n ))\n\n return {}\n },\n})\n\nexport type VColorPickerEdit = InstanceType\n", "// Utilities\nimport {\n HexToHSV,\n HSLtoHSV,\n HSVtoHex,\n HSVtoHSL,\n HSVtoRGB,\n RGBtoHSV,\n} from '@/util/colorUtils'\nimport { has } from '@/util/helpers'\n\n// Types\nimport type { HSL, HSV, RGB } from '@/util/colorUtils'\n\nfunction stripAlpha (color: any, stripAlpha: boolean) {\n if (stripAlpha) {\n const { a, ...rest } = color\n\n return rest\n }\n\n return color\n}\n\nexport function extractColor (color: HSV, input: any) {\n if (input == null || typeof input === 'string') {\n const hasA = color.a !== 1\n if (input?.startsWith('rgb(')) {\n const { r, g, b, a } = HSVtoRGB(color)\n return `rgb(${r} ${g} ${b}` + (hasA ? ` / ${a})` : ')')\n } else if (input?.startsWith('hsl(')) {\n const { h, s, l, a } = HSVtoHSL(color)\n return `hsl(${h} ${Math.round(s * 100)} ${Math.round(l * 100)}` + (hasA ? ` / ${a})` : ')')\n }\n\n const hex = HSVtoHex(color)\n\n if (color.a === 1) return hex.slice(0, 7)\n else return hex\n }\n\n if (typeof input === 'object') {\n let converted\n\n if (has(input, ['r', 'g', 'b'])) converted = HSVtoRGB(color)\n else if (has(input, ['h', 's', 'l'])) converted = HSVtoHSL(color)\n else if (has(input, ['h', 's', 'v'])) converted = color\n\n return stripAlpha(converted, !has(input, ['a']) && color.a === 1)\n }\n\n return color\n}\n\nexport function hasAlpha (color: any) {\n if (!color) return false\n\n if (typeof color === 'string') {\n return color.length > 7\n }\n\n if (typeof color === 'object') {\n return has(color, ['a']) || has(color, ['alpha'])\n }\n\n return false\n}\n\nexport const nullColor = { h: 0, s: 0, v: 0, a: 1 }\n\nexport type ColorPickerMode = {\n inputProps: Record\n inputs: {\n [key: string]: any\n getValue: (color: any) => number | string\n getColor: (color: any, v: string) => any\n }[]\n from: (color: any) => HSV\n to: (color: HSV) => any\n}\n\nconst rgba: ColorPickerMode = {\n inputProps: {\n type: 'number',\n min: 0,\n },\n inputs: [\n {\n label: 'R',\n max: 255,\n step: 1,\n getValue: (c: RGB) => Math.round(c.r),\n getColor: (c: RGB, v: string): RGB => ({ ...c, r: Number(v) }),\n localeKey: 'redInput',\n },\n {\n label: 'G',\n max: 255,\n step: 1,\n getValue: (c: RGB) => Math.round(c.g),\n getColor: (c: RGB, v: string): RGB => ({ ...c, g: Number(v) }),\n localeKey: 'greenInput',\n },\n {\n label: 'B',\n max: 255,\n step: 1,\n getValue: (c: RGB) => Math.round(c.b),\n getColor: (c: RGB, v: string): RGB => ({ ...c, b: Number(v) }),\n localeKey: 'blueInput',\n },\n {\n label: 'A',\n max: 1,\n step: 0.01,\n getValue: ({ a }: RGB) => a != null ? Math.round(a * 100) / 100 : 1,\n getColor: (c: RGB, v: string): RGB => ({ ...c, a: Number(v) }),\n localeKey: 'alphaInput',\n },\n ],\n to: HSVtoRGB,\n from: RGBtoHSV,\n}\n\nconst rgb = {\n ...rgba,\n inputs: rgba.inputs?.slice(0, 3),\n}\n\nconst hsla: ColorPickerMode = {\n inputProps: {\n type: 'number',\n min: 0,\n },\n inputs: [\n {\n label: 'H',\n max: 360,\n step: 1,\n getValue: (c: HSL) => Math.round(c.h),\n getColor: (c: HSL, v: string): HSL => ({ ...c, h: Number(v) }),\n localeKey: 'hueInput',\n },\n {\n label: 'S',\n max: 1,\n step: 0.01,\n getValue: (c: HSL) => Math.round(c.s * 100) / 100,\n getColor: (c: HSL, v: string): HSL => ({ ...c, s: Number(v) }),\n localeKey: 'saturationInput',\n },\n {\n label: 'L',\n max: 1,\n step: 0.01,\n getValue: (c: HSL) => Math.round(c.l * 100) / 100,\n getColor: (c: HSL, v: string): HSL => ({ ...c, l: Number(v) }),\n localeKey: 'lightnessInput',\n },\n {\n label: 'A',\n max: 1,\n step: 0.01,\n getValue: ({ a }: HSL) => a != null ? Math.round(a * 100) / 100 : 1,\n getColor: (c: HSL, v: string): HSL => ({ ...c, a: Number(v) }),\n localeKey: 'alphaInput',\n },\n ],\n to: HSVtoHSL,\n from: HSLtoHSV,\n}\n\nconst hsl = {\n ...hsla,\n inputs: hsla.inputs.slice(0, 3),\n}\n\nconst hexa: ColorPickerMode = {\n inputProps: {\n type: 'text',\n },\n inputs: [\n {\n label: 'HEXA',\n getValue: (c: string) => c,\n getColor: (c: string, v: string) => v,\n localeKey: 'hexaInput',\n },\n ],\n to: HSVtoHex,\n from: HexToHSV,\n}\n\nconst hex = {\n ...hexa,\n inputs: [\n {\n label: 'HEX',\n getValue: (c: string) => c.slice(0, 7),\n getColor: (c: string, v: string) => v,\n localeKey: 'hexInput',\n },\n ],\n}\n\nexport const modes = {\n rgb,\n rgba,\n hsl,\n hsla,\n hex,\n hexa,\n} satisfies Record\n", "// Styles\nimport './VColorPickerPreview.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VSlider } from '@/components/VSlider'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { onUnmounted } from 'vue'\nimport { nullColor } from './util'\nimport {\n defineComponent,\n HSVtoCSS,\n parseColor,\n propsFactory,\n RGBtoHSV,\n SUPPORTS_EYE_DROPPER,\n useRender,\n} from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { HSV } from '@/util'\n\nexport const makeVColorPickerPreviewProps = propsFactory({\n color: {\n type: Object as PropType,\n },\n disabled: Boolean,\n hideAlpha: Boolean,\n hideEyeDropper: Boolean,\n eyeDropperIcon: {\n type: IconValue,\n default: '$eyeDropper',\n },\n\n ...makeComponentProps(),\n}, 'VColorPickerPreview')\n\nexport const VColorPickerPreview = defineComponent({\n name: 'VColorPickerPreview',\n\n props: makeVColorPickerPreviewProps(),\n\n emits: {\n 'update:color': (color: HSV) => true,\n },\n\n setup (props, { emit }) {\n const { t } = useLocale()\n\n const abortController = new AbortController()\n\n onUnmounted(() => abortController.abort())\n\n async function openEyeDropper () {\n if (!SUPPORTS_EYE_DROPPER || props.disabled) return\n\n const eyeDropper = new window.EyeDropper()\n try {\n const result = await eyeDropper.open({ signal: abortController.signal })\n const colorHexValue = RGBtoHSV(parseColor(result.sRGBHex))\n emit('update:color', { ...(props.color ?? nullColor), ...colorHexValue })\n } catch (e) {}\n }\n\n useRender(() => (\n \n { SUPPORTS_EYE_DROPPER && !props.hideEyeDropper && (\n
\n \n
\n )}\n\n
\n
\n
\n\n
\n emit('update:color', { ...(props.color ?? nullColor), h }) }\n step={ 1 }\n min={ 0 }\n max={ 360 }\n disabled={ props.disabled }\n thumbSize={ 14 }\n trackSize={ 8 }\n trackFillColor=\"white\"\n hideDetails\n />\n\n { !props.hideAlpha && (\n emit('update:color', { ...(props.color ?? nullColor), a }) }\n step={ 0.01 }\n min={ 0 }\n max={ 1 }\n disabled={ props.disabled }\n thumbSize={ 14 }\n trackSize={ 8 }\n trackFillColor=\"white\"\n hideDetails\n />\n )}\n
\n
\n ))\n\n return {}\n },\n})\n\nexport type VColorPickerPreview = InstanceType\n", "// Styles\nimport './VColorPickerSwatches.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\n\n// Utilities\nimport {\n convertToUnit,\n deepEqual,\n defineComponent,\n getContrast,\n parseColor,\n propsFactory,\n RGBtoCSS,\n RGBtoHSV,\n useRender,\n} from '@/util'\nimport colors from '@/util/colors'\n\n// Types\nimport type { DeepReadonly, PropType } from 'vue'\nimport type { Color, HSV } from '@/util'\n\nexport const makeVColorPickerSwatchesProps = propsFactory({\n swatches: {\n type: Array as PropType>,\n default: () => parseDefaultColors(colors),\n },\n disabled: Boolean,\n color: Object as PropType,\n maxHeight: [Number, String],\n\n ...makeComponentProps(),\n}, 'VColorPickerSwatches')\n\nfunction parseDefaultColors (colors: Record>) {\n return Object.keys(colors).map(key => {\n const color = colors[key]\n return color.base ? [\n color.base,\n color.darken4,\n color.darken3,\n color.darken2,\n color.darken1,\n color.lighten1,\n color.lighten2,\n color.lighten3,\n color.lighten4,\n color.lighten5,\n ] : [\n color.black,\n color.white,\n color.transparent,\n ]\n })\n}\n\nexport const VColorPickerSwatches = defineComponent({\n name: 'VColorPickerSwatches',\n\n props: makeVColorPickerSwatchesProps(),\n\n emits: {\n 'update:color': (color: HSV) => true,\n },\n\n setup (props, { emit }) {\n function onSwatchClick (hsva: HSV) {\n if (props.disabled || !hsva) {\n return\n }\n\n emit('update:color', hsva)\n }\n\n useRender(() => (\n \n
\n { props.swatches.map(swatch => (\n
\n { swatch.map(color => {\n const rgba = parseColor(color)\n const hsva = RGBtoHSV(rgba)\n const background = RGBtoCSS(rgba)\n\n return (\n onSwatchClick(hsva) }\n >\n
\n { props.color && deepEqual(props.color, hsva)\n ? 2 ? 'white' : 'black' } />\n : undefined\n }\n
\n
\n )\n })}\n
\n ))}\n \n \n ))\n\n return {}\n },\n})\n\nexport type VColorPickerSwatches = InstanceType\n", "export const red = {\n base: '#f44336',\n lighten5: '#ffebee',\n lighten4: '#ffcdd2',\n lighten3: '#ef9a9a',\n lighten2: '#e57373',\n lighten1: '#ef5350',\n darken1: '#e53935',\n darken2: '#d32f2f',\n darken3: '#c62828',\n darken4: '#b71c1c',\n accent1: '#ff8a80',\n accent2: '#ff5252',\n accent3: '#ff1744',\n accent4: '#d50000',\n}\n\nexport const pink = {\n base: '#e91e63',\n lighten5: '#fce4ec',\n lighten4: '#f8bbd0',\n lighten3: '#f48fb1',\n lighten2: '#f06292',\n lighten1: '#ec407a',\n darken1: '#d81b60',\n darken2: '#c2185b',\n darken3: '#ad1457',\n darken4: '#880e4f',\n accent1: '#ff80ab',\n accent2: '#ff4081',\n accent3: '#f50057',\n accent4: '#c51162',\n}\n\nexport const purple = {\n base: '#9c27b0',\n lighten5: '#f3e5f5',\n lighten4: '#e1bee7',\n lighten3: '#ce93d8',\n lighten2: '#ba68c8',\n lighten1: '#ab47bc',\n darken1: '#8e24aa',\n darken2: '#7b1fa2',\n darken3: '#6a1b9a',\n darken4: '#4a148c',\n accent1: '#ea80fc',\n accent2: '#e040fb',\n accent3: '#d500f9',\n accent4: '#aa00ff',\n}\n\nexport const deepPurple = {\n base: '#673ab7',\n lighten5: '#ede7f6',\n lighten4: '#d1c4e9',\n lighten3: '#b39ddb',\n lighten2: '#9575cd',\n lighten1: '#7e57c2',\n darken1: '#5e35b1',\n darken2: '#512da8',\n darken3: '#4527a0',\n darken4: '#311b92',\n accent1: '#b388ff',\n accent2: '#7c4dff',\n accent3: '#651fff',\n accent4: '#6200ea',\n}\n\nexport const indigo = {\n base: '#3f51b5',\n lighten5: '#e8eaf6',\n lighten4: '#c5cae9',\n lighten3: '#9fa8da',\n lighten2: '#7986cb',\n lighten1: '#5c6bc0',\n darken1: '#3949ab',\n darken2: '#303f9f',\n darken3: '#283593',\n darken4: '#1a237e',\n accent1: '#8c9eff',\n accent2: '#536dfe',\n accent3: '#3d5afe',\n accent4: '#304ffe',\n}\n\nexport const blue = {\n base: '#2196f3',\n lighten5: '#e3f2fd',\n lighten4: '#bbdefb',\n lighten3: '#90caf9',\n lighten2: '#64b5f6',\n lighten1: '#42a5f5',\n darken1: '#1e88e5',\n darken2: '#1976d2',\n darken3: '#1565c0',\n darken4: '#0d47a1',\n accent1: '#82b1ff',\n accent2: '#448aff',\n accent3: '#2979ff',\n accent4: '#2962ff',\n}\n\nexport const lightBlue = {\n base: '#03a9f4',\n lighten5: '#e1f5fe',\n lighten4: '#b3e5fc',\n lighten3: '#81d4fa',\n lighten2: '#4fc3f7',\n lighten1: '#29b6f6',\n darken1: '#039be5',\n darken2: '#0288d1',\n darken3: '#0277bd',\n darken4: '#01579b',\n accent1: '#80d8ff',\n accent2: '#40c4ff',\n accent3: '#00b0ff',\n accent4: '#0091ea',\n}\n\nexport const cyan = {\n base: '#00bcd4',\n lighten5: '#e0f7fa',\n lighten4: '#b2ebf2',\n lighten3: '#80deea',\n lighten2: '#4dd0e1',\n lighten1: '#26c6da',\n darken1: '#00acc1',\n darken2: '#0097a7',\n darken3: '#00838f',\n darken4: '#006064',\n accent1: '#84ffff',\n accent2: '#18ffff',\n accent3: '#00e5ff',\n accent4: '#00b8d4',\n}\n\nexport const teal = {\n base: '#009688',\n lighten5: '#e0f2f1',\n lighten4: '#b2dfdb',\n lighten3: '#80cbc4',\n lighten2: '#4db6ac',\n lighten1: '#26a69a',\n darken1: '#00897b',\n darken2: '#00796b',\n darken3: '#00695c',\n darken4: '#004d40',\n accent1: '#a7ffeb',\n accent2: '#64ffda',\n accent3: '#1de9b6',\n accent4: '#00bfa5',\n}\n\nexport const green = {\n base: '#4caf50',\n lighten5: '#e8f5e9',\n lighten4: '#c8e6c9',\n lighten3: '#a5d6a7',\n lighten2: '#81c784',\n lighten1: '#66bb6a',\n darken1: '#43a047',\n darken2: '#388e3c',\n darken3: '#2e7d32',\n darken4: '#1b5e20',\n accent1: '#b9f6ca',\n accent2: '#69f0ae',\n accent3: '#00e676',\n accent4: '#00c853',\n}\n\nexport const lightGreen = {\n base: '#8bc34a',\n lighten5: '#f1f8e9',\n lighten4: '#dcedc8',\n lighten3: '#c5e1a5',\n lighten2: '#aed581',\n lighten1: '#9ccc65',\n darken1: '#7cb342',\n darken2: '#689f38',\n darken3: '#558b2f',\n darken4: '#33691e',\n accent1: '#ccff90',\n accent2: '#b2ff59',\n accent3: '#76ff03',\n accent4: '#64dd17',\n}\n\nexport const lime = {\n base: '#cddc39',\n lighten5: '#f9fbe7',\n lighten4: '#f0f4c3',\n lighten3: '#e6ee9c',\n lighten2: '#dce775',\n lighten1: '#d4e157',\n darken1: '#c0ca33',\n darken2: '#afb42b',\n darken3: '#9e9d24',\n darken4: '#827717',\n accent1: '#f4ff81',\n accent2: '#eeff41',\n accent3: '#c6ff00',\n accent4: '#aeea00',\n}\n\nexport const yellow = {\n base: '#ffeb3b',\n lighten5: '#fffde7',\n lighten4: '#fff9c4',\n lighten3: '#fff59d',\n lighten2: '#fff176',\n lighten1: '#ffee58',\n darken1: '#fdd835',\n darken2: '#fbc02d',\n darken3: '#f9a825',\n darken4: '#f57f17',\n accent1: '#ffff8d',\n accent2: '#ffff00',\n accent3: '#ffea00',\n accent4: '#ffd600',\n}\n\nexport const amber = {\n base: '#ffc107',\n lighten5: '#fff8e1',\n lighten4: '#ffecb3',\n lighten3: '#ffe082',\n lighten2: '#ffd54f',\n lighten1: '#ffca28',\n darken1: '#ffb300',\n darken2: '#ffa000',\n darken3: '#ff8f00',\n darken4: '#ff6f00',\n accent1: '#ffe57f',\n accent2: '#ffd740',\n accent3: '#ffc400',\n accent4: '#ffab00',\n}\n\nexport const orange = {\n base: '#ff9800',\n lighten5: '#fff3e0',\n lighten4: '#ffe0b2',\n lighten3: '#ffcc80',\n lighten2: '#ffb74d',\n lighten1: '#ffa726',\n darken1: '#fb8c00',\n darken2: '#f57c00',\n darken3: '#ef6c00',\n darken4: '#e65100',\n accent1: '#ffd180',\n accent2: '#ffab40',\n accent3: '#ff9100',\n accent4: '#ff6d00',\n}\n\nexport const deepOrange = {\n base: '#ff5722',\n lighten5: '#fbe9e7',\n lighten4: '#ffccbc',\n lighten3: '#ffab91',\n lighten2: '#ff8a65',\n lighten1: '#ff7043',\n darken1: '#f4511e',\n darken2: '#e64a19',\n darken3: '#d84315',\n darken4: '#bf360c',\n accent1: '#ff9e80',\n accent2: '#ff6e40',\n accent3: '#ff3d00',\n accent4: '#dd2c00',\n}\n\nexport const brown = {\n base: '#795548',\n lighten5: '#efebe9',\n lighten4: '#d7ccc8',\n lighten3: '#bcaaa4',\n lighten2: '#a1887f',\n lighten1: '#8d6e63',\n darken1: '#6d4c41',\n darken2: '#5d4037',\n darken3: '#4e342e',\n darken4: '#3e2723',\n}\n\nexport const blueGrey = {\n base: '#607d8b',\n lighten5: '#eceff1',\n lighten4: '#cfd8dc',\n lighten3: '#b0bec5',\n lighten2: '#90a4ae',\n lighten1: '#78909c',\n darken1: '#546e7a',\n darken2: '#455a64',\n darken3: '#37474f',\n darken4: '#263238',\n}\n\nexport const grey = {\n base: '#9e9e9e',\n lighten5: '#fafafa',\n lighten4: '#f5f5f5',\n lighten3: '#eeeeee',\n lighten2: '#e0e0e0',\n lighten1: '#bdbdbd',\n darken1: '#757575',\n darken2: '#616161',\n darken3: '#424242',\n darken4: '#212121',\n}\n\nexport const shades = {\n black: '#000000',\n white: '#ffffff',\n transparent: '#ffffff00',\n}\n\nexport default {\n red,\n pink,\n purple,\n deepPurple,\n indigo,\n blue,\n lightBlue,\n cyan,\n teal,\n green,\n lightGreen,\n lime,\n yellow,\n amber,\n orange,\n deepOrange,\n brown,\n blueGrey,\n grey,\n shades,\n}\n", "// Styles\nimport './VPicker.sass'\n\n// Components\nimport { VPickerTitle } from './VPickerTitle'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\nimport { makeVSheetProps, VSheet } from '@/components/VSheet/VSheet'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VPickerSlots = {\n header: never\n default: never\n actions: never\n title: never\n}\n\nexport const makeVPickerProps = propsFactory({\n bgColor: String,\n divided: Boolean,\n landscape: Boolean,\n title: String,\n hideHeader: Boolean,\n hideTitle: Boolean,\n\n ...makeVSheetProps(),\n}, 'VPicker')\n\nexport const VPicker = genericComponent()({\n name: 'VPicker',\n\n props: makeVPickerProps(),\n\n setup (props, { slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n useRender(() => {\n const sheetProps = VSheet.filterProps(props)\n const hasTitle = !props.hideTitle && !!(props.title || slots.title)\n\n return (\n \n { !props.hideHeader && (\n \n { hasTitle && (\n \n { slots.title?.() ?? props.title }\n \n )}\n\n { slots.header && (\n
\n { slots.header() }\n
\n )}\n \n )}\n\n
\n { slots.default?.() }\n
\n\n { slots.actions && (\n \n
\n { slots.actions() }\n
\n \n )}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VPicker = InstanceType\n", "// Utilities\nimport { createSimpleFunctional } from '@/util'\n\nexport const VPickerTitle = createSimpleFunctional('v-picker-title')\n\nexport type VPickerTitle = InstanceType\n", "// Styles\nimport './VCombobox.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDivider } from '@/components/VDivider'\nimport { VIcon } from '@/components/VIcon'\nimport { useInputIcon } from '@/components/VInput/InputIcon'\nimport { VList, VListItem, VListSubheader } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { makeSelectProps } from '@/components/VSelect/VSelect'\nimport { VTextField } from '@/components/VTextField'\nimport { makeVTextFieldProps } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from '../VSelect/useScrolling'\nimport { useTextColor } from '@/composables/color'\nimport { highlightResult, makeFilterProps, useFilter } from '@/composables/filter'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { transformItem, useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { useMenuActivator } from '@/composables/menuActivator'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, toRef, watch } from 'vue'\nimport {\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n escapeForRegex,\n genericComponent,\n IN_BROWSER,\n isComposingIgnoreKey,\n noop,\n omit,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val = string | ([T] extends [Primitive]\n ? T\n : (ReturnObject extends true ? T : any))\n\ntype Value =\n Multiple extends true\n ? readonly Val[]\n : Val | null\n\nexport const makeVComboboxProps = propsFactory({\n alwaysFilter: Boolean,\n autoSelectFirst: {\n type: [Boolean, String] as PropType,\n },\n clearOnSelect: {\n type: Boolean,\n default: true,\n },\n delimiters: Array as PropType,\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...makeSelectProps({ hideNoData: true, returnObject: true }),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty']),\n}, 'VCombobox')\n\ntype ItemType = T extends readonly (infer U)[] ? U : never\n\nexport const VCombobox = genericComponent,\n ReturnObject extends boolean = true,\n Multiple extends boolean = false,\n V extends Value = Value\n>(\n props: {\n items?: T\n itemTitle?: SelectItemKey>\n itemValue?: SelectItemKey>\n itemProps?: SelectItemKey>\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V | null\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: Omit & {\n item: { item: ListItem, index: number, props: Record }\n chip: { item: ListItem, index: number, props: Record }\n selection: { item: ListItem, index: number }\n subheader: { props: Record, index: number }\n divider: { props: Record, index: number }\n 'prepend-item': never\n 'append-item': never\n 'no-data': never\n }\n) => GenericProps>()({\n name: 'VCombobox',\n\n props: makeVComboboxProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (value: any) => true,\n 'update:search': (value: string) => true,\n 'update:menu': (value: boolean) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\n const isFocused = shallowRef(false)\n const isPristine = shallowRef(true)\n const listHasFocus = shallowRef(false)\n const vMenuRef = ref()\n const vVirtualScrollRef = ref()\n const selectionIndex = shallowRef(-1)\n let cleared = false\n const { items, transformIn, transformOut } = useItems(props)\n const { textColorClasses, textColorStyles } = useTextColor(() => vTextFieldRef.value?.color)\n const { InputIcon } = useInputIcon(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const form = useForm(props)\n\n const closableChips = toRef(() => props.closableChips && !form.isReadonly.value && !form.isDisabled.value)\n const hasChips = computed(() => !!(props.chips || slots.chip))\n const hasSelectionSlot = computed(() => hasChips.value || !!slots.selection)\n\n const _search = shallowRef(!props.multiple && !hasSelectionSlot.value ? model.value[0]?.title ?? '' : '')\n const _searchLock = shallowRef(null)\n\n const search = computed({\n get: () => {\n return _search.value\n },\n set: async (val: string | null) => {\n _search.value = val ?? ''\n if (val === null || (val === '' && !props.multiple && !hasSelectionSlot.value)) {\n model.value = []\n } else if (!props.multiple && !hasSelectionSlot.value) {\n model.value = [transformItem(props, val)]\n nextTick(() => vVirtualScrollRef.value?.scrollToIndex(0))\n }\n\n if (val && props.multiple && props.delimiters?.length) {\n const values = splitByDelimiters(val)\n if (values.length > 1) {\n selectMultiple(values)\n _search.value = ''\n }\n }\n\n if (!val) selectionIndex.value = -1\n\n isPristine.value = !val\n },\n })\n\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function' ? props.counterValue(model.value)\n : typeof props.counterValue === 'number' ? props.counterValue\n : (props.multiple ? model.value.length : search.value.length)\n })\n\n const { filteredItems, getMatches } = useFilter(\n props,\n items,\n () => _searchLock.value ?? (props.alwaysFilter || !isPristine.value ? search.value : '')\n )\n\n const displayItems = computed(() => {\n if (props.hideSelected && _searchLock.value === null) {\n return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value))\n }\n return filteredItems.value\n })\n\n const menuDisabled = computed(() => (\n (props.hideNoData && !displayItems.value.length) ||\n form.isReadonly.value || form.isDisabled.value\n ))\n const _menu = useProxiedModel(props, 'menu')\n const menu = computed({\n get: () => _menu.value,\n set: v => {\n if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return\n if (v && menuDisabled.value) return\n _menu.value = v\n },\n })\n\n const { menuId, ariaExpanded, ariaControls } = useMenuActivator(props, menu)\n\n watch(_search, value => {\n if (cleared) {\n // wait for clear to finish, VTextField sets _search to null\n // then search computed triggers and updates _search to ''\n nextTick(() => (cleared = false))\n } else if (isFocused.value && !menu.value) {\n menu.value = true\n }\n\n emit('update:search', value)\n })\n\n watch(model, value => {\n if (!props.multiple && !hasSelectionSlot.value) {\n _search.value = value[0]?.title ?? ''\n }\n })\n\n const selectedValues = computed(() => model.value.map(selection => selection.value))\n\n const firstSelectableItem = computed(() => displayItems.value.find(x => x.type === 'item' && !x.props.disabled))\n\n const highlightFirst = computed(() => {\n const selectFirst = props.autoSelectFirst === true ||\n (props.autoSelectFirst === 'exact' && search.value === firstSelectableItem.value?.title)\n return selectFirst &&\n displayItems.value.length > 0 &&\n !isPristine.value &&\n !listHasFocus.value\n })\n\n const listRef = ref()\n const listEvents = useScrolling(listRef, vTextFieldRef)\n function onClear (e: MouseEvent) {\n cleared = true\n nextTick(() => (cleared = false))\n\n if (props.openOnClear) {\n menu.value = true\n }\n }\n function onMousedownControl () {\n if (menuDisabled.value) return\n\n menu.value = true\n }\n function onMousedownMenuIcon (e: MouseEvent) {\n if (menuDisabled.value) return\n\n if (isFocused.value) {\n e.preventDefault()\n e.stopPropagation()\n }\n menu.value = !menu.value\n }\n function onListKeydown (e: KeyboardEvent) {\n if (checkPrintable(e) || e.key === 'Backspace') {\n vTextFieldRef.value?.focus()\n }\n }\n // eslint-disable-next-line complexity\n function onKeydown (e: KeyboardEvent) {\n if (isComposingIgnoreKey(e) || form.isReadonly.value) return\n\n const selectionStart = vTextFieldRef.value?.selectionStart\n const length = model.value.length\n\n if (['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown'].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape'].includes(e.key)) {\n menu.value = false\n }\n\n if (\n highlightFirst.value &&\n ['Enter', 'Tab'].includes(e.key) &&\n firstSelectableItem.value &&\n !model.value.some(({ value }) => value === firstSelectableItem.value!.value)\n ) {\n select(firstSelectableItem.value)\n }\n\n if (e.key === 'ArrowDown' && highlightFirst.value) {\n listRef.value?.focus('next')\n }\n\n if (e.key === 'Enter' && search.value) {\n select(transformItem(props, search.value), true, true)\n if (hasSelectionSlot.value) _search.value = ''\n }\n\n if (['Backspace', 'Delete'].includes(e.key)) {\n if (\n !props.multiple &&\n hasSelectionSlot.value &&\n model.value.length > 0 &&\n !search.value\n ) return select(model.value[0], false)\n\n if (~selectionIndex.value) {\n e.preventDefault()\n const originalSelectionIndex = selectionIndex.value\n select(model.value[selectionIndex.value], false)\n\n selectionIndex.value = originalSelectionIndex >= length - 1 ? (length - 2) : originalSelectionIndex\n } else if (e.key === 'Backspace' && !search.value) {\n selectionIndex.value = length - 1\n }\n\n return\n }\n\n if (!props.multiple) return\n\n if (e.key === 'ArrowLeft') {\n if (selectionIndex.value < 0 && selectionStart && selectionStart > 0) return\n\n const prev = selectionIndex.value > -1\n ? selectionIndex.value - 1\n : length - 1\n\n if (model.value[prev]) {\n selectionIndex.value = prev\n } else {\n selectionIndex.value = -1\n vTextFieldRef.value?.setSelectionRange(search.value.length, search.value.length)\n }\n } else if (e.key === 'ArrowRight') {\n if (selectionIndex.value < 0) return\n\n const next = selectionIndex.value + 1\n\n if (model.value[next]) {\n selectionIndex.value = next\n } else {\n selectionIndex.value = -1\n vTextFieldRef.value?.setSelectionRange(0, 0)\n }\n } else if (~selectionIndex.value && checkPrintable(e)) {\n selectionIndex.value = -1\n }\n }\n function onPaste (e: ClipboardEvent) {\n const clipboardText = e?.clipboardData?.getData('Text') ?? ''\n const values = splitByDelimiters(clipboardText)\n\n if (values.length > 1 && props.multiple) {\n e.preventDefault()\n selectMultiple(values)\n }\n }\n function onAfterEnter () {\n if (props.eager) {\n vVirtualScrollRef.value?.calculateVisibleItems()\n }\n }\n function onAfterLeave () {\n if (isFocused.value) {\n vTextFieldRef.value?.focus()\n }\n isPristine.value = true\n _searchLock.value = null\n }\n /** @param set - null means toggle */\n function select (item: ListItem | undefined, set: boolean | null = true, keepMenu = false) {\n if (!item || item.props.disabled) return\n\n if (props.multiple) {\n const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value))\n const add = set == null ? !~index : set\n\n if (~index) {\n const value = add ? [...model.value, item] : [...model.value]\n value.splice(index, 1)\n model.value = value\n } else if (add) {\n model.value = [...model.value, item]\n }\n\n if (props.clearOnSelect) {\n search.value = ''\n }\n } else {\n const add = set !== false\n model.value = add ? [item] : []\n if ((!isPristine.value || props.alwaysFilter) && _search.value) {\n _searchLock.value = _search.value\n }\n _search.value = add && !hasSelectionSlot.value ? item.title : ''\n\n // watch for search watcher to trigger\n nextTick(() => {\n menu.value = keepMenu\n isPristine.value = true\n })\n }\n }\n function splitByDelimiters (val: string) {\n const effectiveDelimiters = ['\\n', ...props.delimiters ?? []]\n const signsToMatch = effectiveDelimiters.map(escapeForRegex).join('|')\n return val.split(new RegExp(`(?:${signsToMatch})+`))\n }\n async function selectMultiple (values: string[]) {\n for (let value of values) {\n value = value.trim()\n if (value) {\n select(transformItem(props, value))\n await nextTick()\n }\n }\n }\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n setTimeout(() => {\n listHasFocus.value = true\n })\n }\n function onFocusout (e: FocusEvent) {\n listHasFocus.value = false\n }\n\n watch(isFocused, (val, oldVal) => {\n if (val || val === oldVal) return\n\n selectionIndex.value = -1\n menu.value = false\n\n if (search.value) {\n if (props.multiple) {\n select(transformItem(props, search.value))\n return\n }\n\n if (!hasSelectionSlot.value) return\n\n if (model.value.some(({ title }) => title === search.value)) {\n _search.value = ''\n } else {\n select(transformItem(props, search.value))\n }\n }\n })\n\n watch(menu, val => {\n if (!props.hideSelected && val && model.value.length && isPristine.value) {\n const index = displayItems.value.findIndex(\n item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value))\n )\n IN_BROWSER && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n\n if (val) _searchLock.value = null\n })\n\n watch(items, (newVal, oldVal) => {\n if (menu.value) return\n\n if (isFocused.value && !oldVal.length && newVal.length) {\n menu.value = true\n }\n })\n\n useRender(() => {\n const hasList = !!(\n (!props.hideNoData || displayItems.value.length) ||\n slots['prepend-item'] ||\n slots['append-item'] ||\n slots['no-data']\n )\n const isDirty = model.value.length > 0\n const textFieldProps = VTextField.filterProps(props)\n\n return (\n -1,\n [`v-combobox--${props.multiple ? 'multiple' : 'single'}`]: true,\n },\n props.class,\n ]}\n style={ props.style }\n readonly={ form.isReadonly.value }\n placeholder={ isDirty ? undefined : props.placeholder }\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onKeydown={ onKeydown }\n onPaste={ onPaste }\n aria-expanded={ ariaExpanded.value }\n aria-controls={ ariaControls.value }\n >\n {{\n ...slots,\n default: ({ id }) => (\n <>\n \n { hasList && (\n e.preventDefault() }\n selectable\n onKeydown={ onListKeydown }\n onFocusin={ onFocusin }\n onFocusout={ onFocusout }\n tabindex=\"-1\"\n aria-live=\"polite\"\n aria-labelledby={ `${id.value}-label` }\n aria-multiselectable={ props.multiple }\n color={ props.itemColor ?? props.color }\n { ...listEvents }\n { ...props.listProps }\n >\n { slots['prepend-item']?.() }\n\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n \n ))}\n\n \n { ({ item, index, itemRef }) => {\n const itemProps = mergeProps(item.props, {\n ref: itemRef,\n key: item.value,\n active: (highlightFirst.value && item === firstSelectableItem.value) ? true : undefined,\n onClick: () => select(item, null),\n 'aria-posinset': index + 1,\n 'aria-setsize': displayItems.value.length,\n })\n\n if (item.type === 'divider') {\n return slots.divider?.({ props: item.raw, index }) ?? (\n \n )\n }\n\n if (item.type === 'subheader') {\n return slots.subheader?.({ props: item.raw, index }) ?? (\n \n )\n }\n\n return slots.item?.({\n item,\n index,\n props: itemProps,\n }) ?? (\n \n {{\n prepend: ({ isSelected }) => (\n <>\n { props.multiple && !props.hideSelected ? (\n event.preventDefault() }\n />\n ) : undefined }\n\n { item.props.prependAvatar && (\n \n )}\n\n { item.props.prependIcon && (\n \n )}\n \n ),\n title: () => {\n return isPristine.value\n ? item.title\n : highlightResult('v-combobox', item.title, getMatches(item)?.title)\n },\n }}\n \n )\n }}\n \n\n { slots['append-item']?.() }\n \n )}\n \n\n { model.value.map((item, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(item, false)\n }\n\n const slotProps = mergeProps(VChip.filterProps(item.props), {\n 'onClick:close': onChipClose,\n onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter' && e.key !== ' ') return\n\n e.preventDefault()\n e.stopPropagation()\n\n onChipClose(e)\n },\n onMousedown (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n },\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n })\n\n const hasSlot = hasChips.value ? !!slots.chip : !!slots.selection\n const slotContent = hasSlot\n ? ensureValidVNode(\n hasChips.value\n ? slots.chip!({ item, index, props: slotProps })\n : slots.selection!({ item, index })\n )\n : undefined\n\n if (hasSlot && !slotContent) return undefined\n\n return (\n \n { hasChips.value ? (\n !slots.chip ? (\n \n ) : (\n \n { slotContent }\n \n )\n ) : (\n slotContent ?? (\n \n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n ,\n )}\n \n )\n )}\n \n )\n })}\n \n ),\n 'append-inner': (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { (!props.hideNoData || props.items.length) && props.menuIcon ? (\n \n ) : undefined }\n { props.appendInnerIcon && (\n \n )}\n \n ),\n }}\n \n )\n })\n\n return forwardRefs({\n isFocused,\n isPristine,\n menu,\n search,\n selectionIndex,\n filteredItems,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VCombobox = InstanceType\n", "// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, watchEffect } from 'vue'\nimport { deepEqual, deepToRaw, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType, Ref, VNode } from 'vue'\nimport type { GenericProps } from '@/util'\n\nexport type VConfirmEditSlots = {\n default: {\n model: Ref\n save: () => void\n cancel: () => void\n isPristine: boolean\n get actions (): (props?: {}) => VNode\n }\n}\n\nexport const makeVConfirmEditProps = propsFactory({\n modelValue: null,\n color: String,\n cancelText: {\n type: String,\n default: '$vuetify.confirmEdit.cancel',\n },\n okText: {\n type: String,\n default: '$vuetify.confirmEdit.ok',\n },\n disabled: {\n type: [Boolean, Array] as PropType,\n default: undefined,\n },\n hideActions: Boolean,\n}, 'VConfirmEdit')\n\nexport const VConfirmEdit = genericComponent (\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n 'onSave'?: (value: T) => void\n },\n slots: VConfirmEditSlots\n) => GenericProps>()({\n name: 'VConfirmEdit',\n\n props: makeVConfirmEditProps(),\n\n emits: {\n cancel: () => true,\n save: (value: any) => true,\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { emit, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const internalModel = ref()\n watchEffect(() => {\n internalModel.value = structuredClone(deepToRaw(model.value))\n })\n\n const { t } = useLocale()\n\n const isPristine = computed(() => {\n return deepEqual(model.value, internalModel.value)\n })\n\n function isActionDisabled (action: 'save' | 'cancel') {\n if (typeof props.disabled === 'boolean') {\n return props.disabled\n }\n\n if (Array.isArray(props.disabled)) {\n return props.disabled.includes(action)\n }\n\n return isPristine.value\n }\n\n const isSaveDisabled = computed(() => isActionDisabled('save'))\n const isCancelDisabled = computed(() => isActionDisabled('cancel'))\n\n function save () {\n model.value = internalModel.value\n emit('save', internalModel.value)\n }\n\n function cancel () {\n internalModel.value = structuredClone(deepToRaw(model.value))\n emit('cancel')\n }\n\n function actions (actionsProps?: {}) {\n return (\n <>\n \n\n \n \n )\n }\n\n let actionsUsed = false\n useRender(() => {\n return (\n <>\n {\n slots.default?.({\n model: internalModel,\n save,\n cancel,\n isPristine: isPristine.value,\n get actions () {\n actionsUsed = true\n return actions\n },\n })\n }\n\n { !props.hideActions && !actionsUsed && actions() }\n \n )\n })\n\n return {\n save,\n cancel,\n isPristine,\n }\n },\n})\n\nexport type VConfirmEdit = InstanceType\n", "// Utilities\nimport { computed } from 'vue'\nimport { getPropertyFromItem, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { GroupableItem } from '@/components/VDataTable/composables/group'\nimport type { SelectableItem } from '@/components/VDataTable/composables/select'\nimport type { InternalItem } from '@/composables/filter'\nimport type { SelectItemKey } from '@/util'\n\nexport interface DataIteratorItemProps {\n items: any[]\n itemValue: SelectItemKey\n itemSelectable: SelectItemKey\n returnObject: boolean\n}\n\nexport interface DataIteratorItem extends Omit, 'type'>, GroupableItem, SelectableItem {\n value: unknown\n}\n\n// Composables\nexport const makeDataIteratorItemsProps = propsFactory({\n items: {\n type: Array as PropType,\n default: () => ([]),\n },\n itemValue: {\n type: [String, Array, Function] as PropType,\n default: 'id',\n },\n itemSelectable: {\n type: [String, Array, Function] as PropType,\n default: null,\n },\n returnObject: Boolean,\n}, 'DataIterator-items')\n\nexport function transformItem (\n props: Omit,\n item: any\n): DataIteratorItem {\n const value = props.returnObject ? item : getPropertyFromItem(item, props.itemValue)\n const selectable = getPropertyFromItem(item, props.itemSelectable, true)\n\n return {\n type: 'item',\n value,\n selectable,\n raw: item,\n }\n}\n\nexport function transformItems (\n props: Omit,\n items: DataIteratorItemProps['items']\n) {\n const array: DataIteratorItem[] = []\n\n for (const item of items) {\n array.push(transformItem(props, item))\n }\n\n return array\n}\n\nexport function useDataIteratorItems (props: DataIteratorItemProps) {\n const items = computed(() => transformItems(props, props.items))\n\n return { items }\n}\n", "// Components\nimport { VFadeTransition } from '@/components/transitions'\nimport { makeDataTableExpandProps, provideExpanded } from '@/components/VDataTable/composables/expand'\nimport { makeDataTableGroupProps, provideGroupBy, useGroupedItems } from '@/components/VDataTable/composables/group'\nimport { useOptions } from '@/components/VDataTable/composables/options'\nimport {\n createPagination,\n makeDataTablePaginateProps,\n providePagination,\n usePaginatedItems,\n} from '@/components/VDataTable/composables/paginate'\nimport { makeDataTableSelectProps, provideSelection } from '@/components/VDataTable/composables/select'\nimport { createSort, makeDataTableSortProps, provideSort, useSortedItems } from '@/components/VDataTable/composables/sort'\n\n// Composables\nimport { makeDataIteratorItemsProps, useDataIteratorItems } from './composables/items'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\nimport { LoaderSlot } from '@/composables/loader'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { Component } from 'vue'\nimport type { DataIteratorItem } from './composables/items'\nimport type { Group, GroupSummary } from '@/components/VDataTable/composables/group'\nimport type { SortItem } from '@/components/VDataTable/composables/sort'\nimport type { LoaderSlotProps } from '@/composables/loader'\nimport type { GenericProps } from '@/util'\n\ntype VDataIteratorSlotProps = {\n page: number\n itemsPerPage: number\n sortBy: readonly SortItem[]\n pageCount: number\n toggleSort: ReturnType['toggleSort']\n prevPage: ReturnType['prevPage']\n nextPage: ReturnType['nextPage']\n setPage: ReturnType['setPage']\n setItemsPerPage: ReturnType['setItemsPerPage']\n isSelected: ReturnType['isSelected']\n select: ReturnType['select']\n selectAll: ReturnType['selectAll']\n toggleSelect: ReturnType['toggleSelect']\n isExpanded: ReturnType['isExpanded']\n toggleExpand: ReturnType['toggleExpand']\n isGroupOpen: ReturnType['isGroupOpen']\n toggleGroup: ReturnType['toggleGroup']\n items: readonly DataIteratorItem[]\n itemsCount: number\n groupedItems: readonly (DataIteratorItem | Group> | GroupSummary>)[]\n}\n\nexport type VDataIteratorSlots = {\n default: VDataIteratorSlotProps\n header: VDataIteratorSlotProps\n footer: VDataIteratorSlotProps\n loader: LoaderSlotProps\n 'no-data': never\n}\n\nexport const makeVDataIteratorProps = propsFactory({\n search: String,\n loading: Boolean,\n\n ...makeComponentProps(),\n ...makeDataIteratorItemsProps(),\n ...makeDataTableSelectProps(),\n ...makeDataTableSortProps(),\n ...makeDataTablePaginateProps({ itemsPerPage: 5 }),\n ...makeDataTableExpandProps(),\n ...makeDataTableGroupProps(),\n ...makeFilterProps(),\n ...makeTagProps(),\n ...makeTransitionProps({\n transition: {\n component: VFadeTransition as Component,\n hideOnLeave: true,\n },\n }),\n}, 'VDataIterator')\n\nexport const VDataIterator = genericComponent (\n props: {\n items?: readonly T[]\n },\n slots: VDataIteratorSlots,\n) => GenericProps>()({\n name: 'VDataIterator',\n\n props: makeVDataIteratorProps(),\n\n emits: {\n 'update:modelValue': (value: any[]) => true,\n 'update:groupBy': (value: any) => true,\n 'update:page': (value: number) => true,\n 'update:itemsPerPage': (value: number) => true,\n 'update:sortBy': (value: any) => true,\n 'update:options': (value: any) => true,\n 'update:expanded': (value: any) => true,\n 'update:currentItems': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const groupBy = useProxiedModel(props, 'groupBy')\n const search = toRef(() => props.search)\n\n const { items } = useDataIteratorItems(props)\n const { filteredItems } = useFilter(props, items, search, { transform: item => item.raw })\n\n const { initialSortOrder, sortBy, multiSort, mustSort } = createSort(props)\n const { page, itemsPerPage } = createPagination(props)\n\n const { toggleSort } = provideSort({ initialSortOrder, sortBy, multiSort, mustSort, page })\n const { sortByWithGroups, opened, extractRows, isGroupOpen, toggleGroup } = provideGroupBy({ groupBy, sortBy })\n\n const { sortedItems } = useSortedItems(props, filteredItems, sortByWithGroups, { transform: item => item.raw })\n const { flatItems } = useGroupedItems(sortedItems, groupBy, opened, false)\n\n const itemsLength = toRef(() => flatItems.value.length)\n\n const {\n startIndex,\n stopIndex,\n pageCount,\n prevPage,\n nextPage,\n setItemsPerPage,\n setPage,\n } = providePagination({ page, itemsPerPage, itemsLength })\n const { paginatedItems } = usePaginatedItems({ items: flatItems, startIndex, stopIndex, itemsPerPage })\n\n const paginatedItemsWithoutGroups = computed(() => extractRows(paginatedItems.value))\n\n const {\n isSelected,\n select,\n selectAll,\n toggleSelect,\n } = provideSelection(props, { allItems: items, currentPage: paginatedItemsWithoutGroups })\n const { isExpanded, toggleExpand } = provideExpanded(props)\n\n useOptions({\n page,\n itemsPerPage,\n sortBy,\n groupBy,\n search,\n })\n\n const slotProps = computed(() => ({\n page: page.value,\n itemsPerPage: itemsPerPage.value,\n sortBy: sortBy.value,\n pageCount: pageCount.value,\n toggleSort,\n prevPage,\n nextPage,\n setPage,\n setItemsPerPage,\n isSelected,\n select,\n selectAll,\n toggleSelect,\n isExpanded,\n toggleExpand,\n isGroupOpen,\n toggleGroup,\n items: paginatedItemsWithoutGroups.value,\n itemsCount: filteredItems.value.length,\n groupedItems: paginatedItems.value,\n }))\n\n useRender(() => (\n \n { slots.header?.(slotProps.value) }\n\n \n { props.loading ? (\n \n { slotProps => slots.loader?.(slotProps) }\n \n ) : (\n
\n { !paginatedItems.value.length\n ? slots['no-data']?.()\n : slots.default?.(slotProps.value)\n }\n
\n )}\n
\n\n { slots.footer?.(slotProps.value) }\n \n ))\n\n return {}\n },\n})\n\nexport type VDataIterator = InstanceType\n", "// Styles\nimport './VDatePicker.sass'\n\n// Components\nimport { makeVDatePickerControlsProps, VDatePickerControls } from './VDatePickerControls'\nimport { VDatePickerHeader } from './VDatePickerHeader'\nimport { makeVDatePickerMonthProps, VDatePickerMonth } from './VDatePickerMonth'\nimport { makeVDatePickerMonthsProps, VDatePickerMonths } from './VDatePickerMonths'\nimport { makeVDatePickerYearsProps, VDatePickerYears } from './VDatePickerYears'\nimport { VFadeTransition } from '@/components/transitions'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { makeVPickerProps, VPicker } from '@/labs/VPicker/VPicker'\n\n// Composables\nimport { useCalendarRange } from '@/composables/calendar'\nimport { useDate } from '@/composables/date'\nimport { daysDiff } from '@/composables/date/date'\nimport { useLocale, useRtl } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, shallowRef, toRef, watch } from 'vue'\nimport { convertToUnit, genericComponent, omit, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { VDatePickerControlsDefaultSlotProps } from './VDatePickerControls'\nimport type { VDatePickerHeaderSlots } from './VDatePickerHeader'\nimport type { VDatePickerMonthSlots } from './VDatePickerMonth'\nimport type { VDatePickerMonthsSlots } from './VDatePickerMonths'\nimport type { VDatePickerYearsSlots } from './VDatePickerYears'\nimport type { VPickerSlots } from '@/labs/VPicker/VPicker'\nimport type { GenericProps } from '@/util'\n\n// Types\nexport type VDatePickerSlots =\n & Omit\n & Omit\n & VDatePickerYearsSlots\n & VDatePickerMonthsSlots\n & VDatePickerMonthSlots\n & {\n header: {\n header: string\n transition: string\n }\n controls: VDatePickerControlsDefaultSlotProps\n }\n\nexport const makeVDatePickerProps = propsFactory({\n // TODO: implement in v3.5\n // calendarIcon: {\n // type: String,\n // default: '$calendar',\n // },\n // keyboardIcon: {\n // type: String,\n // default: '$edit',\n // },\n // inputMode: {\n // type: String as PropType<'calendar' | 'keyboard'>,\n // default: 'calendar',\n // },\n // inputText: {\n // type: String,\n // default: '$vuetify.datePicker.input.placeholder',\n // },\n // inputPlaceholder: {\n // type: String,\n // default: 'dd/mm/yyyy',\n // },\n header: {\n type: String,\n default: '$vuetify.datePicker.header',\n },\n headerColor: String,\n headerDateFormat: {\n type: String,\n default: 'normalDateWithWeekday',\n },\n landscapeHeaderWidth: [Number, String],\n\n ...omit(makeVDatePickerControlsProps(), ['active', 'monthText', 'yearText']),\n ...makeVDatePickerMonthProps({\n weeksInMonth: 'static' as const,\n }),\n ...omit(makeVDatePickerMonthsProps(), ['modelValue']),\n ...omit(makeVDatePickerYearsProps(), ['modelValue']),\n ...makeVPickerProps({ title: '$vuetify.datePicker.title' }),\n\n modelValue: null,\n}, 'VDatePicker')\n\nexport const VDatePicker = genericComponent (\n props: {\n modelValue?: TModel\n 'onUpdate:modelValue'?: (value: TModel) => void\n multiple?: Multiple\n },\n slots: VDatePickerSlots\n) => GenericProps>()({\n name: 'VDatePicker',\n\n props: makeVDatePickerProps(),\n\n emits: {\n 'update:modelValue': (date: any) => true,\n 'update:month': (date: any) => true,\n 'update:year': (date: any) => true,\n // 'update:inputMode': (date: any) => true,\n 'update:viewMode': (date: any) => true,\n },\n\n setup (props, { emit, slots }) {\n const adapter = useDate()\n const { t } = useLocale()\n const { rtlClasses } = useRtl()\n\n const model = useProxiedModel(\n props,\n 'modelValue',\n undefined,\n v => wrapInArray(v).map(i => adapter.date(i)),\n v => props.multiple ? v : v[0],\n )\n\n const viewMode = useProxiedModel(props, 'viewMode')\n // const inputMode = useProxiedModel(props, 'inputMode')\n\n const { minDate, maxDate, clampDate } = useCalendarRange(props)\n\n const internal = computed(() => {\n const today = adapter.date()\n const value = model.value?.[0]\n ? adapter.date(model.value[0])\n : clampDate(today)\n\n return value && adapter.isValid(value) ? value : today\n })\n const headerColor = toRef(() => props.headerColor ?? props.color)\n\n const _month = useProxiedModel(props, 'month')\n const month = computed({\n get: () => Number(_month.value ?? adapter.getMonth(adapter.startOfMonth(internal.value))),\n set: v => _month.value = v,\n })\n\n const _year = useProxiedModel(props, 'year')\n const year = computed({\n get: () => Number(_year.value ?? adapter.getYear(adapter.startOfYear(adapter.setMonth(internal.value, month.value)))),\n set: v => _year.value = v,\n })\n\n const isReversing = shallowRef(false)\n const header = computed(() => {\n if (props.multiple && model.value.length > 1) {\n return t('$vuetify.datePicker.itemsSelected', model.value.length)\n }\n\n const formattedDate = (model.value[0] && adapter.isValid(model.value[0]))\n ? adapter.format(adapter.date(model.value[0]), props.headerDateFormat)\n : t(props.header)\n\n return props.landscape && formattedDate.split(' ').length === 3\n ? formattedDate.replace(' ', '\\n')\n : formattedDate\n })\n\n const monthStart = toRef(() => {\n let date = adapter.date()\n date = adapter.setDate(date, 1)\n date = adapter.setMonth(date, month.value)\n date = adapter.setYear(date, year.value) // year is not always ISO\n return date\n })\n const monthYearText = toRef(() => adapter.format(monthStart.value, 'monthAndYear'))\n const monthText = toRef(() => adapter.format(monthStart.value, 'monthShort'))\n const yearText = toRef(() => adapter.format(monthStart.value, 'year'))\n\n // const headerIcon = toRef(() => props.inputMode === 'calendar' ? props.keyboardIcon : props.calendarIcon)\n const headerTransition = toRef(() => `date-picker-header${isReversing.value ? '-reverse' : ''}-transition`)\n\n const disabled = computed(() => {\n if (props.disabled) return true\n\n const targets = []\n\n if (viewMode.value !== 'month') {\n targets.push(...['prev-month', 'next-month', 'prev-year', 'next-year'])\n } else {\n let _date = adapter.date()\n\n _date = adapter.startOfMonth(_date)\n _date = adapter.setMonth(_date, month.value)\n _date = adapter.setYear(_date, year.value)\n\n if (minDate.value) {\n const prevMonthEnd = adapter.addDays(adapter.startOfMonth(_date), -1)\n const prevYearEnd = adapter.addDays(adapter.startOfYear(_date), -1)\n\n adapter.isAfter(minDate.value, prevMonthEnd) && targets.push('prev-month')\n adapter.isAfter(minDate.value, prevYearEnd) && targets.push('prev-year')\n }\n\n if (maxDate.value) {\n const nextMonthStart = adapter.addDays(adapter.endOfMonth(_date), 1)\n const nextYearStart = adapter.addDays(adapter.endOfYear(_date), 1)\n\n adapter.isAfter(nextMonthStart, maxDate.value) && targets.push('next-month')\n adapter.isAfter(nextYearStart, maxDate.value) && targets.push('next-year')\n }\n }\n\n return targets\n })\n\n const allowedYears = computed(() => {\n return props.allowedYears || isYearAllowed\n })\n\n const allowedMonths = computed(() => {\n return props.allowedMonths || isMonthAllowed\n })\n\n function isAllowedInRange (start: unknown, end: unknown) {\n const allowedDates = props.allowedDates\n if (typeof allowedDates !== 'function') return true\n\n const days = 1 + daysDiff(adapter, start, end)\n\n for (let i = 0; i < days; i++) {\n if (allowedDates(adapter.addDays(start, i))) return true\n }\n return false\n }\n\n function isYearAllowed (year: number) {\n if (typeof props.allowedDates === 'function') {\n const startOfYear = adapter.parseISO(`${year}-01-01`)\n return isAllowedInRange(startOfYear, adapter.endOfYear(startOfYear))\n }\n\n if (Array.isArray(props.allowedDates) && props.allowedDates.length) {\n for (const date of props.allowedDates) {\n if (adapter.getYear(adapter.date(date)) === year) return true\n }\n return false\n }\n\n return true\n }\n\n function isMonthAllowed (month: number) {\n if (typeof props.allowedDates === 'function') {\n const monthTwoDigits = String(month + 1).padStart(2, '0')\n const startOfMonth = adapter.parseISO(`${year.value}-${monthTwoDigits}-01`)\n return isAllowedInRange(startOfMonth, adapter.endOfMonth(startOfMonth))\n }\n\n if (Array.isArray(props.allowedDates) && props.allowedDates.length) {\n for (const date of props.allowedDates) {\n if (\n adapter.getYear(adapter.date(date)) === year.value &&\n adapter.getMonth(adapter.date(date)) === month\n ) return true\n }\n return false\n }\n\n return true\n }\n\n // function onClickAppend () {\n // inputMode.value = inputMode.value === 'calendar' ? 'keyboard' : 'calendar'\n // }\n\n function onClickNextMonth () {\n if (month.value < 11) {\n month.value++\n } else {\n year.value++\n month.value = 0\n onUpdateYear()\n }\n onUpdateMonth()\n }\n\n function onClickPrevMonth () {\n if (month.value > 0) {\n month.value--\n } else {\n year.value--\n month.value = 11\n onUpdateYear()\n }\n onUpdateMonth()\n }\n\n function onClickNextYear () {\n year.value++\n if (maxDate.value) {\n const monthTwoDigits = String(month.value + 1).padStart(2, '0')\n const monthStart = adapter.parseISO(`${year.value}-${monthTwoDigits}-01`)\n if (adapter.isAfter(monthStart, maxDate.value)) {\n month.value = adapter.getMonth(maxDate.value)\n }\n }\n onUpdateYear()\n }\n\n function onClickPrevYear () {\n year.value--\n if (minDate.value) {\n const monthTwoDigits = String(month.value + 1).padStart(2, '0')\n const monthStart = adapter.endOfMonth(adapter.parseISO(`${year.value}-${monthTwoDigits}-01`))\n if (adapter.isAfter(minDate.value, monthStart)) {\n month.value = adapter.getMonth(minDate.value)\n }\n }\n onUpdateYear()\n }\n\n function onClickDate () {\n viewMode.value = 'month'\n }\n\n function onClickMonth () {\n viewMode.value = viewMode.value === 'months' ? 'month' : 'months'\n }\n\n function onClickYear () {\n viewMode.value = viewMode.value === 'year' ? 'month' : 'year'\n }\n\n function onUpdateMonth () {\n if (viewMode.value === 'months') onClickMonth()\n }\n\n function onUpdateYear () {\n if (viewMode.value === 'year') onClickYear()\n }\n\n watch(model, (val, oldVal) => {\n const arrBefore = wrapInArray(oldVal)\n const arrAfter = wrapInArray(val)\n\n if (!arrAfter.length) return\n\n const before = adapter.date(arrBefore[arrBefore.length - 1])\n const after = adapter.date(arrAfter[arrAfter.length - 1])\n\n if (adapter.isSameDay(before, after)) return\n\n const newMonth = adapter.getMonth(after)\n const newYear = adapter.getYear(after)\n\n if (newMonth !== month.value) {\n month.value = newMonth\n onUpdateMonth()\n }\n\n if (newYear !== year.value) {\n year.value = newYear\n onUpdateYear()\n }\n\n isReversing.value = adapter.isBefore(before, after)\n })\n\n useRender(() => {\n const pickerProps = VPicker.filterProps(props)\n const datePickerControlsProps = omit(VDatePickerControls.filterProps(props), ['viewMode'])\n const datePickerHeaderProps = VDatePickerHeader.filterProps(props)\n const datePickerMonthProps = VDatePickerMonth.filterProps(props)\n const datePickerMonthsProps = omit(VDatePickerMonths.filterProps(props), ['modelValue'])\n const datePickerYearsProps = omit(VDatePickerYears.filterProps(props), ['modelValue'])\n\n const headerProps = {\n color: headerColor.value,\n header: header.value,\n transition: headerTransition.value,\n }\n\n return (\n slots.title?.() ?? (\n
\n { t(props.title) }\n
\n ),\n header: () => slots.header ? (\n \n { slots.header?.(headerProps) }\n \n ) : (\n \n ),\n default: () => (\n <>\n \n\n \n { viewMode.value === 'months' ? (\n \n {{ month: slots.month }}\n \n ) : viewMode.value === 'year' ? (\n \n {{ year: slots.year }}\n \n ) : (\n \n {{ day: slots.day }}\n \n )}\n \n \n ),\n actions: slots.actions,\n }}\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VDatePicker = InstanceType\n", "// Styles\nimport './VDatePickerControls.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VSpacer } from '@/components/VGrid'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\ntype ControlVariant = 'docked' | 'modal'\n\nexport type VDatePickerControlsDefaultSlotProps = {\n viewMode: 'month' | 'months' | 'year'\n monthYearText: string\n monthText: string\n yearText: string\n disabled: string[]\n openMonths: () => void\n openYears: () => void\n prevMonth: () => void\n nextMonth: () => void\n prevYear: () => void\n nextYear: () => void\n}\n\ntype VDatePickerControlsSlots = {\n default: VDatePickerControlsDefaultSlotProps\n}\n\nexport const makeVDatePickerControlsProps = propsFactory({\n active: {\n type: [String, Array] as PropType,\n default: undefined,\n },\n controlHeight: [Number, String],\n controlVariant: {\n type: String as PropType,\n default: 'docked',\n },\n noMonthPicker: Boolean,\n disabled: {\n type: [Boolean, String, Array] as PropType,\n default: null,\n },\n nextIcon: {\n type: IconValue,\n default: '$next',\n },\n prevIcon: {\n type: IconValue,\n default: '$prev',\n },\n modeIcon: {\n type: IconValue,\n default: '$subgroup',\n },\n text: String,\n monthText: String,\n yearText: String,\n viewMode: {\n type: String as PropType<'month' | 'months' | 'year'>,\n default: 'month',\n },\n}, 'VDatePickerControls')\n\nexport const VDatePickerControls = genericComponent()({\n name: 'VDatePickerControls',\n\n props: makeVDatePickerControlsProps(),\n\n emits: {\n 'click:year': () => true,\n 'click:month': () => true,\n 'click:prev': () => true,\n 'click:next': () => true,\n 'click:prev-year': () => true,\n 'click:next-year': () => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n\n const disableMonth = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('text')\n : !!props.disabled\n })\n const disableYear = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('mode')\n : !!props.disabled\n })\n const disablePrevMonth = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('prev-month')\n : !!props.disabled\n })\n const disableNextMonth = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('next-month')\n : !!props.disabled\n })\n const disablePrevYear = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('prev-year')\n : !!props.disabled\n })\n const disableNextYear = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('next-year')\n : !!props.disabled\n })\n\n function onClickPrevMonth () {\n emit('click:prev')\n }\n\n function onClickNextMonth () {\n emit('click:next')\n }\n\n function onClickPrevYear () {\n emit('click:prev-year')\n }\n\n function onClickNextYear () {\n emit('click:next-year')\n }\n\n function onClickYear () {\n emit('click:year')\n }\n\n function onClickMonth () {\n emit('click:month')\n }\n\n useRender(() => {\n const innerDefaults = {\n VBtn: {\n density: 'comfortable',\n variant: 'text',\n },\n }\n\n const prevMonth = (\n \n )\n\n const nextMonth = (\n \n )\n\n const prevYear = (\n \n )\n\n const nextYear = (\n \n )\n\n const onlyMonthBtn = (\n \n )\n\n const onlyYearBtn = (\n \n )\n\n const monthYearBtn = (\n \n )\n\n const monthYearSplit = (\n <>\n \n \n \n )\n\n const slotProps: VDatePickerControlsDefaultSlotProps = {\n viewMode: props.viewMode,\n disabled: Array.isArray(props.disabled) ? props.disabled : [],\n monthYearText: props.text ?? '',\n monthText: props.monthText ?? '',\n yearText: props.yearText ?? '',\n openMonths: onClickMonth,\n openYears: onClickYear,\n prevMonth: onClickPrevMonth,\n nextMonth: onClickNextMonth,\n prevYear: onClickPrevYear,\n nextYear: onClickNextYear,\n }\n\n const modalControls = (\n <>\n { props.noMonthPicker ? monthYearBtn : monthYearSplit }\n\n \n\n
\n { prevMonth }\n { nextMonth }\n
\n \n )\n\n const dockedControls = (\n <>\n
\n { prevMonth }\n { onlyMonthBtn }\n { nextMonth }\n
\n\n \n\n
\n { prevYear }\n { onlyYearBtn }\n { nextYear }\n
\n \n )\n\n return (\n \n \n { slots.default?.(slotProps) ?? (\n <>\n { props.controlVariant === 'modal' && modalControls }\n { props.controlVariant === 'docked' && dockedControls }\n \n )}\n \n \n )\n })\n\n return {}\n },\n})\n\nexport type VDatePickerControls = InstanceType\n", "// Styles\nimport './VDatePickerHeader.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { IconValue } from '@/composables/icons'\nimport { MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { EventProp, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VDatePickerHeaderSlots = {\n prepend: never\n default: never\n append: never\n}\n\nexport const makeVDatePickerHeaderProps = propsFactory({\n appendIcon: IconValue,\n color: String,\n header: String,\n transition: String,\n onClick: EventProp<[MouseEvent]>(),\n}, 'VDatePickerHeader')\n\nexport const VDatePickerHeader = genericComponent()({\n name: 'VDatePickerHeader',\n\n props: makeVDatePickerHeaderProps(),\n\n emits: {\n click: () => true,\n 'click:append': () => true,\n },\n\n setup (props, { emit, slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n\n function onClick () {\n emit('click')\n }\n\n function onClickAppend () {\n emit('click:append')\n }\n\n useRender(() => {\n const hasContent = !!(slots.default || props.header)\n const hasAppend = !!(slots.append || props.appendIcon)\n\n return (\n \n { slots.prepend && (\n
\n { slots.prepend() }\n
\n )}\n\n { hasContent && (\n \n
\n { slots.default?.() ?? props.header }\n
\n
\n )}\n\n { hasAppend && (\n
\n { !slots.append ? (\n \n ) : (\n \n { slots.append?.() }\n \n )}\n
\n )}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VDatePickerHeader = InstanceType\n", "// Styles\nimport './VDatePickerMonth.sass'\n\n// Components\nimport { VBadge } from '@/components/VBadge'\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { makeCalendarProps, useCalendar } from '@/composables/calendar'\nimport { createDateRange, useDate } from '@/composables/date/date'\nimport { useLocale } from '@/composables/locale'\nimport { MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef, watch } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { GenericProps } from '@/util'\n\nexport type DatePickerEventColorValue = boolean | string | string[]\n\nexport type DatePickerEventColors = DatePickerEventColorValue |\nRecord | ((date: string) => DatePickerEventColorValue)\n\nexport type DatePickerEvents = string[] |\n((date: string) => DatePickerEventColorValue) | Record\n\nexport type VDatePickerMonthSlots = {\n day: {\n props: {\n onClick: () => void\n }\n item: any\n i: number\n }\n}\n\nexport const makeVDatePickerMonthProps = propsFactory({\n color: String,\n hideWeekdays: Boolean,\n multiple: [Boolean, Number, String] as PropType,\n showWeek: Boolean,\n transition: {\n type: String,\n default: 'picker-transition',\n },\n reverseTransition: {\n type: String,\n default: 'picker-reverse-transition',\n },\n events: {\n type: [Array, Function, Object] as PropType,\n default: () => null,\n },\n eventColor: {\n type: [Array, Function, Object, String] as PropType,\n default: () => null,\n },\n ...omit(makeCalendarProps(), ['displayValue']),\n}, 'VDatePickerMonth')\n\nexport const VDatePickerMonth = genericComponent(\n props: {\n modelValue?: TModel\n 'onUpdate:modelValue'?: (value: TModel) => void\n },\n slots: VDatePickerMonthSlots\n) => GenericProps>()({\n name: 'VDatePickerMonth',\n\n props: makeVDatePickerMonthProps(),\n\n emits: {\n 'update:modelValue': (date: unknown) => true,\n 'update:month': (date: number) => true,\n 'update:year': (date: number) => true,\n },\n\n setup (props, { emit, slots }) {\n const daysRef = ref()\n const { t } = useLocale()\n\n const { daysInMonth, model, weekNumbers, weekdayLabels } = useCalendar(props)\n const adapter = useDate()\n\n const rangeStart = shallowRef()\n const rangeStop = shallowRef()\n const isReverse = shallowRef(false)\n\n const transition = toRef(() => {\n return !isReverse.value ? props.transition : props.reverseTransition\n })\n\n if (props.multiple === 'range' && model.value.length > 0) {\n rangeStart.value = model.value[0]\n if (model.value.length > 1) {\n rangeStop.value = model.value[model.value.length - 1]\n }\n }\n\n const atMax = computed(() => {\n const max = ['number', 'string'].includes(typeof props.multiple) ? Number(props.multiple) : Infinity\n\n return model.value.length >= max\n })\n\n watch(daysInMonth, (val, oldVal) => {\n if (!oldVal) return\n\n isReverse.value = adapter.isBefore(val[0].date, oldVal[0].date)\n })\n\n function onRangeClick (value: unknown) {\n const _value = adapter.startOfDay(value)\n\n if (model.value.length === 0) {\n rangeStart.value = undefined\n } else if (model.value.length === 1) {\n rangeStart.value = model.value[0]\n rangeStop.value = undefined\n }\n if (!rangeStart.value) {\n rangeStart.value = _value\n model.value = [rangeStart.value]\n } else if (!rangeStop.value) {\n if (adapter.isSameDay(_value, rangeStart.value)) {\n rangeStart.value = undefined\n model.value = []\n return\n } else if (adapter.isBefore(_value, rangeStart.value)) {\n rangeStop.value = adapter.endOfDay(rangeStart.value)\n rangeStart.value = _value\n } else {\n rangeStop.value = adapter.endOfDay(_value)\n }\n\n model.value = createDateRange(adapter, rangeStart.value, rangeStop.value)\n } else {\n rangeStart.value = value\n rangeStop.value = undefined\n model.value = [rangeStart.value]\n }\n }\n\n function getDateAriaLabel (item: any) {\n const fullDate = adapter.format(item.date, 'fullDateWithWeekday')\n const localeKey = item.isToday ? 'currentDate' : 'selectDate'\n return t(`$vuetify.datePicker.ariaLabel.${localeKey}`, fullDate)\n }\n\n function onMultipleClick (value: unknown) {\n const index = model.value.findIndex(selection => adapter.isSameDay(selection, value))\n\n if (index === -1) {\n model.value = [...model.value, value]\n } else {\n const value = [...model.value]\n value.splice(index, 1)\n model.value = value\n }\n }\n\n function onClick (value: unknown) {\n if (props.multiple === 'range') {\n onRangeClick(value)\n } else if (props.multiple) {\n onMultipleClick(value)\n } else {\n model.value = [value]\n }\n }\n function getEventColors (date: string): string[] {\n const { events, eventColor } = props\n let eventData: boolean | DatePickerEventColorValue\n let eventColors: (boolean | string)[] = []\n\n if (Array.isArray(events)) {\n eventData = events.includes(date)\n } else if (events instanceof Function) {\n eventData = events(date) || false\n } else if (events) {\n eventData = events[date] || false\n } else {\n eventData = false\n }\n\n if (!eventData) {\n return []\n } else if (eventData !== true) {\n eventColors = wrapInArray(eventData)\n } else if (typeof eventColor === 'string') {\n eventColors = [eventColor]\n } else if (typeof eventColor === 'function') {\n eventColors = wrapInArray(eventColor(date))\n } else if (Array.isArray(eventColor)) {\n eventColors = eventColor\n } else if (typeof eventColor === 'object' && eventColor !== null) {\n eventColors = wrapInArray(eventColor[date])\n }\n\n // Fallback to default color if no color is found\n return !eventColors.length\n ? ['surface-variant']\n : eventColors\n .filter(Boolean)\n .map((color: string | boolean) => typeof color === 'string' ? color : 'surface-variant')\n }\n\n function genEvents (date: string): JSX.Element | null {\n const eventColors = getEventColors(date)\n\n if (!eventColors.length) return null\n\n return (\n
\n { eventColors.map((color: string) => ) }\n
\n )\n }\n useRender(() => (\n \n { props.showWeek && (\n
\n { !props.hideWeekdays && (\n
 
\n )}\n { weekNumbers.value.map(week => (\n { week }
\n ))}\n \n )}\n\n \n \n { !props.hideWeekdays && weekdayLabels.value.map(weekDay => (\n { weekDay }\n ))}\n\n { daysInMonth.value.map((item, i) => {\n const slotProps = {\n props: {\n class: 'v-date-picker-month__day-btn',\n color: item.isSelected || item.isToday ? props.color : undefined,\n disabled: item.isDisabled,\n icon: true,\n ripple: false,\n variant: item.isSelected ? 'flat' : item.isToday ? 'outlined' : 'text',\n 'aria-label': getDateAriaLabel(item),\n 'aria-current': item.isToday ? 'date' : undefined,\n onClick: () => onClick(item.date),\n },\n item,\n i,\n } as const\n\n if (atMax.value && !item.isSelected) {\n item.isDisabled = true\n }\n\n return (\n \n { (props.showAdjacentMonths || !item.isAdjacent) && (\n slots.day?.(slotProps) ?? (\n \n { item.localized }\n { genEvents(item.isoDate) }\n \n )\n )}\n \n )\n })}\n \n \n \n ))\n },\n})\n\nexport type VDatePickerMonth = InstanceType\n", "// Composables\nimport { useDate } from '@/composables/date/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed } from 'vue'\nimport { propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport interface CalendarProps {\n allowedDates: unknown[] | ((date: unknown) => boolean) | undefined\n disabled: boolean\n displayValue?: unknown\n modelValue: unknown[] | undefined\n max: unknown\n min: unknown\n showAdjacentMonths: boolean\n month: number | string | undefined\n weekdays: number[]\n year: number | string | undefined\n weeksInMonth: 'dynamic' | 'static'\n firstDayOfWeek: number | string | undefined\n firstDayOfYear: number | string | undefined\n weekdayFormat: 'long' | 'short' | 'narrow' | undefined\n\n 'onUpdate:modelValue': ((value: unknown[]) => void) | undefined\n 'onUpdate:month': ((value: number) => void) | undefined\n 'onUpdate:year': ((value: number) => void) | undefined\n}\n\nexport type CalendarDay = {\n date: Date\n formatted: string\n isAdjacent: boolean\n isDisabled: boolean\n isEnd: boolean\n isHidden: boolean\n isSame: boolean\n isSelected: boolean\n isStart: boolean\n isToday: boolean\n isWeekEnd: boolean\n isWeekStart: boolean\n isoDate: string\n localized: string\n month: number\n year: number\n}\n\nexport type CalendarWeekdays = 0 | 1 | 2 | 3 | 4 | 5 | 6\n\n// Composables\nexport const makeCalendarProps = propsFactory({\n allowedDates: [Array, Function] as PropType boolean)>,\n disabled: {\n type: Boolean,\n default: null,\n },\n displayValue: null as any as PropType,\n modelValue: Array as PropType,\n month: [Number, String],\n max: null as any as PropType,\n min: null as any as PropType,\n showAdjacentMonths: Boolean,\n year: [Number, String],\n weekdays: {\n type: Array as PropType,\n default: () => [0, 1, 2, 3, 4, 5, 6],\n },\n weeksInMonth: {\n type: String as PropType<'dynamic' | 'static'>,\n default: 'dynamic',\n },\n firstDayOfWeek: {\n type: [Number, String],\n default: undefined,\n },\n firstDayOfYear: {\n type: [Number, String],\n default: undefined,\n },\n weekdayFormat: String as PropType<'long' | 'short' | 'narrow' | undefined>,\n}, 'calendar')\n\nexport function useCalendar (props: CalendarProps) {\n const adapter = useDate()\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => wrapInArray(v).map(i => adapter.date(i)),\n )\n const displayValue = computed(() => {\n if (props.displayValue) return adapter.date(props.displayValue)\n if (model.value.length > 0) return adapter.date(model.value[0])\n if (props.min) return adapter.date(props.min)\n if (Array.isArray(props.allowedDates)) return adapter.date(props.allowedDates[0])\n\n return adapter.date()\n })\n\n const year = useProxiedModel(\n props,\n 'year',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getYear(displayValue.value)\n\n return adapter.startOfYear(adapter.setYear(adapter.date(), value))\n },\n v => adapter.getYear(v)\n )\n\n const month = useProxiedModel(\n props,\n 'month',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getMonth(displayValue.value)\n const date = adapter.setYear(adapter.startOfMonth(adapter.date()), adapter.getYear(year.value))\n\n return adapter.setMonth(date, value)\n },\n v => adapter.getMonth(v)\n )\n\n const weekdayLabels = computed(() => {\n const firstDayOfWeek = adapter.toJsDate(adapter.startOfWeek(adapter.date(), props.firstDayOfWeek)).getDay()\n return adapter.getWeekdays(props.firstDayOfWeek, props.weekdayFormat)\n .filter((_, i) => props.weekdays.includes((i + firstDayOfWeek) % 7))\n })\n\n const weeksInMonth = computed(() => {\n const weeks = adapter.getWeekArray(month.value, props.firstDayOfWeek)\n\n const days = weeks.flat()\n\n // Make sure there's always 6 weeks in month (6 * 7 days)\n // if weeksInMonth is 'static'\n const daysInMonth = 6 * 7\n if (props.weeksInMonth === 'static' && days.length < daysInMonth) {\n const lastDay = days[days.length - 1]\n\n let week = []\n for (let day = 1; day <= daysInMonth - days.length; day++) {\n week.push(adapter.addDays(lastDay, day))\n\n if (day % 7 === 0) {\n weeks.push(week)\n week = []\n }\n }\n }\n\n return weeks\n })\n\n function genDays (days: Date[], today: Date): CalendarDay[] {\n return days.filter(date => {\n return props.weekdays.includes(adapter.toJsDate(date).getDay())\n }).map((date, index) => {\n const isoDate = adapter.toISO(date)\n const isAdjacent = !adapter.isSameMonth(date, month.value)\n const isStart = adapter.isSameDay(date, adapter.startOfMonth(month.value))\n const isEnd = adapter.isSameDay(date, adapter.endOfMonth(month.value))\n const isSame = adapter.isSameDay(date, month.value)\n const weekdaysCount = props.weekdays.length\n\n return {\n date,\n formatted: adapter.format(date, 'keyboardDate'),\n isAdjacent,\n isDisabled: isDisabled(date),\n isEnd,\n isHidden: isAdjacent && !props.showAdjacentMonths,\n isSame,\n isSelected: model.value.some(value => adapter.isSameDay(date, value)),\n isStart,\n isToday: adapter.isSameDay(date, today),\n isWeekEnd: index % weekdaysCount === weekdaysCount - 1,\n isWeekStart: index % weekdaysCount === 0,\n isoDate,\n localized: adapter.format(date, 'dayOfMonth'),\n month: adapter.getMonth(date),\n year: adapter.getYear(date),\n }\n })\n }\n\n const daysInWeek = computed(() => {\n const lastDay = adapter.startOfWeek(displayValue.value, props.firstDayOfWeek)\n const week: Date[] = []\n for (let day = 0; day <= 6; day++) {\n week.push(adapter.addDays(lastDay, day) as Date)\n }\n\n const today = adapter.date() as Date\n\n return genDays(week as Date[], today as Date)\n })\n\n const daysInMonth = computed(() => {\n const days = weeksInMonth.value.flat() as Date[]\n const today = adapter.date() as Date\n\n return genDays(days as Date[], today)\n })\n\n const weekNumbers = computed(() => {\n return weeksInMonth.value.map(week => {\n return week.length ? adapter.getWeek(week[0], props.firstDayOfWeek, props.firstDayOfYear) : null\n })\n })\n\n const { minDate, maxDate } = useCalendarRange(props)\n\n function isDisabled (value: unknown) {\n if (props.disabled) return true\n\n const date = adapter.date(value)\n\n if (minDate.value && adapter.isBefore(adapter.endOfDay(date), minDate.value)) return true\n if (maxDate.value && adapter.isAfter(date, maxDate.value)) return true\n\n if (Array.isArray(props.allowedDates) && props.allowedDates.length > 0) {\n return !props.allowedDates.some(d => adapter.isSameDay(adapter.date(d), date))\n }\n\n if (typeof props.allowedDates === 'function') {\n return !props.allowedDates(date)\n }\n\n return false\n }\n\n return {\n displayValue,\n daysInMonth,\n daysInWeek,\n genDays,\n model,\n weeksInMonth,\n weekdayLabels,\n weekNumbers,\n }\n}\n\nexport function useCalendarRange (props: Pick) {\n const adapter = useDate()\n\n const minDate = computed(() => {\n if (!props.min) return null\n const date = adapter.date(props.min)\n return adapter.isValid(date) ? date : null\n })\n\n const maxDate = computed(() => {\n if (!props.max) return null\n const date = adapter.date(props.max)\n return adapter.isValid(date) ? date : null\n })\n\n function clampDate (date: unknown) {\n if (minDate.value && adapter.isBefore(date, minDate.value)) {\n return minDate.value\n }\n if (maxDate.value && adapter.isAfter(date, maxDate.value)) {\n return maxDate.value\n }\n return date\n }\n\n function isInAllowedRange (date: unknown) {\n return (!minDate.value || adapter.isAfter(date, minDate.value)) &&\n (!maxDate.value || adapter.isBefore(date, maxDate.value))\n }\n\n return {\n minDate,\n maxDate,\n clampDate,\n isInAllowedRange,\n }\n}\n", "// Styles\nimport './VDatePickerMonths.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { useDate } from '@/composables/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, watchEffect } from 'vue'\nimport { convertToUnit, createRange, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type VDatePickerMonthsSlots = {\n month: {\n month: {\n text: string\n value: number\n }\n i: number\n props: {\n onClick: () => void\n }\n }\n}\n\nexport const makeVDatePickerMonthsProps = propsFactory({\n color: String,\n height: [String, Number],\n min: null as any as PropType,\n max: null as any as PropType,\n modelValue: Number,\n year: Number,\n allowedMonths: [Array, Function] as PropType boolean)>,\n}, 'VDatePickerMonths')\n\nexport const VDatePickerMonths = genericComponent()({\n name: 'VDatePickerMonths',\n\n props: makeVDatePickerMonthsProps(),\n\n emits: {\n 'update:modelValue': (date: any) => true,\n },\n\n setup (props, { emit, slots }) {\n const adapter = useDate()\n const model = useProxiedModel(props, 'modelValue')\n\n const months = computed(() => {\n let date = adapter.startOfYear(adapter.date())\n if (props.year) {\n date = adapter.setYear(date, props.year)\n }\n return createRange(12).map(i => {\n const text = adapter.format(date, 'monthShort')\n const label = adapter.format(date, 'month')\n const isDisabled =\n !!(\n !isMonthAllowed(i) ||\n (props.min && adapter.isAfter(adapter.startOfMonth(adapter.date(props.min)), date)) ||\n (props.max && adapter.isAfter(date, adapter.startOfMonth(adapter.date(props.max))))\n )\n date = adapter.getNextMonth(date)\n\n return {\n isDisabled,\n text,\n label,\n value: i,\n }\n })\n })\n\n watchEffect(() => {\n model.value = model.value ?? adapter.getMonth(adapter.date())\n })\n\n function isMonthAllowed (month: number) {\n if (Array.isArray(props.allowedMonths) && props.allowedMonths.length) {\n return props.allowedMonths.includes(month)\n }\n\n if (typeof props.allowedMonths === 'function') {\n return props.allowedMonths(month)\n }\n\n return true\n }\n\n useRender(() => (\n \n
\n { months.value.map((month, i) => {\n const btnProps = {\n active: model.value === i,\n ariaLabel: month.label,\n color: model.value === i ? props.color : undefined,\n disabled: month.isDisabled,\n rounded: true,\n text: month.text,\n variant: model.value === month.value ? 'flat' : 'text',\n onClick: () => onClick(i),\n } as const\n\n function onClick (i: number) {\n if (model.value === i) {\n emit('update:modelValue', model.value)\n return\n }\n model.value = i\n }\n\n return slots.month?.({\n month,\n i,\n props: btnProps,\n }) ?? (\n \n )\n })}\n
\n \n ))\n\n return {}\n },\n})\n\nexport type VDatePickerMonths = InstanceType\n", "// Styles\nimport './VDatePickerYears.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { useDate } from '@/composables/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport vIntersect from '@/directives/intersect'\n\n// Utilities\nimport { computed, shallowRef, watchEffect } from 'vue'\nimport { convertToUnit, createRange, genericComponent, propsFactory, templateRef, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport type VDatePickerYearsSlots = {\n year: {\n year: {\n text: string\n value: number\n }\n i: number\n props: {\n active: boolean\n color?: string\n rounded: boolean\n text: string\n variant: 'flat' | 'text'\n onClick: () => void\n }\n }\n}\n\nexport const makeVDatePickerYearsProps = propsFactory({\n color: String,\n height: [String, Number],\n min: null as any as PropType,\n max: null as any as PropType,\n modelValue: Number,\n allowedYears: [Array, Function] as PropType boolean)>,\n}, 'VDatePickerYears')\n\nexport const VDatePickerYears = genericComponent()({\n name: 'VDatePickerYears',\n\n props: makeVDatePickerYearsProps(),\n\n directives: { vIntersect },\n\n emits: {\n 'update:modelValue': (year: number) => true,\n },\n\n setup (props, { emit, slots }) {\n const adapter = useDate()\n const model = useProxiedModel(props, 'modelValue')\n const hasFocusedItem = shallowRef(false)\n const years = computed(() => {\n const year = adapter.getYear(adapter.date())\n\n let min = year - 100\n let max = year + 52\n\n if (props.min) {\n min = adapter.getYear(adapter.date(props.min))\n }\n\n if (props.max) {\n max = adapter.getYear(adapter.date(props.max))\n }\n\n let date = adapter.startOfYear(adapter.date())\n\n date = adapter.setYear(date, min)\n\n return createRange(max - min + 1, min).map(i => {\n const text = adapter.format(date, 'year')\n date = adapter.setYear(date, adapter.getYear(date) + 1)\n\n return {\n text,\n value: i,\n isDisabled: !isYearAllowed(i),\n }\n })\n })\n\n watchEffect(() => {\n model.value = model.value ?? adapter.getYear(adapter.date())\n })\n\n const yearRef = templateRef()\n\n function focusSelectedYear () {\n yearRef.el?.scrollIntoView({ block: 'center' })\n }\n\n function isYearAllowed (year: number) {\n if (Array.isArray(props.allowedYears) && props.allowedYears.length) {\n return props.allowedYears.includes(year)\n }\n\n if (typeof props.allowedYears === 'function') {\n return props.allowedYears(year)\n }\n\n return true\n }\n\n useRender(() => (\n \n yearRef.el?.focus() }\n onFocusin={ () => hasFocusedItem.value = true }\n onFocusout={ () => hasFocusedItem.value = false }\n tabindex={ hasFocusedItem.value ? -1 : 0 }\n >\n { years.value.map((year, i) => {\n const btnProps = {\n ref: model.value === year.value ? yearRef : undefined,\n active: model.value === year.value,\n color: model.value === year.value ? props.color : undefined,\n rounded: true,\n text: year.text,\n disabled: year.isDisabled,\n variant: model.value === year.value ? 'flat' : 'text',\n onClick: () => {\n if (model.value === year.value) {\n emit('update:modelValue', model.value)\n return\n }\n model.value = year.value\n },\n } as const\n\n return slots.year?.({\n year,\n i,\n props: btnProps,\n }) ?? (\n \n )\n })}\n \n \n ))\n\n return {}\n },\n})\n\nexport type VDatePickerYears = InstanceType\n", "// Styles\nimport './VEmptyState.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\nimport { VImg } from '@/components/VImg'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { useDisplay } from '@/composables/display'\nimport { IconValue } from '@/composables/icons'\nimport { makeSizeProps } from '@/composables/size'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\n\nexport type VEmptyStateSlots = {\n actions: {\n props: {\n onClick: (e: Event) => void\n }\n }\n default: never\n headline: never\n title: never\n media: never\n text: never\n}\n\nexport const makeVEmptyStateProps = propsFactory({\n actionText: String,\n bgColor: String,\n color: String,\n icon: IconValue,\n image: String,\n justify: {\n type: String as PropType<'start' | 'center' | 'end'>,\n default: 'center',\n },\n headline: String,\n title: String,\n text: String,\n textWidth: {\n type: [Number, String],\n default: 500,\n },\n href: String,\n to: String,\n\n ...makeComponentProps(),\n ...makeDimensionProps(),\n ...makeSizeProps({ size: undefined }),\n ...makeThemeProps(),\n}, 'VEmptyState')\n\nexport const VEmptyState = genericComponent()({\n name: 'VEmptyState',\n\n props: makeVEmptyStateProps(),\n\n emits: {\n 'click:action': (e: Event) => true,\n },\n\n setup (props, { emit, slots }) {\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.bgColor)\n const { dimensionStyles } = useDimension(props)\n const { displayClasses } = useDisplay()\n\n function onClickAction (e: Event) {\n emit('click:action', e)\n }\n\n useRender(() => {\n const hasActions = !!(slots.actions || props.actionText)\n const hasHeadline = !!(slots.headline || props.headline)\n const hasTitle = !!(slots.title || props.title)\n const hasText = !!(slots.text || props.text)\n const hasMedia = !!(slots.media || props.image || props.icon)\n const size = props.size || (props.image ? 200 : 96)\n\n return (\n \n { hasMedia && (\n
\n { !slots.media ? (\n <>\n { props.image ? (\n \n ) : props.icon ? (\n \n ) : undefined }\n \n ) : (\n \n { slots.media() }\n \n )}\n
\n )}\n\n { hasHeadline && (\n
\n { slots.headline?.() ?? props.headline }\n
\n )}\n\n { hasTitle && (\n
\n { slots.title?.() ?? props.title }\n
\n )}\n\n { hasText && (\n \n { slots.text?.() ?? props.text }\n \n )}\n\n { slots.default && (\n
\n { slots.default() }\n
\n )}\n\n { hasActions && (\n
\n \n {\n slots.actions?.({ props: { onClick: onClickAction } }) ?? (\n \n )\n }\n \n
\n )}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VEmptyState = InstanceType\n", "// Styles\nimport './VFab.sass'\n\n// Components\nimport { makeVBtnProps, VBtn } from '@/components/VBtn/VBtn'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeLocationProps } from '@/composables/location'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useResizeObserver } from '@/composables/resizeObserver'\nimport { useToggleScope } from '@/composables/toggleScope'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef, watchEffect } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef } from 'vue'\nimport type { Position } from '@/composables/layout'\n\nexport const makeVFabProps = propsFactory({\n app: Boolean,\n appear: Boolean,\n extended: Boolean,\n layout: Boolean,\n offset: Boolean,\n modelValue: {\n type: Boolean,\n default: true,\n },\n\n ...omit(makeVBtnProps({ active: true }), ['location', 'spaced']),\n ...makeLayoutItemProps(),\n ...makeLocationProps(),\n ...makeTransitionProps({ transition: 'fab-transition' }),\n}, 'VFab')\n\nexport const VFab = genericComponent()({\n name: 'VFab',\n\n props: makeVFabProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const height = shallowRef(56)\n const layoutItemStyles = ref()\n\n const { resizeRef } = useResizeObserver(entries => {\n if (!entries.length) return\n height.value = entries[0].target.clientHeight\n })\n\n const hasPosition = toRef(() => props.app || props.absolute)\n\n const position = computed(() => {\n if (!hasPosition.value) return false\n\n return props.location?.split(' ').shift() ?? 'bottom'\n }) as ComputedRef\n\n const orientation = computed(() => {\n if (!hasPosition.value) return false\n\n return props.location?.split(' ')[1] ?? 'end'\n })\n\n useToggleScope(() => props.app, () => {\n const layout = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position,\n layoutSize: computed(() => props.layout ? height.value + 24 : 0),\n elementSize: computed(() => height.value + 24),\n active: computed(() => props.app && model.value),\n absolute: toRef(() => props.absolute),\n })\n\n watchEffect(() => {\n layoutItemStyles.value = layout.layoutItemStyles.value\n })\n })\n\n const vFabRef = ref()\n\n useRender(() => {\n const btnProps = VBtn.filterProps(props)\n\n return (\n \n
\n \n \n \n
\n \n )\n })\n\n return {}\n },\n})\n\nexport type VFab = InstanceType\n", "// Styles\nimport './VFooter.sass'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { useResizeObserver } from '@/composables/resizeObserver'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef, watchEffect } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVFooterProps = propsFactory({\n app: Boolean,\n color: String,\n height: {\n type: [Number, String],\n default: 'auto',\n },\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeElevationProps(),\n ...makeLayoutItemProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'footer' }),\n ...makeThemeProps(),\n}, 'VFooter')\n\nexport const VFooter = genericComponent()({\n name: 'VFooter',\n\n props: makeVFooterProps(),\n\n setup (props, { slots }) {\n const layoutItemStyles = ref()\n\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n const { borderClasses } = useBorder(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n\n const autoHeight = shallowRef(32)\n const { resizeRef } = useResizeObserver(entries => {\n if (!entries.length) return\n autoHeight.value = entries[0].target.clientHeight\n })\n const height = computed(() => props.height === 'auto' ? autoHeight.value : parseInt(props.height, 10))\n\n useToggleScope(() => props.app, () => {\n const layout = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(() => 'bottom'),\n layoutSize: height,\n elementSize: computed(() => props.height === 'auto' ? undefined : height.value),\n active: toRef(() => props.app),\n absolute: toRef(() => props.absolute),\n })\n\n watchEffect(() => {\n layoutItemStyles.value = layout.layoutItemStyles.value\n })\n })\n\n useRender(() => (\n \n ))\n\n return {}\n },\n})\n\nexport type VFooter = InstanceType\n", "/**\n * VHotkey Component\n *\n * Purpose: Renders keyboard shortcuts in a visually consistent and accessible way.\n * This component handles the complex logic of displaying keyboard combinations\n * across different platforms (Mac vs PC) and display modes (icons, symbols, text).\n *\n * Why it exists:\n * - Provides consistent visual representation of keyboard shortcuts\n * - Handles platform-specific key differences (Cmd vs Ctrl, Option vs Alt)\n * - Supports multiple display modes for different design needs\n * - Encapsulates complex key parsing and rendering logic\n * - Used throughout the command palette for instruction display\n *\n * Key Mapping Structure:\n * The keyMap uses a simple object structure where each key has:\n * - `default`: Required configuration for all platforms\n * - `mac`: Optional Mac-specific overrides\n * Each config can specify `symbol`, `icon`, and `text` representations.\n *\n * Example:\n * ```\n * ctrl: {\n * mac: { symbol: '⌃', icon: '$ctrl', text: 'Control' },\n * default: { text: 'Ctrl', icon: '$ctrl' }\n * }\n * ```\n */\n\n// Styles\nimport './VHotkey.scss'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VKbd } from '@/components/VKbd'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { splitKeyCombination, splitKeySequence } from '@/composables/hotkey/hotkey-parsing'\nimport { useLocale, useRtl } from '@/composables/locale'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useVariant } from '@/composables/variant'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, mergeDeep, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { IconValue } from '@/composables/icons'\n\n// Display mode types for different visual representations\ntype DisplayMode = 'icon' | 'symbol' | 'text'\n\n// Extended variant type that includes our custom 'contained' variant\ntype HotkeyVariant = 'elevated' | 'flat' | 'tonal' | 'outlined' | 'text' | 'plain' | 'contained'\n\n// Key display tuple: [mode, content] where content is string or IconValue\ntype KeyDisplay = [Exclude, string] | [Extract, IconValue]\n\n// Key tuple: [mode, content, keycode] where content is string or IconValue\ntype Key = [Exclude, string, string] | [Extract, IconValue, string]\n\ntype KeyConfig = {\n symbol?: string\n icon?: string\n text: string\n}\n\ntype PlatformKeyConfig = {\n mac?: KeyConfig\n default: KeyConfig\n}\n\ntype KeyMapConfig = Record\n\nfunction processKey (config: PlatformKeyConfig, requestedMode: DisplayMode, isMac: boolean): KeyDisplay {\n const keyCfg = (isMac && config.mac) ? config.mac : config.default\n\n // 1. Resolve the safest display mode for the current platform\n const mode: DisplayMode = (() => {\n // If the requested mode lacks an asset, fall back to text\n if (requestedMode === 'icon' && !keyCfg.icon) return 'text'\n if (requestedMode === 'symbol' && !keyCfg.symbol) return 'text'\n\n return requestedMode\n })()\n\n // 2. Pick value for the chosen mode, defaulting to text representation\n let value: string | IconValue = keyCfg[mode] ?? keyCfg.text\n\n // 3. Guard against icon tokens leaking into text mode (e.g. \"$ctrl\")\n if (mode === 'text' && typeof value === 'string' && value.startsWith('$') && !value.startsWith('$vuetify.')) {\n value = value.slice(1).toUpperCase() // \"$ctrl\" → \"CTRL\"\n }\n\n return mode === 'icon'\n ? ['icon', value as IconValue]\n : [mode as Exclude, value as string]\n}\n\nexport const hotkeyMap: KeyMapConfig = {\n ctrl: {\n mac: { symbol: '⌃', icon: '$ctrl', text: '$vuetify.hotkey.ctrl' },\n default: { text: 'Ctrl' },\n },\n meta: {\n mac: { symbol: '⌘', icon: '$command', text: '$vuetify.hotkey.command' },\n default: { text: 'Ctrl' },\n },\n cmd: {\n mac: { symbol: '⌘', icon: '$command', text: '$vuetify.hotkey.command' },\n default: { text: 'Ctrl' },\n },\n shift: {\n mac: { symbol: '⇧', icon: '$shift', text: '$vuetify.hotkey.shift' },\n default: { text: 'Shift' },\n },\n alt: {\n mac: { symbol: '⌥', icon: '$alt', text: '$vuetify.hotkey.option' },\n default: { text: 'Alt' },\n },\n enter: {\n default: { symbol: '↵', icon: '$enter', text: '$vuetify.hotkey.enter' },\n },\n arrowup: {\n default: { symbol: '↑', icon: '$arrowup', text: '$vuetify.hotkey.upArrow' },\n },\n arrowdown: {\n default: { symbol: '↓', icon: '$arrowdown', text: '$vuetify.hotkey.downArrow' },\n },\n arrowleft: {\n default: { symbol: '←', icon: '$arrowleft', text: '$vuetify.hotkey.leftArrow' },\n },\n arrowright: {\n default: { symbol: '→', icon: '$arrowright', text: '$vuetify.hotkey.rightArrow' },\n },\n backspace: {\n default: { symbol: '⌫', icon: '$backspace', text: '$vuetify.hotkey.backspace' },\n },\n escape: {\n default: { text: '$vuetify.hotkey.escape' },\n },\n ' ': {\n mac: { symbol: '␣', icon: '$space', text: '$vuetify.hotkey.space' },\n default: { text: '$vuetify.hotkey.space' },\n },\n '-': {\n default: { text: '-' },\n },\n}\n\nexport const makeVHotkeyProps = propsFactory({\n // String representing keyboard shortcuts (e.g., \"ctrl+k\", \"meta+shift+p\")\n keys: String,\n // How to display keys: 'symbol' uses special characters (⌘, ⌃), 'icon' uses SVG icons, 'text' uses words\n displayMode: {\n type: String as PropType,\n default: 'icon',\n },\n // Custom key mapping configuration. Users can import and modify the exported hotkeyMap as needed\n keyMap: {\n type: Object as PropType,\n default: () => hotkeyMap,\n },\n platform: {\n type: String as PropType<'auto' | 'pc' | 'mac'>,\n default: 'auto',\n },\n inline: Boolean,\n disabled: Boolean,\n prefix: String,\n suffix: String,\n variant: {\n type: String as PropType,\n default: 'elevated' as const,\n validator: (v: any) => ['elevated', 'flat', 'tonal', 'outlined', 'text', 'plain', 'contained'].includes(v),\n },\n\n ...makeComponentProps(),\n ...makeThemeProps(),\n ...makeBorderProps(),\n ...makeRoundedProps(),\n ...makeElevationProps(),\n color: String,\n}, 'VHotkey')\n\nconst AND_DELINEATOR = Symbol('VHotkey:AND_DELINEATOR') // For + separators\nconst SLASH_DELINEATOR = Symbol('VHotkey:SLASH_DELINEATOR') // For / separators\nconst THEN_DELINEATOR = Symbol('VHotkey:THEN_DELINEATOR') // For - separators\ntype Delineator = typeof AND_DELINEATOR | typeof SLASH_DELINEATOR | typeof THEN_DELINEATOR\n\nfunction getKeyText (keyMap: KeyMapConfig, key: string, isMac: boolean): string {\n const lowerKey = key.toLowerCase()\n\n if (lowerKey in keyMap) {\n const result = processKey(keyMap[lowerKey], 'text', isMac)\n return typeof result[1] === 'string' ? result[1] : String(result[1])\n }\n\n return key.toUpperCase()\n}\n\nfunction applyDisplayModeToKey (keyMap: KeyMapConfig, mode: DisplayMode, key: string, isMac: boolean): Key {\n const lowerKey = key.toLowerCase()\n\n if (lowerKey in keyMap) {\n const result = processKey(keyMap[lowerKey], mode, isMac)\n\n if (result[0] === 'text' && typeof result[1] === 'string' && result[1].startsWith('$') && !result[1].startsWith('$vuetify.')) {\n return ['text', result[1].replace('$', '').toUpperCase(), key]\n }\n\n return [...result, key]\n }\n\n return ['text', key.toUpperCase(), key]\n}\n\nexport const VHotkey = genericComponent()({\n name: 'VHotkey',\n\n props: makeVHotkeyProps(),\n\n setup (props) {\n const { t } = useLocale()\n const { themeClasses } = provideTheme(props)\n const { rtlClasses } = useRtl()\n const { borderClasses } = useBorder(props)\n const { roundedClasses } = useRounded(props)\n const { elevationClasses } = useElevation(props)\n\n const { colorClasses, colorStyles, variantClasses } = useVariant(() => ({\n color: props.color,\n variant: props.variant === 'contained' ? 'elevated' : props.variant,\n }))\n\n const isMac = computed(() =>\n props.platform === 'auto'\n ? (typeof navigator !== 'undefined' && /macintosh/i.test(navigator.userAgent))\n : props.platform === 'mac'\n )\n\n const keyCombinations = computed(() => {\n if (!props.keys) return []\n\n // Split by spaces to handle multiple key combinations\n // Example: \"ctrl+k meta+p\" -> [\"ctrl+k\", \"meta+p\"]\n return props.keys.split(' ').map(combination => {\n const result: Array = []\n\n const sequenceGroups = splitKeySequence(combination)\n for (let i = 0; i < sequenceGroups.length; i++) {\n const group = sequenceGroups[i]\n\n // Add THEN delineator between sequence groups\n if (i > 0) result.push(THEN_DELINEATOR)\n\n const { keys: keyParts, separators } = splitKeyCombination(group)\n for (let j = 0; j < keyParts.length; j++) {\n const part = keyParts[j]\n\n // Add AND delineator between keys\n if (j > 0) {\n result.push(separators[j - 1] === '/' ? SLASH_DELINEATOR : AND_DELINEATOR)\n }\n result.push(applyDisplayModeToKey(props.keyMap, props.displayMode, part, isMac.value))\n }\n }\n\n return result\n })\n })\n\n const accessibleLabel = computed(() => {\n if (!props.keys) return ''\n\n // Convert the parsed key combinations into readable text\n const readableShortcuts = keyCombinations.value.map(combination => {\n const readableParts: string[] = []\n\n for (const key of combination) {\n if (Array.isArray(key)) {\n // Always use text representation for screen readers\n const textKey = key[0] === 'icon' || key[0] === 'symbol'\n ? applyDisplayModeToKey(mergeDeep(hotkeyMap, props.keyMap), 'text', String(key[1]), isMac.value)[1]\n : key[1]\n readableParts.push(translateKey(textKey as string))\n } else {\n if (key === AND_DELINEATOR) {\n readableParts.push(t('$vuetify.hotkey.plus'))\n } else if (key === SLASH_DELINEATOR) {\n readableParts.push(t('$vuetify.hotkey.or'))\n } else if (key === THEN_DELINEATOR) {\n readableParts.push(t('$vuetify.hotkey.then'))\n }\n }\n }\n\n return readableParts.join(' ')\n })\n\n const shortcutText = readableShortcuts.join(', ')\n return t('$vuetify.hotkey.shortcut', shortcutText)\n })\n\n function translateKey (key: string) {\n return key.startsWith('$vuetify.') ? t(key) : key\n }\n\n function getKeyTooltip (key: Key): string | undefined {\n if (props.displayMode === 'text') return undefined\n\n const textKey = getKeyText(props.keyMap, String(key[2]), isMac.value)\n return translateKey(textKey)\n }\n\n function renderKey (key: Key, keyIndex: number) {\n const isContained = props.variant === 'contained'\n const KeyComponent = isContained ? 'kbd' : VKbd\n const keyClasses = [\n 'v-hotkey__key',\n `v-hotkey__key-${key[0]}`,\n ...(isContained ? ['v-hotkey__key--nested'] : [\n borderClasses.value,\n roundedClasses.value,\n elevationClasses.value,\n colorClasses.value,\n ]),\n ]\n\n return (\n \n {\n key[0] === 'icon' ? (\n \n ) : translateKey(key[1])\n }\n \n )\n }\n\n function renderDivider (key: Delineator, keyIndex: number) {\n return (\n \n { key === AND_DELINEATOR ? '+'\n : key === SLASH_DELINEATOR ? '/'\n : t('$vuetify.hotkey.then')}\n \n )\n }\n\n useRender(() => {\n const content = (\n <>\n { props.prefix && (\n { props.prefix }\n )}\n\n { keyCombinations.value.map((combination, comboIndex) => (\n \n { combination.map((key, keyIndex) =>\n Array.isArray(key)\n ? renderKey(key, keyIndex)\n : renderDivider(key, keyIndex)\n )}\n { comboIndex < keyCombinations.value.length - 1 && (\n  \n )}\n \n ))}\n\n { props.suffix && (\n { props.suffix }\n )}\n \n )\n\n return (\n \n { props.variant !== 'contained' ? content : (\n \n { content }\n \n )}\n \n )\n })\n },\n})\n\nexport type VHotkey = InstanceType\n\nexport type { KeyConfig, PlatformKeyConfig, KeyMapConfig, DisplayMode }\n", "// Styles\nimport './VKbd.scss'\n\nexport { VKbd } from './VKbd'\n", "// Styles\nimport './VKbd.scss'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVKbdProps = propsFactory({\n color: String,\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'kbd' }),\n ...makeThemeProps(),\n ...makeElevationProps(),\n}, 'VKbd')\n\nexport const VKbd = genericComponent()({\n name: 'VKbd',\n\n props: makeVKbdProps(),\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { roundedClasses } = useRounded(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n const { elevationClasses } = useElevation(props)\n\n useRender(() => (\n \n ))\n\n return {}\n },\n})\n\nexport type VKbd = InstanceType\n", "// Composables\nimport { makeDelayProps, useDelay } from '@/composables/delay'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { genericComponent, propsFactory } from '@/util'\n\ntype VHoverSlots = {\n default: {\n isHovering: boolean | null\n props: Record\n }\n}\n\nexport const makeVHoverProps = propsFactory({\n disabled: Boolean,\n modelValue: {\n type: Boolean,\n default: null,\n },\n\n ...makeDelayProps(),\n}, 'VHover')\n\nexport const VHover = genericComponent()({\n name: 'VHover',\n\n props: makeVHoverProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isHovering = useProxiedModel(props, 'modelValue')\n const { runOpenDelay, runCloseDelay } = useDelay(props, value => !props.disabled && (isHovering.value = value))\n\n return () => slots.default?.({\n isHovering: isHovering.value,\n props: {\n onMouseenter: runOpenDelay,\n onMouseleave: runCloseDelay,\n },\n })\n },\n})\n\nexport type VHover = InstanceType\n", "// Styles\nimport './VInfiniteScroll.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { useIntersectionObserver } from '@/composables/intersectionObserver'\nimport { useLocale } from '@/composables/locale'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { computed, nextTick, onMounted, ref, shallowRef, watch } from 'vue'\nimport { convertToUnit, defineComponent, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type InfiniteScrollSide = 'start' | 'end' | 'both'\nexport type InfiniteScrollStatus = 'ok' | 'empty' | 'loading' | 'error'\n\ntype InfiniteScrollSlot = {\n side: InfiniteScrollSide\n props: Record\n}\n\ntype VInfiniteScrollSlots = {\n default: never\n loading: InfiniteScrollSlot\n error: InfiniteScrollSlot\n empty: InfiniteScrollSlot\n 'load-more': InfiniteScrollSlot\n}\n\nexport const makeVInfiniteScrollProps = propsFactory({\n color: String,\n direction: {\n type: String as PropType<'vertical' | 'horizontal'>,\n default: 'vertical',\n validator: (v: any) => ['vertical', 'horizontal'].includes(v),\n },\n side: {\n type: String as PropType,\n default: 'end',\n validator: (v: any) => ['start', 'end', 'both'].includes(v),\n },\n mode: {\n type: String as PropType<'intersect' | 'manual'>,\n default: 'intersect',\n validator: (v: any) => ['intersect', 'manual'].includes(v),\n },\n margin: [Number, String],\n loadMoreText: {\n type: String,\n default: '$vuetify.infiniteScroll.loadMore',\n },\n emptyText: {\n type: String,\n default: '$vuetify.infiniteScroll.empty',\n },\n\n ...makeDimensionProps(),\n ...makeTagProps(),\n}, 'VInfiniteScroll')\n\nexport const VInfiniteScrollIntersect = defineComponent({\n name: 'VInfiniteScrollIntersect',\n\n props: {\n side: {\n type: String as PropType,\n required: true,\n },\n rootMargin: String,\n },\n\n emits: {\n intersect: (side: InfiniteScrollSide, isIntersecting: boolean) => true,\n },\n\n setup (props, { emit }) {\n const { intersectionRef, isIntersecting } = useIntersectionObserver()\n\n watch(isIntersecting, async val => {\n emit('intersect', props.side, val)\n })\n\n useRender(() => (\n  \n ))\n\n return {}\n },\n})\n\nexport const VInfiniteScroll = genericComponent()({\n name: 'VInfiniteScroll',\n\n props: makeVInfiniteScrollProps(),\n\n emits: {\n load: (options: { side: InfiniteScrollSide, done: (status: InfiniteScrollStatus) => void }) => true,\n },\n\n setup (props, { slots, emit }) {\n const rootEl = ref()\n const startStatus = shallowRef('ok')\n const endStatus = shallowRef('ok')\n const margin = computed(() => convertToUnit(props.margin))\n const isIntersecting = shallowRef(false)\n\n function setScrollAmount (amount: number) {\n if (!rootEl.value) return\n\n const property = props.direction === 'vertical' ? 'scrollTop' : 'scrollLeft'\n rootEl.value[property] = amount\n }\n\n function getScrollAmount () {\n if (!rootEl.value) return 0\n\n const property = props.direction === 'vertical' ? 'scrollTop' : 'scrollLeft'\n return rootEl.value[property]\n }\n\n function getScrollSize () {\n if (!rootEl.value) return 0\n\n const property = props.direction === 'vertical' ? 'scrollHeight' : 'scrollWidth'\n return rootEl.value[property]\n }\n\n function getContainerSize () {\n if (!rootEl.value) return 0\n\n const property = props.direction === 'vertical' ? 'clientHeight' : 'clientWidth'\n return rootEl.value[property]\n }\n\n onMounted(() => {\n if (!rootEl.value) return\n\n if (props.side === 'start') {\n setScrollAmount(getScrollSize())\n } else if (props.side === 'both') {\n setScrollAmount(getScrollSize() / 2 - getContainerSize() / 2)\n }\n })\n\n function setStatus (side: InfiniteScrollSide, status: InfiniteScrollStatus) {\n if (side === 'start') {\n startStatus.value = status\n } else if (side === 'end') {\n endStatus.value = status\n } else if (side === 'both') {\n startStatus.value = status\n endStatus.value = status\n }\n }\n\n function getStatus (side: string) {\n return side === 'start' ? startStatus.value : endStatus.value\n }\n\n let previousScrollSize = 0\n function handleIntersect (side: InfiniteScrollSide, _isIntersecting: boolean) {\n isIntersecting.value = _isIntersecting\n if (isIntersecting.value) {\n intersecting(side)\n }\n }\n\n function intersecting (side: InfiniteScrollSide) {\n if (props.mode !== 'manual' && !isIntersecting.value) return\n\n const status = getStatus(side)\n if (!rootEl.value || ['empty', 'loading'].includes(status)) return\n\n previousScrollSize = getScrollSize()\n setStatus(side, 'loading')\n\n function done (status: InfiniteScrollStatus) {\n setStatus(side, status)\n\n nextTick(() => {\n if (status === 'empty' || status === 'error') return\n\n if (status === 'ok' && side === 'start') {\n setScrollAmount(getScrollSize() - previousScrollSize + getScrollAmount())\n }\n if (props.mode !== 'manual') {\n nextTick(() => {\n // Browser takes 2 - 3 animation frames to trigger IntersectionObserver after\n // VInfiniteScrollIntersect leaves the viewpoint. So far I couldn't come up\n // with a better solution than using 3 nested window.requestAnimationFrame. (#17475)\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n intersecting(side)\n })\n })\n })\n })\n }\n })\n }\n\n emit('load', { side, done })\n }\n\n const { t } = useLocale()\n\n function renderSide (side: InfiniteScrollSide, status: InfiniteScrollStatus) {\n if (props.side !== side && props.side !== 'both') return\n\n const onClick = () => intersecting(side)\n const slotProps = { side, props: { onClick, color: props.color } }\n\n if (status === 'error') return slots.error?.(slotProps)\n\n if (status === 'empty') return slots.empty?.(slotProps) ??
{ t(props.emptyText) }
\n\n if (props.mode === 'manual') {\n if (status === 'loading') {\n return slots.loading?.(slotProps) ?? (\n \n )\n }\n\n return slots['load-more']?.(slotProps) ?? (\n \n { t(props.loadMoreText) }\n \n )\n }\n\n return slots.loading?.(slotProps) ?? (\n \n )\n }\n\n const { dimensionStyles } = useDimension(props)\n\n useRender(() => {\n const Tag = props.tag\n const hasStartIntersect = props.side === 'start' || props.side === 'both'\n const hasEndIntersect = props.side === 'end' || props.side === 'both'\n const intersectMode = props.mode === 'intersect'\n\n return (\n \n
\n { renderSide('start', startStatus.value) }\n
\n\n { hasStartIntersect && intersectMode && (\n \n )}\n\n { slots.default?.() }\n\n { hasEndIntersect && intersectMode && (\n \n )}\n\n
\n { renderSide('end', endStatus.value) }\n
\n \n )\n })\n\n function reset (side?: InfiniteScrollSide) {\n const effectiveSide = side ?? props.side\n setStatus(effectiveSide, 'ok')\n\n nextTick(() => {\n if (effectiveSide !== 'end') {\n setScrollAmount(\n getScrollSize() - previousScrollSize + getScrollAmount(),\n )\n }\n if (props.mode !== 'manual') {\n nextTick(() => {\n // See #17475\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n if (effectiveSide === 'both') {\n intersecting('start')\n intersecting('end')\n } else {\n intersecting(effectiveSide)\n }\n })\n })\n })\n })\n }\n })\n }\n\n return { reset }\n },\n})\n\nexport type VInfiniteScroll = InstanceType\n", "// Styles\nimport './VItemGroup.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { GenericProps } from '@/util'\n\nexport const VItemGroupSymbol = Symbol.for('vuetify:v-item-group')\n\nexport const makeVItemGroupProps = propsFactory({\n ...makeComponentProps(),\n ...makeGroupProps({\n selectedClass: 'v-item--selected',\n }),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VItemGroup')\n\ntype VItemGroupSlots = {\n default: {\n isSelected: (id: string) => boolean\n select: (id: string, value: boolean) => void\n next: () => void\n prev: () => void\n selected: readonly string[]\n }\n}\n\nexport const VItemGroup = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VItemGroupSlots,\n) => GenericProps>()({\n name: 'VItemGroup',\n\n props: makeVItemGroupProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { isSelected, select, next, prev, selected } = useGroup(props, VItemGroupSymbol)\n\n return () => (\n \n { slots.default?.({\n isSelected,\n select,\n next,\n prev,\n selected: selected.value,\n })}\n \n )\n },\n})\n\nexport type VItemGroup = InstanceType\n", "// Composables\nimport { VItemGroupSymbol } from './VItemGroup'\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\n\n// Utilities\nimport { genericComponent } from '@/util'\n\ntype VItemSlots = {\n default: {\n isSelected: boolean | undefined\n selectedClass: boolean | (string | undefined)[] | undefined\n select: ((value: boolean) => void) | undefined\n toggle: (() => void) | undefined\n value: unknown\n disabled: boolean | undefined\n }\n}\n\nexport const VItem = genericComponent()({\n name: 'VItem',\n\n props: makeGroupItemProps(),\n\n emits: {\n 'group:selected': (val: { value: boolean }) => true,\n },\n\n setup (props, { slots }) {\n const { isSelected, select, toggle, selectedClass, value, disabled } = useGroupItem(props, VItemGroupSymbol)\n return () => slots.default?.({\n isSelected: isSelected.value,\n selectedClass: selectedClass.value,\n select,\n toggle,\n value: value.value,\n disabled: disabled.value,\n })\n },\n})\n\nexport type VItem = InstanceType\n", "// Styles\nimport './VLayout.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { createLayout, makeLayoutProps } from '@/composables/layout'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVLayoutProps = propsFactory({\n ...makeComponentProps(),\n ...makeDimensionProps(),\n ...makeLayoutProps(),\n}, 'VLayout')\n\nexport const VLayout = genericComponent()({\n name: 'VLayout',\n\n props: makeVLayoutProps(),\n\n setup (props, { slots }) {\n const { layoutClasses, layoutStyles, getLayoutItem, items, layoutRef } = createLayout(props)\n const { dimensionStyles } = useDimension(props)\n\n useRender(() => (\n \n { slots.default?.() }\n \n ))\n\n return {\n getLayoutItem,\n items,\n }\n },\n})\n\nexport type VLayout = InstanceType\n", "// Styles\nimport './VLayoutItem.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const makeVLayoutItemProps = propsFactory({\n position: {\n type: String as PropType<'top' | 'right' | 'bottom' | 'left'>,\n required: true,\n },\n size: {\n type: [Number, String],\n default: 300,\n },\n modelValue: Boolean,\n\n ...makeComponentProps(),\n ...makeLayoutItemProps(),\n}, 'VLayoutItem')\n\nexport const VLayoutItem = genericComponent()({\n name: 'VLayoutItem',\n\n props: makeVLayoutItemProps(),\n\n setup (props, { slots }) {\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(() => props.position),\n elementSize: toRef(() => props.size),\n layoutSize: toRef(() => props.size),\n active: toRef(() => props.modelValue),\n absolute: toRef(() => props.absolute),\n })\n\n return () => (\n \n { slots.default?.() }\n \n )\n },\n})\n\nexport type VLayoutItem = InstanceType\n", "// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Directives\nimport vIntersect from '@/directives/intersect'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const makeVLazyProps = propsFactory({\n modelValue: Boolean,\n options: {\n type: Object as PropType,\n // For more information on types, navigate to:\n // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n default: () => ({\n root: undefined,\n rootMargin: undefined,\n threshold: undefined,\n }),\n },\n\n ...makeComponentProps(),\n ...makeDimensionProps(),\n ...makeTagProps(),\n ...makeTransitionProps({ transition: 'fade-transition' }),\n}, 'VLazy')\n\nexport const VLazy = genericComponent()({\n name: 'VLazy',\n\n directives: { vIntersect },\n\n props: makeVLazyProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { dimensionStyles } = useDimension(props)\n\n const isActive = useProxiedModel(props, 'modelValue')\n\n function onIntersect (isIntersecting: boolean) {\n if (isActive.value) return\n\n isActive.value = isIntersecting\n }\n\n useRender(() => (\n \n { isActive.value && (\n \n { slots.default?.() }\n \n )}\n \n ))\n\n return {}\n },\n})\n\nexport type VLazy = InstanceType\n", "// Styles\nimport './VLocaleProvider.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideLocale } from '@/composables/locale'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVLocaleProviderProps = propsFactory({\n locale: String,\n fallbackLocale: String,\n messages: Object,\n rtl: {\n type: Boolean,\n default: undefined,\n },\n\n ...makeComponentProps(),\n}, 'VLocaleProvider')\n\nexport const VLocaleProvider = genericComponent()({\n name: 'VLocaleProvider',\n\n props: makeVLocaleProviderProps(),\n\n setup (props, { slots }) {\n const { rtlClasses } = provideLocale(props)\n\n useRender(() => (\n \n { slots.default?.() }\n \n ))\n\n return {}\n },\n})\n\nexport type VLocaleProvider = InstanceType\n", "// Composables\nimport { useHydration } from '@/composables/hydration'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VNoSsr = defineComponent({\n name: 'VNoSsr',\n\n setup (_, { slots }) {\n const show = useHydration()\n\n return () => show.value && slots.default?.()\n },\n})\n\nexport type VNoSsr = InstanceType\n", "// Styles\nimport './VNumberInput.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDivider } from '@/components/VDivider'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\n\n// Composables\nimport { useHold } from './hold'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, nextTick, onMounted, ref, shallowRef, toRef, watch } from 'vue'\nimport { clamp, escapeForRegex, extractNumber, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VTextFieldSlots } from '@/components/VTextField/VTextField'\n\ntype ControlSlot = {\n props: Record\n}\n\ntype VNumberInputSlots = Omit & {\n increment: ControlSlot\n decrement: ControlSlot\n}\n\ntype ControlVariant = 'default' | 'stacked' | 'split' | 'hidden'\n\nconst makeVNumberInputProps = propsFactory({\n controlVariant: {\n type: String as PropType,\n default: 'default',\n },\n inset: Boolean,\n hideInput: Boolean,\n modelValue: {\n type: Number as PropType,\n default: null,\n },\n min: {\n type: Number,\n default: Number.MIN_SAFE_INTEGER,\n },\n max: {\n type: Number,\n default: Number.MAX_SAFE_INTEGER,\n },\n step: {\n type: Number,\n default: 1,\n },\n precision: {\n type: Number as PropType,\n default: 0,\n },\n minFractionDigits: {\n type: Number as PropType,\n default: null,\n },\n decimalSeparator: {\n type: String,\n validator: (v: any) => !v || v.length === 1,\n },\n\n ...omit(makeVTextFieldProps(), ['modelValue', 'validationValue']),\n}, 'VNumberInput')\n\nexport const VNumberInput = genericComponent()({\n name: 'VNumberInput',\n\n props: {\n ...makeVNumberInputProps(),\n },\n\n emits: {\n 'update:focused': (val: boolean) => true,\n 'update:modelValue': (val: number) => true,\n },\n\n setup (props, { slots }) {\n const vTextFieldRef = ref()\n\n const { holdStart, holdStop } = useHold({ toggleUpDown })\n const form = useForm(props)\n const controlsDisabled = computed(() => (\n form.isDisabled.value || form.isReadonly.value\n ))\n\n const isFocused = shallowRef(props.focused)\n\n const { decimalSeparator: decimalSeparatorFromLocale } = useLocale()\n const decimalSeparator = computed(() => props.decimalSeparator?.[0] || decimalSeparatorFromLocale.value)\n\n function correctPrecision (val: number, precision = props.precision, trim = true) {\n const fixed = precision == null\n ? String(val)\n : val.toFixed(precision)\n\n if (isFocused.value && trim) {\n return Number(fixed).toString() // trim zeros\n .replace('.', decimalSeparator.value)\n }\n\n if (props.minFractionDigits === null || (precision !== null && precision < props.minFractionDigits)) {\n return fixed.replace('.', decimalSeparator.value)\n }\n\n let [baseDigits, fractionDigits] = fixed.split('.')\n\n fractionDigits = (fractionDigits ?? '').padEnd(props.minFractionDigits, '0')\n .replace(new RegExp(`(?<=\\\\d{${props.minFractionDigits}})0+$`, 'g'), '')\n\n return [\n baseDigits,\n fractionDigits,\n ].filter(Boolean).join(decimalSeparator.value)\n }\n\n const model = useProxiedModel(props, 'modelValue', null,\n val => val ?? null,\n val => val == null\n ? val ?? null\n : clamp(Number(val), props.min, props.max)\n )\n\n const _inputText = shallowRef(null)\n const _lastParsedValue = shallowRef(null)\n\n watch(model, val => {\n if (\n isFocused.value &&\n !controlsDisabled.value &&\n Number(_inputText.value?.replace(decimalSeparator.value, '.')) === val\n ) {\n // ignore external changes while typing\n // e.g. 5.01{backspace}2 » should result in 5.02\n // but we emit '5' in and want to preserve '5.0'\n } else if (val == null) {\n _inputText.value = null\n _lastParsedValue.value = null\n } else if (!isNaN(val)) {\n _inputText.value = correctPrecision(val)\n _lastParsedValue.value = Number(_inputText.value.replace(decimalSeparator.value, '.'))\n }\n }, { immediate: true })\n\n const inputText = computed({\n get: () => _inputText.value,\n set (val) {\n if (val === null || val === '') {\n model.value = null\n _inputText.value = null\n _lastParsedValue.value = null\n return\n }\n const parsedValue = Number(val.replace(decimalSeparator.value, '.'))\n if (!isNaN(parsedValue)) {\n _inputText.value = val\n _lastParsedValue.value = parsedValue\n\n if (parsedValue <= props.max && parsedValue >= props.min) {\n model.value = parsedValue\n }\n }\n },\n })\n\n const isOutOfRange = computed(() => {\n if (_lastParsedValue.value === null) return false\n const numberFromText = Number(_inputText.value?.replace(decimalSeparator.value, '.'))\n return numberFromText !== clamp(numberFromText, props.min, props.max)\n })\n\n const canIncrease = computed(() => {\n if (controlsDisabled.value) return false\n return (model.value ?? 0) as number + props.step <= props.max\n })\n const canDecrease = computed(() => {\n if (controlsDisabled.value) return false\n return (model.value ?? 0) as number - props.step >= props.min\n })\n\n const controlVariant = computed(() => {\n return props.hideInput ? 'stacked' : props.controlVariant\n })\n\n const incrementIcon = toRef(() => controlVariant.value === 'split' ? '$plus' : '$collapse')\n const decrementIcon = toRef(() => controlVariant.value === 'split' ? '$minus' : '$expand')\n const controlNodeSize = toRef(() => controlVariant.value === 'split' ? 'default' : 'small')\n const controlNodeDefaultHeight = toRef(() => controlVariant.value === 'stacked' ? 'auto' : '100%')\n\n const incrementSlotProps = {\n props: {\n onClick: onControlClick,\n onPointerup: onControlMouseup,\n onPointerdown: onUpControlMousedown,\n onPointercancel: onControlMouseup,\n },\n }\n const decrementSlotProps = {\n props: {\n onClick: onControlClick,\n onPointerup: onControlMouseup,\n onPointerdown: onDownControlMousedown,\n onPointercancel: onControlMouseup,\n },\n }\n\n watch(() => props.precision, () => formatInputValue())\n watch(() => props.minFractionDigits, () => formatInputValue())\n\n onMounted(() => {\n clampModel()\n })\n\n function inferPrecision (value: number | null) {\n if (value == null) return 0\n const str = value.toString()\n const idx = str.indexOf('.')\n return ~idx ? str.length - idx : 0\n }\n\n function toggleUpDown (increment = true) {\n if (controlsDisabled.value) return\n if (model.value == null) {\n inputText.value = correctPrecision(clamp(0, props.min, props.max))\n return\n }\n\n let inferredPrecision = Math.max(inferPrecision(model.value), inferPrecision(props.step))\n if (props.precision != null) inferredPrecision = Math.max(inferredPrecision, props.precision)\n if (increment) {\n if (canIncrease.value) inputText.value = correctPrecision(model.value + props.step, inferredPrecision)\n } else {\n if (canDecrease.value) inputText.value = correctPrecision(model.value - props.step, inferredPrecision)\n }\n }\n\n function onBeforeinput (e: InputEvent) {\n if (!e.data) return\n const inputElement = e.target as HTMLInputElement\n const { value: existingTxt, selectionStart, selectionEnd } = inputElement ?? {}\n\n const potentialNewInputVal =\n existingTxt\n ? existingTxt.slice(0, selectionStart as number | undefined) + e.data + existingTxt.slice(selectionEnd as number | undefined)\n : e.data\n\n const potentialNewNumber = extractNumber(potentialNewInputVal, props.precision, decimalSeparator.value)\n\n // Allow only numbers, \"-\" and {decimal separator}\n // Allow \"-\" and {decimal separator} only once\n // Allow \"-\" only at the start\n if (!new RegExp(`^-?\\\\d*${escapeForRegex(decimalSeparator.value)}?\\\\d*$`).test(potentialNewInputVal)) {\n e.preventDefault()\n inputElement!.value = potentialNewNumber\n nextTick(() => inputText.value = potentialNewNumber)\n }\n\n if (props.precision == null) return\n\n // Ignore decimal digits above precision limit\n if (potentialNewInputVal.split(decimalSeparator.value)[1]?.length > props.precision) {\n e.preventDefault()\n inputElement!.value = potentialNewNumber\n nextTick(() => inputText.value = potentialNewNumber)\n\n const cursorPosition = (selectionStart ?? 0) + e.data.length\n inputElement!.setSelectionRange(cursorPosition, cursorPosition)\n }\n // Ignore decimal separator when precision = 0\n if (props.precision === 0 && potentialNewInputVal.endsWith(decimalSeparator.value)) {\n e.preventDefault()\n inputElement!.value = potentialNewNumber\n nextTick(() => inputText.value = potentialNewNumber)\n }\n }\n\n async function onKeydown (e: KeyboardEvent) {\n if (\n ['Enter', 'ArrowLeft', 'ArrowRight', 'Backspace', 'Delete', 'Tab'].includes(e.key) ||\n e.ctrlKey\n ) return\n\n if (['ArrowDown', 'ArrowUp'].includes(e.key)) {\n e.preventDefault()\n e.stopPropagation()\n clampModel()\n // _model is controlled, so need to wait until props['modelValue'] is updated\n await nextTick()\n if (e.key === 'ArrowDown') {\n toggleUpDown(false)\n } else {\n toggleUpDown()\n }\n }\n }\n\n function onControlClick (e: MouseEvent) {\n e.stopPropagation()\n }\n\n function onControlMouseup (e: PointerEvent) {\n const el = e.currentTarget as HTMLElement\n el?.releasePointerCapture(e.pointerId)\n e.preventDefault()\n holdStop()\n }\n\n function onUpControlMousedown (e: PointerEvent) {\n const el = e.currentTarget as HTMLElement\n el?.setPointerCapture(e.pointerId)\n e.preventDefault()\n e.stopPropagation()\n holdStart('up')\n }\n\n function onDownControlMousedown (e: PointerEvent) {\n const el = e.currentTarget as HTMLElement\n el?.setPointerCapture(e.pointerId)\n e.preventDefault()\n e.stopPropagation()\n holdStart('down')\n }\n\n function clampModel () {\n if (controlsDisabled.value) return\n if (!vTextFieldRef.value) return\n const actualText = vTextFieldRef.value.value\n const parsedValue = Number(actualText.replace(decimalSeparator.value, '.'))\n if (actualText && !isNaN(parsedValue)) {\n inputText.value = correctPrecision(clamp(parsedValue, props.min, props.max))\n } else {\n inputText.value = null\n }\n }\n\n function formatInputValue () {\n if (controlsDisabled.value) return\n inputText.value = model.value !== null && !isNaN(model.value)\n ? correctPrecision(model.value, props.precision, false)\n : null\n }\n\n function trimDecimalZeros () {\n if (controlsDisabled.value) return\n if (model.value === null || isNaN(model.value)) {\n inputText.value = null\n return\n }\n inputText.value = model.value.toString()\n .replace('.', decimalSeparator.value)\n }\n\n function onFocus () {\n trimDecimalZeros()\n }\n\n function onBlur () {\n clampModel()\n }\n\n useRender(() => {\n const { modelValue: _, type, ...textFieldProps } = VTextField.filterProps(props)\n\n function incrementControlNode () {\n return !slots.increment ? (\n \n ) : (\n \n { slots.increment(incrementSlotProps) }\n \n )\n }\n\n function decrementControlNode () {\n return !slots.decrement ? (\n \n ) : (\n \n { slots.decrement(decrementSlotProps) }\n \n )\n }\n\n function controlNode () {\n return (\n
\n { decrementControlNode() }\n\n \n\n { incrementControlNode() }\n
\n )\n }\n\n function dividerNode () {\n return !props.hideInput && !props.inset ? : undefined\n }\n\n const appendInnerControl =\n controlVariant.value === 'split'\n ? (\n
\n \n\n { incrementControlNode() }\n
\n ) : (props.reverse || controlVariant.value === 'hidden'\n ? undefined\n : <>{ dividerNode() }{ controlNode() })\n\n const hasAppendInner = slots['append-inner'] || appendInnerControl\n\n const prependInnerControl =\n controlVariant.value === 'split'\n ? (\n
\n { decrementControlNode() }\n\n \n
\n ) : (props.reverse && controlVariant.value !== 'hidden'\n ? <>{ controlNode() }{ dividerNode() }\n : undefined)\n\n const hasPrependInner = slots['prepend-inner'] || prependInnerControl\n\n return (\n \n {{\n ...slots,\n 'append-inner': hasAppendInner ? (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { appendInnerControl }\n \n ) : undefined,\n 'prepend-inner': hasPrependInner ? (...args) => (\n <>\n { prependInnerControl }\n { slots['prepend-inner']?.(...args) }\n \n ) : undefined,\n }}\n
\n )\n })\n\n return forwardRefs({}, vTextFieldRef)\n },\n})\n\nexport type VNumberInput = InstanceType\n", "// Utilities\nimport { onScopeDispose } from 'vue'\n\nconst HOLD_REPEAT = 50\nconst HOLD_DELAY = 500\n\nexport function useHold ({ toggleUpDown }: { toggleUpDown: (increment: boolean) => void }) {\n let timeout = -1\n let interval = -1\n\n onScopeDispose(holdStop)\n\n function holdStart (value: 'up' | 'down') {\n holdStop()\n tick(value)\n window.addEventListener('pointerup', holdStop)\n document.addEventListener('blur', holdStop)\n timeout = window.setTimeout(() => {\n interval = window.setInterval(() => tick(value), HOLD_REPEAT)\n }, HOLD_DELAY)\n }\n\n function holdStop () {\n window.clearTimeout(timeout)\n window.clearInterval(interval)\n window.removeEventListener('pointerup', holdStop)\n document.removeEventListener('blur', holdStop)\n }\n\n onScopeDispose(holdStop)\n\n function tick (value: 'up' | 'down') {\n toggleUpDown(value === 'up')\n }\n\n return { holdStart, holdStop }\n}\n", "// Styles\nimport './VOtpInput.sass'\n\n// Components\nimport { makeVFieldProps, VField } from '@/components/VField/VField'\nimport { VOverlay } from '@/components/VOverlay/VOverlay'\nimport { VProgressCircular } from '@/components/VProgressCircular/VProgressCircular'\n\n// Composables\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeFocusProps, useFocus } from '@/composables/focus'\nimport { useIntersectionObserver } from '@/composables/intersectionObserver'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Utilities\nimport { computed, effectScope, nextTick, ref, toRef, watch, watchEffect } from 'vue'\nimport { filterInputAttrs, focusChild, genericComponent, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport type VOtpInputSlots = {\n default: never\n loader: never\n}\n\nexport const makeVOtpInputProps = propsFactory({\n autofocus: Boolean,\n divider: String,\n focusAll: Boolean,\n label: {\n type: String,\n default: '$vuetify.input.otp',\n },\n length: {\n type: [Number, String],\n default: 6,\n },\n modelValue: {\n type: [Number, String],\n default: undefined,\n },\n placeholder: String,\n type: {\n type: String as PropType<'text' | 'password' | 'number'>,\n default: 'number',\n },\n\n ...makeDimensionProps(),\n ...makeFocusProps(),\n ...pick(makeVFieldProps({\n variant: 'outlined' as const,\n }), [\n 'baseColor',\n 'bgColor',\n 'class',\n 'color',\n 'disabled',\n 'error',\n 'loading',\n 'rounded',\n 'style',\n 'theme',\n 'variant',\n ]),\n}, 'VOtpInput')\n\nexport const VOtpInput = genericComponent()({\n name: 'VOtpInput',\n\n props: makeVOtpInputProps(),\n\n emits: {\n finish: (val: string) => true,\n 'update:focused': (val: boolean) => true,\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const { dimensionStyles } = useDimension(props)\n const { isFocused, focus, blur } = useFocus(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n '',\n val => val == null ? [] : String(val).split(''),\n val => val.join('')\n )\n const { t } = useLocale()\n\n const length = computed(() => Number(props.length))\n const fields = computed(() => Array(length.value).fill(0))\n const focusIndex = ref(-1)\n const contentRef = ref()\n const inputRef = ref([])\n const current = computed(() => inputRef.value[focusIndex.value])\n let _isComposing = false\n\n useToggleScope(() => props.autofocus, () => {\n const intersectScope = effectScope()\n intersectScope.run(() => {\n const { intersectionRef, isIntersecting } = useIntersectionObserver()\n watchEffect(() => {\n intersectionRef.value = inputRef.value[0]\n })\n watch(isIntersecting, v => {\n if (!v) return\n intersectionRef.value?.focus()\n intersectScope.stop()\n })\n })\n })\n\n function onInput () {\n // The maxlength attribute doesn't work for the number type input, so the text type is used.\n // The following logic simulates the behavior of a number input.\n if (isValidNumber(current.value.value)) {\n current.value.value = ''\n return\n }\n\n if (_isComposing) return\n\n const array = model.value.slice()\n const value = current.value.value\n\n array[focusIndex.value] = value\n\n let target: any = null\n\n if (focusIndex.value > model.value.length) {\n target = model.value.length + 1\n } else if (focusIndex.value + 1 !== length.value) {\n target = 'next'\n }\n\n model.value = array\n\n if (target) focusChild(contentRef.value!, target)\n }\n\n function onCompositionend () {\n _isComposing = false\n onInput()\n }\n\n function onKeydown (e: KeyboardEvent) {\n const array = model.value.slice()\n const index = focusIndex.value\n let target: 'next' | 'prev' | 'first' | 'last' | number | null = null\n\n if (![\n 'ArrowLeft',\n 'ArrowRight',\n 'Backspace',\n 'Delete',\n ].includes(e.key)) return\n\n e.preventDefault()\n\n if (e.key === 'ArrowLeft') {\n target = 'prev'\n } else if (e.key === 'ArrowRight') {\n target = 'next'\n } else if (['Backspace', 'Delete'].includes(e.key)) {\n array[focusIndex.value] = ''\n\n model.value = array\n\n if (focusIndex.value > 0 && e.key === 'Backspace') {\n target = 'prev'\n } else {\n requestAnimationFrame(() => {\n inputRef.value[index]?.select()\n })\n }\n }\n\n requestAnimationFrame(() => {\n if (target != null) {\n focusChild(contentRef.value!, target)\n }\n })\n }\n\n function onPaste (index: number, e: ClipboardEvent) {\n e.preventDefault()\n e.stopPropagation()\n\n const clipboardText = e?.clipboardData?.getData('Text').trim().slice(0, length.value) ?? ''\n const finalIndex = clipboardText.length - 1 === -1 ? index : clipboardText.length - 1\n\n if (isValidNumber(clipboardText)) return\n\n model.value = clipboardText.split('')\n\n focusIndex.value = finalIndex\n }\n\n function reset () {\n model.value = []\n }\n\n function onFocus (e: FocusEvent, index: number) {\n focus()\n\n focusIndex.value = index\n }\n\n function onBlur () {\n blur()\n\n focusIndex.value = -1\n }\n\n function isValidNumber (value: string) {\n return props.type === 'number' && /[^0-9]/g.test(value)\n }\n\n provideDefaults({\n VField: {\n color: toRef(() => props.color),\n bgColor: toRef(() => props.color),\n baseColor: toRef(() => props.baseColor),\n disabled: toRef(() => props.disabled),\n error: toRef(() => props.error),\n variant: toRef(() => props.variant),\n rounded: toRef(() => props.rounded),\n },\n }, { scoped: true })\n\n watch(model, val => {\n if (val.length === length.value) {\n emit('finish', val.join(''))\n }\n }, { deep: true })\n\n watch(focusIndex, val => {\n if (val < 0) return\n\n nextTick(() => {\n inputRef.value[val]?.select()\n })\n })\n\n useRender(() => {\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n\n return (\n \n \n { fields.value.map((_, i) => (\n <>\n { props.divider && i !== 0 && (\n { props.divider }\n )}\n\n \n {{\n ...slots,\n loader: undefined,\n default: () => {\n return (\n inputRef.value[i] = val as HTMLInputElement }\n aria-label={ t(props.label, i + 1) }\n autofocus={ i === 0 && props.autofocus }\n autocomplete=\"one-time-code\"\n class={[\n 'v-otp-input__field',\n ]}\n disabled={ props.disabled }\n inputmode={ props.type === 'number' ? 'numeric' : 'text' }\n min={ props.type === 'number' ? 0 : undefined }\n maxlength={ i === 0 ? length.value : '1' }\n placeholder={ props.placeholder }\n type={ props.type === 'number' ? 'text' : props.type }\n value={ model.value[i] }\n onInput={ onInput }\n onFocus={ e => onFocus(e, i) }\n onBlur={ onBlur }\n onKeydown={ onKeydown }\n onCompositionstart={ () => _isComposing = true }\n onCompositionend={ onCompositionend }\n onPaste={ event => onPaste(i, event) }\n />\n )\n },\n }}\n \n \n ))}\n\n \n\n \n { slots.loader?.() ?? (\n \n )}\n \n\n { slots.default?.() }\n \n \n )\n })\n\n return {\n blur: () => {\n inputRef.value?.some(input => input.blur())\n },\n focus: () => {\n inputRef.value?.[0].focus()\n },\n reset,\n isFocused,\n }\n },\n})\n\nexport type VOtpInput = InstanceType\n", "// Styles\nimport './VParallax.sass'\n\n// Components\nimport { VImg } from '@/components/VImg'\n\n// Composables\nimport { useDisplay } from '@/composables'\nimport { makeComponentProps } from '@/composables/component'\nimport { useIntersectionObserver } from '@/composables/intersectionObserver'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, onBeforeUnmount, ref, watch, watchEffect } from 'vue'\nimport { clamp, genericComponent, getScrollParent, PREFERS_REDUCED_MOTION, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VImgSlots } from '@/components/VImg/VImg'\n\nfunction floor (val: number) {\n return Math.floor(Math.abs(val)) * Math.sign(val)\n}\n\nexport const makeVParallaxProps = propsFactory({\n scale: {\n type: [Number, String],\n default: 0.5,\n },\n\n ...makeComponentProps(),\n}, 'VParallax')\n\nexport const VParallax = genericComponent()({\n name: 'VParallax',\n\n props: makeVParallaxProps(),\n\n setup (props, { slots }) {\n const { intersectionRef, isIntersecting } = useIntersectionObserver()\n const { resizeRef, contentRect } = useResizeObserver()\n const { height: displayHeight } = useDisplay()\n\n const root = ref()\n\n watchEffect(() => {\n intersectionRef.value = resizeRef.value = root.value?.$el\n })\n\n let scrollParent: Element | Document\n watch(isIntersecting, val => {\n if (val) {\n scrollParent = getScrollParent(intersectionRef.value)\n scrollParent = scrollParent === document.scrollingElement ? document : scrollParent\n scrollParent.addEventListener('scroll', onScroll, { passive: true })\n onScroll()\n } else {\n scrollParent.removeEventListener('scroll', onScroll)\n }\n })\n\n onBeforeUnmount(() => {\n scrollParent?.removeEventListener('scroll', onScroll)\n })\n\n watch(displayHeight, onScroll)\n watch(() => contentRect.value?.height, onScroll)\n\n const scale = computed(() => {\n return 1 - clamp(Number(props.scale))\n })\n\n let frame = -1\n function onScroll () {\n if (!isIntersecting.value || PREFERS_REDUCED_MOTION()) return\n\n cancelAnimationFrame(frame)\n frame = requestAnimationFrame(() => {\n const el: HTMLElement | null = (root.value?.$el as Element).querySelector('.v-img__img')\n if (!el) return\n\n const scrollHeight = scrollParent instanceof Document ? document.documentElement.clientHeight : scrollParent.clientHeight\n const scrollPos = scrollParent instanceof Document ? window.scrollY : scrollParent.scrollTop\n const top = intersectionRef.value!.getBoundingClientRect().top + scrollPos\n const height = contentRect.value!.height\n\n const center = top + (height - scrollHeight) / 2\n const translate = floor((scrollPos - center) * scale.value)\n const sizeScale = Math.max(1, (scale.value * (scrollHeight - height) + height) / height)\n\n el.style.setProperty('transform', `translateY(${translate}px) scale(${sizeScale})`)\n })\n }\n\n useRender(() => (\n \n ))\n\n return {}\n },\n})\n\nexport type VParallax = InstanceType\n", "// Components\nimport { makeVSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '@/components/VSelectionControl/VSelectionControl'\n\nexport const makeVRadioProps = propsFactory({\n ...makeVSelectionControlProps({\n falseIcon: '$radioOff',\n trueIcon: '$radioOn',\n }),\n}, 'VRadio')\n\nexport const VRadio = genericComponent()({\n name: 'VRadio',\n\n props: makeVRadioProps(),\n\n setup (props, { slots }) {\n useRender(() => {\n const controlProps = VSelectionControl.filterProps(props)\n\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VRadio = InstanceType\n", "// Styles\nimport './VRadioGroup.sass'\n\n// Components\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VLabel } from '@/components/VLabel'\nimport { VSelectionControl } from '@/components/VSelectionControl'\nimport { makeSelectionControlGroupProps, VSelectionControlGroup } from '@/components/VSelectionControlGroup/VSelectionControlGroup'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { IconValue } from '@/composables/icons'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, useId } from 'vue'\nimport { filterInputAttrs, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { GenericProps } from '@/util'\n\nexport type VRadioGroupSlots = Omit & {\n default: never\n label: {\n label: string | undefined\n props: Record\n }\n}\n\nexport const makeVRadioGroupProps = propsFactory({\n height: {\n type: [Number, String],\n default: 'auto',\n },\n\n ...makeVInputProps(),\n ...omit(makeSelectionControlGroupProps(), ['multiple']),\n\n trueIcon: {\n type: IconValue,\n default: '$radioOn',\n },\n falseIcon: {\n type: IconValue,\n default: '$radioOff',\n },\n type: {\n type: String,\n default: 'radio',\n },\n}, 'VRadioGroup')\n\nexport const VRadioGroup = genericComponent(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VRadioGroupSlots,\n) => GenericProps>()({\n name: 'VRadioGroup',\n\n inheritAttrs: false,\n\n props: makeVRadioGroupProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const uid = useId()\n const id = computed(() => props.id || `radio-group-${uid}`)\n const model = useProxiedModel(props, 'modelValue')\n const inputRef = ref()\n\n useRender(() => {\n const [rootAttrs, controlAttrs] = filterInputAttrs(attrs)\n const inputProps = VInput.filterProps(props)\n const controlProps = VSelectionControl.filterProps(props)\n const label = slots.label\n ? slots.label({\n label: props.label,\n props: { for: id.value },\n })\n : props.label\n\n return (\n \n {{\n ...slots,\n default: ({\n id,\n messagesId,\n isDisabled,\n isReadonly,\n }) => (\n <>\n { label && (\n \n { label }\n \n )}\n\n \n \n ),\n }}\n \n )\n })\n\n return forwardRefs({}, inputRef)\n },\n})\n\nexport type VRadioGroup = InstanceType\n", "// Styles\nimport '../VSlider/VSlider.sass'\n\n// Components\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VLabel } from '@/components/VLabel'\nimport { getOffset, makeSliderProps, useSlider, useSteps } from '@/components/VSlider/slider'\nimport { VSliderThumb } from '@/components/VSlider/VSliderThumb'\nimport { VSliderTrack } from '@/components/VSlider/VSliderTrack'\n\n// Composables\nimport { makeFocusProps, useFocus } from '@/composables/focus'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useRtl } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { filterInputAttrs, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType, WritableComputedRef } from 'vue'\nimport type { VSliderSlots } from '../VSlider/VSlider'\n\nexport const makeVRangeSliderProps = propsFactory({\n ...makeFocusProps(),\n ...makeVInputProps(),\n ...makeSliderProps(),\n\n strict: Boolean,\n modelValue: {\n type: Array as PropType,\n default: () => ([0, 0]),\n },\n}, 'VRangeSlider')\n\nexport const VRangeSlider = genericComponent()({\n name: 'VRangeSlider',\n\n inheritAttrs: false,\n\n props: makeVRangeSliderProps(),\n\n emits: {\n 'update:focused': (value: boolean) => true,\n 'update:modelValue': (value: [number, number]) => true,\n end: (value: [number, number]) => true,\n start: (value: [number, number]) => true,\n },\n\n setup (props, { slots, emit, attrs }) {\n const startThumbRef = ref()\n const stopThumbRef = ref()\n const inputRef = ref()\n const { rtlClasses } = useRtl()\n\n function getActiveThumb (e: MouseEvent | TouchEvent) {\n if (!startThumbRef.value || !stopThumbRef.value) return\n\n const startOffset = getOffset(e, startThumbRef.value.$el, props.direction)\n const stopOffset = getOffset(e, stopThumbRef.value.$el, props.direction)\n\n const a = Math.abs(startOffset)\n const b = Math.abs(stopOffset)\n\n return (a < b || (a === b && startOffset < 0)) ? startThumbRef.value.$el : stopThumbRef.value.$el\n }\n\n const steps = useSteps(props)\n\n const model = useProxiedModel(\n props,\n 'modelValue',\n undefined,\n arr => {\n if (!arr?.length) return [0, 0]\n\n return arr.map(value => steps.roundValue(value))\n },\n ) as WritableComputedRef<[number, number]> & { readonly externalValue: number[] }\n\n const {\n activeThumbRef,\n hasLabels,\n max,\n min,\n mousePressed,\n onSliderMousedown,\n onSliderTouchstart,\n position,\n trackContainerRef,\n disabled,\n readonly,\n } = useSlider({\n props,\n steps,\n onSliderStart: () => {\n if (disabled.value || readonly.value) {\n activeThumbRef.value?.blur()\n return\n }\n emit('start', model.value)\n },\n onSliderEnd: ({ value }) => {\n if (disabled.value || readonly.value) {\n activeThumbRef.value?.blur()\n } else {\n const newValue: [number, number] =\n activeThumbRef.value === startThumbRef.value?.$el\n ? [value, model.value[1]]\n : [model.value[0], value]\n\n if (!props.strict && newValue[0] < newValue[1]) {\n model.value = newValue\n }\n }\n\n emit('end', model.value)\n },\n onSliderMove: ({ value }) => {\n const [start, stop] = model.value\n\n if (disabled.value || readonly.value) {\n activeThumbRef.value?.blur()\n return\n }\n\n if (!props.strict && start === stop && start !== min.value) {\n activeThumbRef.value =\n value > start ? stopThumbRef.value?.$el : startThumbRef.value?.$el\n activeThumbRef.value?.focus()\n }\n\n if (activeThumbRef.value === startThumbRef.value?.$el) {\n model.value = [Math.min(value, stop), stop]\n } else {\n model.value = [start, Math.max(start, value)]\n }\n },\n getActiveThumb,\n })\n\n const { isFocused, focus, blur } = useFocus(props)\n const trackStart = computed(() => position(model.value[0]))\n const trackStop = computed(() => position(model.value[1]))\n\n useRender(() => {\n const inputProps = VInput.filterProps(props)\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n const hasPrepend = !!(props.label || slots.label || slots.prepend)\n\n return (\n \n {{\n ...slots,\n prepend: hasPrepend ? slotProps => (\n <>\n { slots.label?.(slotProps) ?? (\n props.label\n ? (\n \n ) : undefined\n )}\n\n { slots.prepend?.(slotProps) }\n \n ) : undefined,\n default: ({ id, messagesId }) => (\n \n \n\n \n\n \n {{ 'tick-label': slots['tick-label'] }}\n \n\n (model.value = [v, model.value[1]]) }\n onFocus={ (e: FocusEvent) => {\n focus()\n activeThumbRef.value = startThumbRef.value?.$el\n\n // Make sure second thumb is focused if\n // the thumbs are on top of each other\n // and they are both at minimum value\n // but only if focused from outside.\n if (\n max.value !== min.value &&\n model.value[0] === model.value[1] &&\n model.value[1] === min.value &&\n e.relatedTarget !== stopThumbRef.value?.$el\n ) {\n startThumbRef.value?.$el.blur()\n stopThumbRef.value?.$el.focus()\n }\n }}\n onBlur={ () => {\n blur()\n activeThumbRef.value = undefined\n }}\n min={ min.value }\n max={ model.value[1] }\n position={ trackStart.value }\n ripple={ props.ripple }\n { ...inputAttrs }\n >\n {{ 'thumb-label': slots['thumb-label'] }}\n \n\n (model.value = [model.value[0], v]) }\n onFocus={ (e: FocusEvent) => {\n focus()\n activeThumbRef.value = stopThumbRef.value?.$el\n\n // Make sure first thumb is focused if\n // the thumbs are on top of each other\n // and they are both at maximum value\n // but only if focused from outside.\n if (\n max.value !== min.value &&\n model.value[0] === model.value[1] &&\n model.value[0] === max.value &&\n e.relatedTarget !== startThumbRef.value?.$el\n ) {\n stopThumbRef.value?.$el.blur()\n startThumbRef.value?.$el.focus()\n }\n }}\n onBlur={ () => {\n blur()\n activeThumbRef.value = undefined\n }}\n min={ model.value[0] }\n max={ max.value }\n position={ trackStop.value }\n ripple={ props.ripple }\n { ...inputAttrs }\n >\n {{ 'thumb-label': slots['thumb-label'] }}\n \n \n ),\n }}\n \n )\n })\n\n return forwardRefs({\n focus: () => startThumbRef.value?.$el.focus(),\n }, inputRef)\n },\n})\n\nexport type VRangeSlider = InstanceType\n", "// Styles\nimport './VRating.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps } from '@/composables/density'\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeSizeProps } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, nextTick, ref, shallowRef, useId } from 'vue'\nimport { clamp, createRange, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { Prop } from 'vue'\nimport type { Variant } from '@/composables/variant'\n\ntype VRatingItemSlot = {\n value: number\n index: number\n isFilled: boolean\n isHovered: boolean\n icon: IconValue\n color?: string\n props: Record\n rating: number\n}\n\ntype VRatingItemLabelSlot = {\n value: number\n index: number\n label?: string\n}\n\ntype VRatingSlots = {\n item: VRatingItemSlot\n 'item-label': VRatingItemLabelSlot\n}\n\nexport const makeVRatingProps = propsFactory({\n name: String,\n itemAriaLabel: {\n type: String,\n default: '$vuetify.rating.ariaLabel.item',\n },\n activeColor: String,\n color: String,\n clearable: Boolean,\n disabled: Boolean,\n emptyIcon: {\n type: IconValue,\n default: '$ratingEmpty',\n },\n fullIcon: {\n type: IconValue,\n default: '$ratingFull',\n },\n halfIncrements: Boolean,\n hover: Boolean,\n length: {\n type: [Number, String],\n default: 5,\n },\n readonly: Boolean,\n modelValue: {\n type: [Number, String],\n default: 0,\n },\n itemLabels: Array as Prop,\n itemLabelPosition: {\n type: String,\n default: 'top',\n validator: (v: any) => ['top', 'bottom'].includes(v),\n },\n ripple: Boolean,\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeSizeProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VRating')\n\nexport const VRating = genericComponent()({\n name: 'VRating',\n\n props: makeVRatingProps(),\n\n emits: {\n 'update:modelValue': (value: number | string) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const { themeClasses } = provideTheme(props)\n const root = ref()\n const rating = useProxiedModel(props, 'modelValue')\n const normalizedValue = computed(() => clamp(parseFloat(rating.value), 0, Number(props.length)))\n\n const range = computed(() => createRange(Number(props.length), 1))\n const increments = computed(() => range.value.flatMap(v => props.halfIncrements ? [v - 0.5, v] : [v]))\n const hoverIndex = shallowRef(-1)\n\n const itemState = computed(() => increments.value.map(value => {\n const isHovering = props.hover && hoverIndex.value > -1\n const isFilled = normalizedValue.value >= value\n const isHovered = hoverIndex.value >= value\n const isFullIcon = isHovering ? isHovered : isFilled\n const icon = isFullIcon ? props.fullIcon : props.emptyIcon\n const activeColor = props.activeColor ?? props.color\n const color = (isFilled || isHovered) ? activeColor : props.color\n\n return { isFilled, isHovered, icon, color }\n }))\n\n const eventState = computed(() => [0, ...increments.value].map(value => {\n function onMouseenter () {\n hoverIndex.value = value\n }\n\n function onMouseleave () {\n hoverIndex.value = -1\n }\n\n function onClick () {\n if (props.disabled || props.readonly) return\n rating.value = normalizedValue.value === value && props.clearable ? 0 : value\n }\n\n return {\n onMouseenter: props.hover ? onMouseenter : undefined,\n onMouseleave: props.hover ? onMouseleave : undefined,\n onClick,\n }\n }))\n\n const currentItemIndex = computed(() => {\n return props.halfIncrements\n ? 1 + Math.floor(Math.max(0, Number(rating.value ?? 0) - 0.5)) * 2\n : Math.floor(Math.max(0, Number(rating.value ?? 0) - 1))\n })\n\n function moveCurrentFocus () {\n const currentItem = root.value?.querySelector('[tabindex=\"0\"]') as HTMLElement\n currentItem?.focus()\n }\n\n function onItemKeydown (event: KeyboardEvent) {\n if (props.disabled || props.readonly) return\n if (event.ctrlKey || event.altKey) return\n\n const step = props.halfIncrements ? 0.5 : 1\n\n if (event.key === 'ArrowRight') {\n const newValue = Math.min(Number(props.length), Number(rating.value ?? 0) + step)\n rating.value = newValue\n nextTick(() => moveCurrentFocus())\n }\n if (event.key === 'ArrowLeft') {\n const newValue = Math.max(0, Number(rating.value ?? 0) - step)\n rating.value = newValue\n nextTick(() => moveCurrentFocus())\n }\n }\n\n const uid = useId()\n const name = computed(() => props.name ?? `v-rating-${uid}`)\n\n function VRatingItem ({ value, index, showStar = true }: { value: number, index: number, showStar?: boolean }) {\n const { onMouseenter, onMouseleave, onClick } = eventState.value[index + 1]\n const id = `${name.value}-${String(value).replace('.', '-')}`\n const isFocusable = index === currentItemIndex.value\n const btnProps = {\n color: itemState.value[index]?.color,\n density: props.density,\n disabled: props.disabled,\n icon: itemState.value[index]?.icon,\n ripple: props.ripple,\n size: props.size,\n variant: 'plain' as Variant,\n tabindex: isFocusable ? 0 : -1,\n onKeydown: onItemKeydown,\n }\n\n return (\n <>\n 0,\n 'v-rating__item--full': props.halfIncrements && value % 1 === 0,\n }}\n onMouseenter={ onMouseenter }\n onMouseleave={ onMouseleave }\n onClick={ onClick }\n >\n { t(props.itemAriaLabel, value, props.length) }\n {\n !showStar ? undefined\n : slots.item ? slots.item({\n ...itemState.value[index],\n props: btnProps,\n value,\n index,\n rating: normalizedValue.value,\n })\n : (\n \n )\n }\n \n\n \n \n )\n }\n\n function createLabel (labelProps: { value: number, index: number, label?: string }) {\n if (slots['item-label']) return slots['item-label'](labelProps)\n\n if (labelProps.label) return { labelProps.label }\n\n return  \n }\n\n useRender(() => {\n const hasLabels = !!props.itemLabels?.length || slots['item-label']\n\n return (\n \n \n\n { range.value.map((value, i) => (\n
\n {\n hasLabels && props.itemLabelPosition === 'top'\n ? createLabel({ value, index: i, label: props.itemLabels?.[i] })\n : undefined\n }\n
\n { props.halfIncrements ? (\n <>\n \n \n \n ) : (\n \n )}\n
\n {\n hasLabels && props.itemLabelPosition === 'bottom'\n ? createLabel({ value, index: i, label: props.itemLabels?.[i] })\n : undefined\n }\n
\n ))}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VRating = InstanceType\n", "// Styles\nimport './VSkeletonLoader.sass'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { useLocale } from '@/composables/locale'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType, VNode } from 'vue'\n\ntype VSkeletonBone = T | VSkeletonBone[]\n\nexport type VSkeletonBones = VSkeletonBone\nexport type VSkeletonLoaderType = keyof typeof rootTypes\n\nexport const rootTypes = {\n actions: 'button@2',\n article: 'heading, paragraph',\n avatar: 'avatar',\n button: 'button',\n card: 'image, heading',\n 'card-avatar': 'image, list-item-avatar',\n chip: 'chip',\n 'date-picker': 'list-item, heading, divider, date-picker-options, date-picker-days, actions',\n 'date-picker-options': 'text, avatar@2',\n 'date-picker-days': 'avatar@28',\n divider: 'divider',\n heading: 'heading',\n image: 'image',\n 'list-item': 'text',\n 'list-item-avatar': 'avatar, text',\n 'list-item-two-line': 'sentences',\n 'list-item-avatar-two-line': 'avatar, sentences',\n 'list-item-three-line': 'paragraph',\n 'list-item-avatar-three-line': 'avatar, paragraph',\n ossein: 'ossein',\n paragraph: 'text@3',\n sentences: 'text@2',\n subtitle: 'text',\n table: 'table-heading, table-thead, table-tbody, table-tfoot',\n 'table-heading': 'chip, text',\n 'table-thead': 'heading@6',\n 'table-tbody': 'table-row-divider@6',\n 'table-row-divider': 'table-row, divider',\n 'table-row': 'text@6',\n 'table-tfoot': 'text@2, avatar@2',\n text: 'text',\n} as const\n\nfunction genBone (type: string, children: VSkeletonBones = []) {\n return (\n \n { children }\n \n )\n}\n\nfunction genBones (bone: string) {\n // e.g. 'text@3'\n const [type, length] = bone.split('@') as [VSkeletonLoaderType, number]\n\n // Generate a length array based upon\n // value after @ in the bone string\n return Array.from({ length }).map(() => genStructure(type))\n}\n\nfunction genStructure (type?: string): VSkeletonBones {\n let children: VSkeletonBones = []\n\n if (!type) return children\n\n // TODO: figure out a better way to type this\n const bone = (rootTypes as Record)[type]\n\n // End of recursion, do nothing\n /* eslint-disable-next-line no-empty, brace-style */\n if (type === bone) {}\n // Array of values - e.g. 'heading, paragraph, text@2'\n else if (type.includes(',')) return mapBones(type)\n // Array of values - e.g. 'paragraph@4'\n else if (type.includes('@')) return genBones(type)\n // Array of values - e.g. 'card@2'\n else if (bone.includes(',')) children = mapBones(bone)\n // Array of values - e.g. 'list-item@2'\n else if (bone.includes('@')) children = genBones(bone)\n // Single value - e.g. 'card-heading'\n else if (bone) children.push(genStructure(bone))\n\n return [genBone(type, children)]\n}\n\nfunction mapBones (bones: string) {\n // Remove spaces and return array of structures\n return bones.replace(/\\s/g, '').split(',').map(genStructure)\n}\n\nexport const makeVSkeletonLoaderProps = propsFactory({\n boilerplate: Boolean,\n color: String,\n loading: Boolean,\n loadingText: {\n type: String,\n default: '$vuetify.loading',\n },\n type: {\n type: [String, Array] as PropType<\n | VSkeletonLoaderType | (string & {})\n | ReadonlyArray\n >,\n default: 'ossein',\n },\n\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeThemeProps(),\n}, 'VSkeletonLoader')\n\nexport const VSkeletonLoader = genericComponent()({\n name: 'VSkeletonLoader',\n\n inheritAttrs: false,\n\n props: makeVSkeletonLoaderProps(),\n\n setup (props, { attrs, slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { themeClasses } = provideTheme(props)\n const { t } = useLocale()\n\n const items = computed(() => genStructure(wrapInArray(props.type).join(',')))\n\n useRender(() => {\n const isLoading = !slots.default || props.loading\n const loadingProps = (props.boilerplate || !isLoading) ? {} : {\n ariaLive: 'polite',\n ariaLabel: t(props.loadingText),\n role: 'alert',\n }\n\n return isLoading\n ? (\n \n { items.value }\n \n )\n : <>{ slots.default?.() }\n })\n\n return {}\n },\n})\n\nexport type VSkeletonLoader = InstanceType\n", "// Composables\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\n\n// Utilities\nimport { VSlideGroupSymbol } from './VSlideGroup'\nimport { genericComponent } from '@/util'\n\n// Types\nimport type { UnwrapRef } from 'vue'\nimport type { GroupItemProvide } from '@/composables/group'\n\ntype VSlideGroupItemSlots = {\n default: {\n isSelected: UnwrapRef\n select: GroupItemProvide['select']\n toggle: GroupItemProvide['toggle']\n selectedClass: UnwrapRef\n }\n}\n\nexport const VSlideGroupItem = genericComponent()({\n name: 'VSlideGroupItem',\n\n props: makeGroupItemProps(),\n\n emits: {\n 'group:selected': (val: { value: boolean }) => true,\n },\n\n setup (props, { slots }) {\n const slideGroupItem = useGroupItem(props, VSlideGroupSymbol)\n\n return () => slots.default?.({\n isSelected: slideGroupItem.isSelected.value,\n select: slideGroupItem.select,\n toggle: slideGroupItem.toggle,\n selectedClass: slideGroupItem.selectedClass.value,\n })\n },\n})\n\nexport type VSlideGroupItem = InstanceType\n", "// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { makeVSnackbarProps, VSnackbar } from '@/components/VSnackbar/VSnackbar'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed, nextTick, shallowRef, watch } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType, VNodeProps } from 'vue'\nimport type { GenericProps } from '@/util'\n\nexport type VSnackbarQueueSlots = {\n default: { item: T }\n text: { item: T }\n actions: {\n item: T\n props: {\n onClick: () => void\n }\n }\n}\n\nexport type SnackbarMessage =\n | string\n | (Omit<\n VSnackbar['$props'],\n | 'modelValue'\n | 'onUpdate:modelValue'\n | 'activator'\n | 'activatorProps'\n | 'closeDelay'\n | 'openDelay'\n | 'openOnClick'\n | 'openOnFocus'\n | 'openOnHover'\n | 'style'\n | '$children'\n | 'v-slots'\n | `v-slot:${string}`\n | keyof VNodeProps\n > & { style?: any })\n\nexport const makeVSnackbarQueueProps = propsFactory({\n // TODO: Port this to Snackbar on dev\n closable: [Boolean, String],\n closeText: {\n type: String,\n default: '$vuetify.dismiss',\n },\n modelValue: {\n type: Array as PropType,\n default: () => [],\n },\n\n ...omit(makeVSnackbarProps(), ['modelValue']),\n}, 'VSnackbarQueue')\n\nexport const VSnackbarQueue = genericComponent (\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (val: T) => void\n },\n slots: VSnackbarQueueSlots,\n) => GenericProps>()({\n name: 'VSnackbarQueue',\n\n props: makeVSnackbarQueueProps(),\n\n emits: {\n 'update:modelValue': (val: SnackbarMessage[]) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n\n const isActive = shallowRef(false)\n const isVisible = shallowRef(false)\n const current = shallowRef>()\n\n watch(() => props.modelValue.length, (val, oldVal) => {\n if (!isVisible.value && val > oldVal) {\n showNext()\n }\n })\n watch(isActive, val => {\n if (val) isVisible.value = true\n })\n\n function onAfterLeave () {\n if (props.modelValue.length) {\n showNext()\n } else {\n current.value = undefined\n isVisible.value = false\n }\n }\n function showNext () {\n const [next, ...rest] = props.modelValue\n emit('update:modelValue', rest)\n current.value = typeof next === 'string' ? { text: next } : next\n nextTick(() => {\n isActive.value = true\n })\n }\n function onClickClose () {\n isActive.value = false\n }\n\n const btnProps = computed(() => ({\n color: typeof props.closable === 'string' ? props.closable : undefined,\n text: t(props.closeText),\n }))\n\n useRender(() => {\n const hasActions = !!(props.closable || slots.actions)\n const { modelValue: _, ...snackbarProps } = VSnackbar.filterProps(props as any)\n\n return (\n <>\n { isVisible.value && !!current.value && (\n slots.default\n ? (\n \n { slots.default({ item: current.value }) }\n \n ) : (\n \n {{\n text: slots.text ? () => slots.text?.({ item: current.value! }) : undefined,\n actions: hasActions ? () => (\n <>\n { !slots.actions ? (\n \n ) : (\n \n { slots.actions({\n item: current.value!,\n props: { onClick: onClickClose },\n })}\n \n )}\n \n ) : undefined,\n }}\n \n )\n )}\n \n )\n })\n },\n})\n\nexport type VSnackbarQueue = InstanceType\n", "// Utilities\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type SparklineItem = string | number | { value: number }\n\nexport const makeLineProps = propsFactory({\n autoDraw: Boolean,\n autoDrawDuration: [Number, String],\n autoDrawEasing: {\n type: String,\n default: 'ease',\n },\n color: String,\n gradient: {\n type: Array as PropType,\n default: () => ([]),\n },\n gradientDirection: {\n type: String as PropType<'top' | 'bottom' | 'left' | 'right'>,\n validator: (val: string) => ['top', 'bottom', 'left', 'right'].includes(val),\n default: 'top',\n },\n height: {\n type: [String, Number],\n default: 75,\n },\n labels: {\n type: Array as PropType,\n default: () => ([]),\n },\n labelSize: {\n type: [Number, String],\n default: 7,\n },\n lineWidth: {\n type: [String, Number],\n default: 4,\n },\n id: String,\n itemValue: {\n type: String,\n default: 'value',\n },\n modelValue: {\n type: Array as PropType,\n default: () => ([]),\n },\n min: [String, Number],\n max: [String, Number],\n padding: {\n type: [String, Number],\n default: 8,\n },\n showLabels: Boolean,\n smooth: [Boolean, String, Number],\n width: {\n type: [Number, String],\n default: 300,\n },\n}, 'Line')\n", "// Utilities\nimport { computed, useId } from 'vue'\nimport { makeLineProps } from './util/line'\nimport { genericComponent, getPropertyFromItem, PREFERS_REDUCED_MOTION, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VBarlineSlots = {\n default: void\n label: { index: number, value: string }\n}\n\nexport type SparklineItem = number | { value: number }\n\nexport type SparklineText = {\n x: number\n value: string\n}\n\nexport interface Boundary {\n minX: number\n minY: number\n maxX: number\n maxY: number\n}\n\nexport interface Bar {\n x: number\n y: number\n height: number\n value: number\n}\n\nexport const makeVBarlineProps = propsFactory({\n autoLineWidth: Boolean,\n\n ...makeLineProps(),\n}, 'VBarline')\n\nexport const VBarline = genericComponent()({\n name: 'VBarline',\n\n props: makeVBarlineProps(),\n\n setup (props, { slots }) {\n const uid = useId()\n const id = computed(() => props.id || `barline-${uid}`)\n const autoDrawDuration = computed(() => Number(props.autoDrawDuration) || 500)\n\n const hasLabels = computed(() => {\n return Boolean(\n props.showLabels ||\n props.labels.length > 0 ||\n !!slots?.label\n )\n })\n\n const lineWidth = computed(() => parseFloat(props.lineWidth) || 4)\n\n const totalWidth = computed(() => Math.max(props.modelValue.length * lineWidth.value, Number(props.width)))\n\n const boundary = computed(() => {\n return {\n minX: 0,\n maxX: totalWidth.value,\n minY: 0,\n maxY: parseInt(props.height, 10),\n }\n })\n const items = computed(() => props.modelValue.map(item => getPropertyFromItem(item, props.itemValue, item)))\n\n function genBars (\n values: number[],\n boundary: Boundary\n ): Bar[] {\n const { minX, maxX, minY, maxY } = boundary\n\n const totalValues = values.length\n let maxValue = props.max != null ? Number(props.max) : Math.max(...values)\n let minValue = props.min != null ? Number(props.min) : Math.min(...values)\n\n if (minValue > 0 && props.min == null) minValue = 0\n if (maxValue < 0 && props.max == null) maxValue = 0\n\n const gridX = maxX / (totalValues === 1 ? 2 : totalValues)\n const gridY = (maxY - minY) / ((maxValue - minValue) || 1)\n const horizonY = maxY - Math.abs(minValue * gridY)\n\n return values.map((value, index) => {\n const height = Math.abs(gridY * value)\n\n return {\n x: minX + index * gridX,\n y: horizonY - height +\n Number(value < 0) * height,\n height,\n value,\n }\n })\n }\n\n const parsedLabels = computed(() => {\n const labels = []\n const points = genBars(items.value, boundary.value)\n const len = points.length\n\n for (let i = 0; labels.length < len; i++) {\n const item = points[i]\n let value = props.labels[i]\n\n if (!value) {\n value = typeof item === 'object'\n ? item.value\n : item\n }\n\n labels.push({\n x: item.x,\n value: String(value),\n })\n }\n\n return labels\n })\n\n const bars = computed(() => genBars(items.value, boundary.value))\n const offsetX = computed(() => bars.value.length === 1\n ? (boundary.value.maxX - lineWidth.value) / 2\n : (Math.abs(bars.value[0].x - (bars.value[1].x)) - lineWidth.value) / 2\n )\n const smooth = computed(() => typeof props.smooth === 'boolean' ? (props.smooth ? 2 : 0) : Number(props.smooth))\n\n useRender(() => {\n const gradientData = !props.gradient.slice().length ? [''] : props.gradient.slice().reverse()\n return (\n \n \n \n {\n gradientData.map((color, index) => (\n \n ))\n }\n \n \n\n \n {\n bars.value.map(item => (\n \n { props.autoDraw && !PREFERS_REDUCED_MOTION() && (\n <>\n \n \n \n )}\n \n ))\n }\n \n\n { hasLabels.value && (\n \n {\n parsedLabels.value.map((item, i) => (\n \n { slots.label?.({ index: i, value: item.value }) ?? item.value }\n \n ))\n }\n \n )}\n\n \n \n \n \n )\n })\n },\n})\n\nexport type VBarline = InstanceType\n", "// @ts-nocheck\n/* eslint-disable */\n\nimport { Point } from '../VSparkline'\n// import { checkCollinear, getDistance, moveTo } from './math'\n\n/**\n * From https://github.com/unsplash/react-trend/blob/master/src/helpers/DOM.helpers.js#L18\n */\nexport function genPath (points: Point[], radius: number, fill = false, height = 75) {\n if (points.length === 0) return ''\n const start = points.shift()!\n const end = points[points.length - 1]\n\n return (\n (fill ? `M${start.x} ${height - start.x + 2} L${start.x} ${start.y}` : `M${start.x} ${start.y}`) +\n points\n .map((point, index) => {\n const next = points[index + 1]\n const prev = points[index - 1] || start\n const isCollinear = next && checkCollinear(next, point, prev)\n\n if (!next || isCollinear) {\n return `L${point.x} ${point.y}`\n }\n\n const threshold = Math.min(\n getDistance(prev, point),\n getDistance(next, point)\n )\n const isTooCloseForRadius = threshold / 2 < radius\n const radiusForPoint = isTooCloseForRadius ? threshold / 2 : radius\n\n const before = moveTo(prev, point, radiusForPoint)\n const after = moveTo(next, point, radiusForPoint)\n\n return `L${before.x} ${before.y}S${point.x} ${point.y} ${after.x} ${after.y}`\n })\n .join('') +\n (fill ? `L${end.x} ${height - start.x + 2} Z` : '')\n )\n}\n\nfunction int (value: string | number): number {\n return parseInt(value, 10)\n}\n\n/**\n * https://en.wikipedia.org/wiki/Collinearity\n * x=(x1+x2)/2\n * y=(y1+y2)/2\n */\nexport function checkCollinear (p0: Point, p1: Point, p2: Point): boolean {\n return int(p0.x + p2.x) === int(2 * p1.x) && int(p0.y + p2.y) === int(2 * p1.y)\n}\n\nexport function getDistance (p1: Point, p2: Point): number {\n return Math.sqrt(\n Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2)\n )\n}\n\nexport function moveTo (to: Point, from: Point, radius: number) {\n const vector = { x: to.x - from.x, y: to.y - from.y }\n const length = Math.sqrt((vector.x * vector.x) + (vector.y * vector.y))\n const unitVector = { x: vector.x / length, y: vector.y / length }\n\n return {\n x: from.x + unitVector.x * radius,\n y: from.y + unitVector.y * radius,\n }\n}\n", "// Utilities\nimport { computed, nextTick, ref, useId, watch } from 'vue'\nimport { makeLineProps } from './util/line'\nimport { genPath as _genPath } from './util/path'\nimport { genericComponent, getPropertyFromItem, PREFERS_REDUCED_MOTION, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VTrendlineSlots = {\n default: void\n label: { index: number, value: string }\n}\n\nexport type SparklineItem = number | { value: number }\n\nexport type SparklineText = {\n x: number\n value: string\n}\n\nexport interface Boundary {\n minX: number\n minY: number\n maxX: number\n maxY: number\n}\n\nexport interface Point {\n x: number\n y: number\n value: number\n}\n\nexport const makeVTrendlineProps = propsFactory({\n fill: Boolean,\n\n ...makeLineProps(),\n}, 'VTrendline')\n\nexport const VTrendline = genericComponent()({\n name: 'VTrendline',\n\n props: makeVTrendlineProps(),\n\n setup (props, { slots }) {\n const uid = useId()\n const id = computed(() => props.id || `trendline-${uid}`)\n const autoDrawDuration = computed(() => Number(props.autoDrawDuration) || (props.fill ? 500 : 2000))\n\n const lastLength = ref(0)\n const path = ref(null)\n\n function genPoints (\n values: number[],\n boundary: Boundary\n ): Point[] {\n const { minX, maxX, minY, maxY } = boundary\n\n if (values.length === 1) {\n values = [values[0], values[0]]\n }\n\n const totalValues = values.length\n const maxValue = props.max != null ? Number(props.max) : Math.max(...values)\n const minValue = props.min != null ? Number(props.min) : Math.min(...values)\n\n const gridX = (maxX - minX) / (totalValues - 1)\n const gridY = (maxY - minY) / ((maxValue - minValue) || 1)\n\n return values.map((value, index) => {\n return {\n x: minX + index * gridX,\n y: maxY - (value - minValue) * gridY,\n value,\n }\n })\n }\n const hasLabels = computed(() => {\n return Boolean(\n props.showLabels ||\n props.labels.length > 0 ||\n !!slots?.label\n )\n })\n const lineWidth = computed(() => {\n return parseFloat(props.lineWidth) || 4\n })\n const totalWidth = computed(() => Number(props.width))\n\n const boundary = computed(() => {\n const padding = Number(props.padding)\n\n return {\n minX: padding,\n maxX: totalWidth.value - padding,\n minY: padding,\n maxY: parseInt(props.height, 10) - padding,\n }\n })\n const items = computed(() => props.modelValue.map(item => getPropertyFromItem(item, props.itemValue, item)))\n const parsedLabels = computed(() => {\n const labels = []\n const points = genPoints(items.value, boundary.value)\n const len = points.length\n\n for (let i = 0; labels.length < len; i++) {\n const item = points[i]\n let value = props.labels[i]\n\n if (!value) {\n value = typeof item === 'object'\n ? item.value\n : item\n }\n\n labels.push({\n x: item.x,\n value: String(value),\n })\n }\n\n return labels\n })\n\n watch(() => props.modelValue, async () => {\n await nextTick()\n\n if (!props.autoDraw || !path.value || PREFERS_REDUCED_MOTION()) return\n\n const pathRef = path.value\n const length = pathRef.getTotalLength()\n\n if (!props.fill) {\n // Initial setup to \"hide\" the line by using the stroke dash array\n pathRef.style.strokeDasharray = `${length}`\n pathRef.style.strokeDashoffset = `${length}`\n\n // Force reflow to ensure the transition starts from this state\n pathRef.getBoundingClientRect()\n\n // Animate the stroke dash offset to \"draw\" the line\n pathRef.style.transition = `stroke-dashoffset ${autoDrawDuration.value}ms ${props.autoDrawEasing}`\n pathRef.style.strokeDashoffset = '0'\n } else {\n // Your existing logic for filled paths remains the same\n pathRef.style.transformOrigin = 'bottom center'\n pathRef.style.transition = 'none'\n pathRef.style.transform = `scaleY(0)`\n pathRef.getBoundingClientRect()\n pathRef.style.transition = `transform ${autoDrawDuration.value}ms ${props.autoDrawEasing}`\n pathRef.style.transform = `scaleY(1)`\n }\n\n lastLength.value = length\n }, { immediate: true })\n\n function genPath (fill: boolean) {\n const smoothValue = typeof props.smooth === 'boolean' ? (props.smooth ? 8 : 0) : Number(props.smooth)\n\n return _genPath(\n genPoints(items.value, boundary.value),\n smoothValue,\n fill,\n parseInt(props.height, 10)\n )\n }\n\n useRender(() => {\n const gradientData = !props.gradient.slice().length ? [''] : props.gradient.slice().reverse()\n\n return (\n \n \n \n {\n gradientData.map((color, index) => (\n \n ))\n }\n \n \n\n { hasLabels.value && (\n \n {\n parsedLabels.value.map((item, i) => (\n \n { slots.label?.({ index: i, value: item.value }) ?? item.value }\n \n ))\n }\n \n )}\n\n \n\n { props.fill && (\n \n )}\n \n )\n })\n },\n})\n\nexport type VTrendline = InstanceType\n", "// Components\nimport { makeVBarlineProps, VBarline } from './VBarline'\nimport { makeVTrendlineProps, VTrendline } from './VTrendline'\n\n// Composables\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\n\nexport const makeVSparklineProps = propsFactory({\n type: {\n type: String as PropType<'trend' | 'bar'>,\n default: 'trend',\n },\n\n ...makeVBarlineProps(),\n ...makeVTrendlineProps(),\n}, 'VSparkline')\n\nexport type VSparklineSlots = {\n default: void\n label: { index: number, value: string }\n}\n\nexport const VSparkline = genericComponent()({\n name: 'VSparkline',\n\n props: makeVSparklineProps(),\n\n setup (props, { slots }) {\n const { textColorClasses, textColorStyles } = useTextColor(() => props.color)\n const hasLabels = computed(() => {\n return Boolean(\n props.showLabels ||\n props.labels.length > 0 ||\n !!slots?.label\n )\n })\n const totalHeight = computed(() => {\n let height = parseInt(props.height, 10)\n\n if (hasLabels.value) height += parseInt(props.labelSize, 10) * 1.5\n\n return height\n })\n\n useRender(() => {\n const Tag = props.type === 'trend' ? VTrendline : VBarline\n const lineProps = props.type === 'trend' ? VTrendline.filterProps(props) : VBarline.filterProps(props)\n\n return (\n \n )\n })\n },\n})\n\nexport type VSparkline = InstanceType\n", "// Styles\nimport './VSpeedDial.sass'\n\n// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { makeVMenuProps, VMenu } from '@/components/VMenu/VMenu'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\nimport type { Anchor } from '@/util'\n\nexport const makeVSpeedDialProps = propsFactory({\n ...makeComponentProps(),\n ...makeVMenuProps({\n offset: 8,\n minWidth: 0,\n openDelay: 0,\n closeDelay: 100,\n location: 'top center' as const,\n transition: 'scale-transition',\n }),\n}, 'VSpeedDial')\n\nexport const VSpeedDial = genericComponent()({\n name: 'VSpeedDial',\n\n props: makeVSpeedDialProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n\n const menuRef = ref()\n\n const location = computed(() => {\n const [y, x = 'center'] = props.location?.split(' ') ?? []\n\n return `${y} ${x}` as Anchor\n })\n\n const locationClasses = computed(() => ({\n [`v-speed-dial__content--${location.value.replace(' ', '-')}`]: true,\n }))\n\n useRender(() => {\n const menuProps = VMenu.filterProps(props)\n\n return (\n \n {{\n ...slots,\n default: slotProps => (\n \n \n { slots.default?.(slotProps) }\n \n \n ),\n }}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VSpeedDial = InstanceType\n", "// Styles\nimport './VStepper.sass'\n\n// Components\nimport { VStepperSymbol } from './shared'\nimport { makeVStepperActionsProps, VStepperActions } from './VStepperActions'\nimport { VStepperHeader } from './VStepperHeader'\nimport { VStepperItem } from './VStepperItem'\nimport { VStepperWindow } from './VStepperWindow'\nimport { VStepperWindowItem } from './VStepperWindowItem'\nimport { VDivider } from '@/components/VDivider'\nimport { makeVSheetProps, VSheet } from '@/components/VSheet/VSheet'\n\n// Composables\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, toRefs } from 'vue'\nimport { genericComponent, getPropertyFromItem, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { StepperItem, StepperItemSlot } from './VStepperItem'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\nexport type VStepperSlot = {\n prev: () => void\n next: () => void\n}\n\nexport type VStepperSlots = {\n actions: VStepperSlot\n default: VStepperSlot\n header: StepperItem\n 'header-item': StepperItemSlot\n icon: StepperItemSlot\n title: StepperItemSlot\n subtitle: StepperItemSlot\n item: StepperItem\n prev: never\n next: never\n} & {\n [key: `header-item.${string}`]: StepperItemSlot\n [key: `item.${string}`]: StepperItem\n}\n\nexport const makeStepperProps = propsFactory({\n altLabels: Boolean,\n bgColor: String,\n completeIcon: IconValue,\n editIcon: IconValue,\n editable: Boolean,\n errorIcon: IconValue,\n hideActions: Boolean,\n items: {\n type: Array as PropType,\n default: () => ([]),\n },\n itemTitle: {\n type: [String, Array, Function] as PropType,\n default: 'title',\n },\n itemValue: {\n type: [String, Array, Function] as PropType,\n default: 'value',\n },\n itemProps: {\n type: [Boolean, String, Array, Function] as PropType,\n default: 'props',\n },\n nonLinear: Boolean,\n flat: Boolean,\n\n ...makeDisplayProps(),\n}, 'Stepper')\n\nexport const makeVStepperProps = propsFactory({\n ...makeStepperProps(),\n ...makeGroupProps({\n mandatory: 'force' as const,\n selectedClass: 'v-stepper-item--selected',\n }),\n ...makeVSheetProps(),\n ...pick(makeVStepperActionsProps(), ['prevText', 'nextText']),\n}, 'VStepper')\n\nexport const VStepper = genericComponent(\n props: {\n modelValue?: TModel\n 'onUpdate:modelValue'?: (value: TModel) => void\n },\n slots: VStepperSlots\n) => GenericProps>()({\n name: 'VStepper',\n\n props: makeVStepperProps(),\n\n emits: {\n 'update:modelValue': (v: unknown) => true,\n },\n\n setup (props, { slots }) {\n const { items: _items, next, prev, selected } = useGroup(props, VStepperSymbol)\n const { displayClasses, mobile } = useDisplay(props)\n const { completeIcon, editIcon, errorIcon, color, editable, prevText, nextText } = toRefs(props)\n\n const items = computed(() => props.items.map((item, index) => {\n const title = getPropertyFromItem(item, props.itemTitle, item)\n const value = getPropertyFromItem(item, props.itemValue, index + 1)\n const itemProps = props.itemProps === true\n ? item\n : getPropertyFromItem(item, props.itemProps)\n\n const _props = {\n title,\n value,\n ...itemProps,\n }\n\n return {\n title: _props.title,\n value: _props.value,\n props: _props,\n raw: item,\n }\n }))\n const activeIndex = computed(() => {\n return _items.value.findIndex(item => selected.value.includes(item.id))\n })\n const disabled = computed(() => {\n if (props.disabled) return props.disabled\n if (activeIndex.value === 0) return 'prev'\n if (activeIndex.value === _items.value.length - 1) return 'next'\n\n return false\n })\n\n provideDefaults({\n VStepperItem: {\n editable,\n errorIcon,\n completeIcon,\n editIcon,\n prevText,\n nextText,\n },\n VStepperActions: {\n color,\n disabled,\n prevText,\n nextText,\n },\n })\n\n useRender(() => {\n const sheetProps = VSheet.filterProps(props)\n\n const hasHeader = !!(slots.header || props.items.length)\n const hasWindow = props.items.length > 0\n const hasActions = !props.hideActions && !!(hasWindow || slots.actions)\n\n return (\n \n { hasHeader && (\n \n { items.value.map(({ raw, ...item }, index) => (\n <>\n { !!index && () }\n\n \n \n ))}\n \n )}\n\n { hasWindow && (\n \n { items.value.map(item => (\n slots[`item.${item.value}`]?.(item) ?? slots.item?.(item),\n }}\n />\n ))}\n \n )}\n\n { slots.default?.({ prev, next }) }\n\n { hasActions && (\n slots.actions?.({ next, prev }) ?? (\n \n )\n )}\n \n )\n })\n\n return {\n prev,\n next,\n }\n },\n})\n\nexport type VStepper = InstanceType\n", "// Types\nimport type { InjectionKey } from 'vue'\nimport type { GroupProvide } from '@/composables/group'\n\nexport const VStepperSymbol: InjectionKey = Symbol.for('vuetify:v-stepper')\n", "// Components\nimport { VBtn } from '@/components/VBtn/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type VStepperActionsSlots = {\n prev: {\n props: { onClick: () => void }\n }\n next: {\n props: { onClick: () => void }\n }\n}\n\nexport const makeVStepperActionsProps = propsFactory({\n color: String,\n disabled: {\n type: [Boolean, String] as PropType,\n default: false,\n },\n prevText: {\n type: String,\n default: '$vuetify.stepper.prev',\n },\n nextText: {\n type: String,\n default: '$vuetify.stepper.next',\n },\n}, 'VStepperActions')\n\nexport const VStepperActions = genericComponent()({\n name: 'VStepperActions',\n\n props: makeVStepperActionsProps(),\n\n emits: {\n 'click:prev': () => true,\n 'click:next': () => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n function onClickPrev () {\n emit('click:prev')\n }\n\n function onClickNext () {\n emit('click:next')\n }\n\n useRender(() => {\n const prevSlotProps = {\n onClick: onClickPrev,\n }\n const nextSlotProps = {\n onClick: onClickNext,\n }\n\n return (\n
\n \n { slots.prev?.({ props: prevSlotProps }) ?? (\n \n )}\n \n\n \n { slots.next?.({ props: nextSlotProps }) ?? (\n \n )}\n \n
\n )\n })\n\n return {}\n },\n})\n\nexport type VStepperActions = InstanceType\n", "// Utilities\nimport { createSimpleFunctional } from '@/util'\n\nexport const VStepperHeader = createSimpleFunctional('v-stepper-header')\n\nexport type VStepperHeader = InstanceType\n", "// Styles\nimport './VStepperItem.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar/VAvatar'\nimport { VIcon } from '@/components/VIcon/VIcon'\n\n// Composables\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { IconValue } from '@/composables/icons'\nimport { genOverlays } from '@/composables/variant'\n\n// Directives\nimport vRipple from '@/directives/ripple'\n\n// Utilities\nimport { computed } from 'vue'\nimport { VStepperSymbol } from './shared'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { RippleDirectiveBinding } from '@/directives/ripple'\n\nexport type StepperItem = string | Record\n\nexport type StepperItemSlot = {\n canEdit: boolean\n hasError: boolean\n hasCompleted: boolean\n title?: string | number\n subtitle?: string | number\n step: T\n}\n\nexport type VStepperItemSlots = {\n default: StepperItemSlot\n icon: StepperItemSlot\n title: StepperItemSlot\n subtitle: StepperItemSlot\n}\n\nexport type ValidationRule = () => string | boolean\n\nexport const makeStepperItemProps = propsFactory({\n color: String,\n title: String,\n subtitle: String,\n complete: Boolean,\n completeIcon: {\n type: IconValue,\n default: '$complete',\n },\n editable: Boolean,\n editIcon: {\n type: IconValue,\n default: '$edit',\n },\n error: Boolean,\n errorIcon: {\n type: IconValue,\n default: '$error',\n },\n icon: IconValue,\n ripple: {\n type: [Boolean, Object] as PropType,\n default: true,\n },\n rules: {\n type: Array as PropType,\n default: () => ([]),\n },\n}, 'StepperItem')\n\nexport const makeVStepperItemProps = propsFactory({\n ...makeStepperItemProps(),\n ...makeGroupItemProps(),\n}, 'VStepperItem')\n\nexport const VStepperItem = genericComponent()({\n name: 'VStepperItem',\n\n directives: { vRipple },\n\n props: makeVStepperItemProps(),\n\n emits: {\n 'group:selected': (val: { value: boolean }) => true,\n },\n\n setup (props, { slots }) {\n const group = useGroupItem(props, VStepperSymbol, true)\n const step = computed(() => group?.value.value ?? props.value)\n const isValid = computed(() => props.rules.every(handler => handler() === true))\n const isClickable = computed(() => !props.disabled && props.editable)\n const canEdit = computed(() => !props.disabled && props.editable)\n const hasError = computed(() => props.error || !isValid.value)\n const hasCompleted = computed(() => props.complete || (props.rules.length > 0 && isValid.value))\n const icon = computed(() => {\n if (hasError.value) return props.errorIcon\n if (hasCompleted.value) return props.completeIcon\n if (group.isSelected.value && props.editable) return props.editIcon\n\n return props.icon\n })\n const slotProps = computed(() => ({\n canEdit: canEdit.value,\n hasError: hasError.value,\n hasCompleted: hasCompleted.value,\n title: props.title,\n subtitle: props.subtitle,\n step: step.value,\n value: props.value,\n }))\n\n useRender(() => {\n const hasColor = (\n !group ||\n group.isSelected.value ||\n hasCompleted.value ||\n canEdit.value\n ) && (\n !hasError.value &&\n !props.disabled\n )\n const hasTitle = !!(props.title != null || slots.title)\n const hasSubtitle = !!(props.subtitle != null || slots.subtitle)\n\n function onClick () {\n group?.toggle()\n }\n\n return (\n \n { isClickable.value && genOverlays(true, 'v-stepper-item') }\n\n \n { slots.icon?.(slotProps.value) ?? (\n icon.value ? (\n \n ) : step.value\n )}\n \n\n
\n { hasTitle && (\n \n { slots.title?.(slotProps.value) ?? props.title }\n
\n )}\n\n { hasSubtitle && (\n \n { slots.subtitle?.(slotProps.value) ?? props.subtitle }\n \n )}\n\n { slots.default?.(slotProps.value) }\n \n \n )\n })\n return {}\n },\n})\n\nexport type VStepperItem = InstanceType\n", "// Components\nimport { VStepperSymbol } from './shared'\nimport { makeVWindowProps, VWindow } from '@/components/VWindow/VWindow'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VWindowSlots } from '@/components/VWindow/VWindow'\nimport type { GenericProps } from '@/util'\n\nexport const makeVStepperWindowProps = propsFactory({\n ...omit(makeVWindowProps(), ['continuous', 'nextIcon', 'prevIcon', 'showArrows', 'touch', 'mandatory']),\n}, 'VStepperWindow')\n\nexport const VStepperWindow = genericComponent(\n props: {\n modelValue?: TModel\n 'onUpdate:modelValue'?: (value: TModel) => void\n },\n slots: VWindowSlots\n) => GenericProps>()({\n name: 'VStepperWindow',\n\n props: makeVStepperWindowProps(),\n\n emits: {\n 'update:modelValue': (v: unknown) => true,\n },\n\n setup (props, { slots }) {\n const group = inject(VStepperSymbol, null)\n const _model = useProxiedModel(props, 'modelValue')\n\n const model = computed({\n get () {\n // Always return modelValue if defined\n // or if not within a VStepper group\n if (_model.value != null || !group) return _model.value\n\n // If inside of a VStepper, find the currently selected\n // item by id. Item value may be assigned by its index\n return group.items.value.find(item => group.selected.value.includes(item.id))?.value\n },\n set (val) {\n _model.value = val\n },\n })\n\n useRender(() => {\n const windowProps = VWindow.filterProps(props)\n\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VStepperWindow = InstanceType\n", "// Components\nimport { makeVWindowItemProps, VWindowItem } from '@/components/VWindow/VWindowItem'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVStepperWindowItemProps = propsFactory({\n ...makeVWindowItemProps(),\n}, 'VStepperWindowItem')\n\nexport const VStepperWindowItem = genericComponent()({\n name: 'VStepperWindowItem',\n\n props: makeVStepperWindowItemProps(),\n\n setup (props, { slots }) {\n useRender(() => {\n const windowItemProps = VWindowItem.filterProps(props)\n\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VStepperWindowItem = InstanceType\n", "// Styles\nimport './VSwitch.sass'\n\n// Components\nimport { VScaleTransition } from '@/components/transitions'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VProgressCircular } from '@/components/VProgressCircular'\nimport { makeVSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\n\n// Composables\nimport { useFocus } from '@/composables/focus'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { LoaderSlot, useLoader } from '@/composables/loader'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { ref, toRef, useId } from 'vue'\nimport { filterInputAttrs, genericComponent, propsFactory, SUPPORTS_MATCH_MEDIA, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef, Ref } from 'vue'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { VSelectionControlSlots } from '@/components/VSelectionControl/VSelectionControl'\nimport type { IconValue } from '@/composables/icons'\nimport type { LoaderSlotProps } from '@/composables/loader'\nimport type { GenericProps } from '@/util'\n\nexport type VSwitchSlot = {\n model: Ref\n isValid: ComputedRef\n}\n\nexport type VSwitchSlots =\n & VInputSlots\n & VSelectionControlSlots\n & {\n loader: LoaderSlotProps\n thumb: { icon: IconValue | undefined } & VSwitchSlot\n 'track-false': VSwitchSlot\n 'track-true': VSwitchSlot\n }\n\nexport const makeVSwitchProps = propsFactory({\n indeterminate: Boolean,\n inset: Boolean,\n flat: Boolean,\n loading: {\n type: [Boolean, String],\n default: false,\n },\n\n ...makeVInputProps(),\n ...makeVSelectionControlProps(),\n}, 'VSwitch')\n\nexport const VSwitch = genericComponent(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VSwitchSlots,\n) => GenericProps>()({\n name: 'VSwitch',\n\n inheritAttrs: false,\n\n props: makeVSwitchProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (value: any) => true,\n 'update:indeterminate': (value: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const indeterminate = useProxiedModel(props, 'indeterminate')\n const model = useProxiedModel(props, 'modelValue')\n const { loaderClasses } = useLoader(props)\n const { isFocused, focus, blur } = useFocus(props)\n const control = ref()\n const inputRef = ref()\n const isForcedColorsModeActive = SUPPORTS_MATCH_MEDIA && window.matchMedia('(forced-colors: active)').matches\n\n const loaderColor = toRef(() => {\n return typeof props.loading === 'string' && props.loading !== ''\n ? props.loading\n : props.color\n })\n\n const uid = useId()\n const id = toRef(() => props.id || `switch-${uid}`)\n\n function onChange () {\n if (indeterminate.value) {\n indeterminate.value = false\n }\n }\n function onTrackClick (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n control.value?.input?.click()\n }\n\n useRender(() => {\n const [rootAttrs, controlAttrs] = filterInputAttrs(attrs)\n const inputProps = VInput.filterProps(props)\n const controlProps = VSelectionControl.filterProps(props)\n\n return (\n \n {{\n ...slots,\n default: ({\n id,\n messagesId,\n isDisabled,\n isReadonly,\n isValid,\n }) => {\n const slotProps = {\n model,\n isValid,\n }\n\n return (\n \n {{\n ...slots,\n default: ({ backgroundColorClasses, backgroundColorStyles }) => (\n \n { slots['track-true'] && (\n
\n { slots['track-true'](slotProps) }\n
\n )}\n\n { slots['track-false'] && (\n
\n { slots['track-false'](slotProps) }\n
\n )}\n \n ),\n input: ({ inputNode, icon, backgroundColorClasses, backgroundColorStyles }) => (\n <>\n { inputNode }\n \n { slots.thumb ? (\n \n { slots.thumb({ ...slotProps, icon }) }\n \n ) : (\n \n { !props.loading ? (\n (icon && (\n \n ))) : (\n \n { slotProps => (\n slots.loader\n ? slots.loader(slotProps)\n : (\n \n )\n )}\n \n )}\n \n )}\n \n \n ),\n }}\n
\n )\n },\n }}\n \n )\n })\n\n return forwardRefs({}, inputRef)\n },\n})\n\nexport type VSwitch = InstanceType\n", "// Styles\nimport './VSystemBar.sass'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { useSsrBoot } from '@/composables/ssrBoot'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, shallowRef, toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVSystemBarProps = propsFactory({\n color: String,\n height: [Number, String],\n window: Boolean,\n\n ...makeComponentProps(),\n ...makeElevationProps(),\n ...makeLayoutItemProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VSystemBar')\n\nexport const VSystemBar = genericComponent()({\n name: 'VSystemBar',\n\n props: makeVSystemBarProps(),\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const { ssrBootStyles } = useSsrBoot()\n const height = computed(() => props.height ?? (props.window ? 32 : 24))\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: shallowRef('top'),\n layoutSize: height,\n elementSize: height,\n active: computed(() => true),\n absolute: toRef(() => props.absolute),\n })\n\n useRender(() => (\n \n ))\n\n return {}\n },\n})\n\nexport type VSystemBar = InstanceType\n", "// Styles\nimport './VTab.sass'\n\n// Components\nimport { makeVBtnProps, VBtn } from '@/components/VBtn/VBtn'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\nimport { forwardRefs } from '@/composables/forwardRefs'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { VTabsSymbol } from './shared'\nimport { animate, genericComponent, omit, propsFactory, standardEasing, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VBtnSlots } from '@/components/VBtn/VBtn'\n\nexport const makeVTabProps = propsFactory({\n fixed: Boolean,\n\n sliderColor: String,\n sliderTransition: String as PropType<'shift' | 'grow' | 'fade'>,\n sliderTransitionDuration: [String, Number],\n hideSlider: Boolean,\n inset: Boolean,\n\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n },\n\n ...omit(makeVBtnProps({\n selectedClass: 'v-tab--selected',\n variant: 'text' as const,\n }), [\n 'active',\n 'block',\n 'flat',\n 'location',\n 'position',\n 'symbol',\n ]),\n}, 'VTab')\n\nexport const VTab = genericComponent()({\n name: 'VTab',\n\n props: makeVTabProps(),\n\n setup (props, { slots, attrs }) {\n const {\n textColorClasses: sliderColorClasses,\n textColorStyles: sliderColorStyles,\n } = useTextColor(() => props.sliderColor)\n const {\n backgroundColorClasses: insetColorClasses,\n backgroundColorStyles: insetColorStyles,\n } = useBackgroundColor(() => props.sliderColor)\n\n const rootEl = ref()\n const sliderEl = ref()\n\n const isHorizontal = computed(() => props.direction === 'horizontal')\n const isSelected = computed(() => rootEl.value?.group?.isSelected.value ?? false)\n\n function fade (nextEl: HTMLElement, prevEl: HTMLElement) {\n return { opacity: [0, 1] }\n }\n\n function grow (nextEl: HTMLElement, prevEl: HTMLElement) {\n return props.direction === 'vertical'\n ? { transform: ['scaleY(0)', 'scaleY(1)'] }\n : { transform: ['scaleX(0)', 'scaleX(1)'] }\n }\n\n function shift (nextEl: HTMLElement, prevEl: HTMLElement) {\n const prevBox = prevEl.getBoundingClientRect()\n const nextBox = nextEl.getBoundingClientRect()\n\n const xy = isHorizontal.value ? 'x' : 'y'\n const XY = isHorizontal.value ? 'X' : 'Y'\n const rightBottom = isHorizontal.value ? 'right' : 'bottom'\n const widthHeight = isHorizontal.value ? 'width' : 'height'\n\n const prevPos = prevBox[xy]\n const nextPos = nextBox[xy]\n const delta = prevPos > nextPos\n ? prevBox[rightBottom] - nextBox[rightBottom]\n : prevBox[xy] - nextBox[xy]\n const origin =\n Math.sign(delta) > 0 ? (isHorizontal.value ? 'right' : 'bottom')\n : Math.sign(delta) < 0 ? (isHorizontal.value ? 'left' : 'top')\n : 'center'\n const size = Math.abs(delta) + (Math.sign(delta) < 0 ? prevBox[widthHeight] : nextBox[widthHeight])\n const scale = size / Math.max(prevBox[widthHeight], nextBox[widthHeight]) || 0\n const initialScale = prevBox[widthHeight] / nextBox[widthHeight] || 0\n const sigma = 1.5\n\n return {\n transform: [\n `translate${XY}(${delta}px) scale${XY}(${initialScale})`,\n `translate${XY}(${delta / sigma}px) scale${XY}(${(scale - 1) / sigma + 1})`,\n 'none',\n ],\n transformOrigin: Array(3).fill(origin),\n }\n }\n\n function updateSlider ({ value }: { value: boolean }) {\n if (value) {\n const prevEl: HTMLElement | undefined = rootEl.value?.$el.parentElement?.querySelector('.v-tab--selected .v-tab__slider')\n const nextEl = sliderEl.value\n\n if (!prevEl || !nextEl) return\n\n const color = getComputedStyle(prevEl).color\n\n const keyframes = { fade, grow, shift }[props.sliderTransition ?? 'shift'] ?? shift\n const duration = Number(props.sliderTransitionDuration) ||\n ({ fade: 400, grow: 350, shift: 225 }[props.sliderTransition ?? 'shift'] ?? 225)\n\n animate(nextEl, {\n backgroundColor: [color, 'currentcolor'],\n ...keyframes(nextEl, prevEl),\n }, {\n duration,\n easing: standardEasing,\n })\n }\n }\n\n useRender(() => {\n const btnProps = VBtn.filterProps(props)\n\n return (\n \n {{\n ...slots,\n default: () => (\n <>\n { slots.default?.() ?? props.text }\n\n { !props.hideSlider && (\n \n )}\n \n ),\n }}\n \n )\n })\n\n return forwardRefs({}, rootEl)\n },\n})\n\nexport type VTab = InstanceType\n", "// Types\nimport type { InjectionKey } from 'vue'\nimport type { GroupProvide } from '@/composables/group'\n\nexport const VTabsSymbol: InjectionKey = Symbol.for('vuetify:v-tabs')\n", "// Styles\nimport './VTabs.sass'\n\n// Components\nimport { makeVTabProps, VTab } from './VTab'\nimport { VTabsWindow } from './VTabsWindow'\nimport { VTabsWindowItem } from './VTabsWindowItem'\nimport { makeVSlideGroupProps, VSlideGroup } from '@/components/VSlideGroup/VSlideGroup'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { VTabsSymbol } from './shared'\nimport { convertToUnit, genericComponent, isObject, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { GenericProps } from '@/util'\n\nexport type TabItem = string | number | Record\n\nexport type VTabsSlot = {\n item: T\n}\n\nexport type VTabsSlots = {\n default: never\n tab: VTabsSlot\n item: VTabsSlot\n window: never\n prev: never\n next: never\n} & {\n [key: `tab.${string}`]: VTabsSlot\n [key: `item.${string}`]: VTabsSlot\n}\n\nfunction parseItems (items: readonly TabItem[] | undefined) {\n if (!items) return []\n\n return items.map(item => {\n if (!isObject(item)) return { text: item, value: item }\n\n return item\n })\n}\n\nexport const makeVTabsProps = propsFactory({\n alignTabs: {\n type: String as PropType<'start' | 'title' | 'center' | 'end'>,\n default: 'start',\n },\n color: String,\n fixedTabs: Boolean,\n items: {\n type: Array as PropType,\n default: () => ([]),\n },\n stacked: Boolean,\n bgColor: String,\n grow: Boolean,\n height: {\n type: [Number, String],\n default: undefined,\n },\n hideSlider: Boolean,\n inset: Boolean,\n insetPadding: [String, Number],\n insetRadius: [String, Number],\n sliderColor: String,\n\n ...pick(makeVTabProps(), ['spaced', 'sliderTransition', 'sliderTransitionDuration']),\n ...makeVSlideGroupProps({\n mandatory: 'force' as const,\n selectedClass: 'v-tab-item--selected',\n }),\n ...makeDensityProps(),\n ...makeTagProps(),\n}, 'VTabs')\n\nexport const VTabs = genericComponent(\n props: {\n items?: T[]\n modelValue?: TModel\n 'onUpdate:modelValue'?: (value: TModel) => void\n },\n slots: VTabsSlots\n) => GenericProps>()({\n name: 'VTabs',\n\n props: makeVTabsProps(),\n\n emits: {\n 'update:modelValue': (v: unknown) => true,\n },\n\n setup (props, { attrs, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const items = computed(() => parseItems(props.items))\n const { densityClasses } = useDensity(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.bgColor)\n const { scopeId } = useScopeId()\n\n provideDefaults({\n VTab: {\n color: toRef(props, 'color'),\n direction: toRef(props, 'direction'),\n stacked: toRef(props, 'stacked'),\n fixed: toRef(props, 'fixedTabs'),\n inset: toRef(props, 'inset'),\n sliderColor: toRef(props, 'sliderColor'),\n sliderTransition: toRef(props, 'sliderTransition'),\n sliderTransitionDuration: toRef(props, 'sliderTransitionDuration'),\n hideSlider: toRef(props, 'hideSlider'),\n },\n })\n\n useRender(() => {\n const slideGroupProps = VSlideGroup.filterProps(props)\n const hasWindow = !!(slots.window || props.items.length > 0)\n\n return (\n <>\n \n {{\n default: slots.default ?? (() => items.value.map(item => (\n slots.tab?.({ item }) ?? (\n slots[`tab.${item.value}`]?.({ item }) : undefined,\n }}\n />\n )\n ))),\n prev: slots.prev,\n next: slots.next,\n }}\n \n\n { hasWindow && (\n \n { items.value.map(item => slots.item?.({ item }) ?? (\n slots[`item.${item.value}`]?.({ item }),\n }}\n />\n ))}\n\n { slots.window?.() }\n \n )}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VTabs = InstanceType\n", "// Components\nimport { makeVWindowProps, VWindow } from '@/components/VWindow/VWindow'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport { VTabsSymbol } from './shared'\nimport type { VWindowSlots } from '@/components/VWindow/VWindow'\nimport type { GenericProps } from '@/util'\n\nexport const makeVTabsWindowProps = propsFactory({\n ...omit(makeVWindowProps(), ['continuous', 'nextIcon', 'prevIcon', 'showArrows', 'touch', 'mandatory']),\n}, 'VTabsWindow')\n\nexport const VTabsWindow = genericComponent(\n props: {\n modelValue?: TModel\n 'onUpdate:modelValue'?: (value: TModel) => void\n },\n slots: VWindowSlots\n) => GenericProps>()({\n name: 'VTabsWindow',\n\n props: makeVTabsWindowProps(),\n\n emits: {\n 'update:modelValue': (v: any) => true,\n },\n\n setup (props, { slots }) {\n const group = inject(VTabsSymbol, null)\n const _model = useProxiedModel(props, 'modelValue')\n\n const model = computed({\n get () {\n // Always return modelValue if defined\n // or if not within a VTabs group\n if (_model.value != null || !group) return _model.value\n\n // If inside of a VTabs, find the currently selected\n // item by id. Item value may be assigned by its index\n return group.items.value.find(item => group.selected.value.includes(item.id))?.value\n },\n set (val) {\n _model.value = val\n },\n })\n\n useRender(() => {\n const windowProps = VWindow.filterProps(props)\n\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VTabsWindow = InstanceType\n", "// Components\nimport { makeVWindowItemProps, VWindowItem } from '@/components/VWindow/VWindowItem'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVTabsWindowItemProps = propsFactory({\n ...makeVWindowItemProps(),\n}, 'VTabsWindowItem')\n\nexport const VTabsWindowItem = genericComponent()({\n name: 'VTabsWindowItem',\n\n props: makeVTabsWindowItemProps(),\n\n setup (props, { slots }) {\n useRender(() => {\n const windowItemProps = VWindowItem.filterProps(props)\n\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VTabsWindowItem = InstanceType\n", "// Styles\nimport './VThemeProvider.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { genericComponent, propsFactory } from '@/util'\n\nexport const makeVThemeProviderProps = propsFactory({\n withBackground: Boolean,\n\n ...makeComponentProps(),\n ...makeThemeProps(),\n ...makeTagProps(),\n}, 'VThemeProvider')\n\nexport const VThemeProvider = genericComponent()({\n name: 'VThemeProvider',\n\n props: makeVThemeProviderProps(),\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n\n return () => {\n if (!props.withBackground) return slots.default?.()\n\n return (\n \n { slots.default?.() }\n \n )\n }\n },\n})\n\nexport type VThemeProvider = InstanceType\n", "// Styles\nimport './VTimeline.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { useRtl } from '@/composables/locale'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { convertToUnit, genericComponent, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { Prop } from 'vue'\nimport { makeVTimelineItemProps } from './VTimelineItem'\n\nexport type TimelineDirection = 'vertical' | 'horizontal'\nexport type TimelineSide = 'start' | 'end' | undefined\nexport type TimelineAlign = 'center' | 'start'\nexport type TimelineTruncateLine = 'start' | 'end' | 'both' | undefined\n\nexport const makeVTimelineProps = propsFactory({\n align: {\n type: String,\n default: 'center',\n validator: (v: any) => ['center', 'start'].includes(v),\n } as Prop,\n direction: {\n type: String,\n default: 'vertical',\n validator: (v: any) => ['vertical', 'horizontal'].includes(v),\n } as Prop,\n justify: {\n type: String,\n default: 'auto',\n validator: (v: any) => ['auto', 'center'].includes(v),\n },\n side: {\n type: String,\n validator: (v: any) => v == null || ['start', 'end'].includes(v),\n } as Prop,\n lineThickness: {\n type: [String, Number],\n default: 2,\n },\n lineColor: String,\n truncateLine: {\n type: String,\n validator: (v: any) => ['start', 'end', 'both'].includes(v),\n } as Prop,\n\n ...pick(makeVTimelineItemProps({\n lineInset: 0,\n }), ['dotColor', 'fillDot', 'hideOpposite', 'iconColor', 'lineInset', 'size']),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VTimeline')\n\nexport const VTimeline = genericComponent()({\n name: 'VTimeline',\n\n props: makeVTimelineProps(),\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { densityClasses } = useDensity(props)\n const { rtlClasses } = useRtl()\n\n provideDefaults({\n VTimelineDivider: {\n lineColor: toRef(() => props.lineColor),\n },\n VTimelineItem: {\n density: toRef(() => props.density),\n dotColor: toRef(() => props.dotColor),\n fillDot: toRef(() => props.fillDot),\n hideOpposite: toRef(() => props.hideOpposite),\n iconColor: toRef(() => props.iconColor),\n lineColor: toRef(() => props.lineColor),\n lineInset: toRef(() => props.lineInset),\n size: toRef(() => props.size),\n },\n })\n\n const sideClasses = computed(() => {\n const side = props.side ? props.side : props.density !== 'default' ? 'end' : null\n\n return side && `v-timeline--side-${side}`\n })\n\n const truncateClasses = computed(() => {\n const classes = [\n 'v-timeline--truncate-line-start',\n 'v-timeline--truncate-line-end',\n ]\n\n switch (props.truncateLine) {\n case 'both': return classes\n case 'start': return classes[0]\n case 'end': return classes[1]\n default: return null\n }\n })\n\n useRender(() => (\n \n ))\n\n return {}\n },\n})\n\nexport type VTimeline = InstanceType\n", "// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { IconValue } from '@/composables/icons'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeSizeProps, useSize } from '@/composables/size'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVTimelineDividerProps = propsFactory({\n dotColor: String,\n fillDot: Boolean,\n hideDot: Boolean,\n icon: IconValue,\n iconColor: String,\n lineColor: String,\n\n ...makeComponentProps(),\n ...makeRoundedProps(),\n ...makeSizeProps(),\n ...makeElevationProps(),\n}, 'VTimelineDivider')\n\nexport const VTimelineDivider = genericComponent()({\n name: 'VTimelineDivider',\n\n props: makeVTimelineDividerProps(),\n\n setup (props, { slots }) {\n const { sizeClasses, sizeStyles } = useSize(props, 'v-timeline-divider__dot')\n const { backgroundColorStyles, backgroundColorClasses } = useBackgroundColor(() => props.dotColor)\n const { roundedClasses } = useRounded(props, 'v-timeline-divider__dot')\n const { elevationClasses } = useElevation(props)\n const {\n backgroundColorClasses: lineColorClasses,\n backgroundColorStyles: lineColorStyles,\n } = useBackgroundColor(() => props.lineColor)\n\n useRender(() => (\n \n \n\n { !props.hideDot && (\n \n \n { !slots.default ? (\n \n ) : (\n \n )}\n \n \n )}\n\n \n \n ))\n\n return {}\n },\n})\n\nexport type VTimelineDivider = InstanceType\n", "// Components\nimport { VTimelineDivider } from './VTimelineDivider'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps } from '@/composables/elevation'\nimport { IconValue } from '@/composables/icons'\nimport { makeRoundedProps } from '@/composables/rounded'\nimport { makeSizeProps } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { ref, shallowRef, watch } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { Prop, PropType } from 'vue'\n\n// Types\nexport type TimelineItemSide = 'start' | 'end' | undefined\nexport type VTimelineItemSlots = {\n default: never\n icon: never\n opposite: never\n}\n\nexport const makeVTimelineItemProps = propsFactory({\n density: String as PropType<'default' | 'compact'>,\n dotColor: String,\n fillDot: Boolean,\n hideDot: Boolean,\n hideOpposite: {\n type: Boolean,\n default: undefined,\n },\n icon: IconValue,\n iconColor: String,\n lineInset: [Number, String],\n side: {\n type: String,\n validator: (v: any) => v == null || ['start', 'end'].includes(v),\n } as Prop,\n\n ...makeComponentProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeSizeProps(),\n ...makeTagProps(),\n}, 'VTimelineItem')\n\nexport const VTimelineItem = genericComponent()({\n name: 'VTimelineItem',\n\n props: makeVTimelineItemProps(),\n\n setup (props, { slots }) {\n const { dimensionStyles } = useDimension(props)\n\n const dotSize = shallowRef(0)\n const dotRef = ref()\n watch(dotRef, newValue => {\n if (!newValue) return\n dotSize.value = newValue.$el.querySelector('.v-timeline-divider__dot')?.getBoundingClientRect().width ?? 0\n }, {\n flush: 'post',\n })\n\n useRender(() => (\n \n \n { slots.default?.() }\n \n\n \n\n { props.density !== 'compact' && (\n
\n { !props.hideOpposite && slots.opposite?.() }\n
\n )}\n \n ))\n\n return {}\n },\n})\n\nexport type VTimelineItem = InstanceType\n", "// Styles\nimport './VTimePicker.sass'\n\n// Components\nimport { VTimePickerClock } from './VTimePickerClock'\nimport { VTimePickerControls } from './VTimePickerControls'\nimport { makeVPickerProps, VPicker } from '@/labs/VPicker/VPicker'\n\n// Composables\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, onMounted, ref, toRef, watch } from 'vue'\nimport { convert12to24, convert24to12, pad } from './util'\nimport { createRange, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { Period, VTimePickerViewMode } from './shared'\nimport type { VPickerSlots } from '@/labs/VPicker/VPicker'\n\ntype AllowFunction = (val: number) => boolean\n\nconst rangeHours24 = createRange(24)\nconst rangeHours12am = createRange(12)\nconst rangeHours12pm = rangeHours12am.map(v => v + 12)\nconst range60 = createRange(60)\n\nexport type VTimePickerSlots = Omit\n\ntype Variant = 'dial' | 'input'\n\nexport const makeVTimePickerProps = propsFactory({\n allowedHours: [Function, Array] as PropType,\n allowedMinutes: [Function, Array] as PropType,\n allowedSeconds: [Function, Array] as PropType,\n disabled: Boolean,\n format: {\n type: String as PropType<'ampm' | '24hr'>,\n default: 'ampm',\n },\n max: String,\n min: String,\n viewMode: {\n type: String as PropType,\n default: 'hour',\n },\n period: {\n type: String as PropType,\n default: 'am',\n validator: (v: any) => ['am', 'pm'].includes(v),\n },\n modelValue: null as any as PropType,\n readonly: Boolean,\n scrollable: Boolean,\n useSeconds: Boolean,\n variant: {\n type: String as PropType,\n default: 'dial',\n },\n ...omit(makeVPickerProps({ title: '$vuetify.timePicker.title' }), ['landscape']),\n ...makeDensityProps(),\n}, 'VTimePicker')\n\nexport const VTimePicker = genericComponent()({\n name: 'VTimePicker',\n\n props: makeVTimePickerProps(),\n\n emits: {\n 'update:hour': (val: number) => true,\n 'update:minute': (val: number) => true,\n 'update:period': (val: Period) => true,\n 'update:second': (val: number) => true,\n 'update:modelValue': (val: string | null) => true,\n 'update:viewMode': (val: VTimePickerViewMode) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const { densityClasses } = useDensity(props)\n const inputHour = ref(null as number | null)\n const inputMinute = ref(null as number | null)\n const inputSecond = ref(null as number | null)\n const lazyInputHour = ref(null as number | null)\n const lazyInputMinute = ref(null as number | null)\n const lazyInputSecond = ref(null as number | null)\n const period = useProxiedModel(props, 'period', 'am')\n const viewMode = useProxiedModel(props, 'viewMode', 'hour')\n const controlsRef = ref(null)\n const clockRef = ref(null)\n\n const isAllowedHourCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n if (props.allowedHours instanceof Array) {\n cb = (val: number) => (props.allowedHours as number[]).includes(val)\n } else {\n cb = props.allowedHours as AllowFunction\n }\n\n if (!props.min && !props.max) return cb\n\n const minHour = props.min ? Number(props.min.split(':')[0]) : 0\n const maxHour = props.max ? Number(props.max.split(':')[0]) : 23\n\n return (val: number) => {\n return val >= Number(minHour) &&\n val <= Number(maxHour) &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedMinuteCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n if (props.allowedMinutes instanceof Array) {\n cb = (val: number) => (props.allowedMinutes as number[]).includes(val)\n } else {\n cb = props.allowedMinutes as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isHourAllowed ? cb : () => false\n }\n\n const [minHour, minMinute] = props.min ? props.min.split(':').map(Number) : [0, 0]\n const [maxHour, maxMinute] = props.max ? props.max.split(':').map(Number) : [23, 59]\n const minTime = minHour * 60 + Number(minMinute)\n const maxTime = maxHour * 60 + Number(maxMinute)\n\n return (val: number) => {\n const time = 60 * inputHour.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isHourAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedSecondCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n const isMinuteAllowed = isHourAllowed &&\n (!isAllowedMinuteCb.value ||\n inputMinute.value === null ||\n isAllowedMinuteCb.value(inputMinute.value)\n )\n\n if (props.allowedSeconds instanceof Array) {\n cb = (val: number) => (props.allowedSeconds as number[]).includes(val)\n } else {\n cb = props.allowedSeconds as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isMinuteAllowed ? cb : () => false\n }\n\n const [minHour, minMinute, minSecond] = props.min ? props.min.split(':').map(Number) : [0, 0, 0]\n const [maxHour, maxMinute, maxSecond] = props.max ? props.max.split(':').map(Number) : [23, 59, 59]\n const minTime = minHour * 3600 + minMinute * 60 + Number(minSecond || 0)\n const maxTime = maxHour * 3600 + maxMinute * 60 + Number(maxSecond || 0)\n\n return (val: number) => {\n const time = 3600 * inputHour.value! + 60 * inputMinute.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isMinuteAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAmPm = computed((): boolean => {\n return props.format === 'ampm'\n })\n\n const shouldClear = toRef(() => {\n return props.modelValue !== null &&\n inputHour.value === null &&\n inputMinute.value === null &&\n (!props.useSeconds || inputSecond.value === null)\n })\n\n function emitValue () {\n const value = genValue()\n\n if (value !== null && value !== props.modelValue) {\n emit('update:modelValue', value)\n }\n if (shouldClear.value) {\n emit('update:modelValue', null)\n }\n }\n\n watch(inputHour, emitValue)\n watch(inputMinute, emitValue)\n watch(inputSecond, emitValue)\n\n watch(() => props.period, val => setPeriod(val))\n\n watch(() => props.modelValue, val => setInputData(val))\n\n watch(() => props.useSeconds, (val, old) => {\n if (old && !val && viewMode.value === 'second') {\n viewMode.value = 'minute'\n }\n if (!val && inputSecond.value !== null) {\n inputSecond.value = null\n }\n })\n\n onMounted(() => {\n setInputData(props.modelValue)\n })\n\n function genValue () {\n if (inputHour.value != null && inputMinute.value != null && (!props.useSeconds || inputSecond.value != null)) {\n return `${pad(inputHour.value)}:${pad(inputMinute.value)}` + (props.useSeconds ? `:${pad(inputSecond.value!)}` : '')\n }\n\n return null\n }\n\n function setInputData (value: string | null | Date) {\n if (value == null || value === '') {\n inputHour.value = null\n inputMinute.value = null\n inputSecond.value = null\n } else if (value instanceof Date) {\n inputHour.value = value.getHours()\n inputMinute.value = value.getMinutes()\n inputSecond.value = value.getSeconds()\n } else {\n const [hour, , minute, , second, period] = value.trim().toLowerCase().match(/^(\\d+):(\\d+)(:(\\d+))?([ap]m)?$/) || new Array(6)\n\n inputHour.value = period ? convert12to24(parseInt(hour, 10), period as Period) : parseInt(hour, 10)\n inputMinute.value = parseInt(minute, 10)\n inputSecond.value = parseInt(second || 0, 10)\n }\n\n period.value = (inputHour.value == null || inputHour.value < 12) ? 'am' : 'pm'\n }\n\n function firstAllowed (type: VTimePickerViewMode, value: number) {\n const allowedFn = type === 'hour' ? isAllowedHourCb.value : (type === 'minute' ? isAllowedMinuteCb.value : isAllowedSecondCb.value)\n if (!allowedFn) return value\n\n // TODO: clean up (Note from V2 code)\n const range = type === 'minute'\n ? range60\n : (type === 'second'\n ? range60\n : (isAmPm.value\n ? (value < 12\n ? rangeHours12am\n : rangeHours12pm)\n : rangeHours24))\n const first = range.find(v => allowedFn((v + value) % range.length + range[0]))\n return ((first || 0) + value) % range.length + range[0]\n }\n\n function setPeriod (val: Period) {\n period.value = val\n if (inputHour.value != null) {\n const newHour = inputHour.value! + (period.value === 'am' ? -12 : 12)\n inputHour.value = firstAllowed('hour', newHour)\n }\n emit('update:period', val)\n emitValue()\n return true\n }\n\n function onInput (value: number) {\n if (viewMode.value === 'hour') {\n inputHour.value = isAmPm.value ? convert12to24(value, period.value) : value\n } else if (viewMode.value === 'minute') {\n inputMinute.value = value\n } else {\n inputSecond.value = value\n }\n }\n\n function onChange (value: number) {\n switch (viewMode.value || 'hour') {\n case 'hour':\n emit('update:hour', value)\n break\n case 'minute':\n emit('update:minute', value)\n break\n case 'second':\n emit('update:second', value)\n break\n default:\n break\n }\n\n const emitChange = inputHour.value !== null && inputMinute.value !== null && (props.useSeconds ? inputSecond.value !== null : true)\n if (viewMode.value === 'hour') {\n viewMode.value = 'minute'\n } else if (props.useSeconds && viewMode.value === 'minute') {\n viewMode.value = 'second'\n }\n\n if (inputHour.value === lazyInputHour.value &&\n inputMinute.value === lazyInputMinute.value &&\n (!props.useSeconds || inputSecond.value === lazyInputSecond.value)\n ) return\n\n const time = genValue()\n if (time === null) return\n\n lazyInputHour.value = inputHour.value\n lazyInputMinute.value = inputMinute.value\n props.useSeconds && (lazyInputSecond.value = inputSecond.value)\n\n emitChange && emitValue()\n }\n\n useRender(() => {\n const pickerProps = omit(VPicker.filterProps(props), ['hideHeader'])\n const timePickerControlsProps = VTimePickerControls.filterProps(props)\n const timePickerClockProps = VTimePickerClock.filterProps(omit(props, ['format', 'modelValue', 'min', 'max']))\n\n return (\n slots.title?.() ?? (\n
\n { t(props.title) }\n
\n ),\n header: () => (\n inputHour.value = val }\n onUpdate:minute={ (val: number) => inputMinute.value = val }\n onUpdate:period={ (val: Period) => setPeriod(val) }\n onUpdate:second={ (val: number) => inputSecond.value = val }\n onUpdate:viewMode={ (value: VTimePickerViewMode) => (viewMode.value = value) }\n ref={ controlsRef }\n />\n ),\n default: () => (\n val)\n : (val: number) => pad(val, 2)\n }\n max={ viewMode.value === 'hour' ? (isAmPm.value && period.value === 'am' ? 11 : 23) : 59 }\n min={ viewMode.value === 'hour' && isAmPm.value && period.value === 'pm' ? 12 : 0 }\n size={ 20 }\n step={ viewMode.value === 'hour' ? 1 : 5 }\n modelValue={ viewMode.value === 'hour'\n ? inputHour.value as number\n : (viewMode.value === 'minute'\n ? inputMinute.value as number\n : inputSecond.value as number)\n }\n onChange={ onChange }\n onInput={ onInput }\n ref={ clockRef }\n />\n ),\n actions: slots.actions,\n }}\n />\n )\n })\n },\n})\n\nexport type VTimePicker = InstanceType\n", "// Styles\nimport './VTimePickerClock.sass'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, onScopeDispose, ref, watch } from 'vue'\nimport { debounce, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\ninterface Point {\n x: number\n y: number\n}\n\nexport const makeVTimePickerClockProps = propsFactory({\n allowedValues: Function as PropType<(value: number) => boolean>,\n ampm: Boolean,\n color: String,\n disabled: Boolean,\n displayedValue: null,\n double: Boolean,\n format: {\n type: Function,\n default: (val: string | number) => val,\n },\n max: {\n type: Number,\n required: true,\n },\n min: {\n type: Number,\n required: true,\n },\n scrollable: Boolean,\n readonly: Boolean,\n rotate: {\n type: Number,\n default: 0,\n },\n step: {\n type: Number,\n default: 1,\n },\n modelValue: {\n type: Number,\n },\n}, 'VTimePickerClock')\n\nexport const VTimePickerClock = genericComponent()({\n name: 'VTimePickerClock',\n\n props: makeVTimePickerClockProps(),\n\n emits: {\n change: (val: number) => true,\n input: (val: number) => true,\n },\n\n setup (props, { emit }) {\n const clockRef = ref(null)\n const innerClockRef = ref(null)\n const inputValue = ref(undefined)\n const isDragging = ref(false)\n const valueOnMouseDown = ref(null as number | null)\n const valueOnMouseUp = ref(null as number | null)\n const emitChangeDebounced = debounce((value: number) => emit('change', value), 750)\n\n const { textColorClasses, textColorStyles } = useTextColor(() => props.color)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n\n const count = computed(() => props.max - props.min + 1)\n const roundCount = computed(() => props.double ? (count.value / 2) : count.value)\n const degreesPerUnit = computed(() => 360 / roundCount.value)\n const degrees = computed(() => degreesPerUnit.value * Math.PI / 180)\n const displayedValue = computed(() => props.modelValue == null ? props.min : props.modelValue)\n const innerRadiusScale = computed(() => 0.62)\n\n const genChildren = computed(() => {\n const children = []\n for (let value = props.min; value <= props.max; value = value + props.step) {\n children.push(value)\n }\n return children\n })\n\n watch(() => props.modelValue, val => {\n inputValue.value = val\n })\n\n function update (value: number) {\n if (inputValue.value !== value) {\n inputValue.value = value\n }\n emit('input', value)\n }\n\n function isAllowed (value: number) {\n return !props.allowedValues || props.allowedValues(value)\n }\n\n function wheel (e: WheelEvent) {\n if (!props.scrollable || props.disabled) return\n\n e.preventDefault()\n\n const delta = Math.sign(-e.deltaY || 1)\n let value = displayedValue.value\n do {\n value = value + delta\n value = (value - props.min + count.value) % count.value + props.min\n } while (!isAllowed(value) && value !== displayedValue.value)\n\n if (value !== props.displayedValue) {\n update(value)\n }\n\n emitChangeDebounced(value)\n }\n\n function isInner (value: number) {\n return props.double && (value - props.min >= roundCount.value)\n }\n\n function handScale (value: number) {\n return isInner(value) ? innerRadiusScale.value : 1\n }\n\n function getPosition (value: number) {\n const rotateRadians = props.rotate * Math.PI / 180\n return {\n x: Math.sin((value - props.min) * degrees.value + rotateRadians) * handScale(value),\n y: -Math.cos((value - props.min) * degrees.value + rotateRadians) * handScale(value),\n }\n }\n\n function angleToValue (angle: number, insideClick: boolean): number {\n const value = (\n Math.round(angle / degreesPerUnit.value) +\n (insideClick ? roundCount.value : 0)\n ) % count.value + props.min\n\n // Necessary to fix edge case when selecting left part of the value(s) at 12 o'clock\n if (angle < (360 - degreesPerUnit.value / 2)) return value\n\n return insideClick ? props.max - roundCount.value + 1 : props.min\n }\n\n function getTransform (i: number) {\n const { x, y } = getPosition(i)\n return {\n left: `${Math.round(50 + x * 50)}%`,\n top: `${Math.round(50 + y * 50)}%`,\n }\n }\n\n function euclidean (p0: Point, p1: Point) {\n const dx = p1.x - p0.x\n const dy = p1.y - p0.y\n\n return Math.sqrt(dx * dx + dy * dy)\n }\n\n function angle (center: Point, p1: Point) {\n const value = 2 * Math.atan2(p1.y - center.y - euclidean(center, p1), p1.x - center.x)\n return Math.abs(value * 180 / Math.PI)\n }\n\n function setMouseDownValue (value: number) {\n if (valueOnMouseDown.value === null) {\n valueOnMouseDown.value = value\n }\n\n valueOnMouseUp.value = value\n update(value)\n }\n\n function onDragMove (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n if ((!isDragging.value && e.type !== 'click') || !clockRef.value) return\n const { width, top, left } = clockRef.value?.getBoundingClientRect()\n const { width: innerWidth }: DOMRect = innerClockRef.value?.getBoundingClientRect() ?? { width: 0 } as DOMRect\n const { clientX, clientY } = 'touches' in e ? e.touches[0] : e\n const center = { x: width / 2, y: -width / 2 }\n const coords = { x: clientX - left, y: top - clientY }\n const handAngle = Math.round(angle(center, coords) - props.rotate + 360) % 360\n const insideClick = props.double && euclidean(center, coords) < (innerWidth as number + innerWidth * innerRadiusScale.value) / 4\n const checksCount = Math.ceil(15 / degreesPerUnit.value)\n let value\n\n for (let i = 0; i < checksCount; i++) {\n value = angleToValue(handAngle + i * degreesPerUnit.value, insideClick)\n if (isAllowed(value)) return setMouseDownValue(value)\n\n value = angleToValue(handAngle - i * degreesPerUnit.value, insideClick)\n if (isAllowed(value)) return setMouseDownValue(value)\n }\n }\n\n function onMouseDown (e: MouseEvent | TouchEvent) {\n if (props.disabled) return\n\n e.preventDefault()\n\n window.addEventListener('mousemove', onDragMove)\n window.addEventListener('touchmove', onDragMove)\n window.addEventListener('mouseup', onMouseUp)\n window.addEventListener('touchend', onMouseUp)\n valueOnMouseDown.value = null\n valueOnMouseUp.value = null\n isDragging.value = true\n onDragMove(e)\n }\n\n function onMouseUp (e: MouseEvent | TouchEvent) {\n e.stopPropagation()\n removeListeners()\n\n isDragging.value = false\n if (valueOnMouseUp.value !== null && isAllowed(valueOnMouseUp.value)) {\n emit('change', valueOnMouseUp.value)\n }\n }\n\n function removeListeners () {\n window.removeEventListener('mousemove', onDragMove)\n window.removeEventListener('touchmove', onDragMove)\n window.removeEventListener('mouseup', onMouseUp)\n window.removeEventListener('touchend', onMouseUp)\n }\n\n onScopeDispose(removeListeners)\n\n useRender(() => {\n return (\n \n
\n \n\n {\n genChildren.value.map(value => {\n const isActive = value === displayedValue.value\n\n return (\n \n { props.format(value) }\n
\n )\n })\n }\n \n \n )\n })\n },\n})\n\nexport type VTimePickerClock = InstanceType\n", "// Styles\nimport './VTimePickerControls.sass'\n\n// Components\nimport { VTimePickerField } from './VTimePickerField'\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { ref, watch } from 'vue'\nimport { convert12to24, convert24to12, extractInteger, incrementHour, incrementMinuteOrSecond, pad } from './util'\nimport { clamp, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { Period, VTimePickerViewMode } from './shared'\n\nexport const makeVTimePickerControlsProps = propsFactory({\n ampm: Boolean,\n color: String,\n disabled: Boolean,\n hour: [Number, String] as PropType,\n minute: [Number, String] as PropType,\n second: [Number, String] as PropType,\n period: String as PropType,\n readonly: Boolean,\n useSeconds: Boolean,\n value: Number,\n viewMode: String as PropType,\n}, 'VTimePickerControls')\n\nexport const VTimePickerControls = genericComponent()({\n name: 'VTimePickerControls',\n\n props: makeVTimePickerControlsProps(),\n\n emits: {\n 'update:period': (data: Period) => true,\n 'update:viewMode': (data: VTimePickerViewMode) => true,\n 'update:hour': (v: number) => true,\n 'update:minute': (v: number) => true,\n 'update:second': (v: number) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n\n const transformHours = {\n in: (v?: number | string | null) => {\n if (v == null || isNaN(Number(v))) return null\n const val = Number(v)\n return props.ampm\n ? pad(convert24to12(val))\n : pad(val)\n },\n out: (v: number | string | null) => {\n if (isNaN(Number(v)) || v == null || v === '') return null\n const val = typeof v === 'string' ? extractInteger(v) : Number(v)\n if (val === null) return null\n return props.ampm\n ? convert12to24(val, props.period ?? 'am')\n : clamp(val, 0, 23)\n },\n }\n\n const hour: Ref = useProxiedModel(props, 'hour', undefined, transformHours.in, transformHours.out)\n\n const transformMinutesOrSeconds = {\n in: (v?: number | string | null) => v != null && !isNaN(Number(v)) ? pad(`${v}`) : null,\n out: (v: number | string | null) => {\n if (isNaN(Number(v)) || v == null || v === '') return null\n const val = typeof v === 'string' ? extractInteger(v) : Number(v)\n return val !== null\n ? clamp(val, 0, 59)\n : null\n },\n }\n\n const minute: Ref = useProxiedModel(\n props,\n 'minute',\n undefined,\n transformMinutesOrSeconds.in,\n transformMinutesOrSeconds.out,\n )\n\n const second: Ref = useProxiedModel(\n props,\n 'second',\n undefined,\n transformMinutesOrSeconds.in,\n transformMinutesOrSeconds.out,\n )\n\n function onHourFieldKeydown (e: KeyboardEvent) {\n if (!['ArrowUp', 'ArrowDown'].includes(e.key)) return\n e.preventDefault()\n e.stopPropagation()\n const current = Number(hour.value ?? 0)\n const period = props.ampm ? (props.period ?? 'am') : null\n const { value, togglePeriod } = incrementHour(current, e.key === 'ArrowUp', period)\n hour.value = pad(value)\n if (togglePeriod) {\n emit('update:period', props.period === 'am' ? 'pm' : 'am')\n }\n }\n\n function onMinuteFieldKeydown (e: KeyboardEvent) {\n if (!['ArrowUp', 'ArrowDown'].includes(e.key)) return\n e.preventDefault()\n e.stopPropagation()\n minute.value = incrementMinuteOrSecond(Number(minute.value), e.key === 'ArrowUp')\n }\n\n function onSecondFieldKeydown (e: KeyboardEvent) {\n if (!['ArrowUp', 'ArrowDown'].includes(e.key)) return\n e.preventDefault()\n e.stopPropagation()\n second.value = incrementMinuteOrSecond(Number(second.value), e.key === 'ArrowUp')\n }\n\n function createInputInterceptor (\n valueTransformOut: (v: string) => number | null,\n compare: (v: number | null) => boolean,\n apply: (v: string) => void,\n ) {\n return (e: InputEvent) => {\n if (!e.data) return\n const inputElement = e.target as HTMLInputElement\n const { value: existingTxt, selectionStart, selectionEnd } = inputElement ?? {}\n\n if (extractInteger(e.data) === null) {\n e.preventDefault()\n return\n }\n\n const potentialNewInputVal =\n existingTxt\n ? existingTxt.slice(0, selectionStart as number | undefined) + e.data + existingTxt.slice(selectionEnd as number | undefined)\n : e.data\n\n if (potentialNewInputVal.length > 2) {\n if (selectionStart === selectionEnd && selectionEnd === 0 && e.data.trim().startsWith('0')) {\n e.preventDefault()\n inputElement!.value = potentialNewInputVal.trim().substring(0, 2)\n apply(inputElement!.value)\n if (e.data.trim().length === 1) {\n inputElement!.setSelectionRange(1, 1)\n }\n return\n }\n if (selectionStart === selectionEnd && selectionEnd === 1 && existingTxt.startsWith('0')) {\n e.preventDefault()\n inputElement!.value = potentialNewInputVal.trim().substring(0, 2)\n apply(inputElement!.value)\n return\n }\n\n const maxValue = props.viewMode === 'hour' ? (props.ampm ? 12 : 23) : 59\n const value = extractInteger(potentialNewInputVal)!\n if (value > maxValue) {\n e.preventDefault()\n inputElement!.value = pad(String(extractInteger(e.data)).substring(0, 2))\n apply(inputElement!.value)\n return\n }\n }\n\n const potentialNewNumber = valueTransformOut(potentialNewInputVal)\n if (compare(potentialNewNumber)) {\n // ignore input when results in the same number\n // prevents typing more digits\n e.preventDefault()\n }\n }\n }\n\n const hourInputRef = ref()\n const minuteInputRef = ref()\n const secondInputRef = ref()\n\n watch(() => props.viewMode, (_, old) => {\n switch (old) {\n case 'hour': hourInputRef.value!.blur(); break\n case 'minute': minuteInputRef.value!.blur(); break\n case 'second': secondInputRef.value!.blur(); break\n }\n })\n\n const hourInputFilter = createInputInterceptor(\n transformHours.out,\n (v: number | null) => transformHours.in(v) === hour.value,\n (v: string) => hour.value = v,\n )\n\n const minuteInputFilter = createInputInterceptor(\n transformMinutesOrSeconds.out,\n (v: number | null) => transformMinutesOrSeconds.in(v) === minute.value,\n (v: string) => minute.value = v,\n )\n\n const secondInputFilter = createInputInterceptor(\n transformMinutesOrSeconds.out,\n (v: number | null) => transformMinutesOrSeconds.in(v) === second.value,\n (v: string) => second.value = v,\n )\n\n useRender(() => {\n return (\n
\n \n hour.value = v }\n onKeydown={ onHourFieldKeydown }\n onBeforeinput={ hourInputFilter }\n onFocus={ () => emit('update:viewMode', 'hour') }\n />\n\n :\n\n minute.value = v }\n onKeydown={ onMinuteFieldKeydown }\n onBeforeinput={ minuteInputFilter }\n onFocus={ () => emit('update:viewMode', 'minute') }\n />\n\n { props.useSeconds && (\n :\n )}\n\n { props.useSeconds && (\n second.value = v }\n onKeydown={ onSecondFieldKeydown }\n onBeforeinput={ secondInputFilter }\n onFocus={ () => emit('update:viewMode', 'second') }\n />\n )}\n\n { props.ampm && (\n
\n props.period !== 'am' ? emit('update:period', 'am') : null }\n />\n\n props.period !== 'pm' ? emit('update:period', 'pm') : null }\n />\n
\n )}\n
\n \n )\n })\n\n return {}\n },\n})\n\nexport type VTimePickerControls = InstanceType\n", "// Components\nimport { VTextField } from '@/components/VTextField'\n\n// Composables\nimport { useTextColor } from '@/composables/color'\nimport { forwardRefs } from '@/composables/forwardRefs'\n\n// Utilities\nimport { ref, shallowRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const makeVTimePickerFieldProps = propsFactory({\n active: Boolean,\n color: String,\n disabled: Boolean,\n label: String,\n modelValue: String as PropType,\n readonly: Boolean,\n}, 'VTimePickerField')\n\nexport const VTimePickerField = genericComponent()({\n name: 'VTimePickerField',\n\n inheritAttrs: false,\n\n props: makeVTimePickerFieldProps(),\n\n emits: {\n 'update:modelValue': (v: string | null) => true,\n },\n\n setup (props, { emit, attrs }) {\n const { textColorClasses, textColorStyles } = useTextColor(() => props.color)\n\n const vTextInputRef = ref()\n const isFocused = shallowRef(false)\n\n function onKeydown (e: KeyboardEvent) {\n if (['Backspace', 'Delete'].includes(e.key)) {\n e.preventDefault()\n\n const target = e.target as HTMLInputElement\n target.value = ''\n emit('update:modelValue', null)\n }\n }\n\n useRender(() => {\n return (\n
\n emit('update:modelValue', v) }\n onKeydown={ onKeydown }\n onFocus={ () => isFocused.value = true }\n onBlur={ () => isFocused.value = false }\n { ...attrs }\n />\n
{ props.label }
\n
\n )\n })\n\n return forwardRefs({}, vTextInputRef)\n },\n})\n\nexport type VTimePickerField = InstanceType\n", "// Types\nimport type { Period } from './shared'\n\nexport function pad (n: string | number, length = 2) {\n return String(n).padStart(length, '0')\n}\n\nexport function convert24to12 (hour: number) {\n return hour ? ((hour - 1) % 12 + 1) : 12\n}\n\nexport function convert12to24 (hour: number, period: Period) {\n return hour % 12 + (period === 'pm' ? 12 : 0)\n}\n\nexport function extractInteger (v: string): number | null {\n const digits = v.replaceAll(/\\D/g, '')\n return digits.length > 0\n ? Number(digits)\n : null\n}\n\nexport function incrementHour (hour: number, increment: boolean, period: Period | null) {\n if (period) {\n if (hour === 12 && increment) { return { value: 1 } }\n if (hour === 11 && increment) { return { value: 12, togglePeriod: true } }\n if (hour === 12 && !increment) { return { value: 11, togglePeriod: true } }\n if (hour === 1 && !increment) { return { value: 12 } }\n } else {\n if (hour === 23 && increment) { return { value: 0 } }\n if (hour === 0 && !increment) { return { value: 23 } }\n }\n return { value: hour + (increment ? 1 : -1) }\n}\n\nexport function incrementMinuteOrSecond (val: number, increment: boolean) {\n if (val === 59 && increment) return 0\n if (val === 0 && !increment) return 59\n return val + (increment ? 1 : -1)\n}\n", "// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { makeVListGroupProps, VListGroup } from '@/components/VList/VListGroup'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VListGroupSlots } from '@/components/VList/VListGroup'\n\nexport const makeVTreeviewGroupProps = propsFactory({\n ...omit(makeVListGroupProps({\n collapseIcon: '$treeviewCollapse',\n expandIcon: '$treeviewExpand',\n }), ['subgroup']),\n}, 'VTreeviewGroup')\n\nexport const VTreeviewGroup = genericComponent()({\n name: 'VTreeviewGroup',\n\n props: makeVTreeviewGroupProps(),\n\n setup (props, { slots }) {\n const vListGroupRef = ref()\n const toggleIcon = computed(() => vListGroupRef.value?.isOpen ? props.collapseIcon : props.expandIcon)\n\n const activatorDefaults = computed(() => ({\n VTreeviewItem: {\n prependIcon: undefined,\n appendIcon: undefined,\n toggleIcon: toggleIcon.value,\n },\n }))\n\n useRender(() => {\n const listGroupProps = VListGroup.filterProps(props)\n\n return (\n \n {{\n ...slots,\n activator: slots.activator ? slotProps => (\n <>\n \n { slots.activator?.(slotProps) }\n \n \n ) : undefined,\n }}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VTreeviewGroup = InstanceType\n", "// Styles\nimport './VTreeviewItem.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\nimport { VListItemAction } from '@/components/VList'\nimport { makeVListItemProps, VListItem } from '@/components/VList/VListItem'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, inject, ref, toRaw } from 'vue'\nimport { VTreeviewSymbol } from './shared'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { ToggleListItemSlot } from './shared'\nimport type { VListItemSlots } from '@/components/VList/VListItem'\nimport type { IndentLineType } from '@/util'\n\nexport const makeVTreeviewItemProps = propsFactory({\n loading: Boolean,\n hideActions: Boolean,\n hasCustomPrepend: Boolean,\n indentLines: Array as PropType,\n toggleIcon: IconValue,\n\n ...makeVListItemProps({ slim: true }),\n}, 'VTreeviewItem')\n\nexport type VTreeviewItemSlots = VListItemSlots & {\n toggle: ToggleListItemSlot & { loading: boolean }\n}\n\nexport const VTreeviewItem = genericComponent()({\n name: 'VTreeviewItem',\n\n props: makeVTreeviewItemProps(),\n\n emits: {\n toggleExpand: (value: PointerEvent) => true,\n },\n\n setup (props, { slots, emit }) {\n const visibleIds = inject(VTreeviewSymbol, { visibleIds: ref() }).visibleIds\n\n const vListItemRef = ref()\n\n const isActivatableGroupActivator = computed(() =>\n (vListItemRef.value?.root.activatable.value) &&\n vListItemRef.value?.isGroupActivator\n )\n const vListItemRefIsClickable = computed(() => (\n vListItemRef.value?.link.isClickable.value ||\n (props.value != null && !!vListItemRef.value?.list)\n ))\n const isClickable = computed(() =>\n !props.disabled &&\n props.link !== false &&\n (props.link || vListItemRefIsClickable.value || isActivatableGroupActivator.value)\n )\n const isFiltered = computed(() => visibleIds.value && !visibleIds.value.has(toRaw(vListItemRef.value?.id)))\n\n function activateGroupActivator (e: MouseEvent | KeyboardEvent) {\n if (isClickable.value && isActivatableGroupActivator.value) {\n vListItemRef.value?.activate(!vListItemRef.value?.isActivated, e)\n }\n }\n\n function onClickAction (e: PointerEvent) {\n e.preventDefault()\n e.stopPropagation()\n emit('toggleExpand', e)\n }\n\n useRender(() => {\n const listItemProps = VListItem.filterProps(props)\n const hasPrepend = slots.prepend ||\n props.toggleIcon ||\n props.indentLines ||\n props.prependIcon ||\n props.prependAvatar\n\n return (\n \n {{\n ...slots,\n prepend: hasPrepend ? slotProps => {\n return (\n <>\n { props.indentLines && props.indentLines.length > 0 ? (\n \n { props.indentLines.map(type => (\n
\n ))}\n
\n ) : '' }\n { !props.hideActions && (\n \n { props.toggleIcon ? (\n <>\n { !slots.toggle ? (\n \n {{\n loader: () => (\n \n ),\n }}\n
\n ) : (\n \n { slots.toggle({\n ...slotProps,\n loading: props.loading,\n props: {\n onClick: onClickAction,\n },\n })}\n \n )}\n \n ) : (\n
\n )}\n \n )}\n\n { !props.hasCustomPrepend ? (\n <>\n { slots.prepend?.(slotProps) }\n { props.prependAvatar && (\n \n )}\n\n { props.prependIcon && (\n \n )}\n \n ) : (\n \n { slots.prepend?.(slotProps) }\n \n )}\n \n )\n } : undefined,\n }}\n \n )\n })\n\n return forwardRefs({}, vListItemRef)\n },\n})\n\nexport type VTreeviewItem = InstanceType\n", "// Types\nimport type { ComputedRef, InjectionKey } from 'vue'\nimport type { ListItemSlot } from '@/components/VList/VListItem'\n\nexport interface TreeViewProvide {\n visibleIds: ComputedRef | null>\n}\n\nexport type ToggleListItemSlot = ListItemSlot & {\n props: { onClick: (e: PointerEvent) => void }\n}\n\nexport const VTreeviewSymbol: InjectionKey = Symbol.for('vuetify:v-treeview')\n", "// Components\nimport { VTreeviewGroup } from './VTreeviewGroup'\nimport { makeVTreeviewItemProps, VTreeviewItem } from './VTreeviewItem'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VDivider } from '@/components/VDivider'\nimport { VListItemAction, VListSubheader } from '@/components/VList'\n\n// Composables\nimport { makeDensityProps } from '@/composables/density'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, reactive, ref, toRaw } from 'vue'\nimport { genericComponent, getIndentLines, pick, propsFactory, renderSlot } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VTreeviewItemSlots } from './VTreeviewItem'\nimport type { InternalListItem } from '@/components/VList/VList'\nimport type { SelectStrategyProp } from '@/composables/nested/nested'\nimport type { GenericProps, IndentLinesVariant, IndentLineType } from '@/util'\n\nexport type VTreeviewChildrenSlots = {\n [K in keyof Omit]: VTreeviewItemSlots[K] & {\n item: T\n internalItem: InternalListItem\n }\n} & {\n default: never\n item: {\n props: InternalListItem['props']\n item: T\n internalItem: InternalListItem\n }\n header: {\n props: InternalListItem['props']\n item: T\n internalItem: InternalListItem\n loading: boolean\n }\n footer: {\n props: { indentLines?: IndentLineType[] }\n item: T\n internalItem: InternalListItem\n loading: boolean\n }\n divider: { props: InternalListItem['props'] }\n subheader: { props: InternalListItem['props'] }\n}\n\nexport const makeVTreeviewChildrenProps = propsFactory({\n fluid: Boolean,\n disabled: Boolean,\n loadChildren: Function as PropType<(item: unknown) => Promise>,\n loadingIcon: {\n type: String,\n default: '$loading',\n },\n items: Array as PropType,\n openOnClick: {\n type: Boolean,\n default: undefined,\n },\n indeterminateIcon: {\n type: IconValue,\n default: '$checkboxIndeterminate',\n },\n falseIcon: IconValue,\n trueIcon: IconValue,\n returnObject: Boolean,\n activatable: Boolean,\n selectable: Boolean,\n selectedColor: String,\n selectStrategy: [String, Function, Object] as PropType,\n index: Number,\n isLastGroup: Boolean,\n separateRoots: Boolean,\n parentIndentLines: Array as PropType,\n indentLinesVariant: String as PropType,\n path: {\n type: Array as PropType,\n default: () => [],\n },\n ...pick(makeVTreeviewItemProps(), ['hideActions']),\n ...makeDensityProps(),\n}, 'VTreeviewChildren')\n\nexport const VTreeviewChildren = genericComponent(\n props: {\n items?: readonly T[]\n },\n slots: VTreeviewChildrenSlots\n) => GenericProps>()({\n name: 'VTreeviewChildren',\n\n props: makeVTreeviewChildrenProps(),\n\n setup (props, { slots }) {\n const isLoading = reactive(new Set())\n const activatorItems = ref([])\n\n const isClickOnOpen = computed(() => (\n !props.disabled && (\n props.openOnClick != null\n ? props.openOnClick\n : props.selectable && !props.activatable\n )))\n\n async function checkChildren (item: InternalListItem) {\n try {\n if (!props.items?.length || !props.loadChildren) return\n\n if (item?.children?.length === 0) {\n isLoading.add(item.value)\n await props.loadChildren(item.raw)\n }\n } finally {\n isLoading.delete(item.value)\n }\n }\n\n function selectItem (select: (value: boolean) => void, isSelected: boolean) {\n if (props.selectable) {\n select(isSelected)\n }\n }\n\n return () => slots.default?.() ?? props.items?.map((item, index, items) => {\n const { children, props: itemProps } = item\n const loading = isLoading.has(item.value)\n const nextItemHasChildren = !!items.at(index + 1)?.children\n\n const depth = props.path?.length ?? 0\n const isLast = items.length - 1 === index\n const treeItemProps = {\n index,\n depth,\n isFirst: index === 0,\n isLast,\n path: [...props.path, index],\n hideAction: props.hideActions,\n }\n\n const indentLines = getIndentLines({\n depth,\n isLast,\n isLastGroup: props.isLastGroup,\n leafLinks: !props.hideActions && !props.fluid,\n separateRoots: props.separateRoots,\n parentIndentLines: props.parentIndentLines,\n variant: props.indentLinesVariant,\n })\n\n const slotsWithItem = {\n toggle: slots.toggle\n ? slotProps => slots.toggle?.({ ...slotProps, ...treeItemProps, item: item.raw, internalItem: item, loading })\n : undefined,\n prepend: slotProps => (\n <>\n { props.selectable && (!children || (children && !['leaf', 'single-leaf'].includes(props.selectStrategy as string))) && (\n \n selectItem(slotProps.select, v) }\n onClick={ (e: PointerEvent) => e.stopPropagation() }\n onKeydown={ (e: KeyboardEvent) => {\n if (!['Enter', 'Space'].includes(e.key)) return\n e.stopPropagation()\n selectItem(slotProps.select, slotProps.isSelected)\n }}\n />\n \n )}\n\n { slots.prepend?.({ ...slotProps, ...treeItemProps, item: item.raw, internalItem: item }) }\n \n ),\n append: slots.append\n ? slotProps => slots.append?.({ ...slotProps, ...treeItemProps, item: item.raw, internalItem: item })\n : undefined,\n title: slots.title ? slotProps => slots.title?.({ ...slotProps, item: item.raw, internalItem: item }) : undefined,\n subtitle: slots.subtitle ? slotProps => slots.subtitle?.({ ...slotProps, item: item.raw, internalItem: item }) : undefined,\n } satisfies VTreeviewItem['$props']['$children']\n\n const treeviewGroupProps = VTreeviewGroup.filterProps(itemProps)\n const treeviewChildrenProps = VTreeviewChildren.filterProps({ ...props, ...treeItemProps })\n\n const footerProps = {\n hideActions: props.hideActions,\n indentLines: indentLines.footer,\n }\n\n return children ? (\n \n {{\n activator: ({ props: activatorProps }) => {\n const listItemProps = {\n ...itemProps,\n ...activatorProps,\n value: itemProps?.value,\n hideActions: props.hideActions,\n indentLines: indentLines.node,\n onToggleExpand: [() => checkChildren(item), activatorProps.onClick] as any,\n onClick: props.disabled || itemProps.disabled\n ? undefined\n : isClickOnOpen.value\n ? [() => checkChildren(item), activatorProps.onClick] as any\n : () => selectItem(activatorItems.value[index]?.select, !activatorItems.value[index]?.isSelected),\n }\n\n return renderSlot(\n slots.header,\n { props: listItemProps, item: item.raw, internalItem: item, loading },\n () => (\n activatorItems.value[index] = el as VTreeviewItem }\n { ...listItemProps }\n hasCustomPrepend={ !!slots.prepend }\n value={ props.returnObject ? item.raw : itemProps.value }\n loading={ loading }\n v-slots={ slotsWithItem }\n />\n )\n )\n },\n default: () => (\n <>\n \n { slots.footer?.({ props: footerProps, item: item.raw, internalItem: item, loading }) }\n \n ),\n }}\n \n ) : renderSlot(\n slots.item,\n { props: itemProps, item: item.raw, internalItem: item },\n () => {\n if (item.type === 'divider') {\n return renderSlot(\n slots.divider,\n { props: item.raw },\n () => ,\n )\n }\n if (item.type === 'subheader') {\n return renderSlot(\n slots.subheader,\n { props: item.raw },\n () => ,\n )\n }\n return (\n \n )\n })\n })\n },\n})\n", "// Components\nimport { makeVTreeviewChildrenProps, VTreeviewChildren } from './VTreeviewChildren'\nimport { makeVListProps, useListItems, VList } from '@/components/VList/VList'\nimport { VListItem } from '@/components/VList/VListItem'\n\n// Composables\nimport { useLocale } from '@/composables'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, provide, ref, toRaw, toRef } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport { VTreeviewSymbol } from './shared'\nimport type { VTreeviewChildrenSlots } from './VTreeviewChildren'\nimport type { InternalListItem } from '@/components/VList/VList'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, IndentLinesVariant } from '@/util'\n\nfunction flatten (items: ListItem[], flat: ListItem[] = []) {\n for (const item of items) {\n flat.push(item)\n if (item.children) flatten(item.children, flat)\n }\n return flat\n}\n\nexport const makeVTreeviewProps = propsFactory({\n openAll: Boolean,\n indentLines: [Boolean, String] as PropType,\n search: String,\n hideNoData: Boolean,\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...omit(makeVTreeviewChildrenProps(), [\n 'index',\n 'path',\n 'indentLinesVariant',\n 'parentIndentLines',\n 'isLastGroup',\n ]),\n ...omit(makeVListProps({\n collapseIcon: '$treeviewCollapse',\n expandIcon: '$treeviewExpand',\n slim: true,\n }), ['nav', 'openStrategy']),\n\n modelValue: Array,\n}, 'VTreeview')\n\nexport const VTreeview = genericComponent(\n props: {\n items?: T[]\n opened?: O\n activated?: A\n selected?: S\n modelValue?: M\n 'onUpdate:opened'?: (value: O) => void\n 'onUpdate:activated'?: (value: A) => void\n 'onUpdate:selected'?: (value: S) => void\n 'onUpdate:modelValue'?: (value: M) => void\n },\n slots: VTreeviewChildrenSlots & {\n 'no-data': never\n }\n) => GenericProps>()({\n name: 'VTreeview',\n\n props: makeVTreeviewProps(),\n\n emits: {\n 'update:opened': (val: unknown) => true,\n 'update:activated': (val: unknown) => true,\n 'update:selected': (val: unknown) => true,\n 'update:modelValue': (val: unknown) => true,\n 'click:open': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n 'click:select': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n },\n\n setup (props, { slots, emit }) {\n const { t } = useLocale()\n const { items } = useListItems(props)\n const activeColor = toRef(() => props.activeColor)\n const baseColor = toRef(() => props.baseColor)\n const color = toRef(() => props.color)\n const activated = useProxiedModel(props, 'activated')\n const _selected = useProxiedModel(props, 'selected')\n\n const selected = computed({\n get: () => props.modelValue ?? _selected.value,\n set (val) {\n _selected.value = val\n emit('update:modelValue', val)\n },\n })\n\n const vListRef = ref()\n\n const opened = computed(() => props.openAll ? openAll(items.value) : props.opened)\n const flatItems = computed(() => flatten(items.value))\n const search = toRef(() => props.search)\n const { filteredItems } = useFilter(props, flatItems, search)\n const visibleIds = computed(() => {\n if (!search.value) return null\n const getPath = vListRef.value?.getPath\n if (!getPath) return null\n return new Set(filteredItems.value.flatMap(item => {\n const itemVal = props.returnObject ? item.raw : item.props.value\n return [\n ...getPath(itemVal),\n ...getChildren(itemVal),\n ].map(toRaw)\n }))\n })\n\n function getChildren (id: unknown) {\n const arr: unknown[] = []\n const queue = ((vListRef.value?.children.get(id) ?? []).slice())\n while (queue.length) {\n const child = queue.shift()\n if (!child) continue\n arr.push(child)\n queue.push(...((vListRef.value?.children.get(child) ?? []).slice()))\n }\n return arr\n }\n\n function openAll (items: InternalListItem[]) {\n let ids: any[] = []\n\n for (const i of items) {\n if (!i.children) continue\n\n ids.push(props.returnObject ? toRaw(i.raw) : i.value)\n\n if (i.children) {\n ids = ids.concat(openAll(i.children))\n }\n }\n\n return ids\n }\n\n provide(VTreeviewSymbol, { visibleIds })\n\n provideDefaults({\n VTreeviewGroup: {\n activeColor,\n baseColor,\n color,\n collapseIcon: toRef(() => props.collapseIcon),\n expandIcon: toRef(() => props.expandIcon),\n },\n VTreeviewItem: {\n activeClass: toRef(() => props.activeClass),\n activeColor,\n baseColor,\n color,\n density: toRef(() => props.density),\n disabled: toRef(() => props.disabled),\n lines: toRef(() => props.lines),\n variant: toRef(() => props.variant),\n },\n })\n\n useRender(() => {\n const listProps = VList.filterProps(props)\n const treeviewChildrenProps = VTreeviewChildren.filterProps(props)\n const indentLinesVariant = typeof props.indentLines === 'boolean' ? 'default' : props.indentLines\n\n return (\n \n { visibleIds.value?.size === 0 && !props.hideNoData && (\n slots['no-data']?.() ?? ()\n )}\n \n \n )\n })\n\n return { }\n },\n})\n\nexport type VTreeview = InstanceType\n", "// Composables\nimport { makeValidationProps, useValidation } from '@/composables/validation'\n\n// Utilities\nimport { genericComponent } from '@/util'\n\n// Types\nimport type { GenericProps } from '@/util'\n\nexport type VValidationSlots = {\n default: ReturnType\n}\n\nexport const VValidation = genericComponent(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VValidationSlots,\n) => GenericProps>()({\n name: 'VValidation',\n\n props: makeValidationProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const validation = useValidation(props, 'validation')\n\n return () => slots.default?.(validation)\n },\n})\n\nexport type VValidation = InstanceType\n"], - "mappings": "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", - "names": ["makeVAutocompleteProps", "propsFactory", "autoSelectFirst", "type", "Boolean", "String", "clearOnSelect", "search", "makeFilterProps", "filterKeys", "makeSelectProps", "omit", "makeVTextFieldProps", "modelValue", "role", "VAutocomplete", "genericComponent", "name", "props", "emits", "focused", "value", "setup", "_ref", "slots", "t", "useLocale", "vTextFieldRef", "ref", "isFocused", "shallowRef", "isPristine", "listHasFocus", "vMenuRef", "vVirtualScrollRef", "selectionIndex", "_searchLock", "items", "transformIn", "transformOut", "useItems", "textColorClasses", "textColorStyles", "useTextColor", "color", "InputIcon", "useInputIcon", "useProxiedModel", "model", "v", "wrapInArray", "transformed", "multiple", "counterValue", "computed", "length", "form", "useForm", "filteredItems", "getMatches", "useFilter", "displayItems", "hideSelected", "filter", "filteredItem", "some", "s", "closableChips", "toRef", "isReadonly", "isDisabled", "hasChips", "chips", "chip", "hasSelectionSlot", "selection", "selectedValues", "map", "firstSelectableItem", "find", "x", "disabled", "highlightFirst", "selectFirst", "title", "menuDisabled", "hideNoData", "_menu", "menu", "get", "set", "ΨopenChildren", "size", "menuId", "ariaExpanded", "ariaControls", "useMenuActivator", "listRef", "listEvents", "useScrolling", "onClear", "e", "openOnClear", "onMousedownControl", "onMousedownMenuIcon", "preventDefault", "stopPropagation", "onListKeydown", "checkPrintable", "key", "focus", "onKeydown", "selectionStart", "includes", "_ref2", "select", "originalSelectionIndex", "prev", "searchLength", "setSelectionRange", "next", "onChange", "matchesSelector", "item", "target", "onAfterEnter", "eager", "calculateVisibleItems", "onAfterLeave", "onFocusin", "setTimeout", "onFocusout", "onUpdateModelValue", "isSelecting", "arguments", "undefined", "index", "findIndex", "valueComparator", "deepEqual", "add", "splice", "nextTick", "watch", "val", "oldVal", "at", "IN_BROWSER", "window", "requestAnimationFrame", "scrollToIndex", "newVal", "useRender", "hasList", "isDirty", "textFieldProps", "VTextField", "filterProps", "_createVNode", "_mergeProps", "$event", "externalValue", "class", "style", "placeholder", "default", "_ref3", "id", "_createElementVNode", "_Fragment", "VMenu", "menuProps", "VList", "itemColor", "listProps", "VListItem", "noDataText", "VVirtualScroll", "_ref4", "itemRef", "itemProps", "mergeProps", "active", "onClick", "divider", "raw", "VDivider", "subheader", "VListSubheader", "prepend", "_ref5", "isSelected", "VCheckboxBtn", "event", "prependAvatar", "VAvatar", "prependIcon", "VIcon", "highlightResult", "onChipClose", "slotProps", "VChip", "onMousedown", "hasSlot", "slotContent", "ensureValidVNode", "_normalizeClass", "_normalizeStyle", "VDefaultsProvider", "closable", "text", "_createTextVNode", "_len", "args", "Array", "_key", "menuIcon", "fieldIconColor", "noop", "appendInnerIcon", "iconColor", "forwardRefs", "makeVBadgeProps", "propsFactory", "bordered", "Boolean", "color", "String", "content", "Number", "dot", "floating", "icon", "IconValue", "inline", "label", "type", "default", "max", "modelValue", "offsetX", "offsetY", "textColor", "makeComponentProps", "makeLocationProps", "location", "makeRoundedProps", "makeTagProps", "makeThemeProps", "makeTransitionProps", "transition", "makeDimensionProps", "VBadge", "genericComponent", "name", "inheritAttrs", "props", "setup", "ctx", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "roundedClasses", "useRounded", "t", "useLocale", "textColorClasses", "textColorStyles", "useTextColor", "themeClasses", "useTheme", "locationStyles", "useLocation", "side", "base", "includes", "dimensionStyles", "useDimension", "useRender", "value", "isNaN", "badgeAttrs", "attrs", "pickWithRest", "_createVNode", "tag", "_mergeProps", "class", "style", "_createElementVNode", "slots", "MaybeTransition", "_withDirectives", "undefined", "badge", "VIcon", "_vShow", "makeVBannerActionsProps", "propsFactory", "color", "String", "density", "makeComponentProps", "VBannerActions", "genericComponent", "name", "props", "setup", "_ref", "slots", "provideDefaults", "VBtn", "slim", "variant", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "default", "VBannerText", "createSimpleFunctional", "makeVBannerProps", "propsFactory", "avatar", "String", "bgColor", "color", "icon", "IconValue", "lines", "stacked", "Boolean", "sticky", "text", "makeBorderProps", "makeComponentProps", "makeDensityProps", "makeDimensionProps", "makeDisplayProps", "mobile", "makeElevationProps", "makeLocationProps", "makePositionProps", "makeRoundedProps", "makeTagProps", "makeThemeProps", "VBanner", "genericComponent", "name", "props", "setup", "_ref", "slots", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "borderClasses", "useBorder", "densityClasses", "useDensity", "displayClasses", "useDisplay", "dimensionStyles", "useDimension", "elevationClasses", "useElevation", "locationStyles", "useLocation", "positionClasses", "usePosition", "roundedClasses", "useRounded", "themeClasses", "provideTheme", "toRef", "density", "provideDefaults", "VBannerActions", "useRender", "hasText", "hasPrependMedia", "hasPrepend", "prepend", "_createVNode", "tag", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "default", "_createElementVNode", "VAvatar", "VDefaultsProvider", "image", "VBannerText", "actions", "makeVBottomNavigationProps", "propsFactory", "baseColor", "String", "bgColor", "color", "grow", "Boolean", "mode", "type", "validator", "v", "includes", "height", "Number", "default", "active", "makeBorderProps", "makeComponentProps", "makeDensityProps", "makeElevationProps", "makeRoundedProps", "makeLayoutItemProps", "name", "makeTagProps", "tag", "makeGroupProps", "selectedClass", "makeThemeProps", "VBottomNavigation", "genericComponent", "props", "emits", "value", "setup", "_ref", "slots", "themeClasses", "useTheme", "borderClasses", "useBorder", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "densityClasses", "useDensity", "elevationClasses", "useElevation", "roundedClasses", "useRounded", "ssrBootStyles", "useSsrBoot", "computed", "density", "isActive", "useProxiedModel", "layoutItemStyles", "useLayoutItem", "id", "order", "parseInt", "position", "toRef", "layoutSize", "elementSize", "absolute", "useGroup", "VBtnToggleSymbol", "provideDefaults", "VBtn", "stacked", "variant", "scoped", "useRender", "_createVNode", "_normalizeClass", "class", "_normalizeStyle", "convertToUnit", "style", "_createElementVNode", "makeVBottomSheetProps", "propsFactory", "inset", "Boolean", "makeVDialogProps", "transition", "VBottomSheet", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "isActive", "useProxiedModel", "useRender", "dialogProps", "VDialog", "filterProps", "_createVNode", "_mergeProps", "contentClass", "$event", "class", "style", "makeVIconBtnProps", "propsFactory", "active", "type", "Boolean", "default", "undefined", "activeColor", "String", "activeIcon", "Function", "Object", "activeVariant", "baseVariant", "disabled", "height", "Number", "width", "hideOverlay", "icon", "iconColor", "loading", "opacity", "readonly", "rotate", "size", "sizes", "Array", "text", "makeBorderProps", "makeComponentProps", "makeElevationProps", "makeIconSizeProps", "makeRoundedProps", "makeTagProps", "tag", "makeThemeProps", "makeVariantProps", "variant", "VIconBtn", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "attrs", "slots", "isActive", "useProxiedModel", "themeClasses", "provideTheme", "borderClasses", "useBorder", "elevationClasses", "useElevation", "roundedClasses", "useRounded", "colorClasses", "colorStyles", "variantClasses", "useVariant", "color", "btnSizeMap", "Map", "onClick", "href", "useRender", "_btnSize", "hasNamedSize", "has", "btnSize", "get", "btnHeight", "btnWidth", "iconSize", "useIconSizes", "iconSizes", "iconProps", "_createVNode", "_normalizeClass", "class", "_normalizeStyle", "convertToUnit", "style", "genOverlays", "_createElementVNode", "VIcon", "_mergeProps", "VDefaultsProvider", "toDisplayString", "loader", "VProgressCircular", "isLeapYear", "year", "PARSE_REGEX", "PARSE_TIME", "DAYS_IN_MONTH", "DAYS_IN_MONTH_LEAP", "DAYS_IN_MONTH_MIN", "DAYS_IN_MONTH_MAX", "MONTH_MAX", "MONTH_MIN", "DAY_MIN", "DAYS_IN_WEEK", "MINUTES_IN_HOUR", "MINUTE_MAX", "MINUTES_IN_DAY", "HOURS_IN_DAY", "HOUR_MAX", "FIRST_HOUR", "OFFSET_YEAR", "OFFSET_MONTH", "OFFSET_HOUR", "OFFSET_TIME", "getStartOfWeek", "timestamp", "weekdays", "today", "start", "copyTimestamp", "findWeekday", "prevDay", "updateFormatted", "updateRelative", "hasTime", "getEndOfWeek", "end", "length", "getStartOfMonth", "day", "updateWeekday", "getEndOfMonth", "daysInMonth", "year", "month", "validateNumber", "input", "isFinite", "parseInt", "validateTime", "exec", "hour", "minute", "parseTime", "parts", "validateTimestamp", "Date", "parseTimestamp", "required", "arguments", "undefined", "now", "date", "parseDate", "Error", "time", "weekday", "hasDay", "past", "present", "future", "getFullYear", "getMonth", "getDate", "getDay", "getHours", "getMinutes", "getDayIdentifier", "getTimeIdentifier", "getTimestampIdentifier", "a", "b", "isTimedless", "updateHasTime", "getTime", "updateMinutes", "minutes", "nextMinutes", "getWeekday", "_", "Math", "floor", "k", "m", "C", "Y", "isLeapYear", "padNumber", "x", "padded", "String", "str", "nextDay", "relativeDays", "mover", "days", "diffMinutes", "min", "max", "M", "D", "h", "maxDays", "getWeekdaySkips", "skips", "filled", "i", "skip", "j", "next", "timestampToDate", "createDayList", "weekdaySkips", "stop", "current", "currentIdentifier", "stopped", "push", "createIntervalList", "first", "count", "intervals", "mins", "int", "createNativeLocaleFormatter", "locale", "getOptions", "emptyFormatter", "_t", "_s", "Intl", "DateTimeFormat", "short", "intlFormatter", "format", "e", "validateWeekdays", "split", "Array", "isArray", "ints", "map", "visited", "wrapped", "d", "useTimes", "props", "times", "reactive", "now", "parseTimestamp", "today", "parsedNow", "computed", "validateTimestamp", "setPresent", "present", "past", "future", "getNow", "parseDate", "Date", "updateDay", "target", "date", "year", "month", "day", "weekday", "updateTime", "time", "hour", "minute", "updateTimes", "value", "watch", "makeCalendarBaseProps", "propsFactory", "start", "type", "String", "Number", "Date", "validate", "validateTimestamp", "default", "parseDate", "date", "end", "weekdays", "Array", "validateWeekdays", "firstDayOfWeek", "firstDayOfYear", "weekdayFormat", "Function", "dayFormat", "locale", "now", "validator", "useCalendarBase", "props", "times", "updateTimes", "useTimes", "provideLocale", "adapter", "useDate", "parsedStart", "computed", "getStartOfMonth", "parseTimestamp", "parsedEnd", "value", "getTimestampIdentifier", "getEndOfMonth", "parsedValue", "modelValue", "today", "parsedWeekdays", "isArray", "split", "map", "x", "parseInt", "first", "toJsDate", "startOfWeek", "getDay", "toSorted", "filter", "v", "effectiveWeekdays", "days", "categoryDays", "weekday", "from", "length", "_", "i", "weekdaySkips", "getWeekdaySkips", "createDayList", "dayFormatter", "createNativeLocaleFormatter", "current", "timeZone", "day", "weekdayFormatter", "_tms", "short", "getColorProps", "colors", "computeColor", "getRelativeClasses", "timestamp", "outside", "arguments", "undefined", "present", "past", "future", "getWeekNumber", "getWeek", "_getStartOfWeek", "getStartOfWeek", "_getEndOfWeek", "getEndOfWeek", "getFormatter", "options", "makeCalendarWithIntervalsProps", "propsFactory", "maxDays", "type", "Number", "default", "intervalHeight", "String", "validate", "validateNumber", "intervalWidth", "intervalMinutes", "firstInterval", "firstTime", "Object", "validateTime", "intervalCount", "intervalFormat", "Function", "intervalStyle", "showIntervalLabel", "useCalendarWithIntervals", "props", "base", "useCalendarBase", "scrollAreaRef", "shallowRef", "parsedFirstInterval", "computed", "parseInt", "parsedIntervalMinutes", "parsedIntervalCount", "parsedIntervalHeight", "parseFloat", "parsedFirstTime", "parseTime", "firstMinute", "time", "value", "MINUTES_IN_DAY", "bodyHeight", "days", "createDayList", "parsedStart", "parsedEnd", "times", "today", "weekdaySkips", "intervals", "daysValue", "first", "minutes", "count", "now", "map", "d", "createIntervalList", "intervalFormatter", "createNativeLocaleFormatter", "locale", "current", "tms", "short", "timeZone", "hour", "minute", "showIntervalLabelDefault", "interval", "isFirst", "intervalStyleDefault", "_interval", "undefined", "getTimestampAtEvent", "e", "day", "timestamp", "copyTimestamp", "bounds", "currentTarget", "getBoundingClientRect", "baseMinutes", "touchEvent", "mouseEvent", "touches", "changedTouches", "clientY", "addIntervals", "top", "addMinutes", "Math", "floor", "updateMinutes", "getSlotScope", "scope", "timeToY", "timeDelta", "minutesToPixels", "week", "intervalRange", "scrollToTime", "y", "pane", "scrollTop", "targetDateOrClamp", "arguments", "length", "clamp", "targetDate", "gap", "a", "getDayIdentifier", "b", "min", "VCalendarDaily", "defineComponent", "name", "directives", "vResize", "props", "color", "String", "shortWeekdays", "type", "Boolean", "default", "shortIntervals", "hideHeader", "makeCalendarBaseProps", "makeCalendarWithIntervalsProps", "setup", "_ref", "slots", "attrs", "scrollPush", "ref", "pane", "base", "useCalendarWithIntervals", "init", "nextTick", "onResize", "value", "getScrollPush", "scrollAreaRef", "offsetWidth", "genHead", "_createElementVNode", "marginRight", "genHeadIntervals", "genHeadDays", "width", "convertToUnit", "intervalWidth", "days", "map", "genHeadDay", "day", "index", "events", "getPrefixedEventHandlers", "nativeEvent", "getSlotScope", "_mergeProps", "date", "getRelativeClasses", "genHeadWeekday", "genHeadDayLabel", "genDayHeader", "week", "present", "undefined", "getColorProps", "text", "weekdayFormatter", "genHeadDayButton", "_createVNode", "VIconBtn", "noop", "dayFormatter", "genBody", "genScrollArea", "genPane", "height", "bodyHeight", "genDayContainer", "genBodyIntervals", "genDays", "getTimestampAtEvent", "genDayIntervals", "genDayBody", "intervals", "genDayInterval", "interval", "intervalHeight", "styler", "intervalStyle", "intervalStyleDefault", "time", "_normalizeStyle", "parsedStart", "genIntervalLabels", "length", "genIntervalLabel", "short", "shower", "showIntervalLabel", "showIntervalLabelDefault", "show", "label", "intervalFormatter", "onMounted", "useRender", "_withDirectives", "_normalizeClass", "class", "e", "preventDefault", "quiet", "parsedCategoryText", "category", "categoryText", "getParsedCategories", "categories", "split", "Array", "isArray", "map", "categoryName", "VCalendarCategory", "defineComponent", "name", "props", "categories", "type", "Array", "String", "default", "categoryText", "Function", "categoryForInvalid", "makeCalendarBaseProps", "makeCalendarWithIntervalsProps", "setup", "_ref", "slots", "attrs", "base", "useCalendarWithIntervals", "parsedCategories", "computed", "getParsedCategories", "getCategoryScope", "scope", "category", "cat", "categoryName", "genDayHeader", "_createElementVNode", "value", "map", "genDayHeaderCategory", "day", "headerTitle", "events", "getPrefixedEventHandlers", "getSlotScope", "_mergeProps", "genDayHeaderCategoryTitle", "genDays", "days", "forEach", "d", "j", "length", "fill", "push", "v", "i", "genDay", "index", "categoryIndex", "e", "getTimestampAtEvent", "date", "getRelativeClasses", "genDayIntervals", "genDayBody", "intervals", "genDayInterval", "interval", "height", "convertToUnit", "intervalHeight", "styler", "intervalStyle", "intervalStyleDefault", "time", "_normalizeStyle", "genDayBodyCategory", "useRender", "_createVNode", "VCalendarDaily", "VCalendarWeekly", "defineComponent", "name", "props", "minWeeks", "validate", "validateNumber", "default", "monthFormat", "Function", "showWeek", "Boolean", "color", "String", "shortWeekdays", "type", "showMonthOnFirst", "shortMonths", "hideHeader", "makeCalendarBaseProps", "setup", "_ref", "slots", "attrs", "base", "useCalendarBase", "theme", "useTheme", "parsedMinWeeks", "computed", "parseInt", "days", "minDays", "value", "parsedWeekdays", "length", "start", "getStartOfWeek", "parsedStart", "end", "getEndOfWeek", "parsedEnd", "createDayList", "times", "today", "weekdaySkips", "Number", "MAX_SAFE_INTEGER", "todayWeek", "monthFormatter", "createNativeLocaleFormatter", "locale", "current", "_tms", "short", "timeZone", "month", "isOutside", "day", "dayIdentifier", "getDayIdentifier", "genHead", "_createElementVNode", "genHeadDays", "header", "map", "genHeadDay", "unshift", "index", "outside", "present", "undefined", "_mergeProps", "getColorProps", "text", "date", "getRelativeClasses", "weekdayFormatter", "genWeeks", "daysValue", "weekDays", "weeks", "i", "push", "genWeek", "slice", "getWeekNumber", "week", "weekNumber", "weekNodes", "genDay", "genWeekNumber", "determineDay", "events", "getPrefixedEventHandlers", "nativeEvent", "genDayLabel", "genDayLabelButton", "hasMonth", "_createVNode", "VIconBtn", "noop", "dayFormatter", "useRender", "_normalizeClass", "themeClasses", "e", "preventDefault", "MILLIS_IN_DAY", "getVisuals", "events", "minStart", "arguments", "length", "undefined", "visuals", "map", "event", "columnCount", "column", "left", "width", "sort", "a", "b", "Math", "max", "startTimestampIdentifier", "endTimestampIdentifier", "hasOverlap", "s0", "e0", "s1", "e1", "exclude", "setColumnCount", "groups", "forEach", "group", "groupVisual", "getRange", "getDayRange", "startIdentifier", "endIdentifier", "getNormalizedRange", "dayStart", "min", "getOpenGroup", "start", "end", "timed", "i", "intersected", "k", "groupStart", "groupEnd", "getOverlapGroupHandler", "firstWeekday", "handler", "reset", "day", "dayEvents", "weekday", "getTimestampIdentifier", "visual", "targetGroup", "push", "target", "FULL_WIDTH", "column", "events", "firstWeekday", "overlapThreshold", "handler", "getOverlapGroupHandler", "day", "dayEvents", "timed", "reset", "visuals", "getVisuals", "forEach", "visual", "left", "columnCount", "width", "FULL_WIDTH", "DEFAULT_OFFSET", "WIDTH_MULTIPLIER", "stack", "events", "firstWeekday", "overlapThreshold", "handler", "getOverlapGroupHandler", "day", "dayEvents", "timed", "reset", "getVisuals", "dayStart", "getTimestampIdentifier", "visuals", "groups", "getGroups", "group", "nodes", "visual", "child", "getNode", "index", "getNextIndex", "parent", "getParent", "sibling", "hasOverlap", "start", "end", "addTime", "children", "push", "getOverlappingRange", "length", "grand", "grandNext", "calculateBounds", "sort", "a", "b", "left", "event", "startTimestampIdentifier", "node", "columns", "getMaxChildIndex", "spaceLeft", "spaceWidth", "offset", "Math", "min", "columnWidthMultiplier", "getColumnWidthMultiplier", "columnOffset", "columnWidth", "width", "hasFullWidth", "maxColumn", "minColumn", "reduce", "c", "getOverlappingIndices", "indices", "other", "i", "indexMin", "indexMax", "returnFirstColumn", "arguments", "undefined", "overlapping", "first", "n", "filter", "getNormalizedRange", "added", "max", "childMax", "identifier", "minutes", "removeMinutes", "totalMinutes", "addHours", "floor", "addMinutes", "CalendarEventOverlapModes", "stack", "column", "parseEvent", "input", "index", "startProperty", "endProperty", "timed", "arguments", "length", "undefined", "category", "startInput", "endInput", "startParsed", "parseTimestamp", "endParsed", "start", "isTimedless", "updateHasTime", "end", "startIdentifier", "getDayIdentifier", "startTimestampIdentifier", "getTimestampIdentifier", "endIdentifier", "endOffset", "hasTime", "endTimestampIdentifier", "allDay", "isEventOn", "event", "dayIdentifier", "isEventOnDay", "day", "inRange", "dayStart", "nextMinutes", "copyTimestamp", "dayEnd", "starts", "ends", "isEventHiddenOn", "time", "date", "isEventStart", "firstWeekday", "weekday", "isEventOverlapping", "WIDTH_FULL", "WIDTH_START", "makeCalendarWithEventsProps", "propsFactory", "events", "type", "Array", "default", "eventStart", "String", "eventEnd", "eventTimed", "Function", "eventCategory", "eventHeight", "Number", "eventColor", "eventTextColor", "eventName", "eventOverlapThreshold", "eventOverlapMode", "validate", "mode", "CalendarEventOverlapModes", "eventMore", "Boolean", "eventMoreText", "eventRipple", "Object", "eventMarginBottom", "useCalendarWithEvents", "props", "slots", "attrs", "base", "useCalendarBase", "noEvents", "computed", "isArray", "length", "categoryMode", "eventTimedFunction", "event", "eventCategoryFunction", "parsedEvents", "map", "index", "parseEvent", "value", "parsedEventOverlapThreshold", "parseInt", "eventTextColorFunction", "eventNameFunction", "timedEvent", "input", "eventModeFunction", "eventWeekdays", "effectiveWeekdays", "eventColorFunction", "e", "color", "eventsRef", "ref", "updateEventVisibility", "eventsMap", "getEventsMap", "date", "parent", "more", "parentBounds", "getBoundingClientRect", "last", "eventsSorted", "bottom", "sort", "a", "b", "hidden", "i", "hide", "style", "display", "innerHTML", "locale", "t", "elements", "forEach", "el", "getAttribute", "parentElement", "push", "genDayEvent", "_ref", "day", "dayIdentifier", "getDayIdentifier", "week", "start", "startIdentifier", "end", "endIdentifier", "width", "WIDTH_START", "weekdayIdentifier", "WIDTH_FULL", "scope", "eventParsed", "timed", "genEvent", "class", "height", "marginBottom", "genTimedEvent", "_ref2", "left", "startDelta", "timeDelta", "endDelta", "isEventHiddenOn", "top", "timeToY", "Math", "max", "scopeInput", "data", "slot", "text", "background", "overlapsNoon", "hour", "singline", "diffMinutes", "formatTime", "withTime", "ampm", "formatter", "getFormatter", "timeZone", "minute", "undefined", "timeSummary", "eventSummary", "name", "hasTime", "time", "delimiter", "_createElementVNode", "_createTextVNode", "outside", "getPrefixedEventHandlers", "nativeEvent", "_withDirectives", "_mergeProps", "getColorProps", "genName", "vRipple", "genPlaceholder", "genMore", "getVisibleEvents", "days", "filter", "isEventOverlapping", "isEventForCategory", "category", "categoryName", "getEventsForDay", "identifier", "firstWeekday", "isEventStart", "getEventsForDayAll", "allDay", "isEventOn", "getEventsForDayTimed", "isEventOnDay", "intervalRange", "getScopedSlots", "isNode", "getSlotChildren", "getter", "mapper", "visuals", "visual", "children", "column", "mapped", "concat", "VCalendar", "genericComponent", "name", "directives", "vResize", "props", "modelValue", "type", "String", "Number", "Date", "validate", "validateTimestamp", "categoryDays", "default", "x", "isFinite", "parseInt", "categories", "Array", "categoryText", "Function", "maxDays", "categoryHideDynamic", "Boolean", "categoryShowAll", "categoryForInvalid", "makeCalendarBaseProps", "makeCalendarWithEventsProps", "setup", "_ref", "slots", "attrs", "emit", "root", "ref", "base", "useCalendarWithEvents", "lastStart", "lastEnd", "parsedCategoryDays", "computed", "parsedCategories", "getParsedCategories", "renderProps", "around", "parsedValue", "value", "component", "start", "end", "VCalendarWeekly", "getStartOfMonth", "getEndOfMonth", "VCalendarDaily", "getStartOfWeek", "getEndOfWeek", "relativeDays", "copyTimestamp", "nextDay", "updateFormatted", "parsedStart", "parsedEnd", "days", "VCalendarCategory", "getCategoryList", "Error", "eventWeekdays", "effectiveWeekdays", "categoryMode", "monthLongFormatter", "getFormatter", "timeZone", "month", "monthShortFormatter", "title", "spanYears", "year", "spanMonths", "checkChange", "date", "move", "amount", "arguments", "length", "undefined", "moved", "forward", "mover", "prevDay", "limit", "DAYS_IN_MONTH_MAX", "DAY_MIN", "times", "day", "DAYS_IN_WEEK", "updateWeekday", "updateRelative", "now", "timestampToDate", "getTime", "next", "prev", "noEvents", "categoryMap", "reduce", "map", "category", "index", "categoryName", "count", "categoryLength", "parsedEvents", "forEach", "ev", "filter", "hasOwnProperty", "watch", "onMounted", "updateEventVisibility", "onUpdated", "window", "requestAnimationFrame", "useRender", "Component", "_withDirectives", "_createVNode", "_mergeProps", "filterProps", "onClick:date", "e", "getScopedSlots", "quiet", "forwardRefs", "VWindowSymbol", "Symbol", "for", "VWindowGroupSymbol", "makeVWindowProps", "propsFactory", "continuous", "Boolean", "nextIcon", "type", "String", "Function", "Object", "default", "prevIcon", "reverse", "showArrows", "validator", "v", "verticalArrows", "touch", "undefined", "direction", "modelValue", "disabled", "selectedClass", "mandatory", "crossfade", "transitionDuration", "Number", "makeComponentProps", "makeTagProps", "makeThemeProps", "VWindow", "genericComponent", "name", "directives", "vTouch", "props", "emits", "value", "setup", "_ref", "slots", "themeClasses", "provideTheme", "isRtl", "useRtl", "t", "useLocale", "group", "useGroup", "rootRef", "ref", "isRtlReverse", "computed", "isReversed", "shallowRef", "transition", "axis", "transitionCount", "transitionHeight", "activeIndex", "items", "findIndex", "item", "selected", "includes", "id", "watch", "newVal", "oldVal", "scrollableParent", "savedScrollPosition", "left", "top", "IN_BROWSER", "getScrollParent", "scrollLeft", "scrollTop", "itemsLength", "length", "lastIndex", "nextTick", "currentScrollY", "scrollTo", "behavior", "requestAnimationFrame", "rafScrollY", "flush", "provide", "canMoveBack", "toRef", "canMoveForward", "prev", "next", "arrows", "prevProps", "icon", "class", "onClick", "push", "_createVNode", "VBtn", "_createElementVNode", "nextProps", "touchOptions", "options", "right", "start", "_ref2", "originalEvent", "stopPropagation", "useRender", "_withDirectives", "tag", "_normalizeClass", "_normalizeStyle", "style", "PREFERS_REDUCED_MOTION", "convertToUnit", "height", "additional", "makeVCarouselProps", "propsFactory", "color", "String", "cycle", "Boolean", "delimiterIcon", "type", "IconValue", "default", "height", "Number", "hideDelimiters", "hideDelimiterBackground", "interval", "validator", "value", "progress", "verticalDelimiters", "makeVWindowProps", "continuous", "mandatory", "showArrows", "VCarousel", "genericComponent", "name", "props", "emits", "setup", "_ref", "slots", "model", "useProxiedModel", "t", "useLocale", "windowRef", "ref", "slideTimeout", "watch", "restartTimeout", "val", "window", "clearTimeout", "onMounted", "startTimeout", "setTimeout", "group", "next", "requestAnimationFrame", "useRender", "windowProps", "VWindow", "filterProps", "_createVNode", "_mergeProps", "$event", "class", "convertToUnit", "style", "additional", "_ref2", "_createElementVNode", "_Fragment", "left", "right", "items", "length", "VDefaultsProvider", "VBtn", "icon", "size", "variant", "map", "item", "index", "id", "isSelected", "onClick", "select", "VProgressLinear", "undefined", "getItemIndex", "prev", "makeVWindowItemProps", "propsFactory", "reverseTransition", "type", "Boolean", "String", "default", "undefined", "transition", "makeComponentProps", "makeGroupItemProps", "makeLazyProps", "VWindowItem", "genericComponent", "name", "directives", "vTouch", "props", "emits", "val", "setup", "_ref", "slots", "window", "inject", "VWindowSymbol", "groupItem", "useGroupItem", "VWindowGroupSymbol", "isBooted", "useSsrBoot", "Error", "isTransitioning", "shallowRef", "hasTransition", "computed", "value", "isReversed", "onAfterTransition", "transitionCount", "transitionHeight", "onBeforeTransition", "convertToUnit", "rootRef", "clientHeight", "onTransitionCancelled", "onEnterTransition", "el", "nextTick", "onBeforeEnter", "onAfterEnter", "onEnterCancelled", "onBeforeLeave", "onAfterLeave", "onLeaveCancelled", "onEnter", "hasContent", "useLazy", "isSelected", "useRender", "_createVNode", "MaybeTransition", "_withDirectives", "_createElementVNode", "_normalizeClass", "selectedClass", "class", "_normalizeStyle", "style", "_vShow", "makeVCarouselItemProps", "propsFactory", "makeVImgProps", "makeVWindowItemProps", "VCarouselItem", "genericComponent", "name", "inheritAttrs", "props", "setup", "_ref", "slots", "attrs", "useRender", "imgProps", "VImg", "filterProps", "windowItemProps", "VWindowItem", "_createVNode", "_mergeProps", "class", "default", "VCode", "createSimpleFunctional", "makeVColorPickerCanvasProps", "propsFactory", "color", "type", "Object", "disabled", "Boolean", "dotSize", "Number", "String", "default", "height", "width", "makeComponentProps", "VColorPickerCanvas", "defineComponent", "name", "props", "emits", "hue", "setup", "_ref", "emit", "isInteracting", "shallowRef", "canvasRef", "ref", "canvasWidth", "parseFloat", "canvasHeight", "_dotPosition", "x", "y", "dotPosition", "computed", "get", "value", "set", "val", "h", "s", "clamp", "v", "a", "dotStyles", "radius", "parseInt", "convertToUnit", "transform", "resizeRef", "useResizeObserver", "entries", "el", "offsetParent", "contentRect", "updateDotPosition", "rect", "left", "top", "handleMouseDown", "e", "preventDefault", "handleMouseMove", "window", "addEventListener", "handleMouseUp", "coords", "getEventCoordinates", "clientX", "clientY", "getBoundingClientRect", "removeEventListener", "updateCanvas", "canvas", "ctx", "getContext", "saturationGradient", "createLinearGradient", "addColorStop", "fillStyle", "fillRect", "valueGradient", "watch", "immediate", "newVal", "oldVal", "flush", "deep", "onMounted", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "stripAlpha", "color", "a", "rest", "extractColor", "input", "hasA", "startsWith", "r", "g", "b", "HSVtoRGB", "h", "s", "l", "HSVtoHSL", "Math", "round", "hex", "HSVtoHex", "slice", "converted", "has", "nullColor", "h", "s", "v", "a", "rgba", "inputProps", "type", "min", "inputs", "label", "max", "step", "getValue", "c", "Math", "round", "r", "getColor", "Number", "localeKey", "g", "b", "_ref", "to", "HSVtoRGB", "from", "RGBtoHSV", "rgb", "slice", "hsla", "l", "_ref2", "HSVtoHSL", "HSLtoHSV", "hsl", "hexa", "HSVtoHex", "HexToHSV", "hex", "modes", "VColorPickerInput", "_ref", "label", "rest", "_createElementVNode", "_normalizeProps", "_guardReactiveProps", "makeVColorPickerEditProps", "propsFactory", "color", "Object", "disabled", "Boolean", "mode", "type", "String", "default", "validator", "v", "keys", "modes", "includes", "Array", "isArray", "every", "m", "makeComponentProps", "VColorPickerEdit", "defineComponent", "name", "props", "emits", "setup", "_ref2", "emit", "t", "useLocale", "enabledModes", "computed", "map", "key", "inputs", "value", "find", "to", "_ref3", "getValue", "getColor", "localeKey", "inputProps", "ariaLabel", "onChange", "e", "target", "from", "nullColor", "useRender", "_normalizeClass", "class", "_normalizeStyle", "style", "_createVNode", "length", "VBtn", "onClick", "mi", "findIndex", "makeVColorPickerPreviewProps", "propsFactory", "color", "type", "Object", "disabled", "Boolean", "hideAlpha", "hideEyeDropper", "eyeDropperIcon", "IconValue", "default", "makeComponentProps", "VColorPickerPreview", "defineComponent", "name", "props", "emits", "setup", "_ref", "emit", "t", "useLocale", "abortController", "AbortController", "onUnmounted", "abort", "openEyeDropper", "SUPPORTS_EYE_DROPPER", "eyeDropper", "window", "EyeDropper", "result", "open", "signal", "colorHexValue", "RGBtoHSV", "parseColor", "sRGBHex", "nullColor", "e", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "_createVNode", "VBtn", "background", "HSVtoCSS", "VSlider", "h", "a", "red", "base", "lighten5", "lighten4", "lighten3", "lighten2", "lighten1", "darken1", "darken2", "darken3", "darken4", "accent1", "accent2", "accent3", "accent4", "pink", "purple", "deepPurple", "indigo", "blue", "lightBlue", "cyan", "teal", "green", "lightGreen", "lime", "yellow", "amber", "orange", "deepOrange", "brown", "blueGrey", "grey", "shades", "black", "white", "transparent", "makeVColorPickerSwatchesProps", "propsFactory", "swatches", "type", "Array", "default", "parseDefaultColors", "colors", "disabled", "Boolean", "color", "Object", "maxHeight", "Number", "String", "makeComponentProps", "keys", "map", "key", "base", "darken4", "darken3", "darken2", "darken1", "lighten1", "lighten2", "lighten3", "lighten4", "lighten5", "black", "white", "transparent", "VColorPickerSwatches", "defineComponent", "name", "props", "emits", "setup", "_ref", "emit", "onSwatchClick", "hsva", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "convertToUnit", "style", "swatch", "rgba", "parseColor", "RGBtoHSV", "background", "RGBtoCSS", "onClick", "deepEqual", "_createVNode", "VIcon", "getContrast", "undefined", "VPickerTitle", "createSimpleFunctional", "makeVPickerProps", "propsFactory", "bgColor", "String", "divided", "Boolean", "landscape", "title", "hideHeader", "hideTitle", "makeVSheetProps", "VPicker", "genericComponent", "name", "props", "setup", "_ref", "slots", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "color", "useRender", "sheetProps", "VSheet", "filterProps", "hasTitle", "_createVNode", "_mergeProps", "actions", "class", "style", "default", "_createElementVNode", "_normalizeClass", "value", "_normalizeStyle", "VPickerTitle", "header", "VDefaultsProvider", "VBtn", "slim", "variant", "makeVColorPickerProps", "propsFactory", "canvasHeight", "type", "String", "Number", "default", "disabled", "Boolean", "dotSize", "hideCanvas", "hideSliders", "hideInputs", "mode", "validator", "v", "Object", "keys", "modes", "includes", "Array", "isArray", "every", "m", "showSwatches", "swatches", "swatchesMaxHeight", "modelValue", "makeVPickerProps", "hideHeader", "pick", "makeVColorPickerPreviewProps", "VColorPicker", "defineComponent", "name", "props", "emits", "color", "setup", "_ref", "slots", "useProxiedModel", "hue", "ref", "model", "undefined", "c", "RGBtoHSV", "parseColor", "err", "consoleWarn", "extractColor", "currentColor", "computed", "value", "h", "rtlClasses", "useRtl", "externalChange", "watch", "immediate", "updateColor", "hsva", "onBeforeMount", "provideDefaults", "VSlider", "trackColor", "trackFillColor", "useRender", "pickerProps", "VPicker", "filterProps", "_createVNode", "_mergeProps", "class", "HSVtoCSS", "nullColor", "a", "style", "_createElementVNode", "_Fragment", "VColorPickerCanvas", "width", "VColorPickerPreview", "endsWith", "hideEyeDropper", "eyeDropperIcon", "VColorPickerEdit", "VColorPickerSwatches", "makeVComboboxProps", "propsFactory", "alwaysFilter", "Boolean", "autoSelectFirst", "type", "String", "clearOnSelect", "default", "delimiters", "Array", "makeFilterProps", "filterKeys", "makeSelectProps", "hideNoData", "returnObject", "omit", "makeVTextFieldProps", "modelValue", "role", "VCombobox", "genericComponent", "name", "props", "emits", "focused", "value", "setup", "_ref", "emit", "slots", "t", "useLocale", "vTextFieldRef", "ref", "isFocused", "shallowRef", "isPristine", "listHasFocus", "vMenuRef", "vVirtualScrollRef", "selectionIndex", "cleared", "items", "transformIn", "transformOut", "useItems", "textColorClasses", "textColorStyles", "useTextColor", "color", "InputIcon", "useInputIcon", "model", "useProxiedModel", "v", "wrapInArray", "transformed", "multiple", "form", "useForm", "closableChips", "toRef", "isReadonly", "isDisabled", "hasChips", "computed", "chips", "chip", "hasSelectionSlot", "selection", "_search", "title", "_searchLock", "search", "get", "set", "val", "transformItem", "nextTick", "scrollToIndex", "length", "values", "splitByDelimiters", "selectMultiple", "counterValue", "filteredItems", "getMatches", "useFilter", "displayItems", "hideSelected", "filter", "filteredItem", "some", "s", "menuDisabled", "_menu", "menu", "ΨopenChildren", "size", "menuId", "ariaExpanded", "ariaControls", "useMenuActivator", "watch", "selectedValues", "map", "firstSelectableItem", "find", "x", "disabled", "highlightFirst", "selectFirst", "listRef", "listEvents", "useScrolling", "onClear", "e", "openOnClear", "onMousedownControl", "onMousedownMenuIcon", "preventDefault", "stopPropagation", "onListKeydown", "checkPrintable", "key", "focus", "onKeydown", "isComposingIgnoreKey", "selectionStart", "includes", "_ref2", "select", "originalSelectionIndex", "prev", "setSelectionRange", "next", "onPaste", "clipboardText", "clipboardData", "getData", "onAfterEnter", "eager", "calculateVisibleItems", "onAfterLeave", "item", "arguments", "undefined", "keepMenu", "index", "findIndex", "valueComparator", "deepEqual", "add", "splice", "effectiveDelimiters", "signsToMatch", "escapeForRegex", "join", "split", "RegExp", "trim", "onFocusin", "setTimeout", "onFocusout", "oldVal", "_ref3", "IN_BROWSER", "window", "requestAnimationFrame", "newVal", "useRender", "hasList", "isDirty", "textFieldProps", "VTextField", "filterProps", "_createVNode", "_mergeProps", "$event", "externalValue", "class", "style", "placeholder", "_ref4", "id", "_createElementVNode", "_Fragment", "VMenu", "menuProps", "VList", "itemColor", "listProps", "VListItem", "noDataText", "VVirtualScroll", "_ref5", "itemRef", "itemProps", "mergeProps", "active", "onClick", "divider", "raw", "VDivider", "subheader", "VListSubheader", "prepend", "_ref6", "isSelected", "VCheckboxBtn", "event", "prependAvatar", "VAvatar", "prependIcon", "VIcon", "highlightResult", "onChipClose", "slotProps", "VChip", "onMousedown", "hasSlot", "slotContent", "ensureValidVNode", "_normalizeClass", "_normalizeStyle", "VDefaultsProvider", "closable", "text", "_createTextVNode", "_len", "args", "_key", "menuIcon", "fieldIconColor", "noop", "appendInnerIcon", "iconColor", "forwardRefs", "makeVConfirmEditProps", "propsFactory", "modelValue", "color", "String", "cancelText", "type", "default", "okText", "disabled", "Boolean", "Array", "undefined", "hideActions", "VConfirmEdit", "genericComponent", "name", "props", "emits", "cancel", "save", "value", "setup", "_ref", "emit", "slots", "model", "useProxiedModel", "internalModel", "ref", "watchEffect", "structuredClone", "deepToRaw", "t", "useLocale", "isPristine", "computed", "deepEqual", "isActionDisabled", "action", "isArray", "includes", "isSaveDisabled", "isCancelDisabled", "actions", "actionsProps", "_createElementVNode", "_Fragment", "_createVNode", "VBtn", "_mergeProps", "actionsUsed", "useRender", "makeDataIteratorItemsProps", "propsFactory", "items", "type", "Array", "default", "itemValue", "String", "Function", "itemSelectable", "returnObject", "Boolean", "transformItem", "props", "item", "value", "getPropertyFromItem", "selectable", "raw", "transformItems", "array", "push", "useDataIteratorItems", "computed", "makeVDataIteratorProps", "propsFactory", "search", "String", "loading", "Boolean", "makeComponentProps", "makeDataIteratorItemsProps", "makeDataTableSelectProps", "makeDataTableSortProps", "makeDataTablePaginateProps", "itemsPerPage", "makeDataTableExpandProps", "makeDataTableGroupProps", "makeFilterProps", "makeTagProps", "makeTransitionProps", "transition", "component", "VFadeTransition", "hideOnLeave", "VDataIterator", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "groupBy", "useProxiedModel", "toRef", "items", "useDataIteratorItems", "filteredItems", "useFilter", "transform", "item", "raw", "initialSortOrder", "sortBy", "multiSort", "mustSort", "createSort", "page", "createPagination", "toggleSort", "provideSort", "sortByWithGroups", "opened", "extractRows", "isGroupOpen", "toggleGroup", "provideGroupBy", "sortedItems", "useSortedItems", "flatItems", "useGroupedItems", "itemsLength", "length", "startIndex", "stopIndex", "pageCount", "prevPage", "nextPage", "setItemsPerPage", "setPage", "providePagination", "paginatedItems", "usePaginatedItems", "paginatedItemsWithoutGroups", "computed", "isSelected", "select", "selectAll", "toggleSelect", "provideSelection", "allItems", "currentPage", "isExpanded", "toggleExpand", "provideExpanded", "useOptions", "slotProps", "itemsCount", "groupedItems", "useRender", "_createVNode", "tag", "_normalizeClass", "class", "_normalizeStyle", "style", "default", "header", "MaybeTransition", "LoaderSlot", "loader", "_createElementVNode", "footer", "makeVDatePickerControlsProps", "propsFactory", "active", "type", "String", "Array", "default", "undefined", "controlHeight", "Number", "controlVariant", "noMonthPicker", "Boolean", "disabled", "nextIcon", "IconValue", "prevIcon", "modeIcon", "text", "monthText", "yearText", "viewMode", "VDatePickerControls", "genericComponent", "name", "props", "emits", "click:year", "click:month", "click:prev", "click:next", "click:prev-year", "click:next-year", "setup", "_ref", "emit", "slots", "t", "useLocale", "disableMonth", "computed", "isArray", "includes", "disableYear", "disablePrevMonth", "disableNextMonth", "disablePrevYear", "disableNextYear", "onClickPrevMonth", "onClickNextMonth", "onClickPrevYear", "onClickNextYear", "onClickYear", "onClickMonth", "useRender", "innerDefaults", "VBtn", "density", "variant", "prevMonth", "_createVNode", "value", "nextMonth", "prevYear", "nextYear", "onlyMonthBtn", "onlyYearBtn", "monthYearBtn", "monthYearSplit", "_createElementVNode", "_Fragment", "slotProps", "monthYearText", "openMonths", "openYears", "modalControls", "VSpacer", "dockedControls", "VDefaultsProvider", "_normalizeClass", "convertToUnit", "makeVDatePickerHeaderProps", "propsFactory", "appendIcon", "IconValue", "color", "String", "header", "transition", "onClick", "EventProp", "VDatePickerHeader", "genericComponent", "name", "props", "emits", "click", "click:append", "setup", "_ref", "emit", "slots", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "onClickAppend", "useRender", "hasContent", "default", "hasAppend", "append", "_createElementVNode", "_normalizeClass", "value", "_normalizeStyle", "prepend", "_createVNode", "MaybeTransition", "VBtn", "VDefaultsProvider", "icon", "variant", "makeCalendarProps", "propsFactory", "allowedDates", "Array", "Function", "disabled", "type", "Boolean", "default", "displayValue", "modelValue", "month", "Number", "String", "max", "min", "showAdjacentMonths", "year", "weekdays", "weeksInMonth", "firstDayOfWeek", "undefined", "firstDayOfYear", "weekdayFormat", "useCalendar", "props", "adapter", "useDate", "model", "useProxiedModel", "v", "wrapInArray", "map", "i", "date", "computed", "value", "length", "isArray", "getYear", "startOfYear", "setYear", "getMonth", "startOfMonth", "setMonth", "weekdayLabels", "toJsDate", "startOfWeek", "getDay", "getWeekdays", "filter", "_", "includes", "weeks", "getWeekArray", "days", "flat", "daysInMonth", "lastDay", "week", "day", "push", "addDays", "genDays", "today", "index", "isoDate", "toISO", "isAdjacent", "isSameMonth", "isStart", "isSameDay", "isEnd", "endOfMonth", "isSame", "weekdaysCount", "formatted", "format", "isDisabled", "isHidden", "isSelected", "some", "isToday", "isWeekEnd", "isWeekStart", "localized", "daysInWeek", "weekNumbers", "getWeek", "minDate", "maxDate", "useCalendarRange", "isBefore", "endOfDay", "isAfter", "d", "isValid", "clampDate", "isInAllowedRange", "makeVDatePickerMonthProps", "propsFactory", "color", "String", "hideWeekdays", "Boolean", "multiple", "Number", "showWeek", "transition", "type", "default", "reverseTransition", "events", "Array", "Function", "Object", "eventColor", "omit", "makeCalendarProps", "VDatePickerMonth", "genericComponent", "name", "props", "emits", "date", "setup", "_ref", "emit", "slots", "daysRef", "ref", "t", "useLocale", "daysInMonth", "model", "weekNumbers", "weekdayLabels", "useCalendar", "adapter", "useDate", "rangeStart", "shallowRef", "rangeStop", "isReverse", "toRef", "value", "length", "atMax", "computed", "max", "includes", "Infinity", "watch", "val", "oldVal", "isBefore", "onRangeClick", "_value", "startOfDay", "undefined", "isSameDay", "endOfDay", "createDateRange", "getDateAriaLabel", "item", "fullDate", "format", "localeKey", "isToday", "onMultipleClick", "index", "findIndex", "selection", "splice", "onClick", "getEventColors", "eventData", "eventColors", "isArray", "wrapInArray", "filter", "map", "genEvents", "_createElementVNode", "_createVNode", "VBadge", "useRender", "weekdays", "_createTextVNode", "week", "_normalizeClass", "MaybeTransition", "toString", "weekDay", "i", "slotProps", "class", "isSelected", "disabled", "isDisabled", "icon", "ripple", "variant", "isAdjacent", "isHidden", "isWeekEnd", "isWeekStart", "isoDate", "showAdjacentMonths", "day", "VBtn", "localized", "makeVDatePickerMonthsProps", "propsFactory", "color", "String", "height", "Number", "min", "max", "modelValue", "year", "allowedMonths", "Array", "Function", "VDatePickerMonths", "genericComponent", "name", "props", "emits", "date", "setup", "_ref", "emit", "slots", "adapter", "useDate", "model", "useProxiedModel", "months", "computed", "startOfYear", "setYear", "createRange", "map", "i", "text", "format", "label", "isDisabled", "isMonthAllowed", "isAfter", "startOfMonth", "getNextMonth", "value", "watchEffect", "getMonth", "month", "isArray", "length", "includes", "useRender", "_createElementVNode", "convertToUnit", "btnProps", "active", "ariaLabel", "undefined", "disabled", "rounded", "variant", "onClick", "_createVNode", "VBtn", "_mergeProps", "makeVDatePickerYearsProps", "propsFactory", "color", "String", "height", "Number", "min", "max", "modelValue", "allowedYears", "Array", "Function", "VDatePickerYears", "genericComponent", "name", "props", "directives", "vIntersect", "emits", "year", "setup", "_ref", "emit", "slots", "adapter", "useDate", "model", "useProxiedModel", "hasFocusedItem", "shallowRef", "years", "computed", "getYear", "date", "startOfYear", "setYear", "createRange", "map", "i", "text", "format", "value", "isDisabled", "isYearAllowed", "watchEffect", "yearRef", "templateRef", "focusSelectedYear", "el", "scrollIntoView", "block", "isArray", "length", "includes", "useRender", "_withDirectives", "_createElementVNode", "convertToUnit", "onFocus", "focus", "onFocusin", "onFocusout", "btnProps", "ref", "undefined", "active", "rounded", "disabled", "variant", "onClick", "_createVNode", "VBtn", "_mergeProps", "handler", "once", "makeVDatePickerProps", "propsFactory", "header", "type", "String", "default", "headerColor", "headerDateFormat", "landscapeHeaderWidth", "Number", "omit", "makeVDatePickerControlsProps", "makeVDatePickerMonthProps", "weeksInMonth", "makeVDatePickerMonthsProps", "makeVDatePickerYearsProps", "makeVPickerProps", "title", "modelValue", "VDatePicker", "genericComponent", "name", "props", "emits", "date", "setup", "_ref", "emit", "slots", "adapter", "useDate", "t", "useLocale", "rtlClasses", "useRtl", "model", "useProxiedModel", "undefined", "v", "wrapInArray", "map", "i", "multiple", "viewMode", "minDate", "maxDate", "clampDate", "useCalendarRange", "internal", "computed", "today", "value", "isValid", "toRef", "color", "_month", "month", "get", "getMonth", "startOfMonth", "set", "_year", "year", "getYear", "startOfYear", "setMonth", "isReversing", "shallowRef", "length", "formattedDate", "format", "landscape", "split", "replace", "monthStart", "setDate", "setYear", "monthYearText", "monthText", "yearText", "headerTransition", "disabled", "targets", "push", "_date", "prevMonthEnd", "addDays", "prevYearEnd", "isAfter", "nextMonthStart", "endOfMonth", "nextYearStart", "endOfYear", "allowedYears", "isYearAllowed", "allowedMonths", "isMonthAllowed", "isAllowedInRange", "start", "end", "allowedDates", "days", "daysDiff", "parseISO", "Array", "isArray", "monthTwoDigits", "padStart", "onClickNextMonth", "onUpdateYear", "onUpdateMonth", "onClickPrevMonth", "onClickNextYear", "onClickPrevYear", "onClickDate", "onClickMonth", "onClickYear", "watch", "val", "oldVal", "arrBefore", "arrAfter", "before", "after", "isSameDay", "newMonth", "newYear", "isBefore", "useRender", "pickerProps", "VPicker", "filterProps", "datePickerControlsProps", "VDatePickerControls", "datePickerHeaderProps", "VDatePickerHeader", "datePickerMonthProps", "VDatePickerMonth", "datePickerMonthsProps", "VDatePickerMonths", "datePickerYearsProps", "VDatePickerYears", "headerProps", "transition", "_createVNode", "_mergeProps", "showWeek", "class", "convertToUnit", "style", "_createElementVNode", "VDefaultsProvider", "prepend", "append", "_Fragment", "controls", "VFadeTransition", "$event", "day", "actions", "makeVEmptyStateProps", "propsFactory", "actionText", "String", "bgColor", "color", "icon", "IconValue", "image", "justify", "type", "default", "headline", "title", "text", "textWidth", "Number", "href", "to", "makeComponentProps", "makeDimensionProps", "makeSizeProps", "size", "undefined", "makeThemeProps", "VEmptyState", "genericComponent", "name", "props", "emits", "e", "setup", "_ref", "emit", "slots", "themeClasses", "provideTheme", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "dimensionStyles", "useDimension", "displayClasses", "useDisplay", "onClickAction", "useRender", "hasActions", "actions", "hasHeadline", "hasTitle", "hasText", "hasMedia", "media", "_createElementVNode", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "_Fragment", "_createVNode", "VImg", "VIcon", "VDefaultsProvider", "src", "height", "maxWidth", "convertToUnit", "VBtn", "onClick", "makeVFabProps", "propsFactory", "app", "Boolean", "appear", "extended", "layout", "offset", "modelValue", "type", "default", "omit", "makeVBtnProps", "active", "makeLayoutItemProps", "makeLocationProps", "makeTransitionProps", "transition", "VFab", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "model", "useProxiedModel", "height", "shallowRef", "layoutItemStyles", "ref", "resizeRef", "useResizeObserver", "entries", "length", "target", "clientHeight", "hasPosition", "toRef", "absolute", "position", "computed", "location", "split", "shift", "orientation", "useToggleScope", "useLayoutItem", "id", "order", "parseInt", "layoutSize", "elementSize", "watchEffect", "vFabRef", "useRender", "btnProps", "VBtn", "filterProps", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "_createVNode", "MaybeTransition", "_withDirectives", "_mergeProps", "undefined", "_vShow", "makeVFooterProps", "propsFactory", "app", "Boolean", "color", "String", "height", "type", "Number", "default", "makeBorderProps", "makeComponentProps", "makeElevationProps", "makeLayoutItemProps", "makeRoundedProps", "makeTagProps", "tag", "makeThemeProps", "VFooter", "genericComponent", "name", "props", "setup", "_ref", "slots", "layoutItemStyles", "ref", "themeClasses", "provideTheme", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "borderClasses", "useBorder", "elevationClasses", "useElevation", "roundedClasses", "useRounded", "autoHeight", "shallowRef", "resizeRef", "useResizeObserver", "entries", "length", "value", "target", "clientHeight", "computed", "parseInt", "useToggleScope", "layout", "useLayoutItem", "id", "order", "position", "toRef", "layoutSize", "elementSize", "undefined", "active", "absolute", "watchEffect", "useRender", "_createVNode", "_normalizeClass", "class", "_normalizeStyle", "convertToUnit", "style", "makeVKbdProps", "propsFactory", "color", "String", "makeBorderProps", "makeComponentProps", "makeRoundedProps", "makeTagProps", "tag", "makeThemeProps", "makeElevationProps", "VKbd", "genericComponent", "name", "props", "setup", "_ref", "slots", "themeClasses", "provideTheme", "borderClasses", "useBorder", "roundedClasses", "useRounded", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "elevationClasses", "useElevation", "useRender", "_createVNode", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "processKey", "config", "requestedMode", "isMac", "keyCfg", "mac", "default", "mode", "icon", "symbol", "value", "text", "startsWith", "slice", "toUpperCase", "hotkeyMap", "ctrl", "meta", "cmd", "shift", "alt", "enter", "arrowup", "arrowdown", "arrowleft", "arrowright", "backspace", "escape", "makeVHotkeyProps", "propsFactory", "keys", "String", "displayMode", "type", "keyMap", "Object", "platform", "inline", "Boolean", "disabled", "prefix", "suffix", "variant", "validator", "v", "includes", "makeComponentProps", "makeThemeProps", "makeBorderProps", "makeRoundedProps", "makeElevationProps", "color", "AND_DELINEATOR", "Symbol", "SLASH_DELINEATOR", "THEN_DELINEATOR", "getKeyText", "key", "lowerKey", "toLowerCase", "result", "applyDisplayModeToKey", "replace", "VHotkey", "genericComponent", "name", "props", "setup", "t", "useLocale", "themeClasses", "provideTheme", "rtlClasses", "useRtl", "borderClasses", "useBorder", "roundedClasses", "useRounded", "elevationClasses", "useElevation", "colorClasses", "colorStyles", "variantClasses", "useVariant", "computed", "navigator", "test", "userAgent", "keyCombinations", "split", "map", "combination", "sequenceGroups", "splitKeySequence", "i", "length", "group", "push", "keyParts", "separators", "splitKeyCombination", "j", "part", "accessibleLabel", "readableShortcuts", "readableParts", "Array", "isArray", "textKey", "mergeDeep", "translateKey", "join", "shortcutText", "getKeyTooltip", "undefined", "renderKey", "keyIndex", "isContained", "KeyComponent", "VKbd", "keyClasses", "_createVNode", "_normalizeClass", "_normalizeStyle", "VIcon", "renderDivider", "_createElementVNode", "useRender", "content", "_Fragment", "comboIndex", "_createTextVNode", "class", "style", "makeVHoverProps", "propsFactory", "disabled", "Boolean", "modelValue", "type", "default", "makeDelayProps", "VHover", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "isHovering", "useProxiedModel", "runOpenDelay", "runCloseDelay", "useDelay", "onMouseenter", "onMouseleave", "makeVInfiniteScrollProps", "propsFactory", "color", "String", "direction", "type", "default", "validator", "v", "includes", "side", "mode", "margin", "Number", "loadMoreText", "emptyText", "makeDimensionProps", "makeTagProps", "VInfiniteScrollIntersect", "defineComponent", "name", "props", "required", "rootMargin", "emits", "intersect", "isIntersecting", "setup", "_ref", "emit", "intersectionRef", "useIntersectionObserver", "watch", "val", "useRender", "_createElementVNode", "_createTextVNode", "VInfiniteScroll", "genericComponent", "load", "options", "_ref2", "slots", "rootEl", "ref", "startStatus", "shallowRef", "endStatus", "computed", "convertToUnit", "setScrollAmount", "amount", "value", "property", "getScrollAmount", "getScrollSize", "getContainerSize", "onMounted", "setStatus", "status", "getStatus", "previousScrollSize", "handleIntersect", "_isIntersecting", "intersecting", "done", "nextTick", "window", "requestAnimationFrame", "t", "useLocale", "renderSide", "onClick", "slotProps", "error", "empty", "loading", "_createVNode", "VProgressCircular", "VBtn", "dimensionStyles", "useDimension", "Tag", "tag", "hasStartIntersect", "hasEndIntersect", "intersectMode", "_normalizeClass", "_normalizeStyle", "reset", "effectiveSide", "VItemGroupSymbol", "Symbol", "for", "makeVItemGroupProps", "propsFactory", "makeComponentProps", "makeGroupProps", "selectedClass", "makeTagProps", "makeThemeProps", "VItemGroup", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "themeClasses", "provideTheme", "isSelected", "select", "next", "prev", "selected", "useGroup", "_createVNode", "tag", "_normalizeClass", "class", "_normalizeStyle", "style", "default", "VItem", "genericComponent", "name", "props", "makeGroupItemProps", "emits", "val", "setup", "_ref", "slots", "isSelected", "select", "toggle", "selectedClass", "value", "disabled", "useGroupItem", "VItemGroupSymbol", "default", "makeVLayoutProps", "propsFactory", "makeComponentProps", "makeDimensionProps", "makeLayoutProps", "VLayout", "genericComponent", "name", "props", "setup", "_ref", "slots", "layoutClasses", "layoutStyles", "getLayoutItem", "items", "layoutRef", "createLayout", "dimensionStyles", "useDimension", "useRender", "_createElementVNode", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "default", "makeVLayoutItemProps", "propsFactory", "position", "type", "String", "required", "size", "Number", "default", "modelValue", "Boolean", "makeComponentProps", "makeLayoutItemProps", "VLayoutItem", "genericComponent", "name", "props", "setup", "_ref", "slots", "layoutItemStyles", "useLayoutItem", "id", "order", "computed", "parseInt", "toRef", "elementSize", "layoutSize", "active", "absolute", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "value", "style", "makeVLazyProps", "propsFactory", "modelValue", "Boolean", "options", "type", "Object", "default", "root", "undefined", "rootMargin", "threshold", "makeComponentProps", "makeDimensionProps", "makeTagProps", "makeTransitionProps", "transition", "VLazy", "genericComponent", "name", "directives", "vIntersect", "props", "emits", "value", "setup", "_ref", "slots", "dimensionStyles", "useDimension", "isActive", "useProxiedModel", "onIntersect", "isIntersecting", "useRender", "_withDirectives", "_createVNode", "tag", "_normalizeClass", "class", "_normalizeStyle", "style", "MaybeTransition", "handler", "makeVLocaleProviderProps", "propsFactory", "locale", "String", "fallbackLocale", "messages", "Object", "rtl", "type", "Boolean", "default", "undefined", "makeComponentProps", "VLocaleProvider", "genericComponent", "name", "props", "setup", "_ref", "slots", "rtlClasses", "provideLocale", "useRender", "_createElementVNode", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "VNoSsr", "defineComponent", "name", "setup", "_", "_ref", "slots", "show", "useHydration", "value", "default", "HOLD_REPEAT", "HOLD_DELAY", "useHold", "_ref", "toggleUpDown", "timeout", "interval", "onScopeDispose", "holdStop", "holdStart", "value", "tick", "window", "addEventListener", "document", "setTimeout", "setInterval", "clearTimeout", "clearInterval", "removeEventListener", "makeVNumberInputProps", "propsFactory", "controlVariant", "type", "String", "default", "inset", "Boolean", "hideInput", "modelValue", "Number", "min", "MIN_SAFE_INTEGER", "max", "MAX_SAFE_INTEGER", "step", "precision", "minFractionDigits", "decimalSeparator", "validator", "v", "length", "omit", "makeVTextFieldProps", "VNumberInput", "genericComponent", "name", "props", "emits", "val", "setup", "_ref", "slots", "vTextFieldRef", "ref", "holdStart", "holdStop", "useHold", "toggleUpDown", "form", "useForm", "controlsDisabled", "computed", "isDisabled", "value", "isReadonly", "isFocused", "shallowRef", "focused", "decimalSeparatorFromLocale", "useLocale", "correctPrecision", "arguments", "undefined", "trim", "fixed", "toFixed", "toString", "replace", "baseDigits", "fractionDigits", "split", "padEnd", "RegExp", "filter", "join", "model", "useProxiedModel", "clamp", "_inputText", "_lastParsedValue", "watch", "isNaN", "immediate", "inputText", "get", "set", "parsedValue", "isOutOfRange", "numberFromText", "canIncrease", "canDecrease", "incrementIcon", "toRef", "decrementIcon", "controlNodeSize", "controlNodeDefaultHeight", "incrementSlotProps", "onClick", "onControlClick", "onPointerup", "onControlMouseup", "onPointerdown", "onUpControlMousedown", "onPointercancel", "decrementSlotProps", "onDownControlMousedown", "formatInputValue", "onMounted", "clampModel", "inferPrecision", "str", "idx", "indexOf", "increment", "inferredPrecision", "Math", "onBeforeinput", "e", "data", "inputElement", "target", "existingTxt", "selectionStart", "selectionEnd", "potentialNewInputVal", "slice", "potentialNewNumber", "extractNumber", "escapeForRegex", "test", "preventDefault", "nextTick", "cursorPosition", "setSelectionRange", "endsWith", "onKeydown", "includes", "key", "ctrlKey", "stopPropagation", "el", "currentTarget", "releasePointerCapture", "pointerId", "setPointerCapture", "actualText", "trimDecimalZeros", "onFocus", "onBlur", "useRender", "_", "textFieldProps", "VTextField", "filterProps", "incrementControlNode", "_createVNode", "VBtn", "VDefaultsProvider", "disabled", "height", "size", "icon", "variant", "decrementControlNode", "decrement", "controlNode", "_createElementVNode", "VDivider", "dividerNode", "appendInnerControl", "reverse", "_Fragment", "hasAppendInner", "prependInnerControl", "hasPrependInner", "_mergeProps", "$event", "error", "class", "style", "_len", "args", "Array", "_key", "_len2", "_key2", "forwardRefs", "makeVOtpInputProps", "propsFactory", "autofocus", "Boolean", "divider", "String", "focusAll", "label", "type", "default", "length", "Number", "modelValue", "undefined", "placeholder", "makeDimensionProps", "makeFocusProps", "pick", "makeVFieldProps", "variant", "VOtpInput", "genericComponent", "name", "props", "emits", "finish", "val", "setup", "_ref", "attrs", "emit", "slots", "dimensionStyles", "useDimension", "isFocused", "focus", "blur", "useFocus", "model", "useProxiedModel", "split", "join", "t", "useLocale", "computed", "fields", "Array", "value", "fill", "focusIndex", "ref", "contentRef", "inputRef", "current", "_isComposing", "useToggleScope", "intersectScope", "effectScope", "run", "intersectionRef", "isIntersecting", "useIntersectionObserver", "watchEffect", "watch", "v", "stop", "onInput", "isValidNumber", "array", "slice", "target", "focusChild", "onCompositionend", "onKeydown", "e", "index", "includes", "key", "preventDefault", "requestAnimationFrame", "select", "onPaste", "stopPropagation", "clipboardText", "clipboardData", "getData", "trim", "finalIndex", "reset", "onFocus", "onBlur", "test", "provideDefaults", "VField", "color", "toRef", "bgColor", "baseColor", "disabled", "error", "rounded", "scoped", "deep", "nextTick", "useRender", "rootAttrs", "inputAttrs", "filterInputAttrs", "_createElementVNode", "_mergeProps", "class", "style", "_normalizeStyle", "map", "_", "i", "_Fragment", "_createVNode", "loader", "_normalizeClass", "onCompositionstart", "event", "VOverlay", "loading", "VProgressCircular", "some", "input", "floor", "val", "Math", "abs", "sign", "makeVParallaxProps", "propsFactory", "scale", "type", "Number", "String", "default", "makeComponentProps", "VParallax", "genericComponent", "name", "props", "setup", "_ref", "slots", "intersectionRef", "isIntersecting", "useIntersectionObserver", "resizeRef", "contentRect", "useResizeObserver", "height", "displayHeight", "useDisplay", "root", "ref", "watchEffect", "value", "$el", "scrollParent", "watch", "getScrollParent", "document", "scrollingElement", "addEventListener", "onScroll", "passive", "removeEventListener", "onBeforeUnmount", "computed", "clamp", "frame", "PREFERS_REDUCED_MOTION", "cancelAnimationFrame", "requestAnimationFrame", "el", "querySelector", "scrollHeight", "Document", "documentElement", "clientHeight", "scrollPos", "window", "scrollY", "scrollTop", "top", "getBoundingClientRect", "center", "translate", "sizeScale", "max", "style", "setProperty", "useRender", "_createVNode", "VImg", "_normalizeClass", "class", "_normalizeStyle", "makeVRadioProps", "propsFactory", "makeVSelectionControlProps", "falseIcon", "trueIcon", "VRadio", "genericComponent", "name", "props", "setup", "_ref", "slots", "useRender", "controlProps", "VSelectionControl", "filterProps", "_createVNode", "_mergeProps", "class", "style", "makeVRadioGroupProps", "propsFactory", "height", "type", "Number", "String", "default", "makeVInputProps", "omit", "makeSelectionControlGroupProps", "trueIcon", "IconValue", "falseIcon", "VRadioGroup", "genericComponent", "name", "inheritAttrs", "props", "emits", "value", "setup", "_ref", "attrs", "slots", "uid", "useId", "id", "computed", "model", "useProxiedModel", "inputRef", "ref", "useRender", "rootAttrs", "controlAttrs", "filterInputAttrs", "inputProps", "VInput", "filterProps", "controlProps", "VSelectionControl", "label", "for", "_createVNode", "_mergeProps", "class", "style", "$event", "_ref2", "messagesId", "isDisabled", "isReadonly", "_createElementVNode", "_Fragment", "VLabel", "VSelectionControlGroup", "undefined", "forwardRefs", "makeVRangeSliderProps", "propsFactory", "makeFocusProps", "makeVInputProps", "makeSliderProps", "strict", "Boolean", "modelValue", "type", "Array", "default", "VRangeSlider", "genericComponent", "name", "inheritAttrs", "props", "emits", "value", "end", "start", "setup", "_ref", "slots", "emit", "attrs", "startThumbRef", "ref", "stopThumbRef", "inputRef", "rtlClasses", "useRtl", "getActiveThumb", "e", "startOffset", "getOffset", "$el", "direction", "stopOffset", "a", "Math", "abs", "b", "steps", "useSteps", "model", "useProxiedModel", "undefined", "arr", "length", "map", "roundValue", "activeThumbRef", "hasLabels", "max", "min", "mousePressed", "onSliderMousedown", "onSliderTouchstart", "position", "trackContainerRef", "disabled", "readonly", "useSlider", "onSliderStart", "blur", "onSliderEnd", "_ref2", "newValue", "onSliderMove", "_ref3", "stop", "focus", "isFocused", "useFocus", "trackStart", "computed", "trackStop", "useRender", "inputProps", "VInput", "filterProps", "rootAttrs", "inputAttrs", "filterInputAttrs", "hasPrepend", "label", "prepend", "_createVNode", "_mergeProps", "class", "style", "slotProps", "_createElementVNode", "_Fragment", "VLabel", "_ref4", "id", "messagesId", "VSliderTrack", "VSliderThumb", "v", "relatedTarget", "onBlur", "ripple", "forwardRefs", "makeVRatingProps", "propsFactory", "name", "String", "itemAriaLabel", "type", "default", "activeColor", "color", "clearable", "Boolean", "disabled", "emptyIcon", "IconValue", "fullIcon", "halfIncrements", "hover", "length", "Number", "readonly", "modelValue", "itemLabels", "Array", "itemLabelPosition", "validator", "v", "includes", "ripple", "makeComponentProps", "makeDensityProps", "makeSizeProps", "makeTagProps", "makeThemeProps", "VRating", "genericComponent", "props", "emits", "value", "setup", "_ref", "slots", "t", "useLocale", "themeClasses", "provideTheme", "root", "ref", "rating", "useProxiedModel", "normalizedValue", "computed", "clamp", "parseFloat", "range", "createRange", "increments", "flatMap", "hoverIndex", "shallowRef", "itemState", "map", "isHovering", "isFilled", "isHovered", "isFullIcon", "icon", "eventState", "onMouseenter", "onMouseleave", "onClick", "undefined", "currentItemIndex", "Math", "floor", "max", "moveCurrentFocus", "currentItem", "querySelector", "focus", "onItemKeydown", "event", "ctrlKey", "altKey", "step", "key", "newValue", "min", "nextTick", "uid", "useId", "VRatingItem", "_ref2", "index", "showStar", "id", "replace", "isFocusable", "btnProps", "density", "size", "variant", "tabindex", "onKeydown", "_createElementVNode", "_Fragment", "_normalizeClass", "item", "_createVNode", "VBtn", "_mergeProps", "createLabel", "labelProps", "label", "_createTextVNode", "useRender", "hasLabels", "tag", "class", "_normalizeStyle", "style", "i", "rootTypes", "actions", "article", "avatar", "button", "card", "chip", "divider", "heading", "image", "ossein", "paragraph", "sentences", "subtitle", "table", "text", "genBone", "type", "children", "arguments", "length", "undefined", "_createElementVNode", "_normalizeClass", "genBones", "bone", "split", "Array", "from", "map", "genStructure", "includes", "mapBones", "push", "bones", "replace", "makeVSkeletonLoaderProps", "propsFactory", "boilerplate", "Boolean", "color", "String", "loading", "loadingText", "default", "makeDimensionProps", "makeElevationProps", "makeThemeProps", "VSkeletonLoader", "genericComponent", "name", "inheritAttrs", "props", "setup", "_ref", "attrs", "slots", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "dimensionStyles", "useDimension", "elevationClasses", "useElevation", "themeClasses", "provideTheme", "t", "useLocale", "items", "computed", "wrapInArray", "join", "useRender", "isLoading", "loadingProps", "ariaLive", "ariaLabel", "role", "_mergeProps", "value", "_Fragment", "VSlideGroupItem", "genericComponent", "name", "props", "makeGroupItemProps", "emits", "val", "setup", "_ref", "slots", "slideGroupItem", "useGroupItem", "VSlideGroupSymbol", "default", "isSelected", "value", "select", "toggle", "selectedClass", "makeVSnackbarQueueProps", "propsFactory", "closable", "Boolean", "String", "closeText", "type", "default", "modelValue", "Array", "omit", "makeVSnackbarProps", "VSnackbarQueue", "genericComponent", "name", "props", "emits", "val", "setup", "_ref", "emit", "slots", "t", "useLocale", "isActive", "shallowRef", "isVisible", "current", "watch", "length", "oldVal", "value", "showNext", "onAfterLeave", "undefined", "next", "rest", "text", "nextTick", "onClickClose", "btnProps", "computed", "color", "useRender", "hasActions", "actions", "_", "snackbarProps", "VSnackbar", "filterProps", "_createElementVNode", "_Fragment", "_createVNode", "VDefaultsProvider", "item", "_mergeProps", "$event", "VBtn", "onClick", "makeLineProps", "propsFactory", "autoDraw", "Boolean", "autoDrawDuration", "Number", "String", "autoDrawEasing", "type", "default", "color", "gradient", "Array", "gradientDirection", "validator", "val", "includes", "height", "labels", "labelSize", "lineWidth", "id", "itemValue", "modelValue", "min", "max", "padding", "showLabels", "smooth", "width", "makeVBarlineProps", "propsFactory", "autoLineWidth", "Boolean", "makeLineProps", "VBarline", "genericComponent", "name", "props", "setup", "_ref", "slots", "uid", "useId", "id", "computed", "autoDrawDuration", "Number", "hasLabels", "showLabels", "labels", "length", "label", "lineWidth", "parseFloat", "totalWidth", "Math", "max", "modelValue", "value", "width", "boundary", "minX", "maxX", "minY", "maxY", "parseInt", "height", "items", "map", "item", "getPropertyFromItem", "itemValue", "genBars", "values", "totalValues", "maxValue", "minValue", "min", "gridX", "gridY", "horizonY", "abs", "index", "x", "y", "parsedLabels", "points", "len", "i", "push", "String", "bars", "offsetX", "smooth", "useRender", "gradientData", "gradient", "slice", "reverse", "_createElementVNode", "gradientDirection", "color", "autoDraw", "PREFERS_REDUCED_MOTION", "_Fragment", "textAnchor", "dominantBaseline", "fill", "labelSize", "genPath", "points", "radius", "fill", "arguments", "length", "undefined", "height", "start", "shift", "end", "x", "y", "map", "point", "index", "next", "prev", "isCollinear", "checkCollinear", "threshold", "Math", "min", "getDistance", "isTooCloseForRadius", "radiusForPoint", "before", "moveTo", "after", "join", "int", "value", "parseInt", "p0", "p1", "p2", "sqrt", "pow", "to", "from", "vector", "unitVector", "makeVTrendlineProps", "propsFactory", "fill", "Boolean", "makeLineProps", "VTrendline", "genericComponent", "name", "props", "setup", "_ref", "slots", "uid", "useId", "id", "computed", "autoDrawDuration", "Number", "lastLength", "ref", "path", "genPoints", "values", "boundary", "minX", "maxX", "minY", "maxY", "length", "totalValues", "maxValue", "max", "Math", "minValue", "min", "gridX", "gridY", "map", "value", "index", "x", "y", "hasLabels", "showLabels", "labels", "label", "lineWidth", "parseFloat", "totalWidth", "width", "padding", "parseInt", "height", "items", "modelValue", "item", "getPropertyFromItem", "itemValue", "parsedLabels", "points", "len", "i", "push", "String", "watch", "nextTick", "autoDraw", "PREFERS_REDUCED_MOTION", "pathRef", "getTotalLength", "style", "strokeDasharray", "strokeDashoffset", "getBoundingClientRect", "transition", "autoDrawEasing", "transformOrigin", "transform", "immediate", "genPath", "smoothValue", "smooth", "_genPath", "useRender", "gradientData", "gradient", "slice", "reverse", "_createElementVNode", "gradientDirection", "color", "textAnchor", "dominantBaseline", "labelSize", "makeVSparklineProps", "propsFactory", "type", "String", "default", "makeVBarlineProps", "makeVTrendlineProps", "VSparkline", "genericComponent", "name", "props", "setup", "_ref", "slots", "textColorClasses", "textColorStyles", "useTextColor", "color", "hasLabels", "computed", "Boolean", "showLabels", "labels", "length", "label", "totalHeight", "height", "parseInt", "value", "labelSize", "useRender", "Tag", "VTrendline", "VBarline", "lineProps", "filterProps", "_createVNode", "_mergeProps", "width", "makeVSpeedDialProps", "propsFactory", "makeComponentProps", "makeVMenuProps", "offset", "minWidth", "openDelay", "closeDelay", "location", "transition", "VSpeedDial", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "model", "useProxiedModel", "menuRef", "ref", "computed", "y", "x", "split", "locationClasses", "replace", "useRender", "menuProps", "VMenu", "filterProps", "_createVNode", "_mergeProps", "$event", "class", "style", "contentClass", "default", "slotProps", "VDefaultsProvider", "VBtn", "size", "MaybeTransition", "VStepperSymbol", "Symbol", "for", "makeVStepperActionsProps", "propsFactory", "color", "String", "disabled", "type", "Boolean", "default", "prevText", "nextText", "VStepperActions", "genericComponent", "name", "props", "emits", "click:prev", "click:next", "setup", "_ref", "emit", "slots", "t", "useLocale", "onClickPrev", "onClickNext", "useRender", "prevSlotProps", "onClick", "nextSlotProps", "_createElementVNode", "_createVNode", "VDefaultsProvider", "VBtn", "includes", "text", "variant", "prev", "next", "VStepperHeader", "createSimpleFunctional", "makeStepperItemProps", "propsFactory", "color", "String", "title", "subtitle", "complete", "Boolean", "completeIcon", "type", "IconValue", "default", "editable", "editIcon", "error", "errorIcon", "icon", "ripple", "Object", "rules", "Array", "makeVStepperItemProps", "makeGroupItemProps", "VStepperItem", "genericComponent", "name", "directives", "vRipple", "props", "emits", "val", "setup", "_ref", "slots", "group", "useGroupItem", "VStepperSymbol", "step", "computed", "value", "isValid", "every", "handler", "isClickable", "disabled", "canEdit", "hasError", "hasCompleted", "length", "isSelected", "slotProps", "useRender", "hasColor", "hasTitle", "hasSubtitle", "onClick", "toggle", "_withDirectives", "_createElementVNode", "_normalizeClass", "selectedClass", "genOverlays", "_createVNode", "VAvatar", "undefined", "VIcon", "makeVStepperWindowProps", "propsFactory", "omit", "makeVWindowProps", "VStepperWindow", "genericComponent", "name", "props", "emits", "v", "setup", "_ref", "slots", "group", "inject", "VStepperSymbol", "_model", "useProxiedModel", "model", "computed", "get", "value", "items", "find", "item", "selected", "includes", "id", "set", "val", "useRender", "windowProps", "VWindow", "filterProps", "_createVNode", "_mergeProps", "$event", "class", "style", "makeVStepperWindowItemProps", "propsFactory", "makeVWindowItemProps", "VStepperWindowItem", "genericComponent", "name", "props", "setup", "_ref", "slots", "useRender", "windowItemProps", "VWindowItem", "filterProps", "_createVNode", "_mergeProps", "class", "style", "makeStepperProps", "propsFactory", "altLabels", "Boolean", "bgColor", "String", "completeIcon", "IconValue", "editIcon", "editable", "errorIcon", "hideActions", "items", "type", "Array", "default", "itemTitle", "Function", "itemValue", "itemProps", "nonLinear", "flat", "makeDisplayProps", "makeVStepperProps", "makeGroupProps", "mandatory", "selectedClass", "makeVSheetProps", "pick", "makeVStepperActionsProps", "VStepper", "genericComponent", "name", "props", "emits", "v", "setup", "_ref", "slots", "_items", "next", "prev", "selected", "useGroup", "VStepperSymbol", "displayClasses", "mobile", "useDisplay", "color", "prevText", "nextText", "toRefs", "computed", "map", "item", "index", "title", "getPropertyFromItem", "value", "_props", "raw", "activeIndex", "findIndex", "includes", "id", "disabled", "length", "provideDefaults", "VStepperItem", "VStepperActions", "useRender", "sheetProps", "VSheet", "filterProps", "hasHeader", "header", "hasWindow", "hasActions", "actions", "_createVNode", "_mergeProps", "class", "style", "VStepperHeader", "_ref2", "_createElementVNode", "_Fragment", "VDivider", "icon", "subtitle", "VStepperWindow", "VStepperWindowItem", "makeVSwitchProps", "propsFactory", "indeterminate", "Boolean", "inset", "flat", "loading", "type", "String", "default", "makeVInputProps", "makeVSelectionControlProps", "VSwitch", "genericComponent", "name", "inheritAttrs", "props", "emits", "focused", "value", "setup", "_ref", "attrs", "slots", "useProxiedModel", "model", "loaderClasses", "useLoader", "isFocused", "focus", "blur", "useFocus", "control", "ref", "inputRef", "isForcedColorsModeActive", "SUPPORTS_MATCH_MEDIA", "window", "matchMedia", "matches", "loaderColor", "toRef", "color", "uid", "useId", "id", "onChange", "onTrackClick", "e", "stopPropagation", "preventDefault", "input", "click", "useRender", "rootAttrs", "controlAttrs", "filterInputAttrs", "inputProps", "VInput", "filterProps", "controlProps", "VSelectionControl", "_createVNode", "_mergeProps", "class", "$event", "style", "_ref2", "messagesId", "isDisabled", "isReadonly", "isValid", "slotProps", "undefined", "_ref3", "backgroundColorClasses", "backgroundColorStyles", "_createElementVNode", "_normalizeClass", "_normalizeStyle", "_ref4", "inputNode", "icon", "_Fragment", "thumb", "VDefaultsProvider", "VIcon", "size", "VScaleTransition", "LoaderSlot", "loader", "VProgressCircular", "isActive", "forwardRefs", "makeVSystemBarProps", "propsFactory", "color", "String", "height", "Number", "window", "Boolean", "makeComponentProps", "makeElevationProps", "makeLayoutItemProps", "makeRoundedProps", "makeTagProps", "makeThemeProps", "VSystemBar", "genericComponent", "name", "props", "setup", "_ref", "slots", "themeClasses", "provideTheme", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "elevationClasses", "useElevation", "roundedClasses", "useRounded", "ssrBootStyles", "useSsrBoot", "computed", "layoutItemStyles", "useLayoutItem", "id", "order", "parseInt", "position", "shallowRef", "layoutSize", "elementSize", "active", "absolute", "toRef", "useRender", "_createVNode", "tag", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "VTabsSymbol", "Symbol", "for", "makeVTabProps", "propsFactory", "fixed", "Boolean", "sliderColor", "String", "sliderTransition", "sliderTransitionDuration", "Number", "hideSlider", "inset", "direction", "type", "default", "omit", "makeVBtnProps", "selectedClass", "variant", "VTab", "genericComponent", "name", "props", "setup", "_ref", "slots", "attrs", "textColorClasses", "sliderColorClasses", "textColorStyles", "sliderColorStyles", "useTextColor", "backgroundColorClasses", "insetColorClasses", "backgroundColorStyles", "insetColorStyles", "useBackgroundColor", "rootEl", "ref", "sliderEl", "isHorizontal", "computed", "isSelected", "value", "group", "fade", "nextEl", "prevEl", "opacity", "grow", "transform", "shift", "prevBox", "getBoundingClientRect", "nextBox", "xy", "XY", "rightBottom", "widthHeight", "prevPos", "nextPos", "delta", "origin", "Math", "sign", "size", "abs", "scale", "max", "initialScale", "sigma", "transformOrigin", "Array", "fill", "updateSlider", "_ref2", "$el", "parentElement", "querySelector", "color", "getComputedStyle", "keyframes", "duration", "animate", "backgroundColor", "easing", "standardEasing", "useRender", "btnProps", "VBtn", "filterProps", "_createVNode", "_mergeProps", "VTabsSymbol", "class", "style", "undefined", "_createElementVNode", "_Fragment", "text", "_normalizeClass", "_normalizeStyle", "forwardRefs", "makeVTabsWindowProps", "propsFactory", "omit", "makeVWindowProps", "VTabsWindow", "genericComponent", "name", "props", "emits", "v", "setup", "_ref", "slots", "group", "inject", "VTabsSymbol", "_model", "useProxiedModel", "model", "computed", "get", "value", "items", "find", "item", "selected", "includes", "id", "set", "val", "useRender", "windowProps", "VWindow", "filterProps", "_createVNode", "_mergeProps", "$event", "class", "style", "makeVTabsWindowItemProps", "propsFactory", "makeVWindowItemProps", "VTabsWindowItem", "genericComponent", "name", "props", "setup", "_ref", "slots", "useRender", "windowItemProps", "VWindowItem", "filterProps", "_createVNode", "_mergeProps", "class", "style", "parseItems", "items", "map", "item", "isObject", "text", "value", "makeVTabsProps", "propsFactory", "alignTabs", "type", "String", "default", "color", "fixedTabs", "Boolean", "Array", "stacked", "bgColor", "grow", "height", "Number", "undefined", "hideSlider", "inset", "insetPadding", "insetRadius", "sliderColor", "pick", "makeVTabProps", "makeVSlideGroupProps", "mandatory", "selectedClass", "makeDensityProps", "makeTagProps", "VTabs", "genericComponent", "name", "props", "emits", "v", "setup", "_ref", "attrs", "slots", "model", "useProxiedModel", "computed", "densityClasses", "useDensity", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "scopeId", "useScopeId", "provideDefaults", "VTab", "toRef", "direction", "fixed", "sliderTransition", "sliderTransitionDuration", "useRender", "slideGroupProps", "VSlideGroup", "filterProps", "hasWindow", "window", "length", "_createElementVNode", "_Fragment", "_createVNode", "_mergeProps", "$event", "class", "convertToUnit", "style", "VTabsSymbol", "tab", "spaced", "prev", "next", "VTabsWindow", "VTabsWindowItem", "makeVThemeProviderProps", "propsFactory", "withBackground", "Boolean", "makeComponentProps", "makeThemeProps", "makeTagProps", "VThemeProvider", "genericComponent", "name", "props", "setup", "_ref", "slots", "themeClasses", "provideTheme", "default", "_createVNode", "tag", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "makeVTimelineDividerProps", "propsFactory", "dotColor", "String", "fillDot", "Boolean", "hideDot", "icon", "IconValue", "iconColor", "lineColor", "makeComponentProps", "makeRoundedProps", "makeSizeProps", "makeElevationProps", "VTimelineDivider", "genericComponent", "name", "props", "setup", "_ref", "slots", "sizeClasses", "sizeStyles", "useSize", "backgroundColorStyles", "backgroundColorClasses", "useBackgroundColor", "roundedClasses", "useRounded", "elevationClasses", "useElevation", "lineColorClasses", "lineColorStyles", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "value", "default", "_createVNode", "VIcon", "size", "VDefaultsProvider", "color", "makeVTimelineItemProps", "propsFactory", "density", "String", "dotColor", "fillDot", "Boolean", "hideDot", "hideOpposite", "type", "default", "undefined", "icon", "IconValue", "iconColor", "lineInset", "Number", "side", "validator", "v", "includes", "makeComponentProps", "makeDimensionProps", "makeElevationProps", "makeRoundedProps", "makeSizeProps", "makeTagProps", "VTimelineItem", "genericComponent", "name", "props", "setup", "_ref", "slots", "dimensionStyles", "useDimension", "dotSize", "shallowRef", "dotRef", "ref", "watch", "newValue", "value", "$el", "querySelector", "getBoundingClientRect", "width", "flush", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "convertToUnit", "style", "_createVNode", "VTimelineDivider", "size", "elevation", "rounded", "opposite", "makeVTimelineProps", "propsFactory", "align", "type", "String", "default", "validator", "v", "includes", "direction", "justify", "side", "lineThickness", "Number", "lineColor", "truncateLine", "pick", "makeVTimelineItemProps", "lineInset", "makeComponentProps", "makeDensityProps", "makeTagProps", "makeThemeProps", "VTimeline", "genericComponent", "name", "props", "setup", "_ref", "slots", "themeClasses", "provideTheme", "densityClasses", "useDensity", "rtlClasses", "useRtl", "provideDefaults", "VTimelineDivider", "toRef", "VTimelineItem", "density", "dotColor", "fillDot", "hideOpposite", "iconColor", "size", "sideClasses", "computed", "truncateClasses", "classes", "useRender", "_createVNode", "tag", "_normalizeClass", "value", "class", "_normalizeStyle", "convertToUnit", "style", "makeVTimePickerClockProps", "propsFactory", "allowedValues", "Function", "ampm", "Boolean", "color", "String", "disabled", "displayedValue", "double", "format", "type", "default", "val", "max", "Number", "required", "min", "scrollable", "readonly", "rotate", "step", "modelValue", "VTimePickerClock", "genericComponent", "name", "props", "emits", "change", "input", "setup", "_ref", "emit", "clockRef", "ref", "innerClockRef", "inputValue", "undefined", "isDragging", "valueOnMouseDown", "valueOnMouseUp", "emitChangeDebounced", "debounce", "value", "textColorClasses", "textColorStyles", "useTextColor", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "count", "computed", "roundCount", "degreesPerUnit", "degrees", "Math", "PI", "innerRadiusScale", "genChildren", "children", "push", "watch", "update", "isAllowed", "wheel", "e", "preventDefault", "delta", "sign", "deltaY", "isInner", "handScale", "getPosition", "rotateRadians", "x", "sin", "y", "cos", "angleToValue", "angle", "insideClick", "round", "getTransform", "i", "left", "top", "euclidean", "p0", "p1", "dx", "dy", "sqrt", "center", "atan2", "abs", "setMouseDownValue", "onDragMove", "width", "getBoundingClientRect", "innerWidth", "clientX", "clientY", "touches", "coords", "handAngle", "checksCount", "ceil", "onMouseDown", "window", "addEventListener", "onMouseUp", "stopPropagation", "removeListeners", "removeEventListener", "onScopeDispose", "useRender", "_createElementVNode", "_normalizeClass", "_normalizeStyle", "transform", "map", "isActive", "makeVTimePickerFieldProps", "propsFactory", "active", "Boolean", "color", "String", "disabled", "label", "modelValue", "readonly", "VTimePickerField", "genericComponent", "name", "inheritAttrs", "props", "emits", "v", "setup", "_ref", "emit", "attrs", "textColorClasses", "textColorStyles", "useTextColor", "vTextInputRef", "ref", "isFocused", "shallowRef", "onKeydown", "e", "includes", "key", "preventDefault", "target", "value", "useRender", "_createElementVNode", "_createVNode", "VTextField", "_mergeProps", "onFocus", "onBlur", "forwardRefs", "pad", "n", "length", "arguments", "undefined", "String", "padStart", "convert24to12", "hour", "convert12to24", "period", "extractInteger", "v", "digits", "replaceAll", "Number", "incrementHour", "increment", "value", "togglePeriod", "incrementMinuteOrSecond", "val", "makeVTimePickerControlsProps", "propsFactory", "ampm", "Boolean", "color", "String", "disabled", "hour", "Number", "minute", "second", "period", "readonly", "useSeconds", "value", "viewMode", "VTimePickerControls", "genericComponent", "name", "props", "emits", "data", "v", "setup", "_ref", "emit", "slots", "t", "useLocale", "transformHours", "in", "isNaN", "val", "pad", "convert24to12", "out", "extractInteger", "convert12to24", "clamp", "useProxiedModel", "undefined", "transformMinutesOrSeconds", "onHourFieldKeydown", "e", "includes", "key", "preventDefault", "stopPropagation", "current", "togglePeriod", "incrementHour", "onMinuteFieldKeydown", "incrementMinuteOrSecond", "onSecondFieldKeydown", "createInputInterceptor", "valueTransformOut", "compare", "apply", "inputElement", "target", "existingTxt", "selectionStart", "selectionEnd", "potentialNewInputVal", "slice", "length", "trim", "startsWith", "substring", "setSelectionRange", "maxValue", "potentialNewNumber", "hourInputRef", "ref", "minuteInputRef", "secondInputRef", "watch", "_", "old", "blur", "hourInputFilter", "minuteInputFilter", "secondInputFilter", "useRender", "_createElementVNode", "_normalizeClass", "_createVNode", "VTimePickerField", "onFocus", "_createTextVNode", "VBtn", "onClick", "rangeHours24", "createRange", "rangeHours12am", "rangeHours12pm", "map", "v", "range60", "makeVTimePickerProps", "propsFactory", "allowedHours", "Function", "Array", "allowedMinutes", "allowedSeconds", "disabled", "Boolean", "format", "type", "String", "default", "max", "min", "viewMode", "period", "validator", "includes", "modelValue", "readonly", "scrollable", "useSeconds", "variant", "omit", "makeVPickerProps", "title", "makeDensityProps", "VTimePicker", "genericComponent", "name", "props", "emits", "val", "setup", "_ref", "emit", "slots", "t", "useLocale", "densityClasses", "useDensity", "inputHour", "ref", "inputMinute", "inputSecond", "lazyInputHour", "lazyInputMinute", "lazyInputSecond", "useProxiedModel", "controlsRef", "clockRef", "isAllowedHourCb", "computed", "cb", "minHour", "Number", "split", "maxHour", "isAllowedMinuteCb", "isHourAllowed", "value", "minMinute", "maxMinute", "minTime", "maxTime", "time", "isAllowedSecondCb", "isMinuteAllowed", "minSecond", "maxSecond", "isAmPm", "shouldClear", "toRef", "emitValue", "genValue", "watch", "setPeriod", "setInputData", "old", "onMounted", "pad", "Date", "getHours", "getMinutes", "getSeconds", "hour", "minute", "second", "trim", "toLowerCase", "match", "convert12to24", "parseInt", "firstAllowed", "allowedFn", "range", "first", "find", "length", "newHour", "onInput", "onChange", "emitChange", "useRender", "pickerProps", "VPicker", "filterProps", "timePickerControlsProps", "VTimePickerControls", "timePickerClockProps", "VTimePickerClock", "_createVNode", "_mergeProps", "undefined", "class", "hideHeader", "style", "_createElementVNode", "header", "convert24to12", "actions", "makeVTreeviewGroupProps", "propsFactory", "omit", "makeVListGroupProps", "collapseIcon", "expandIcon", "VTreeviewGroup", "genericComponent", "name", "props", "setup", "_ref", "slots", "vListGroupRef", "ref", "toggleIcon", "computed", "value", "isOpen", "activatorDefaults", "VTreeviewItem", "prependIcon", "undefined", "appendIcon", "useRender", "listGroupProps", "VListGroup", "filterProps", "_createVNode", "_mergeProps", "class", "activator", "slotProps", "_createElementVNode", "_Fragment", "VDefaultsProvider", "default", "VTreeviewSymbol", "Symbol", "for", "makeVTreeviewItemProps", "propsFactory", "loading", "Boolean", "hideActions", "hasCustomPrepend", "indentLines", "Array", "toggleIcon", "IconValue", "makeVListItemProps", "slim", "VTreeviewItem", "genericComponent", "name", "props", "emits", "toggleExpand", "value", "setup", "_ref", "slots", "emit", "visibleIds", "inject", "VTreeviewSymbol", "ref", "vListItemRef", "isActivatableGroupActivator", "computed", "root", "activatable", "isGroupActivator", "vListItemRefIsClickable", "link", "isClickable", "list", "disabled", "isFiltered", "has", "toRaw", "id", "activateGroupActivator", "e", "activate", "isActivated", "onClickAction", "preventDefault", "stopPropagation", "useRender", "listItemProps", "VListItem", "filterProps", "hasPrepend", "prepend", "prependIcon", "prependAvatar", "_createVNode", "_mergeProps", "undefined", "class", "slotProps", "_createElementVNode", "_Fragment", "length", "map", "type", "_normalizeClass", "VListItemAction", "default", "toggle", "VBtn", "loader", "VProgressCircular", "VDefaultsProvider", "density", "icon", "variant", "indeterminate", "size", "width", "onClick", "VAvatar", "VIcon", "image", "appendAvatar", "appendIcon", "start", "forwardRefs", "makeVTreeviewChildrenProps", "propsFactory", "fluid", "Boolean", "disabled", "loadChildren", "Function", "loadingIcon", "type", "String", "default", "items", "Array", "openOnClick", "undefined", "indeterminateIcon", "IconValue", "falseIcon", "trueIcon", "returnObject", "activatable", "selectable", "selectedColor", "selectStrategy", "Object", "index", "Number", "isLastGroup", "separateRoots", "parentIndentLines", "indentLinesVariant", "path", "pick", "makeVTreeviewItemProps", "makeDensityProps", "VTreeviewChildren", "genericComponent", "name", "props", "setup", "_ref", "slots", "isLoading", "reactive", "Set", "activatorItems", "ref", "isClickOnOpen", "computed", "checkChildren", "item", "length", "children", "add", "value", "raw", "delete", "selectItem", "select", "isSelected", "map", "itemProps", "loading", "has", "nextItemHasChildren", "at", "depth", "isLast", "treeItemProps", "isFirst", "hideAction", "hideActions", "indentLines", "getIndentLines", "leafLinks", "variant", "slotsWithItem", "toggle", "slotProps", "internalItem", "prepend", "_createElementVNode", "_Fragment", "includes", "_createVNode", "VListItemAction", "VCheckboxBtn", "density", "isIndeterminate", "v", "e", "stopPropagation", "key", "append", "title", "subtitle", "treeviewGroupProps", "VTreeviewGroup", "filterProps", "treeviewChildrenProps", "footerProps", "footer", "_mergeProps", "activator", "_ref2", "activatorProps", "listItemProps", "node", "onToggleExpand", "onClick", "renderSlot", "header", "VTreeviewItem", "el", "divider", "VDivider", "subheader", "VListSubheader", "leaf", "toRaw", "flatten", "items", "flat", "arguments", "length", "undefined", "item", "push", "children", "makeVTreeviewProps", "propsFactory", "openAll", "Boolean", "indentLines", "String", "search", "hideNoData", "noDataText", "type", "default", "makeFilterProps", "filterKeys", "omit", "makeVTreeviewChildrenProps", "makeVListProps", "collapseIcon", "expandIcon", "slim", "modelValue", "Array", "VTreeview", "genericComponent", "name", "props", "emits", "val", "value", "setup", "_ref", "slots", "emit", "t", "useLocale", "useListItems", "activeColor", "toRef", "baseColor", "color", "activated", "useProxiedModel", "_selected", "selected", "computed", "get", "set", "vListRef", "ref", "opened", "flatItems", "filteredItems", "useFilter", "visibleIds", "getPath", "Set", "flatMap", "itemVal", "returnObject", "raw", "getChildren", "map", "toRaw", "id", "arr", "queue", "slice", "child", "shift", "ids", "i", "concat", "provide", "VTreeviewSymbol", "provideDefaults", "VTreeviewGroup", "VTreeviewItem", "activeClass", "density", "disabled", "lines", "variant", "useRender", "listProps", "VList", "filterProps", "treeviewChildrenProps", "VTreeviewChildren", "indentLinesVariant", "_createVNode", "_mergeProps", "fluid", "class", "style", "$event", "size", "VListItem", "VValidation", "genericComponent", "name", "props", "makeValidationProps", "emits", "value", "setup", "_ref", "slots", "validation", "useValidation", "default"] + "sources": ["../../vuetify/src/components/VAutocomplete/VAutocomplete.tsx", "../../vuetify/src/components/VBadge/VBadge.tsx", "../../vuetify/src/components/VBanner/VBanner.tsx", "../../vuetify/src/components/VBanner/VBannerActions.tsx", "../../vuetify/src/components/VBanner/VBannerText.ts", "../../vuetify/src/components/VBottomSheet/VBottomSheet.tsx", "../../vuetify/src/components/VCalendar/VCalendar.tsx", "../../vuetify/src/labs/VIconBtn/VIconBtn.tsx", "../../vuetify/src/components/VCalendar/util/dateTimeUtils.ts", "../../vuetify/src/components/VCalendar/util/timestamp.ts", "../../vuetify/src/components/VCalendar/composables/times.ts", "../../vuetify/src/components/VCalendar/composables/calendarBase.ts", "../../vuetify/src/components/VCalendar/composables/calendarWithIntervals.ts", "../../vuetify/src/components/VCalendar/VCalendarDaily.tsx", "../../vuetify/src/components/VCalendar/util/parser.ts", "../../vuetify/src/components/VCalendar/VCalendarCategory.tsx", "../../vuetify/src/components/VCalendar/VCalendarWeekly.tsx", "../../vuetify/src/components/VCalendar/composables/calendarWithEvents.tsx", "../../vuetify/src/components/VCalendar/modes/common.ts", "../../vuetify/src/components/VCalendar/modes/column.ts", "../../vuetify/src/components/VCalendar/modes/stack.ts", "../../vuetify/src/components/VCalendar/modes/index.ts", "../../vuetify/src/components/VCalendar/util/events.ts", "../../vuetify/src/components/VCarousel/VCarousel.tsx", "../../vuetify/src/components/VWindow/VWindow.tsx", "../../vuetify/src/components/VWindow/VWindowItem.tsx", "../../vuetify/src/components/VCarousel/VCarouselItem.tsx", "../../vuetify/src/components/VCode/index.ts", "../../vuetify/src/components/VColorPicker/VColorPicker.tsx", "../../vuetify/src/components/VColorPicker/VColorPickerCanvas.tsx", "../../vuetify/src/components/VColorPicker/VColorPickerEdit.tsx", "../../vuetify/src/components/VColorPicker/util/index.ts", "../../vuetify/src/components/VColorPicker/VColorPickerPreview.tsx", "../../vuetify/src/components/VColorPicker/VColorPickerSwatches.tsx", "../../vuetify/src/util/colors.ts", "../../vuetify/src/labs/VPicker/VPicker.tsx", "../../vuetify/src/labs/VPicker/VPickerTitle.ts", "../../vuetify/src/components/VConfirmEdit/VConfirmEdit.tsx", "../../vuetify/src/components/VDataIterator/composables/items.ts", "../../vuetify/src/components/VDataIterator/VDataIterator.tsx", "../../vuetify/src/components/VDatePicker/VDatePicker.tsx", "../../vuetify/src/components/VDatePicker/VDatePickerControls.tsx", "../../vuetify/src/components/VDatePicker/VDatePickerHeader.tsx", "../../vuetify/src/components/VDatePicker/VDatePickerMonth.tsx", "../../vuetify/src/composables/calendar.ts", "../../vuetify/src/components/VDatePicker/VDatePickerMonths.tsx", "../../vuetify/src/components/VDatePicker/VDatePickerYears.tsx", "../../vuetify/src/components/VEmptyState/VEmptyState.tsx", "../../vuetify/src/components/VFab/VFab.tsx", "../../vuetify/src/components/VFooter/VFooter.tsx", "../../vuetify/src/components/VHotkey/VHotkey.tsx", "../../vuetify/src/components/VKbd/index.ts", "../../vuetify/src/components/VKbd/VKbd.tsx", "../../vuetify/src/components/VHover/VHover.tsx", "../../vuetify/src/components/VInfiniteScroll/VInfiniteScroll.tsx", "../../vuetify/src/components/VItemGroup/VItemGroup.tsx", "../../vuetify/src/components/VItemGroup/VItem.tsx", "../../vuetify/src/components/VLayout/VLayout.tsx", "../../vuetify/src/components/VLayout/VLayoutItem.tsx", "../../vuetify/src/components/VLazy/VLazy.tsx", "../../vuetify/src/components/VLocaleProvider/VLocaleProvider.tsx", "../../vuetify/src/components/VNoSsr/VNoSsr.tsx", "../../vuetify/src/components/VNumberInput/VNumberInput.tsx", "../../vuetify/src/components/VNumberInput/hold.ts", "../../vuetify/src/components/VOtpInput/VOtpInput.tsx", "../../vuetify/src/components/VParallax/VParallax.tsx", "../../vuetify/src/components/VRadio/VRadio.tsx", "../../vuetify/src/components/VRadioGroup/VRadioGroup.tsx", "../../vuetify/src/components/VRangeSlider/VRangeSlider.tsx", "../../vuetify/src/components/VRating/VRating.tsx", "../../vuetify/src/components/VSkeletonLoader/VSkeletonLoader.tsx", "../../vuetify/src/components/VSlideGroup/VSlideGroupItem.tsx", "../../vuetify/src/components/VSnackbarQueue/VSnackbarQueue.tsx", "../../vuetify/src/components/VSparkline/util/line.ts", "../../vuetify/src/components/VSparkline/VBarline.tsx", "../../vuetify/src/components/VSparkline/util/path.ts", "../../vuetify/src/components/VSparkline/VTrendline.tsx", "../../vuetify/src/components/VSparkline/VSparkline.tsx", "../../vuetify/src/components/VSpeedDial/VSpeedDial.tsx", "../../vuetify/src/components/VStepper/VStepper.tsx", "../../vuetify/src/components/VStepper/shared.ts", "../../vuetify/src/components/VStepper/VStepperActions.tsx", "../../vuetify/src/components/VStepper/VStepperHeader.ts", "../../vuetify/src/components/VStepper/VStepperItem.tsx", "../../vuetify/src/components/VStepper/VStepperWindow.tsx", "../../vuetify/src/components/VStepper/VStepperWindowItem.tsx", "../../vuetify/src/components/VSystemBar/VSystemBar.tsx", "../../vuetify/src/components/VTabs/VTab.tsx", "../../vuetify/src/components/VTabs/shared.ts", "../../vuetify/src/components/VTabs/VTabs.tsx", "../../vuetify/src/components/VTabs/VTabsWindow.tsx", "../../vuetify/src/components/VTabs/VTabsWindowItem.tsx", "../../vuetify/src/components/VThemeProvider/VThemeProvider.tsx", "../../vuetify/src/components/VTimeline/VTimeline.tsx", "../../vuetify/src/components/VTimeline/VTimelineDivider.tsx", "../../vuetify/src/components/VTimeline/VTimelineItem.tsx", "../../vuetify/src/components/VTimePicker/VTimePicker.tsx", "../../vuetify/src/components/VTimePicker/VTimePickerClock.tsx", "../../vuetify/src/components/VTimePicker/VTimePickerControls.tsx", "../../vuetify/src/components/VTimePicker/VTimePickerField.tsx", "../../vuetify/src/components/VTimePicker/util.ts", "../../vuetify/src/components/VTreeview/VTreeviewGroup.tsx", "../../vuetify/src/components/VTreeview/VTreeviewItem.tsx", "../../vuetify/src/components/VTreeview/shared.ts", "../../vuetify/src/components/VTreeview/VTreeviewChildren.tsx", "../../vuetify/src/components/VTreeview/VTreeview.tsx", "../../vuetify/src/components/VValidation/VValidation.tsx"], + "sourcesContent": ["// Styles\nimport './VAutocomplete.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDivider } from '@/components/VDivider'\nimport { VIcon } from '@/components/VIcon'\nimport { useInputIcon } from '@/components/VInput/InputIcon'\nimport { VList, VListItem, VListSubheader } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { makeSelectProps } from '@/components/VSelect/VSelect'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from '../VSelect/useScrolling'\nimport { useTextColor } from '@/composables/color'\nimport { highlightResult, makeFilterProps, useFilter } from '@/composables/filter'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { useMenuActivator } from '@/composables/menuActivator'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, toRef, watch } from 'vue'\nimport {\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n genericComponent,\n IN_BROWSER,\n matchesSelector,\n noop,\n omit,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val = [T] extends [Primitive]\n ? T\n : (ReturnObject extends true ? T : any)\n\ntype Value =\n Multiple extends true\n ? readonly Val[]\n : Val | null\n\nexport const makeVAutocompleteProps = propsFactory({\n autoSelectFirst: {\n type: [Boolean, String] as PropType,\n },\n clearOnSelect: Boolean,\n search: String,\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty']),\n}, 'VAutocomplete')\n\ntype ItemType = T extends readonly (infer U)[] ? U : never\n\nexport const VAutocomplete = genericComponent,\n ReturnObject extends boolean = false,\n Multiple extends boolean = false,\n V extends Value = Value\n>(\n props: {\n items?: T\n itemTitle?: SelectItemKey>\n itemValue?: SelectItemKey>\n itemProps?: SelectItemKey>\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V | null\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: Omit & {\n item: { item: ListItem, index: number, props: Record }\n chip: { item: ListItem, index: number, props: Record }\n selection: { item: ListItem, index: number }\n subheader: { props: Record, index: number }\n divider: { props: Record, index: number }\n 'prepend-item': never\n 'append-item': never\n 'no-data': never\n }\n) => GenericProps>()({\n name: 'VAutocomplete',\n\n props: makeVAutocompleteProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:search': (value: any) => true,\n 'update:modelValue': (value: any) => true,\n 'update:menu': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\n const isFocused = shallowRef(false)\n const isPristine = shallowRef(true)\n const listHasFocus = shallowRef(false)\n const vMenuRef = ref()\n const vVirtualScrollRef = ref()\n const selectionIndex = shallowRef(-1)\n const _searchLock = shallowRef(null)\n const { items, transformIn, transformOut } = useItems(props)\n const { textColorClasses, textColorStyles } = useTextColor(() => vTextFieldRef.value?.color)\n const { InputIcon } = useInputIcon(props)\n const search = useProxiedModel(props, 'search', '')\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(v === null ? [null] : wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function' ? props.counterValue(model.value)\n : typeof props.counterValue === 'number' ? props.counterValue\n : model.value.length\n })\n const form = useForm(props)\n const { filteredItems, getMatches } = useFilter(\n props,\n items,\n () => _searchLock.value ?? (isPristine.value ? '' : search.value))\n\n const displayItems = computed(() => {\n if (props.hideSelected && _searchLock.value === null) {\n return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value))\n }\n return filteredItems.value\n })\n\n const closableChips = toRef(() => props.closableChips && !form.isReadonly.value && !form.isDisabled.value)\n const hasChips = computed(() => !!(props.chips || slots.chip))\n const hasSelectionSlot = computed(() => hasChips.value || !!slots.selection)\n\n const selectedValues = computed(() => model.value.map(selection => selection.props.value))\n\n const firstSelectableItem = computed(() => displayItems.value.find(x => x.type === 'item' && !x.props.disabled))\n\n const highlightFirst = computed(() => {\n const selectFirst = props.autoSelectFirst === true ||\n (props.autoSelectFirst === 'exact' && search.value === firstSelectableItem.value?.title)\n return selectFirst &&\n displayItems.value.length > 0 &&\n !isPristine.value &&\n !listHasFocus.value\n })\n\n const menuDisabled = computed(() => (\n (props.hideNoData && !displayItems.value.length) ||\n form.isReadonly.value || form.isDisabled.value\n ))\n const _menu = useProxiedModel(props, 'menu')\n const menu = computed({\n get: () => _menu.value,\n set: v => {\n if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return\n if (v && menuDisabled.value) return\n _menu.value = v\n },\n })\n\n const { menuId, ariaExpanded, ariaControls } = useMenuActivator(props, menu)\n\n const listRef = ref()\n const listEvents = useScrolling(listRef, vTextFieldRef)\n function onClear (e: MouseEvent) {\n if (props.openOnClear) {\n menu.value = true\n }\n\n search.value = ''\n }\n function onMousedownControl () {\n if (menuDisabled.value) return\n\n menu.value = true\n }\n function onMousedownMenuIcon (e: MouseEvent) {\n if (menuDisabled.value) return\n\n if (isFocused.value) {\n e.preventDefault()\n e.stopPropagation()\n }\n menu.value = !menu.value\n }\n function onListKeydown (e: KeyboardEvent) {\n if (checkPrintable(e) || e.key === 'Backspace') {\n vTextFieldRef.value?.focus()\n }\n }\n // eslint-disable-next-line complexity\n function onKeydown (e: KeyboardEvent) {\n if (form.isReadonly.value) return\n\n const selectionStart = vTextFieldRef.value?.selectionStart\n const length = model.value.length\n\n if (['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown'].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape'].includes(e.key)) {\n menu.value = false\n }\n\n if (\n highlightFirst.value &&\n ['Enter', 'Tab'].includes(e.key) &&\n firstSelectableItem.value &&\n !model.value.some(({ value }) => value === firstSelectableItem.value!.value)\n ) {\n select(firstSelectableItem.value)\n }\n\n if (e.key === 'ArrowDown' && highlightFirst.value) {\n listRef.value?.focus('next')\n }\n\n if (['Backspace', 'Delete'].includes(e.key)) {\n if (\n !props.multiple &&\n hasSelectionSlot.value &&\n model.value.length > 0 &&\n !search.value\n ) return select(model.value[0], false)\n\n if (~selectionIndex.value) {\n e.preventDefault()\n const originalSelectionIndex = selectionIndex.value\n select(model.value[selectionIndex.value], false)\n\n selectionIndex.value = originalSelectionIndex >= length - 1 ? (length - 2) : originalSelectionIndex\n } else if (e.key === 'Backspace' && !search.value) {\n selectionIndex.value = length - 1\n }\n\n return\n }\n\n if (!props.multiple) return\n\n if (e.key === 'ArrowLeft') {\n if (selectionIndex.value < 0 && selectionStart && selectionStart > 0) return\n\n const prev = selectionIndex.value > -1\n ? selectionIndex.value - 1\n : length - 1\n\n if (model.value[prev]) {\n selectionIndex.value = prev\n } else {\n const searchLength = search.value?.length ?? null\n selectionIndex.value = -1\n vTextFieldRef.value?.setSelectionRange(searchLength, searchLength)\n }\n } else if (e.key === 'ArrowRight') {\n if (selectionIndex.value < 0) return\n\n const next = selectionIndex.value + 1\n\n if (model.value[next]) {\n selectionIndex.value = next\n } else {\n selectionIndex.value = -1\n vTextFieldRef.value?.setSelectionRange(0, 0)\n }\n } else if (~selectionIndex.value && checkPrintable(e)) {\n selectionIndex.value = -1\n }\n }\n\n function onChange (e: Event) {\n if (matchesSelector(vTextFieldRef.value, ':autofill') || matchesSelector(vTextFieldRef.value, ':-webkit-autofill')) {\n const item = items.value.find(item => item.title === (e.target as HTMLInputElement).value)\n if (item) {\n select(item)\n }\n }\n }\n\n function onAfterEnter () {\n if (props.eager) {\n vVirtualScrollRef.value?.calculateVisibleItems()\n }\n }\n function onAfterLeave () {\n if (isFocused.value) {\n isPristine.value = true\n vTextFieldRef.value?.focus()\n }\n _searchLock.value = null\n }\n\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n setTimeout(() => {\n listHasFocus.value = true\n })\n }\n function onFocusout (e: FocusEvent) {\n listHasFocus.value = false\n }\n function onUpdateModelValue (v: any) {\n if (v == null || (v === '' && !props.multiple && !hasSelectionSlot.value)) model.value = []\n }\n\n const isSelecting = shallowRef(false)\n\n /** @param set - null means toggle */\n function select (item: ListItem | undefined, set: boolean | null = true) {\n if (!item || item.props.disabled) return\n\n if (props.multiple) {\n const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value))\n const add = set == null ? !~index : set\n\n if (~index) {\n const value = add ? [...model.value, item] : [...model.value]\n value.splice(index, 1)\n model.value = value\n } else if (add) {\n model.value = [...model.value, item]\n }\n\n if (props.clearOnSelect) {\n search.value = ''\n }\n } else {\n const add = set !== false\n model.value = add ? [item] : []\n _searchLock.value = isPristine.value ? '' : (search.value ?? '')\n search.value = add && !hasSelectionSlot.value ? item.title : ''\n\n // watch for search watcher to trigger\n nextTick(() => {\n menu.value = false\n isPristine.value = true\n })\n }\n }\n\n watch(isFocused, (val, oldVal) => {\n if (val === oldVal) return\n\n if (val) {\n isSelecting.value = true\n search.value = (props.multiple || hasSelectionSlot.value) ? '' : String(model.value.at(-1)?.props.title ?? '')\n isPristine.value = true\n\n nextTick(() => isSelecting.value = false)\n } else {\n if (!props.multiple && search.value == null) model.value = []\n menu.value = false\n if (!isPristine.value && search.value) {\n _searchLock.value = search.value\n }\n search.value = ''\n selectionIndex.value = -1\n }\n })\n\n watch(search, val => {\n if (!isFocused.value || isSelecting.value) return\n\n if (val) menu.value = true\n\n isPristine.value = !val\n })\n\n watch(menu, val => {\n if (!props.hideSelected && val && model.value.length && isPristine.value) {\n const index = displayItems.value.findIndex(\n item => model.value.some(s => item.value === s.value)\n )\n IN_BROWSER && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n if (val) _searchLock.value = null\n })\n\n watch(items, (newVal, oldVal) => {\n if (menu.value) return\n\n if (isFocused.value && !oldVal.length && newVal.length) {\n menu.value = true\n }\n })\n\n useRender(() => {\n const hasList = !!(\n (!props.hideNoData || displayItems.value.length) ||\n slots['prepend-item'] ||\n slots['append-item'] ||\n slots['no-data']\n )\n const isDirty = model.value.length > 0\n const textFieldProps = VTextField.filterProps(props)\n\n return (\n -1,\n },\n props.class,\n ]}\n style={ props.style }\n readonly={ form.isReadonly.value }\n placeholder={ isDirty ? undefined : props.placeholder }\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onKeydown={ onKeydown }\n aria-expanded={ ariaExpanded.value }\n aria-controls={ ariaControls.value }\n >\n {{\n ...slots,\n default: ({ id }) => (\n <>\n \n { hasList && (\n e.preventDefault() }\n onKeydown={ onListKeydown }\n onFocusin={ onFocusin }\n onFocusout={ onFocusout }\n tabindex=\"-1\"\n selectable\n aria-live=\"polite\"\n aria-labelledby={ `${id.value}-label` }\n aria-multiselectable={ props.multiple }\n color={ props.itemColor ?? props.color }\n { ...listEvents }\n { ...props.listProps }\n >\n { slots['prepend-item']?.() }\n\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n \n ))}\n\n \n { ({ item, index, itemRef }) => {\n const itemProps = mergeProps(item.props, {\n ref: itemRef,\n key: item.value,\n active: (highlightFirst.value && item === firstSelectableItem.value) ? true : undefined,\n onClick: () => select(item, null),\n 'aria-posinset': index + 1,\n 'aria-setsize': displayItems.value.length,\n })\n\n if (item.type === 'divider') {\n return slots.divider?.({ props: item.raw, index }) ?? (\n \n )\n }\n\n if (item.type === 'subheader') {\n return slots.subheader?.({ props: item.raw, index }) ?? (\n \n )\n }\n\n return slots.item?.({\n item,\n index,\n props: itemProps,\n }) ?? (\n \n {{\n prepend: ({ isSelected }) => (\n <>\n { props.multiple && !props.hideSelected ? (\n event.preventDefault() }\n />\n ) : undefined }\n\n { item.props.prependAvatar && (\n \n )}\n\n { item.props.prependIcon && (\n \n )}\n \n ),\n title: () => {\n return isPristine.value\n ? item.title\n : highlightResult('v-autocomplete', item.title, getMatches(item)?.title)\n },\n }}\n \n )\n }}\n \n\n { slots['append-item']?.() }\n \n )}\n \n\n { model.value.map((item, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(item, false)\n }\n\n const slotProps = mergeProps(VChip.filterProps(item.props), {\n 'onClick:close': onChipClose,\n onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter' && e.key !== ' ') return\n\n e.preventDefault()\n e.stopPropagation()\n\n onChipClose(e)\n },\n onMousedown (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n },\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n })\n\n const hasSlot = hasChips.value ? !!slots.chip : !!slots.selection\n const slotContent = hasSlot\n ? ensureValidVNode(\n hasChips.value\n ? slots.chip!({ item, index, props: slotProps })\n : slots.selection!({ item, index })\n )\n : undefined\n\n if (hasSlot && !slotContent) return undefined\n\n return (\n \n { hasChips.value ? (\n !slots.chip ? (\n \n ) : (\n \n { slotContent }\n \n )\n ) : (\n slotContent ?? (\n \n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n ,\n )}\n \n )\n )}\n
\n )\n })}\n \n ),\n 'append-inner': (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { props.menuIcon ? (\n \n ) : undefined }\n { props.appendInnerIcon && (\n \n )}\n \n ),\n }}\n
\n )\n })\n\n return forwardRefs({\n isFocused,\n isPristine,\n menu,\n search,\n filteredItems,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VAutocomplete = InstanceType\n", "// Styles\nimport './VBadge.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, useTheme } from '@/composables/theme'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { genericComponent, pickWithRest, propsFactory, useRender } from '@/util'\n\nexport type VBadgeSlots = {\n default: never\n badge: never\n}\n\nexport const makeVBadgeProps = propsFactory({\n bordered: Boolean,\n color: String,\n content: [Number, String],\n dot: Boolean,\n floating: Boolean,\n icon: IconValue,\n inline: Boolean,\n label: {\n type: String,\n default: '$vuetify.badge',\n },\n max: [Number, String],\n modelValue: {\n type: Boolean,\n default: true,\n },\n offsetX: [Number, String],\n offsetY: [Number, String],\n textColor: String,\n\n ...makeComponentProps(),\n ...makeLocationProps({ location: 'top end' } as const),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeTransitionProps({ transition: 'scale-rotate-transition' }),\n ...makeDimensionProps(),\n}, 'VBadge')\n\nexport const VBadge = genericComponent()({\n name: 'VBadge',\n\n inheritAttrs: false,\n\n props: makeVBadgeProps(),\n\n setup (props, ctx) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n const { roundedClasses } = useRounded(props)\n const { t } = useLocale()\n const { textColorClasses, textColorStyles } = useTextColor(() => props.textColor)\n const { themeClasses } = useTheme()\n\n const { locationStyles } = useLocation(props, true, side => {\n const base = props.floating\n ? (props.dot ? 2 : 4)\n : (props.dot ? 8 : 12)\n\n return base + (\n ['top', 'bottom'].includes(side) ? Number(props.offsetY ?? 0)\n : ['left', 'right'].includes(side) ? Number(props.offsetX ?? 0)\n : 0\n )\n })\n\n const { dimensionStyles } = useDimension(props)\n\n useRender(() => {\n const value = Number(props.content)\n const content = (!props.max || isNaN(value)) ? props.content\n : value <= Number(props.max) ? value\n : `${props.max}+`\n\n const [badgeAttrs, attrs] = pickWithRest(ctx.attrs as Record, [\n 'aria-atomic',\n 'aria-label',\n 'aria-live',\n 'role',\n 'title',\n ])\n\n return (\n \n
\n { ctx.slots.default?.() }\n\n \n \n {\n props.dot ? undefined\n : ctx.slots.badge ? ctx.slots.badge?.()\n : props.icon ? \n : content\n }\n \n \n
\n \n )\n })\n\n return {}\n },\n})\n\nexport type VBadge = InstanceType\n", "// Styles\nimport './VBanner.sass'\n\n// Components\nimport { VBannerActions } from './VBannerActions'\nimport { VBannerText } from './VBannerText'\nimport { VAvatar } from '@/components/VAvatar'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { IconValue } from '@/composables/icons'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type VBannerSlots = {\n default: never\n prepend: never\n text: never\n actions: never\n}\n\nexport const makeVBannerProps = propsFactory({\n avatar: String,\n bgColor: String,\n color: String,\n icon: IconValue,\n lines: String as PropType<'one' | 'two' | 'three'>,\n stacked: Boolean,\n sticky: Boolean,\n text: String,\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeDisplayProps({ mobile: null }),\n ...makeElevationProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VBanner')\n\nexport const VBanner = genericComponent()({\n name: 'VBanner',\n\n props: makeVBannerProps(),\n\n setup (props, { slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.bgColor)\n const { borderClasses } = useBorder(props)\n const { densityClasses } = useDensity(props)\n const { displayClasses, mobile } = useDisplay(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n\n const { themeClasses } = provideTheme(props)\n\n const color = toRef(() => props.color)\n const density = toRef(() => props.density)\n\n provideDefaults({ VBannerActions: { color, density } })\n\n useRender(() => {\n const hasText = !!(props.text || slots.text)\n const hasPrependMedia = !!(props.avatar || props.icon)\n const hasPrepend = !!(hasPrependMedia || slots.prepend)\n\n return (\n \n { hasPrepend && (\n
\n { !slots.prepend ? (\n \n ) : (\n \n )}\n
\n )}\n\n
\n { hasText && (\n \n { slots.text?.() ?? props.text }\n \n )}\n\n { slots.default?.() }\n
\n\n { slots.actions && (\n \n )}\n \n )\n })\n },\n})\n\nexport type VBanner = InstanceType\n", "// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVBannerActionsProps = propsFactory({\n color: String,\n density: String,\n\n ...makeComponentProps(),\n}, 'VBannerActions')\n\nexport const VBannerActions = genericComponent()({\n name: 'VBannerActions',\n\n props: makeVBannerActionsProps(),\n\n setup (props, { slots }) {\n provideDefaults({\n VBtn: {\n color: props.color,\n density: props.density,\n slim: true,\n variant: 'text',\n },\n })\n\n useRender(() => (\n \n { slots.default?.() }\n \n ))\n\n return {}\n },\n})\n\nexport type VBannerActions = InstanceType\n", "// Utilities\nimport { createSimpleFunctional } from '@/util'\n\nexport const VBannerText = createSimpleFunctional('v-banner-text')\n\nexport type VBannerText = InstanceType\n", "// Styles\nimport './VBottomSheet.sass'\n\n// Components\nimport { makeVDialogProps, VDialog } from '@/components/VDialog/VDialog'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\n\nexport const makeVBottomSheetProps = propsFactory({\n inset: Boolean,\n\n ...makeVDialogProps({\n transition: 'bottom-sheet-transition',\n }),\n}, 'VBottomSheet')\n\nexport const VBottomSheet = genericComponent()({\n name: 'VBottomSheet',\n\n props: makeVBottomSheetProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n\n useRender(() => {\n const dialogProps = VDialog.filterProps(props)\n\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VBottomSheet = InstanceType\n", "// Styles\nimport './VCalendarCategory.sass'\nimport './VCalendarDaily.sass'\nimport './VCalendarWeekly.sass'\n\n// Components\nimport { VCalendarCategory } from './VCalendarCategory'\nimport { VCalendarDaily } from './VCalendarDaily'\nimport { VCalendarWeekly } from './VCalendarWeekly'\n\n// Composables\nimport { makeCalendarBaseProps } from './composables/calendarBase'\nimport { makeCalendarWithEventsProps, useCalendarWithEvents } from './composables/calendarWithEvents'\nimport { forwardRefs } from '@/composables/forwardRefs'\n\n// Directives\nimport vResize from '@/directives/resize'\n\n// Utilities\nimport { computed, onMounted, onUpdated, ref, watch } from 'vue'\nimport { getParsedCategories } from './util/parser'\nimport {\n copyTimestamp,\n DAY_MIN,\n DAYS_IN_MONTH_MAX,\n DAYS_IN_WEEK,\n getEndOfMonth,\n getStartOfMonth,\n nextDay,\n prevDay,\n relativeDays,\n timestampToDate,\n updateFormatted,\n updateRelative,\n updateWeekday,\n validateTimestamp,\n} from './util/timestamp'\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type {\n CalendarCategory, CalendarCategoryTextFunction,\n CalendarDayBodySlotScope,\n CalendarDaySlotScope, CalendarEvent, CalendarEventParsed,\n CalendarTimestamp,\n} from './types'\nimport type { EventProp, GenericProps, JSXComponent } from '@/util'\n\n// Types\ninterface VCalendarRenderProps {\n start: CalendarTimestamp\n end: CalendarTimestamp\n component: JSXComponent & { filterProps: (props: T) => Partial }\n maxDays: number\n categories: CalendarCategory[]\n}\n\ninterface EventSlotScope {\n event: CalendarEvent\n outside: boolean\n singline: boolean\n overlapsNoon: boolean\n formatTime: (withTime: CalendarTimestamp, ampm: boolean) => string\n timeSummary: () => string\n eventSummary: () => JSX.Element\n eventParsed: CalendarEventParsed\n day: CalendarDaySlotScope\n start: boolean\n end: boolean\n timed: boolean\n}\n\ninterface DaySlotScope extends CalendarTimestamp {\n outside: boolean\n index: number\n week: CalendarTimestamp[]\n}\n\ninterface DayHeaderSlotScope extends CalendarTimestamp {\n index: number\n week: CalendarTimestamp[]\n}\n\ninterface CalendarDayCategorySlotScope extends CalendarDayBodySlotScope {\n category: CalendarCategory\n}\n\nexport const VCalendar = genericComponent}:date`]: EventProp<[Event, CalendarTimestamp]>\n [key: `on${Capitalize}:dayCategory`]: EventProp<[Event, CalendarDayCategorySlotScope]>\n [key: `on${Capitalize}:day`]: EventProp<[Event, CalendarDayBodySlotScope]>\n [key: `on${Capitalize}:event`]: EventProp<[Event, EventSlotScope]>\n [key: `on${Capitalize}:interval`]: EventProp<[Event, CalendarTimestamp]>\n [key: `on${Capitalize}:more`]: EventProp<[Event, CalendarDaySlotScope]>\n [key: `on${Capitalize}:timeCategory`]: EventProp<[Event, CalendarDayCategorySlotScope]>\n [key: `on${Capitalize}:time`]: EventProp<[Event, CalendarDayBodySlotScope]>\n },\n slots: {\n 'category': CalendarDayCategorySlotScope\n 'day': DaySlotScope\n 'day-body': CalendarDayBodySlotScope\n 'day-header': DayHeaderSlotScope\n 'day-label': CalendarTimestamp\n 'day-label-header': CalendarTimestamp\n 'day-month': CalendarTimestamp\n 'event': EventSlotScope\n 'interval': CalendarDayCategorySlotScope\n 'interval-header': never\n },\n) => GenericProps>()({\n name: 'VCalendar',\n\n directives: { vResize },\n\n props: {\n modelValue: {\n type: [String, Number, Date] as PropType,\n validate: validateTimestamp,\n },\n categoryDays: {\n type: [Number, String],\n default: 1,\n validate: (x: any) => isFinite(parseInt(x)) && parseInt(x) > 0,\n },\n categories: {\n type: [Array, String] as PropType,\n default: '',\n },\n categoryText: {\n type: [String, Function] as PropType,\n },\n maxDays: {\n type: Number,\n default: 7,\n },\n categoryHideDynamic: {\n type: Boolean,\n },\n categoryShowAll: {\n type: Boolean,\n },\n categoryForInvalid: {\n type: String,\n default: '',\n },\n\n ...makeCalendarBaseProps(),\n ...makeCalendarWithEventsProps(),\n },\n\n setup (props, { slots, attrs, emit }) {\n const root = ref()\n const base = useCalendarWithEvents(props, slots, attrs)\n\n const lastStart = ref(null)\n const lastEnd = ref(null)\n\n const parsedCategoryDays = computed((): number => {\n return parseInt(String(props.categoryDays)) || 1\n })\n\n const parsedCategories = computed((): CalendarCategory[] => {\n return getParsedCategories(props.categories, props.categoryText)\n })\n\n const renderProps = computed((): VCalendarRenderProps => {\n const around = base.parsedValue.value\n let component: any = null\n let maxDays = props.maxDays\n let categories = parsedCategories.value\n let start = around\n let end = around\n\n switch (props.type) {\n case 'month':\n component = VCalendarWeekly\n start = getStartOfMonth(around)\n end = getEndOfMonth(around)\n break\n case 'week':\n component = VCalendarDaily\n start = base.getStartOfWeek(around)\n end = base.getEndOfWeek(around)\n maxDays = 7\n break\n case 'day':\n component = VCalendarDaily\n maxDays = 1\n break\n case '4day':\n component = VCalendarDaily\n end = relativeDays(copyTimestamp(end), nextDay, 3)\n updateFormatted(end)\n maxDays = 4\n break\n case 'custom-weekly':\n component = VCalendarWeekly\n start = base.parsedStart.value || around\n end = base.parsedEnd.value\n break\n case 'custom-daily':\n component = VCalendarDaily\n start = base.parsedStart.value || around\n end = base.parsedEnd.value\n break\n case 'category':\n const days = parsedCategoryDays.value\n\n component = VCalendarCategory\n end = relativeDays(copyTimestamp(end), nextDay, days)\n updateFormatted(end)\n maxDays = days\n\n categories = getCategoryList(categories)\n break\n default:\n const type = props.type satisfies never\n throw new Error(`${type} is not a valid Calendar type`)\n }\n\n return { component, start, end, maxDays, categories }\n })\n\n const eventWeekdays = computed((): number[] => {\n return base.effectiveWeekdays.value\n })\n\n const categoryMode = computed((): boolean => {\n return props.type === 'category'\n })\n\n const monthLongFormatter = computed(() => {\n return base.getFormatter({\n timeZone: 'UTC', month: 'long',\n })\n })\n\n const monthShortFormatter = computed(() => {\n return base.getFormatter({\n timeZone: 'UTC', month: 'short',\n })\n })\n\n const title = computed((): string => {\n const { start, end } = renderProps.value\n const spanYears = start.year !== end.year\n const spanMonths = spanYears || start.month !== end.month\n\n if (spanYears) {\n return monthShortFormatter.value(start, true) + ' ' + start.year + ' - ' + monthShortFormatter.value(end, true) + ' ' + end.year\n }\n\n if (spanMonths) {\n return monthShortFormatter.value(start, true) + ' - ' + monthShortFormatter.value(end, true) + ' ' + end.year\n } else {\n return monthLongFormatter.value(start, false) + ' ' + start.year\n }\n })\n\n function checkChange (): void {\n const { start, end } = renderProps.value\n if (!lastStart.value || !lastEnd.value ||\n start.date !== lastStart.value.date ||\n end.date !== lastEnd.value.date) {\n lastStart.value = start\n lastEnd.value = end\n emit('change', { start, end })\n }\n }\n\n function move (amount = 1): void {\n const moved = copyTimestamp(base.parsedValue.value)\n const forward = amount > 0\n const mover = forward ? nextDay : prevDay\n const limit = forward ? DAYS_IN_MONTH_MAX : DAY_MIN\n let times = forward ? amount : -amount\n\n while (--times >= 0) {\n switch (props.type) {\n case 'month':\n moved.day = limit\n mover(moved)\n break\n case 'week':\n relativeDays(moved, mover, DAYS_IN_WEEK)\n break\n case 'day':\n relativeDays(moved, mover, 1)\n break\n case '4day':\n relativeDays(moved, mover, 4)\n break\n case 'category':\n relativeDays(moved, mover, parsedCategoryDays.value)\n break\n }\n }\n\n updateWeekday(moved)\n updateFormatted(moved)\n updateRelative(moved, base.times.now)\n\n if (props.modelValue instanceof Date) {\n emit('update:modelValue', timestampToDate(moved))\n } else if (typeof props.modelValue === 'number') {\n emit('update:modelValue', timestampToDate(moved).getTime())\n } else {\n emit('update:modelValue', moved.date)\n }\n\n emit('moved', moved)\n }\n\n function next (amount = 1): void {\n move(amount)\n }\n\n function prev (amount = 1): void {\n move(-amount)\n }\n\n function getCategoryList (categories: CalendarCategory[]): CalendarCategory[] {\n if (!base.noEvents.value) {\n const categoryMap: any = categories.reduce((map: any, category, index) => {\n if (typeof category === 'object' && category.categoryName) map[category.categoryName] = { index, count: 0 }\n else if (typeof category === 'string') map[category] = { index, count: 0 }\n return map\n }, {})\n\n if (!props.categoryHideDynamic || !props.categoryShowAll) {\n let categoryLength = categories.length\n\n base.parsedEvents.value.forEach(ev => {\n let category = ev.category\n\n if (typeof category !== 'string') {\n category = props.categoryForInvalid\n }\n\n if (!category) {\n return\n }\n\n if (category in categoryMap) {\n categoryMap[category].count++\n } else if (!props.categoryHideDynamic) {\n categoryMap[category] = {\n index: categoryLength++,\n count: 1,\n }\n }\n })\n }\n\n if (!props.categoryShowAll) {\n for (const category in categoryMap) {\n if (categoryMap[category].count === 0) {\n delete categoryMap[category]\n }\n }\n }\n\n categories = categories.filter((category: CalendarCategory) => {\n if (typeof category === 'object' && category.categoryName) {\n return categoryMap.hasOwnProperty(category.categoryName)\n } else if (typeof category === 'string') {\n return categoryMap.hasOwnProperty(category)\n }\n return false\n })\n }\n return categories\n }\n\n watch(renderProps, checkChange)\n\n onMounted(() => {\n base.updateEventVisibility()\n checkChange()\n })\n\n onUpdated(() => {\n window.requestAnimationFrame(base.updateEventVisibility)\n })\n\n useRender(() => {\n const { start, end, maxDays, component: Component, categories } = renderProps.value\n return (\n {\n if (attrs['onUpdate:modelValue']) emit('update:modelValue', day.date)\n }}\n v-slots={ base.getScopedSlots() }\n />\n )\n })\n\n return forwardRefs({\n ...base,\n lastStart,\n lastEnd,\n parsedCategoryDays,\n renderProps,\n eventWeekdays,\n categoryMode,\n title,\n monthLongFormatter,\n monthShortFormatter,\n parsedCategories,\n checkChange,\n move,\n next,\n prev,\n getCategoryList,\n }, root)\n },\n})\n\nexport type VCalendar = InstanceType\n", "// Styles\nimport './VIconBtn.scss'\n\n// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeIconSizeProps, useIconSizes } from '@/composables/iconSizes'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\n\n// Utilities\nimport { toDisplayString } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { IconValue } from '@/composables/icons'\nimport type { Variant } from '@/composables/variant'\n\nexport type VIconBtnSlots = {\n default: never\n loader: never\n}\n\nexport type VIconBtnSizes = 'x-small' | 'small' | 'default' | 'large' | 'x-large'\n\nexport const makeVIconBtnProps = propsFactory({\n active: {\n type: Boolean,\n default: undefined,\n },\n activeColor: String,\n activeIcon: [String, Function, Object] as PropType,\n activeVariant: String as PropType,\n baseVariant: {\n type: String as PropType,\n default: 'tonal',\n },\n disabled: Boolean,\n height: [Number, String],\n width: [Number, String],\n hideOverlay: Boolean,\n icon: [String, Function, Object] as PropType,\n iconColor: String,\n loading: Boolean,\n opacity: [Number, String],\n readonly: Boolean,\n rotate: [Number, String],\n size: {\n type: [Number, String] as PropType,\n default: 'default',\n },\n sizes: {\n type: Array as PropType<[VIconBtnSizes, number][]>,\n default: () => ([\n ['x-small', 16],\n ['small', 24],\n ['default', 40],\n ['large', 48],\n ['x-large', 56],\n ]),\n },\n text: {\n type: [String, Number, Boolean],\n default: undefined,\n },\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeElevationProps(),\n ...makeIconSizeProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'button' }),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'flat' } as const),\n}, 'VIconBtn')\n\nexport const VIconBtn = genericComponent()({\n name: 'VIconBtn',\n\n props: makeVIconBtnProps(),\n\n emits: {\n 'update:active': (value: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const isActive = useProxiedModel(props, 'active')\n\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n\n const { colorClasses, colorStyles, variantClasses } = useVariant(() => ({\n color: (() => {\n if (props.disabled) return undefined\n if (!isActive.value) return props.color\n // Use an inline fallback as opposed to setting a default color\n // because non-toggle buttons are default flat whereas toggle\n // buttons are default tonal and active flat. The exact use\n // case for this is a toggle button with no active color.\n return props.activeColor ?? props.color ?? 'surface-variant'\n })(),\n variant: (() => {\n if (isActive.value === undefined) return props.variant\n if (isActive.value) return props.activeVariant ?? props.variant\n return props.baseVariant ?? props.variant\n })(),\n }))\n\n const btnSizeMap = new Map(props.sizes)\n\n function onClick () {\n if (\n props.disabled ||\n props.readonly ||\n isActive.value === undefined ||\n (props.tag === 'a' && attrs.href)\n ) return\n\n isActive.value = !isActive.value\n }\n\n useRender(() => {\n const icon = isActive.value ? props.activeIcon ?? props.icon : props.icon\n\n const _btnSize = props.size as VIconBtnSizes\n const hasNamedSize = btnSizeMap.has(_btnSize)\n const btnSize = hasNamedSize ? btnSizeMap.get(_btnSize) : _btnSize\n const btnHeight = props.height ?? btnSize\n const btnWidth = props.width ?? btnSize\n const { iconSize } = useIconSizes(props, () => new Map(props.iconSizes).get(_btnSize))\n\n const iconProps = {\n icon,\n size: iconSize.value,\n color: props.iconColor,\n opacity: props.opacity,\n }\n\n return (\n \n { genOverlays(!props.hideOverlay, 'v-icon-btn') }\n\n
\n { (!slots.default && icon) ? (\n \n ) : (\n slots.default?.() ?? toDisplayString(props.text),\n }}\n />\n )}\n
\n\n { !!props.loading && (\n \n { slots.loader?.() ?? (\n \n )}\n \n )}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VIconBtn = InstanceType\n", "export function isLeapYear (year: number): boolean {\n return ((year % 4 === 0) && (year % 100 !== 0)) || (year % 400 === 0)\n}\n", "import { isLeapYear } from './dateTimeUtils'\n\n// Types\nimport type { CalendarFormatter, CalendarTimestamp } from '../types'\n\nexport const PARSE_REGEX = /^(\\d{4})-(\\d{1,2})(-(\\d{1,2}))?([^\\d]+(\\d{1,2}))?(:(\\d{1,2}))?(:(\\d{1,2}))?$/\nexport const PARSE_TIME = /(\\d\\d?)(:(\\d\\d?)|)(:(\\d\\d?)|)/\n\nexport const DAYS_IN_MONTH: number[] = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\nexport const DAYS_IN_MONTH_LEAP: number[] = [0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\nexport const DAYS_IN_MONTH_MIN = 28\nexport const DAYS_IN_MONTH_MAX = 31\nexport const MONTH_MAX = 12\nexport const MONTH_MIN = 1\nexport const DAY_MIN = 1\nexport const DAYS_IN_WEEK = 7\nexport const MINUTES_IN_HOUR = 60\nexport const MINUTE_MAX = 59\nexport const MINUTES_IN_DAY = 24 * 60\nexport const HOURS_IN_DAY = 24\nexport const HOUR_MAX = 23\nexport const FIRST_HOUR = 0\nexport const OFFSET_YEAR = 10000\nexport const OFFSET_MONTH = 100\nexport const OFFSET_HOUR = 100\nexport const OFFSET_TIME = 10000\n\ntype CalendarTimestampFormatOptions = (timestamp: CalendarTimestamp, short: boolean) => Intl.DateTimeFormatOptions\ntype CalendarTimestampOperation = (timestamp: CalendarTimestamp) => CalendarTimestamp\nexport type VTime = number | string | {\n hour: number\n minute: number\n}\n\nexport type VTimestampInput = number | string | Date;\n\nexport function getStartOfWeek (timestamp: CalendarTimestamp, weekdays: number[], today?: CalendarTimestamp): CalendarTimestamp {\n const start = copyTimestamp(timestamp)\n findWeekday(start, weekdays[0], prevDay)\n updateFormatted(start)\n if (today) {\n updateRelative(start, today, start.hasTime)\n }\n\n return start\n}\n\nexport function getEndOfWeek (timestamp: CalendarTimestamp, weekdays: number[], today?: CalendarTimestamp): CalendarTimestamp {\n const end = copyTimestamp(timestamp)\n findWeekday(end, weekdays[weekdays.length - 1])\n updateFormatted(end)\n if (today) {\n updateRelative(end, today, end.hasTime)\n }\n\n return end\n}\n\nexport function getStartOfMonth (timestamp: CalendarTimestamp): CalendarTimestamp {\n const start = copyTimestamp(timestamp)\n start.day = DAY_MIN\n updateWeekday(start)\n updateFormatted(start)\n\n return start\n}\n\nexport function getEndOfMonth (timestamp: CalendarTimestamp): CalendarTimestamp {\n const end = copyTimestamp(timestamp)\n end.day = daysInMonth(end.year, end.month)\n updateWeekday(end)\n updateFormatted(end)\n\n return end\n}\n\nexport function validateNumber (input: any): boolean {\n return isFinite(parseInt(input))\n}\n\nexport function validateTime (input: any): input is VTime {\n return (typeof input === 'number' && isFinite(input)) ||\n (!!PARSE_TIME.exec(input)) ||\n (typeof input === 'object' && isFinite(input.hour) && isFinite(input.minute))\n}\n\nexport function parseTime (input: any): number | false {\n if (typeof input === 'number') {\n // when a number is given, it's minutes since 12:00am\n return input\n } else if (typeof input === 'string') {\n // when a string is given, it's a hh:mm:ss format where seconds are optional\n const parts = PARSE_TIME.exec(input)\n if (!parts) {\n return false\n }\n\n return parseInt(parts[1]) * 60 + parseInt(parts[3] || 0)\n } else if (typeof input === 'object') {\n // when an object is given, it must have hour and minute\n if (typeof input.hour !== 'number' || typeof input.minute !== 'number') {\n return false\n }\n\n return input.hour * 60 + input.minute\n } else {\n // unsupported type\n return false\n }\n}\n\nexport function validateTimestamp (input: any): input is VTimestampInput {\n return (typeof input === 'number' && isFinite(input)) ||\n (typeof input === 'string' && !!PARSE_REGEX.exec(input)) ||\n (input instanceof Date)\n}\n\nexport function parseTimestamp (input: VTimestampInput | null, required?: false, now?: CalendarTimestamp | null): CalendarTimestamp | null\nexport function parseTimestamp (input: VTimestampInput, required: true, now?: CalendarTimestamp): CalendarTimestamp\nexport function parseTimestamp (input: VTimestampInput | null, required = false, now?: CalendarTimestamp | null): CalendarTimestamp | null {\n if (typeof input === 'number' && isFinite(input)) {\n input = new Date(input)\n }\n\n if (input instanceof Date) {\n const date: CalendarTimestamp = parseDate(input)\n\n if (now) {\n updateRelative(date, now, date.hasTime)\n }\n\n return date\n }\n\n if (typeof input !== 'string') {\n if (required) {\n throw new Error(`${input} is not a valid timestamp. It must be a Date, number of milliseconds since Epoch, or a string in the format of YYYY-MM-DD or YYYY-MM-DD hh:mm. Zero-padding is optional and seconds are ignored.`)\n }\n return null\n }\n\n // YYYY-MM-DD hh:mm:ss\n const parts = PARSE_REGEX.exec(input)\n\n if (!parts) {\n if (required) {\n throw new Error(`${input} is not a valid timestamp. It must be a Date, number of milliseconds since Epoch, or a string in the format of YYYY-MM-DD or YYYY-MM-DD hh:mm. Zero-padding is optional and seconds are ignored.`)\n }\n\n return null\n }\n\n const timestamp: CalendarTimestamp = {\n date: input,\n time: '',\n year: parseInt(parts[1]),\n month: parseInt(parts[2]),\n day: parseInt(parts[4]) || 1,\n hour: parseInt(parts[6]) || 0,\n minute: parseInt(parts[8]) || 0,\n weekday: 0,\n hasDay: !!parts[4],\n hasTime: !!(parts[6] && parts[8]),\n past: false,\n present: false,\n future: false,\n }\n\n updateWeekday(timestamp)\n updateFormatted(timestamp)\n\n if (now) {\n updateRelative(timestamp, now, timestamp.hasTime)\n }\n\n return timestamp\n}\n\nexport function parseDate (date: Date): CalendarTimestamp {\n return updateFormatted({\n date: '',\n time: '',\n year: date.getFullYear(),\n month: date.getMonth() + 1,\n day: date.getDate(),\n weekday: date.getDay(),\n hour: date.getHours(),\n minute: date.getMinutes(),\n hasDay: true,\n hasTime: true,\n past: false,\n present: true,\n future: false,\n })\n}\n\nexport function getDayIdentifier (timestamp: { year: number, month: number, day: number }): number {\n return timestamp.year * OFFSET_YEAR + timestamp.month * OFFSET_MONTH + timestamp.day\n}\n\nexport function getTimeIdentifier (timestamp: { hour: number, minute: number }): number {\n return timestamp.hour * OFFSET_HOUR + timestamp.minute\n}\n\nexport function getTimestampIdentifier (timestamp: CalendarTimestamp): number {\n return getDayIdentifier(timestamp) * OFFSET_TIME + getTimeIdentifier(timestamp)\n}\n\nexport function updateRelative (timestamp: CalendarTimestamp, now: CalendarTimestamp, time = false): CalendarTimestamp {\n let a = getDayIdentifier(now)\n let b = getDayIdentifier(timestamp)\n let present = a === b\n\n if (timestamp.hasTime && time && present) {\n a = getTimeIdentifier(now)\n b = getTimeIdentifier(timestamp)\n present = a === b\n }\n\n timestamp.past = b < a\n timestamp.present = present\n timestamp.future = b > a\n\n return timestamp\n}\n\nexport function isTimedless (input: VTimestampInput): input is (Date | number) {\n return (input instanceof Date) || (typeof input === 'number' && isFinite(input))\n}\n\nexport function updateHasTime (timestamp: CalendarTimestamp, hasTime: boolean, now?: CalendarTimestamp): CalendarTimestamp {\n if (timestamp.hasTime !== hasTime) {\n timestamp.hasTime = hasTime\n if (!hasTime) {\n timestamp.hour = HOUR_MAX\n timestamp.minute = MINUTE_MAX\n timestamp.time = getTime(timestamp)\n }\n if (now) {\n updateRelative(timestamp, now, timestamp.hasTime)\n }\n }\n\n return timestamp\n}\n\nexport function updateMinutes (timestamp: CalendarTimestamp, minutes: number, now?: CalendarTimestamp): CalendarTimestamp {\n timestamp.hasTime = true\n timestamp.hour = 0\n timestamp.minute = 0\n nextMinutes(timestamp, minutes)\n updateFormatted(timestamp)\n if (now) {\n updateRelative(timestamp, now, true)\n }\n\n return timestamp\n}\n\nexport function updateWeekday (timestamp: CalendarTimestamp): CalendarTimestamp {\n timestamp.weekday = getWeekday(timestamp)\n\n return timestamp\n}\n\nexport function updateFormatted (timestamp: CalendarTimestamp): CalendarTimestamp {\n timestamp.time = getTime(timestamp)\n timestamp.date = getDate(timestamp)\n\n return timestamp\n}\n\nexport function getWeekday (timestamp: CalendarTimestamp): number {\n if (timestamp.hasDay) {\n const _ = Math.floor\n const k = timestamp.day\n const m = ((timestamp.month + 9) % MONTH_MAX) + 1\n const C = _(timestamp.year / 100)\n const Y = (timestamp.year % 100) - (timestamp.month <= 2 ? 1 : 0)\n\n return (((k + _(2.6 * m - 0.2) - 2 * C + Y + _(Y / 4) + _(C / 4)) % 7) + 7) % 7\n }\n\n return timestamp.weekday\n}\n\nexport function daysInMonth (year: number, month: number) {\n return isLeapYear(year) ? DAYS_IN_MONTH_LEAP[month] : DAYS_IN_MONTH[month]\n}\n\nexport function copyTimestamp (timestamp: null): null\nexport function copyTimestamp (timestamp: CalendarTimestamp): CalendarTimestamp\nexport function copyTimestamp (timestamp: CalendarTimestamp | null): CalendarTimestamp | null {\n if (timestamp == null) return null\n\n const { date, time, year, month, day, weekday, hour, minute, hasDay, hasTime, past, present, future } = timestamp\n\n return { date, time, year, month, day, weekday, hour, minute, hasDay, hasTime, past, present, future }\n}\n\nexport function padNumber (x: number, length: number): string {\n let padded = String(x)\n while (padded.length < length) {\n padded = '0' + padded\n }\n\n return padded\n}\n\nexport function getDate (timestamp: CalendarTimestamp): string {\n let str = `${padNumber(timestamp.year, 4)}-${padNumber(timestamp.month, 2)}`\n\n if (timestamp.hasDay) str += `-${padNumber(timestamp.day, 2)}`\n\n return str\n}\n\nexport function getTime (timestamp: CalendarTimestamp): string {\n if (!timestamp.hasTime) {\n return ''\n }\n\n return `${padNumber(timestamp.hour, 2)}:${padNumber(timestamp.minute, 2)}`\n}\n\nexport function nextMinutes (timestamp: CalendarTimestamp, minutes: number): CalendarTimestamp {\n timestamp.minute += minutes\n while (timestamp.minute >= MINUTES_IN_HOUR) {\n timestamp.minute -= MINUTES_IN_HOUR\n timestamp.hour++\n if (timestamp.hour >= HOURS_IN_DAY) {\n nextDay(timestamp)\n timestamp.hour = FIRST_HOUR\n }\n }\n\n return timestamp\n}\n\nexport function nextDay (timestamp: CalendarTimestamp): CalendarTimestamp {\n timestamp.day++\n timestamp.weekday = (timestamp.weekday + 1) % DAYS_IN_WEEK\n if (timestamp.day > DAYS_IN_MONTH_MIN && timestamp.day > daysInMonth(timestamp.year, timestamp.month)) {\n timestamp.day = DAY_MIN\n timestamp.month++\n if (timestamp.month > MONTH_MAX) {\n timestamp.month = MONTH_MIN\n timestamp.year++\n }\n }\n\n return timestamp\n}\n\nexport function prevDay (timestamp: CalendarTimestamp): CalendarTimestamp {\n timestamp.day--\n timestamp.weekday = (timestamp.weekday + 6) % DAYS_IN_WEEK\n if (timestamp.day < DAY_MIN) {\n timestamp.month--\n if (timestamp.month < MONTH_MIN) {\n timestamp.year--\n timestamp.month = MONTH_MAX\n }\n timestamp.day = daysInMonth(timestamp.year, timestamp.month)\n }\n\n return timestamp\n}\n\nexport function relativeDays (\n timestamp: CalendarTimestamp,\n mover: CalendarTimestampOperation = nextDay,\n days = 1\n): CalendarTimestamp {\n while (--days >= 0) mover(timestamp)\n\n return timestamp\n}\n\nexport function diffMinutes (min: CalendarTimestamp, max: CalendarTimestamp) {\n const Y = (max.year - min.year) * 525600\n const M = (max.month - min.month) * 43800\n const D = (max.day - min.day) * 1440\n const h = (max.hour - min.hour) * 60\n const m = (max.minute - min.minute)\n\n return Y + M + D + h + m\n}\n\nexport function findWeekday (timestamp: CalendarTimestamp, weekday: number,\n mover: CalendarTimestampOperation = nextDay, maxDays = 6): CalendarTimestamp {\n while (timestamp.weekday !== weekday && --maxDays >= 0) mover(timestamp)\n\n return timestamp\n}\n\nexport function getWeekdaySkips (weekdays: number[]): number[] {\n const skips: number[] = [1, 1, 1, 1, 1, 1, 1]\n const filled: number[] = [0, 0, 0, 0, 0, 0, 0]\n for (let i = 0; i < weekdays.length; i++) {\n filled[weekdays[i]] = 1\n }\n for (let k = 0; k < DAYS_IN_WEEK; k++) {\n let skip = 1\n for (let j = 1; j < DAYS_IN_WEEK; j++) {\n const next = (k + j) % DAYS_IN_WEEK\n if (filled[next]) {\n break\n }\n skip++\n }\n skips[k] = filled[k] * skip\n }\n\n return skips\n}\n\nexport function timestampToDate (timestamp: CalendarTimestamp): Date {\n const time = `${padNumber(timestamp.hour, 2)}:${padNumber(timestamp.minute, 2)}`\n const date = timestamp.date\n\n return new Date(`${date}T${time}:00+00:00`)\n}\n\nexport function createDayList (\n start: CalendarTimestamp,\n end: CalendarTimestamp,\n now: CalendarTimestamp,\n weekdaySkips: number[],\n max = 42,\n min = 0\n): CalendarTimestamp[] {\n const stop = getDayIdentifier(end)\n const days: CalendarTimestamp[] = []\n let current = copyTimestamp(start)\n let currentIdentifier = 0\n let stopped = currentIdentifier === stop\n\n if (stop < getDayIdentifier(start)) {\n throw new Error('End date is earlier than start date.')\n }\n\n while ((!stopped || days.length < min) && days.length < max) {\n currentIdentifier = getDayIdentifier(current)\n stopped = stopped || currentIdentifier === stop\n if (weekdaySkips[current.weekday] === 0) {\n current = nextDay(current)\n continue\n }\n const day = copyTimestamp(current)\n updateFormatted(day)\n updateRelative(day, now)\n days.push(day)\n current = relativeDays(current, nextDay, weekdaySkips[current.weekday])\n }\n\n if (!days.length) throw new Error('No dates found using specified start date, end date, and weekdays.')\n\n return days\n}\n\nexport function createIntervalList (\n timestamp: CalendarTimestamp,\n first: number,\n minutes: number,\n count: number,\n now?: CalendarTimestamp\n): CalendarTimestamp[] {\n const intervals: CalendarTimestamp[] = []\n\n for (let i = 0; i < count; i++) {\n const mins = first + (i * minutes)\n const int = copyTimestamp(timestamp)\n intervals.push(updateMinutes(int, mins, now))\n }\n\n return intervals\n}\n\nexport function createNativeLocaleFormatter (locale: string, getOptions: CalendarTimestampFormatOptions): CalendarFormatter {\n const emptyFormatter: CalendarFormatter = (_t, _s) => ''\n\n if (typeof Intl === 'undefined' || typeof Intl.DateTimeFormat === 'undefined') {\n return emptyFormatter\n }\n\n return (timestamp, short) => {\n try {\n const intlFormatter = new Intl.DateTimeFormat(locale || undefined, getOptions(timestamp, short))\n\n return intlFormatter.format(timestampToDate(timestamp))\n } catch (e) {\n return ''\n }\n }\n}\n\nexport function validateWeekdays (input: string | (number | string)[]): boolean {\n if (typeof input === 'string') {\n input = input.split(',')\n }\n\n if (Array.isArray(input)) {\n const ints = input.map(x => parseInt(x))\n\n if (ints.length > DAYS_IN_WEEK || ints.length === 0) {\n return false\n }\n\n const visited: Record = {}\n let wrapped = false\n\n for (let i = 0; i < ints.length; i++) {\n const x = ints[i]\n\n if (!isFinite(x) || x < 0 || x >= DAYS_IN_WEEK) {\n return false\n }\n\n if (i > 0) {\n const d = x - ints[i - 1]\n if (d < 0) {\n if (wrapped) {\n return false\n }\n wrapped = true\n } else if (d === 0) {\n return false\n }\n }\n\n if (visited[x]) {\n return false\n }\n visited[x] = true\n }\n\n return true\n }\n\n return false\n}\n", "// Utilities\nimport { computed, reactive, watch } from 'vue'\nimport {\n parseDate,\n parseTimestamp,\n validateTimestamp,\n} from '../util/timestamp'\n\n// Types\nimport type { CalendarTimestamp } from '../types'\n\nexport function useTimes (props: { now: string | undefined }) {\n const times = reactive({\n now: parseTimestamp('0000-00-00 00:00', true),\n today: parseTimestamp('0000-00-00', true),\n })\n\n const parsedNow = computed((): CalendarTimestamp | null => {\n return props.now && validateTimestamp(props.now) ? parseTimestamp(props.now, true) : null\n })\n\n function setPresent (): void {\n times.now.present = times.today.present = true\n times.now.past = times.today.past = false\n times.now.future = times.today.future = false\n }\n\n function getNow (): CalendarTimestamp {\n return parseDate(new Date())\n }\n\n function updateDay (now: CalendarTimestamp, target: CalendarTimestamp): void {\n if (now.date !== target.date) {\n target.year = now.year\n target.month = now.month\n target.day = now.day\n target.weekday = now.weekday\n target.date = now.date\n }\n }\n\n function updateTime (now: CalendarTimestamp, target: CalendarTimestamp): void {\n if (now.time !== target.time) {\n target.hour = now.hour\n target.minute = now.minute\n target.time = now.time\n }\n }\n\n function updateTimes (): void {\n const now: CalendarTimestamp = parsedNow.value || getNow()\n updateDay(now, times.now)\n updateTime(now, times.now)\n updateDay(now, times.today)\n }\n\n watch(parsedNow, updateTimes)\n\n updateTimes()\n setPresent()\n\n return {\n times,\n parsedNow,\n updateTimes,\n setPresent,\n getNow,\n updateDay,\n updateTime,\n }\n}\n", "// Composables\nimport { useTimes } from './times'\nimport { computeColor } from '@/composables/color'\nimport { useDate } from '@/composables/date'\nimport { provideLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed } from 'vue'\nimport {\n createDayList,\n createNativeLocaleFormatter,\n getEndOfMonth,\n getEndOfWeek,\n getStartOfMonth,\n getStartOfWeek,\n getTimestampIdentifier,\n getWeekdaySkips,\n parseDate,\n parseTimestamp,\n validateTimestamp,\n validateWeekdays,\n} from '../util/timestamp'\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { CalendarFormatter, CalendarTimestamp } from '../types'\nimport type { ColorValue } from '@/composables/color'\n\nexport const makeCalendarBaseProps = propsFactory({\n start: {\n type: [String, Number, Date],\n validate: validateTimestamp,\n default: () => parseDate(new Date()).date,\n },\n end: {\n type: [String, Number, Date],\n validate: validateTimestamp,\n },\n weekdays: {\n type: [Array, String] as PropType,\n default: () => [0, 1, 2, 3, 4, 5, 6],\n validate: validateWeekdays,\n },\n firstDayOfWeek: [Number, String],\n firstDayOfYear: [Number, String],\n weekdayFormat: {\n type: Function as PropType,\n default: null,\n },\n dayFormat: {\n type: Function as PropType,\n default: null,\n },\n locale: String,\n now: {\n type: String,\n validator: validateTimestamp,\n },\n type: {\n type: String as PropType<'month' | 'week' | 'day' | '4day' | 'custom-weekly' | 'custom-daily' | 'category'>,\n default: 'month',\n },\n}, 'VCalendar-base')\n\nexport interface CalendarBaseProps {\n modelValue?: string | number | Date\n categoryDays?: string | number\n start: string | number | Date\n end: string | number | Date | undefined\n weekdays: string | number[]\n firstDayOfWeek: number | string | undefined\n firstDayOfYear: number | string | undefined\n weekdayFormat: CalendarFormatter | string | undefined\n dayFormat: CalendarFormatter | string | undefined\n locale: string | undefined\n now: string | undefined\n type: 'month' | 'week' | 'day' | '4day' | 'custom-weekly' | 'custom-daily' | 'category'\n}\n\nexport function useCalendarBase (props: CalendarBaseProps) {\n const { times, updateTimes } = useTimes({ now: props.now })\n const locale = provideLocale(props)\n\n const adapter = useDate()\n\n const parsedStart = computed((): CalendarTimestamp => {\n if (props.type === 'month') {\n return getStartOfMonth(parseTimestamp(props.start, true))\n }\n return parseTimestamp(props.start, true)\n })\n\n const parsedEnd = computed((): CalendarTimestamp => {\n const start = parsedStart.value\n const end: CalendarTimestamp = props.end ? parseTimestamp(props.end) || start : start\n const value = getTimestampIdentifier(end) < getTimestampIdentifier(start) ? start : end\n\n if (props.type === 'month') {\n return getEndOfMonth(value)\n }\n return value\n })\n\n const parsedValue = computed((): CalendarTimestamp => {\n return (validateTimestamp(props.modelValue)\n ? parseTimestamp(props.modelValue, true)\n : (parsedStart.value || times.today))\n })\n\n const parsedWeekdays = computed((): number[] => {\n const weekdays = Array.isArray(props.weekdays)\n ? props.weekdays\n : (props.weekdays || '').split(',').map(x => parseInt(x, 10))\n\n const first = adapter.toJsDate(adapter.startOfWeek(adapter.date(), props.firstDayOfWeek)).getDay()\n return [\n ...weekdays.toSorted().filter(v => v >= first),\n ...weekdays.toSorted().filter(v => v < first),\n ]\n })\n\n const effectiveWeekdays = computed((): number[] => {\n const start = parsedValue.value\n const days = parseInt(String(props.categoryDays)) || 1\n\n switch (props.type) {\n case 'day': return [start.weekday]\n case '4day': return [\n start.weekday,\n (start.weekday + 1) % 7,\n (start.weekday + 2) % 7,\n (start.weekday + 3) % 7,\n ]\n case 'category': return Array.from({ length: days }, (_, i) => (start.weekday + i) % 7)\n default: return parsedWeekdays.value\n }\n })\n\n const weekdaySkips = computed((): number[] => {\n return getWeekdaySkips(parsedWeekdays.value)\n })\n\n const days = computed((): CalendarTimestamp[] => {\n return createDayList(\n parsedStart.value,\n parsedEnd.value,\n times.today,\n weekdaySkips.value,\n )\n })\n\n const dayFormatter = computed((): CalendarFormatter => {\n if (props.dayFormat) {\n return props.dayFormat as CalendarFormatter\n }\n\n return createNativeLocaleFormatter(\n locale.current.value,\n () => ({ timeZone: 'UTC', day: 'numeric' })\n )\n })\n\n const weekdayFormatter = computed((): CalendarFormatter => {\n if (props.weekdayFormat) {\n return props.weekdayFormat as CalendarFormatter\n }\n\n return createNativeLocaleFormatter(\n locale.current.value,\n (_tms, short) => ({ timeZone: 'UTC', weekday: short ? 'short' : 'long' })\n )\n })\n\n function getColorProps (colors: { background?: ColorValue, text?: ColorValue }) {\n return computeColor(colors)\n }\n\n function getRelativeClasses (timestamp: CalendarTimestamp, outside = false) {\n return {\n 'v-present': timestamp.present,\n 'v-past': timestamp.past,\n 'v-future': timestamp.future,\n 'v-outside': outside,\n }\n }\n\n function getWeekNumber (timestamp: CalendarTimestamp): number {\n return adapter.getWeek(\n adapter.date(timestamp.date),\n props.firstDayOfWeek,\n props.firstDayOfYear,\n )\n }\n\n function _getStartOfWeek (timestamp: CalendarTimestamp): CalendarTimestamp {\n return getStartOfWeek(timestamp, parsedWeekdays.value, times.today)\n }\n\n function _getEndOfWeek (timestamp: CalendarTimestamp): CalendarTimestamp {\n return getEndOfWeek(timestamp, parsedWeekdays.value, times.today)\n }\n\n function getFormatter (options: Intl.DateTimeFormatOptions): CalendarFormatter {\n return createNativeLocaleFormatter(locale.current.value, () => options)\n }\n\n return {\n times,\n locale,\n parsedValue,\n parsedWeekdays,\n effectiveWeekdays,\n weekdaySkips,\n parsedStart,\n parsedEnd,\n days,\n dayFormatter,\n weekdayFormatter,\n getColorProps,\n getRelativeClasses,\n getWeekNumber,\n getStartOfWeek: _getStartOfWeek,\n getEndOfWeek: _getEndOfWeek,\n getFormatter,\n updateTimes,\n }\n}\n", "// Composables\nimport { useCalendarBase } from './calendarBase'\n\n// Utilities\nimport { computed, shallowRef } from 'vue'\nimport {\n copyTimestamp,\n createDayList,\n createIntervalList,\n createNativeLocaleFormatter,\n getDayIdentifier,\n MINUTES_IN_DAY,\n parseTime,\n updateMinutes,\n validateNumber,\n validateTime,\n} from '../util/timestamp'\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { PropType, StyleValue } from 'vue'\nimport type { CalendarBaseProps } from './calendarBase'\nimport type { CalendarDayBodySlotScope, CalendarFormatter, CalendarTimestamp } from '../types'\nimport type { VTime } from '../util/timestamp'\n\nexport const makeCalendarWithIntervalsProps = propsFactory({\n maxDays: {\n type: Number,\n default: 7,\n },\n intervalHeight: {\n type: [Number, String],\n default: 48,\n validate: validateNumber,\n },\n intervalWidth: {\n type: [Number, String],\n default: 60,\n validate: validateNumber,\n },\n intervalMinutes: {\n type: [Number, String],\n default: 60,\n validate: validateNumber,\n },\n firstInterval: {\n type: [Number, String],\n default: 0,\n validate: validateNumber,\n },\n firstTime: {\n type: [Number, String, Object] as PropType,\n validate: validateTime,\n },\n intervalCount: {\n type: [Number, String],\n default: 24,\n validate: validateNumber,\n },\n intervalFormat: {\n type: Function as PropType,\n default: null,\n },\n intervalStyle: {\n type: Function as PropType<(interval: CalendarTimestamp) => StyleValue>,\n default: null,\n },\n showIntervalLabel: {\n type: Function as PropType<(interval: CalendarTimestamp) => boolean>,\n default: null,\n },\n}, 'VCalendar-intervals')\n\ninterface CalendarWithIntervalsProps extends CalendarBaseProps {\n maxDays: number\n intervalHeight: string | number\n intervalMinutes: string | number\n firstInterval: string | number\n firstTime: VTime | undefined\n intervalCount: string | number\n intervalFormat: CalendarFormatter | string | undefined\n}\n\nexport function useCalendarWithIntervals (props: CalendarWithIntervalsProps) {\n const base = useCalendarBase(props)\n\n const scrollAreaRef = shallowRef()\n\n const parsedFirstInterval = computed((): number => {\n return parseInt(String(props.firstInterval || 0))\n })\n\n const parsedIntervalMinutes = computed((): number => {\n return parseInt(String(props.intervalMinutes || 60))\n })\n\n const parsedIntervalCount = computed((): number => {\n return parseInt(String(props.intervalCount || 24))\n })\n\n const parsedIntervalHeight = computed((): number => {\n return parseFloat(String(props.intervalHeight || 48))\n })\n\n const parsedFirstTime = computed((): number | false => {\n return parseTime(props.firstTime)\n })\n\n const firstMinute = computed((): number => {\n const time = parsedFirstTime.value\n\n return time !== false && time >= 0 && time <= MINUTES_IN_DAY\n ? time\n : parsedFirstInterval.value * parsedIntervalMinutes.value\n })\n\n const bodyHeight = computed((): number => {\n return parsedIntervalCount.value * parsedIntervalHeight.value\n })\n\n const days = computed((): CalendarTimestamp[] => {\n return createDayList(\n base.parsedStart.value,\n base.parsedEnd.value,\n base.times.today,\n base.weekdaySkips.value,\n props.maxDays\n )\n })\n\n const intervals = computed((): CalendarTimestamp[][] => {\n const daysValue = days.value\n const first: number = firstMinute.value\n const minutes: number = parsedIntervalMinutes.value\n const count: number = parsedIntervalCount.value\n const now: CalendarTimestamp = base.times.now\n\n return daysValue.map(d => createIntervalList(d, first, minutes, count, now))\n })\n\n const intervalFormatter = computed((): CalendarFormatter => {\n if (props.intervalFormat) {\n return props.intervalFormat as CalendarFormatter\n }\n\n return createNativeLocaleFormatter(\n base.locale.current.value,\n (tms, short) => (\n !short ? { timeZone: 'UTC', hour: '2-digit', minute: '2-digit' }\n : tms.minute === 0 ? { timeZone: 'UTC', hour: 'numeric' }\n : { timeZone: 'UTC', hour: 'numeric', minute: '2-digit' }\n )\n )\n })\n\n function showIntervalLabelDefault (interval: CalendarTimestamp): boolean {\n const first: CalendarTimestamp = intervals.value[0][0]\n const isFirst: boolean = first.hour === interval.hour && first.minute === interval.minute\n return !isFirst\n }\n\n function intervalStyleDefault (_interval: CalendarTimestamp): StyleValue {\n return undefined\n }\n\n function getTimestampAtEvent (e: Event, day: CalendarTimestamp): CalendarTimestamp {\n const timestamp: CalendarTimestamp = copyTimestamp(day)\n const bounds = (e.currentTarget as HTMLElement).getBoundingClientRect()\n const baseMinutes: number = firstMinute.value\n const touchEvent: TouchEvent = e as TouchEvent\n const mouseEvent: MouseEvent = e as MouseEvent\n const touches: TouchList = touchEvent.changedTouches || touchEvent.touches\n const clientY: number = touches && touches[0] ? touches[0].clientY : mouseEvent.clientY\n const addIntervals: number = (clientY - bounds.top) / parsedIntervalHeight.value\n const addMinutes: number = Math.floor(addIntervals * parsedIntervalMinutes.value)\n const minutes: number = baseMinutes + addMinutes\n\n return updateMinutes(timestamp, minutes, base.times.now)\n }\n\n function getSlotScope (timestamp: CalendarTimestamp): CalendarDayBodySlotScope {\n const scope = copyTimestamp(timestamp) as any\n scope.timeToY = timeToY\n scope.timeDelta = timeDelta\n scope.minutesToPixels = minutesToPixels\n scope.week = days.value\n scope.intervalRange = [\n firstMinute.value,\n firstMinute.value + parsedIntervalCount.value * parsedIntervalMinutes.value,\n ]\n return scope\n }\n\n function scrollToTime (time: VTime): boolean {\n const y = timeToY(time)\n\n const pane = scrollAreaRef.value\n\n if (y === false || !pane) {\n return false\n }\n\n pane.scrollTop = y\n\n return true\n }\n\n function minutesToPixels (minutes: number): number {\n return minutes / parsedIntervalMinutes.value * parsedIntervalHeight.value\n }\n\n function timeToY (\n time: VTime | CalendarTimestamp,\n targetDateOrClamp: CalendarTimestamp | boolean = false\n ): number | false {\n const clamp = targetDateOrClamp !== false\n const targetDate = typeof targetDateOrClamp !== 'boolean' ? targetDateOrClamp : undefined\n\n let y = timeDelta(time, targetDate)\n if (y === false) return y\n\n y *= bodyHeight.value\n\n if (clamp) {\n if (y < 0) {\n y = 0\n } else if (y > bodyHeight.value) {\n y = bodyHeight.value\n }\n } else {\n if (y < 0) {\n y = y + bodyHeight.value\n } else if (y > bodyHeight.value) {\n y = y - bodyHeight.value\n }\n }\n\n return y\n }\n\n function timeDelta (time: VTime | CalendarTimestamp, targetDate?: CalendarTimestamp): number | false {\n let minutes = parseTime(time)\n\n if (minutes === false) {\n return false\n }\n\n const gap: number = parsedIntervalCount.value * parsedIntervalMinutes.value\n\n if (targetDate && typeof time === 'object' && 'day' in time) {\n const a = getDayIdentifier(time)\n const b = getDayIdentifier(targetDate)\n minutes += (a - b) * gap\n }\n\n const min: number = firstMinute.value\n\n return (minutes - min) / gap\n }\n\n return {\n ...base,\n scrollAreaRef,\n parsedFirstInterval,\n parsedIntervalMinutes,\n parsedIntervalCount,\n parsedIntervalHeight,\n parsedFirstTime,\n firstMinute,\n bodyHeight,\n days,\n intervals,\n intervalFormatter,\n showIntervalLabelDefault,\n intervalStyleDefault,\n getTimestampAtEvent,\n getSlotScope,\n scrollToTime,\n minutesToPixels,\n timeToY,\n timeDelta,\n }\n}\n", "// Components\nimport { VIconBtn } from '@/labs/VIconBtn'\n\n// Composables\nimport { makeCalendarBaseProps } from './composables/calendarBase'\nimport { makeCalendarWithIntervalsProps, useCalendarWithIntervals } from './composables/calendarWithIntervals'\n\n// Directives\nimport vResize from '@/directives/resize'\n\n// Utilities\nimport { nextTick, onMounted, ref } from 'vue'\nimport { convertToUnit, defineComponent, getPrefixedEventHandlers, noop, useRender } from '@/util'\n\n// Types\nimport type { CalendarTimestamp } from './types'\n\nexport const VCalendarDaily = defineComponent({\n name: 'VCalendarDaily',\n\n directives: { vResize },\n\n props: {\n color: String,\n shortWeekdays: {\n type: Boolean,\n default: true,\n },\n shortIntervals: {\n type: Boolean,\n default: true,\n },\n hideHeader: Boolean,\n\n ...makeCalendarBaseProps(),\n ...makeCalendarWithIntervalsProps(),\n },\n\n setup (props, { slots, attrs }) {\n const scrollPush = ref(0)\n const pane = ref()\n const base = useCalendarWithIntervals(props)\n\n function init () {\n nextTick(onResize)\n }\n\n function onResize () {\n scrollPush.value = getScrollPush()\n }\n\n function getScrollPush (): number {\n return base.scrollAreaRef.value && pane.value\n ? (base.scrollAreaRef.value.offsetWidth - pane.value.offsetWidth)\n : 0\n }\n\n function genHead () {\n return (\n \n { genHeadIntervals() }\n { genHeadDays() }\n \n )\n }\n\n function genHeadIntervals () {\n const width: string | undefined = convertToUnit(props.intervalWidth)\n return (\n \n { slots['interval-header']?.() }\n \n )\n }\n\n function genHeadDays () {\n return base.days.value.map(genHeadDay)\n }\n\n function genHeadDay (day: CalendarTimestamp, index: number) {\n const events = getPrefixedEventHandlers(attrs, ':day', nativeEvent => ({\n nativeEvent, ...base.getSlotScope(day),\n }))\n return (\n \n { genHeadWeekday(day) }\n { genHeadDayLabel(day) }\n { genDayHeader(day, index) }\n \n )\n }\n\n function genDayHeader (day: CalendarTimestamp, index: number) {\n return slots['day-header']?.({\n week: base.days.value,\n ...day,\n index,\n }) ?? []\n }\n\n function genHeadWeekday (day: CalendarTimestamp) {\n const color = day.present ? props.color : undefined\n return (\n \n { base.weekdayFormatter.value(day, props.shortWeekdays) }\n \n )\n }\n\n function genHeadDayLabel (day: CalendarTimestamp) {\n return (\n
\n { slots['day-label-header']?.(day) ?? genHeadDayButton(day) }\n
\n )\n }\n\n function genHeadDayButton (day: CalendarTimestamp) {\n const events = getPrefixedEventHandlers(attrs, ':date', nativeEvent => ({\n nativeEvent, ...day,\n }))\n return (\n \n { base.dayFormatter.value(day, false) }\n \n )\n }\n\n function genBody () {\n return (\n
\n { genScrollArea() }\n
\n )\n }\n\n function genScrollArea () {\n return (\n
\n { genPane() }\n
\n )\n }\n\n function genPane () {\n return (\n \n { genDayContainer() }\n \n )\n }\n\n function genDayContainer () {\n return (\n
\n { genBodyIntervals() }\n { slots.days?.() ?? genDays() }\n
\n )\n }\n\n function genDays () {\n return base.days.value.map((day, index) => {\n const events = getPrefixedEventHandlers(attrs, ':time', nativeEvent => ({\n nativeEvent,\n ...base.getSlotScope(base.getTimestampAtEvent(nativeEvent, day)),\n }))\n return (\n \n { genDayIntervals(index) }\n { genDayBody(day) }\n \n )\n })\n }\n\n function genDayBody (day: CalendarTimestamp) {\n return slots['day-body']?.(base.getSlotScope(day)) ?? []\n }\n\n function genDayIntervals (index: number) {\n return base.intervals.value[index].map(genDayInterval)\n }\n\n function genDayInterval (interval: CalendarTimestamp) {\n const height: string | undefined = convertToUnit(props.intervalHeight)\n const styler = props.intervalStyle || base.intervalStyleDefault\n return (\n \n { slots.interval?.(base.getSlotScope(interval)) }\n \n )\n }\n\n function genBodyIntervals () {\n const width: string | undefined = convertToUnit(props.intervalWidth)\n const events = getPrefixedEventHandlers(attrs, ':interval', nativeEvent => ({\n nativeEvent, ...base.getTimestampAtEvent(nativeEvent, base.parsedStart.value),\n }))\n return (\n \n { genIntervalLabels() }\n \n )\n }\n\n function genIntervalLabels () {\n if (!base.intervals.value.length) return null\n return base.intervals.value[0].map(genIntervalLabel)\n }\n\n function genIntervalLabel (interval: CalendarTimestamp) {\n const height: string | undefined = convertToUnit(props.intervalHeight)\n const short = props.shortIntervals\n const shower = props.showIntervalLabel || base.showIntervalLabelDefault\n const show = shower(interval)\n const label = show ? base.intervalFormatter.value(interval, short) : undefined\n return (\n \n
\n { label }\n
\n \n )\n }\n\n onMounted(init)\n\n useRender(() => (\n e.preventDefault() }\n v-resize_quiet={ onResize }\n >\n { !props.hideHeader ? genHead() : undefined }\n { genBody() }\n \n ))\n\n return {\n ...base,\n scrollPush,\n pane,\n init,\n onResize,\n getScrollPush,\n }\n },\n})\n\nexport type VCalendarDaily = InstanceType\n", "// Types\nimport type { CalendarCategory, CalendarCategoryTextFunction } from '../types'\n\nexport function parsedCategoryText (\n category: CalendarCategory,\n categoryText: string | CalendarCategoryTextFunction | undefined\n): string {\n return typeof categoryText === 'function' ? categoryText(category)\n : typeof categoryText === 'string' && typeof category === 'object' && category ? category[categoryText]\n : typeof category === 'string' ? category\n : ''\n}\n\nexport function getParsedCategories (\n categories: CalendarCategory | CalendarCategory[],\n categoryText: string | CalendarCategoryTextFunction | undefined\n): CalendarCategory[] {\n if (typeof categories === 'string') return categories.split(/\\s*,\\s/)\n if (Array.isArray(categories)) {\n return categories.map((category: CalendarCategory) => {\n if (typeof category === 'string') return category\n\n const categoryName = typeof category.categoryName === 'string'\n ? category.categoryName\n : parsedCategoryText(category, categoryText)\n return { ...category, categoryName }\n })\n }\n return []\n}\n", "// Components\nimport { VCalendarDaily } from './VCalendarDaily'\n\n// Composables\nimport { makeCalendarBaseProps } from './composables/calendarBase'\nimport { makeCalendarWithIntervalsProps, useCalendarWithIntervals } from './composables/calendarWithIntervals'\n\n// Utilities\nimport { computed } from 'vue'\nimport { getParsedCategories } from './util/parser'\nimport { convertToUnit, defineComponent, getPrefixedEventHandlers, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { CalendarCategory, CalendarCategoryTextFunction, CalendarTimestamp } from './types'\n\nexport const VCalendarCategory = defineComponent({\n name: 'VCalendarCategory',\n\n props: {\n categories: {\n type: [Array, String] as PropType,\n default: '',\n },\n categoryText: [String, Function] as PropType,\n categoryForInvalid: {\n type: String,\n default: '',\n },\n\n ...makeCalendarBaseProps(),\n ...makeCalendarWithIntervalsProps(),\n },\n\n setup (props, { slots, attrs }) {\n const base = useCalendarWithIntervals(props)\n\n const parsedCategories = computed((): CalendarCategory[] => {\n return getParsedCategories(props.categories, props.categoryText)\n })\n\n function getCategoryScope (scope: any, category: CalendarCategory) {\n const cat = typeof category === 'object' && category &&\n category.categoryName === props.categoryForInvalid ? null : category\n return {\n ...scope,\n category: cat,\n }\n }\n\n function genDayHeader (scope: CalendarTimestamp & { week: any, index: number }) {\n return (\n
\n { parsedCategories.value.map(category => {\n return genDayHeaderCategory(scope, getCategoryScope(scope, category))\n })}\n
\n )\n }\n\n function genDayHeaderCategory (day: CalendarTimestamp, scope: any) {\n const headerTitle = typeof scope.category === 'object' ? scope.category.categoryName : scope.category\n const events = getPrefixedEventHandlers(attrs, ':dayCategory', () => {\n return getCategoryScope(base.getSlotScope(day) || day, scope.category)\n })\n return (\n \n { slots.category?.(scope) ?? genDayHeaderCategoryTitle(headerTitle) }\n { slots['day-header']?.(scope) }\n \n )\n }\n\n function genDayHeaderCategoryTitle (categoryName: string | null) {\n return (\n
\n { categoryName === null ? props.categoryForInvalid : categoryName }\n
\n )\n }\n\n function genDays () {\n const days: any[] = []\n base.days.value.forEach((d: CalendarTimestamp, j: number) => {\n const day = new Array(parsedCategories.value.length || 1)\n day.fill(d)\n days.push(...day.map((v: CalendarTimestamp, i: number) => genDay(v, j, i)))\n })\n return days\n }\n\n function genDay (day: CalendarTimestamp, index: number, categoryIndex: number) {\n const category = parsedCategories.value[categoryIndex]\n const events = getPrefixedEventHandlers(attrs, ':time', e => {\n return base.getSlotScope(base.getTimestampAtEvent(e, day))\n })\n return (\n \n { genDayIntervals(index, category) }\n { genDayBody(day, category) }\n \n )\n }\n\n function genDayIntervals (index: number, category: CalendarCategory) {\n return base.intervals.value[index].map((v: CalendarTimestamp) => genDayInterval(v, category))\n }\n\n function genDayInterval (interval: CalendarTimestamp, category: CalendarCategory) {\n const height: string | undefined = convertToUnit(props.intervalHeight)\n const styler = props.intervalStyle || base.intervalStyleDefault\n\n return (\n \n { slots.interval?.(\n getCategoryScope(base.getSlotScope(interval), category)\n )}\n \n )\n }\n\n function genDayBody (day: CalendarTimestamp, category: CalendarCategory) {\n return (\n
\n { genDayBodyCategory(day, category) }\n
\n )\n }\n\n function genDayBodyCategory (day: CalendarTimestamp, category: CalendarCategory) {\n const events = getPrefixedEventHandlers(attrs, ':timeCategory', e => {\n return getCategoryScope(\n base.getSlotScope(base.getTimestampAtEvent(e, day)),\n category\n )\n })\n\n return (\n
\n { slots['day-body']?.(getCategoryScope(base.getSlotScope(day), category)) }\n
\n )\n }\n\n useRender(() => (\n \n {{\n ...slots,\n days: genDays,\n 'day-header': genDayHeader,\n }}\n \n ))\n\n return {\n ...base,\n parsedCategories,\n }\n },\n})\n\nexport type VCalendarCategory = InstanceType\n", "// Components\nimport { VIconBtn } from '@/labs/VIconBtn'\n\n// Composables\nimport { makeCalendarBaseProps, useCalendarBase } from './composables/calendarBase'\nimport { useTheme } from '@/composables'\n\n// Utilities\nimport { computed } from 'vue'\nimport {\n createDayList,\n createNativeLocaleFormatter,\n getDayIdentifier,\n validateNumber,\n} from './util/timestamp'\nimport { defineComponent, getPrefixedEventHandlers, noop, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { CalendarFormatter, CalendarTimestamp } from './types'\n\nexport const VCalendarWeekly = defineComponent({\n name: 'VCalendarWeekly',\n\n props: {\n minWeeks: {\n validate: validateNumber,\n default: 1,\n },\n monthFormat: Function as PropType,\n showWeek: Boolean,\n color: String,\n shortWeekdays: {\n type: Boolean,\n default: true,\n },\n showMonthOnFirst: {\n type: Boolean,\n default: true,\n },\n shortMonths: {\n type: Boolean,\n default: true,\n },\n hideHeader: Boolean,\n\n ...makeCalendarBaseProps(),\n },\n\n setup (props, { slots, attrs }) {\n const base = useCalendarBase(props)\n\n const theme = useTheme()\n\n const parsedMinWeeks = computed((): number => {\n return parseInt(String(props.minWeeks))\n })\n\n const days = computed((): CalendarTimestamp[] => {\n const minDays = parsedMinWeeks.value * base.parsedWeekdays.value.length\n const start = base.getStartOfWeek(base.parsedStart.value)\n const end = base.getEndOfWeek(base.parsedEnd.value)\n\n return createDayList(\n start,\n end,\n base.times.today,\n base.weekdaySkips.value,\n Number.MAX_SAFE_INTEGER,\n minDays\n )\n })\n\n const todayWeek = computed((): CalendarTimestamp[] => {\n const today = base.times.today\n const start = base.getStartOfWeek(today)\n const end = base.getEndOfWeek(today)\n\n return createDayList(\n start,\n end,\n today,\n base.weekdaySkips.value,\n base.parsedWeekdays.value.length,\n base.parsedWeekdays.value.length\n )\n })\n\n const monthFormatter = computed((): CalendarFormatter => {\n if (props.monthFormat) {\n // TODO: what happens when this is a string?\n return props.monthFormat as CalendarFormatter\n }\n\n return createNativeLocaleFormatter(\n base.locale.current.value,\n (_tms, short) => ({ timeZone: 'UTC', month: short ? 'short' : 'long' })\n )\n })\n\n function isOutside (day: CalendarTimestamp): boolean {\n const dayIdentifier = getDayIdentifier(day)\n\n return dayIdentifier < getDayIdentifier(base.parsedStart.value) ||\n dayIdentifier > getDayIdentifier(base.parsedEnd.value)\n }\n\n function genHead () {\n return (\n
\n { genHeadDays() }\n
\n )\n }\n\n function genHeadDays () {\n const header = todayWeek.value.map(genHeadDay)\n\n if (props.showWeek) {\n header.unshift(\n
\n )\n }\n\n return header\n }\n\n function genHeadDay (day: CalendarTimestamp, index: number) {\n const outside = isOutside(days.value[index])\n const color = day.present ? props.color : undefined\n\n return (\n \n { base.weekdayFormatter.value(day, props.shortWeekdays) }\n
\n )\n }\n\n function genWeeks () {\n const daysValue = days.value\n const weekDays = base.parsedWeekdays.value.length\n const weeks: any[] = []\n\n for (let i = 0; i < daysValue.length; i += weekDays) {\n weeks.push(genWeek(daysValue.slice(i, i + weekDays), getWeekNumber(daysValue[i])))\n }\n\n return weeks\n }\n\n function genWeek (week: CalendarTimestamp[], weekNumber: number) {\n const weekNodes = week.map((day, index) => genDay(day, index, week))\n\n if (props.showWeek) {\n weekNodes.unshift(genWeekNumber(weekNumber))\n }\n\n return (\n \n { weekNodes }\n \n )\n }\n\n function getWeekNumber (determineDay: CalendarTimestamp) {\n return base.getWeekNumber(determineDay)\n }\n\n function genWeekNumber (weekNumber: number) {\n return (\n
\n { String(weekNumber) }\n
\n )\n }\n\n function genDay (day: CalendarTimestamp, index: number, week: CalendarTimestamp[]) {\n const outside = isOutside(day)\n const events = getPrefixedEventHandlers(attrs, ':day', nativeEvent => {\n return { nativeEvent, ...day }\n })\n\n return (\n \n { genDayLabel(day) }\n { slots.day?.({ outside, index, week, ...day }) }\n \n )\n }\n\n function genDayLabel (day: CalendarTimestamp) {\n return (\n
\n { slots['day-label']?.(day) ?? genDayLabelButton(day) }\n
\n )\n }\n\n function genDayLabelButton (day: CalendarTimestamp) {\n const hasMonth = day.day === 1 && props.showMonthOnFirst\n const events = getPrefixedEventHandlers(attrs, ':date', nativeEvent => ({ nativeEvent, ...day }))\n\n return (\n \n { hasMonth\n ? monthFormatter.value(day, props.shortMonths) + ' ' + base.dayFormatter.value(day, false)\n : base.dayFormatter.value(day, false)\n }\n \n )\n }\n\n useRender(() => (\n e.preventDefault() }\n >\n { !props.hideHeader ? genHead() : undefined }\n { genWeeks() }\n \n ))\n\n return {\n ...base,\n days,\n todayWeek,\n monthFormatter,\n isOutside,\n }\n },\n})\n\nexport type VCalendarWeekly = InstanceType\n", "// Styles\nimport './calendarWithEvents.sass'\n\n// Composables\nimport { useCalendarBase } from './calendarBase'\n\n// Directives\nimport vRipple from '@/directives/ripple'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { CalendarEventOverlapModes } from '../modes'\nimport {\n isEventHiddenOn,\n isEventOn,\n isEventOnDay,\n isEventOverlapping,\n isEventStart,\n parseEvent,\n} from '../util/events'\nimport { diffMinutes, getDayIdentifier } from '../util/timestamp'\nimport { getPrefixedEventHandlers, propsFactory } from '@/util'\n\n// Types\nimport type { PropType, VNode } from 'vue'\nimport type { CalendarBaseProps } from './calendarBase'\nimport type {\n CalendarCategory,\n CalendarDayBodySlotScope,\n CalendarDaySlotScope,\n CalendarEvent,\n CalendarEventCategoryFunction,\n CalendarEventColorFunction,\n CalendarEventNameFunction,\n CalendarEventOverlapMode,\n CalendarEventParsed,\n CalendarEventTimedFunction,\n CalendarEventVisual,\n CalendarTimestamp,\n} from '../types'\n\n// Constants\nconst WIDTH_FULL = 100\nconst WIDTH_START = 95\n// const MINUTES_IN_DAY = 1440\n\ntype VEventGetter = (day: D) => CalendarEventParsed[]\ntype VEventVisualToNode = (visual: CalendarEventVisual, day: D) => VNode | false\ntype VEventsToNodes = (\n day: D,\n getter: VEventGetter,\n mapper: VEventVisualToNode,\n timed: boolean) => VNode[] | undefined\n\ntype VDailyEventsMap = {\n [date: string]: {\n parent: HTMLElement\n more: HTMLElement | null\n events: HTMLElement[]\n }\n}\n\nexport interface VEventScopeInput {\n eventParsed: CalendarEventParsed\n day: CalendarDaySlotScope\n start: boolean\n end: boolean\n timed: boolean\n}\n\n// Prevent import from being erased\nvoid vRipple\n\nexport const makeCalendarWithEventsProps = propsFactory({\n events: {\n type: Array as PropType,\n default: () => [],\n },\n eventStart: {\n type: String,\n default: 'start',\n },\n eventEnd: {\n type: String,\n default: 'end',\n },\n eventTimed: {\n type: [String, Function] as PropType,\n default: 'timed',\n },\n eventCategory: {\n type: [String, Function] as PropType,\n default: 'category',\n },\n eventHeight: {\n type: Number,\n default: 20,\n },\n eventColor: {\n type: [String, Function] as PropType,\n default: 'primary',\n },\n eventTextColor: {\n type: [String, Function] as PropType,\n },\n eventName: {\n type: [String, Function] as PropType,\n default: 'name',\n },\n eventOverlapThreshold: {\n type: [String, Number],\n default: 60,\n },\n eventOverlapMode: {\n type: [String, Function] as PropType<'stack' | 'column' | CalendarEventOverlapMode>,\n default: 'stack',\n validate: (mode: any) => mode in CalendarEventOverlapModes || typeof mode === 'function',\n },\n eventMore: {\n type: Boolean,\n default: true,\n },\n eventMoreText: {\n type: String,\n default: '$vuetify.calendar.moreEvents',\n },\n eventRipple: {\n type: [Boolean, Object],\n default: null,\n },\n eventMarginBottom: {\n type: Number,\n default: 1,\n },\n}, 'VCalendar-events')\n\ninterface CalendarWithEventsProps extends CalendarBaseProps {\n events: CalendarEvent[]\n eventStart: string\n eventEnd: string\n eventTimed: string | CalendarEventTimedFunction\n eventCategory: string | CalendarEventCategoryFunction\n eventHeight: number\n eventColor: string | CalendarEventColorFunction\n eventTextColor: string | CalendarEventColorFunction | undefined\n eventName: string | CalendarEventNameFunction\n eventOverlapThreshold: string | number\n eventOverlapMode: string | CalendarEventOverlapMode\n eventMore: boolean\n eventMoreText: string\n eventRipple: boolean | object | null | undefined\n eventMarginBottom: number\n type: 'month' | 'week' | 'day' | '4day' | 'custom-weekly' | 'custom-daily' | 'category'\n}\n\nexport function useCalendarWithEvents (props: CalendarWithEventsProps, slots: any, attrs: any) {\n const base = useCalendarBase(props)\n\n const noEvents = computed((): boolean => {\n return !Array.isArray(props.events) || props.events.length === 0\n })\n\n const categoryMode = computed((): boolean => {\n return props.type === 'category'\n })\n\n const eventTimedFunction = computed((): CalendarEventTimedFunction => {\n return typeof props.eventTimed === 'function'\n ? props.eventTimed\n : event => !!event[props.eventTimed as string]\n })\n\n const eventCategoryFunction = computed((): CalendarEventCategoryFunction => {\n return typeof props.eventCategory === 'function'\n ? props.eventCategory\n : event => event[props.eventCategory as string]\n })\n\n const parsedEvents = computed((): CalendarEventParsed[] => {\n if (!props.events) return []\n return props.events.map((event, index) => parseEvent(\n event,\n index,\n props.eventStart || '',\n props.eventEnd || '',\n eventTimedFunction.value(event),\n categoryMode.value ? eventCategoryFunction.value(event) : false,\n ))\n })\n\n const parsedEventOverlapThreshold = computed((): number => {\n return parseInt(String(props.eventOverlapThreshold || 0))\n })\n\n const eventTextColorFunction = computed((): CalendarEventColorFunction => {\n return typeof props.eventTextColor === 'function'\n ? props.eventTextColor\n : () => props.eventTextColor as string\n })\n\n const eventNameFunction = computed((): CalendarEventNameFunction => {\n return typeof props.eventName === 'function'\n ? props.eventName\n : (event, timedEvent) => event.input[props.eventName as string] as string || ''\n })\n\n const eventModeFunction = computed((): CalendarEventOverlapMode => {\n return typeof props.eventOverlapMode === 'function'\n ? props.eventOverlapMode\n : CalendarEventOverlapModes[props.eventOverlapMode as keyof typeof CalendarEventOverlapModes]\n })\n\n const eventWeekdays = computed((): number[] => {\n return base.effectiveWeekdays.value\n })\n\n function eventColorFunction (e: CalendarEvent): string | undefined {\n return typeof props.eventColor === 'function'\n ? props.eventColor(e)\n : e.color || props.eventColor\n }\n\n const eventsRef = ref([])\n\n function updateEventVisibility () {\n if (noEvents.value || !props.eventMore) {\n return\n }\n\n const eventHeight = props.eventHeight || 0\n const eventsMap = getEventsMap()\n\n for (const date in eventsMap) {\n const { parent, events, more } = eventsMap[date]\n if (!more) {\n break\n }\n\n const parentBounds = parent.getBoundingClientRect()\n const last = events.length - 1\n const eventsSorted = events.map(event => ({\n event,\n bottom: event.getBoundingClientRect().bottom,\n })).sort((a, b) => a.bottom - b.bottom)\n let hidden = 0\n\n for (let i = 0; i <= last; i++) {\n const bottom = eventsSorted[i].bottom\n const hide = i === last\n ? (bottom > parentBounds.bottom)\n : (bottom + eventHeight > parentBounds.bottom)\n\n if (hide) {\n eventsSorted[i].event.style.display = 'none'\n hidden++\n }\n }\n\n // TODO: avoid direct DOM manipulation\n if (hidden) {\n more.style.display = ''\n more.innerHTML = base.locale.t(props.eventMoreText, hidden)\n } else {\n more.style.display = 'none'\n }\n }\n }\n\n function getEventsMap (): VDailyEventsMap {\n const eventsMap: VDailyEventsMap = {}\n const elements = eventsRef.value\n\n if (!elements || !elements.length) {\n return eventsMap\n }\n\n elements.forEach(el => {\n const date = el.getAttribute('data-date')\n if (el.parentElement && date) {\n if (!(date in eventsMap)) {\n eventsMap[date] = {\n parent: el.parentElement,\n more: null,\n events: [],\n }\n }\n if (el.getAttribute('data-more')) {\n eventsMap[date].more = el\n } else {\n eventsMap[date].events.push(el)\n el.style.display = ''\n }\n }\n })\n\n return eventsMap\n }\n\n function genDayEvent ({ event }: CalendarEventVisual, day: CalendarDaySlotScope): VNode {\n const eventHeight = props.eventHeight || 0\n const eventMarginBottom = props.eventMarginBottom || 0\n const dayIdentifier = getDayIdentifier(day)\n const week = day.week\n const start = dayIdentifier === event.startIdentifier\n let end = dayIdentifier === event.endIdentifier\n let width = WIDTH_START\n\n if (!categoryMode.value) {\n for (let i = day.index + 1; i < week.length; i++) {\n const weekdayIdentifier = getDayIdentifier(week[i])\n if (event.endIdentifier >= weekdayIdentifier) {\n width += WIDTH_FULL\n end = end || weekdayIdentifier === event.endIdentifier\n } else {\n end = true\n break\n }\n }\n }\n const scope = { eventParsed: event, day, start, end, timed: false }\n\n return genEvent(event, scope, false, {\n class: [\n 'v-event',\n { 'v-event-start': start, 'v-event-end': end },\n ],\n style: {\n height: `${eventHeight}px`,\n width: `${width}%`,\n marginBottom: `${eventMarginBottom}px`,\n },\n 'data-date': day.date,\n })\n }\n\n function genTimedEvent ({ event, left, width }: CalendarEventVisual, day: CalendarDayBodySlotScope): VNode | false {\n const startDelta = day.timeDelta(event.start, day)\n const endDelta = day.timeDelta(event.end, day)\n if (\n endDelta === false ||\n startDelta === false ||\n endDelta < 0 ||\n startDelta >= 1 ||\n isEventHiddenOn(event, day)\n ) {\n return false\n }\n\n const dayIdentifier = getDayIdentifier(day)\n const start = event.startIdentifier >= dayIdentifier\n const end = event.endIdentifier > dayIdentifier\n const top = day.timeToY(event.start, day)\n const bottom = day.timeToY(event.end, day)\n const height = Math.max(props.eventHeight || 0, bottom - top)\n const scope = { eventParsed: event, day, start, end, timed: true }\n\n return genEvent(event, scope, true, {\n class: 'v-event-timed',\n style: {\n top: `${top}px`,\n height: `${height}px`,\n left: `${left}%`,\n width: `${width}%`,\n },\n })\n }\n\n function genEvent (\n event: CalendarEventParsed,\n scopeInput: VEventScopeInput,\n timedEvent: boolean,\n data: Record\n ): VNode {\n const slot = slots.event\n const text = eventTextColorFunction.value(event.input)\n const background = eventColorFunction(event.input)\n const overlapsNoon = event.start.hour < 12 && event.end.hour >= 12\n const singline = diffMinutes(event.start, event.end) <= parsedEventOverlapThreshold.value\n const formatTime = (withTime: CalendarTimestamp, ampm: boolean): string => {\n const formatter = base.getFormatter({\n timeZone: 'UTC',\n hour: 'numeric',\n minute: withTime.minute > 0 ? 'numeric' : undefined,\n })\n return formatter(withTime, true)\n }\n\n const timeSummary = () => formatTime(event.start, overlapsNoon) + ' - ' + formatTime(event.end, true)\n\n const eventSummary = () => {\n const name = eventNameFunction.value(event, timedEvent)\n if (event.start.hasTime) {\n if (timedEvent) {\n const time = timeSummary()\n const delimiter = singline ? ', ' :
\n\n return (\n \n { name }\n { delimiter }\n { time }\n \n )\n } else {\n const time = formatTime(event.start, true)\n\n return (\n \n { time } { name }\n \n )\n }\n }\n\n return { name }\n }\n\n const scope = {\n ...scopeInput,\n event: event.input,\n outside: scopeInput.day.outside,\n singline,\n overlapsNoon,\n formatTime,\n timeSummary,\n eventSummary,\n }\n\n const events = getPrefixedEventHandlers(attrs, ':event', (nativeEvent: Event) => ({ ...scope, nativeEvent }))\n\n return (\n \n { slot?.(scope) ?? genName(eventSummary) }\n \n )\n }\n\n function genName (eventSummary: () => string | VNode): VNode {\n return (\n
\n { eventSummary() }\n
\n )\n }\n\n function genPlaceholder (day: CalendarTimestamp): VNode {\n const height = (props.eventHeight || 0) + (props.eventMarginBottom || 0)\n return (\n \n )\n }\n\n function genMore (day: CalendarDaySlotScope): VNode {\n const eventHeight = props.eventHeight || 0\n const eventMarginBottom = props.eventMarginBottom || 0\n const events = getPrefixedEventHandlers(attrs, ':more', (nativeEvent: Event) => ({ nativeEvent, ...day }))\n\n return (\n \n )\n }\n\n function getVisibleEvents (): CalendarEventParsed[] {\n const days = base.days.value\n const start = getDayIdentifier(days[0])\n const end = getDayIdentifier(days[days.length - 1])\n\n return parsedEvents.value.filter(\n event => isEventOverlapping(event, start, end)\n )\n }\n\n function isEventForCategory (event: CalendarEventParsed, category: CalendarCategory): boolean {\n return !categoryMode.value ||\n (typeof category === 'object' && category.categoryName &&\n category.categoryName === event.category) ||\n (typeof event.category === 'string' && category === event.category) ||\n (typeof event.category !== 'string' && category === null)\n }\n\n function getEventsForDay (day: CalendarDaySlotScope): CalendarEventParsed[] {\n const identifier = getDayIdentifier(day)\n const firstWeekday = eventWeekdays.value[0]\n\n return parsedEvents.value.filter(\n event => isEventStart(event, day, identifier, firstWeekday)\n )\n }\n\n function getEventsForDayAll (day: CalendarDaySlotScope): CalendarEventParsed[] {\n const identifier = getDayIdentifier(day)\n const firstWeekday = eventWeekdays.value[0]\n\n return parsedEvents.value.filter(\n event => event.allDay &&\n (categoryMode.value ? isEventOn(event, identifier) : isEventStart(event, day, identifier, firstWeekday)) &&\n isEventForCategory(event, day.category)\n )\n }\n\n function getEventsForDayTimed (day: CalendarDaySlotScope): CalendarEventParsed[] {\n return parsedEvents.value.filter(\n event => !event.allDay &&\n isEventOnDay(event, day, day.intervalRange) &&\n isEventForCategory(event, day.category)\n )\n }\n\n function getScopedSlots () {\n if (noEvents.value) {\n return { ...slots }\n }\n\n const mode = eventModeFunction.value(\n parsedEvents.value,\n eventWeekdays.value[0],\n parsedEventOverlapThreshold.value\n )\n\n const isNode = (input: VNode | false): input is VNode => !!input\n const getSlotChildren: VEventsToNodes = (day, getter, mapper, timed) => {\n const events = getter(day)\n const visuals = mode(day, events, timed, categoryMode.value)\n\n if (timed) {\n return visuals.map(visual => mapper(visual, day)).filter(isNode)\n }\n\n const children: VNode[] = []\n\n visuals.forEach((visual, index) => {\n while (children.length < visual.column) {\n children.push(genPlaceholder(day) as VNode)\n }\n\n const mapped = mapper(visual, day)\n if (mapped) {\n children.push(mapped)\n }\n })\n\n return children\n }\n\n return {\n ...slots,\n day: (day: CalendarDaySlotScope) => {\n let children = getSlotChildren(day, getEventsForDay, genDayEvent, false)\n if (children && children.length > 0 && props.eventMore) {\n children.push(genMore(day) as VNode)\n }\n if (slots.day) {\n const slot = slots.day(day)\n if (slot) {\n children = children ? children.concat(slot) : slot\n }\n }\n return children\n },\n 'day-header': (day: CalendarDaySlotScope) => {\n let children = getSlotChildren(day, getEventsForDayAll, genDayEvent, false)\n\n if (slots['day-header']) {\n const slot = slots['day-header'](day)\n if (slot) {\n children = children ? children.concat(slot) : slot\n }\n }\n return children\n },\n 'day-body': (day: CalendarDayBodySlotScope) => {\n const events = getSlotChildren(day, getEventsForDayTimed, genTimedEvent, true)\n let children: VNode[] = [\n
{ events }
,\n ]\n\n if (slots['day-body']) {\n const slot = slots['day-body'](day)\n if (slot) {\n children = children.concat(slot)\n }\n }\n return children\n },\n }\n }\n\n return {\n ...base,\n noEvents,\n parsedEvents,\n parsedEventOverlapThreshold,\n eventTimedFunction,\n eventCategoryFunction,\n eventTextColorFunction,\n eventNameFunction,\n eventModeFunction,\n eventWeekdays,\n categoryMode,\n eventColorFunction,\n eventsRef,\n updateEventVisibility,\n getEventsMap,\n genDayEvent,\n genTimedEvent,\n genEvent,\n genName,\n genPlaceholder,\n genMore,\n getVisibleEvents,\n isEventForCategory,\n getEventsForDay,\n getEventsForDayAll,\n getEventsForDayTimed,\n getScopedSlots,\n }\n}\n", "// Types\nimport type { CalendarEventParsed, CalendarEventVisual, CalendarTimestamp } from '../types'\nimport { getTimestampIdentifier } from '../util/timestamp'\n\nconst MILLIS_IN_DAY = 86400000\n\nexport type GetRange = (event: CalendarEventParsed) => [number, number]\n\nexport function getVisuals (events: CalendarEventParsed[], minStart = 0): CalendarEventVisual[] {\n const visuals = events.map(event => ({\n event,\n columnCount: 0,\n column: 0,\n left: 0,\n width: 100,\n }))\n\n visuals.sort((a, b) => {\n return (\n Math.max(minStart, a.event.startTimestampIdentifier) - Math.max(minStart, b.event.startTimestampIdentifier)\n ) || (b.event.endTimestampIdentifier - a.event.endTimestampIdentifier)\n })\n\n return visuals\n}\n\nexport interface ColumnGroup {\n start: number\n end: number\n visuals: CalendarEventVisual[]\n}\n\nexport function hasOverlap (s0: number, e0: number, s1: number, e1: number, exclude = true): boolean {\n return exclude ? !(s0 >= e1 || e0 <= s1) : !(s0 > e1 || e0 < s1)\n}\n\nexport function setColumnCount (groups: ColumnGroup[]) {\n groups.forEach(group => {\n group.visuals.forEach(groupVisual => {\n groupVisual.columnCount = groups.length\n })\n })\n}\n\nexport function getRange (event: CalendarEventParsed): [number, number] {\n return [event.startTimestampIdentifier, event.endTimestampIdentifier]\n}\n\nexport function getDayRange (event: CalendarEventParsed): [number, number] {\n return [event.startIdentifier, event.endIdentifier]\n}\n\nexport function getNormalizedRange (event: CalendarEventParsed, dayStart: number): [number, number] {\n return [Math.max(dayStart, event.startTimestampIdentifier), Math.min(dayStart + MILLIS_IN_DAY, event.endTimestampIdentifier)]\n}\n\nexport function getOpenGroup (groups: ColumnGroup[], start: number, end: number, timed: boolean) {\n for (let i = 0; i < groups.length; i++) {\n const group = groups[i]\n let intersected = false\n\n if (hasOverlap(start, end, group.start, group.end, timed)) {\n for (let k = 0; k < group.visuals.length; k++) {\n const groupVisual = group.visuals[k]\n const [groupStart, groupEnd] = timed ? getRange(groupVisual.event) : getDayRange(groupVisual.event)\n\n if (hasOverlap(start, end, groupStart, groupEnd, timed)) {\n intersected = true\n break\n }\n }\n }\n\n if (!intersected) {\n return i\n }\n }\n\n return -1\n}\n\nexport function getOverlapGroupHandler (firstWeekday: number) {\n const handler = {\n groups: [] as ColumnGroup[],\n min: -1,\n max: -1,\n reset: () => {\n handler.groups = []\n handler.min = handler.max = -1\n },\n getVisuals: (day: CalendarTimestamp, dayEvents: CalendarEventParsed[], timed: boolean, reset = false) => {\n if (day.weekday === firstWeekday || reset) {\n handler.reset()\n }\n\n const dayStart = getTimestampIdentifier(day)\n const visuals = getVisuals(dayEvents, dayStart)\n\n visuals.forEach(visual => {\n const [start, end] = timed ? getRange(visual.event) : getDayRange(visual.event)\n\n if (handler.groups.length > 0 && !hasOverlap(start, end, handler.min, handler.max, timed)) {\n setColumnCount(handler.groups)\n handler.reset()\n }\n\n let targetGroup = getOpenGroup(handler.groups, start, end, timed)\n\n if (targetGroup === -1) {\n targetGroup = handler.groups.length\n\n handler.groups.push({ start, end, visuals: [] })\n }\n\n const target = handler.groups[targetGroup]\n target.visuals.push(visual)\n target.start = Math.min(target.start, start)\n target.end = Math.max(target.end, end)\n\n visual.column = targetGroup\n\n if (handler.min === -1) {\n handler.min = start\n handler.max = end\n } else {\n handler.min = Math.min(handler.min, start)\n handler.max = Math.max(handler.max, end)\n }\n })\n\n setColumnCount(handler.groups)\n\n if (timed) {\n handler.reset()\n }\n\n return visuals\n },\n }\n\n return handler\n}\n", "// Types\nimport { getOverlapGroupHandler } from './common'\nimport type { CalendarEventOverlapMode } from '../types'\n\nconst FULL_WIDTH = 100\n\nexport const column: CalendarEventOverlapMode = (events, firstWeekday, overlapThreshold) => {\n const handler = getOverlapGroupHandler(firstWeekday)\n\n return (day, dayEvents, timed, reset) => {\n const visuals = handler.getVisuals(day, dayEvents, timed, reset)\n\n if (timed) {\n visuals.forEach(visual => {\n visual.left = visual.column * FULL_WIDTH / visual.columnCount\n visual.width = FULL_WIDTH / visual.columnCount\n })\n }\n\n return visuals\n }\n}\n", "// Types\nimport { getNormalizedRange, getOverlapGroupHandler, getVisuals, hasOverlap } from './common'\nimport type { CalendarEventOverlapMode, CalendarEventVisual } from '../types'\nimport { getTimestampIdentifier } from '../util/timestamp'\n\ninterface Group {\n start: number\n end: number\n visuals: CalendarEventVisual[]\n}\n\ninterface Node {\n parent: Node | null\n sibling: boolean\n index: number\n visual: CalendarEventVisual\n start: number\n end: number\n children: Node[]\n}\n\nconst FULL_WIDTH = 100\n\nconst DEFAULT_OFFSET = 5\n\nconst WIDTH_MULTIPLIER = 1.7\n\n/**\n * Variation of column mode where events can be stacked. The priority of this\n * mode is to stack events together taking up the least amount of space while\n * trying to ensure the content of the event is always visible as well as its\n * start and end. A sibling column has intersecting event content and must be\n * placed beside each other. Non-sibling columns are offset by 5% from the\n * previous column. The width is scaled by 1.7 so the events overlap and\n * whitespace is reduced. If there is a hole in columns the event width is\n * scaled up so it intersects with the next column. The columns have equal\n * width in the space they are given. If the event doesn't have any to the\n * right of it that intersect with it's content it's right side is extended\n * to the right side.\n */\n\nexport const stack: CalendarEventOverlapMode = (events, firstWeekday, overlapThreshold) => {\n const handler = getOverlapGroupHandler(firstWeekday)\n\n // eslint-disable-next-line max-statements\n return (day, dayEvents, timed, reset) => {\n if (!timed) {\n return handler.getVisuals(day, dayEvents, timed, reset)\n }\n\n const dayStart = getTimestampIdentifier(day)\n const visuals = getVisuals(dayEvents, dayStart)\n const groups = getGroups(visuals, dayStart)\n\n for (const group of groups) {\n const nodes: Node[] = []\n\n for (const visual of group.visuals) {\n const child = getNode(visual, dayStart)\n const index = getNextIndex(child, nodes)\n\n if (index === false) {\n const parent = getParent(child, nodes)\n if (parent) {\n child.parent = parent\n child.sibling = hasOverlap(child.start, child.end, parent.start, addTime(parent.start, overlapThreshold))\n child.index = parent.index + 1\n parent.children.push(child)\n }\n } else {\n const [parent] = getOverlappingRange(child, nodes, index - 1, index - 1)\n const children = getOverlappingRange(child, nodes, index + 1, index + nodes.length, true)\n\n child.children = children\n child.index = index\n\n if (parent) {\n child.parent = parent\n child.sibling = hasOverlap(child.start, child.end, parent.start, addTime(parent.start, overlapThreshold))\n parent.children.push(child)\n }\n\n for (const grand of children) {\n if (grand.parent === parent) {\n grand.parent = child\n }\n\n const grandNext = grand.index - child.index <= 1\n if (grandNext && child.sibling &&\n hasOverlap(child.start, addTime(child.start, overlapThreshold), grand.start, grand.end)) {\n grand.sibling = true\n }\n }\n }\n\n nodes.push(child)\n }\n\n calculateBounds(nodes, overlapThreshold)\n }\n\n visuals.sort((a, b) => (a.left - b.left) || (a.event.startTimestampIdentifier - b.event.startTimestampIdentifier))\n\n return visuals\n }\n}\n\nfunction calculateBounds (nodes: Node[], overlapThreshold: number) {\n for (const node of nodes) {\n const { visual, parent } = node\n const columns = getMaxChildIndex(node) + 1\n const spaceLeft = parent ? parent.visual.left : 0\n const spaceWidth = FULL_WIDTH - spaceLeft\n const offset = Math.min(DEFAULT_OFFSET, FULL_WIDTH / columns)\n const columnWidthMultiplier = getColumnWidthMultiplier(node, nodes)\n const columnOffset = spaceWidth / (columns - node.index + 1)\n const columnWidth = spaceWidth / (columns - node.index + (node.sibling ? 1 : 0)) * columnWidthMultiplier\n\n if (parent) {\n visual.left = node.sibling\n ? spaceLeft + columnOffset\n : spaceLeft + offset\n }\n\n visual.width = hasFullWidth(node, nodes, overlapThreshold)\n ? FULL_WIDTH - visual.left\n : Math.min(FULL_WIDTH - visual.left, columnWidth * WIDTH_MULTIPLIER)\n }\n}\n\nfunction getColumnWidthMultiplier (node: Node, nodes: Node[]): number {\n if (!node.children.length) {\n return 1\n }\n\n const maxColumn = node.index + nodes.length\n const minColumn = node.children.reduce((min, c) => Math.min(min, c.index), maxColumn)\n\n return minColumn - node.index\n}\n\nfunction getOverlappingIndices (node: Node, nodes: Node[]): number[] {\n const indices: number[] = []\n for (const other of nodes) {\n if (hasOverlap(node.start, node.end, other.start, other.end)) {\n indices.push(other.index)\n }\n }\n return indices\n}\n\nfunction getNextIndex (node: Node, nodes: Node[]): number | false {\n const indices = getOverlappingIndices(node, nodes)\n indices.sort()\n\n for (let i = 0; i < indices.length; i++) {\n if (i < indices[i]) {\n return i\n }\n }\n return false\n}\n\nfunction getOverlappingRange (node: Node, nodes: Node[], indexMin: number, indexMax: number, returnFirstColumn = false): Node[] {\n const overlapping: Node[] = []\n for (const other of nodes) {\n if (other.index >= indexMin && other.index <= indexMax && hasOverlap(node.start, node.end, other.start, other.end)) {\n overlapping.push(other)\n }\n }\n if (returnFirstColumn && overlapping.length > 0) {\n const first = overlapping.reduce((min, n) => Math.min(min, n.index), overlapping[0].index)\n return overlapping.filter(n => n.index === first)\n }\n return overlapping\n}\n\nfunction getParent (node: Node, nodes: Node[]): Node | null {\n let parent: Node | null = null\n for (const other of nodes) {\n if (hasOverlap(node.start, node.end, other.start, other.end) && (parent === null || other.index > parent.index)) {\n parent = other\n }\n }\n return parent\n}\n\nfunction hasFullWidth (node: Node, nodes: Node[], overlapThreshold: number): boolean {\n for (const other of nodes) {\n if (other !== node &&\n other.index > node.index &&\n hasOverlap(node.start, addTime(node.start, overlapThreshold), other.start, other.end)) {\n return false\n }\n }\n\n return true\n}\n\nfunction getGroups (visuals: CalendarEventVisual[], dayStart: number): Group[] {\n const groups: Group[] = []\n\n for (const visual of visuals) {\n const [start, end] = getNormalizedRange(visual.event, dayStart)\n let added = false\n\n for (const group of groups) {\n if (hasOverlap(start, end, group.start, group.end)) {\n group.visuals.push(visual)\n group.end = Math.max(group.end, end)\n added = true\n break\n }\n }\n\n if (!added) {\n groups.push({ start, end, visuals: [visual] })\n }\n }\n\n return groups\n}\n\nfunction getNode (visual: CalendarEventVisual, dayStart: number): Node {\n const [start, end] = getNormalizedRange(visual.event, dayStart)\n\n return {\n parent: null,\n sibling: true,\n index: 0,\n visual,\n start,\n end,\n children: [],\n }\n}\n\nfunction getMaxChildIndex (node: Node): number {\n let max = node.index\n for (const child of node.children) {\n const childMax = getMaxChildIndex(child)\n if (childMax > max) {\n max = childMax\n }\n }\n return max\n}\n\nfunction addTime (identifier: number, minutes: number): number {\n const removeMinutes = identifier % 100\n const totalMinutes = removeMinutes + minutes\n const addHours = Math.floor(totalMinutes / 60)\n const addMinutes = totalMinutes % 60\n\n return identifier - removeMinutes + addHours * 100 + addMinutes\n}\n", "// Types\nimport { column } from './column'\nimport { stack } from './stack'\nimport type { CalendarEventOverlapMode } from '../types'\n\nexport const CalendarEventOverlapModes: Record = {\n stack,\n column,\n}\n", "import {\n copyTimestamp,\n getDayIdentifier,\n getTimestampIdentifier,\n isTimedless,\n nextMinutes,\n parseTimestamp,\n updateHasTime,\n} from './timestamp'\n\n// Types\nimport type { CalendarEvent, CalendarEventParsed, CalendarTimestamp } from '../types'\n\nexport function parseEvent (\n input: CalendarEvent,\n index: number,\n startProperty: string,\n endProperty: string,\n timed = false,\n category: string | false = false,\n): CalendarEventParsed {\n const startInput = input[startProperty]\n const endInput = input[endProperty]\n const startParsed: CalendarTimestamp = parseTimestamp(startInput, true)\n const endParsed: CalendarTimestamp = (endInput ? parseTimestamp(endInput, true) : startParsed)\n const start: CalendarTimestamp = isTimedless(startInput)\n ? updateHasTime(startParsed, timed)\n : startParsed\n const end: CalendarTimestamp = isTimedless(endInput)\n ? updateHasTime(endParsed, timed)\n : endParsed\n const startIdentifier: number = getDayIdentifier(start)\n const startTimestampIdentifier: number = getTimestampIdentifier(start)\n const endIdentifier: number = getDayIdentifier(end)\n const endOffset: number = start.hasTime ? 0 : 2359\n const endTimestampIdentifier: number = getTimestampIdentifier(end) + endOffset\n const allDay = !start.hasTime\n\n return { input, start, startIdentifier, startTimestampIdentifier, end, endIdentifier, endTimestampIdentifier, allDay, index, category }\n}\n\nexport function isEventOn (event: CalendarEventParsed, dayIdentifier: number): boolean {\n return dayIdentifier >= event.startIdentifier && dayIdentifier <= event.endIdentifier\n}\n\nexport function isEventOnDay (\n event: CalendarEventParsed,\n day: CalendarTimestamp,\n inRange?: [number, number]\n): boolean {\n if (inRange) {\n const dayStart = nextMinutes(copyTimestamp(day), inRange[0])\n const dayEnd = nextMinutes(copyTimestamp(day), inRange[1])\n\n const starts = event.startTimestampIdentifier < getTimestampIdentifier(dayEnd)\n const ends = event.endTimestampIdentifier > getTimestampIdentifier(dayStart)\n\n return starts && ends\n }\n\n return isEventOn(event, getDayIdentifier(day))\n}\n\nexport function isEventHiddenOn (event: CalendarEventParsed, day: CalendarTimestamp): boolean {\n return event.end.time === '00:00' && event.end.date === day.date && event.start.date !== day.date\n}\n\nexport function isEventStart (\n event: CalendarEventParsed,\n day: CalendarTimestamp,\n dayIdentifier: number,\n firstWeekday: number\n): boolean {\n return dayIdentifier === event.startIdentifier || (firstWeekday === day.weekday && isEventOn(event, dayIdentifier))\n}\n\nexport function isEventOverlapping (\n event: CalendarEventParsed,\n startIdentifier: number,\n endIdentifier: number\n): boolean {\n return startIdentifier <= event.endIdentifier && endIdentifier >= event.startIdentifier\n}\n", "// Styles\nimport './VCarousel.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VProgressLinear } from '@/components/VProgressLinear'\nimport { makeVWindowProps, VWindow } from '@/components/VWindow/VWindow'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { onMounted, ref, watch } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VWindowSlots } from '@/components/VWindow/VWindow'\nimport type { GroupProvide } from '@/composables/group'\nimport type { GenericProps } from '@/util'\n\nexport const makeVCarouselProps = propsFactory({\n color: String,\n cycle: Boolean,\n delimiterIcon: {\n type: IconValue,\n default: '$delimiter',\n },\n height: {\n type: [Number, String],\n default: 500,\n },\n hideDelimiters: Boolean,\n hideDelimiterBackground: Boolean,\n interval: {\n type: [Number, String],\n default: 6000,\n validator: (value: string | number) => Number(value) > 0,\n },\n progress: [Boolean, String],\n verticalDelimiters: [Boolean, String] as PropType,\n\n ...makeVWindowProps({\n continuous: true,\n mandatory: 'force' as const,\n showArrows: true,\n }),\n}, 'VCarousel')\n\ntype VCarouselSlots = Omit & {\n item: {\n props: Record\n item: {\n id: string\n value: unknown\n disabled: boolean | undefined\n }\n }\n}\n\nexport const VCarousel = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VCarouselSlots,\n) => GenericProps>()({\n name: 'VCarousel',\n\n props: makeVCarouselProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { t } = useLocale()\n const windowRef = ref()\n\n let slideTimeout = -1\n watch(model, restartTimeout)\n watch(() => props.interval, restartTimeout)\n watch(() => props.cycle, val => {\n if (val) restartTimeout()\n else window.clearTimeout(slideTimeout)\n })\n\n onMounted(startTimeout)\n\n function startTimeout () {\n if (!props.cycle || !windowRef.value) return\n\n slideTimeout = window.setTimeout(\n windowRef.value.group.next,\n Number(props.interval) > 0 ? Number(props.interval) : 6000\n )\n }\n\n function restartTimeout () {\n window.clearTimeout(slideTimeout)\n window.requestAnimationFrame(startTimeout)\n }\n\n useRender(() => {\n const windowProps = VWindow.filterProps(props)\n\n return (\n \n {{\n default: slots.default,\n additional: ({ group }: { group: GroupProvide }) => (\n <>\n { !props.hideDelimiters && (\n \n { group.items.value.length > 0 && (\n \n { group.items.value.map((item, index) => {\n const props = {\n id: `carousel-item-${item.id}`,\n 'aria-label': t('$vuetify.carousel.ariaLabel.delimiter', index + 1, group.items.value.length),\n class: [\n 'v-carousel__controls__item',\n group.isSelected(item.id) && 'v-btn--active',\n ],\n onClick: () => group.select(item.id, true),\n }\n\n return slots.item\n ? slots.item({ props, item })\n : ()\n })}\n \n )}\n \n )}\n\n { props.progress && (\n \n )}\n \n ),\n prev: slots.prev,\n next: slots.next,\n }}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VCarousel = InstanceType\n", "// Styles\nimport './VWindow.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { useGroup } from '@/composables/group'\nimport { useLocale, useRtl } from '@/composables/locale'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Directives\nimport vTouch from '@/directives/touch'\n\n// Utilities\nimport { computed, nextTick, provide, ref, shallowRef, toRef, watch } from 'vue'\nimport { convertToUnit, genericComponent, IN_BROWSER, PREFERS_REDUCED_MOTION, propsFactory, useRender } from '@/util'\nimport { getScrollParent } from '@/util/getScrollParent'\n\n// Types\nimport type { ComputedRef, InjectionKey, PropType, Ref } from 'vue'\nimport type { GroupItemProvide, GroupProvide } from '@/composables/group'\nimport type { IconValue } from '@/composables/icons'\nimport type { TouchHandlers } from '@/directives/touch'\nimport type { GenericProps } from '@/util'\n\nexport type VWindowSlots = {\n default: { group: GroupProvide }\n additional: { group: GroupProvide }\n prev: { props: ControlProps }\n next: { props: ControlProps }\n}\n\ntype WindowProvide = {\n transition: ComputedRef\n transitionCount: Ref\n transitionHeight: Ref\n isReversed: Ref\n rootRef: Ref\n}\n\ntype ControlProps = {\n icon: IconValue\n class: string\n onClick: () => void\n 'aria-label': string\n}\n\nexport const VWindowSymbol: InjectionKey = Symbol.for('vuetify:v-window')\nexport const VWindowGroupSymbol: InjectionKey = Symbol.for('vuetify:v-window-group')\n\nexport const makeVWindowProps = propsFactory({\n continuous: Boolean,\n nextIcon: {\n type: [Boolean, String, Function, Object] as PropType,\n default: '$next',\n },\n prevIcon: {\n type: [Boolean, String, Function, Object] as PropType,\n default: '$prev',\n },\n reverse: Boolean,\n showArrows: {\n type: [Boolean, String],\n validator: (v: any) => typeof v === 'boolean' || v === 'hover',\n },\n verticalArrows: [Boolean, String] as PropType,\n touch: {\n type: [Object, Boolean] as PropType,\n default: undefined,\n },\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n },\n\n modelValue: null,\n disabled: Boolean,\n selectedClass: {\n type: String,\n default: 'v-window-item--active',\n },\n // TODO: mandatory should probably not be exposed but do this for now\n mandatory: {\n type: [Boolean, String] as PropType,\n default: 'force' as const,\n },\n crossfade: Boolean,\n transitionDuration: Number,\n\n ...makeComponentProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VWindow')\n\nexport const VWindow = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VWindowSlots,\n) => GenericProps>()({\n name: 'VWindow',\n\n directives: { vTouch },\n\n props: makeVWindowProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { isRtl } = useRtl()\n const { t } = useLocale()\n\n const group = useGroup(props, VWindowGroupSymbol)\n\n const rootRef = ref()\n const isRtlReverse = computed(() => isRtl.value ? !props.reverse : props.reverse)\n const isReversed = shallowRef(false)\n const transition = computed(() => {\n if (props.crossfade) {\n return 'v-window-crossfade-transition'\n }\n\n const axis = props.direction === 'vertical' ? 'y' : 'x'\n const reverse = isRtlReverse.value ? !isReversed.value : isReversed.value\n const direction = reverse ? '-reverse' : ''\n\n return `v-window-${axis}${direction}-transition`\n })\n const transitionCount = shallowRef(0)\n const transitionHeight = ref(undefined)\n\n const activeIndex = computed(() => {\n return group.items.value.findIndex(item => group.selected.value.includes(item.id))\n })\n\n // Fix for https://github.com/vuetifyjs/vuetify/issues/18447\n watch(activeIndex, (newVal, oldVal) => {\n let scrollableParent: HTMLElement | undefined\n const savedScrollPosition = { left: 0, top: 0 }\n\n if (IN_BROWSER && oldVal >= 0) {\n scrollableParent = getScrollParent(rootRef.value)\n\n savedScrollPosition.left = scrollableParent?.scrollLeft\n savedScrollPosition.top = scrollableParent?.scrollTop\n }\n\n const itemsLength = group.items.value.length\n const lastIndex = itemsLength - 1\n\n if (itemsLength <= 2) {\n isReversed.value = newVal < oldVal\n } else if (newVal === lastIndex && oldVal === 0) {\n isReversed.value = false\n } else if (newVal === 0 && oldVal === lastIndex) {\n isReversed.value = true\n } else {\n isReversed.value = newVal < oldVal\n }\n\n nextTick(() => {\n if (!IN_BROWSER || !scrollableParent) return\n\n const currentScrollY = scrollableParent.scrollTop\n\n if (currentScrollY !== savedScrollPosition.top) {\n scrollableParent.scrollTo({ ...savedScrollPosition, behavior: 'instant' })\n }\n\n requestAnimationFrame(() => {\n if (!scrollableParent) return\n\n const rafScrollY = scrollableParent.scrollTop\n\n if (rafScrollY !== savedScrollPosition.top) {\n scrollableParent.scrollTo({ ...savedScrollPosition, behavior: 'instant' })\n }\n })\n })\n }, { flush: 'sync' }) // Run synchronously before DOM updates\n\n provide(VWindowSymbol, {\n transition,\n isReversed,\n transitionCount,\n transitionHeight,\n rootRef,\n })\n\n const canMoveBack = toRef(() => props.continuous || activeIndex.value !== 0)\n const canMoveForward = toRef(() => props.continuous || activeIndex.value !== group.items.value.length - 1)\n\n function prev () {\n canMoveBack.value && group.prev()\n }\n\n function next () {\n canMoveForward.value && group.next()\n }\n\n const arrows = computed(() => {\n const arrows = []\n\n const prevProps = {\n icon: isRtl.value ? props.nextIcon : props.prevIcon,\n class: `v-window__${isRtlReverse.value ? 'right' : 'left'}`,\n onClick: group.prev,\n 'aria-label': t('$vuetify.carousel.prev'),\n }\n\n arrows.push(canMoveBack.value\n ? slots.prev\n ? slots.prev({ props: prevProps })\n : \n :
\n )\n\n const nextProps = {\n icon: isRtl.value ? props.prevIcon : props.nextIcon,\n class: `v-window__${isRtlReverse.value ? 'left' : 'right'}`,\n onClick: group.next,\n 'aria-label': t('$vuetify.carousel.next'),\n }\n\n arrows.push(canMoveForward.value\n ? slots.next\n ? slots.next({ props: nextProps })\n : \n :
\n )\n\n return arrows\n })\n\n const touchOptions = computed(() => {\n if (props.touch === false) return props.touch\n\n const options: TouchHandlers = {\n left: () => {\n isRtlReverse.value ? prev() : next()\n },\n right: () => {\n isRtlReverse.value ? next() : prev()\n },\n start: ({ originalEvent }) => {\n originalEvent.stopPropagation()\n },\n }\n\n return {\n ...options,\n ...(props.touch === true ? {} : props.touch),\n }\n })\n\n useRender(() => (\n \n \n { slots.default?.({ group }) }\n\n { props.showArrows !== false && (\n \n { arrows.value }\n
\n )}\n
\n\n { slots.additional?.({ group }) }\n \n ))\n\n return {\n group,\n }\n },\n})\n\nexport type VWindow = InstanceType\n", "// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { makeLazyProps, useLazy } from '@/composables/lazy'\nimport { useSsrBoot } from '@/composables/ssrBoot'\nimport { MaybeTransition } from '@/composables/transition'\n\n// Directives\nimport vTouch from '@/directives/touch'\n\n// Utilities\nimport { computed, inject, nextTick, shallowRef } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport { VWindowGroupSymbol, VWindowSymbol } from './VWindow'\n\nexport const makeVWindowItemProps = propsFactory({\n reverseTransition: {\n type: [Boolean, String],\n default: undefined,\n },\n transition: {\n type: [Boolean, String],\n default: undefined,\n },\n\n ...makeComponentProps(),\n ...makeGroupItemProps(),\n ...makeLazyProps(),\n}, 'VWindowItem')\n\nexport const VWindowItem = genericComponent()({\n name: 'VWindowItem',\n\n directives: { vTouch },\n\n props: makeVWindowItemProps(),\n\n emits: {\n 'group:selected': (val: { value: boolean }) => true,\n },\n\n setup (props, { slots }) {\n const window = inject(VWindowSymbol)\n const groupItem = useGroupItem(props, VWindowGroupSymbol)\n const { isBooted } = useSsrBoot()\n\n if (!window || !groupItem) throw new Error('[Vuetify] VWindowItem must be used inside VWindow')\n\n const isTransitioning = shallowRef(false)\n const hasTransition = computed(() => isBooted.value && (\n window.isReversed.value\n ? props.reverseTransition !== false\n : props.transition !== false\n ))\n\n function onAfterTransition () {\n if (!isTransitioning.value || !window) {\n return\n }\n\n // Finalize transition state.\n isTransitioning.value = false\n if (window.transitionCount.value > 0) {\n window.transitionCount.value -= 1\n\n // Remove container height if we are out of transition.\n if (window.transitionCount.value === 0) {\n window.transitionHeight.value = undefined\n }\n }\n }\n\n function onBeforeTransition () {\n if (isTransitioning.value || !window) {\n return\n }\n\n // Initialize transition state here.\n isTransitioning.value = true\n\n if (window.transitionCount.value === 0) {\n // Set initial height for height transition.\n window.transitionHeight.value = convertToUnit(window.rootRef.value?.clientHeight)\n }\n\n window.transitionCount.value += 1\n }\n\n function onTransitionCancelled () {\n onAfterTransition() // This should have the same path as normal transition end.\n }\n\n function onEnterTransition (el: Element) {\n if (!isTransitioning.value) {\n return\n }\n\n nextTick(() => {\n // Do not set height if no transition or cancelled.\n if (!hasTransition.value || !isTransitioning.value || !window) {\n return\n }\n\n // Set transition target height.\n window.transitionHeight.value = convertToUnit(el.clientHeight)\n })\n }\n\n const transition = computed(() => {\n const name = window.isReversed.value\n ? props.reverseTransition\n : props.transition\n\n return !hasTransition.value ? false : {\n name: typeof name !== 'string' ? window.transition.value : name,\n onBeforeEnter: onBeforeTransition,\n onAfterEnter: onAfterTransition,\n onEnterCancelled: onTransitionCancelled,\n onBeforeLeave: onBeforeTransition,\n onAfterLeave: onAfterTransition,\n onLeaveCancelled: onTransitionCancelled,\n onEnter: onEnterTransition,\n }\n })\n\n const { hasContent } = useLazy(props, groupItem.isSelected)\n\n useRender(() => (\n \n \n { hasContent.value && slots.default?.() }\n \n \n ))\n\n return { groupItem }\n },\n})\n\nexport type VWindowItem = InstanceType\n", "// Components\nimport { makeVImgProps, VImg } from '@/components/VImg/VImg'\nimport { makeVWindowItemProps, VWindowItem } from '@/components/VWindow/VWindowItem'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VImgSlots } from '@/components/VImg/VImg'\n\nexport const makeVCarouselItemProps = propsFactory({\n ...makeVImgProps(),\n ...makeVWindowItemProps(),\n}, 'VCarouselItem')\n\nexport const VCarouselItem = genericComponent()({\n name: 'VCarouselItem',\n\n inheritAttrs: false,\n\n props: makeVCarouselItemProps(),\n\n setup (props, { slots, attrs }) {\n useRender(() => {\n const imgProps = VImg.filterProps(props)\n const windowItemProps = VWindowItem.filterProps(props)\n\n return (\n \n \n \n )\n })\n },\n})\n\nexport type VCarouselItem = InstanceType\n", "// Styles\nimport './VCode.sass'\n\n// Utilities\nimport { createSimpleFunctional } from '@/util'\n\nexport const VCode = createSimpleFunctional('v-code', 'code')\n\nexport type VCode = InstanceType\n", "// Styles\nimport './VColorPicker.sass'\n\n// Components\nimport { VColorPickerCanvas } from './VColorPickerCanvas'\nimport { VColorPickerEdit } from './VColorPickerEdit'\nimport { makeVColorPickerPreviewProps, VColorPickerPreview } from './VColorPickerPreview'\nimport { VColorPickerSwatches } from './VColorPickerSwatches'\nimport { makeVPickerProps, VPicker } from '@/labs/VPicker/VPicker'\n\n// Composables\nimport { useRtl } from '@/composables'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, onBeforeMount, ref, watch } from 'vue'\nimport { extractColor, modes, nullColor } from './util'\nimport { consoleWarn, defineComponent, HSVtoCSS, parseColor, pick, propsFactory, RGBtoHSV, useRender } from '@/util'\n\n// Types\nimport type { DeepReadonly, PropType } from 'vue'\nimport type { Color, HSV } from '@/util'\n\nexport const makeVColorPickerProps = propsFactory({\n canvasHeight: {\n type: [String, Number],\n default: 150,\n },\n disabled: Boolean,\n dotSize: {\n type: [Number, String],\n default: 10,\n },\n hideCanvas: Boolean,\n hideSliders: Boolean,\n hideInputs: Boolean,\n mode: {\n type: String as PropType,\n default: 'rgba',\n validator: (v: string) => Object.keys(modes).includes(v),\n },\n modes: {\n type: Array as PropType,\n default: () => Object.keys(modes),\n validator: (v: any) => Array.isArray(v) && v.every(m => Object.keys(modes).includes(m)),\n },\n showSwatches: Boolean,\n swatches: Array as PropType>,\n swatchesMaxHeight: {\n type: [Number, String],\n default: 150,\n },\n modelValue: {\n type: [Object, String] as PropType | string | undefined | null>,\n },\n\n ...makeVPickerProps({ hideHeader: true }),\n ...pick(makeVColorPickerPreviewProps(), ['hideEyeDropper', 'eyeDropperIcon']),\n}, 'VColorPicker')\n\nexport const VColorPicker = defineComponent({\n name: 'VColorPicker',\n\n props: makeVColorPickerProps(),\n\n emits: {\n 'update:modelValue': (color: any) => true,\n 'update:mode': (mode: keyof typeof modes) => true,\n },\n\n setup (props, { slots }) {\n const mode = useProxiedModel(props, 'mode')\n const hue = ref(null)\n const model = useProxiedModel(\n props,\n 'modelValue',\n undefined,\n v => {\n if (v == null || v === '') return null\n\n let c: HSV\n try {\n c = RGBtoHSV(parseColor(v as any))\n } catch (err) {\n consoleWarn(err as any)\n return null\n }\n\n return c\n },\n v => {\n if (!v) return null\n\n return extractColor(v, props.modelValue)\n }\n )\n const currentColor = computed(() => {\n return model.value\n ? { ...model.value, h: hue.value ?? model.value.h }\n : null\n })\n const { rtlClasses } = useRtl()\n\n let externalChange = true\n watch(model, v => {\n if (!externalChange) {\n // prevent hue shift from rgb conversion inaccuracy\n externalChange = true\n return\n }\n if (!v) return\n hue.value = v.h\n }, { immediate: true })\n\n const updateColor = (hsva: HSV) => {\n externalChange = false\n hue.value = hsva.h\n model.value = hsva\n }\n\n onBeforeMount(() => {\n if (!props.modes.includes(mode.value)) mode.value = props.modes[0]\n })\n\n provideDefaults({\n VSlider: {\n color: undefined,\n trackColor: undefined,\n trackFillColor: undefined,\n },\n })\n\n useRender(() => {\n const pickerProps = VPicker.filterProps(props)\n\n return (\n (\n <>\n { !props.hideCanvas && (\n \n )}\n\n { (!props.hideSliders || !props.hideInputs) && (\n
\n { !props.hideSliders && (\n \n )}\n\n { !props.hideInputs && (\n mode.value = m }\n color={ currentColor.value }\n onUpdate:color={ updateColor }\n disabled={ props.disabled }\n />\n )}\n
\n )}\n\n { props.showSwatches && (\n \n )}\n \n ),\n }}\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VColorPicker = InstanceType\n", "// Styles\nimport './VColorPickerCanvas.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, onMounted, ref, shallowRef, watch } from 'vue'\nimport { clamp, convertToUnit, defineComponent, getEventCoordinates, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { HSV } from '@/util'\n\nexport const makeVColorPickerCanvasProps = propsFactory({\n color: {\n type: Object as PropType,\n },\n disabled: Boolean,\n dotSize: {\n type: [Number, String],\n default: 10,\n },\n height: {\n type: [Number, String],\n default: 150,\n },\n width: {\n type: [Number, String],\n default: 300,\n },\n\n ...makeComponentProps(),\n}, 'VColorPickerCanvas')\n\nexport const VColorPickerCanvas = defineComponent({\n name: 'VColorPickerCanvas',\n\n props: makeVColorPickerCanvasProps(),\n\n emits: {\n 'update:color': (color: HSV) => true,\n 'update:position': (hue: any) => true,\n },\n\n setup (props, { emit }) {\n const isInteracting = shallowRef(false)\n const canvasRef = ref()\n const canvasWidth = shallowRef(parseFloat(props.width))\n const canvasHeight = shallowRef(parseFloat(props.height))\n\n const _dotPosition = ref({ x: 0, y: 0 })\n const dotPosition = computed({\n get: () => _dotPosition.value,\n set (val) {\n if (!canvasRef.value) return\n\n const { x, y } = val\n _dotPosition.value = val\n\n emit('update:color', {\n h: props.color?.h ?? 0,\n s: clamp(x, 0, canvasWidth.value) / canvasWidth.value,\n v: 1 - clamp(y, 0, canvasHeight.value) / canvasHeight.value,\n a: props.color?.a ?? 1,\n })\n },\n })\n\n const dotStyles = computed(() => {\n const { x, y } = dotPosition.value\n const radius = parseInt(props.dotSize, 10) / 2\n\n return {\n width: convertToUnit(props.dotSize),\n height: convertToUnit(props.dotSize),\n transform: `translate(${convertToUnit(x - radius)}, ${convertToUnit(y - radius)})`,\n }\n })\n\n const { resizeRef } = useResizeObserver(entries => {\n if (!resizeRef.el?.offsetParent) return\n\n const { width, height } = entries[0].contentRect\n\n canvasWidth.value = width\n canvasHeight.value = height\n })\n\n function updateDotPosition (x: number, y: number, rect: DOMRect) {\n const { left, top, width, height } = rect\n dotPosition.value = {\n x: clamp(x - left, 0, width),\n y: clamp(y - top, 0, height),\n }\n }\n\n function handleMouseDown (e: MouseEvent | TouchEvent) {\n if (e.type === 'mousedown') {\n // Prevent text selection while dragging\n e.preventDefault()\n }\n\n if (props.disabled) return\n\n handleMouseMove(e)\n\n window.addEventListener('mousemove', handleMouseMove)\n window.addEventListener('mouseup', handleMouseUp)\n window.addEventListener('touchmove', handleMouseMove)\n window.addEventListener('touchend', handleMouseUp)\n }\n\n function handleMouseMove (e: MouseEvent | TouchEvent) {\n if (props.disabled || !canvasRef.value) return\n\n isInteracting.value = true\n\n const coords = getEventCoordinates(e)\n\n updateDotPosition(coords.clientX, coords.clientY, canvasRef.value.getBoundingClientRect())\n }\n\n function handleMouseUp () {\n window.removeEventListener('mousemove', handleMouseMove)\n window.removeEventListener('mouseup', handleMouseUp)\n window.removeEventListener('touchmove', handleMouseMove)\n window.removeEventListener('touchend', handleMouseUp)\n }\n\n function updateCanvas () {\n if (!canvasRef.value) return\n\n const canvas = canvasRef.value\n const ctx = canvas.getContext('2d')\n\n if (!ctx) return\n\n const saturationGradient = ctx.createLinearGradient(0, 0, canvas.width, 0)\n saturationGradient.addColorStop(0, 'hsla(0, 0%, 100%, 1)') // white\n saturationGradient.addColorStop(1, `hsla(${props.color?.h ?? 0}, 100%, 50%, 1)`)\n ctx.fillStyle = saturationGradient\n ctx.fillRect(0, 0, canvas.width, canvas.height)\n\n const valueGradient = ctx.createLinearGradient(0, 0, 0, canvas.height)\n valueGradient.addColorStop(0, 'hsla(0, 0%, 0%, 0)') // transparent\n valueGradient.addColorStop(1, 'hsla(0, 0%, 0%, 1)') // black\n ctx.fillStyle = valueGradient\n ctx.fillRect(0, 0, canvas.width, canvas.height)\n }\n\n watch(() => props.color?.h, updateCanvas, { immediate: true })\n watch(() => [canvasWidth.value, canvasHeight.value], (newVal, oldVal) => {\n updateCanvas()\n _dotPosition.value = {\n x: dotPosition.value.x * newVal[0] / oldVal[0],\n y: dotPosition.value.y * newVal[1] / oldVal[1],\n }\n }, { flush: 'post' })\n\n watch(() => props.color, () => {\n if (isInteracting.value) {\n isInteracting.value = false\n return\n }\n\n _dotPosition.value = props.color ? {\n x: props.color.s * canvasWidth.value,\n y: (1 - props.color.v) * canvasHeight.value,\n } : { x: 0, y: 0 }\n }, { deep: true, immediate: true })\n\n onMounted(() => updateCanvas())\n\n useRender(() => (\n \n \n { props.color && (\n \n )}\n \n ))\n\n return {}\n },\n})\n\nexport type VColorPickerCanvas = InstanceType\n", "// Styles\nimport './VColorPickerEdit.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed } from 'vue'\nimport { modes, nullColor } from './util'\nimport { defineComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { HSV } from '@/util/colorUtils'\n\nconst VColorPickerInput = ({ label, ...rest }: any) => {\n return (\n \n \n { label }\n \n )\n}\n\nexport const makeVColorPickerEditProps = propsFactory({\n color: Object as PropType,\n disabled: Boolean,\n mode: {\n type: String as PropType,\n default: 'rgba',\n validator: (v: string) => Object.keys(modes).includes(v),\n },\n modes: {\n type: Array as PropType,\n default: () => Object.keys(modes),\n validator: (v: any) => Array.isArray(v) && v.every(m => Object.keys(modes).includes(m)),\n },\n\n ...makeComponentProps(),\n}, 'VColorPickerEdit')\n\nexport const VColorPickerEdit = defineComponent({\n name: 'VColorPickerEdit',\n\n props: makeVColorPickerEditProps(),\n\n emits: {\n 'update:color': (color: HSV) => true,\n 'update:mode': (mode: keyof typeof modes) => true,\n },\n\n setup (props, { emit }) {\n const { t } = useLocale()\n const enabledModes = computed(() => {\n return props.modes.map(key => ({ ...modes[key], name: key }))\n })\n\n const inputs = computed(() => {\n const mode = enabledModes.value.find(m => m.name === props.mode)\n\n if (!mode) return []\n\n const color = props.color ? mode.to(props.color) : null\n\n return mode.inputs?.map(({ getValue, getColor, localeKey, ...inputProps }) => {\n return {\n ...mode.inputProps,\n ...inputProps,\n ariaLabel: t(`$vuetify.colorPicker.ariaLabel.${localeKey}`),\n disabled: props.disabled,\n value: color && getValue(color),\n onChange: (e: InputEvent) => {\n const target = e.target as HTMLInputElement | null\n\n if (!target) return\n\n emit('update:color', mode.from(getColor(color ?? mode.to(nullColor), target.value)))\n },\n }\n })\n })\n\n useRender(() => (\n \n { inputs.value?.map(props => (\n \n ))}\n { enabledModes.value.length > 1 && (\n {\n const mi = enabledModes.value.findIndex(m => m.name === props.mode)\n\n emit('update:mode', enabledModes.value[(mi + 1) % enabledModes.value.length].name)\n }}\n />\n )}\n \n ))\n\n return {}\n },\n})\n\nexport type VColorPickerEdit = InstanceType\n", "// Utilities\nimport {\n HexToHSV,\n HSLtoHSV,\n HSVtoHex,\n HSVtoHSL,\n HSVtoRGB,\n RGBtoHSV,\n} from '@/util/colorUtils'\nimport { has } from '@/util/helpers'\n\n// Types\nimport type { HSL, HSV, RGB } from '@/util/colorUtils'\n\nfunction stripAlpha (color: any, stripAlpha: boolean) {\n if (stripAlpha) {\n const { a, ...rest } = color\n\n return rest\n }\n\n return color\n}\n\nexport function extractColor (color: HSV, input: any) {\n if (input == null || typeof input === 'string') {\n const hasA = color.a !== 1\n if (input?.startsWith('rgb(')) {\n const { r, g, b, a } = HSVtoRGB(color)\n return `rgb(${r} ${g} ${b}` + (hasA ? ` / ${a})` : ')')\n } else if (input?.startsWith('hsl(')) {\n const { h, s, l, a } = HSVtoHSL(color)\n return `hsl(${h} ${Math.round(s * 100)} ${Math.round(l * 100)}` + (hasA ? ` / ${a})` : ')')\n }\n\n const hex = HSVtoHex(color)\n\n if (color.a === 1) return hex.slice(0, 7)\n else return hex\n }\n\n if (typeof input === 'object') {\n let converted\n\n if (has(input, ['r', 'g', 'b'])) converted = HSVtoRGB(color)\n else if (has(input, ['h', 's', 'l'])) converted = HSVtoHSL(color)\n else if (has(input, ['h', 's', 'v'])) converted = color\n\n return stripAlpha(converted, !has(input, ['a']) && color.a === 1)\n }\n\n return color\n}\n\nexport function hasAlpha (color: any) {\n if (!color) return false\n\n if (typeof color === 'string') {\n return color.length > 7\n }\n\n if (typeof color === 'object') {\n return has(color, ['a']) || has(color, ['alpha'])\n }\n\n return false\n}\n\nexport const nullColor = { h: 0, s: 0, v: 0, a: 1 }\n\nexport type ColorPickerMode = {\n inputProps: Record\n inputs: {\n [key: string]: any\n getValue: (color: any) => number | string\n getColor: (color: any, v: string) => any\n }[]\n from: (color: any) => HSV\n to: (color: HSV) => any\n}\n\nconst rgba: ColorPickerMode = {\n inputProps: {\n type: 'number',\n min: 0,\n },\n inputs: [\n {\n label: 'R',\n max: 255,\n step: 1,\n getValue: (c: RGB) => Math.round(c.r),\n getColor: (c: RGB, v: string): RGB => ({ ...c, r: Number(v) }),\n localeKey: 'redInput',\n },\n {\n label: 'G',\n max: 255,\n step: 1,\n getValue: (c: RGB) => Math.round(c.g),\n getColor: (c: RGB, v: string): RGB => ({ ...c, g: Number(v) }),\n localeKey: 'greenInput',\n },\n {\n label: 'B',\n max: 255,\n step: 1,\n getValue: (c: RGB) => Math.round(c.b),\n getColor: (c: RGB, v: string): RGB => ({ ...c, b: Number(v) }),\n localeKey: 'blueInput',\n },\n {\n label: 'A',\n max: 1,\n step: 0.01,\n getValue: ({ a }: RGB) => a != null ? Math.round(a * 100) / 100 : 1,\n getColor: (c: RGB, v: string): RGB => ({ ...c, a: Number(v) }),\n localeKey: 'alphaInput',\n },\n ],\n to: HSVtoRGB,\n from: RGBtoHSV,\n}\n\nconst rgb = {\n ...rgba,\n inputs: rgba.inputs?.slice(0, 3),\n}\n\nconst hsla: ColorPickerMode = {\n inputProps: {\n type: 'number',\n min: 0,\n },\n inputs: [\n {\n label: 'H',\n max: 360,\n step: 1,\n getValue: (c: HSL) => Math.round(c.h),\n getColor: (c: HSL, v: string): HSL => ({ ...c, h: Number(v) }),\n localeKey: 'hueInput',\n },\n {\n label: 'S',\n max: 1,\n step: 0.01,\n getValue: (c: HSL) => Math.round(c.s * 100) / 100,\n getColor: (c: HSL, v: string): HSL => ({ ...c, s: Number(v) }),\n localeKey: 'saturationInput',\n },\n {\n label: 'L',\n max: 1,\n step: 0.01,\n getValue: (c: HSL) => Math.round(c.l * 100) / 100,\n getColor: (c: HSL, v: string): HSL => ({ ...c, l: Number(v) }),\n localeKey: 'lightnessInput',\n },\n {\n label: 'A',\n max: 1,\n step: 0.01,\n getValue: ({ a }: HSL) => a != null ? Math.round(a * 100) / 100 : 1,\n getColor: (c: HSL, v: string): HSL => ({ ...c, a: Number(v) }),\n localeKey: 'alphaInput',\n },\n ],\n to: HSVtoHSL,\n from: HSLtoHSV,\n}\n\nconst hsl = {\n ...hsla,\n inputs: hsla.inputs.slice(0, 3),\n}\n\nconst hexa: ColorPickerMode = {\n inputProps: {\n type: 'text',\n },\n inputs: [\n {\n label: 'HEXA',\n getValue: (c: string) => c,\n getColor: (c: string, v: string) => v,\n localeKey: 'hexaInput',\n },\n ],\n to: HSVtoHex,\n from: HexToHSV,\n}\n\nconst hex = {\n ...hexa,\n inputs: [\n {\n label: 'HEX',\n getValue: (c: string) => c.slice(0, 7),\n getColor: (c: string, v: string) => v,\n localeKey: 'hexInput',\n },\n ],\n}\n\nexport const modes = {\n rgb,\n rgba,\n hsl,\n hsla,\n hex,\n hexa,\n} satisfies Record\n", "// Styles\nimport './VColorPickerPreview.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VSlider } from '@/components/VSlider'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { onUnmounted } from 'vue'\nimport { nullColor } from './util'\nimport {\n defineComponent,\n HSVtoCSS,\n parseColor,\n propsFactory,\n RGBtoHSV,\n SUPPORTS_EYE_DROPPER,\n useRender,\n} from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { HSV } from '@/util'\n\nexport const makeVColorPickerPreviewProps = propsFactory({\n color: {\n type: Object as PropType,\n },\n disabled: Boolean,\n hideAlpha: Boolean,\n hideEyeDropper: Boolean,\n eyeDropperIcon: {\n type: IconValue,\n default: '$eyeDropper',\n },\n\n ...makeComponentProps(),\n}, 'VColorPickerPreview')\n\nexport const VColorPickerPreview = defineComponent({\n name: 'VColorPickerPreview',\n\n props: makeVColorPickerPreviewProps(),\n\n emits: {\n 'update:color': (color: HSV) => true,\n },\n\n setup (props, { emit }) {\n const { t } = useLocale()\n\n const abortController = new AbortController()\n\n onUnmounted(() => abortController.abort())\n\n async function openEyeDropper () {\n if (!SUPPORTS_EYE_DROPPER || props.disabled) return\n\n const eyeDropper = new window.EyeDropper()\n try {\n const result = await eyeDropper.open({ signal: abortController.signal })\n const colorHexValue = RGBtoHSV(parseColor(result.sRGBHex))\n emit('update:color', { ...(props.color ?? nullColor), ...colorHexValue })\n } catch (e) {}\n }\n\n useRender(() => (\n \n { SUPPORTS_EYE_DROPPER && !props.hideEyeDropper && (\n
\n \n
\n )}\n\n
\n
\n
\n\n
\n emit('update:color', { ...(props.color ?? nullColor), h }) }\n step={ 1 }\n min={ 0 }\n max={ 360 }\n disabled={ props.disabled }\n thumbSize={ 14 }\n trackSize={ 8 }\n trackFillColor=\"white\"\n hideDetails\n />\n\n { !props.hideAlpha && (\n emit('update:color', { ...(props.color ?? nullColor), a }) }\n step={ 0.01 }\n min={ 0 }\n max={ 1 }\n disabled={ props.disabled }\n thumbSize={ 14 }\n trackSize={ 8 }\n trackFillColor=\"white\"\n hideDetails\n />\n )}\n
\n
\n ))\n\n return {}\n },\n})\n\nexport type VColorPickerPreview = InstanceType\n", "// Styles\nimport './VColorPickerSwatches.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\n\n// Utilities\nimport {\n convertToUnit,\n deepEqual,\n defineComponent,\n getContrast,\n parseColor,\n propsFactory,\n RGBtoCSS,\n RGBtoHSV,\n useRender,\n} from '@/util'\nimport colors from '@/util/colors'\n\n// Types\nimport type { DeepReadonly, PropType } from 'vue'\nimport type { Color, HSV } from '@/util'\n\nexport const makeVColorPickerSwatchesProps = propsFactory({\n swatches: {\n type: Array as PropType>,\n default: () => parseDefaultColors(colors),\n },\n disabled: Boolean,\n color: Object as PropType,\n maxHeight: [Number, String],\n\n ...makeComponentProps(),\n}, 'VColorPickerSwatches')\n\nfunction parseDefaultColors (colors: Record>) {\n return Object.keys(colors).map(key => {\n const color = colors[key]\n return color.base ? [\n color.base,\n color.darken4,\n color.darken3,\n color.darken2,\n color.darken1,\n color.lighten1,\n color.lighten2,\n color.lighten3,\n color.lighten4,\n color.lighten5,\n ] : [\n color.black,\n color.white,\n color.transparent,\n ]\n })\n}\n\nexport const VColorPickerSwatches = defineComponent({\n name: 'VColorPickerSwatches',\n\n props: makeVColorPickerSwatchesProps(),\n\n emits: {\n 'update:color': (color: HSV) => true,\n },\n\n setup (props, { emit }) {\n function onSwatchClick (hsva: HSV) {\n if (props.disabled || !hsva) {\n return\n }\n\n emit('update:color', hsva)\n }\n\n useRender(() => (\n \n
\n { props.swatches.map(swatch => (\n
\n { swatch.map(color => {\n const rgba = parseColor(color)\n const hsva = RGBtoHSV(rgba)\n const background = RGBtoCSS(rgba)\n\n return (\n onSwatchClick(hsva) }\n >\n
\n { props.color && deepEqual(props.color, hsva)\n ? 2 ? 'white' : 'black' } />\n : undefined\n }\n
\n
\n )\n })}\n
\n ))}\n \n \n ))\n\n return {}\n },\n})\n\nexport type VColorPickerSwatches = InstanceType\n", "export const red = {\n base: '#f44336',\n lighten5: '#ffebee',\n lighten4: '#ffcdd2',\n lighten3: '#ef9a9a',\n lighten2: '#e57373',\n lighten1: '#ef5350',\n darken1: '#e53935',\n darken2: '#d32f2f',\n darken3: '#c62828',\n darken4: '#b71c1c',\n accent1: '#ff8a80',\n accent2: '#ff5252',\n accent3: '#ff1744',\n accent4: '#d50000',\n}\n\nexport const pink = {\n base: '#e91e63',\n lighten5: '#fce4ec',\n lighten4: '#f8bbd0',\n lighten3: '#f48fb1',\n lighten2: '#f06292',\n lighten1: '#ec407a',\n darken1: '#d81b60',\n darken2: '#c2185b',\n darken3: '#ad1457',\n darken4: '#880e4f',\n accent1: '#ff80ab',\n accent2: '#ff4081',\n accent3: '#f50057',\n accent4: '#c51162',\n}\n\nexport const purple = {\n base: '#9c27b0',\n lighten5: '#f3e5f5',\n lighten4: '#e1bee7',\n lighten3: '#ce93d8',\n lighten2: '#ba68c8',\n lighten1: '#ab47bc',\n darken1: '#8e24aa',\n darken2: '#7b1fa2',\n darken3: '#6a1b9a',\n darken4: '#4a148c',\n accent1: '#ea80fc',\n accent2: '#e040fb',\n accent3: '#d500f9',\n accent4: '#aa00ff',\n}\n\nexport const deepPurple = {\n base: '#673ab7',\n lighten5: '#ede7f6',\n lighten4: '#d1c4e9',\n lighten3: '#b39ddb',\n lighten2: '#9575cd',\n lighten1: '#7e57c2',\n darken1: '#5e35b1',\n darken2: '#512da8',\n darken3: '#4527a0',\n darken4: '#311b92',\n accent1: '#b388ff',\n accent2: '#7c4dff',\n accent3: '#651fff',\n accent4: '#6200ea',\n}\n\nexport const indigo = {\n base: '#3f51b5',\n lighten5: '#e8eaf6',\n lighten4: '#c5cae9',\n lighten3: '#9fa8da',\n lighten2: '#7986cb',\n lighten1: '#5c6bc0',\n darken1: '#3949ab',\n darken2: '#303f9f',\n darken3: '#283593',\n darken4: '#1a237e',\n accent1: '#8c9eff',\n accent2: '#536dfe',\n accent3: '#3d5afe',\n accent4: '#304ffe',\n}\n\nexport const blue = {\n base: '#2196f3',\n lighten5: '#e3f2fd',\n lighten4: '#bbdefb',\n lighten3: '#90caf9',\n lighten2: '#64b5f6',\n lighten1: '#42a5f5',\n darken1: '#1e88e5',\n darken2: '#1976d2',\n darken3: '#1565c0',\n darken4: '#0d47a1',\n accent1: '#82b1ff',\n accent2: '#448aff',\n accent3: '#2979ff',\n accent4: '#2962ff',\n}\n\nexport const lightBlue = {\n base: '#03a9f4',\n lighten5: '#e1f5fe',\n lighten4: '#b3e5fc',\n lighten3: '#81d4fa',\n lighten2: '#4fc3f7',\n lighten1: '#29b6f6',\n darken1: '#039be5',\n darken2: '#0288d1',\n darken3: '#0277bd',\n darken4: '#01579b',\n accent1: '#80d8ff',\n accent2: '#40c4ff',\n accent3: '#00b0ff',\n accent4: '#0091ea',\n}\n\nexport const cyan = {\n base: '#00bcd4',\n lighten5: '#e0f7fa',\n lighten4: '#b2ebf2',\n lighten3: '#80deea',\n lighten2: '#4dd0e1',\n lighten1: '#26c6da',\n darken1: '#00acc1',\n darken2: '#0097a7',\n darken3: '#00838f',\n darken4: '#006064',\n accent1: '#84ffff',\n accent2: '#18ffff',\n accent3: '#00e5ff',\n accent4: '#00b8d4',\n}\n\nexport const teal = {\n base: '#009688',\n lighten5: '#e0f2f1',\n lighten4: '#b2dfdb',\n lighten3: '#80cbc4',\n lighten2: '#4db6ac',\n lighten1: '#26a69a',\n darken1: '#00897b',\n darken2: '#00796b',\n darken3: '#00695c',\n darken4: '#004d40',\n accent1: '#a7ffeb',\n accent2: '#64ffda',\n accent3: '#1de9b6',\n accent4: '#00bfa5',\n}\n\nexport const green = {\n base: '#4caf50',\n lighten5: '#e8f5e9',\n lighten4: '#c8e6c9',\n lighten3: '#a5d6a7',\n lighten2: '#81c784',\n lighten1: '#66bb6a',\n darken1: '#43a047',\n darken2: '#388e3c',\n darken3: '#2e7d32',\n darken4: '#1b5e20',\n accent1: '#b9f6ca',\n accent2: '#69f0ae',\n accent3: '#00e676',\n accent4: '#00c853',\n}\n\nexport const lightGreen = {\n base: '#8bc34a',\n lighten5: '#f1f8e9',\n lighten4: '#dcedc8',\n lighten3: '#c5e1a5',\n lighten2: '#aed581',\n lighten1: '#9ccc65',\n darken1: '#7cb342',\n darken2: '#689f38',\n darken3: '#558b2f',\n darken4: '#33691e',\n accent1: '#ccff90',\n accent2: '#b2ff59',\n accent3: '#76ff03',\n accent4: '#64dd17',\n}\n\nexport const lime = {\n base: '#cddc39',\n lighten5: '#f9fbe7',\n lighten4: '#f0f4c3',\n lighten3: '#e6ee9c',\n lighten2: '#dce775',\n lighten1: '#d4e157',\n darken1: '#c0ca33',\n darken2: '#afb42b',\n darken3: '#9e9d24',\n darken4: '#827717',\n accent1: '#f4ff81',\n accent2: '#eeff41',\n accent3: '#c6ff00',\n accent4: '#aeea00',\n}\n\nexport const yellow = {\n base: '#ffeb3b',\n lighten5: '#fffde7',\n lighten4: '#fff9c4',\n lighten3: '#fff59d',\n lighten2: '#fff176',\n lighten1: '#ffee58',\n darken1: '#fdd835',\n darken2: '#fbc02d',\n darken3: '#f9a825',\n darken4: '#f57f17',\n accent1: '#ffff8d',\n accent2: '#ffff00',\n accent3: '#ffea00',\n accent4: '#ffd600',\n}\n\nexport const amber = {\n base: '#ffc107',\n lighten5: '#fff8e1',\n lighten4: '#ffecb3',\n lighten3: '#ffe082',\n lighten2: '#ffd54f',\n lighten1: '#ffca28',\n darken1: '#ffb300',\n darken2: '#ffa000',\n darken3: '#ff8f00',\n darken4: '#ff6f00',\n accent1: '#ffe57f',\n accent2: '#ffd740',\n accent3: '#ffc400',\n accent4: '#ffab00',\n}\n\nexport const orange = {\n base: '#ff9800',\n lighten5: '#fff3e0',\n lighten4: '#ffe0b2',\n lighten3: '#ffcc80',\n lighten2: '#ffb74d',\n lighten1: '#ffa726',\n darken1: '#fb8c00',\n darken2: '#f57c00',\n darken3: '#ef6c00',\n darken4: '#e65100',\n accent1: '#ffd180',\n accent2: '#ffab40',\n accent3: '#ff9100',\n accent4: '#ff6d00',\n}\n\nexport const deepOrange = {\n base: '#ff5722',\n lighten5: '#fbe9e7',\n lighten4: '#ffccbc',\n lighten3: '#ffab91',\n lighten2: '#ff8a65',\n lighten1: '#ff7043',\n darken1: '#f4511e',\n darken2: '#e64a19',\n darken3: '#d84315',\n darken4: '#bf360c',\n accent1: '#ff9e80',\n accent2: '#ff6e40',\n accent3: '#ff3d00',\n accent4: '#dd2c00',\n}\n\nexport const brown = {\n base: '#795548',\n lighten5: '#efebe9',\n lighten4: '#d7ccc8',\n lighten3: '#bcaaa4',\n lighten2: '#a1887f',\n lighten1: '#8d6e63',\n darken1: '#6d4c41',\n darken2: '#5d4037',\n darken3: '#4e342e',\n darken4: '#3e2723',\n}\n\nexport const blueGrey = {\n base: '#607d8b',\n lighten5: '#eceff1',\n lighten4: '#cfd8dc',\n lighten3: '#b0bec5',\n lighten2: '#90a4ae',\n lighten1: '#78909c',\n darken1: '#546e7a',\n darken2: '#455a64',\n darken3: '#37474f',\n darken4: '#263238',\n}\n\nexport const grey = {\n base: '#9e9e9e',\n lighten5: '#fafafa',\n lighten4: '#f5f5f5',\n lighten3: '#eeeeee',\n lighten2: '#e0e0e0',\n lighten1: '#bdbdbd',\n darken1: '#757575',\n darken2: '#616161',\n darken3: '#424242',\n darken4: '#212121',\n}\n\nexport const shades = {\n black: '#000000',\n white: '#ffffff',\n transparent: '#ffffff00',\n}\n\nexport default {\n red,\n pink,\n purple,\n deepPurple,\n indigo,\n blue,\n lightBlue,\n cyan,\n teal,\n green,\n lightGreen,\n lime,\n yellow,\n amber,\n orange,\n deepOrange,\n brown,\n blueGrey,\n grey,\n shades,\n}\n", "// Styles\nimport './VPicker.sass'\n\n// Components\nimport { VPickerTitle } from './VPickerTitle'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\nimport { makeVSheetProps, VSheet } from '@/components/VSheet/VSheet'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VPickerSlots = {\n header: never\n default: never\n actions: never\n title: never\n}\n\nexport const makeVPickerProps = propsFactory({\n bgColor: String,\n divided: Boolean,\n landscape: Boolean,\n title: String,\n hideHeader: Boolean,\n hideTitle: Boolean,\n\n ...makeVSheetProps(),\n}, 'VPicker')\n\nexport const VPicker = genericComponent()({\n name: 'VPicker',\n\n props: makeVPickerProps(),\n\n setup (props, { slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n useRender(() => {\n const sheetProps = VSheet.filterProps(props)\n const hasTitle = !props.hideTitle && !!(props.title || slots.title)\n\n return (\n \n { !props.hideHeader && (\n \n { hasTitle && (\n \n { slots.title?.() ?? props.title }\n \n )}\n\n { slots.header && (\n
\n { slots.header() }\n
\n )}\n \n )}\n\n
\n { slots.default?.() }\n
\n\n { slots.actions && (\n \n
\n { slots.actions() }\n
\n \n )}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VPicker = InstanceType\n", "// Utilities\nimport { createSimpleFunctional } from '@/util'\n\nexport const VPickerTitle = createSimpleFunctional('v-picker-title')\n\nexport type VPickerTitle = InstanceType\n", "// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, watchEffect } from 'vue'\nimport { deepEqual, deepToRaw, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType, Ref, VNode } from 'vue'\nimport type { GenericProps } from '@/util'\n\nexport type VConfirmEditSlots = {\n default: {\n model: Ref\n save: () => void\n cancel: () => void\n isPristine: boolean\n get actions (): (props?: {}) => VNode\n }\n}\n\nexport const makeVConfirmEditProps = propsFactory({\n modelValue: null,\n color: String,\n cancelText: {\n type: String,\n default: '$vuetify.confirmEdit.cancel',\n },\n okText: {\n type: String,\n default: '$vuetify.confirmEdit.ok',\n },\n disabled: {\n type: [Boolean, Array] as PropType,\n default: undefined,\n },\n hideActions: Boolean,\n}, 'VConfirmEdit')\n\nexport const VConfirmEdit = genericComponent (\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n 'onSave'?: (value: T) => void\n },\n slots: VConfirmEditSlots\n) => GenericProps>()({\n name: 'VConfirmEdit',\n\n props: makeVConfirmEditProps(),\n\n emits: {\n cancel: () => true,\n save: (value: any) => true,\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { emit, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const internalModel = ref()\n watchEffect(() => {\n internalModel.value = structuredClone(deepToRaw(model.value))\n })\n\n const { t } = useLocale()\n\n const isPristine = computed(() => {\n return deepEqual(model.value, internalModel.value)\n })\n\n function isActionDisabled (action: 'save' | 'cancel') {\n if (typeof props.disabled === 'boolean') {\n return props.disabled\n }\n\n if (Array.isArray(props.disabled)) {\n return props.disabled.includes(action)\n }\n\n return isPristine.value\n }\n\n const isSaveDisabled = computed(() => isActionDisabled('save'))\n const isCancelDisabled = computed(() => isActionDisabled('cancel'))\n\n function save () {\n model.value = internalModel.value\n emit('save', internalModel.value)\n }\n\n function cancel () {\n internalModel.value = structuredClone(deepToRaw(model.value))\n emit('cancel')\n }\n\n function actions (actionsProps?: {}) {\n return (\n <>\n \n\n \n \n )\n }\n\n let actionsUsed = false\n useRender(() => {\n return (\n <>\n {\n slots.default?.({\n model: internalModel,\n save,\n cancel,\n isPristine: isPristine.value,\n get actions () {\n actionsUsed = true\n return actions\n },\n })\n }\n\n { !props.hideActions && !actionsUsed && actions() }\n \n )\n })\n\n return {\n save,\n cancel,\n isPristine,\n }\n },\n})\n\nexport type VConfirmEdit = InstanceType\n", "// Utilities\nimport { computed } from 'vue'\nimport { getPropertyFromItem, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { GroupableItem } from '@/components/VDataTable/composables/group'\nimport type { SelectableItem } from '@/components/VDataTable/composables/select'\nimport type { InternalItem } from '@/composables/filter'\nimport type { SelectItemKey } from '@/util'\n\nexport interface DataIteratorItemProps {\n items: any[]\n itemValue: SelectItemKey\n itemSelectable: SelectItemKey\n returnObject: boolean\n}\n\nexport interface DataIteratorItem extends Omit, 'type'>, GroupableItem, SelectableItem {\n value: unknown\n}\n\n// Composables\nexport const makeDataIteratorItemsProps = propsFactory({\n items: {\n type: Array as PropType,\n default: () => ([]),\n },\n itemValue: {\n type: [String, Array, Function] as PropType,\n default: 'id',\n },\n itemSelectable: {\n type: [String, Array, Function] as PropType,\n default: null,\n },\n returnObject: Boolean,\n}, 'DataIterator-items')\n\nexport function transformItem (\n props: Omit,\n item: any\n): DataIteratorItem {\n const value = props.returnObject ? item : getPropertyFromItem(item, props.itemValue)\n const selectable = getPropertyFromItem(item, props.itemSelectable, true)\n\n return {\n type: 'item',\n value,\n selectable,\n raw: item,\n }\n}\n\nexport function transformItems (\n props: Omit,\n items: DataIteratorItemProps['items']\n) {\n const array: DataIteratorItem[] = []\n\n for (const item of items) {\n array.push(transformItem(props, item))\n }\n\n return array\n}\n\nexport function useDataIteratorItems (props: DataIteratorItemProps) {\n const items = computed(() => transformItems(props, props.items))\n\n return { items }\n}\n", "// Components\nimport { VFadeTransition } from '@/components/transitions'\nimport { makeDataTableExpandProps, provideExpanded } from '@/components/VDataTable/composables/expand'\nimport { makeDataTableGroupProps, provideGroupBy, useGroupedItems } from '@/components/VDataTable/composables/group'\nimport { useOptions } from '@/components/VDataTable/composables/options'\nimport {\n createPagination,\n makeDataTablePaginateProps,\n providePagination,\n usePaginatedItems,\n} from '@/components/VDataTable/composables/paginate'\nimport { makeDataTableSelectProps, provideSelection } from '@/components/VDataTable/composables/select'\nimport { createSort, makeDataTableSortProps, provideSort, useSortedItems } from '@/components/VDataTable/composables/sort'\n\n// Composables\nimport { makeDataIteratorItemsProps, useDataIteratorItems } from './composables/items'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\nimport { LoaderSlot } from '@/composables/loader'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { Component } from 'vue'\nimport type { DataIteratorItem } from './composables/items'\nimport type { Group, GroupSummary } from '@/components/VDataTable/composables/group'\nimport type { SortItem } from '@/components/VDataTable/composables/sort'\nimport type { LoaderSlotProps } from '@/composables/loader'\nimport type { GenericProps } from '@/util'\n\ntype VDataIteratorSlotProps = {\n page: number\n itemsPerPage: number\n sortBy: readonly SortItem[]\n pageCount: number\n toggleSort: ReturnType['toggleSort']\n prevPage: ReturnType['prevPage']\n nextPage: ReturnType['nextPage']\n setPage: ReturnType['setPage']\n setItemsPerPage: ReturnType['setItemsPerPage']\n isSelected: ReturnType['isSelected']\n select: ReturnType['select']\n selectAll: ReturnType['selectAll']\n toggleSelect: ReturnType['toggleSelect']\n isExpanded: ReturnType['isExpanded']\n toggleExpand: ReturnType['toggleExpand']\n isGroupOpen: ReturnType['isGroupOpen']\n toggleGroup: ReturnType['toggleGroup']\n items: readonly DataIteratorItem[]\n itemsCount: number\n groupedItems: readonly (DataIteratorItem | Group> | GroupSummary>)[]\n}\n\nexport type VDataIteratorSlots = {\n default: VDataIteratorSlotProps\n header: VDataIteratorSlotProps\n footer: VDataIteratorSlotProps\n loader: LoaderSlotProps\n 'no-data': never\n}\n\nexport const makeVDataIteratorProps = propsFactory({\n search: String,\n loading: Boolean,\n\n ...makeComponentProps(),\n ...makeDataIteratorItemsProps(),\n ...makeDataTableSelectProps(),\n ...makeDataTableSortProps(),\n ...makeDataTablePaginateProps({ itemsPerPage: 5 }),\n ...makeDataTableExpandProps(),\n ...makeDataTableGroupProps(),\n ...makeFilterProps(),\n ...makeTagProps(),\n ...makeTransitionProps({\n transition: {\n component: VFadeTransition as Component,\n hideOnLeave: true,\n },\n }),\n}, 'VDataIterator')\n\nexport const VDataIterator = genericComponent (\n props: {\n items?: readonly T[]\n },\n slots: VDataIteratorSlots,\n) => GenericProps>()({\n name: 'VDataIterator',\n\n props: makeVDataIteratorProps(),\n\n emits: {\n 'update:modelValue': (value: any[]) => true,\n 'update:groupBy': (value: any) => true,\n 'update:page': (value: number) => true,\n 'update:itemsPerPage': (value: number) => true,\n 'update:sortBy': (value: any) => true,\n 'update:options': (value: any) => true,\n 'update:expanded': (value: any) => true,\n 'update:currentItems': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const groupBy = useProxiedModel(props, 'groupBy')\n const search = toRef(() => props.search)\n\n const { items } = useDataIteratorItems(props)\n const { filteredItems } = useFilter(props, items, search, { transform: item => item.raw })\n\n const { initialSortOrder, sortBy, multiSort, mustSort } = createSort(props)\n const { page, itemsPerPage } = createPagination(props)\n\n const { toggleSort } = provideSort({ initialSortOrder, sortBy, multiSort, mustSort, page })\n const { sortByWithGroups, opened, extractRows, isGroupOpen, toggleGroup } = provideGroupBy({ groupBy, sortBy })\n\n const { sortedItems } = useSortedItems(props, filteredItems, sortByWithGroups, { transform: item => item.raw })\n const { flatItems } = useGroupedItems(sortedItems, groupBy, opened, false)\n\n const itemsLength = toRef(() => flatItems.value.length)\n\n const {\n startIndex,\n stopIndex,\n pageCount,\n prevPage,\n nextPage,\n setItemsPerPage,\n setPage,\n } = providePagination({ page, itemsPerPage, itemsLength })\n const { paginatedItems } = usePaginatedItems({ items: flatItems, startIndex, stopIndex, itemsPerPage })\n\n const paginatedItemsWithoutGroups = computed(() => extractRows(paginatedItems.value))\n\n const {\n isSelected,\n select,\n selectAll,\n toggleSelect,\n } = provideSelection(props, { allItems: items, currentPage: paginatedItemsWithoutGroups })\n const { isExpanded, toggleExpand } = provideExpanded(props)\n\n useOptions({\n page,\n itemsPerPage,\n sortBy,\n groupBy,\n search,\n })\n\n const slotProps = computed(() => ({\n page: page.value,\n itemsPerPage: itemsPerPage.value,\n sortBy: sortBy.value,\n pageCount: pageCount.value,\n toggleSort,\n prevPage,\n nextPage,\n setPage,\n setItemsPerPage,\n isSelected,\n select,\n selectAll,\n toggleSelect,\n isExpanded,\n toggleExpand,\n isGroupOpen,\n toggleGroup,\n items: paginatedItemsWithoutGroups.value,\n itemsCount: filteredItems.value.length,\n groupedItems: paginatedItems.value,\n }))\n\n useRender(() => (\n \n { slots.header?.(slotProps.value) }\n\n \n { props.loading ? (\n \n { slotProps => slots.loader?.(slotProps) }\n \n ) : (\n
\n { !paginatedItems.value.length\n ? slots['no-data']?.()\n : slots.default?.(slotProps.value)\n }\n
\n )}\n
\n\n { slots.footer?.(slotProps.value) }\n \n ))\n\n return {}\n },\n})\n\nexport type VDataIterator = InstanceType\n", "// Styles\nimport './VDatePicker.sass'\n\n// Components\nimport { makeVDatePickerControlsProps, VDatePickerControls } from './VDatePickerControls'\nimport { VDatePickerHeader } from './VDatePickerHeader'\nimport { makeVDatePickerMonthProps, VDatePickerMonth } from './VDatePickerMonth'\nimport { makeVDatePickerMonthsProps, VDatePickerMonths } from './VDatePickerMonths'\nimport { makeVDatePickerYearsProps, VDatePickerYears } from './VDatePickerYears'\nimport { VFadeTransition } from '@/components/transitions'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { makeVPickerProps, VPicker } from '@/labs/VPicker/VPicker'\n\n// Composables\nimport { useCalendarRange } from '@/composables/calendar'\nimport { useDate } from '@/composables/date'\nimport { daysDiff } from '@/composables/date/date'\nimport { useLocale, useRtl } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, shallowRef, toRef, watch } from 'vue'\nimport { convertToUnit, genericComponent, omit, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { VDatePickerControlsDefaultSlotProps } from './VDatePickerControls'\nimport type { VDatePickerHeaderSlots } from './VDatePickerHeader'\nimport type { VDatePickerMonthSlots } from './VDatePickerMonth'\nimport type { VDatePickerMonthsSlots } from './VDatePickerMonths'\nimport type { VDatePickerYearsSlots } from './VDatePickerYears'\nimport type { VPickerSlots } from '@/labs/VPicker/VPicker'\nimport type { GenericProps } from '@/util'\n\n// Types\nexport type VDatePickerSlots =\n & Omit\n & Omit\n & VDatePickerYearsSlots\n & VDatePickerMonthsSlots\n & VDatePickerMonthSlots\n & {\n header: {\n header: string\n transition: string\n }\n controls: VDatePickerControlsDefaultSlotProps\n }\n\nexport const makeVDatePickerProps = propsFactory({\n // TODO: implement in v3.5\n // calendarIcon: {\n // type: String,\n // default: '$calendar',\n // },\n // keyboardIcon: {\n // type: String,\n // default: '$edit',\n // },\n // inputMode: {\n // type: String as PropType<'calendar' | 'keyboard'>,\n // default: 'calendar',\n // },\n // inputText: {\n // type: String,\n // default: '$vuetify.datePicker.input.placeholder',\n // },\n // inputPlaceholder: {\n // type: String,\n // default: 'dd/mm/yyyy',\n // },\n header: {\n type: String,\n default: '$vuetify.datePicker.header',\n },\n headerColor: String,\n headerDateFormat: {\n type: String,\n default: 'normalDateWithWeekday',\n },\n landscapeHeaderWidth: [Number, String],\n\n ...omit(makeVDatePickerControlsProps(), ['active', 'monthText', 'yearText']),\n ...makeVDatePickerMonthProps({\n weeksInMonth: 'static' as const,\n }),\n ...omit(makeVDatePickerMonthsProps(), ['modelValue']),\n ...omit(makeVDatePickerYearsProps(), ['modelValue']),\n ...makeVPickerProps({ title: '$vuetify.datePicker.title' }),\n\n modelValue: null,\n}, 'VDatePicker')\n\nexport const VDatePicker = genericComponent (\n props: {\n modelValue?: TModel\n 'onUpdate:modelValue'?: (value: TModel) => void\n multiple?: Multiple\n },\n slots: VDatePickerSlots\n) => GenericProps>()({\n name: 'VDatePicker',\n\n props: makeVDatePickerProps(),\n\n emits: {\n 'update:modelValue': (date: any) => true,\n 'update:month': (date: any) => true,\n 'update:year': (date: any) => true,\n // 'update:inputMode': (date: any) => true,\n 'update:viewMode': (date: any) => true,\n },\n\n setup (props, { emit, slots }) {\n const adapter = useDate()\n const { t } = useLocale()\n const { rtlClasses } = useRtl()\n\n const model = useProxiedModel(\n props,\n 'modelValue',\n undefined,\n v => wrapInArray(v).map(i => adapter.date(i)),\n v => props.multiple ? v : v[0],\n )\n\n const viewMode = useProxiedModel(props, 'viewMode')\n // const inputMode = useProxiedModel(props, 'inputMode')\n\n const { minDate, maxDate, clampDate } = useCalendarRange(props)\n\n const internal = computed(() => {\n const today = adapter.date()\n const value = model.value?.[0]\n ? adapter.date(model.value[0])\n : clampDate(today)\n\n return value && adapter.isValid(value) ? value : today\n })\n const headerColor = toRef(() => props.headerColor ?? props.color)\n\n const _month = useProxiedModel(props, 'month')\n const month = computed({\n get: () => Number(_month.value ?? adapter.getMonth(adapter.startOfMonth(internal.value))),\n set: v => _month.value = v,\n })\n\n const _year = useProxiedModel(props, 'year')\n const year = computed({\n get: () => Number(_year.value ?? adapter.getYear(adapter.startOfYear(adapter.setMonth(internal.value, month.value)))),\n set: v => _year.value = v,\n })\n\n const isReversing = shallowRef(false)\n const header = computed(() => {\n if (props.multiple && model.value.length > 1) {\n return t('$vuetify.datePicker.itemsSelected', model.value.length)\n }\n\n const formattedDate = (model.value[0] && adapter.isValid(model.value[0]))\n ? adapter.format(adapter.date(model.value[0]), props.headerDateFormat)\n : t(props.header)\n\n return props.landscape && formattedDate.split(' ').length === 3\n ? formattedDate.replace(' ', '\\n')\n : formattedDate\n })\n\n const monthStart = toRef(() => {\n let date = adapter.date()\n date = adapter.setDate(date, 1)\n date = adapter.setMonth(date, month.value)\n date = adapter.setYear(date, year.value) // year is not always ISO\n return date\n })\n const monthYearText = toRef(() => adapter.format(monthStart.value, 'monthAndYear'))\n const monthText = toRef(() => adapter.format(monthStart.value, 'monthShort'))\n const yearText = toRef(() => adapter.format(monthStart.value, 'year'))\n\n // const headerIcon = toRef(() => props.inputMode === 'calendar' ? props.keyboardIcon : props.calendarIcon)\n const headerTransition = toRef(() => `date-picker-header${isReversing.value ? '-reverse' : ''}-transition`)\n\n const disabled = computed(() => {\n if (props.disabled) return true\n\n const targets = []\n\n if (viewMode.value !== 'month') {\n targets.push(...['prev-month', 'next-month', 'prev-year', 'next-year'])\n } else {\n let _date = adapter.date()\n\n _date = adapter.startOfMonth(_date)\n _date = adapter.setMonth(_date, month.value)\n _date = adapter.setYear(_date, year.value)\n\n if (minDate.value) {\n const prevMonthEnd = adapter.addDays(adapter.startOfMonth(_date), -1)\n const prevYearEnd = adapter.addDays(adapter.startOfYear(_date), -1)\n\n adapter.isAfter(minDate.value, prevMonthEnd) && targets.push('prev-month')\n adapter.isAfter(minDate.value, prevYearEnd) && targets.push('prev-year')\n }\n\n if (maxDate.value) {\n const nextMonthStart = adapter.addDays(adapter.endOfMonth(_date), 1)\n const nextYearStart = adapter.addDays(adapter.endOfYear(_date), 1)\n\n adapter.isAfter(nextMonthStart, maxDate.value) && targets.push('next-month')\n adapter.isAfter(nextYearStart, maxDate.value) && targets.push('next-year')\n }\n }\n\n return targets\n })\n\n const allowedYears = computed(() => {\n return props.allowedYears || isYearAllowed\n })\n\n const allowedMonths = computed(() => {\n return props.allowedMonths || isMonthAllowed\n })\n\n function isAllowedInRange (start: unknown, end: unknown) {\n const allowedDates = props.allowedDates\n if (typeof allowedDates !== 'function') return true\n\n const days = 1 + daysDiff(adapter, start, end)\n\n for (let i = 0; i < days; i++) {\n if (allowedDates(adapter.addDays(start, i))) return true\n }\n return false\n }\n\n function isYearAllowed (year: number) {\n if (typeof props.allowedDates === 'function') {\n const startOfYear = adapter.parseISO(`${year}-01-01`)\n return isAllowedInRange(startOfYear, adapter.endOfYear(startOfYear))\n }\n\n if (Array.isArray(props.allowedDates) && props.allowedDates.length) {\n for (const date of props.allowedDates) {\n if (adapter.getYear(adapter.date(date)) === year) return true\n }\n return false\n }\n\n return true\n }\n\n function isMonthAllowed (month: number) {\n if (typeof props.allowedDates === 'function') {\n const monthTwoDigits = String(month + 1).padStart(2, '0')\n const startOfMonth = adapter.parseISO(`${year.value}-${monthTwoDigits}-01`)\n return isAllowedInRange(startOfMonth, adapter.endOfMonth(startOfMonth))\n }\n\n if (Array.isArray(props.allowedDates) && props.allowedDates.length) {\n for (const date of props.allowedDates) {\n if (\n adapter.getYear(adapter.date(date)) === year.value &&\n adapter.getMonth(adapter.date(date)) === month\n ) return true\n }\n return false\n }\n\n return true\n }\n\n // function onClickAppend () {\n // inputMode.value = inputMode.value === 'calendar' ? 'keyboard' : 'calendar'\n // }\n\n function onClickNextMonth () {\n if (month.value < 11) {\n month.value++\n } else {\n year.value++\n month.value = 0\n onUpdateYear()\n }\n onUpdateMonth()\n }\n\n function onClickPrevMonth () {\n if (month.value > 0) {\n month.value--\n } else {\n year.value--\n month.value = 11\n onUpdateYear()\n }\n onUpdateMonth()\n }\n\n function onClickNextYear () {\n year.value++\n if (maxDate.value) {\n const monthTwoDigits = String(month.value + 1).padStart(2, '0')\n const monthStart = adapter.parseISO(`${year.value}-${monthTwoDigits}-01`)\n if (adapter.isAfter(monthStart, maxDate.value)) {\n month.value = adapter.getMonth(maxDate.value)\n }\n }\n onUpdateYear()\n }\n\n function onClickPrevYear () {\n year.value--\n if (minDate.value) {\n const monthTwoDigits = String(month.value + 1).padStart(2, '0')\n const monthStart = adapter.endOfMonth(adapter.parseISO(`${year.value}-${monthTwoDigits}-01`))\n if (adapter.isAfter(minDate.value, monthStart)) {\n month.value = adapter.getMonth(minDate.value)\n }\n }\n onUpdateYear()\n }\n\n function onClickDate () {\n viewMode.value = 'month'\n }\n\n function onClickMonth () {\n viewMode.value = viewMode.value === 'months' ? 'month' : 'months'\n }\n\n function onClickYear () {\n viewMode.value = viewMode.value === 'year' ? 'month' : 'year'\n }\n\n function onUpdateMonth () {\n if (viewMode.value === 'months') onClickMonth()\n }\n\n function onUpdateYear () {\n if (viewMode.value === 'year') onClickYear()\n }\n\n watch(model, (val, oldVal) => {\n const arrBefore = wrapInArray(oldVal)\n const arrAfter = wrapInArray(val)\n\n if (!arrAfter.length) return\n\n const before = adapter.date(arrBefore[arrBefore.length - 1])\n const after = adapter.date(arrAfter[arrAfter.length - 1])\n\n if (adapter.isSameDay(before, after)) return\n\n const newMonth = adapter.getMonth(after)\n const newYear = adapter.getYear(after)\n\n if (newMonth !== month.value) {\n month.value = newMonth\n onUpdateMonth()\n }\n\n if (newYear !== year.value) {\n year.value = newYear\n onUpdateYear()\n }\n\n isReversing.value = adapter.isBefore(before, after)\n })\n\n useRender(() => {\n const pickerProps = VPicker.filterProps(props)\n const datePickerControlsProps = omit(VDatePickerControls.filterProps(props), ['viewMode'])\n const datePickerHeaderProps = VDatePickerHeader.filterProps(props)\n const datePickerMonthProps = VDatePickerMonth.filterProps(props)\n const datePickerMonthsProps = omit(VDatePickerMonths.filterProps(props), ['modelValue'])\n const datePickerYearsProps = omit(VDatePickerYears.filterProps(props), ['modelValue'])\n\n const headerProps = {\n color: headerColor.value,\n header: header.value,\n transition: headerTransition.value,\n }\n\n return (\n slots.title?.() ?? (\n
\n { t(props.title) }\n
\n ),\n header: () => slots.header ? (\n \n { slots.header?.(headerProps) }\n \n ) : (\n \n ),\n default: () => (\n <>\n \n\n \n { viewMode.value === 'months' ? (\n \n {{ month: slots.month }}\n \n ) : viewMode.value === 'year' ? (\n \n {{ year: slots.year }}\n \n ) : (\n \n {{ day: slots.day }}\n \n )}\n \n \n ),\n actions: slots.actions,\n }}\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VDatePicker = InstanceType\n", "// Styles\nimport './VDatePickerControls.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VSpacer } from '@/components/VGrid'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\ntype ControlVariant = 'docked' | 'modal'\n\nexport type VDatePickerControlsDefaultSlotProps = {\n viewMode: 'month' | 'months' | 'year'\n monthYearText: string\n monthText: string\n yearText: string\n disabled: string[]\n openMonths: () => void\n openYears: () => void\n prevMonth: () => void\n nextMonth: () => void\n prevYear: () => void\n nextYear: () => void\n}\n\ntype VDatePickerControlsSlots = {\n default: VDatePickerControlsDefaultSlotProps\n}\n\nexport const makeVDatePickerControlsProps = propsFactory({\n active: {\n type: [String, Array] as PropType,\n default: undefined,\n },\n controlHeight: [Number, String],\n controlVariant: {\n type: String as PropType,\n default: 'docked',\n },\n noMonthPicker: Boolean,\n disabled: {\n type: [Boolean, String, Array] as PropType,\n default: null,\n },\n nextIcon: {\n type: IconValue,\n default: '$next',\n },\n prevIcon: {\n type: IconValue,\n default: '$prev',\n },\n modeIcon: {\n type: IconValue,\n default: '$subgroup',\n },\n text: String,\n monthText: String,\n yearText: String,\n viewMode: {\n type: String as PropType<'month' | 'months' | 'year'>,\n default: 'month',\n },\n}, 'VDatePickerControls')\n\nexport const VDatePickerControls = genericComponent()({\n name: 'VDatePickerControls',\n\n props: makeVDatePickerControlsProps(),\n\n emits: {\n 'click:year': () => true,\n 'click:month': () => true,\n 'click:prev': () => true,\n 'click:next': () => true,\n 'click:prev-year': () => true,\n 'click:next-year': () => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n\n const disableMonth = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('text')\n : !!props.disabled\n })\n const disableYear = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('mode')\n : !!props.disabled\n })\n const disablePrevMonth = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('prev-month')\n : !!props.disabled\n })\n const disableNextMonth = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('next-month')\n : !!props.disabled\n })\n const disablePrevYear = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('prev-year')\n : !!props.disabled\n })\n const disableNextYear = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('next-year')\n : !!props.disabled\n })\n\n function onClickPrevMonth () {\n emit('click:prev')\n }\n\n function onClickNextMonth () {\n emit('click:next')\n }\n\n function onClickPrevYear () {\n emit('click:prev-year')\n }\n\n function onClickNextYear () {\n emit('click:next-year')\n }\n\n function onClickYear () {\n emit('click:year')\n }\n\n function onClickMonth () {\n emit('click:month')\n }\n\n useRender(() => {\n const innerDefaults = {\n VBtn: {\n density: 'comfortable',\n variant: 'text',\n },\n }\n\n const prevMonth = (\n \n )\n\n const nextMonth = (\n \n )\n\n const prevYear = (\n \n )\n\n const nextYear = (\n \n )\n\n const onlyMonthBtn = (\n \n )\n\n const onlyYearBtn = (\n \n )\n\n const monthYearBtn = (\n \n )\n\n const monthYearSplit = (\n <>\n \n \n \n )\n\n const slotProps: VDatePickerControlsDefaultSlotProps = {\n viewMode: props.viewMode,\n disabled: Array.isArray(props.disabled) ? props.disabled : [],\n monthYearText: props.text ?? '',\n monthText: props.monthText ?? '',\n yearText: props.yearText ?? '',\n openMonths: onClickMonth,\n openYears: onClickYear,\n prevMonth: onClickPrevMonth,\n nextMonth: onClickNextMonth,\n prevYear: onClickPrevYear,\n nextYear: onClickNextYear,\n }\n\n const modalControls = (\n <>\n { props.noMonthPicker ? monthYearBtn : monthYearSplit }\n\n \n\n
\n { prevMonth }\n { nextMonth }\n
\n \n )\n\n const dockedControls = (\n <>\n
\n { prevMonth }\n { onlyMonthBtn }\n { nextMonth }\n
\n\n \n\n
\n { prevYear }\n { onlyYearBtn }\n { nextYear }\n
\n \n )\n\n return (\n \n \n { slots.default?.(slotProps) ?? (\n <>\n { props.controlVariant === 'modal' && modalControls }\n { props.controlVariant === 'docked' && dockedControls }\n \n )}\n \n \n )\n })\n\n return {}\n },\n})\n\nexport type VDatePickerControls = InstanceType\n", "// Styles\nimport './VDatePickerHeader.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { IconValue } from '@/composables/icons'\nimport { MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { EventProp, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VDatePickerHeaderSlots = {\n prepend: never\n default: never\n append: never\n}\n\nexport const makeVDatePickerHeaderProps = propsFactory({\n appendIcon: IconValue,\n color: String,\n header: String,\n transition: String,\n onClick: EventProp<[MouseEvent]>(),\n}, 'VDatePickerHeader')\n\nexport const VDatePickerHeader = genericComponent()({\n name: 'VDatePickerHeader',\n\n props: makeVDatePickerHeaderProps(),\n\n emits: {\n click: () => true,\n 'click:append': () => true,\n },\n\n setup (props, { emit, slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n\n function onClick () {\n emit('click')\n }\n\n function onClickAppend () {\n emit('click:append')\n }\n\n useRender(() => {\n const hasContent = !!(slots.default || props.header)\n const hasAppend = !!(slots.append || props.appendIcon)\n\n return (\n \n { slots.prepend && (\n
\n { slots.prepend() }\n
\n )}\n\n { hasContent && (\n \n
\n { slots.default?.() ?? props.header }\n
\n
\n )}\n\n { hasAppend && (\n
\n { !slots.append ? (\n \n ) : (\n \n { slots.append?.() }\n \n )}\n
\n )}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VDatePickerHeader = InstanceType\n", "// Styles\nimport './VDatePickerMonth.sass'\n\n// Components\nimport { VBadge } from '@/components/VBadge'\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { makeCalendarProps, useCalendar } from '@/composables/calendar'\nimport { createDateRange, useDate } from '@/composables/date/date'\nimport { useLocale } from '@/composables/locale'\nimport { MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef, watch } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { GenericProps } from '@/util'\n\nexport type DatePickerEventColorValue = boolean | string | string[]\n\nexport type DatePickerEventColors = DatePickerEventColorValue |\nRecord | ((date: string) => DatePickerEventColorValue)\n\nexport type DatePickerEvents = string[] |\n((date: string) => DatePickerEventColorValue) | Record\n\nexport type VDatePickerMonthSlots = {\n day: {\n props: {\n onClick: () => void\n }\n item: any\n i: number\n }\n}\n\nexport const makeVDatePickerMonthProps = propsFactory({\n color: String,\n hideWeekdays: Boolean,\n multiple: [Boolean, Number, String] as PropType,\n showWeek: Boolean,\n transition: {\n type: String,\n default: 'picker-transition',\n },\n reverseTransition: {\n type: String,\n default: 'picker-reverse-transition',\n },\n events: {\n type: [Array, Function, Object] as PropType,\n default: () => null,\n },\n eventColor: {\n type: [Array, Function, Object, String] as PropType,\n default: () => null,\n },\n ...omit(makeCalendarProps(), ['displayValue']),\n}, 'VDatePickerMonth')\n\nexport const VDatePickerMonth = genericComponent(\n props: {\n modelValue?: TModel\n 'onUpdate:modelValue'?: (value: TModel) => void\n },\n slots: VDatePickerMonthSlots\n) => GenericProps>()({\n name: 'VDatePickerMonth',\n\n props: makeVDatePickerMonthProps(),\n\n emits: {\n 'update:modelValue': (date: unknown) => true,\n 'update:month': (date: number) => true,\n 'update:year': (date: number) => true,\n },\n\n setup (props, { emit, slots }) {\n const daysRef = ref()\n const { t } = useLocale()\n\n const { daysInMonth, model, weekNumbers, weekdayLabels } = useCalendar(props)\n const adapter = useDate()\n\n const rangeStart = shallowRef()\n const rangeStop = shallowRef()\n const isReverse = shallowRef(false)\n\n const transition = toRef(() => {\n return !isReverse.value ? props.transition : props.reverseTransition\n })\n\n if (props.multiple === 'range' && model.value.length > 0) {\n rangeStart.value = model.value[0]\n if (model.value.length > 1) {\n rangeStop.value = model.value[model.value.length - 1]\n }\n }\n\n const atMax = computed(() => {\n const max = ['number', 'string'].includes(typeof props.multiple) ? Number(props.multiple) : Infinity\n\n return model.value.length >= max\n })\n\n watch(daysInMonth, (val, oldVal) => {\n if (!oldVal) return\n\n isReverse.value = adapter.isBefore(val[0].date, oldVal[0].date)\n })\n\n function onRangeClick (value: unknown) {\n const _value = adapter.startOfDay(value)\n\n if (model.value.length === 0) {\n rangeStart.value = undefined\n } else if (model.value.length === 1) {\n rangeStart.value = model.value[0]\n rangeStop.value = undefined\n }\n if (!rangeStart.value) {\n rangeStart.value = _value\n model.value = [rangeStart.value]\n } else if (!rangeStop.value) {\n if (adapter.isSameDay(_value, rangeStart.value)) {\n rangeStart.value = undefined\n model.value = []\n return\n } else if (adapter.isBefore(_value, rangeStart.value)) {\n rangeStop.value = adapter.endOfDay(rangeStart.value)\n rangeStart.value = _value\n } else {\n rangeStop.value = adapter.endOfDay(_value)\n }\n\n model.value = createDateRange(adapter, rangeStart.value, rangeStop.value)\n } else {\n rangeStart.value = value\n rangeStop.value = undefined\n model.value = [rangeStart.value]\n }\n }\n\n function getDateAriaLabel (item: any) {\n const fullDate = adapter.format(item.date, 'fullDateWithWeekday')\n const localeKey = item.isToday ? 'currentDate' : 'selectDate'\n return t(`$vuetify.datePicker.ariaLabel.${localeKey}`, fullDate)\n }\n\n function onMultipleClick (value: unknown) {\n const index = model.value.findIndex(selection => adapter.isSameDay(selection, value))\n\n if (index === -1) {\n model.value = [...model.value, value]\n } else {\n const value = [...model.value]\n value.splice(index, 1)\n model.value = value\n }\n }\n\n function onClick (value: unknown) {\n if (props.multiple === 'range') {\n onRangeClick(value)\n } else if (props.multiple) {\n onMultipleClick(value)\n } else {\n model.value = [value]\n }\n }\n function getEventColors (date: string): string[] {\n const { events, eventColor } = props\n let eventData: boolean | DatePickerEventColorValue\n let eventColors: (boolean | string)[] = []\n\n if (Array.isArray(events)) {\n eventData = events.includes(date)\n } else if (events instanceof Function) {\n eventData = events(date) || false\n } else if (events) {\n eventData = events[date] || false\n } else {\n eventData = false\n }\n\n if (!eventData) {\n return []\n } else if (eventData !== true) {\n eventColors = wrapInArray(eventData)\n } else if (typeof eventColor === 'string') {\n eventColors = [eventColor]\n } else if (typeof eventColor === 'function') {\n eventColors = wrapInArray(eventColor(date))\n } else if (Array.isArray(eventColor)) {\n eventColors = eventColor\n } else if (typeof eventColor === 'object' && eventColor !== null) {\n eventColors = wrapInArray(eventColor[date])\n }\n\n // Fallback to default color if no color is found\n return !eventColors.length\n ? ['surface-variant']\n : eventColors\n .filter(Boolean)\n .map((color: string | boolean) => typeof color === 'string' ? color : 'surface-variant')\n }\n\n function genEvents (date: string): JSX.Element | null {\n const eventColors = getEventColors(date)\n\n if (!eventColors.length) return null\n\n return (\n
\n { eventColors.map((color: string) => ) }\n
\n )\n }\n useRender(() => (\n \n { props.showWeek && (\n
\n { !props.hideWeekdays && (\n
 
\n )}\n { weekNumbers.value.map(week => (\n { week }
\n ))}\n \n )}\n\n \n \n { !props.hideWeekdays && weekdayLabels.value.map(weekDay => (\n { weekDay }\n ))}\n\n { daysInMonth.value.map((item, i) => {\n const slotProps = {\n props: {\n class: 'v-date-picker-month__day-btn',\n color: item.isSelected || item.isToday ? props.color : undefined,\n disabled: item.isDisabled,\n icon: true,\n ripple: false,\n variant: item.isSelected ? 'flat' : item.isToday ? 'outlined' : 'text',\n 'aria-label': getDateAriaLabel(item),\n 'aria-current': item.isToday ? 'date' : undefined,\n onClick: () => onClick(item.date),\n },\n item,\n i,\n } as const\n\n if (atMax.value && !item.isSelected) {\n item.isDisabled = true\n }\n\n return (\n \n { (props.showAdjacentMonths || !item.isAdjacent) && (\n slots.day?.(slotProps) ?? (\n \n { item.localized }\n { genEvents(item.isoDate) }\n \n )\n )}\n \n )\n })}\n \n \n \n ))\n },\n})\n\nexport type VDatePickerMonth = InstanceType\n", "// Composables\nimport { useDate } from '@/composables/date/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed } from 'vue'\nimport { propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport interface CalendarProps {\n allowedDates: unknown[] | ((date: unknown) => boolean) | undefined\n disabled: boolean\n displayValue?: unknown\n modelValue: unknown[] | undefined\n max: unknown\n min: unknown\n showAdjacentMonths: boolean\n month: number | string | undefined\n weekdays: number[]\n year: number | string | undefined\n weeksInMonth: 'dynamic' | 'static'\n firstDayOfWeek: number | string | undefined\n firstDayOfYear: number | string | undefined\n weekdayFormat: 'long' | 'short' | 'narrow' | undefined\n\n 'onUpdate:modelValue': ((value: unknown[]) => void) | undefined\n 'onUpdate:month': ((value: number) => void) | undefined\n 'onUpdate:year': ((value: number) => void) | undefined\n}\n\nexport type CalendarDay = {\n date: Date\n formatted: string\n isAdjacent: boolean\n isDisabled: boolean\n isEnd: boolean\n isHidden: boolean\n isSame: boolean\n isSelected: boolean\n isStart: boolean\n isToday: boolean\n isWeekEnd: boolean\n isWeekStart: boolean\n isoDate: string\n localized: string\n month: number\n year: number\n}\n\nexport type CalendarWeekdays = 0 | 1 | 2 | 3 | 4 | 5 | 6\n\n// Composables\nexport const makeCalendarProps = propsFactory({\n allowedDates: [Array, Function] as PropType boolean)>,\n disabled: {\n type: Boolean,\n default: null,\n },\n displayValue: null as any as PropType,\n modelValue: Array as PropType,\n month: [Number, String],\n max: null as any as PropType,\n min: null as any as PropType,\n showAdjacentMonths: Boolean,\n year: [Number, String],\n weekdays: {\n type: Array as PropType,\n default: () => [0, 1, 2, 3, 4, 5, 6],\n },\n weeksInMonth: {\n type: String as PropType<'dynamic' | 'static'>,\n default: 'dynamic',\n },\n firstDayOfWeek: {\n type: [Number, String],\n default: undefined,\n },\n firstDayOfYear: {\n type: [Number, String],\n default: undefined,\n },\n weekdayFormat: String as PropType<'long' | 'short' | 'narrow' | undefined>,\n}, 'calendar')\n\nexport function useCalendar (props: CalendarProps) {\n const adapter = useDate()\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => wrapInArray(v).map(i => adapter.date(i)),\n )\n const displayValue = computed(() => {\n if (props.displayValue) return adapter.date(props.displayValue)\n if (model.value.length > 0) return adapter.date(model.value[0])\n if (props.min) return adapter.date(props.min)\n if (Array.isArray(props.allowedDates)) return adapter.date(props.allowedDates[0])\n\n return adapter.date()\n })\n\n const year = useProxiedModel(\n props,\n 'year',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getYear(displayValue.value)\n\n return adapter.startOfYear(adapter.setYear(adapter.date(), value))\n },\n v => adapter.getYear(v)\n )\n\n const month = useProxiedModel(\n props,\n 'month',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getMonth(displayValue.value)\n const date = adapter.setYear(adapter.startOfMonth(adapter.date()), adapter.getYear(year.value))\n\n return adapter.setMonth(date, value)\n },\n v => adapter.getMonth(v)\n )\n\n const weekdayLabels = computed(() => {\n const firstDayOfWeek = adapter.toJsDate(adapter.startOfWeek(adapter.date(), props.firstDayOfWeek)).getDay()\n return adapter.getWeekdays(props.firstDayOfWeek, props.weekdayFormat)\n .filter((_, i) => props.weekdays.includes((i + firstDayOfWeek) % 7))\n })\n\n const weeksInMonth = computed(() => {\n const weeks = adapter.getWeekArray(month.value, props.firstDayOfWeek)\n\n const days = weeks.flat()\n\n // Make sure there's always 6 weeks in month (6 * 7 days)\n // if weeksInMonth is 'static'\n const daysInMonth = 6 * 7\n if (props.weeksInMonth === 'static' && days.length < daysInMonth) {\n const lastDay = days[days.length - 1]\n\n let week = []\n for (let day = 1; day <= daysInMonth - days.length; day++) {\n week.push(adapter.addDays(lastDay, day))\n\n if (day % 7 === 0) {\n weeks.push(week)\n week = []\n }\n }\n }\n\n return weeks\n })\n\n function genDays (days: Date[], today: Date): CalendarDay[] {\n return days.filter(date => {\n return props.weekdays.includes(adapter.toJsDate(date).getDay())\n }).map((date, index) => {\n const isoDate = adapter.toISO(date)\n const isAdjacent = !adapter.isSameMonth(date, month.value)\n const isStart = adapter.isSameDay(date, adapter.startOfMonth(month.value))\n const isEnd = adapter.isSameDay(date, adapter.endOfMonth(month.value))\n const isSame = adapter.isSameDay(date, month.value)\n const weekdaysCount = props.weekdays.length\n\n return {\n date,\n formatted: adapter.format(date, 'keyboardDate'),\n isAdjacent,\n isDisabled: isDisabled(date),\n isEnd,\n isHidden: isAdjacent && !props.showAdjacentMonths,\n isSame,\n isSelected: model.value.some(value => adapter.isSameDay(date, value)),\n isStart,\n isToday: adapter.isSameDay(date, today),\n isWeekEnd: index % weekdaysCount === weekdaysCount - 1,\n isWeekStart: index % weekdaysCount === 0,\n isoDate,\n localized: adapter.format(date, 'dayOfMonth'),\n month: adapter.getMonth(date),\n year: adapter.getYear(date),\n }\n })\n }\n\n const daysInWeek = computed(() => {\n const lastDay = adapter.startOfWeek(displayValue.value, props.firstDayOfWeek)\n const week: Date[] = []\n for (let day = 0; day <= 6; day++) {\n week.push(adapter.addDays(lastDay, day) as Date)\n }\n\n const today = adapter.date() as Date\n\n return genDays(week as Date[], today as Date)\n })\n\n const daysInMonth = computed(() => {\n const days = weeksInMonth.value.flat() as Date[]\n const today = adapter.date() as Date\n\n return genDays(days as Date[], today)\n })\n\n const weekNumbers = computed(() => {\n return weeksInMonth.value.map(week => {\n return week.length ? adapter.getWeek(week[0], props.firstDayOfWeek, props.firstDayOfYear) : null\n })\n })\n\n const { minDate, maxDate } = useCalendarRange(props)\n\n function isDisabled (value: unknown) {\n if (props.disabled) return true\n\n const date = adapter.date(value)\n\n if (minDate.value && adapter.isBefore(adapter.endOfDay(date), minDate.value)) return true\n if (maxDate.value && adapter.isAfter(date, maxDate.value)) return true\n\n if (Array.isArray(props.allowedDates) && props.allowedDates.length > 0) {\n return !props.allowedDates.some(d => adapter.isSameDay(adapter.date(d), date))\n }\n\n if (typeof props.allowedDates === 'function') {\n return !props.allowedDates(date)\n }\n\n return false\n }\n\n return {\n displayValue,\n daysInMonth,\n daysInWeek,\n genDays,\n model,\n weeksInMonth,\n weekdayLabels,\n weekNumbers,\n }\n}\n\nexport function useCalendarRange (props: Pick) {\n const adapter = useDate()\n\n const minDate = computed(() => {\n if (!props.min) return null\n const date = adapter.date(props.min)\n return adapter.isValid(date) ? date : null\n })\n\n const maxDate = computed(() => {\n if (!props.max) return null\n const date = adapter.date(props.max)\n return adapter.isValid(date) ? date : null\n })\n\n function clampDate (date: unknown) {\n if (minDate.value && adapter.isBefore(date, minDate.value)) {\n return minDate.value\n }\n if (maxDate.value && adapter.isAfter(date, maxDate.value)) {\n return maxDate.value\n }\n return date\n }\n\n function isInAllowedRange (date: unknown) {\n return (!minDate.value || adapter.isAfter(date, minDate.value)) &&\n (!maxDate.value || adapter.isBefore(date, maxDate.value))\n }\n\n return {\n minDate,\n maxDate,\n clampDate,\n isInAllowedRange,\n }\n}\n", "// Styles\nimport './VDatePickerMonths.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { useDate } from '@/composables/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, watchEffect } from 'vue'\nimport { convertToUnit, createRange, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type VDatePickerMonthsSlots = {\n month: {\n month: {\n text: string\n value: number\n }\n i: number\n props: {\n onClick: () => void\n }\n }\n}\n\nexport const makeVDatePickerMonthsProps = propsFactory({\n color: String,\n height: [String, Number],\n min: null as any as PropType,\n max: null as any as PropType,\n modelValue: Number,\n year: Number,\n allowedMonths: [Array, Function] as PropType boolean)>,\n}, 'VDatePickerMonths')\n\nexport const VDatePickerMonths = genericComponent()({\n name: 'VDatePickerMonths',\n\n props: makeVDatePickerMonthsProps(),\n\n emits: {\n 'update:modelValue': (date: any) => true,\n },\n\n setup (props, { emit, slots }) {\n const adapter = useDate()\n const model = useProxiedModel(props, 'modelValue')\n\n const months = computed(() => {\n let date = adapter.startOfYear(adapter.date())\n if (props.year) {\n date = adapter.setYear(date, props.year)\n }\n return createRange(12).map(i => {\n const text = adapter.format(date, 'monthShort')\n const label = adapter.format(date, 'month')\n const isDisabled =\n !!(\n !isMonthAllowed(i) ||\n (props.min && adapter.isAfter(adapter.startOfMonth(adapter.date(props.min)), date)) ||\n (props.max && adapter.isAfter(date, adapter.startOfMonth(adapter.date(props.max))))\n )\n date = adapter.getNextMonth(date)\n\n return {\n isDisabled,\n text,\n label,\n value: i,\n }\n })\n })\n\n watchEffect(() => {\n model.value = model.value ?? adapter.getMonth(adapter.date())\n })\n\n function isMonthAllowed (month: number) {\n if (Array.isArray(props.allowedMonths) && props.allowedMonths.length) {\n return props.allowedMonths.includes(month)\n }\n\n if (typeof props.allowedMonths === 'function') {\n return props.allowedMonths(month)\n }\n\n return true\n }\n\n useRender(() => (\n \n
\n { months.value.map((month, i) => {\n const btnProps = {\n active: model.value === i,\n ariaLabel: month.label,\n color: model.value === i ? props.color : undefined,\n disabled: month.isDisabled,\n rounded: true,\n text: month.text,\n variant: model.value === month.value ? 'flat' : 'text',\n onClick: () => onClick(i),\n } as const\n\n function onClick (i: number) {\n if (model.value === i) {\n emit('update:modelValue', model.value)\n return\n }\n model.value = i\n }\n\n return slots.month?.({\n month,\n i,\n props: btnProps,\n }) ?? (\n \n )\n })}\n
\n \n ))\n\n return {}\n },\n})\n\nexport type VDatePickerMonths = InstanceType\n", "// Styles\nimport './VDatePickerYears.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { useDate } from '@/composables/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport vIntersect from '@/directives/intersect'\n\n// Utilities\nimport { computed, shallowRef, watchEffect } from 'vue'\nimport { convertToUnit, createRange, genericComponent, propsFactory, templateRef, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport type VDatePickerYearsSlots = {\n year: {\n year: {\n text: string\n value: number\n }\n i: number\n props: {\n active: boolean\n color?: string\n rounded: boolean\n text: string\n variant: 'flat' | 'text'\n onClick: () => void\n }\n }\n}\n\nexport const makeVDatePickerYearsProps = propsFactory({\n color: String,\n height: [String, Number],\n min: null as any as PropType,\n max: null as any as PropType,\n modelValue: Number,\n allowedYears: [Array, Function] as PropType boolean)>,\n}, 'VDatePickerYears')\n\nexport const VDatePickerYears = genericComponent()({\n name: 'VDatePickerYears',\n\n props: makeVDatePickerYearsProps(),\n\n directives: { vIntersect },\n\n emits: {\n 'update:modelValue': (year: number) => true,\n },\n\n setup (props, { emit, slots }) {\n const adapter = useDate()\n const model = useProxiedModel(props, 'modelValue')\n const hasFocusedItem = shallowRef(false)\n const years = computed(() => {\n const year = adapter.getYear(adapter.date())\n\n let min = year - 100\n let max = year + 52\n\n if (props.min) {\n min = adapter.getYear(adapter.date(props.min))\n }\n\n if (props.max) {\n max = adapter.getYear(adapter.date(props.max))\n }\n\n let date = adapter.startOfYear(adapter.date())\n\n date = adapter.setYear(date, min)\n\n return createRange(max - min + 1, min).map(i => {\n const text = adapter.format(date, 'year')\n date = adapter.setYear(date, adapter.getYear(date) + 1)\n\n return {\n text,\n value: i,\n isDisabled: !isYearAllowed(i),\n }\n })\n })\n\n watchEffect(() => {\n model.value = model.value ?? adapter.getYear(adapter.date())\n })\n\n const yearRef = templateRef()\n\n function focusSelectedYear () {\n yearRef.el?.scrollIntoView({ block: 'center' })\n }\n\n function isYearAllowed (year: number) {\n if (Array.isArray(props.allowedYears) && props.allowedYears.length) {\n return props.allowedYears.includes(year)\n }\n\n if (typeof props.allowedYears === 'function') {\n return props.allowedYears(year)\n }\n\n return true\n }\n\n useRender(() => (\n \n yearRef.el?.focus() }\n onFocusin={ () => hasFocusedItem.value = true }\n onFocusout={ () => hasFocusedItem.value = false }\n tabindex={ hasFocusedItem.value ? -1 : 0 }\n >\n { years.value.map((year, i) => {\n const btnProps = {\n ref: model.value === year.value ? yearRef : undefined,\n active: model.value === year.value,\n color: model.value === year.value ? props.color : undefined,\n rounded: true,\n text: year.text,\n disabled: year.isDisabled,\n variant: model.value === year.value ? 'flat' : 'text',\n onClick: () => {\n if (model.value === year.value) {\n emit('update:modelValue', model.value)\n return\n }\n model.value = year.value\n },\n } as const\n\n return slots.year?.({\n year,\n i,\n props: btnProps,\n }) ?? (\n \n )\n })}\n \n \n ))\n\n return {}\n },\n})\n\nexport type VDatePickerYears = InstanceType\n", "// Styles\nimport './VEmptyState.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\nimport { VImg } from '@/components/VImg'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { useDisplay } from '@/composables/display'\nimport { IconValue } from '@/composables/icons'\nimport { makeSizeProps } from '@/composables/size'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\n\nexport type VEmptyStateSlots = {\n actions: {\n props: {\n onClick: (e: Event) => void\n }\n }\n default: never\n headline: never\n title: never\n media: never\n text: never\n}\n\nexport const makeVEmptyStateProps = propsFactory({\n actionText: String,\n bgColor: String,\n color: String,\n icon: IconValue,\n image: String,\n justify: {\n type: String as PropType<'start' | 'center' | 'end'>,\n default: 'center',\n },\n headline: String,\n title: String,\n text: String,\n textWidth: {\n type: [Number, String],\n default: 500,\n },\n href: String,\n to: String,\n\n ...makeComponentProps(),\n ...makeDimensionProps(),\n ...makeSizeProps({ size: undefined }),\n ...makeThemeProps(),\n}, 'VEmptyState')\n\nexport const VEmptyState = genericComponent()({\n name: 'VEmptyState',\n\n props: makeVEmptyStateProps(),\n\n emits: {\n 'click:action': (e: Event) => true,\n },\n\n setup (props, { emit, slots }) {\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.bgColor)\n const { dimensionStyles } = useDimension(props)\n const { displayClasses } = useDisplay()\n\n function onClickAction (e: Event) {\n emit('click:action', e)\n }\n\n useRender(() => {\n const hasActions = !!(slots.actions || props.actionText)\n const hasHeadline = !!(slots.headline || props.headline)\n const hasTitle = !!(slots.title || props.title)\n const hasText = !!(slots.text || props.text)\n const hasMedia = !!(slots.media || props.image || props.icon)\n const size = props.size || (props.image ? 200 : 96)\n\n return (\n \n { hasMedia && (\n
\n { !slots.media ? (\n <>\n { props.image ? (\n \n ) : props.icon ? (\n \n ) : undefined }\n \n ) : (\n \n { slots.media() }\n \n )}\n
\n )}\n\n { hasHeadline && (\n
\n { slots.headline?.() ?? props.headline }\n
\n )}\n\n { hasTitle && (\n
\n { slots.title?.() ?? props.title }\n
\n )}\n\n { hasText && (\n \n { slots.text?.() ?? props.text }\n \n )}\n\n { slots.default && (\n
\n { slots.default() }\n
\n )}\n\n { hasActions && (\n
\n \n {\n slots.actions?.({ props: { onClick: onClickAction } }) ?? (\n \n )\n }\n \n
\n )}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VEmptyState = InstanceType\n", "// Styles\nimport './VFab.sass'\n\n// Components\nimport { makeVBtnProps, VBtn } from '@/components/VBtn/VBtn'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeLocationProps } from '@/composables/location'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useResizeObserver } from '@/composables/resizeObserver'\nimport { useToggleScope } from '@/composables/toggleScope'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef, watchEffect } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef } from 'vue'\nimport type { Position } from '@/composables/layout'\n\nexport const makeVFabProps = propsFactory({\n app: Boolean,\n appear: Boolean,\n extended: Boolean,\n layout: Boolean,\n offset: Boolean,\n modelValue: {\n type: Boolean,\n default: true,\n },\n\n ...omit(makeVBtnProps({ active: true }), ['location', 'spaced']),\n ...makeLayoutItemProps(),\n ...makeLocationProps(),\n ...makeTransitionProps({ transition: 'fab-transition' }),\n}, 'VFab')\n\nexport const VFab = genericComponent()({\n name: 'VFab',\n\n props: makeVFabProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const height = shallowRef(56)\n const layoutItemStyles = ref()\n\n const { resizeRef } = useResizeObserver(entries => {\n if (!entries.length) return\n height.value = entries[0].target.clientHeight\n })\n\n const hasPosition = toRef(() => props.app || props.absolute)\n\n const position = computed(() => {\n if (!hasPosition.value) return false\n\n return props.location?.split(' ').shift() ?? 'bottom'\n }) as ComputedRef\n\n const orientation = computed(() => {\n if (!hasPosition.value) return false\n\n return props.location?.split(' ')[1] ?? 'end'\n })\n\n useToggleScope(() => props.app, () => {\n const layout = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position,\n layoutSize: computed(() => props.layout ? height.value + 24 : 0),\n elementSize: computed(() => height.value + 24),\n active: computed(() => props.app && model.value),\n absolute: toRef(() => props.absolute),\n })\n\n watchEffect(() => {\n layoutItemStyles.value = layout.layoutItemStyles.value\n })\n })\n\n const vFabRef = ref()\n\n useRender(() => {\n const btnProps = VBtn.filterProps(props)\n\n return (\n \n
\n \n \n \n
\n \n )\n })\n\n return {}\n },\n})\n\nexport type VFab = InstanceType\n", "// Styles\nimport './VFooter.sass'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { useResizeObserver } from '@/composables/resizeObserver'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef, watchEffect } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVFooterProps = propsFactory({\n app: Boolean,\n color: String,\n height: {\n type: [Number, String],\n default: 'auto',\n },\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeElevationProps(),\n ...makeLayoutItemProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'footer' }),\n ...makeThemeProps(),\n}, 'VFooter')\n\nexport const VFooter = genericComponent()({\n name: 'VFooter',\n\n props: makeVFooterProps(),\n\n setup (props, { slots }) {\n const layoutItemStyles = ref()\n\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n const { borderClasses } = useBorder(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n\n const autoHeight = shallowRef(32)\n const { resizeRef } = useResizeObserver(entries => {\n if (!entries.length) return\n autoHeight.value = entries[0].target.clientHeight\n })\n const height = computed(() => props.height === 'auto' ? autoHeight.value : parseInt(props.height, 10))\n\n useToggleScope(() => props.app, () => {\n const layout = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(() => 'bottom'),\n layoutSize: height,\n elementSize: computed(() => props.height === 'auto' ? undefined : height.value),\n active: toRef(() => props.app),\n absolute: toRef(() => props.absolute),\n })\n\n watchEffect(() => {\n layoutItemStyles.value = layout.layoutItemStyles.value\n })\n })\n\n useRender(() => (\n \n ))\n\n return {}\n },\n})\n\nexport type VFooter = InstanceType\n", "/**\n * VHotkey Component\n *\n * Purpose: Renders keyboard shortcuts in a visually consistent and accessible way.\n * This component handles the complex logic of displaying keyboard combinations\n * across different platforms (Mac vs PC) and display modes (icons, symbols, text).\n *\n * Why it exists:\n * - Provides consistent visual representation of keyboard shortcuts\n * - Handles platform-specific key differences (Cmd vs Ctrl, Option vs Alt)\n * - Supports multiple display modes for different design needs\n * - Encapsulates complex key parsing and rendering logic\n * - Used throughout the command palette for instruction display\n *\n * Key Mapping Structure:\n * The keyMap uses a simple object structure where each key has:\n * - `default`: Required configuration for all platforms\n * - `mac`: Optional Mac-specific overrides\n * Each config can specify `symbol`, `icon`, and `text` representations.\n *\n * Example:\n * ```\n * ctrl: {\n * mac: { symbol: '⌃', icon: '$ctrl', text: 'Control' },\n * default: { text: 'Ctrl', icon: '$ctrl' }\n * }\n * ```\n */\n\n// Styles\nimport './VHotkey.scss'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VKbd } from '@/components/VKbd'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { splitKeyCombination, splitKeySequence } from '@/composables/hotkey/hotkey-parsing'\nimport { useLocale, useRtl } from '@/composables/locale'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useVariant } from '@/composables/variant'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, mergeDeep, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { IconValue } from '@/composables/icons'\n\n// Display mode types for different visual representations\ntype DisplayMode = 'icon' | 'symbol' | 'text'\n\n// Extended variant type that includes our custom 'contained' variant\ntype HotkeyVariant = 'elevated' | 'flat' | 'tonal' | 'outlined' | 'text' | 'plain' | 'contained'\n\n// Key display tuple: [mode, content] where content is string or IconValue\ntype KeyDisplay = [Exclude, string] | [Extract, IconValue]\n\n// Key tuple: [mode, content, keycode] where content is string or IconValue\ntype Key = [Exclude, string, string] | [Extract, IconValue, string]\n\ntype KeyConfig = {\n symbol?: string\n icon?: string\n text: string\n}\n\ntype PlatformKeyConfig = {\n mac?: KeyConfig\n default: KeyConfig\n}\n\ntype KeyMapConfig = Record\n\nfunction processKey (config: PlatformKeyConfig, requestedMode: DisplayMode, isMac: boolean): KeyDisplay {\n const keyCfg = (isMac && config.mac) ? config.mac : config.default\n\n // 1. Resolve the safest display mode for the current platform\n const mode: DisplayMode = (() => {\n // If the requested mode lacks an asset, fall back to text\n if (requestedMode === 'icon' && !keyCfg.icon) return 'text'\n if (requestedMode === 'symbol' && !keyCfg.symbol) return 'text'\n\n return requestedMode\n })()\n\n // 2. Pick value for the chosen mode, defaulting to text representation\n let value: string | IconValue = keyCfg[mode] ?? keyCfg.text\n\n // 3. Guard against icon tokens leaking into text mode (e.g. \"$ctrl\")\n if (mode === 'text' && typeof value === 'string' && value.startsWith('$') && !value.startsWith('$vuetify.')) {\n value = value.slice(1).toUpperCase() // \"$ctrl\" → \"CTRL\"\n }\n\n return mode === 'icon'\n ? ['icon', value as IconValue]\n : [mode as Exclude, value as string]\n}\n\nexport const hotkeyMap: KeyMapConfig = {\n ctrl: {\n mac: { symbol: '⌃', icon: '$ctrl', text: '$vuetify.hotkey.ctrl' },\n default: { text: 'Ctrl' },\n },\n meta: {\n mac: { symbol: '⌘', icon: '$command', text: '$vuetify.hotkey.command' },\n default: { text: 'Ctrl' },\n },\n cmd: {\n mac: { symbol: '⌘', icon: '$command', text: '$vuetify.hotkey.command' },\n default: { text: 'Ctrl' },\n },\n shift: {\n mac: { symbol: '⇧', icon: '$shift', text: '$vuetify.hotkey.shift' },\n default: { text: 'Shift' },\n },\n alt: {\n mac: { symbol: '⌥', icon: '$alt', text: '$vuetify.hotkey.option' },\n default: { text: 'Alt' },\n },\n enter: {\n default: { symbol: '↵', icon: '$enter', text: '$vuetify.hotkey.enter' },\n },\n arrowup: {\n default: { symbol: '↑', icon: '$arrowup', text: '$vuetify.hotkey.upArrow' },\n },\n arrowdown: {\n default: { symbol: '↓', icon: '$arrowdown', text: '$vuetify.hotkey.downArrow' },\n },\n arrowleft: {\n default: { symbol: '←', icon: '$arrowleft', text: '$vuetify.hotkey.leftArrow' },\n },\n arrowright: {\n default: { symbol: '→', icon: '$arrowright', text: '$vuetify.hotkey.rightArrow' },\n },\n backspace: {\n default: { symbol: '⌫', icon: '$backspace', text: '$vuetify.hotkey.backspace' },\n },\n escape: {\n default: { text: '$vuetify.hotkey.escape' },\n },\n ' ': {\n mac: { symbol: '␣', icon: '$space', text: '$vuetify.hotkey.space' },\n default: { text: '$vuetify.hotkey.space' },\n },\n '-': {\n default: { text: '-' },\n },\n}\n\nexport const makeVHotkeyProps = propsFactory({\n // String representing keyboard shortcuts (e.g., \"ctrl+k\", \"meta+shift+p\")\n keys: String,\n // How to display keys: 'symbol' uses special characters (⌘, ⌃), 'icon' uses SVG icons, 'text' uses words\n displayMode: {\n type: String as PropType,\n default: 'icon',\n },\n // Custom key mapping configuration. Users can import and modify the exported hotkeyMap as needed\n keyMap: {\n type: Object as PropType,\n default: () => hotkeyMap,\n },\n platform: {\n type: String as PropType<'auto' | 'pc' | 'mac'>,\n default: 'auto',\n },\n inline: Boolean,\n disabled: Boolean,\n prefix: String,\n suffix: String,\n variant: {\n type: String as PropType,\n default: 'elevated' as const,\n validator: (v: any) => ['elevated', 'flat', 'tonal', 'outlined', 'text', 'plain', 'contained'].includes(v),\n },\n\n ...makeComponentProps(),\n ...makeThemeProps(),\n ...makeBorderProps(),\n ...makeRoundedProps(),\n ...makeElevationProps(),\n color: String,\n}, 'VHotkey')\n\nconst AND_DELINEATOR = Symbol('VHotkey:AND_DELINEATOR') // For + separators\nconst SLASH_DELINEATOR = Symbol('VHotkey:SLASH_DELINEATOR') // For / separators\nconst THEN_DELINEATOR = Symbol('VHotkey:THEN_DELINEATOR') // For - separators\ntype Delineator = typeof AND_DELINEATOR | typeof SLASH_DELINEATOR | typeof THEN_DELINEATOR\n\nfunction getKeyText (keyMap: KeyMapConfig, key: string, isMac: boolean): string {\n const lowerKey = key.toLowerCase()\n\n if (lowerKey in keyMap) {\n const result = processKey(keyMap[lowerKey], 'text', isMac)\n return typeof result[1] === 'string' ? result[1] : String(result[1])\n }\n\n return key.toUpperCase()\n}\n\nfunction applyDisplayModeToKey (keyMap: KeyMapConfig, mode: DisplayMode, key: string, isMac: boolean): Key {\n const lowerKey = key.toLowerCase()\n\n if (lowerKey in keyMap) {\n const result = processKey(keyMap[lowerKey], mode, isMac)\n\n if (result[0] === 'text' && typeof result[1] === 'string' && result[1].startsWith('$') && !result[1].startsWith('$vuetify.')) {\n return ['text', result[1].replace('$', '').toUpperCase(), key]\n }\n\n return [...result, key]\n }\n\n return ['text', key.toUpperCase(), key]\n}\n\nexport const VHotkey = genericComponent()({\n name: 'VHotkey',\n\n props: makeVHotkeyProps(),\n\n setup (props) {\n const { t } = useLocale()\n const { themeClasses } = provideTheme(props)\n const { rtlClasses } = useRtl()\n const { borderClasses } = useBorder(props)\n const { roundedClasses } = useRounded(props)\n const { elevationClasses } = useElevation(props)\n\n const { colorClasses, colorStyles, variantClasses } = useVariant(() => ({\n color: props.color,\n variant: props.variant === 'contained' ? 'elevated' : props.variant,\n }))\n\n const isMac = computed(() =>\n props.platform === 'auto'\n ? (typeof navigator !== 'undefined' && /macintosh/i.test(navigator.userAgent))\n : props.platform === 'mac'\n )\n\n const keyCombinations = computed(() => {\n if (!props.keys) return []\n\n // Split by spaces to handle multiple key combinations\n // Example: \"ctrl+k meta+p\" -> [\"ctrl+k\", \"meta+p\"]\n return props.keys.split(' ').map(combination => {\n const result: Array = []\n\n const sequenceGroups = splitKeySequence(combination)\n for (let i = 0; i < sequenceGroups.length; i++) {\n const group = sequenceGroups[i]\n\n // Add THEN delineator between sequence groups\n if (i > 0) result.push(THEN_DELINEATOR)\n\n const { keys: keyParts, separators } = splitKeyCombination(group)\n for (let j = 0; j < keyParts.length; j++) {\n const part = keyParts[j]\n\n // Add AND delineator between keys\n if (j > 0) {\n result.push(separators[j - 1] === '/' ? SLASH_DELINEATOR : AND_DELINEATOR)\n }\n result.push(applyDisplayModeToKey(props.keyMap, props.displayMode, part, isMac.value))\n }\n }\n\n return result\n })\n })\n\n const accessibleLabel = computed(() => {\n if (!props.keys) return ''\n\n // Convert the parsed key combinations into readable text\n const readableShortcuts = keyCombinations.value.map(combination => {\n const readableParts: string[] = []\n\n for (const key of combination) {\n if (Array.isArray(key)) {\n // Always use text representation for screen readers\n const textKey = key[0] === 'icon' || key[0] === 'symbol'\n ? applyDisplayModeToKey(mergeDeep(hotkeyMap, props.keyMap), 'text', String(key[1]), isMac.value)[1]\n : key[1]\n readableParts.push(translateKey(textKey as string))\n } else {\n if (key === AND_DELINEATOR) {\n readableParts.push(t('$vuetify.hotkey.plus'))\n } else if (key === SLASH_DELINEATOR) {\n readableParts.push(t('$vuetify.hotkey.or'))\n } else if (key === THEN_DELINEATOR) {\n readableParts.push(t('$vuetify.hotkey.then'))\n }\n }\n }\n\n return readableParts.join(' ')\n })\n\n const shortcutText = readableShortcuts.join(', ')\n return t('$vuetify.hotkey.shortcut', shortcutText)\n })\n\n function translateKey (key: string) {\n return key.startsWith('$vuetify.') ? t(key) : key\n }\n\n function getKeyTooltip (key: Key): string | undefined {\n if (props.displayMode === 'text') return undefined\n\n const textKey = getKeyText(props.keyMap, String(key[2]), isMac.value)\n return translateKey(textKey)\n }\n\n function renderKey (key: Key, keyIndex: number) {\n const isContained = props.variant === 'contained'\n const KeyComponent = isContained ? 'kbd' : VKbd\n const keyClasses = [\n 'v-hotkey__key',\n `v-hotkey__key-${key[0]}`,\n ...(isContained ? ['v-hotkey__key--nested'] : [\n borderClasses.value,\n roundedClasses.value,\n elevationClasses.value,\n colorClasses.value,\n ]),\n ]\n\n return (\n \n {\n key[0] === 'icon' ? (\n \n ) : translateKey(key[1])\n }\n \n )\n }\n\n function renderDivider (key: Delineator, keyIndex: number) {\n return (\n \n { key === AND_DELINEATOR ? '+'\n : key === SLASH_DELINEATOR ? '/'\n : t('$vuetify.hotkey.then')}\n \n )\n }\n\n useRender(() => {\n const content = (\n <>\n { props.prefix && (\n { props.prefix }\n )}\n\n { keyCombinations.value.map((combination, comboIndex) => (\n \n { combination.map((key, keyIndex) =>\n Array.isArray(key)\n ? renderKey(key, keyIndex)\n : renderDivider(key, keyIndex)\n )}\n { comboIndex < keyCombinations.value.length - 1 && (\n  \n )}\n \n ))}\n\n { props.suffix && (\n { props.suffix }\n )}\n \n )\n\n return (\n \n { props.variant !== 'contained' ? content : (\n \n { content }\n \n )}\n \n )\n })\n },\n})\n\nexport type VHotkey = InstanceType\n\nexport type { KeyConfig, PlatformKeyConfig, KeyMapConfig, DisplayMode }\n", "// Styles\nimport './VKbd.scss'\n\nexport { VKbd } from './VKbd'\n", "// Styles\nimport './VKbd.scss'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVKbdProps = propsFactory({\n color: String,\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'kbd' }),\n ...makeThemeProps(),\n ...makeElevationProps(),\n}, 'VKbd')\n\nexport const VKbd = genericComponent()({\n name: 'VKbd',\n\n props: makeVKbdProps(),\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { roundedClasses } = useRounded(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n const { elevationClasses } = useElevation(props)\n\n useRender(() => (\n \n ))\n\n return {}\n },\n})\n\nexport type VKbd = InstanceType\n", "// Composables\nimport { makeDelayProps, useDelay } from '@/composables/delay'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { genericComponent, propsFactory } from '@/util'\n\ntype VHoverSlots = {\n default: {\n isHovering: boolean | null\n props: Record\n }\n}\n\nexport const makeVHoverProps = propsFactory({\n disabled: Boolean,\n modelValue: {\n type: Boolean,\n default: null,\n },\n\n ...makeDelayProps(),\n}, 'VHover')\n\nexport const VHover = genericComponent()({\n name: 'VHover',\n\n props: makeVHoverProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isHovering = useProxiedModel(props, 'modelValue')\n const { runOpenDelay, runCloseDelay } = useDelay(props, value => !props.disabled && (isHovering.value = value))\n\n return () => slots.default?.({\n isHovering: isHovering.value,\n props: {\n onMouseenter: runOpenDelay,\n onMouseleave: runCloseDelay,\n },\n })\n },\n})\n\nexport type VHover = InstanceType\n", "// Styles\nimport './VInfiniteScroll.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { useIntersectionObserver } from '@/composables/intersectionObserver'\nimport { useLocale } from '@/composables/locale'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { computed, nextTick, onMounted, ref, shallowRef, watch } from 'vue'\nimport { convertToUnit, defineComponent, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type InfiniteScrollSide = 'start' | 'end' | 'both'\nexport type InfiniteScrollStatus = 'ok' | 'empty' | 'loading' | 'error'\n\ntype InfiniteScrollSlot = {\n side: InfiniteScrollSide\n props: Record\n}\n\ntype VInfiniteScrollSlots = {\n default: never\n loading: InfiniteScrollSlot\n error: InfiniteScrollSlot\n empty: InfiniteScrollSlot\n 'load-more': InfiniteScrollSlot\n}\n\nexport const makeVInfiniteScrollProps = propsFactory({\n color: String,\n direction: {\n type: String as PropType<'vertical' | 'horizontal'>,\n default: 'vertical',\n validator: (v: any) => ['vertical', 'horizontal'].includes(v),\n },\n side: {\n type: String as PropType,\n default: 'end',\n validator: (v: any) => ['start', 'end', 'both'].includes(v),\n },\n mode: {\n type: String as PropType<'intersect' | 'manual'>,\n default: 'intersect',\n validator: (v: any) => ['intersect', 'manual'].includes(v),\n },\n margin: [Number, String],\n loadMoreText: {\n type: String,\n default: '$vuetify.infiniteScroll.loadMore',\n },\n emptyText: {\n type: String,\n default: '$vuetify.infiniteScroll.empty',\n },\n\n ...makeDimensionProps(),\n ...makeTagProps(),\n}, 'VInfiniteScroll')\n\nexport const VInfiniteScrollIntersect = defineComponent({\n name: 'VInfiniteScrollIntersect',\n\n props: {\n side: {\n type: String as PropType,\n required: true,\n },\n rootMargin: String,\n },\n\n emits: {\n intersect: (side: InfiniteScrollSide, isIntersecting: boolean) => true,\n },\n\n setup (props, { emit }) {\n const { intersectionRef, isIntersecting } = useIntersectionObserver()\n\n watch(isIntersecting, async val => {\n emit('intersect', props.side, val)\n })\n\n useRender(() => (\n  \n ))\n\n return {}\n },\n})\n\nexport const VInfiniteScroll = genericComponent()({\n name: 'VInfiniteScroll',\n\n props: makeVInfiniteScrollProps(),\n\n emits: {\n load: (options: { side: InfiniteScrollSide, done: (status: InfiniteScrollStatus) => void }) => true,\n },\n\n setup (props, { slots, emit }) {\n const rootEl = ref()\n const startStatus = shallowRef('ok')\n const endStatus = shallowRef('ok')\n const margin = computed(() => convertToUnit(props.margin))\n const isIntersecting = shallowRef(false)\n\n function setScrollAmount (amount: number) {\n if (!rootEl.value) return\n\n const property = props.direction === 'vertical' ? 'scrollTop' : 'scrollLeft'\n rootEl.value[property] = amount\n }\n\n function getScrollAmount () {\n if (!rootEl.value) return 0\n\n const property = props.direction === 'vertical' ? 'scrollTop' : 'scrollLeft'\n return rootEl.value[property]\n }\n\n function getScrollSize () {\n if (!rootEl.value) return 0\n\n const property = props.direction === 'vertical' ? 'scrollHeight' : 'scrollWidth'\n return rootEl.value[property]\n }\n\n function getContainerSize () {\n if (!rootEl.value) return 0\n\n const property = props.direction === 'vertical' ? 'clientHeight' : 'clientWidth'\n return rootEl.value[property]\n }\n\n onMounted(() => {\n if (!rootEl.value) return\n\n if (props.side === 'start') {\n setScrollAmount(getScrollSize())\n } else if (props.side === 'both') {\n setScrollAmount(getScrollSize() / 2 - getContainerSize() / 2)\n }\n })\n\n function setStatus (side: InfiniteScrollSide, status: InfiniteScrollStatus) {\n if (side === 'start') {\n startStatus.value = status\n } else if (side === 'end') {\n endStatus.value = status\n } else if (side === 'both') {\n startStatus.value = status\n endStatus.value = status\n }\n }\n\n function getStatus (side: string) {\n return side === 'start' ? startStatus.value : endStatus.value\n }\n\n let previousScrollSize = 0\n function handleIntersect (side: InfiniteScrollSide, _isIntersecting: boolean) {\n isIntersecting.value = _isIntersecting\n if (isIntersecting.value) {\n intersecting(side)\n }\n }\n\n function intersecting (side: InfiniteScrollSide) {\n if (props.mode !== 'manual' && !isIntersecting.value) return\n\n const status = getStatus(side)\n if (!rootEl.value || ['empty', 'loading'].includes(status)) return\n\n previousScrollSize = getScrollSize()\n setStatus(side, 'loading')\n\n function done (status: InfiniteScrollStatus) {\n setStatus(side, status)\n\n nextTick(() => {\n if (status === 'empty' || status === 'error') return\n\n if (status === 'ok' && side === 'start') {\n setScrollAmount(getScrollSize() - previousScrollSize + getScrollAmount())\n }\n if (props.mode !== 'manual') {\n nextTick(() => {\n // Browser takes 2 - 3 animation frames to trigger IntersectionObserver after\n // VInfiniteScrollIntersect leaves the viewpoint. So far I couldn't come up\n // with a better solution than using 3 nested window.requestAnimationFrame. (#17475)\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n intersecting(side)\n })\n })\n })\n })\n }\n })\n }\n\n emit('load', { side, done })\n }\n\n const { t } = useLocale()\n\n function renderSide (side: InfiniteScrollSide, status: InfiniteScrollStatus) {\n if (props.side !== side && props.side !== 'both') return\n\n const onClick = () => intersecting(side)\n const slotProps = { side, props: { onClick, color: props.color } }\n\n if (status === 'error') return slots.error?.(slotProps)\n\n if (status === 'empty') return slots.empty?.(slotProps) ??
{ t(props.emptyText) }
\n\n if (props.mode === 'manual') {\n if (status === 'loading') {\n return slots.loading?.(slotProps) ?? (\n \n )\n }\n\n return slots['load-more']?.(slotProps) ?? (\n \n { t(props.loadMoreText) }\n \n )\n }\n\n return slots.loading?.(slotProps) ?? (\n \n )\n }\n\n const { dimensionStyles } = useDimension(props)\n\n useRender(() => {\n const Tag = props.tag\n const hasStartIntersect = props.side === 'start' || props.side === 'both'\n const hasEndIntersect = props.side === 'end' || props.side === 'both'\n const intersectMode = props.mode === 'intersect'\n\n return (\n \n
\n { renderSide('start', startStatus.value) }\n
\n\n { hasStartIntersect && intersectMode && (\n \n )}\n\n { slots.default?.() }\n\n { hasEndIntersect && intersectMode && (\n \n )}\n\n
\n { renderSide('end', endStatus.value) }\n
\n \n )\n })\n\n function reset (side?: InfiniteScrollSide) {\n const effectiveSide = side ?? props.side\n setStatus(effectiveSide, 'ok')\n\n nextTick(() => {\n if (effectiveSide !== 'end') {\n setScrollAmount(\n getScrollSize() - previousScrollSize + getScrollAmount(),\n )\n }\n if (props.mode !== 'manual') {\n nextTick(() => {\n // See #17475\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n if (effectiveSide === 'both') {\n intersecting('start')\n intersecting('end')\n } else {\n intersecting(effectiveSide)\n }\n })\n })\n })\n })\n }\n })\n }\n\n return { reset }\n },\n})\n\nexport type VInfiniteScroll = InstanceType\n", "// Styles\nimport './VItemGroup.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { GenericProps } from '@/util'\n\nexport const VItemGroupSymbol = Symbol.for('vuetify:v-item-group')\n\nexport const makeVItemGroupProps = propsFactory({\n ...makeComponentProps(),\n ...makeGroupProps({\n selectedClass: 'v-item--selected',\n }),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VItemGroup')\n\ntype VItemGroupSlots = {\n default: {\n isSelected: (id: string) => boolean\n select: (id: string, value: boolean) => void\n next: () => void\n prev: () => void\n selected: readonly string[]\n }\n}\n\nexport const VItemGroup = genericComponent(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VItemGroupSlots,\n) => GenericProps>()({\n name: 'VItemGroup',\n\n props: makeVItemGroupProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { isSelected, select, next, prev, selected } = useGroup(props, VItemGroupSymbol)\n\n return () => (\n \n { slots.default?.({\n isSelected,\n select,\n next,\n prev,\n selected: selected.value,\n })}\n \n )\n },\n})\n\nexport type VItemGroup = InstanceType\n", "// Composables\nimport { VItemGroupSymbol } from './VItemGroup'\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\n\n// Utilities\nimport { genericComponent } from '@/util'\n\ntype VItemSlots = {\n default: {\n isSelected: boolean | undefined\n selectedClass: boolean | (string | undefined)[] | undefined\n select: ((value: boolean) => void) | undefined\n toggle: (() => void) | undefined\n value: unknown\n disabled: boolean | undefined\n }\n}\n\nexport const VItem = genericComponent()({\n name: 'VItem',\n\n props: makeGroupItemProps(),\n\n emits: {\n 'group:selected': (val: { value: boolean }) => true,\n },\n\n setup (props, { slots }) {\n const { isSelected, select, toggle, selectedClass, value, disabled } = useGroupItem(props, VItemGroupSymbol)\n return () => slots.default?.({\n isSelected: isSelected.value,\n selectedClass: selectedClass.value,\n select,\n toggle,\n value: value.value,\n disabled: disabled.value,\n })\n },\n})\n\nexport type VItem = InstanceType\n", "// Styles\nimport './VLayout.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { createLayout, makeLayoutProps } from '@/composables/layout'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVLayoutProps = propsFactory({\n ...makeComponentProps(),\n ...makeDimensionProps(),\n ...makeLayoutProps(),\n}, 'VLayout')\n\nexport const VLayout = genericComponent()({\n name: 'VLayout',\n\n props: makeVLayoutProps(),\n\n setup (props, { slots }) {\n const { layoutClasses, layoutStyles, getLayoutItem, items, layoutRef } = createLayout(props)\n const { dimensionStyles } = useDimension(props)\n\n useRender(() => (\n \n { slots.default?.() }\n \n ))\n\n return {\n getLayoutItem,\n items,\n }\n },\n})\n\nexport type VLayout = InstanceType\n", "// Styles\nimport './VLayoutItem.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const makeVLayoutItemProps = propsFactory({\n position: {\n type: String as PropType<'top' | 'right' | 'bottom' | 'left'>,\n required: true,\n },\n size: {\n type: [Number, String],\n default: 300,\n },\n modelValue: Boolean,\n\n ...makeComponentProps(),\n ...makeLayoutItemProps(),\n}, 'VLayoutItem')\n\nexport const VLayoutItem = genericComponent()({\n name: 'VLayoutItem',\n\n props: makeVLayoutItemProps(),\n\n setup (props, { slots }) {\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(() => props.position),\n elementSize: toRef(() => props.size),\n layoutSize: toRef(() => props.size),\n active: toRef(() => props.modelValue),\n absolute: toRef(() => props.absolute),\n })\n\n return () => (\n \n { slots.default?.() }\n \n )\n },\n})\n\nexport type VLayoutItem = InstanceType\n", "// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Directives\nimport vIntersect from '@/directives/intersect'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const makeVLazyProps = propsFactory({\n modelValue: Boolean,\n options: {\n type: Object as PropType,\n // For more information on types, navigate to:\n // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n default: () => ({\n root: undefined,\n rootMargin: undefined,\n threshold: undefined,\n }),\n },\n\n ...makeComponentProps(),\n ...makeDimensionProps(),\n ...makeTagProps(),\n ...makeTransitionProps({ transition: 'fade-transition' }),\n}, 'VLazy')\n\nexport const VLazy = genericComponent()({\n name: 'VLazy',\n\n directives: { vIntersect },\n\n props: makeVLazyProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { dimensionStyles } = useDimension(props)\n\n const isActive = useProxiedModel(props, 'modelValue')\n\n function onIntersect (isIntersecting: boolean) {\n if (isActive.value) return\n\n isActive.value = isIntersecting\n }\n\n useRender(() => (\n \n { isActive.value && (\n \n { slots.default?.() }\n \n )}\n \n ))\n\n return {}\n },\n})\n\nexport type VLazy = InstanceType\n", "// Styles\nimport './VLocaleProvider.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideLocale } from '@/composables/locale'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVLocaleProviderProps = propsFactory({\n locale: String,\n fallbackLocale: String,\n messages: Object,\n rtl: {\n type: Boolean,\n default: undefined,\n },\n\n ...makeComponentProps(),\n}, 'VLocaleProvider')\n\nexport const VLocaleProvider = genericComponent()({\n name: 'VLocaleProvider',\n\n props: makeVLocaleProviderProps(),\n\n setup (props, { slots }) {\n const { rtlClasses } = provideLocale(props)\n\n useRender(() => (\n \n { slots.default?.() }\n \n ))\n\n return {}\n },\n})\n\nexport type VLocaleProvider = InstanceType\n", "// Composables\nimport { useHydration } from '@/composables/hydration'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VNoSsr = defineComponent({\n name: 'VNoSsr',\n\n setup (_, { slots }) {\n const show = useHydration()\n\n return () => show.value && slots.default?.()\n },\n})\n\nexport type VNoSsr = InstanceType\n", "// Styles\nimport './VNumberInput.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDivider } from '@/components/VDivider'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\n\n// Composables\nimport { useHold } from './hold'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, nextTick, onMounted, ref, shallowRef, toRef, watch } from 'vue'\nimport { clamp, escapeForRegex, extractNumber, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VTextFieldSlots } from '@/components/VTextField/VTextField'\n\ntype ControlSlot = {\n props: Record\n}\n\ntype VNumberInputSlots = Omit & {\n increment: ControlSlot\n decrement: ControlSlot\n}\n\ntype ControlVariant = 'default' | 'stacked' | 'split' | 'hidden'\n\nconst makeVNumberInputProps = propsFactory({\n controlVariant: {\n type: String as PropType,\n default: 'default',\n },\n inset: Boolean,\n hideInput: Boolean,\n modelValue: {\n type: Number as PropType,\n default: null,\n },\n min: {\n type: Number,\n default: Number.MIN_SAFE_INTEGER,\n },\n max: {\n type: Number,\n default: Number.MAX_SAFE_INTEGER,\n },\n step: {\n type: Number,\n default: 1,\n },\n precision: {\n type: Number as PropType,\n default: 0,\n },\n minFractionDigits: {\n type: Number as PropType,\n default: null,\n },\n decimalSeparator: {\n type: String,\n validator: (v: any) => !v || v.length === 1,\n },\n\n ...omit(makeVTextFieldProps(), ['modelValue', 'validationValue']),\n}, 'VNumberInput')\n\nexport const VNumberInput = genericComponent()({\n name: 'VNumberInput',\n\n props: {\n ...makeVNumberInputProps(),\n },\n\n emits: {\n 'update:focused': (val: boolean) => true,\n 'update:modelValue': (val: number) => true,\n },\n\n setup (props, { slots }) {\n const vTextFieldRef = ref()\n\n const { holdStart, holdStop } = useHold({ toggleUpDown })\n const form = useForm(props)\n const controlsDisabled = computed(() => (\n form.isDisabled.value || form.isReadonly.value\n ))\n\n const isFocused = shallowRef(props.focused)\n\n const { decimalSeparator: decimalSeparatorFromLocale } = useLocale()\n const decimalSeparator = computed(() => props.decimalSeparator?.[0] || decimalSeparatorFromLocale.value)\n\n function correctPrecision (val: number, precision = props.precision, trim = true) {\n const fixed = precision == null\n ? String(val)\n : val.toFixed(precision)\n\n if (isFocused.value && trim) {\n return Number(fixed).toString() // trim zeros\n .replace('.', decimalSeparator.value)\n }\n\n if (props.minFractionDigits === null || (precision !== null && precision < props.minFractionDigits)) {\n return fixed.replace('.', decimalSeparator.value)\n }\n\n let [baseDigits, fractionDigits] = fixed.split('.')\n\n fractionDigits = (fractionDigits ?? '').padEnd(props.minFractionDigits, '0')\n .replace(new RegExp(`(?<=\\\\d{${props.minFractionDigits}})0+$`, 'g'), '')\n\n return [\n baseDigits,\n fractionDigits,\n ].filter(Boolean).join(decimalSeparator.value)\n }\n\n const model = useProxiedModel(props, 'modelValue', null,\n val => val ?? null,\n val => val == null\n ? val ?? null\n : clamp(Number(val), props.min, props.max)\n )\n\n const _inputText = shallowRef(null)\n const _lastParsedValue = shallowRef(null)\n\n watch(model, val => {\n if (\n isFocused.value &&\n !controlsDisabled.value &&\n Number(_inputText.value?.replace(decimalSeparator.value, '.')) === val\n ) {\n // ignore external changes while typing\n // e.g. 5.01{backspace}2 » should result in 5.02\n // but we emit '5' in and want to preserve '5.0'\n } else if (val == null) {\n _inputText.value = null\n _lastParsedValue.value = null\n } else if (!isNaN(val)) {\n _inputText.value = correctPrecision(val)\n _lastParsedValue.value = Number(_inputText.value.replace(decimalSeparator.value, '.'))\n }\n }, { immediate: true })\n\n const inputText = computed({\n get: () => _inputText.value,\n set (val) {\n if (val === null || val === '') {\n model.value = null\n _inputText.value = null\n _lastParsedValue.value = null\n return\n }\n const parsedValue = Number(val.replace(decimalSeparator.value, '.'))\n if (!isNaN(parsedValue)) {\n _inputText.value = val\n _lastParsedValue.value = parsedValue\n\n if (parsedValue <= props.max && parsedValue >= props.min) {\n model.value = parsedValue\n }\n }\n },\n })\n\n const isOutOfRange = computed(() => {\n if (_lastParsedValue.value === null) return false\n const numberFromText = Number(_inputText.value?.replace(decimalSeparator.value, '.'))\n return numberFromText !== clamp(numberFromText, props.min, props.max)\n })\n\n const canIncrease = computed(() => {\n if (controlsDisabled.value) return false\n return (model.value ?? 0) as number + props.step <= props.max\n })\n const canDecrease = computed(() => {\n if (controlsDisabled.value) return false\n return (model.value ?? 0) as number - props.step >= props.min\n })\n\n const controlVariant = computed(() => {\n return props.hideInput ? 'stacked' : props.controlVariant\n })\n\n const incrementIcon = toRef(() => controlVariant.value === 'split' ? '$plus' : '$collapse')\n const decrementIcon = toRef(() => controlVariant.value === 'split' ? '$minus' : '$expand')\n const controlNodeSize = toRef(() => controlVariant.value === 'split' ? 'default' : 'small')\n const controlNodeDefaultHeight = toRef(() => controlVariant.value === 'stacked' ? 'auto' : '100%')\n\n const incrementSlotProps = {\n props: {\n onClick: onControlClick,\n onPointerup: onControlMouseup,\n onPointerdown: onUpControlMousedown,\n onPointercancel: onControlMouseup,\n },\n }\n const decrementSlotProps = {\n props: {\n onClick: onControlClick,\n onPointerup: onControlMouseup,\n onPointerdown: onDownControlMousedown,\n onPointercancel: onControlMouseup,\n },\n }\n\n watch(() => props.precision, () => formatInputValue())\n watch(() => props.minFractionDigits, () => formatInputValue())\n\n onMounted(() => {\n clampModel()\n })\n\n function inferPrecision (value: number | null) {\n if (value == null) return 0\n const str = value.toString()\n const idx = str.indexOf('.')\n return ~idx ? str.length - idx : 0\n }\n\n function toggleUpDown (increment = true) {\n if (controlsDisabled.value) return\n if (model.value == null) {\n inputText.value = correctPrecision(clamp(0, props.min, props.max))\n return\n }\n\n let inferredPrecision = Math.max(inferPrecision(model.value), inferPrecision(props.step))\n if (props.precision != null) inferredPrecision = Math.max(inferredPrecision, props.precision)\n if (increment) {\n if (canIncrease.value) inputText.value = correctPrecision(model.value + props.step, inferredPrecision)\n } else {\n if (canDecrease.value) inputText.value = correctPrecision(model.value - props.step, inferredPrecision)\n }\n }\n\n function onBeforeinput (e: InputEvent) {\n if (!e.data) return\n const inputElement = e.target as HTMLInputElement\n const { value: existingTxt, selectionStart, selectionEnd } = inputElement ?? {}\n\n const potentialNewInputVal =\n existingTxt\n ? existingTxt.slice(0, selectionStart as number | undefined) + e.data + existingTxt.slice(selectionEnd as number | undefined)\n : e.data\n\n const potentialNewNumber = extractNumber(potentialNewInputVal, props.precision, decimalSeparator.value)\n\n // Allow only numbers, \"-\" and {decimal separator}\n // Allow \"-\" and {decimal separator} only once\n // Allow \"-\" only at the start\n if (!new RegExp(`^-?\\\\d*${escapeForRegex(decimalSeparator.value)}?\\\\d*$`).test(potentialNewInputVal)) {\n e.preventDefault()\n inputElement!.value = potentialNewNumber\n nextTick(() => inputText.value = potentialNewNumber)\n }\n\n if (props.precision == null) return\n\n // Ignore decimal digits above precision limit\n if (potentialNewInputVal.split(decimalSeparator.value)[1]?.length > props.precision) {\n e.preventDefault()\n inputElement!.value = potentialNewNumber\n nextTick(() => inputText.value = potentialNewNumber)\n\n const cursorPosition = (selectionStart ?? 0) + e.data.length\n inputElement!.setSelectionRange(cursorPosition, cursorPosition)\n }\n // Ignore decimal separator when precision = 0\n if (props.precision === 0 && potentialNewInputVal.endsWith(decimalSeparator.value)) {\n e.preventDefault()\n inputElement!.value = potentialNewNumber\n nextTick(() => inputText.value = potentialNewNumber)\n }\n }\n\n async function onKeydown (e: KeyboardEvent) {\n if (\n ['Enter', 'ArrowLeft', 'ArrowRight', 'Backspace', 'Delete', 'Tab'].includes(e.key) ||\n e.ctrlKey\n ) return\n\n if (['ArrowDown', 'ArrowUp'].includes(e.key)) {\n e.preventDefault()\n e.stopPropagation()\n clampModel()\n // _model is controlled, so need to wait until props['modelValue'] is updated\n await nextTick()\n if (e.key === 'ArrowDown') {\n toggleUpDown(false)\n } else {\n toggleUpDown()\n }\n }\n }\n\n function onControlClick (e: MouseEvent) {\n e.stopPropagation()\n }\n\n function onControlMouseup (e: PointerEvent) {\n const el = e.currentTarget as HTMLElement\n el?.releasePointerCapture(e.pointerId)\n e.preventDefault()\n holdStop()\n }\n\n function onUpControlMousedown (e: PointerEvent) {\n const el = e.currentTarget as HTMLElement\n el?.setPointerCapture(e.pointerId)\n e.preventDefault()\n e.stopPropagation()\n holdStart('up')\n }\n\n function onDownControlMousedown (e: PointerEvent) {\n const el = e.currentTarget as HTMLElement\n el?.setPointerCapture(e.pointerId)\n e.preventDefault()\n e.stopPropagation()\n holdStart('down')\n }\n\n function clampModel () {\n if (controlsDisabled.value) return\n if (!vTextFieldRef.value) return\n const actualText = vTextFieldRef.value.value\n const parsedValue = Number(actualText.replace(decimalSeparator.value, '.'))\n if (actualText && !isNaN(parsedValue)) {\n inputText.value = correctPrecision(clamp(parsedValue, props.min, props.max))\n } else {\n inputText.value = null\n }\n }\n\n function formatInputValue () {\n if (controlsDisabled.value) return\n inputText.value = model.value !== null && !isNaN(model.value)\n ? correctPrecision(model.value, props.precision, false)\n : null\n }\n\n function trimDecimalZeros () {\n if (controlsDisabled.value) return\n if (model.value === null || isNaN(model.value)) {\n inputText.value = null\n return\n }\n inputText.value = model.value.toString()\n .replace('.', decimalSeparator.value)\n }\n\n function onFocus () {\n trimDecimalZeros()\n }\n\n function onBlur () {\n clampModel()\n }\n\n useRender(() => {\n const { modelValue: _, type, ...textFieldProps } = VTextField.filterProps(props)\n\n function incrementControlNode () {\n return !slots.increment ? (\n \n ) : (\n \n { slots.increment(incrementSlotProps) }\n \n )\n }\n\n function decrementControlNode () {\n return !slots.decrement ? (\n \n ) : (\n \n { slots.decrement(decrementSlotProps) }\n \n )\n }\n\n function controlNode () {\n return (\n
\n { decrementControlNode() }\n\n \n\n { incrementControlNode() }\n
\n )\n }\n\n function dividerNode () {\n return !props.hideInput && !props.inset ? : undefined\n }\n\n const appendInnerControl =\n controlVariant.value === 'split'\n ? (\n
\n \n\n { incrementControlNode() }\n
\n ) : (props.reverse || controlVariant.value === 'hidden'\n ? undefined\n : <>{ dividerNode() }{ controlNode() })\n\n const hasAppendInner = slots['append-inner'] || appendInnerControl\n\n const prependInnerControl =\n controlVariant.value === 'split'\n ? (\n
\n { decrementControlNode() }\n\n \n
\n ) : (props.reverse && controlVariant.value !== 'hidden'\n ? <>{ controlNode() }{ dividerNode() }\n : undefined)\n\n const hasPrependInner = slots['prepend-inner'] || prependInnerControl\n\n return (\n \n {{\n ...slots,\n 'append-inner': hasAppendInner ? (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { appendInnerControl }\n \n ) : undefined,\n 'prepend-inner': hasPrependInner ? (...args) => (\n <>\n { prependInnerControl }\n { slots['prepend-inner']?.(...args) }\n \n ) : undefined,\n }}\n
\n )\n })\n\n return forwardRefs({}, vTextFieldRef)\n },\n})\n\nexport type VNumberInput = InstanceType\n", "// Utilities\nimport { onScopeDispose } from 'vue'\n\nconst HOLD_REPEAT = 50\nconst HOLD_DELAY = 500\n\nexport function useHold ({ toggleUpDown }: { toggleUpDown: (increment: boolean) => void }) {\n let timeout = -1\n let interval = -1\n\n onScopeDispose(holdStop)\n\n function holdStart (value: 'up' | 'down') {\n holdStop()\n tick(value)\n window.addEventListener('pointerup', holdStop)\n document.addEventListener('blur', holdStop)\n timeout = window.setTimeout(() => {\n interval = window.setInterval(() => tick(value), HOLD_REPEAT)\n }, HOLD_DELAY)\n }\n\n function holdStop () {\n window.clearTimeout(timeout)\n window.clearInterval(interval)\n window.removeEventListener('pointerup', holdStop)\n document.removeEventListener('blur', holdStop)\n }\n\n onScopeDispose(holdStop)\n\n function tick (value: 'up' | 'down') {\n toggleUpDown(value === 'up')\n }\n\n return { holdStart, holdStop }\n}\n", "// Styles\nimport './VOtpInput.sass'\n\n// Components\nimport { makeVFieldProps, VField } from '@/components/VField/VField'\nimport { VOverlay } from '@/components/VOverlay/VOverlay'\nimport { VProgressCircular } from '@/components/VProgressCircular/VProgressCircular'\n\n// Composables\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeFocusProps, useFocus } from '@/composables/focus'\nimport { useIntersectionObserver } from '@/composables/intersectionObserver'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Utilities\nimport { computed, effectScope, nextTick, ref, toRef, watch, watchEffect } from 'vue'\nimport { filterInputAttrs, focusChild, genericComponent, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport type VOtpInputSlots = {\n default: never\n loader: never\n}\n\nexport const makeVOtpInputProps = propsFactory({\n autofocus: Boolean,\n divider: String,\n focusAll: Boolean,\n label: {\n type: String,\n default: '$vuetify.input.otp',\n },\n length: {\n type: [Number, String],\n default: 6,\n },\n modelValue: {\n type: [Number, String],\n default: undefined,\n },\n placeholder: String,\n type: {\n type: String as PropType<'text' | 'password' | 'number'>,\n default: 'number',\n },\n\n ...makeDimensionProps(),\n ...makeFocusProps(),\n ...pick(makeVFieldProps({\n variant: 'outlined' as const,\n }), [\n 'baseColor',\n 'bgColor',\n 'class',\n 'color',\n 'disabled',\n 'error',\n 'loading',\n 'rounded',\n 'style',\n 'theme',\n 'variant',\n ]),\n}, 'VOtpInput')\n\nexport const VOtpInput = genericComponent()({\n name: 'VOtpInput',\n\n props: makeVOtpInputProps(),\n\n emits: {\n finish: (val: string) => true,\n 'update:focused': (val: boolean) => true,\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const { dimensionStyles } = useDimension(props)\n const { isFocused, focus, blur } = useFocus(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n '',\n val => val == null ? [] : String(val).split(''),\n val => val.join('')\n )\n const { t } = useLocale()\n\n const length = computed(() => Number(props.length))\n const fields = computed(() => Array(length.value).fill(0))\n const focusIndex = ref(-1)\n const contentRef = ref()\n const inputRef = ref([])\n const current = computed(() => inputRef.value[focusIndex.value])\n let _isComposing = false\n\n useToggleScope(() => props.autofocus, () => {\n const intersectScope = effectScope()\n intersectScope.run(() => {\n const { intersectionRef, isIntersecting } = useIntersectionObserver()\n watchEffect(() => {\n intersectionRef.value = inputRef.value[0]\n })\n watch(isIntersecting, v => {\n if (!v) return\n intersectionRef.value?.focus()\n intersectScope.stop()\n })\n })\n })\n\n function onInput () {\n // The maxlength attribute doesn't work for the number type input, so the text type is used.\n // The following logic simulates the behavior of a number input.\n if (isValidNumber(current.value.value)) {\n current.value.value = ''\n return\n }\n\n if (_isComposing) return\n\n const array = model.value.slice()\n const value = current.value.value\n\n array[focusIndex.value] = value\n\n let target: any = null\n\n if (focusIndex.value > model.value.length) {\n target = model.value.length + 1\n } else if (focusIndex.value + 1 !== length.value) {\n target = 'next'\n }\n\n model.value = array\n\n if (target) focusChild(contentRef.value!, target)\n }\n\n function onCompositionend () {\n _isComposing = false\n onInput()\n }\n\n function onKeydown (e: KeyboardEvent) {\n const array = model.value.slice()\n const index = focusIndex.value\n let target: 'next' | 'prev' | 'first' | 'last' | number | null = null\n\n if (![\n 'ArrowLeft',\n 'ArrowRight',\n 'Backspace',\n 'Delete',\n ].includes(e.key)) return\n\n e.preventDefault()\n\n if (e.key === 'ArrowLeft') {\n target = 'prev'\n } else if (e.key === 'ArrowRight') {\n target = 'next'\n } else if (['Backspace', 'Delete'].includes(e.key)) {\n array[focusIndex.value] = ''\n\n model.value = array\n\n if (focusIndex.value > 0 && e.key === 'Backspace') {\n target = 'prev'\n } else {\n requestAnimationFrame(() => {\n inputRef.value[index]?.select()\n })\n }\n }\n\n requestAnimationFrame(() => {\n if (target != null) {\n focusChild(contentRef.value!, target)\n }\n })\n }\n\n function onPaste (index: number, e: ClipboardEvent) {\n e.preventDefault()\n e.stopPropagation()\n\n const clipboardText = e?.clipboardData?.getData('Text').trim().slice(0, length.value) ?? ''\n const finalIndex = clipboardText.length - 1 === -1 ? index : clipboardText.length - 1\n\n if (isValidNumber(clipboardText)) return\n\n model.value = clipboardText.split('')\n\n focusIndex.value = finalIndex\n }\n\n function reset () {\n model.value = []\n }\n\n function onFocus (e: FocusEvent, index: number) {\n focus()\n\n focusIndex.value = index\n }\n\n function onBlur () {\n blur()\n\n focusIndex.value = -1\n }\n\n function isValidNumber (value: string) {\n return props.type === 'number' && /[^0-9]/g.test(value)\n }\n\n provideDefaults({\n VField: {\n color: toRef(() => props.color),\n bgColor: toRef(() => props.color),\n baseColor: toRef(() => props.baseColor),\n disabled: toRef(() => props.disabled),\n error: toRef(() => props.error),\n variant: toRef(() => props.variant),\n rounded: toRef(() => props.rounded),\n },\n }, { scoped: true })\n\n watch(model, val => {\n if (val.length === length.value) {\n emit('finish', val.join(''))\n }\n }, { deep: true })\n\n watch(focusIndex, val => {\n if (val < 0) return\n\n nextTick(() => {\n inputRef.value[val]?.select()\n })\n })\n\n useRender(() => {\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n\n return (\n \n \n { fields.value.map((_, i) => (\n <>\n { props.divider && i !== 0 && (\n { props.divider }\n )}\n\n \n {{\n ...slots,\n loader: undefined,\n default: () => {\n return (\n inputRef.value[i] = val as HTMLInputElement }\n aria-label={ t(props.label, i + 1) }\n autofocus={ i === 0 && props.autofocus }\n autocomplete=\"one-time-code\"\n class={[\n 'v-otp-input__field',\n ]}\n disabled={ props.disabled }\n inputmode={ props.type === 'number' ? 'numeric' : 'text' }\n min={ props.type === 'number' ? 0 : undefined }\n maxlength={ i === 0 ? length.value : '1' }\n placeholder={ props.placeholder }\n type={ props.type === 'number' ? 'text' : props.type }\n value={ model.value[i] }\n onInput={ onInput }\n onFocus={ e => onFocus(e, i) }\n onBlur={ onBlur }\n onKeydown={ onKeydown }\n onCompositionstart={ () => _isComposing = true }\n onCompositionend={ onCompositionend }\n onPaste={ event => onPaste(i, event) }\n />\n )\n },\n }}\n \n \n ))}\n\n \n\n \n { slots.loader?.() ?? (\n \n )}\n \n\n { slots.default?.() }\n \n \n )\n })\n\n return {\n blur: () => {\n inputRef.value?.some(input => input.blur())\n },\n focus: () => {\n inputRef.value?.[0].focus()\n },\n reset,\n isFocused,\n }\n },\n})\n\nexport type VOtpInput = InstanceType\n", "// Styles\nimport './VParallax.sass'\n\n// Components\nimport { VImg } from '@/components/VImg'\n\n// Composables\nimport { useDisplay } from '@/composables'\nimport { makeComponentProps } from '@/composables/component'\nimport { useIntersectionObserver } from '@/composables/intersectionObserver'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, onBeforeUnmount, ref, watch, watchEffect } from 'vue'\nimport { clamp, genericComponent, getScrollParent, PREFERS_REDUCED_MOTION, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VImgSlots } from '@/components/VImg/VImg'\n\nfunction floor (val: number) {\n return Math.floor(Math.abs(val)) * Math.sign(val)\n}\n\nexport const makeVParallaxProps = propsFactory({\n scale: {\n type: [Number, String],\n default: 0.5,\n },\n\n ...makeComponentProps(),\n}, 'VParallax')\n\nexport const VParallax = genericComponent()({\n name: 'VParallax',\n\n props: makeVParallaxProps(),\n\n setup (props, { slots }) {\n const { intersectionRef, isIntersecting } = useIntersectionObserver()\n const { resizeRef, contentRect } = useResizeObserver()\n const { height: displayHeight } = useDisplay()\n\n const root = ref()\n\n watchEffect(() => {\n intersectionRef.value = resizeRef.value = root.value?.$el\n })\n\n let scrollParent: Element | Document\n watch(isIntersecting, val => {\n if (val) {\n scrollParent = getScrollParent(intersectionRef.value)\n scrollParent = scrollParent === document.scrollingElement ? document : scrollParent\n scrollParent.addEventListener('scroll', onScroll, { passive: true })\n onScroll()\n } else {\n scrollParent.removeEventListener('scroll', onScroll)\n }\n })\n\n onBeforeUnmount(() => {\n scrollParent?.removeEventListener('scroll', onScroll)\n })\n\n watch(displayHeight, onScroll)\n watch(() => contentRect.value?.height, onScroll)\n\n const scale = computed(() => {\n return 1 - clamp(Number(props.scale))\n })\n\n let frame = -1\n function onScroll () {\n if (!isIntersecting.value || PREFERS_REDUCED_MOTION()) return\n\n cancelAnimationFrame(frame)\n frame = requestAnimationFrame(() => {\n const el: HTMLElement | null = (root.value?.$el as Element).querySelector('.v-img__img')\n if (!el) return\n\n const scrollHeight = scrollParent instanceof Document ? document.documentElement.clientHeight : scrollParent.clientHeight\n const scrollPos = scrollParent instanceof Document ? window.scrollY : scrollParent.scrollTop\n const top = intersectionRef.value!.getBoundingClientRect().top + scrollPos\n const height = contentRect.value!.height\n\n const center = top + (height - scrollHeight) / 2\n const translate = floor((scrollPos - center) * scale.value)\n const sizeScale = Math.max(1, (scale.value * (scrollHeight - height) + height) / height)\n\n el.style.setProperty('transform', `translateY(${translate}px) scale(${sizeScale})`)\n })\n }\n\n useRender(() => (\n \n ))\n\n return {}\n },\n})\n\nexport type VParallax = InstanceType\n", "// Components\nimport { makeVSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '@/components/VSelectionControl/VSelectionControl'\n\nexport const makeVRadioProps = propsFactory({\n ...makeVSelectionControlProps({\n falseIcon: '$radioOff',\n trueIcon: '$radioOn',\n }),\n}, 'VRadio')\n\nexport const VRadio = genericComponent()({\n name: 'VRadio',\n\n props: makeVRadioProps(),\n\n setup (props, { slots }) {\n useRender(() => {\n const controlProps = VSelectionControl.filterProps(props)\n\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VRadio = InstanceType\n", "// Styles\nimport './VRadioGroup.sass'\n\n// Components\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VLabel } from '@/components/VLabel'\nimport { VSelectionControl } from '@/components/VSelectionControl'\nimport { makeSelectionControlGroupProps, VSelectionControlGroup } from '@/components/VSelectionControlGroup/VSelectionControlGroup'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { IconValue } from '@/composables/icons'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, useId } from 'vue'\nimport { filterInputAttrs, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { GenericProps } from '@/util'\n\nexport type VRadioGroupSlots = Omit & {\n default: never\n label: {\n label: string | undefined\n props: Record\n }\n}\n\nexport const makeVRadioGroupProps = propsFactory({\n height: {\n type: [Number, String],\n default: 'auto',\n },\n\n ...makeVInputProps(),\n ...omit(makeSelectionControlGroupProps(), ['multiple']),\n\n trueIcon: {\n type: IconValue,\n default: '$radioOn',\n },\n falseIcon: {\n type: IconValue,\n default: '$radioOff',\n },\n type: {\n type: String,\n default: 'radio',\n },\n}, 'VRadioGroup')\n\nexport const VRadioGroup = genericComponent(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VRadioGroupSlots,\n) => GenericProps>()({\n name: 'VRadioGroup',\n\n inheritAttrs: false,\n\n props: makeVRadioGroupProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const uid = useId()\n const id = computed(() => props.id || `radio-group-${uid}`)\n const model = useProxiedModel(props, 'modelValue')\n const inputRef = ref()\n\n useRender(() => {\n const [rootAttrs, controlAttrs] = filterInputAttrs(attrs)\n const inputProps = VInput.filterProps(props)\n const controlProps = VSelectionControl.filterProps(props)\n const label = slots.label\n ? slots.label({\n label: props.label,\n props: { for: id.value },\n })\n : props.label\n\n return (\n \n {{\n ...slots,\n default: ({\n id,\n messagesId,\n isDisabled,\n isReadonly,\n }) => (\n <>\n { label && (\n \n { label }\n \n )}\n\n \n \n ),\n }}\n \n )\n })\n\n return forwardRefs({}, inputRef)\n },\n})\n\nexport type VRadioGroup = InstanceType\n", "// Styles\nimport '../VSlider/VSlider.sass'\n\n// Components\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VLabel } from '@/components/VLabel'\nimport { getOffset, makeSliderProps, useSlider, useSteps } from '@/components/VSlider/slider'\nimport { VSliderThumb } from '@/components/VSlider/VSliderThumb'\nimport { VSliderTrack } from '@/components/VSlider/VSliderTrack'\n\n// Composables\nimport { makeFocusProps, useFocus } from '@/composables/focus'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useRtl } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { filterInputAttrs, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType, WritableComputedRef } from 'vue'\nimport type { VSliderSlots } from '../VSlider/VSlider'\n\nexport const makeVRangeSliderProps = propsFactory({\n ...makeFocusProps(),\n ...makeVInputProps(),\n ...makeSliderProps(),\n\n strict: Boolean,\n modelValue: {\n type: Array as PropType,\n default: () => ([0, 0]),\n },\n}, 'VRangeSlider')\n\nexport const VRangeSlider = genericComponent()({\n name: 'VRangeSlider',\n\n inheritAttrs: false,\n\n props: makeVRangeSliderProps(),\n\n emits: {\n 'update:focused': (value: boolean) => true,\n 'update:modelValue': (value: [number, number]) => true,\n end: (value: [number, number]) => true,\n start: (value: [number, number]) => true,\n },\n\n setup (props, { slots, emit, attrs }) {\n const startThumbRef = ref()\n const stopThumbRef = ref()\n const inputRef = ref()\n const { rtlClasses } = useRtl()\n\n function getActiveThumb (e: MouseEvent | TouchEvent) {\n if (!startThumbRef.value || !stopThumbRef.value) return\n\n const startOffset = getOffset(e, startThumbRef.value.$el, props.direction)\n const stopOffset = getOffset(e, stopThumbRef.value.$el, props.direction)\n\n const a = Math.abs(startOffset)\n const b = Math.abs(stopOffset)\n\n return (a < b || (a === b && startOffset < 0)) ? startThumbRef.value.$el : stopThumbRef.value.$el\n }\n\n const steps = useSteps(props)\n\n const model = useProxiedModel(\n props,\n 'modelValue',\n undefined,\n arr => {\n if (!arr?.length) return [0, 0]\n\n return arr.map(value => steps.roundValue(value))\n },\n ) as WritableComputedRef<[number, number]> & { readonly externalValue: number[] }\n\n const {\n activeThumbRef,\n hasLabels,\n max,\n min,\n mousePressed,\n onSliderMousedown,\n onSliderTouchstart,\n position,\n trackContainerRef,\n disabled,\n readonly,\n } = useSlider({\n props,\n steps,\n onSliderStart: () => {\n if (disabled.value || readonly.value) {\n activeThumbRef.value?.blur()\n return\n }\n emit('start', model.value)\n },\n onSliderEnd: ({ value }) => {\n if (disabled.value || readonly.value) {\n activeThumbRef.value?.blur()\n } else {\n const newValue: [number, number] =\n activeThumbRef.value === startThumbRef.value?.$el\n ? [value, model.value[1]]\n : [model.value[0], value]\n\n if (!props.strict && newValue[0] < newValue[1]) {\n model.value = newValue\n }\n }\n\n emit('end', model.value)\n },\n onSliderMove: ({ value }) => {\n const [start, stop] = model.value\n\n if (disabled.value || readonly.value) {\n activeThumbRef.value?.blur()\n return\n }\n\n if (!props.strict && start === stop && start !== min.value) {\n activeThumbRef.value =\n value > start ? stopThumbRef.value?.$el : startThumbRef.value?.$el\n activeThumbRef.value?.focus()\n }\n\n if (activeThumbRef.value === startThumbRef.value?.$el) {\n model.value = [Math.min(value, stop), stop]\n } else {\n model.value = [start, Math.max(start, value)]\n }\n },\n getActiveThumb,\n })\n\n const { isFocused, focus, blur } = useFocus(props)\n const trackStart = computed(() => position(model.value[0]))\n const trackStop = computed(() => position(model.value[1]))\n\n useRender(() => {\n const inputProps = VInput.filterProps(props)\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n const hasPrepend = !!(props.label || slots.label || slots.prepend)\n\n return (\n \n {{\n ...slots,\n prepend: hasPrepend ? slotProps => (\n <>\n { slots.label?.(slotProps) ?? (\n props.label\n ? (\n \n ) : undefined\n )}\n\n { slots.prepend?.(slotProps) }\n \n ) : undefined,\n default: ({ id, messagesId }) => (\n \n \n\n \n\n \n {{ 'tick-label': slots['tick-label'] }}\n \n\n (model.value = [v, model.value[1]]) }\n onFocus={ (e: FocusEvent) => {\n focus()\n activeThumbRef.value = startThumbRef.value?.$el\n\n // Make sure second thumb is focused if\n // the thumbs are on top of each other\n // and they are both at minimum value\n // but only if focused from outside.\n if (\n max.value !== min.value &&\n model.value[0] === model.value[1] &&\n model.value[1] === min.value &&\n e.relatedTarget !== stopThumbRef.value?.$el\n ) {\n startThumbRef.value?.$el.blur()\n stopThumbRef.value?.$el.focus()\n }\n }}\n onBlur={ () => {\n blur()\n activeThumbRef.value = undefined\n }}\n min={ min.value }\n max={ model.value[1] }\n position={ trackStart.value }\n ripple={ props.ripple }\n { ...inputAttrs }\n >\n {{ 'thumb-label': slots['thumb-label'] }}\n \n\n (model.value = [model.value[0], v]) }\n onFocus={ (e: FocusEvent) => {\n focus()\n activeThumbRef.value = stopThumbRef.value?.$el\n\n // Make sure first thumb is focused if\n // the thumbs are on top of each other\n // and they are both at maximum value\n // but only if focused from outside.\n if (\n max.value !== min.value &&\n model.value[0] === model.value[1] &&\n model.value[0] === max.value &&\n e.relatedTarget !== startThumbRef.value?.$el\n ) {\n stopThumbRef.value?.$el.blur()\n startThumbRef.value?.$el.focus()\n }\n }}\n onBlur={ () => {\n blur()\n activeThumbRef.value = undefined\n }}\n min={ model.value[0] }\n max={ max.value }\n position={ trackStop.value }\n ripple={ props.ripple }\n { ...inputAttrs }\n >\n {{ 'thumb-label': slots['thumb-label'] }}\n \n \n ),\n }}\n \n )\n })\n\n return forwardRefs({\n focus: () => startThumbRef.value?.$el.focus(),\n }, inputRef)\n },\n})\n\nexport type VRangeSlider = InstanceType\n", "// Styles\nimport './VRating.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps } from '@/composables/density'\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeSizeProps } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, nextTick, ref, shallowRef, useId } from 'vue'\nimport { clamp, createRange, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { Prop } from 'vue'\nimport type { Variant } from '@/composables/variant'\n\ntype VRatingItemSlot = {\n value: number\n index: number\n isFilled: boolean\n isHovered: boolean\n icon: IconValue\n color?: string\n props: Record\n rating: number\n}\n\ntype VRatingItemLabelSlot = {\n value: number\n index: number\n label?: string\n}\n\ntype VRatingSlots = {\n item: VRatingItemSlot\n 'item-label': VRatingItemLabelSlot\n}\n\nexport const makeVRatingProps = propsFactory({\n name: String,\n itemAriaLabel: {\n type: String,\n default: '$vuetify.rating.ariaLabel.item',\n },\n activeColor: String,\n color: String,\n clearable: Boolean,\n disabled: Boolean,\n emptyIcon: {\n type: IconValue,\n default: '$ratingEmpty',\n },\n fullIcon: {\n type: IconValue,\n default: '$ratingFull',\n },\n halfIncrements: Boolean,\n hover: Boolean,\n length: {\n type: [Number, String],\n default: 5,\n },\n readonly: Boolean,\n modelValue: {\n type: [Number, String],\n default: 0,\n },\n itemLabels: Array as Prop,\n itemLabelPosition: {\n type: String,\n default: 'top',\n validator: (v: any) => ['top', 'bottom'].includes(v),\n },\n ripple: Boolean,\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeSizeProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VRating')\n\nexport const VRating = genericComponent()({\n name: 'VRating',\n\n props: makeVRatingProps(),\n\n emits: {\n 'update:modelValue': (value: number | string) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const { themeClasses } = provideTheme(props)\n const root = ref()\n const rating = useProxiedModel(props, 'modelValue')\n const normalizedValue = computed(() => clamp(parseFloat(rating.value), 0, Number(props.length)))\n\n const range = computed(() => createRange(Number(props.length), 1))\n const increments = computed(() => range.value.flatMap(v => props.halfIncrements ? [v - 0.5, v] : [v]))\n const hoverIndex = shallowRef(-1)\n\n const itemState = computed(() => increments.value.map(value => {\n const isHovering = props.hover && hoverIndex.value > -1\n const isFilled = normalizedValue.value >= value\n const isHovered = hoverIndex.value >= value\n const isFullIcon = isHovering ? isHovered : isFilled\n const icon = isFullIcon ? props.fullIcon : props.emptyIcon\n const activeColor = props.activeColor ?? props.color\n const color = (isFilled || isHovered) ? activeColor : props.color\n\n return { isFilled, isHovered, icon, color }\n }))\n\n const eventState = computed(() => [0, ...increments.value].map(value => {\n function onMouseenter () {\n hoverIndex.value = value\n }\n\n function onMouseleave () {\n hoverIndex.value = -1\n }\n\n function onClick () {\n if (props.disabled || props.readonly) return\n rating.value = normalizedValue.value === value && props.clearable ? 0 : value\n }\n\n return {\n onMouseenter: props.hover ? onMouseenter : undefined,\n onMouseleave: props.hover ? onMouseleave : undefined,\n onClick,\n }\n }))\n\n const currentItemIndex = computed(() => {\n return props.halfIncrements\n ? 1 + Math.floor(Math.max(0, Number(rating.value ?? 0) - 0.5)) * 2\n : Math.floor(Math.max(0, Number(rating.value ?? 0) - 1))\n })\n\n function moveCurrentFocus () {\n const currentItem = root.value?.querySelector('[tabindex=\"0\"]') as HTMLElement\n currentItem?.focus()\n }\n\n function onItemKeydown (event: KeyboardEvent) {\n if (props.disabled || props.readonly) return\n if (event.ctrlKey || event.altKey) return\n\n const step = props.halfIncrements ? 0.5 : 1\n\n if (event.key === 'ArrowRight') {\n const newValue = Math.min(Number(props.length), Number(rating.value ?? 0) + step)\n rating.value = newValue\n nextTick(() => moveCurrentFocus())\n }\n if (event.key === 'ArrowLeft') {\n const newValue = Math.max(0, Number(rating.value ?? 0) - step)\n rating.value = newValue\n nextTick(() => moveCurrentFocus())\n }\n }\n\n const uid = useId()\n const name = computed(() => props.name ?? `v-rating-${uid}`)\n\n function VRatingItem ({ value, index, showStar = true }: { value: number, index: number, showStar?: boolean }) {\n const { onMouseenter, onMouseleave, onClick } = eventState.value[index + 1]\n const id = `${name.value}-${String(value).replace('.', '-')}`\n const isFocusable = index === currentItemIndex.value\n const btnProps = {\n color: itemState.value[index]?.color,\n density: props.density,\n disabled: props.disabled,\n icon: itemState.value[index]?.icon,\n ripple: props.ripple,\n size: props.size,\n variant: 'plain' as Variant,\n tabindex: isFocusable ? 0 : -1,\n onKeydown: onItemKeydown,\n }\n\n return (\n <>\n 0,\n 'v-rating__item--full': props.halfIncrements && value % 1 === 0,\n }}\n onMouseenter={ onMouseenter }\n onMouseleave={ onMouseleave }\n onClick={ onClick }\n >\n { t(props.itemAriaLabel, value, props.length) }\n {\n !showStar ? undefined\n : slots.item ? slots.item({\n ...itemState.value[index],\n props: btnProps,\n value,\n index,\n rating: normalizedValue.value,\n })\n : (\n \n )\n }\n \n\n \n \n )\n }\n\n function createLabel (labelProps: { value: number, index: number, label?: string }) {\n if (slots['item-label']) return slots['item-label'](labelProps)\n\n if (labelProps.label) return { labelProps.label }\n\n return  \n }\n\n useRender(() => {\n const hasLabels = !!props.itemLabels?.length || slots['item-label']\n\n return (\n \n \n\n { range.value.map((value, i) => (\n
\n {\n hasLabels && props.itemLabelPosition === 'top'\n ? createLabel({ value, index: i, label: props.itemLabels?.[i] })\n : undefined\n }\n
\n { props.halfIncrements ? (\n <>\n \n \n \n ) : (\n \n )}\n
\n {\n hasLabels && props.itemLabelPosition === 'bottom'\n ? createLabel({ value, index: i, label: props.itemLabels?.[i] })\n : undefined\n }\n
\n ))}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VRating = InstanceType\n", "// Styles\nimport './VSkeletonLoader.sass'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { useLocale } from '@/composables/locale'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType, VNode } from 'vue'\n\ntype VSkeletonBone = T | VSkeletonBone[]\n\nexport type VSkeletonBones = VSkeletonBone\nexport type VSkeletonLoaderType = keyof typeof rootTypes\n\nexport const rootTypes = {\n actions: 'button@2',\n article: 'heading, paragraph',\n avatar: 'avatar',\n button: 'button',\n card: 'image, heading',\n 'card-avatar': 'image, list-item-avatar',\n chip: 'chip',\n 'date-picker': 'list-item, heading, divider, date-picker-options, date-picker-days, actions',\n 'date-picker-options': 'text, avatar@2',\n 'date-picker-days': 'avatar@28',\n divider: 'divider',\n heading: 'heading',\n image: 'image',\n 'list-item': 'text',\n 'list-item-avatar': 'avatar, text',\n 'list-item-two-line': 'sentences',\n 'list-item-avatar-two-line': 'avatar, sentences',\n 'list-item-three-line': 'paragraph',\n 'list-item-avatar-three-line': 'avatar, paragraph',\n ossein: 'ossein',\n paragraph: 'text@3',\n sentences: 'text@2',\n subtitle: 'text',\n table: 'table-heading, table-thead, table-tbody, table-tfoot',\n 'table-heading': 'chip, text',\n 'table-thead': 'heading@6',\n 'table-tbody': 'table-row-divider@6',\n 'table-row-divider': 'table-row, divider',\n 'table-row': 'text@6',\n 'table-tfoot': 'text@2, avatar@2',\n text: 'text',\n} as const\n\nfunction genBone (type: string, children: VSkeletonBones = []) {\n return (\n \n { children }\n \n )\n}\n\nfunction genBones (bone: string) {\n // e.g. 'text@3'\n const [type, length] = bone.split('@') as [VSkeletonLoaderType, number]\n\n // Generate a length array based upon\n // value after @ in the bone string\n return Array.from({ length }).map(() => genStructure(type))\n}\n\nfunction genStructure (type?: string): VSkeletonBones {\n let children: VSkeletonBones = []\n\n if (!type) return children\n\n // TODO: figure out a better way to type this\n const bone = (rootTypes as Record)[type]\n\n // End of recursion, do nothing\n /* eslint-disable-next-line no-empty, brace-style */\n if (type === bone) {}\n // Array of values - e.g. 'heading, paragraph, text@2'\n else if (type.includes(',')) return mapBones(type)\n // Array of values - e.g. 'paragraph@4'\n else if (type.includes('@')) return genBones(type)\n // Array of values - e.g. 'card@2'\n else if (bone.includes(',')) children = mapBones(bone)\n // Array of values - e.g. 'list-item@2'\n else if (bone.includes('@')) children = genBones(bone)\n // Single value - e.g. 'card-heading'\n else if (bone) children.push(genStructure(bone))\n\n return [genBone(type, children)]\n}\n\nfunction mapBones (bones: string) {\n // Remove spaces and return array of structures\n return bones.replace(/\\s/g, '').split(',').map(genStructure)\n}\n\nexport const makeVSkeletonLoaderProps = propsFactory({\n boilerplate: Boolean,\n color: String,\n loading: Boolean,\n loadingText: {\n type: String,\n default: '$vuetify.loading',\n },\n type: {\n type: [String, Array] as PropType<\n | VSkeletonLoaderType | (string & {})\n | ReadonlyArray\n >,\n default: 'ossein',\n },\n\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeThemeProps(),\n}, 'VSkeletonLoader')\n\nexport const VSkeletonLoader = genericComponent()({\n name: 'VSkeletonLoader',\n\n inheritAttrs: false,\n\n props: makeVSkeletonLoaderProps(),\n\n setup (props, { attrs, slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { themeClasses } = provideTheme(props)\n const { t } = useLocale()\n\n const items = computed(() => genStructure(wrapInArray(props.type).join(',')))\n\n useRender(() => {\n const isLoading = !slots.default || props.loading\n const loadingProps = (props.boilerplate || !isLoading) ? {} : {\n ariaLive: 'polite',\n ariaLabel: t(props.loadingText),\n role: 'alert',\n }\n\n return isLoading\n ? (\n \n { items.value }\n \n )\n : <>{ slots.default?.() }\n })\n\n return {}\n },\n})\n\nexport type VSkeletonLoader = InstanceType\n", "// Composables\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\n\n// Utilities\nimport { VSlideGroupSymbol } from './VSlideGroup'\nimport { genericComponent } from '@/util'\n\n// Types\nimport type { UnwrapRef } from 'vue'\nimport type { GroupItemProvide } from '@/composables/group'\n\ntype VSlideGroupItemSlots = {\n default: {\n isSelected: UnwrapRef\n select: GroupItemProvide['select']\n toggle: GroupItemProvide['toggle']\n selectedClass: UnwrapRef\n }\n}\n\nexport const VSlideGroupItem = genericComponent()({\n name: 'VSlideGroupItem',\n\n props: makeGroupItemProps(),\n\n emits: {\n 'group:selected': (val: { value: boolean }) => true,\n },\n\n setup (props, { slots }) {\n const slideGroupItem = useGroupItem(props, VSlideGroupSymbol)\n\n return () => slots.default?.({\n isSelected: slideGroupItem.isSelected.value,\n select: slideGroupItem.select,\n toggle: slideGroupItem.toggle,\n selectedClass: slideGroupItem.selectedClass.value,\n })\n },\n})\n\nexport type VSlideGroupItem = InstanceType\n", "// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { makeVSnackbarProps, VSnackbar } from '@/components/VSnackbar/VSnackbar'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed, nextTick, shallowRef, watch } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType, VNodeProps } from 'vue'\nimport type { GenericProps } from '@/util'\n\nexport type VSnackbarQueueSlots = {\n default: { item: T }\n text: { item: T }\n actions: {\n item: T\n props: {\n onClick: () => void\n }\n }\n}\n\nexport type SnackbarMessage =\n | string\n | (Omit<\n VSnackbar['$props'],\n | 'modelValue'\n | 'onUpdate:modelValue'\n | 'activator'\n | 'activatorProps'\n | 'closeDelay'\n | 'openDelay'\n | 'openOnClick'\n | 'openOnFocus'\n | 'openOnHover'\n | 'style'\n | '$children'\n | 'v-slots'\n | `v-slot:${string}`\n | keyof VNodeProps\n > & { style?: any })\n\nexport const makeVSnackbarQueueProps = propsFactory({\n // TODO: Port this to Snackbar on dev\n closable: [Boolean, String],\n closeText: {\n type: String,\n default: '$vuetify.dismiss',\n },\n modelValue: {\n type: Array as PropType,\n default: () => [],\n },\n\n ...omit(makeVSnackbarProps(), ['modelValue']),\n}, 'VSnackbarQueue')\n\nexport const VSnackbarQueue = genericComponent (\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (val: T) => void\n },\n slots: VSnackbarQueueSlots,\n) => GenericProps>()({\n name: 'VSnackbarQueue',\n\n props: makeVSnackbarQueueProps(),\n\n emits: {\n 'update:modelValue': (val: SnackbarMessage[]) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n\n const isActive = shallowRef(false)\n const isVisible = shallowRef(false)\n const current = shallowRef>()\n\n watch(() => props.modelValue.length, (val, oldVal) => {\n if (!isVisible.value && val > oldVal) {\n showNext()\n }\n })\n watch(isActive, val => {\n if (val) isVisible.value = true\n })\n\n function onAfterLeave () {\n if (props.modelValue.length) {\n showNext()\n } else {\n current.value = undefined\n isVisible.value = false\n }\n }\n function showNext () {\n const [next, ...rest] = props.modelValue\n emit('update:modelValue', rest)\n current.value = typeof next === 'string' ? { text: next } : next\n nextTick(() => {\n isActive.value = true\n })\n }\n function onClickClose () {\n isActive.value = false\n }\n\n const btnProps = computed(() => ({\n color: typeof props.closable === 'string' ? props.closable : undefined,\n text: t(props.closeText),\n }))\n\n useRender(() => {\n const hasActions = !!(props.closable || slots.actions)\n const { modelValue: _, ...snackbarProps } = VSnackbar.filterProps(props as any)\n\n return (\n <>\n { isVisible.value && !!current.value && (\n slots.default\n ? (\n \n { slots.default({ item: current.value }) }\n \n ) : (\n \n {{\n text: slots.text ? () => slots.text?.({ item: current.value! }) : undefined,\n actions: hasActions ? () => (\n <>\n { !slots.actions ? (\n \n ) : (\n \n { slots.actions({\n item: current.value!,\n props: { onClick: onClickClose },\n })}\n \n )}\n \n ) : undefined,\n }}\n \n )\n )}\n \n )\n })\n },\n})\n\nexport type VSnackbarQueue = InstanceType\n", "// Utilities\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type SparklineItem = string | number | { value: number }\n\nexport const makeLineProps = propsFactory({\n autoDraw: Boolean,\n autoDrawDuration: [Number, String],\n autoDrawEasing: {\n type: String,\n default: 'ease',\n },\n color: String,\n gradient: {\n type: Array as PropType,\n default: () => ([]),\n },\n gradientDirection: {\n type: String as PropType<'top' | 'bottom' | 'left' | 'right'>,\n validator: (val: string) => ['top', 'bottom', 'left', 'right'].includes(val),\n default: 'top',\n },\n height: {\n type: [String, Number],\n default: 75,\n },\n labels: {\n type: Array as PropType,\n default: () => ([]),\n },\n labelSize: {\n type: [Number, String],\n default: 7,\n },\n lineWidth: {\n type: [String, Number],\n default: 4,\n },\n id: String,\n itemValue: {\n type: String,\n default: 'value',\n },\n modelValue: {\n type: Array as PropType,\n default: () => ([]),\n },\n min: [String, Number],\n max: [String, Number],\n padding: {\n type: [String, Number],\n default: 8,\n },\n showLabels: Boolean,\n smooth: [Boolean, String, Number],\n width: {\n type: [Number, String],\n default: 300,\n },\n}, 'Line')\n", "// Utilities\nimport { computed, useId } from 'vue'\nimport { makeLineProps } from './util/line'\nimport { genericComponent, getPropertyFromItem, PREFERS_REDUCED_MOTION, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VBarlineSlots = {\n default: void\n label: { index: number, value: string }\n}\n\nexport type SparklineItem = number | { value: number }\n\nexport type SparklineText = {\n x: number\n value: string\n}\n\nexport interface Boundary {\n minX: number\n minY: number\n maxX: number\n maxY: number\n}\n\nexport interface Bar {\n x: number\n y: number\n height: number\n value: number\n}\n\nexport const makeVBarlineProps = propsFactory({\n autoLineWidth: Boolean,\n\n ...makeLineProps(),\n}, 'VBarline')\n\nexport const VBarline = genericComponent()({\n name: 'VBarline',\n\n props: makeVBarlineProps(),\n\n setup (props, { slots }) {\n const uid = useId()\n const id = computed(() => props.id || `barline-${uid}`)\n const autoDrawDuration = computed(() => Number(props.autoDrawDuration) || 500)\n\n const hasLabels = computed(() => {\n return Boolean(\n props.showLabels ||\n props.labels.length > 0 ||\n !!slots?.label\n )\n })\n\n const lineWidth = computed(() => parseFloat(props.lineWidth) || 4)\n\n const totalWidth = computed(() => Math.max(props.modelValue.length * lineWidth.value, Number(props.width)))\n\n const boundary = computed(() => {\n return {\n minX: 0,\n maxX: totalWidth.value,\n minY: 0,\n maxY: parseInt(props.height, 10),\n }\n })\n const items = computed(() => props.modelValue.map(item => getPropertyFromItem(item, props.itemValue, item)))\n\n function genBars (\n values: number[],\n boundary: Boundary\n ): Bar[] {\n const { minX, maxX, minY, maxY } = boundary\n\n const totalValues = values.length\n let maxValue = props.max != null ? Number(props.max) : Math.max(...values)\n let minValue = props.min != null ? Number(props.min) : Math.min(...values)\n\n if (minValue > 0 && props.min == null) minValue = 0\n if (maxValue < 0 && props.max == null) maxValue = 0\n\n const gridX = maxX / (totalValues === 1 ? 2 : totalValues)\n const gridY = (maxY - minY) / ((maxValue - minValue) || 1)\n const horizonY = maxY - Math.abs(minValue * gridY)\n\n return values.map((value, index) => {\n const height = Math.abs(gridY * value)\n\n return {\n x: minX + index * gridX,\n y: horizonY - height +\n Number(value < 0) * height,\n height,\n value,\n }\n })\n }\n\n const parsedLabels = computed(() => {\n const labels = []\n const points = genBars(items.value, boundary.value)\n const len = points.length\n\n for (let i = 0; labels.length < len; i++) {\n const item = points[i]\n let value = props.labels[i]\n\n if (!value) {\n value = typeof item === 'object'\n ? item.value\n : item\n }\n\n labels.push({\n x: item.x,\n value: String(value),\n })\n }\n\n return labels\n })\n\n const bars = computed(() => genBars(items.value, boundary.value))\n const offsetX = computed(() => bars.value.length === 1\n ? (boundary.value.maxX - lineWidth.value) / 2\n : (Math.abs(bars.value[0].x - (bars.value[1].x)) - lineWidth.value) / 2\n )\n const smooth = computed(() => typeof props.smooth === 'boolean' ? (props.smooth ? 2 : 0) : Number(props.smooth))\n\n useRender(() => {\n const gradientData = !props.gradient.slice().length ? [''] : props.gradient.slice().reverse()\n return (\n \n \n \n {\n gradientData.map((color, index) => (\n \n ))\n }\n \n \n\n \n {\n bars.value.map(item => (\n \n { props.autoDraw && !PREFERS_REDUCED_MOTION() && (\n <>\n \n \n \n )}\n \n ))\n }\n \n\n { hasLabels.value && (\n \n {\n parsedLabels.value.map((item, i) => (\n \n { slots.label?.({ index: i, value: item.value }) ?? item.value }\n \n ))\n }\n \n )}\n\n \n \n \n \n )\n })\n },\n})\n\nexport type VBarline = InstanceType\n", "// @ts-nocheck\n/* eslint-disable */\n\nimport { Point } from '../VSparkline'\n// import { checkCollinear, getDistance, moveTo } from './math'\n\n/**\n * From https://github.com/unsplash/react-trend/blob/master/src/helpers/DOM.helpers.js#L18\n */\nexport function genPath (points: Point[], radius: number, fill = false, height = 75) {\n if (points.length === 0) return ''\n const start = points.shift()!\n const end = points[points.length - 1]\n\n return (\n (fill ? `M${start.x} ${height - start.x + 2} L${start.x} ${start.y}` : `M${start.x} ${start.y}`) +\n points\n .map((point, index) => {\n const next = points[index + 1]\n const prev = points[index - 1] || start\n const isCollinear = next && checkCollinear(next, point, prev)\n\n if (!next || isCollinear) {\n return `L${point.x} ${point.y}`\n }\n\n const threshold = Math.min(\n getDistance(prev, point),\n getDistance(next, point)\n )\n const isTooCloseForRadius = threshold / 2 < radius\n const radiusForPoint = isTooCloseForRadius ? threshold / 2 : radius\n\n const before = moveTo(prev, point, radiusForPoint)\n const after = moveTo(next, point, radiusForPoint)\n\n return `L${before.x} ${before.y}S${point.x} ${point.y} ${after.x} ${after.y}`\n })\n .join('') +\n (fill ? `L${end.x} ${height - start.x + 2} Z` : '')\n )\n}\n\nfunction int (value: string | number): number {\n return parseInt(value, 10)\n}\n\n/**\n * https://en.wikipedia.org/wiki/Collinearity\n * x=(x1+x2)/2\n * y=(y1+y2)/2\n */\nexport function checkCollinear (p0: Point, p1: Point, p2: Point): boolean {\n return int(p0.x + p2.x) === int(2 * p1.x) && int(p0.y + p2.y) === int(2 * p1.y)\n}\n\nexport function getDistance (p1: Point, p2: Point): number {\n return Math.sqrt(\n Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2)\n )\n}\n\nexport function moveTo (to: Point, from: Point, radius: number) {\n const vector = { x: to.x - from.x, y: to.y - from.y }\n const length = Math.sqrt((vector.x * vector.x) + (vector.y * vector.y))\n const unitVector = { x: vector.x / length, y: vector.y / length }\n\n return {\n x: from.x + unitVector.x * radius,\n y: from.y + unitVector.y * radius,\n }\n}\n", "// Utilities\nimport { computed, nextTick, ref, useId, watch } from 'vue'\nimport { makeLineProps } from './util/line'\nimport { genPath as _genPath } from './util/path'\nimport { genericComponent, getPropertyFromItem, PREFERS_REDUCED_MOTION, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VTrendlineSlots = {\n default: void\n label: { index: number, value: string }\n}\n\nexport type SparklineItem = number | { value: number }\n\nexport type SparklineText = {\n x: number\n value: string\n}\n\nexport interface Boundary {\n minX: number\n minY: number\n maxX: number\n maxY: number\n}\n\nexport interface Point {\n x: number\n y: number\n value: number\n}\n\nexport const makeVTrendlineProps = propsFactory({\n fill: Boolean,\n\n ...makeLineProps(),\n}, 'VTrendline')\n\nexport const VTrendline = genericComponent()({\n name: 'VTrendline',\n\n props: makeVTrendlineProps(),\n\n setup (props, { slots }) {\n const uid = useId()\n const id = computed(() => props.id || `trendline-${uid}`)\n const autoDrawDuration = computed(() => Number(props.autoDrawDuration) || (props.fill ? 500 : 2000))\n\n const lastLength = ref(0)\n const path = ref(null)\n\n function genPoints (\n values: number[],\n boundary: Boundary\n ): Point[] {\n const { minX, maxX, minY, maxY } = boundary\n\n if (values.length === 1) {\n values = [values[0], values[0]]\n }\n\n const totalValues = values.length\n const maxValue = props.max != null ? Number(props.max) : Math.max(...values)\n const minValue = props.min != null ? Number(props.min) : Math.min(...values)\n\n const gridX = (maxX - minX) / (totalValues - 1)\n const gridY = (maxY - minY) / ((maxValue - minValue) || 1)\n\n return values.map((value, index) => {\n return {\n x: minX + index * gridX,\n y: maxY - (value - minValue) * gridY,\n value,\n }\n })\n }\n const hasLabels = computed(() => {\n return Boolean(\n props.showLabels ||\n props.labels.length > 0 ||\n !!slots?.label\n )\n })\n const lineWidth = computed(() => {\n return parseFloat(props.lineWidth) || 4\n })\n const totalWidth = computed(() => Number(props.width))\n\n const boundary = computed(() => {\n const padding = Number(props.padding)\n\n return {\n minX: padding,\n maxX: totalWidth.value - padding,\n minY: padding,\n maxY: parseInt(props.height, 10) - padding,\n }\n })\n const items = computed(() => props.modelValue.map(item => getPropertyFromItem(item, props.itemValue, item)))\n const parsedLabels = computed(() => {\n const labels = []\n const points = genPoints(items.value, boundary.value)\n const len = points.length\n\n for (let i = 0; labels.length < len; i++) {\n const item = points[i]\n let value = props.labels[i]\n\n if (!value) {\n value = typeof item === 'object'\n ? item.value\n : item\n }\n\n labels.push({\n x: item.x,\n value: String(value),\n })\n }\n\n return labels\n })\n\n watch(() => props.modelValue, async () => {\n await nextTick()\n\n if (!props.autoDraw || !path.value || PREFERS_REDUCED_MOTION()) return\n\n const pathRef = path.value\n const length = pathRef.getTotalLength()\n\n if (!props.fill) {\n // Initial setup to \"hide\" the line by using the stroke dash array\n pathRef.style.strokeDasharray = `${length}`\n pathRef.style.strokeDashoffset = `${length}`\n\n // Force reflow to ensure the transition starts from this state\n pathRef.getBoundingClientRect()\n\n // Animate the stroke dash offset to \"draw\" the line\n pathRef.style.transition = `stroke-dashoffset ${autoDrawDuration.value}ms ${props.autoDrawEasing}`\n pathRef.style.strokeDashoffset = '0'\n } else {\n // Your existing logic for filled paths remains the same\n pathRef.style.transformOrigin = 'bottom center'\n pathRef.style.transition = 'none'\n pathRef.style.transform = `scaleY(0)`\n pathRef.getBoundingClientRect()\n pathRef.style.transition = `transform ${autoDrawDuration.value}ms ${props.autoDrawEasing}`\n pathRef.style.transform = `scaleY(1)`\n }\n\n lastLength.value = length\n }, { immediate: true })\n\n function genPath (fill: boolean) {\n const smoothValue = typeof props.smooth === 'boolean' ? (props.smooth ? 8 : 0) : Number(props.smooth)\n\n return _genPath(\n genPoints(items.value, boundary.value),\n smoothValue,\n fill,\n parseInt(props.height, 10)\n )\n }\n\n useRender(() => {\n const gradientData = !props.gradient.slice().length ? [''] : props.gradient.slice().reverse()\n\n return (\n \n \n \n {\n gradientData.map((color, index) => (\n \n ))\n }\n \n \n\n { hasLabels.value && (\n \n {\n parsedLabels.value.map((item, i) => (\n \n { slots.label?.({ index: i, value: item.value }) ?? item.value }\n \n ))\n }\n \n )}\n\n \n\n { props.fill && (\n \n )}\n \n )\n })\n },\n})\n\nexport type VTrendline = InstanceType\n", "// Components\nimport { makeVBarlineProps, VBarline } from './VBarline'\nimport { makeVTrendlineProps, VTrendline } from './VTrendline'\n\n// Composables\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\n\nexport const makeVSparklineProps = propsFactory({\n type: {\n type: String as PropType<'trend' | 'bar'>,\n default: 'trend',\n },\n\n ...makeVBarlineProps(),\n ...makeVTrendlineProps(),\n}, 'VSparkline')\n\nexport type VSparklineSlots = {\n default: void\n label: { index: number, value: string }\n}\n\nexport const VSparkline = genericComponent()({\n name: 'VSparkline',\n\n props: makeVSparklineProps(),\n\n setup (props, { slots }) {\n const { textColorClasses, textColorStyles } = useTextColor(() => props.color)\n const hasLabels = computed(() => {\n return Boolean(\n props.showLabels ||\n props.labels.length > 0 ||\n !!slots?.label\n )\n })\n const totalHeight = computed(() => {\n let height = parseInt(props.height, 10)\n\n if (hasLabels.value) height += parseInt(props.labelSize, 10) * 1.5\n\n return height\n })\n\n useRender(() => {\n const Tag = props.type === 'trend' ? VTrendline : VBarline\n const lineProps = props.type === 'trend' ? VTrendline.filterProps(props) : VBarline.filterProps(props)\n\n return (\n \n )\n })\n },\n})\n\nexport type VSparkline = InstanceType\n", "// Styles\nimport './VSpeedDial.sass'\n\n// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { makeVMenuProps, VMenu } from '@/components/VMenu/VMenu'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\nimport type { Anchor } from '@/util'\n\nexport const makeVSpeedDialProps = propsFactory({\n ...makeComponentProps(),\n ...makeVMenuProps({\n offset: 8,\n minWidth: 0,\n openDelay: 0,\n closeDelay: 100,\n location: 'top center' as const,\n transition: 'scale-transition',\n }),\n}, 'VSpeedDial')\n\nexport const VSpeedDial = genericComponent()({\n name: 'VSpeedDial',\n\n props: makeVSpeedDialProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n\n const menuRef = ref()\n\n const location = computed(() => {\n const [y, x = 'center'] = props.location?.split(' ') ?? []\n\n return `${y} ${x}` as Anchor\n })\n\n const locationClasses = computed(() => ({\n [`v-speed-dial__content--${location.value.replace(' ', '-')}`]: true,\n }))\n\n useRender(() => {\n const menuProps = VMenu.filterProps(props)\n\n return (\n \n {{\n ...slots,\n default: slotProps => (\n \n \n { slots.default?.(slotProps) }\n \n \n ),\n }}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VSpeedDial = InstanceType\n", "// Styles\nimport './VStepper.sass'\n\n// Components\nimport { VStepperSymbol } from './shared'\nimport { makeVStepperActionsProps, VStepperActions } from './VStepperActions'\nimport { VStepperHeader } from './VStepperHeader'\nimport { VStepperItem } from './VStepperItem'\nimport { VStepperWindow } from './VStepperWindow'\nimport { VStepperWindowItem } from './VStepperWindowItem'\nimport { VDivider } from '@/components/VDivider'\nimport { makeVSheetProps, VSheet } from '@/components/VSheet/VSheet'\n\n// Composables\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, toRefs } from 'vue'\nimport { genericComponent, getPropertyFromItem, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { StepperItem, StepperItemSlot } from './VStepperItem'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\nexport type VStepperSlot = {\n prev: () => void\n next: () => void\n}\n\nexport type VStepperSlots = {\n actions: VStepperSlot\n default: VStepperSlot\n header: StepperItem\n 'header-item': StepperItemSlot\n icon: StepperItemSlot\n title: StepperItemSlot\n subtitle: StepperItemSlot\n item: StepperItem\n prev: never\n next: never\n} & {\n [key: `header-item.${string}`]: StepperItemSlot\n [key: `item.${string}`]: StepperItem\n}\n\nexport const makeStepperProps = propsFactory({\n altLabels: Boolean,\n bgColor: String,\n completeIcon: IconValue,\n editIcon: IconValue,\n editable: Boolean,\n errorIcon: IconValue,\n hideActions: Boolean,\n items: {\n type: Array as PropType,\n default: () => ([]),\n },\n itemTitle: {\n type: [String, Array, Function] as PropType,\n default: 'title',\n },\n itemValue: {\n type: [String, Array, Function] as PropType,\n default: 'value',\n },\n itemProps: {\n type: [Boolean, String, Array, Function] as PropType,\n default: 'props',\n },\n nonLinear: Boolean,\n flat: Boolean,\n\n ...makeDisplayProps(),\n}, 'Stepper')\n\nexport const makeVStepperProps = propsFactory({\n ...makeStepperProps(),\n ...makeGroupProps({\n mandatory: 'force' as const,\n selectedClass: 'v-stepper-item--selected',\n }),\n ...makeVSheetProps(),\n ...pick(makeVStepperActionsProps(), ['prevText', 'nextText']),\n}, 'VStepper')\n\nexport const VStepper = genericComponent(\n props: {\n modelValue?: TModel\n 'onUpdate:modelValue'?: (value: TModel) => void\n },\n slots: VStepperSlots\n) => GenericProps>()({\n name: 'VStepper',\n\n props: makeVStepperProps(),\n\n emits: {\n 'update:modelValue': (v: unknown) => true,\n },\n\n setup (props, { slots }) {\n const { items: _items, next, prev, selected } = useGroup(props, VStepperSymbol)\n const { displayClasses, mobile } = useDisplay(props)\n const { completeIcon, editIcon, errorIcon, color, editable, prevText, nextText } = toRefs(props)\n\n const items = computed(() => props.items.map((item, index) => {\n const title = getPropertyFromItem(item, props.itemTitle, item)\n const value = getPropertyFromItem(item, props.itemValue, index + 1)\n const itemProps = props.itemProps === true\n ? item\n : getPropertyFromItem(item, props.itemProps)\n\n const _props = {\n title,\n value,\n ...itemProps,\n }\n\n return {\n title: _props.title,\n value: _props.value,\n props: _props,\n raw: item,\n }\n }))\n const activeIndex = computed(() => {\n return _items.value.findIndex(item => selected.value.includes(item.id))\n })\n const disabled = computed(() => {\n if (props.disabled) return props.disabled\n if (activeIndex.value === 0) return 'prev'\n if (activeIndex.value === _items.value.length - 1) return 'next'\n\n return false\n })\n\n provideDefaults({\n VStepperItem: {\n editable,\n errorIcon,\n completeIcon,\n editIcon,\n prevText,\n nextText,\n },\n VStepperActions: {\n color,\n disabled,\n prevText,\n nextText,\n },\n })\n\n useRender(() => {\n const sheetProps = VSheet.filterProps(props)\n\n const hasHeader = !!(slots.header || props.items.length)\n const hasWindow = props.items.length > 0\n const hasActions = !props.hideActions && !!(hasWindow || slots.actions)\n\n return (\n \n { hasHeader && (\n \n { items.value.map(({ raw, ...item }, index) => (\n <>\n { !!index && () }\n\n \n \n ))}\n \n )}\n\n { hasWindow && (\n \n { items.value.map(item => (\n slots[`item.${item.value}`]?.(item) ?? slots.item?.(item),\n }}\n />\n ))}\n \n )}\n\n { slots.default?.({ prev, next }) }\n\n { hasActions && (\n slots.actions?.({ next, prev }) ?? (\n \n )\n )}\n \n )\n })\n\n return {\n prev,\n next,\n }\n },\n})\n\nexport type VStepper = InstanceType\n", "// Types\nimport type { InjectionKey } from 'vue'\nimport type { GroupProvide } from '@/composables/group'\n\nexport const VStepperSymbol: InjectionKey = Symbol.for('vuetify:v-stepper')\n", "// Components\nimport { VBtn } from '@/components/VBtn/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type VStepperActionsSlots = {\n prev: {\n props: { onClick: () => void }\n }\n next: {\n props: { onClick: () => void }\n }\n}\n\nexport const makeVStepperActionsProps = propsFactory({\n color: String,\n disabled: {\n type: [Boolean, String] as PropType,\n default: false,\n },\n prevText: {\n type: String,\n default: '$vuetify.stepper.prev',\n },\n nextText: {\n type: String,\n default: '$vuetify.stepper.next',\n },\n}, 'VStepperActions')\n\nexport const VStepperActions = genericComponent()({\n name: 'VStepperActions',\n\n props: makeVStepperActionsProps(),\n\n emits: {\n 'click:prev': () => true,\n 'click:next': () => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n function onClickPrev () {\n emit('click:prev')\n }\n\n function onClickNext () {\n emit('click:next')\n }\n\n useRender(() => {\n const prevSlotProps = {\n onClick: onClickPrev,\n }\n const nextSlotProps = {\n onClick: onClickNext,\n }\n\n return (\n
\n \n { slots.prev?.({ props: prevSlotProps }) ?? (\n \n )}\n \n\n \n { slots.next?.({ props: nextSlotProps }) ?? (\n \n )}\n \n
\n )\n })\n\n return {}\n },\n})\n\nexport type VStepperActions = InstanceType\n", "// Utilities\nimport { createSimpleFunctional } from '@/util'\n\nexport const VStepperHeader = createSimpleFunctional('v-stepper-header')\n\nexport type VStepperHeader = InstanceType\n", "// Styles\nimport './VStepperItem.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar/VAvatar'\nimport { VIcon } from '@/components/VIcon/VIcon'\n\n// Composables\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { IconValue } from '@/composables/icons'\nimport { genOverlays } from '@/composables/variant'\n\n// Directives\nimport vRipple from '@/directives/ripple'\n\n// Utilities\nimport { computed } from 'vue'\nimport { VStepperSymbol } from './shared'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { RippleDirectiveBinding } from '@/directives/ripple'\n\nexport type StepperItem = string | Record\n\nexport type StepperItemSlot = {\n canEdit: boolean\n hasError: boolean\n hasCompleted: boolean\n title?: string | number\n subtitle?: string | number\n step: T\n}\n\nexport type VStepperItemSlots = {\n default: StepperItemSlot\n icon: StepperItemSlot\n title: StepperItemSlot\n subtitle: StepperItemSlot\n}\n\nexport type ValidationRule = () => string | boolean\n\nexport const makeStepperItemProps = propsFactory({\n color: String,\n title: String,\n subtitle: String,\n complete: Boolean,\n completeIcon: {\n type: IconValue,\n default: '$complete',\n },\n editable: Boolean,\n editIcon: {\n type: IconValue,\n default: '$edit',\n },\n error: Boolean,\n errorIcon: {\n type: IconValue,\n default: '$error',\n },\n icon: IconValue,\n ripple: {\n type: [Boolean, Object] as PropType,\n default: true,\n },\n rules: {\n type: Array as PropType,\n default: () => ([]),\n },\n}, 'StepperItem')\n\nexport const makeVStepperItemProps = propsFactory({\n ...makeStepperItemProps(),\n ...makeGroupItemProps(),\n}, 'VStepperItem')\n\nexport const VStepperItem = genericComponent()({\n name: 'VStepperItem',\n\n directives: { vRipple },\n\n props: makeVStepperItemProps(),\n\n emits: {\n 'group:selected': (val: { value: boolean }) => true,\n },\n\n setup (props, { slots }) {\n const group = useGroupItem(props, VStepperSymbol, true)\n const step = computed(() => group?.value.value ?? props.value)\n const isValid = computed(() => props.rules.every(handler => handler() === true))\n const isClickable = computed(() => !props.disabled && props.editable)\n const canEdit = computed(() => !props.disabled && props.editable)\n const hasError = computed(() => props.error || !isValid.value)\n const hasCompleted = computed(() => props.complete || (props.rules.length > 0 && isValid.value))\n const icon = computed(() => {\n if (hasError.value) return props.errorIcon\n if (hasCompleted.value) return props.completeIcon\n if (group.isSelected.value && props.editable) return props.editIcon\n\n return props.icon\n })\n const slotProps = computed(() => ({\n canEdit: canEdit.value,\n hasError: hasError.value,\n hasCompleted: hasCompleted.value,\n title: props.title,\n subtitle: props.subtitle,\n step: step.value,\n value: props.value,\n }))\n\n useRender(() => {\n const hasColor = (\n !group ||\n group.isSelected.value ||\n hasCompleted.value ||\n canEdit.value\n ) && (\n !hasError.value &&\n !props.disabled\n )\n const hasTitle = !!(props.title != null || slots.title)\n const hasSubtitle = !!(props.subtitle != null || slots.subtitle)\n\n function onClick () {\n group?.toggle()\n }\n\n return (\n \n { isClickable.value && genOverlays(true, 'v-stepper-item') }\n\n \n { slots.icon?.(slotProps.value) ?? (\n icon.value ? (\n \n ) : step.value\n )}\n \n\n
\n { hasTitle && (\n \n { slots.title?.(slotProps.value) ?? props.title }\n
\n )}\n\n { hasSubtitle && (\n \n { slots.subtitle?.(slotProps.value) ?? props.subtitle }\n \n )}\n\n { slots.default?.(slotProps.value) }\n \n \n )\n })\n return {}\n },\n})\n\nexport type VStepperItem = InstanceType\n", "// Components\nimport { VStepperSymbol } from './shared'\nimport { makeVWindowProps, VWindow } from '@/components/VWindow/VWindow'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VWindowSlots } from '@/components/VWindow/VWindow'\nimport type { GenericProps } from '@/util'\n\nexport const makeVStepperWindowProps = propsFactory({\n ...omit(makeVWindowProps(), ['continuous', 'nextIcon', 'prevIcon', 'showArrows', 'touch', 'mandatory']),\n}, 'VStepperWindow')\n\nexport const VStepperWindow = genericComponent(\n props: {\n modelValue?: TModel\n 'onUpdate:modelValue'?: (value: TModel) => void\n },\n slots: VWindowSlots\n) => GenericProps>()({\n name: 'VStepperWindow',\n\n props: makeVStepperWindowProps(),\n\n emits: {\n 'update:modelValue': (v: unknown) => true,\n },\n\n setup (props, { slots }) {\n const group = inject(VStepperSymbol, null)\n const _model = useProxiedModel(props, 'modelValue')\n\n const model = computed({\n get () {\n // Always return modelValue if defined\n // or if not within a VStepper group\n if (_model.value != null || !group) return _model.value\n\n // If inside of a VStepper, find the currently selected\n // item by id. Item value may be assigned by its index\n return group.items.value.find(item => group.selected.value.includes(item.id))?.value\n },\n set (val) {\n _model.value = val\n },\n })\n\n useRender(() => {\n const windowProps = VWindow.filterProps(props)\n\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VStepperWindow = InstanceType\n", "// Components\nimport { makeVWindowItemProps, VWindowItem } from '@/components/VWindow/VWindowItem'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVStepperWindowItemProps = propsFactory({\n ...makeVWindowItemProps(),\n}, 'VStepperWindowItem')\n\nexport const VStepperWindowItem = genericComponent()({\n name: 'VStepperWindowItem',\n\n props: makeVStepperWindowItemProps(),\n\n setup (props, { slots }) {\n useRender(() => {\n const windowItemProps = VWindowItem.filterProps(props)\n\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VStepperWindowItem = InstanceType\n", "// Styles\nimport './VSystemBar.sass'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { useSsrBoot } from '@/composables/ssrBoot'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, shallowRef, toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVSystemBarProps = propsFactory({\n color: String,\n height: [Number, String],\n window: Boolean,\n\n ...makeComponentProps(),\n ...makeElevationProps(),\n ...makeLayoutItemProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VSystemBar')\n\nexport const VSystemBar = genericComponent()({\n name: 'VSystemBar',\n\n props: makeVSystemBarProps(),\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const { ssrBootStyles } = useSsrBoot()\n const height = computed(() => props.height ?? (props.window ? 32 : 24))\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: shallowRef('top'),\n layoutSize: height,\n elementSize: height,\n active: computed(() => true),\n absolute: toRef(() => props.absolute),\n })\n\n useRender(() => (\n \n ))\n\n return {}\n },\n})\n\nexport type VSystemBar = InstanceType\n", "// Styles\nimport './VTab.sass'\n\n// Components\nimport { makeVBtnProps, VBtn } from '@/components/VBtn/VBtn'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\nimport { forwardRefs } from '@/composables/forwardRefs'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { VTabsSymbol } from './shared'\nimport { animate, genericComponent, omit, propsFactory, standardEasing, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VBtnSlots } from '@/components/VBtn/VBtn'\n\nexport const makeVTabProps = propsFactory({\n fixed: Boolean,\n\n sliderColor: String,\n sliderTransition: String as PropType<'shift' | 'grow' | 'fade'>,\n sliderTransitionDuration: [String, Number],\n hideSlider: Boolean,\n inset: Boolean,\n\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n },\n\n ...omit(makeVBtnProps({\n selectedClass: 'v-tab--selected',\n variant: 'text' as const,\n }), [\n 'active',\n 'block',\n 'flat',\n 'location',\n 'position',\n 'symbol',\n ]),\n}, 'VTab')\n\nexport const VTab = genericComponent()({\n name: 'VTab',\n\n props: makeVTabProps(),\n\n setup (props, { slots, attrs }) {\n const {\n textColorClasses: sliderColorClasses,\n textColorStyles: sliderColorStyles,\n } = useTextColor(() => props.sliderColor)\n const {\n backgroundColorClasses: insetColorClasses,\n backgroundColorStyles: insetColorStyles,\n } = useBackgroundColor(() => props.sliderColor)\n\n const rootEl = ref()\n const sliderEl = ref()\n\n const isHorizontal = computed(() => props.direction === 'horizontal')\n const isSelected = computed(() => rootEl.value?.group?.isSelected.value ?? false)\n\n function fade (nextEl: HTMLElement, prevEl: HTMLElement) {\n return { opacity: [0, 1] }\n }\n\n function grow (nextEl: HTMLElement, prevEl: HTMLElement) {\n return props.direction === 'vertical'\n ? { transform: ['scaleY(0)', 'scaleY(1)'] }\n : { transform: ['scaleX(0)', 'scaleX(1)'] }\n }\n\n function shift (nextEl: HTMLElement, prevEl: HTMLElement) {\n const prevBox = prevEl.getBoundingClientRect()\n const nextBox = nextEl.getBoundingClientRect()\n\n const xy = isHorizontal.value ? 'x' : 'y'\n const XY = isHorizontal.value ? 'X' : 'Y'\n const rightBottom = isHorizontal.value ? 'right' : 'bottom'\n const widthHeight = isHorizontal.value ? 'width' : 'height'\n\n const prevPos = prevBox[xy]\n const nextPos = nextBox[xy]\n const delta = prevPos > nextPos\n ? prevBox[rightBottom] - nextBox[rightBottom]\n : prevBox[xy] - nextBox[xy]\n const origin =\n Math.sign(delta) > 0 ? (isHorizontal.value ? 'right' : 'bottom')\n : Math.sign(delta) < 0 ? (isHorizontal.value ? 'left' : 'top')\n : 'center'\n const size = Math.abs(delta) + (Math.sign(delta) < 0 ? prevBox[widthHeight] : nextBox[widthHeight])\n const scale = size / Math.max(prevBox[widthHeight], nextBox[widthHeight]) || 0\n const initialScale = prevBox[widthHeight] / nextBox[widthHeight] || 0\n const sigma = 1.5\n\n return {\n transform: [\n `translate${XY}(${delta}px) scale${XY}(${initialScale})`,\n `translate${XY}(${delta / sigma}px) scale${XY}(${(scale - 1) / sigma + 1})`,\n 'none',\n ],\n transformOrigin: Array(3).fill(origin),\n }\n }\n\n function updateSlider ({ value }: { value: boolean }) {\n if (value) {\n const prevEl: HTMLElement | undefined = rootEl.value?.$el.parentElement?.querySelector('.v-tab--selected .v-tab__slider')\n const nextEl = sliderEl.value\n\n if (!prevEl || !nextEl) return\n\n const color = getComputedStyle(prevEl).color\n\n const keyframes = { fade, grow, shift }[props.sliderTransition ?? 'shift'] ?? shift\n const duration = Number(props.sliderTransitionDuration) ||\n ({ fade: 400, grow: 350, shift: 225 }[props.sliderTransition ?? 'shift'] ?? 225)\n\n animate(nextEl, {\n backgroundColor: [color, 'currentcolor'],\n ...keyframes(nextEl, prevEl),\n }, {\n duration,\n easing: standardEasing,\n })\n }\n }\n\n useRender(() => {\n const btnProps = VBtn.filterProps(props)\n\n return (\n \n {{\n ...slots,\n default: () => (\n <>\n { slots.default?.() ?? props.text }\n\n { !props.hideSlider && (\n \n )}\n \n ),\n }}\n \n )\n })\n\n return forwardRefs({}, rootEl)\n },\n})\n\nexport type VTab = InstanceType\n", "// Types\nimport type { InjectionKey } from 'vue'\nimport type { GroupProvide } from '@/composables/group'\n\nexport const VTabsSymbol: InjectionKey = Symbol.for('vuetify:v-tabs')\n", "// Styles\nimport './VTabs.sass'\n\n// Components\nimport { makeVTabProps, VTab } from './VTab'\nimport { VTabsWindow } from './VTabsWindow'\nimport { VTabsWindowItem } from './VTabsWindowItem'\nimport { makeVSlideGroupProps, VSlideGroup } from '@/components/VSlideGroup/VSlideGroup'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { VTabsSymbol } from './shared'\nimport { convertToUnit, genericComponent, isObject, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { GenericProps } from '@/util'\n\nexport type TabItem = string | number | Record\n\nexport type VTabsSlot = {\n item: T\n}\n\nexport type VTabsSlots = {\n default: never\n tab: VTabsSlot\n item: VTabsSlot\n window: never\n prev: never\n next: never\n} & {\n [key: `tab.${string}`]: VTabsSlot\n [key: `item.${string}`]: VTabsSlot\n}\n\nfunction parseItems (items: readonly TabItem[] | undefined) {\n if (!items) return []\n\n return items.map(item => {\n if (!isObject(item)) return { text: item, value: item }\n\n return item\n })\n}\n\nexport const makeVTabsProps = propsFactory({\n alignTabs: {\n type: String as PropType<'start' | 'title' | 'center' | 'end'>,\n default: 'start',\n },\n color: String,\n fixedTabs: Boolean,\n items: {\n type: Array as PropType,\n default: () => ([]),\n },\n stacked: Boolean,\n bgColor: String,\n grow: Boolean,\n height: {\n type: [Number, String],\n default: undefined,\n },\n hideSlider: Boolean,\n inset: Boolean,\n insetPadding: [String, Number],\n insetRadius: [String, Number],\n sliderColor: String,\n\n ...pick(makeVTabProps(), ['spaced', 'sliderTransition', 'sliderTransitionDuration']),\n ...makeVSlideGroupProps({\n mandatory: 'force' as const,\n selectedClass: 'v-tab-item--selected',\n }),\n ...makeDensityProps(),\n ...makeTagProps(),\n}, 'VTabs')\n\nexport const VTabs = genericComponent(\n props: {\n items?: T[]\n modelValue?: TModel\n 'onUpdate:modelValue'?: (value: TModel) => void\n },\n slots: VTabsSlots\n) => GenericProps>()({\n name: 'VTabs',\n\n props: makeVTabsProps(),\n\n emits: {\n 'update:modelValue': (v: unknown) => true,\n },\n\n setup (props, { attrs, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const items = computed(() => parseItems(props.items))\n const { densityClasses } = useDensity(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.bgColor)\n const { scopeId } = useScopeId()\n\n provideDefaults({\n VTab: {\n color: toRef(props, 'color'),\n direction: toRef(props, 'direction'),\n stacked: toRef(props, 'stacked'),\n fixed: toRef(props, 'fixedTabs'),\n inset: toRef(props, 'inset'),\n sliderColor: toRef(props, 'sliderColor'),\n sliderTransition: toRef(props, 'sliderTransition'),\n sliderTransitionDuration: toRef(props, 'sliderTransitionDuration'),\n hideSlider: toRef(props, 'hideSlider'),\n },\n })\n\n useRender(() => {\n const slideGroupProps = VSlideGroup.filterProps(props)\n const hasWindow = !!(slots.window || props.items.length > 0)\n\n return (\n <>\n \n {{\n default: slots.default ?? (() => items.value.map(item => (\n slots.tab?.({ item }) ?? (\n slots[`tab.${item.value}`]?.({ item }) : undefined,\n }}\n />\n )\n ))),\n prev: slots.prev,\n next: slots.next,\n }}\n \n\n { hasWindow && (\n \n { items.value.map(item => slots.item?.({ item }) ?? (\n slots[`item.${item.value}`]?.({ item }),\n }}\n />\n ))}\n\n { slots.window?.() }\n \n )}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VTabs = InstanceType\n", "// Components\nimport { makeVWindowProps, VWindow } from '@/components/VWindow/VWindow'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport { VTabsSymbol } from './shared'\nimport type { VWindowSlots } from '@/components/VWindow/VWindow'\nimport type { GenericProps } from '@/util'\n\nexport const makeVTabsWindowProps = propsFactory({\n ...omit(makeVWindowProps(), ['continuous', 'nextIcon', 'prevIcon', 'showArrows', 'touch', 'mandatory']),\n}, 'VTabsWindow')\n\nexport const VTabsWindow = genericComponent(\n props: {\n modelValue?: TModel\n 'onUpdate:modelValue'?: (value: TModel) => void\n },\n slots: VWindowSlots\n) => GenericProps>()({\n name: 'VTabsWindow',\n\n props: makeVTabsWindowProps(),\n\n emits: {\n 'update:modelValue': (v: any) => true,\n },\n\n setup (props, { slots }) {\n const group = inject(VTabsSymbol, null)\n const _model = useProxiedModel(props, 'modelValue')\n\n const model = computed({\n get () {\n // Always return modelValue if defined\n // or if not within a VTabs group\n if (_model.value != null || !group) return _model.value\n\n // If inside of a VTabs, find the currently selected\n // item by id. Item value may be assigned by its index\n return group.items.value.find(item => group.selected.value.includes(item.id))?.value\n },\n set (val) {\n _model.value = val\n },\n })\n\n useRender(() => {\n const windowProps = VWindow.filterProps(props)\n\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VTabsWindow = InstanceType\n", "// Components\nimport { makeVWindowItemProps, VWindowItem } from '@/components/VWindow/VWindowItem'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVTabsWindowItemProps = propsFactory({\n ...makeVWindowItemProps(),\n}, 'VTabsWindowItem')\n\nexport const VTabsWindowItem = genericComponent()({\n name: 'VTabsWindowItem',\n\n props: makeVTabsWindowItemProps(),\n\n setup (props, { slots }) {\n useRender(() => {\n const windowItemProps = VWindowItem.filterProps(props)\n\n return (\n \n )\n })\n\n return {}\n },\n})\n\nexport type VTabsWindowItem = InstanceType\n", "// Styles\nimport './VThemeProvider.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { genericComponent, propsFactory } from '@/util'\n\nexport const makeVThemeProviderProps = propsFactory({\n withBackground: Boolean,\n\n ...makeComponentProps(),\n ...makeThemeProps(),\n ...makeTagProps(),\n}, 'VThemeProvider')\n\nexport const VThemeProvider = genericComponent()({\n name: 'VThemeProvider',\n\n props: makeVThemeProviderProps(),\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n\n return () => {\n if (!props.withBackground) return slots.default?.()\n\n return (\n \n { slots.default?.() }\n \n )\n }\n },\n})\n\nexport type VThemeProvider = InstanceType\n", "// Styles\nimport './VTimeline.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { useRtl } from '@/composables/locale'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { convertToUnit, genericComponent, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { Prop } from 'vue'\nimport { makeVTimelineItemProps } from './VTimelineItem'\n\nexport type TimelineDirection = 'vertical' | 'horizontal'\nexport type TimelineSide = 'start' | 'end' | undefined\nexport type TimelineAlign = 'center' | 'start'\nexport type TimelineTruncateLine = 'start' | 'end' | 'both' | undefined\n\nexport const makeVTimelineProps = propsFactory({\n align: {\n type: String,\n default: 'center',\n validator: (v: any) => ['center', 'start'].includes(v),\n } as Prop,\n direction: {\n type: String,\n default: 'vertical',\n validator: (v: any) => ['vertical', 'horizontal'].includes(v),\n } as Prop,\n justify: {\n type: String,\n default: 'auto',\n validator: (v: any) => ['auto', 'center'].includes(v),\n },\n side: {\n type: String,\n validator: (v: any) => v == null || ['start', 'end'].includes(v),\n } as Prop,\n lineThickness: {\n type: [String, Number],\n default: 2,\n },\n lineColor: String,\n truncateLine: {\n type: String,\n validator: (v: any) => ['start', 'end', 'both'].includes(v),\n } as Prop,\n\n ...pick(makeVTimelineItemProps({\n lineInset: 0,\n }), ['dotColor', 'fillDot', 'hideOpposite', 'iconColor', 'lineInset', 'size']),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VTimeline')\n\nexport const VTimeline = genericComponent()({\n name: 'VTimeline',\n\n props: makeVTimelineProps(),\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { densityClasses } = useDensity(props)\n const { rtlClasses } = useRtl()\n\n provideDefaults({\n VTimelineDivider: {\n lineColor: toRef(() => props.lineColor),\n },\n VTimelineItem: {\n density: toRef(() => props.density),\n dotColor: toRef(() => props.dotColor),\n fillDot: toRef(() => props.fillDot),\n hideOpposite: toRef(() => props.hideOpposite),\n iconColor: toRef(() => props.iconColor),\n lineColor: toRef(() => props.lineColor),\n lineInset: toRef(() => props.lineInset),\n size: toRef(() => props.size),\n },\n })\n\n const sideClasses = computed(() => {\n const side = props.side ? props.side : props.density !== 'default' ? 'end' : null\n\n return side && `v-timeline--side-${side}`\n })\n\n const truncateClasses = computed(() => {\n const classes = [\n 'v-timeline--truncate-line-start',\n 'v-timeline--truncate-line-end',\n ]\n\n switch (props.truncateLine) {\n case 'both': return classes\n case 'start': return classes[0]\n case 'end': return classes[1]\n default: return null\n }\n })\n\n useRender(() => (\n \n ))\n\n return {}\n },\n})\n\nexport type VTimeline = InstanceType\n", "// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { IconValue } from '@/composables/icons'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeSizeProps, useSize } from '@/composables/size'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVTimelineDividerProps = propsFactory({\n dotColor: String,\n fillDot: Boolean,\n hideDot: Boolean,\n icon: IconValue,\n iconColor: String,\n lineColor: String,\n\n ...makeComponentProps(),\n ...makeRoundedProps(),\n ...makeSizeProps(),\n ...makeElevationProps(),\n}, 'VTimelineDivider')\n\nexport const VTimelineDivider = genericComponent()({\n name: 'VTimelineDivider',\n\n props: makeVTimelineDividerProps(),\n\n setup (props, { slots }) {\n const { sizeClasses, sizeStyles } = useSize(props, 'v-timeline-divider__dot')\n const { backgroundColorStyles, backgroundColorClasses } = useBackgroundColor(() => props.dotColor)\n const { roundedClasses } = useRounded(props, 'v-timeline-divider__dot')\n const { elevationClasses } = useElevation(props)\n const {\n backgroundColorClasses: lineColorClasses,\n backgroundColorStyles: lineColorStyles,\n } = useBackgroundColor(() => props.lineColor)\n\n useRender(() => (\n \n \n\n { !props.hideDot && (\n \n \n { !slots.default ? (\n \n ) : (\n \n )}\n \n \n )}\n\n \n \n ))\n\n return {}\n },\n})\n\nexport type VTimelineDivider = InstanceType\n", "// Components\nimport { VTimelineDivider } from './VTimelineDivider'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps } from '@/composables/elevation'\nimport { IconValue } from '@/composables/icons'\nimport { makeRoundedProps } from '@/composables/rounded'\nimport { makeSizeProps } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { ref, shallowRef, watch } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { Prop, PropType } from 'vue'\n\n// Types\nexport type TimelineItemSide = 'start' | 'end' | undefined\nexport type VTimelineItemSlots = {\n default: never\n icon: never\n opposite: never\n}\n\nexport const makeVTimelineItemProps = propsFactory({\n density: String as PropType<'default' | 'compact'>,\n dotColor: String,\n fillDot: Boolean,\n hideDot: Boolean,\n hideOpposite: {\n type: Boolean,\n default: undefined,\n },\n icon: IconValue,\n iconColor: String,\n lineInset: [Number, String],\n side: {\n type: String,\n validator: (v: any) => v == null || ['start', 'end'].includes(v),\n } as Prop,\n\n ...makeComponentProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeSizeProps(),\n ...makeTagProps(),\n}, 'VTimelineItem')\n\nexport const VTimelineItem = genericComponent()({\n name: 'VTimelineItem',\n\n props: makeVTimelineItemProps(),\n\n setup (props, { slots }) {\n const { dimensionStyles } = useDimension(props)\n\n const dotSize = shallowRef(0)\n const dotRef = ref()\n watch(dotRef, newValue => {\n if (!newValue) return\n dotSize.value = newValue.$el.querySelector('.v-timeline-divider__dot')?.getBoundingClientRect().width ?? 0\n }, {\n flush: 'post',\n })\n\n useRender(() => (\n \n \n { slots.default?.() }\n \n\n \n\n { props.density !== 'compact' && (\n
\n { !props.hideOpposite && slots.opposite?.() }\n
\n )}\n \n ))\n\n return {}\n },\n})\n\nexport type VTimelineItem = InstanceType\n", "// Styles\nimport './VTimePicker.sass'\n\n// Components\nimport { VTimePickerClock } from './VTimePickerClock'\nimport { VTimePickerControls } from './VTimePickerControls'\nimport { makeVPickerProps, VPicker } from '@/labs/VPicker/VPicker'\n\n// Composables\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, onMounted, ref, toRef, watch } from 'vue'\nimport { convert12to24, convert24to12, pad } from './util'\nimport { createRange, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { Period, VTimePickerViewMode } from './shared'\nimport type { VPickerSlots } from '@/labs/VPicker/VPicker'\n\ntype AllowFunction = (val: number) => boolean\n\nconst rangeHours24 = createRange(24)\nconst rangeHours12am = createRange(12)\nconst rangeHours12pm = rangeHours12am.map(v => v + 12)\nconst range60 = createRange(60)\n\nexport type VTimePickerSlots = Omit\n\ntype Variant = 'dial' | 'input'\n\nexport const makeVTimePickerProps = propsFactory({\n allowedHours: [Function, Array] as PropType,\n allowedMinutes: [Function, Array] as PropType,\n allowedSeconds: [Function, Array] as PropType,\n disabled: Boolean,\n format: {\n type: String as PropType<'ampm' | '24hr'>,\n default: 'ampm',\n },\n max: String,\n min: String,\n viewMode: {\n type: String as PropType,\n default: 'hour',\n },\n period: {\n type: String as PropType,\n default: 'am',\n validator: (v: any) => ['am', 'pm'].includes(v),\n },\n modelValue: null as any as PropType,\n readonly: Boolean,\n scrollable: Boolean,\n useSeconds: Boolean,\n variant: {\n type: String as PropType,\n default: 'dial',\n },\n ...omit(makeVPickerProps({ title: '$vuetify.timePicker.title' }), ['landscape']),\n ...makeDensityProps(),\n}, 'VTimePicker')\n\nexport const VTimePicker = genericComponent()({\n name: 'VTimePicker',\n\n props: makeVTimePickerProps(),\n\n emits: {\n 'update:hour': (val: number) => true,\n 'update:minute': (val: number) => true,\n 'update:period': (val: Period) => true,\n 'update:second': (val: number) => true,\n 'update:modelValue': (val: string | null) => true,\n 'update:viewMode': (val: VTimePickerViewMode) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const { densityClasses } = useDensity(props)\n const inputHour = ref(null as number | null)\n const inputMinute = ref(null as number | null)\n const inputSecond = ref(null as number | null)\n const lazyInputHour = ref(null as number | null)\n const lazyInputMinute = ref(null as number | null)\n const lazyInputSecond = ref(null as number | null)\n const period = useProxiedModel(props, 'period', 'am')\n const viewMode = useProxiedModel(props, 'viewMode', 'hour')\n const controlsRef = ref(null)\n const clockRef = ref(null)\n\n const isAllowedHourCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n if (props.allowedHours instanceof Array) {\n cb = (val: number) => (props.allowedHours as number[]).includes(val)\n } else {\n cb = props.allowedHours as AllowFunction\n }\n\n if (!props.min && !props.max) return cb\n\n const minHour = props.min ? Number(props.min.split(':')[0]) : 0\n const maxHour = props.max ? Number(props.max.split(':')[0]) : 23\n\n return (val: number) => {\n return val >= Number(minHour) &&\n val <= Number(maxHour) &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedMinuteCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n if (props.allowedMinutes instanceof Array) {\n cb = (val: number) => (props.allowedMinutes as number[]).includes(val)\n } else {\n cb = props.allowedMinutes as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isHourAllowed ? cb : () => false\n }\n\n const [minHour, minMinute] = props.min ? props.min.split(':').map(Number) : [0, 0]\n const [maxHour, maxMinute] = props.max ? props.max.split(':').map(Number) : [23, 59]\n const minTime = minHour * 60 + Number(minMinute)\n const maxTime = maxHour * 60 + Number(maxMinute)\n\n return (val: number) => {\n const time = 60 * inputHour.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isHourAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedSecondCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n const isMinuteAllowed = isHourAllowed &&\n (!isAllowedMinuteCb.value ||\n inputMinute.value === null ||\n isAllowedMinuteCb.value(inputMinute.value)\n )\n\n if (props.allowedSeconds instanceof Array) {\n cb = (val: number) => (props.allowedSeconds as number[]).includes(val)\n } else {\n cb = props.allowedSeconds as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isMinuteAllowed ? cb : () => false\n }\n\n const [minHour, minMinute, minSecond] = props.min ? props.min.split(':').map(Number) : [0, 0, 0]\n const [maxHour, maxMinute, maxSecond] = props.max ? props.max.split(':').map(Number) : [23, 59, 59]\n const minTime = minHour * 3600 + minMinute * 60 + Number(minSecond || 0)\n const maxTime = maxHour * 3600 + maxMinute * 60 + Number(maxSecond || 0)\n\n return (val: number) => {\n const time = 3600 * inputHour.value! + 60 * inputMinute.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isMinuteAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAmPm = computed((): boolean => {\n return props.format === 'ampm'\n })\n\n const shouldClear = toRef(() => {\n return props.modelValue !== null &&\n inputHour.value === null &&\n inputMinute.value === null &&\n (!props.useSeconds || inputSecond.value === null)\n })\n\n function emitValue () {\n const value = genValue()\n\n if (value !== null && value !== props.modelValue) {\n emit('update:modelValue', value)\n }\n if (shouldClear.value) {\n emit('update:modelValue', null)\n }\n }\n\n watch(inputHour, emitValue)\n watch(inputMinute, emitValue)\n watch(inputSecond, emitValue)\n\n watch(() => props.period, val => setPeriod(val))\n\n watch(() => props.modelValue, val => setInputData(val))\n\n watch(() => props.useSeconds, (val, old) => {\n if (old && !val && viewMode.value === 'second') {\n viewMode.value = 'minute'\n }\n if (!val && inputSecond.value !== null) {\n inputSecond.value = null\n }\n })\n\n onMounted(() => {\n setInputData(props.modelValue)\n })\n\n function genValue () {\n if (inputHour.value != null && inputMinute.value != null && (!props.useSeconds || inputSecond.value != null)) {\n return `${pad(inputHour.value)}:${pad(inputMinute.value)}` + (props.useSeconds ? `:${pad(inputSecond.value!)}` : '')\n }\n\n return null\n }\n\n function setInputData (value: string | null | Date) {\n if (value == null || value === '') {\n inputHour.value = null\n inputMinute.value = null\n inputSecond.value = null\n } else if (value instanceof Date) {\n inputHour.value = value.getHours()\n inputMinute.value = value.getMinutes()\n inputSecond.value = value.getSeconds()\n } else {\n const [hour, , minute, , second, period] = value.trim().toLowerCase().match(/^(\\d+):(\\d+)(:(\\d+))?([ap]m)?$/) || new Array(6)\n\n inputHour.value = period ? convert12to24(parseInt(hour, 10), period as Period) : parseInt(hour, 10)\n inputMinute.value = parseInt(minute, 10)\n inputSecond.value = parseInt(second || 0, 10)\n }\n\n period.value = (inputHour.value == null || inputHour.value < 12) ? 'am' : 'pm'\n }\n\n function firstAllowed (type: VTimePickerViewMode, value: number) {\n const allowedFn = type === 'hour' ? isAllowedHourCb.value : (type === 'minute' ? isAllowedMinuteCb.value : isAllowedSecondCb.value)\n if (!allowedFn) return value\n\n // TODO: clean up (Note from V2 code)\n const range = type === 'minute'\n ? range60\n : (type === 'second'\n ? range60\n : (isAmPm.value\n ? (value < 12\n ? rangeHours12am\n : rangeHours12pm)\n : rangeHours24))\n const first = range.find(v => allowedFn((v + value) % range.length + range[0]))\n return ((first || 0) + value) % range.length + range[0]\n }\n\n function setPeriod (val: Period) {\n period.value = val\n if (inputHour.value != null) {\n const newHour = inputHour.value! + (period.value === 'am' ? -12 : 12)\n inputHour.value = firstAllowed('hour', newHour)\n }\n emit('update:period', val)\n emitValue()\n return true\n }\n\n function onInput (value: number) {\n if (viewMode.value === 'hour') {\n inputHour.value = isAmPm.value ? convert12to24(value, period.value) : value\n } else if (viewMode.value === 'minute') {\n inputMinute.value = value\n } else {\n inputSecond.value = value\n }\n }\n\n function onChange (value: number) {\n switch (viewMode.value || 'hour') {\n case 'hour':\n emit('update:hour', value)\n break\n case 'minute':\n emit('update:minute', value)\n break\n case 'second':\n emit('update:second', value)\n break\n default:\n break\n }\n\n const emitChange = inputHour.value !== null && inputMinute.value !== null && (props.useSeconds ? inputSecond.value !== null : true)\n if (viewMode.value === 'hour') {\n viewMode.value = 'minute'\n } else if (props.useSeconds && viewMode.value === 'minute') {\n viewMode.value = 'second'\n }\n\n if (inputHour.value === lazyInputHour.value &&\n inputMinute.value === lazyInputMinute.value &&\n (!props.useSeconds || inputSecond.value === lazyInputSecond.value)\n ) return\n\n const time = genValue()\n if (time === null) return\n\n lazyInputHour.value = inputHour.value\n lazyInputMinute.value = inputMinute.value\n props.useSeconds && (lazyInputSecond.value = inputSecond.value)\n\n emitChange && emitValue()\n }\n\n useRender(() => {\n const pickerProps = omit(VPicker.filterProps(props), ['hideHeader'])\n const timePickerControlsProps = VTimePickerControls.filterProps(props)\n const timePickerClockProps = VTimePickerClock.filterProps(omit(props, ['format', 'modelValue', 'min', 'max']))\n\n return (\n slots.title?.() ?? (\n
\n { t(props.title) }\n
\n ),\n header: () => (\n inputHour.value = val }\n onUpdate:minute={ (val: number) => inputMinute.value = val }\n onUpdate:period={ (val: Period) => setPeriod(val) }\n onUpdate:second={ (val: number) => inputSecond.value = val }\n onUpdate:viewMode={ (value: VTimePickerViewMode) => (viewMode.value = value) }\n ref={ controlsRef }\n />\n ),\n default: () => (\n val)\n : (val: number) => pad(val, 2)\n }\n max={ viewMode.value === 'hour' ? (isAmPm.value && period.value === 'am' ? 11 : 23) : 59 }\n min={ viewMode.value === 'hour' && isAmPm.value && period.value === 'pm' ? 12 : 0 }\n size={ 20 }\n step={ viewMode.value === 'hour' ? 1 : 5 }\n modelValue={ viewMode.value === 'hour'\n ? inputHour.value as number\n : (viewMode.value === 'minute'\n ? inputMinute.value as number\n : inputSecond.value as number)\n }\n onChange={ onChange }\n onInput={ onInput }\n ref={ clockRef }\n />\n ),\n actions: slots.actions,\n }}\n />\n )\n })\n },\n})\n\nexport type VTimePicker = InstanceType\n", "// Styles\nimport './VTimePickerClock.sass'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, onScopeDispose, ref, watch } from 'vue'\nimport { debounce, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\ninterface Point {\n x: number\n y: number\n}\n\nexport const makeVTimePickerClockProps = propsFactory({\n allowedValues: Function as PropType<(value: number) => boolean>,\n ampm: Boolean,\n color: String,\n disabled: Boolean,\n displayedValue: null,\n double: Boolean,\n format: {\n type: Function,\n default: (val: string | number) => val,\n },\n max: {\n type: Number,\n required: true,\n },\n min: {\n type: Number,\n required: true,\n },\n scrollable: Boolean,\n readonly: Boolean,\n rotate: {\n type: Number,\n default: 0,\n },\n step: {\n type: Number,\n default: 1,\n },\n modelValue: {\n type: Number,\n },\n}, 'VTimePickerClock')\n\nexport const VTimePickerClock = genericComponent()({\n name: 'VTimePickerClock',\n\n props: makeVTimePickerClockProps(),\n\n emits: {\n change: (val: number) => true,\n input: (val: number) => true,\n },\n\n setup (props, { emit }) {\n const clockRef = ref(null)\n const innerClockRef = ref(null)\n const inputValue = ref(undefined)\n const isDragging = ref(false)\n const valueOnMouseDown = ref(null as number | null)\n const valueOnMouseUp = ref(null as number | null)\n const emitChangeDebounced = debounce((value: number) => emit('change', value), 750)\n\n const { textColorClasses, textColorStyles } = useTextColor(() => props.color)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => props.color)\n\n const count = computed(() => props.max - props.min + 1)\n const roundCount = computed(() => props.double ? (count.value / 2) : count.value)\n const degreesPerUnit = computed(() => 360 / roundCount.value)\n const degrees = computed(() => degreesPerUnit.value * Math.PI / 180)\n const displayedValue = computed(() => props.modelValue == null ? props.min : props.modelValue)\n const innerRadiusScale = computed(() => 0.62)\n\n const genChildren = computed(() => {\n const children = []\n for (let value = props.min; value <= props.max; value = value + props.step) {\n children.push(value)\n }\n return children\n })\n\n watch(() => props.modelValue, val => {\n inputValue.value = val\n })\n\n function update (value: number) {\n if (inputValue.value !== value) {\n inputValue.value = value\n }\n emit('input', value)\n }\n\n function isAllowed (value: number) {\n return !props.allowedValues || props.allowedValues(value)\n }\n\n function wheel (e: WheelEvent) {\n if (!props.scrollable || props.disabled) return\n\n e.preventDefault()\n\n const delta = Math.sign(-e.deltaY || 1)\n let value = displayedValue.value\n do {\n value = value + delta\n value = (value - props.min + count.value) % count.value + props.min\n } while (!isAllowed(value) && value !== displayedValue.value)\n\n if (value !== props.displayedValue) {\n update(value)\n }\n\n emitChangeDebounced(value)\n }\n\n function isInner (value: number) {\n return props.double && (value - props.min >= roundCount.value)\n }\n\n function handScale (value: number) {\n return isInner(value) ? innerRadiusScale.value : 1\n }\n\n function getPosition (value: number) {\n const rotateRadians = props.rotate * Math.PI / 180\n return {\n x: Math.sin((value - props.min) * degrees.value + rotateRadians) * handScale(value),\n y: -Math.cos((value - props.min) * degrees.value + rotateRadians) * handScale(value),\n }\n }\n\n function angleToValue (angle: number, insideClick: boolean): number {\n const value = (\n Math.round(angle / degreesPerUnit.value) +\n (insideClick ? roundCount.value : 0)\n ) % count.value + props.min\n\n // Necessary to fix edge case when selecting left part of the value(s) at 12 o'clock\n if (angle < (360 - degreesPerUnit.value / 2)) return value\n\n return insideClick ? props.max - roundCount.value + 1 : props.min\n }\n\n function getTransform (i: number) {\n const { x, y } = getPosition(i)\n return {\n left: `${Math.round(50 + x * 50)}%`,\n top: `${Math.round(50 + y * 50)}%`,\n }\n }\n\n function euclidean (p0: Point, p1: Point) {\n const dx = p1.x - p0.x\n const dy = p1.y - p0.y\n\n return Math.sqrt(dx * dx + dy * dy)\n }\n\n function angle (center: Point, p1: Point) {\n const value = 2 * Math.atan2(p1.y - center.y - euclidean(center, p1), p1.x - center.x)\n return Math.abs(value * 180 / Math.PI)\n }\n\n function setMouseDownValue (value: number) {\n if (valueOnMouseDown.value === null) {\n valueOnMouseDown.value = value\n }\n\n valueOnMouseUp.value = value\n update(value)\n }\n\n function onDragMove (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n if ((!isDragging.value && e.type !== 'click') || !clockRef.value) return\n const { width, top, left } = clockRef.value?.getBoundingClientRect()\n const { width: innerWidth }: DOMRect = innerClockRef.value?.getBoundingClientRect() ?? { width: 0 } as DOMRect\n const { clientX, clientY } = 'touches' in e ? e.touches[0] : e\n const center = { x: width / 2, y: -width / 2 }\n const coords = { x: clientX - left, y: top - clientY }\n const handAngle = Math.round(angle(center, coords) - props.rotate + 360) % 360\n const insideClick = props.double && euclidean(center, coords) < (innerWidth as number + innerWidth * innerRadiusScale.value) / 4\n const checksCount = Math.ceil(15 / degreesPerUnit.value)\n let value\n\n for (let i = 0; i < checksCount; i++) {\n value = angleToValue(handAngle + i * degreesPerUnit.value, insideClick)\n if (isAllowed(value)) return setMouseDownValue(value)\n\n value = angleToValue(handAngle - i * degreesPerUnit.value, insideClick)\n if (isAllowed(value)) return setMouseDownValue(value)\n }\n }\n\n function onMouseDown (e: MouseEvent | TouchEvent) {\n if (props.disabled) return\n\n e.preventDefault()\n\n window.addEventListener('mousemove', onDragMove)\n window.addEventListener('touchmove', onDragMove)\n window.addEventListener('mouseup', onMouseUp)\n window.addEventListener('touchend', onMouseUp)\n valueOnMouseDown.value = null\n valueOnMouseUp.value = null\n isDragging.value = true\n onDragMove(e)\n }\n\n function onMouseUp (e: MouseEvent | TouchEvent) {\n e.stopPropagation()\n removeListeners()\n\n isDragging.value = false\n if (valueOnMouseUp.value !== null && isAllowed(valueOnMouseUp.value)) {\n emit('change', valueOnMouseUp.value)\n }\n }\n\n function removeListeners () {\n window.removeEventListener('mousemove', onDragMove)\n window.removeEventListener('touchmove', onDragMove)\n window.removeEventListener('mouseup', onMouseUp)\n window.removeEventListener('touchend', onMouseUp)\n }\n\n onScopeDispose(removeListeners)\n\n useRender(() => {\n return (\n \n
\n \n\n {\n genChildren.value.map(value => {\n const isActive = value === displayedValue.value\n\n return (\n \n { props.format(value) }\n
\n )\n })\n }\n \n \n )\n })\n },\n})\n\nexport type VTimePickerClock = InstanceType\n", "// Styles\nimport './VTimePickerControls.sass'\n\n// Components\nimport { VTimePickerField } from './VTimePickerField'\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { ref, watch } from 'vue'\nimport { convert12to24, convert24to12, extractInteger, incrementHour, incrementMinuteOrSecond, pad } from './util'\nimport { clamp, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { Period, VTimePickerViewMode } from './shared'\n\nexport const makeVTimePickerControlsProps = propsFactory({\n ampm: Boolean,\n color: String,\n disabled: Boolean,\n hour: [Number, String] as PropType,\n minute: [Number, String] as PropType,\n second: [Number, String] as PropType,\n period: String as PropType,\n readonly: Boolean,\n useSeconds: Boolean,\n value: Number,\n viewMode: String as PropType,\n}, 'VTimePickerControls')\n\nexport const VTimePickerControls = genericComponent()({\n name: 'VTimePickerControls',\n\n props: makeVTimePickerControlsProps(),\n\n emits: {\n 'update:period': (data: Period) => true,\n 'update:viewMode': (data: VTimePickerViewMode) => true,\n 'update:hour': (v: number) => true,\n 'update:minute': (v: number) => true,\n 'update:second': (v: number) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n\n const transformHours = {\n in: (v?: number | string | null) => {\n if (v == null || isNaN(Number(v))) return null\n const val = Number(v)\n return props.ampm\n ? pad(convert24to12(val))\n : pad(val)\n },\n out: (v: number | string | null) => {\n if (isNaN(Number(v)) || v == null || v === '') return null\n const val = typeof v === 'string' ? extractInteger(v) : Number(v)\n if (val === null) return null\n return props.ampm\n ? convert12to24(val, props.period ?? 'am')\n : clamp(val, 0, 23)\n },\n }\n\n const hour: Ref = useProxiedModel(props, 'hour', undefined, transformHours.in, transformHours.out)\n\n const transformMinutesOrSeconds = {\n in: (v?: number | string | null) => v != null && !isNaN(Number(v)) ? pad(`${v}`) : null,\n out: (v: number | string | null) => {\n if (isNaN(Number(v)) || v == null || v === '') return null\n const val = typeof v === 'string' ? extractInteger(v) : Number(v)\n return val !== null\n ? clamp(val, 0, 59)\n : null\n },\n }\n\n const minute: Ref = useProxiedModel(\n props,\n 'minute',\n undefined,\n transformMinutesOrSeconds.in,\n transformMinutesOrSeconds.out,\n )\n\n const second: Ref = useProxiedModel(\n props,\n 'second',\n undefined,\n transformMinutesOrSeconds.in,\n transformMinutesOrSeconds.out,\n )\n\n function onHourFieldKeydown (e: KeyboardEvent) {\n if (!['ArrowUp', 'ArrowDown'].includes(e.key)) return\n e.preventDefault()\n e.stopPropagation()\n const current = Number(hour.value ?? 0)\n const period = props.ampm ? (props.period ?? 'am') : null\n const { value, togglePeriod } = incrementHour(current, e.key === 'ArrowUp', period)\n hour.value = pad(value)\n if (togglePeriod) {\n emit('update:period', props.period === 'am' ? 'pm' : 'am')\n }\n }\n\n function onMinuteFieldKeydown (e: KeyboardEvent) {\n if (!['ArrowUp', 'ArrowDown'].includes(e.key)) return\n e.preventDefault()\n e.stopPropagation()\n minute.value = incrementMinuteOrSecond(Number(minute.value), e.key === 'ArrowUp')\n }\n\n function onSecondFieldKeydown (e: KeyboardEvent) {\n if (!['ArrowUp', 'ArrowDown'].includes(e.key)) return\n e.preventDefault()\n e.stopPropagation()\n second.value = incrementMinuteOrSecond(Number(second.value), e.key === 'ArrowUp')\n }\n\n function createInputInterceptor (\n valueTransformOut: (v: string) => number | null,\n compare: (v: number | null) => boolean,\n apply: (v: string) => void,\n ) {\n return (e: InputEvent) => {\n if (!e.data) return\n const inputElement = e.target as HTMLInputElement\n const { value: existingTxt, selectionStart, selectionEnd } = inputElement ?? {}\n\n if (extractInteger(e.data) === null) {\n e.preventDefault()\n return\n }\n\n const potentialNewInputVal =\n existingTxt\n ? existingTxt.slice(0, selectionStart as number | undefined) + e.data + existingTxt.slice(selectionEnd as number | undefined)\n : e.data\n\n if (potentialNewInputVal.length > 2) {\n if (selectionStart === selectionEnd && selectionEnd === 0 && e.data.trim().startsWith('0')) {\n e.preventDefault()\n inputElement!.value = potentialNewInputVal.trim().substring(0, 2)\n apply(inputElement!.value)\n if (e.data.trim().length === 1) {\n inputElement!.setSelectionRange(1, 1)\n }\n return\n }\n if (selectionStart === selectionEnd && selectionEnd === 1 && existingTxt.startsWith('0')) {\n e.preventDefault()\n inputElement!.value = potentialNewInputVal.trim().substring(0, 2)\n apply(inputElement!.value)\n return\n }\n\n const maxValue = props.viewMode === 'hour' ? (props.ampm ? 12 : 23) : 59\n const value = extractInteger(potentialNewInputVal)!\n if (value > maxValue) {\n e.preventDefault()\n inputElement!.value = pad(String(extractInteger(e.data)).substring(0, 2))\n apply(inputElement!.value)\n return\n }\n }\n\n const potentialNewNumber = valueTransformOut(potentialNewInputVal)\n if (compare(potentialNewNumber)) {\n // ignore input when results in the same number\n // prevents typing more digits\n e.preventDefault()\n }\n }\n }\n\n const hourInputRef = ref()\n const minuteInputRef = ref()\n const secondInputRef = ref()\n\n watch(() => props.viewMode, (_, old) => {\n switch (old) {\n case 'hour': hourInputRef.value!.blur(); break\n case 'minute': minuteInputRef.value!.blur(); break\n case 'second': secondInputRef.value!.blur(); break\n }\n })\n\n const hourInputFilter = createInputInterceptor(\n transformHours.out,\n (v: number | null) => transformHours.in(v) === hour.value,\n (v: string) => hour.value = v,\n )\n\n const minuteInputFilter = createInputInterceptor(\n transformMinutesOrSeconds.out,\n (v: number | null) => transformMinutesOrSeconds.in(v) === minute.value,\n (v: string) => minute.value = v,\n )\n\n const secondInputFilter = createInputInterceptor(\n transformMinutesOrSeconds.out,\n (v: number | null) => transformMinutesOrSeconds.in(v) === second.value,\n (v: string) => second.value = v,\n )\n\n useRender(() => {\n return (\n
\n \n hour.value = v }\n onKeydown={ onHourFieldKeydown }\n onBeforeinput={ hourInputFilter }\n onFocus={ () => emit('update:viewMode', 'hour') }\n />\n\n :\n\n minute.value = v }\n onKeydown={ onMinuteFieldKeydown }\n onBeforeinput={ minuteInputFilter }\n onFocus={ () => emit('update:viewMode', 'minute') }\n />\n\n { props.useSeconds && (\n :\n )}\n\n { props.useSeconds && (\n second.value = v }\n onKeydown={ onSecondFieldKeydown }\n onBeforeinput={ secondInputFilter }\n onFocus={ () => emit('update:viewMode', 'second') }\n />\n )}\n\n { props.ampm && (\n
\n props.period !== 'am' ? emit('update:period', 'am') : null }\n />\n\n props.period !== 'pm' ? emit('update:period', 'pm') : null }\n />\n
\n )}\n
\n \n )\n })\n\n return {}\n },\n})\n\nexport type VTimePickerControls = InstanceType\n", "// Components\nimport { VTextField } from '@/components/VTextField'\n\n// Composables\nimport { useTextColor } from '@/composables/color'\nimport { forwardRefs } from '@/composables/forwardRefs'\n\n// Utilities\nimport { ref, shallowRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const makeVTimePickerFieldProps = propsFactory({\n active: Boolean,\n color: String,\n disabled: Boolean,\n label: String,\n modelValue: String as PropType,\n readonly: Boolean,\n}, 'VTimePickerField')\n\nexport const VTimePickerField = genericComponent()({\n name: 'VTimePickerField',\n\n inheritAttrs: false,\n\n props: makeVTimePickerFieldProps(),\n\n emits: {\n 'update:modelValue': (v: string | null) => true,\n },\n\n setup (props, { emit, attrs }) {\n const { textColorClasses, textColorStyles } = useTextColor(() => props.color)\n\n const vTextInputRef = ref()\n const isFocused = shallowRef(false)\n\n function onKeydown (e: KeyboardEvent) {\n if (['Backspace', 'Delete'].includes(e.key)) {\n e.preventDefault()\n\n const target = e.target as HTMLInputElement\n target.value = ''\n emit('update:modelValue', null)\n }\n }\n\n useRender(() => {\n return (\n
\n emit('update:modelValue', v) }\n onKeydown={ onKeydown }\n onFocus={ () => isFocused.value = true }\n onBlur={ () => isFocused.value = false }\n { ...attrs }\n />\n
{ props.label }
\n
\n )\n })\n\n return forwardRefs({}, vTextInputRef)\n },\n})\n\nexport type VTimePickerField = InstanceType\n", "// Types\nimport type { Period } from './shared'\n\nexport function pad (n: string | number, length = 2) {\n return String(n).padStart(length, '0')\n}\n\nexport function convert24to12 (hour: number) {\n return hour ? ((hour - 1) % 12 + 1) : 12\n}\n\nexport function convert12to24 (hour: number, period: Period) {\n return hour % 12 + (period === 'pm' ? 12 : 0)\n}\n\nexport function extractInteger (v: string): number | null {\n const digits = v.replaceAll(/\\D/g, '')\n return digits.length > 0\n ? Number(digits)\n : null\n}\n\nexport function incrementHour (hour: number, increment: boolean, period: Period | null) {\n if (period) {\n if (hour === 12 && increment) { return { value: 1 } }\n if (hour === 11 && increment) { return { value: 12, togglePeriod: true } }\n if (hour === 12 && !increment) { return { value: 11, togglePeriod: true } }\n if (hour === 1 && !increment) { return { value: 12 } }\n } else {\n if (hour === 23 && increment) { return { value: 0 } }\n if (hour === 0 && !increment) { return { value: 23 } }\n }\n return { value: hour + (increment ? 1 : -1) }\n}\n\nexport function incrementMinuteOrSecond (val: number, increment: boolean) {\n if (val === 59 && increment) return 0\n if (val === 0 && !increment) return 59\n return val + (increment ? 1 : -1)\n}\n", "// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { makeVListGroupProps, VListGroup } from '@/components/VList/VListGroup'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VListGroupSlots } from '@/components/VList/VListGroup'\n\nexport const makeVTreeviewGroupProps = propsFactory({\n ...omit(makeVListGroupProps({\n collapseIcon: '$treeviewCollapse',\n expandIcon: '$treeviewExpand',\n }), ['subgroup']),\n}, 'VTreeviewGroup')\n\nexport const VTreeviewGroup = genericComponent()({\n name: 'VTreeviewGroup',\n\n props: makeVTreeviewGroupProps(),\n\n setup (props, { slots }) {\n const vListGroupRef = ref()\n const toggleIcon = computed(() => vListGroupRef.value?.isOpen ? props.collapseIcon : props.expandIcon)\n\n const activatorDefaults = computed(() => ({\n VTreeviewItem: {\n prependIcon: undefined,\n appendIcon: undefined,\n toggleIcon: toggleIcon.value,\n },\n }))\n\n useRender(() => {\n const listGroupProps = VListGroup.filterProps(props)\n\n return (\n \n {{\n ...slots,\n activator: slots.activator ? slotProps => (\n <>\n \n { slots.activator?.(slotProps) }\n \n \n ) : undefined,\n }}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VTreeviewGroup = InstanceType\n", "// Styles\nimport './VTreeviewItem.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\nimport { VListItemAction } from '@/components/VList'\nimport { makeVListItemProps, VListItem } from '@/components/VList/VListItem'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, inject, ref, toRaw } from 'vue'\nimport { VTreeviewSymbol } from './shared'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { ToggleListItemSlot } from './shared'\nimport type { VListItemSlots } from '@/components/VList/VListItem'\nimport type { IndentLineType } from '@/util'\n\nexport const makeVTreeviewItemProps = propsFactory({\n loading: Boolean,\n hideActions: Boolean,\n hasCustomPrepend: Boolean,\n indentLines: Array as PropType,\n toggleIcon: IconValue,\n\n ...makeVListItemProps({ slim: true }),\n}, 'VTreeviewItem')\n\nexport type VTreeviewItemSlots = VListItemSlots & {\n toggle: ToggleListItemSlot & { loading: boolean }\n}\n\nexport const VTreeviewItem = genericComponent()({\n name: 'VTreeviewItem',\n\n props: makeVTreeviewItemProps(),\n\n emits: {\n toggleExpand: (value: PointerEvent) => true,\n },\n\n setup (props, { slots, emit }) {\n const visibleIds = inject(VTreeviewSymbol, { visibleIds: ref() }).visibleIds\n\n const vListItemRef = ref()\n\n const isActivatableGroupActivator = computed(() =>\n (vListItemRef.value?.root.activatable.value) &&\n vListItemRef.value?.isGroupActivator\n )\n const vListItemRefIsClickable = computed(() => (\n vListItemRef.value?.link.isClickable.value ||\n (props.value != null && !!vListItemRef.value?.list)\n ))\n const isClickable = computed(() =>\n !props.disabled &&\n props.link !== false &&\n (props.link || vListItemRefIsClickable.value || isActivatableGroupActivator.value)\n )\n const isFiltered = computed(() => visibleIds.value && !visibleIds.value.has(toRaw(vListItemRef.value?.id)))\n\n function activateGroupActivator (e: MouseEvent | KeyboardEvent) {\n if (isClickable.value && isActivatableGroupActivator.value) {\n vListItemRef.value?.activate(!vListItemRef.value?.isActivated, e)\n }\n }\n\n function onClickAction (e: PointerEvent) {\n e.preventDefault()\n e.stopPropagation()\n emit('toggleExpand', e)\n }\n\n useRender(() => {\n const listItemProps = VListItem.filterProps(props)\n const hasPrepend = slots.prepend ||\n props.toggleIcon ||\n props.indentLines ||\n props.prependIcon ||\n props.prependAvatar\n\n return (\n \n {{\n ...slots,\n prepend: hasPrepend ? slotProps => {\n return (\n <>\n { props.indentLines && props.indentLines.length > 0 ? (\n \n { props.indentLines.map(type => (\n
\n ))}\n
\n ) : '' }\n { !props.hideActions && (\n \n { props.toggleIcon ? (\n <>\n { !slots.toggle ? (\n \n {{\n loader: () => (\n \n ),\n }}\n
\n ) : (\n \n { slots.toggle({\n ...slotProps,\n loading: props.loading,\n props: {\n onClick: onClickAction,\n },\n })}\n \n )}\n \n ) : (\n
\n )}\n \n )}\n\n { !props.hasCustomPrepend ? (\n <>\n { slots.prepend?.(slotProps) }\n { props.prependAvatar && (\n \n )}\n\n { props.prependIcon && (\n \n )}\n \n ) : (\n \n { slots.prepend?.(slotProps) }\n \n )}\n \n )\n } : undefined,\n }}\n \n )\n })\n\n return forwardRefs({}, vListItemRef)\n },\n})\n\nexport type VTreeviewItem = InstanceType\n", "// Types\nimport type { ComputedRef, InjectionKey } from 'vue'\nimport type { ListItemSlot } from '@/components/VList/VListItem'\n\nexport interface TreeViewProvide {\n visibleIds: ComputedRef | null>\n}\n\nexport type ToggleListItemSlot = ListItemSlot & {\n props: { onClick: (e: PointerEvent) => void }\n}\n\nexport const VTreeviewSymbol: InjectionKey = Symbol.for('vuetify:v-treeview')\n", "// Components\nimport { VTreeviewGroup } from './VTreeviewGroup'\nimport { makeVTreeviewItemProps, VTreeviewItem } from './VTreeviewItem'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VDivider } from '@/components/VDivider'\nimport { VListItemAction, VListSubheader } from '@/components/VList'\n\n// Composables\nimport { makeDensityProps } from '@/composables/density'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, reactive, ref, toRaw } from 'vue'\nimport { genericComponent, getIndentLines, pick, propsFactory, renderSlot } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VTreeviewItemSlots } from './VTreeviewItem'\nimport type { InternalListItem } from '@/components/VList/VList'\nimport type { SelectStrategyProp } from '@/composables/nested/nested'\nimport type { GenericProps, IndentLinesVariant, IndentLineType } from '@/util'\n\nexport type VTreeviewChildrenSlots = {\n [K in keyof Omit]: VTreeviewItemSlots[K] & {\n item: T\n internalItem: InternalListItem\n }\n} & {\n default: never\n item: {\n props: InternalListItem['props']\n item: T\n internalItem: InternalListItem\n }\n header: {\n props: InternalListItem['props']\n item: T\n internalItem: InternalListItem\n loading: boolean\n }\n footer: {\n props: { indentLines?: IndentLineType[] }\n item: T\n internalItem: InternalListItem\n loading: boolean\n }\n divider: { props: InternalListItem['props'] }\n subheader: { props: InternalListItem['props'] }\n}\n\nexport const makeVTreeviewChildrenProps = propsFactory({\n fluid: Boolean,\n disabled: Boolean,\n loadChildren: Function as PropType<(item: unknown) => Promise>,\n loadingIcon: {\n type: String,\n default: '$loading',\n },\n items: Array as PropType,\n openOnClick: {\n type: Boolean,\n default: undefined,\n },\n indeterminateIcon: {\n type: IconValue,\n default: '$checkboxIndeterminate',\n },\n falseIcon: IconValue,\n trueIcon: IconValue,\n returnObject: Boolean,\n activatable: Boolean,\n selectable: Boolean,\n selectedColor: String,\n selectStrategy: [String, Function, Object] as PropType,\n index: Number,\n isLastGroup: Boolean,\n separateRoots: Boolean,\n parentIndentLines: Array as PropType,\n indentLinesVariant: String as PropType,\n path: {\n type: Array as PropType,\n default: () => [],\n },\n ...pick(makeVTreeviewItemProps(), ['hideActions']),\n ...makeDensityProps(),\n}, 'VTreeviewChildren')\n\nexport const VTreeviewChildren = genericComponent(\n props: {\n items?: readonly T[]\n },\n slots: VTreeviewChildrenSlots\n) => GenericProps>()({\n name: 'VTreeviewChildren',\n\n props: makeVTreeviewChildrenProps(),\n\n setup (props, { slots }) {\n const isLoading = reactive(new Set())\n const activatorItems = ref([])\n\n const isClickOnOpen = computed(() => (\n !props.disabled && (\n props.openOnClick != null\n ? props.openOnClick\n : props.selectable && !props.activatable\n )))\n\n async function checkChildren (item: InternalListItem) {\n try {\n if (!props.items?.length || !props.loadChildren) return\n\n if (item?.children?.length === 0) {\n isLoading.add(item.value)\n await props.loadChildren(item.raw)\n }\n } finally {\n isLoading.delete(item.value)\n }\n }\n\n function selectItem (select: (value: boolean) => void, isSelected: boolean) {\n if (props.selectable) {\n select(isSelected)\n }\n }\n\n return () => slots.default?.() ?? props.items?.map((item, index, items) => {\n const { children, props: itemProps } = item\n const loading = isLoading.has(item.value)\n const nextItemHasChildren = !!items.at(index + 1)?.children\n\n const depth = props.path?.length ?? 0\n const isLast = items.length - 1 === index\n const treeItemProps = {\n index,\n depth,\n isFirst: index === 0,\n isLast,\n path: [...props.path, index],\n hideAction: props.hideActions,\n }\n\n const indentLines = getIndentLines({\n depth,\n isLast,\n isLastGroup: props.isLastGroup,\n leafLinks: !props.hideActions && !props.fluid,\n separateRoots: props.separateRoots,\n parentIndentLines: props.parentIndentLines,\n variant: props.indentLinesVariant,\n })\n\n const slotsWithItem = {\n toggle: slots.toggle\n ? slotProps => slots.toggle?.({ ...slotProps, ...treeItemProps, item: item.raw, internalItem: item, loading })\n : undefined,\n prepend: slotProps => (\n <>\n { props.selectable && (!children || (children && !['leaf', 'single-leaf'].includes(props.selectStrategy as string))) && (\n \n selectItem(slotProps.select, v) }\n onClick={ (e: PointerEvent) => e.stopPropagation() }\n onKeydown={ (e: KeyboardEvent) => {\n if (!['Enter', 'Space'].includes(e.key)) return\n e.stopPropagation()\n selectItem(slotProps.select, slotProps.isSelected)\n }}\n />\n \n )}\n\n { slots.prepend?.({ ...slotProps, ...treeItemProps, item: item.raw, internalItem: item }) }\n \n ),\n append: slots.append\n ? slotProps => slots.append?.({ ...slotProps, ...treeItemProps, item: item.raw, internalItem: item })\n : undefined,\n title: slots.title ? slotProps => slots.title?.({ ...slotProps, item: item.raw, internalItem: item }) : undefined,\n subtitle: slots.subtitle ? slotProps => slots.subtitle?.({ ...slotProps, item: item.raw, internalItem: item }) : undefined,\n } satisfies VTreeviewItem['$props']['$children']\n\n const treeviewGroupProps = VTreeviewGroup.filterProps(itemProps)\n const treeviewChildrenProps = VTreeviewChildren.filterProps({ ...props, ...treeItemProps })\n\n const footerProps = {\n hideActions: props.hideActions,\n indentLines: indentLines.footer,\n }\n\n return children ? (\n \n {{\n activator: ({ props: activatorProps }) => {\n const listItemProps = {\n ...itemProps,\n ...activatorProps,\n value: itemProps?.value,\n hideActions: props.hideActions,\n indentLines: indentLines.node,\n onToggleExpand: [() => checkChildren(item), activatorProps.onClick] as any,\n onClick: props.disabled || itemProps.disabled\n ? undefined\n : isClickOnOpen.value\n ? [() => checkChildren(item), activatorProps.onClick] as any\n : () => selectItem(activatorItems.value[index]?.select, !activatorItems.value[index]?.isSelected),\n }\n\n return renderSlot(\n slots.header,\n { props: listItemProps, item: item.raw, internalItem: item, loading },\n () => (\n activatorItems.value[index] = el as VTreeviewItem }\n { ...listItemProps }\n hasCustomPrepend={ !!slots.prepend }\n value={ props.returnObject ? item.raw : itemProps.value }\n loading={ loading }\n v-slots={ slotsWithItem }\n />\n )\n )\n },\n default: () => (\n <>\n \n { slots.footer?.({ props: footerProps, item: item.raw, internalItem: item, loading }) }\n \n ),\n }}\n \n ) : renderSlot(\n slots.item,\n { props: itemProps, item: item.raw, internalItem: item },\n () => {\n if (item.type === 'divider') {\n return renderSlot(\n slots.divider,\n { props: item.raw },\n () => ,\n )\n }\n if (item.type === 'subheader') {\n return renderSlot(\n slots.subheader,\n { props: item.raw },\n () => ,\n )\n }\n return (\n \n )\n })\n })\n },\n})\n", "// Components\nimport { makeVTreeviewChildrenProps, VTreeviewChildren } from './VTreeviewChildren'\nimport { makeVListProps, useListItems, VList } from '@/components/VList/VList'\nimport { VListItem } from '@/components/VList/VListItem'\n\n// Composables\nimport { useLocale } from '@/composables'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, provide, ref, toRaw, toRef } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport { VTreeviewSymbol } from './shared'\nimport type { VTreeviewChildrenSlots } from './VTreeviewChildren'\nimport type { InternalListItem } from '@/components/VList/VList'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, IndentLinesVariant } from '@/util'\n\nfunction flatten (items: ListItem[], flat: ListItem[] = []) {\n for (const item of items) {\n flat.push(item)\n if (item.children) flatten(item.children, flat)\n }\n return flat\n}\n\nexport const makeVTreeviewProps = propsFactory({\n openAll: Boolean,\n indentLines: [Boolean, String] as PropType,\n search: String,\n hideNoData: Boolean,\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...omit(makeVTreeviewChildrenProps(), [\n 'index',\n 'path',\n 'indentLinesVariant',\n 'parentIndentLines',\n 'isLastGroup',\n ]),\n ...omit(makeVListProps({\n collapseIcon: '$treeviewCollapse',\n expandIcon: '$treeviewExpand',\n slim: true,\n }), ['nav', 'openStrategy']),\n\n modelValue: Array,\n}, 'VTreeview')\n\nexport const VTreeview = genericComponent(\n props: {\n items?: T[]\n opened?: O\n activated?: A\n selected?: S\n modelValue?: M\n 'onUpdate:opened'?: (value: O) => void\n 'onUpdate:activated'?: (value: A) => void\n 'onUpdate:selected'?: (value: S) => void\n 'onUpdate:modelValue'?: (value: M) => void\n },\n slots: VTreeviewChildrenSlots & {\n 'no-data': never\n }\n) => GenericProps>()({\n name: 'VTreeview',\n\n props: makeVTreeviewProps(),\n\n emits: {\n 'update:opened': (val: unknown) => true,\n 'update:activated': (val: unknown) => true,\n 'update:selected': (val: unknown) => true,\n 'update:modelValue': (val: unknown) => true,\n 'click:open': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n 'click:select': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n },\n\n setup (props, { slots, emit }) {\n const { t } = useLocale()\n const { items } = useListItems(props)\n const activeColor = toRef(() => props.activeColor)\n const baseColor = toRef(() => props.baseColor)\n const color = toRef(() => props.color)\n const activated = useProxiedModel(props, 'activated')\n const _selected = useProxiedModel(props, 'selected')\n\n const selected = computed({\n get: () => props.modelValue ?? _selected.value,\n set (val) {\n _selected.value = val\n emit('update:modelValue', val)\n },\n })\n\n const vListRef = ref()\n\n const opened = computed(() => props.openAll ? openAll(items.value) : props.opened)\n const flatItems = computed(() => flatten(items.value))\n const search = toRef(() => props.search)\n const { filteredItems } = useFilter(props, flatItems, search)\n const visibleIds = computed(() => {\n if (!search.value) return null\n const getPath = vListRef.value?.getPath\n if (!getPath) return null\n return new Set(filteredItems.value.flatMap(item => {\n const itemVal = props.returnObject ? item.raw : item.props.value\n return [\n ...getPath(itemVal),\n ...getChildren(itemVal),\n ].map(toRaw)\n }))\n })\n\n function getChildren (id: unknown) {\n const arr: unknown[] = []\n const queue = ((vListRef.value?.children.get(id) ?? []).slice())\n while (queue.length) {\n const child = queue.shift()\n if (!child) continue\n arr.push(child)\n queue.push(...((vListRef.value?.children.get(child) ?? []).slice()))\n }\n return arr\n }\n\n function openAll (items: InternalListItem[]) {\n let ids: any[] = []\n\n for (const i of items) {\n if (!i.children) continue\n\n ids.push(props.returnObject ? toRaw(i.raw) : i.value)\n\n if (i.children) {\n ids = ids.concat(openAll(i.children))\n }\n }\n\n return ids\n }\n\n provide(VTreeviewSymbol, { visibleIds })\n\n provideDefaults({\n VTreeviewGroup: {\n activeColor,\n baseColor,\n color,\n collapseIcon: toRef(() => props.collapseIcon),\n expandIcon: toRef(() => props.expandIcon),\n },\n VTreeviewItem: {\n activeClass: toRef(() => props.activeClass),\n activeColor,\n baseColor,\n color,\n density: toRef(() => props.density),\n disabled: toRef(() => props.disabled),\n lines: toRef(() => props.lines),\n variant: toRef(() => props.variant),\n },\n })\n\n useRender(() => {\n const listProps = VList.filterProps(props)\n const treeviewChildrenProps = VTreeviewChildren.filterProps(props)\n const indentLinesVariant = typeof props.indentLines === 'boolean' ? 'default' : props.indentLines\n\n return (\n \n { visibleIds.value?.size === 0 && !props.hideNoData && (\n slots['no-data']?.() ?? ()\n )}\n \n \n )\n })\n\n return { }\n },\n})\n\nexport type VTreeview = InstanceType\n", "// Composables\nimport { makeValidationProps, useValidation } from '@/composables/validation'\n\n// Utilities\nimport { genericComponent } from '@/util'\n\n// Types\nimport type { GenericProps } from '@/util'\n\nexport type VValidationSlots = {\n default: ReturnType\n}\n\nexport const VValidation = genericComponent(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VValidationSlots,\n) => GenericProps>()({\n name: 'VValidation',\n\n props: makeValidationProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const validation = useValidation(props, 'validation')\n\n return () => slots.default?.(validation)\n },\n})\n\nexport type VValidation = InstanceType\n"], + "mappings": "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", + "names": ["makeVAutocompleteProps", "propsFactory", "autoSelectFirst", "type", "Boolean", "String", "clearOnSelect", "search", "makeFilterProps", "filterKeys", "makeSelectProps", "omit", "makeVTextFieldProps", "modelValue", "role", "VAutocomplete", "genericComponent", "name", "props", "emits", "focused", "value", "setup", "_ref", "slots", "t", "useLocale", "vTextFieldRef", "ref", "isFocused", "shallowRef", "isPristine", "listHasFocus", "vMenuRef", "vVirtualScrollRef", "selectionIndex", "_searchLock", "items", "transformIn", "transformOut", "useItems", "textColorClasses", "textColorStyles", "useTextColor", "color", "InputIcon", "useInputIcon", "useProxiedModel", "model", "v", "wrapInArray", "transformed", "multiple", "counterValue", "computed", "length", "form", "useForm", "filteredItems", "getMatches", "useFilter", "displayItems", "hideSelected", "filter", "filteredItem", "some", "s", "closableChips", "toRef", "isReadonly", "isDisabled", "hasChips", "chips", "chip", "hasSelectionSlot", "selection", "selectedValues", "map", "firstSelectableItem", "find", "x", "disabled", "highlightFirst", "selectFirst", "title", "menuDisabled", "hideNoData", "_menu", "menu", "get", "set", "ΨopenChildren", "size", "menuId", "ariaExpanded", "ariaControls", "useMenuActivator", "listRef", "listEvents", "useScrolling", "onClear", "e", "openOnClear", "onMousedownControl", "onMousedownMenuIcon", "preventDefault", "stopPropagation", "onListKeydown", "checkPrintable", "key", "focus", "onKeydown", "selectionStart", "includes", "_ref2", "select", "originalSelectionIndex", "prev", "searchLength", "setSelectionRange", "next", "onChange", "matchesSelector", "item", "target", "onAfterEnter", "eager", "calculateVisibleItems", "onAfterLeave", "onFocusin", "setTimeout", "onFocusout", "onUpdateModelValue", "isSelecting", "arguments", "undefined", "index", "findIndex", "valueComparator", "deepEqual", "add", "splice", "nextTick", "watch", "val", "oldVal", "at", "IN_BROWSER", "window", "requestAnimationFrame", "scrollToIndex", "newVal", "useRender", "hasList", "isDirty", "textFieldProps", "VTextField", "filterProps", "_createVNode", "_mergeProps", "$event", "externalValue", "class", "style", "placeholder", "default", "_ref3", "id", "_createElementVNode", "_Fragment", "VMenu", "menuProps", "VList", "itemColor", "listProps", "VListItem", "noDataText", "VVirtualScroll", "_ref4", "itemRef", "itemProps", "mergeProps", "active", "onClick", "divider", "raw", "VDivider", "subheader", "VListSubheader", "prepend", "_ref5", "isSelected", "VCheckboxBtn", "event", "prependAvatar", "VAvatar", "prependIcon", "VIcon", "highlightResult", "onChipClose", "slotProps", "VChip", "onMousedown", "hasSlot", "slotContent", "ensureValidVNode", "_normalizeClass", "_normalizeStyle", "VDefaultsProvider", "closable", "text", "_createTextVNode", "_len", "args", "Array", "_key", "menuIcon", "fieldIconColor", "noop", "appendInnerIcon", "iconColor", "forwardRefs", "makeVBadgeProps", "propsFactory", "bordered", "Boolean", "color", "String", "content", "Number", "dot", "floating", "icon", "IconValue", "inline", "label", "type", "default", "max", "modelValue", "offsetX", "offsetY", "textColor", "makeComponentProps", "makeLocationProps", "location", "makeRoundedProps", "makeTagProps", "makeThemeProps", "makeTransitionProps", "transition", "makeDimensionProps", "VBadge", "genericComponent", "name", "inheritAttrs", "props", "setup", "ctx", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "roundedClasses", "useRounded", "t", "useLocale", "textColorClasses", "textColorStyles", "useTextColor", "themeClasses", "useTheme", "locationStyles", "useLocation", "side", "base", "includes", "dimensionStyles", "useDimension", "useRender", "value", "isNaN", "badgeAttrs", "attrs", "pickWithRest", "_createVNode", "tag", "_mergeProps", "class", "style", "_createElementVNode", "slots", "MaybeTransition", "_withDirectives", "undefined", "badge", "VIcon", "_vShow", "makeVBannerActionsProps", "propsFactory", "color", "String", "density", "makeComponentProps", "VBannerActions", "genericComponent", "name", "props", "setup", "_ref", "slots", "provideDefaults", "VBtn", "slim", "variant", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "default", "VBannerText", "createSimpleFunctional", "makeVBannerProps", "propsFactory", "avatar", "String", "bgColor", "color", "icon", "IconValue", "lines", "stacked", "Boolean", "sticky", "text", "makeBorderProps", "makeComponentProps", "makeDensityProps", "makeDimensionProps", "makeDisplayProps", "mobile", "makeElevationProps", "makeLocationProps", "makePositionProps", "makeRoundedProps", "makeTagProps", "makeThemeProps", "VBanner", "genericComponent", "name", "props", "setup", "_ref", "slots", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "borderClasses", "useBorder", "densityClasses", "useDensity", "displayClasses", "useDisplay", "dimensionStyles", "useDimension", "elevationClasses", "useElevation", "locationStyles", "useLocation", "positionClasses", "usePosition", "roundedClasses", "useRounded", "themeClasses", "provideTheme", "toRef", "density", "provideDefaults", "VBannerActions", "useRender", "hasText", "hasPrependMedia", "hasPrepend", "prepend", "_createVNode", "tag", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "default", "_createElementVNode", "VAvatar", "VDefaultsProvider", "image", "VBannerText", "actions", "makeVBottomSheetProps", "propsFactory", "inset", "Boolean", "makeVDialogProps", "transition", "VBottomSheet", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "isActive", "useProxiedModel", "useRender", "dialogProps", "VDialog", "filterProps", "_createVNode", "_mergeProps", "contentClass", "$event", "class", "style", "makeVIconBtnProps", "propsFactory", "active", "type", "Boolean", "default", "undefined", "activeColor", "String", "activeIcon", "Function", "Object", "activeVariant", "baseVariant", "disabled", "height", "Number", "width", "hideOverlay", "icon", "iconColor", "loading", "opacity", "readonly", "rotate", "size", "sizes", "Array", "text", "makeBorderProps", "makeComponentProps", "makeElevationProps", "makeIconSizeProps", "makeRoundedProps", "makeTagProps", "tag", "makeThemeProps", "makeVariantProps", "variant", "VIconBtn", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "attrs", "slots", "isActive", "useProxiedModel", "themeClasses", "provideTheme", "borderClasses", "useBorder", "elevationClasses", "useElevation", "roundedClasses", "useRounded", "colorClasses", "colorStyles", "variantClasses", "useVariant", "color", "btnSizeMap", "Map", "onClick", "href", "useRender", "_btnSize", "hasNamedSize", "has", "btnSize", "get", "btnHeight", "btnWidth", "iconSize", "useIconSizes", "iconSizes", "iconProps", "_createVNode", "_normalizeClass", "class", "_normalizeStyle", "convertToUnit", "style", "genOverlays", "_createElementVNode", "VIcon", "_mergeProps", "VDefaultsProvider", "toDisplayString", "loader", "VProgressCircular", "isLeapYear", "year", "PARSE_REGEX", "PARSE_TIME", "DAYS_IN_MONTH", "DAYS_IN_MONTH_LEAP", "DAYS_IN_MONTH_MIN", "DAYS_IN_MONTH_MAX", "MONTH_MAX", "MONTH_MIN", "DAY_MIN", "DAYS_IN_WEEK", "MINUTES_IN_HOUR", "MINUTE_MAX", "MINUTES_IN_DAY", "HOURS_IN_DAY", "HOUR_MAX", "FIRST_HOUR", "OFFSET_YEAR", "OFFSET_MONTH", "OFFSET_HOUR", "OFFSET_TIME", "getStartOfWeek", "timestamp", "weekdays", "today", "start", "copyTimestamp", "findWeekday", "prevDay", "updateFormatted", "updateRelative", "hasTime", "getEndOfWeek", "end", "length", "getStartOfMonth", "day", "updateWeekday", "getEndOfMonth", "daysInMonth", "year", "month", "validateNumber", "input", "isFinite", "parseInt", "validateTime", "exec", "hour", "minute", "parseTime", "parts", "validateTimestamp", "Date", "parseTimestamp", "required", "arguments", "undefined", "now", "date", "parseDate", "Error", "time", "weekday", "hasDay", "past", "present", "future", "getFullYear", "getMonth", "getDate", "getDay", "getHours", "getMinutes", "getDayIdentifier", "getTimeIdentifier", "getTimestampIdentifier", "a", "b", "isTimedless", "updateHasTime", "getTime", "updateMinutes", "minutes", "nextMinutes", "getWeekday", "_", "Math", "floor", "k", "m", "C", "Y", "isLeapYear", "padNumber", "x", "padded", "String", "str", "nextDay", "relativeDays", "mover", "days", "diffMinutes", "min", "max", "M", "D", "h", "maxDays", "getWeekdaySkips", "skips", "filled", "i", "skip", "j", "next", "timestampToDate", "createDayList", "weekdaySkips", "stop", "current", "currentIdentifier", "stopped", "push", "createIntervalList", "first", "count", "intervals", "mins", "int", "createNativeLocaleFormatter", "locale", "getOptions", "emptyFormatter", "_t", "_s", "Intl", "DateTimeFormat", "short", "intlFormatter", "format", "e", "validateWeekdays", "split", "Array", "isArray", "ints", "map", "visited", "wrapped", "d", "useTimes", "props", "times", "reactive", "now", "parseTimestamp", "today", "parsedNow", "computed", "validateTimestamp", "setPresent", "present", "past", "future", "getNow", "parseDate", "Date", "updateDay", "target", "date", "year", "month", "day", "weekday", "updateTime", "time", "hour", "minute", "updateTimes", "value", "watch", "makeCalendarBaseProps", "propsFactory", "start", "type", "String", "Number", "Date", "validate", "validateTimestamp", "default", "parseDate", "date", "end", "weekdays", "Array", "validateWeekdays", "firstDayOfWeek", "firstDayOfYear", "weekdayFormat", "Function", "dayFormat", "locale", "now", "validator", "useCalendarBase", "props", "times", "updateTimes", "useTimes", "provideLocale", "adapter", "useDate", "parsedStart", "computed", "getStartOfMonth", "parseTimestamp", "parsedEnd", "value", "getTimestampIdentifier", "getEndOfMonth", "parsedValue", "modelValue", "today", "parsedWeekdays", "isArray", "split", "map", "x", "parseInt", "first", "toJsDate", "startOfWeek", "getDay", "toSorted", "filter", "v", "effectiveWeekdays", "days", "categoryDays", "weekday", "from", "length", "_", "i", "weekdaySkips", "getWeekdaySkips", "createDayList", "dayFormatter", "createNativeLocaleFormatter", "current", "timeZone", "day", "weekdayFormatter", "_tms", "short", "getColorProps", "colors", "computeColor", "getRelativeClasses", "timestamp", "outside", "arguments", "undefined", "present", "past", "future", "getWeekNumber", "getWeek", "_getStartOfWeek", "getStartOfWeek", "_getEndOfWeek", "getEndOfWeek", "getFormatter", "options", "makeCalendarWithIntervalsProps", "propsFactory", "maxDays", "type", "Number", "default", "intervalHeight", "String", "validate", "validateNumber", "intervalWidth", "intervalMinutes", "firstInterval", "firstTime", "Object", "validateTime", "intervalCount", "intervalFormat", "Function", "intervalStyle", "showIntervalLabel", "useCalendarWithIntervals", "props", "base", "useCalendarBase", "scrollAreaRef", "shallowRef", "parsedFirstInterval", "computed", "parseInt", "parsedIntervalMinutes", "parsedIntervalCount", "parsedIntervalHeight", "parseFloat", "parsedFirstTime", "parseTime", "firstMinute", "time", "value", "MINUTES_IN_DAY", "bodyHeight", "days", "createDayList", "parsedStart", "parsedEnd", "times", "today", "weekdaySkips", "intervals", "daysValue", "first", "minutes", "count", "now", "map", "d", "createIntervalList", "intervalFormatter", "createNativeLocaleFormatter", "locale", "current", "tms", "short", "timeZone", "hour", "minute", "showIntervalLabelDefault", "interval", "isFirst", "intervalStyleDefault", "_interval", "undefined", "getTimestampAtEvent", "e", "day", "timestamp", "copyTimestamp", "bounds", "currentTarget", "getBoundingClientRect", "baseMinutes", "touchEvent", "mouseEvent", "touches", "changedTouches", "clientY", "addIntervals", "top", "addMinutes", "Math", "floor", "updateMinutes", "getSlotScope", "scope", "timeToY", "timeDelta", "minutesToPixels", "week", "intervalRange", "scrollToTime", "y", "pane", "scrollTop", "targetDateOrClamp", "arguments", "length", "clamp", "targetDate", "gap", "a", "getDayIdentifier", "b", "min", "VCalendarDaily", "defineComponent", "name", "directives", "vResize", "props", "color", "String", "shortWeekdays", "type", "Boolean", "default", "shortIntervals", "hideHeader", "makeCalendarBaseProps", "makeCalendarWithIntervalsProps", "setup", "_ref", "slots", "attrs", "scrollPush", "ref", "pane", "base", "useCalendarWithIntervals", "init", "nextTick", "onResize", "value", "getScrollPush", "scrollAreaRef", "offsetWidth", "genHead", "_createElementVNode", "marginRight", "genHeadIntervals", "genHeadDays", "width", "convertToUnit", "intervalWidth", "days", "map", "genHeadDay", "day", "index", "events", "getPrefixedEventHandlers", "nativeEvent", "getSlotScope", "_mergeProps", "date", "getRelativeClasses", "genHeadWeekday", "genHeadDayLabel", "genDayHeader", "week", "present", "undefined", "getColorProps", "text", "weekdayFormatter", "genHeadDayButton", "_createVNode", "VIconBtn", "noop", "dayFormatter", "genBody", "genScrollArea", "genPane", "height", "bodyHeight", "genDayContainer", "genBodyIntervals", "genDays", "getTimestampAtEvent", "genDayIntervals", "genDayBody", "intervals", "genDayInterval", "interval", "intervalHeight", "styler", "intervalStyle", "intervalStyleDefault", "time", "_normalizeStyle", "parsedStart", "genIntervalLabels", "length", "genIntervalLabel", "short", "shower", "showIntervalLabel", "showIntervalLabelDefault", "show", "label", "intervalFormatter", "onMounted", "useRender", "_withDirectives", "_normalizeClass", "class", "e", "preventDefault", "quiet", "parsedCategoryText", "category", "categoryText", "getParsedCategories", "categories", "split", "Array", "isArray", "map", "categoryName", "VCalendarCategory", "defineComponent", "name", "props", "categories", "type", "Array", "String", "default", "categoryText", "Function", "categoryForInvalid", "makeCalendarBaseProps", "makeCalendarWithIntervalsProps", "setup", "_ref", "slots", "attrs", "base", "useCalendarWithIntervals", "parsedCategories", "computed", "getParsedCategories", "getCategoryScope", "scope", "category", "cat", "categoryName", "genDayHeader", "_createElementVNode", "value", "map", "genDayHeaderCategory", "day", "headerTitle", "events", "getPrefixedEventHandlers", "getSlotScope", "_mergeProps", "genDayHeaderCategoryTitle", "genDays", "days", "forEach", "d", "j", "length", "fill", "push", "v", "i", "genDay", "index", "categoryIndex", "e", "getTimestampAtEvent", "date", "getRelativeClasses", "genDayIntervals", "genDayBody", "intervals", "genDayInterval", "interval", "height", "convertToUnit", "intervalHeight", "styler", "intervalStyle", "intervalStyleDefault", "time", "_normalizeStyle", "genDayBodyCategory", "useRender", "_createVNode", "VCalendarDaily", "VCalendarWeekly", "defineComponent", "name", "props", "minWeeks", "validate", "validateNumber", "default", "monthFormat", "Function", "showWeek", "Boolean", "color", "String", "shortWeekdays", "type", "showMonthOnFirst", "shortMonths", "hideHeader", "makeCalendarBaseProps", "setup", "_ref", "slots", "attrs", "base", "useCalendarBase", "theme", "useTheme", "parsedMinWeeks", "computed", "parseInt", "days", "minDays", "value", "parsedWeekdays", "length", "start", "getStartOfWeek", "parsedStart", "end", "getEndOfWeek", "parsedEnd", "createDayList", "times", "today", "weekdaySkips", "Number", "MAX_SAFE_INTEGER", "todayWeek", "monthFormatter", "createNativeLocaleFormatter", "locale", "current", "_tms", "short", "timeZone", "month", "isOutside", "day", "dayIdentifier", "getDayIdentifier", "genHead", "_createElementVNode", "genHeadDays", "header", "map", "genHeadDay", "unshift", "index", "outside", "present", "undefined", "_mergeProps", "getColorProps", "text", "date", "getRelativeClasses", "weekdayFormatter", "genWeeks", "daysValue", "weekDays", "weeks", "i", "push", "genWeek", "slice", "getWeekNumber", "week", "weekNumber", "weekNodes", "genDay", "genWeekNumber", "determineDay", "events", "getPrefixedEventHandlers", "nativeEvent", "genDayLabel", "genDayLabelButton", "hasMonth", "_createVNode", "VIconBtn", "noop", "dayFormatter", "useRender", "_normalizeClass", "themeClasses", "e", "preventDefault", "MILLIS_IN_DAY", "getVisuals", "events", "minStart", "arguments", "length", "undefined", "visuals", "map", "event", "columnCount", "column", "left", "width", "sort", "a", "b", "Math", "max", "startTimestampIdentifier", "endTimestampIdentifier", "hasOverlap", "s0", "e0", "s1", "e1", "exclude", "setColumnCount", "groups", "forEach", "group", "groupVisual", "getRange", "getDayRange", "startIdentifier", "endIdentifier", "getNormalizedRange", "dayStart", "min", "getOpenGroup", "start", "end", "timed", "i", "intersected", "k", "groupStart", "groupEnd", "getOverlapGroupHandler", "firstWeekday", "handler", "reset", "day", "dayEvents", "weekday", "getTimestampIdentifier", "visual", "targetGroup", "push", "target", "FULL_WIDTH", "column", "events", "firstWeekday", "overlapThreshold", "handler", "getOverlapGroupHandler", "day", "dayEvents", "timed", "reset", "visuals", "getVisuals", "forEach", "visual", "left", "columnCount", "width", "FULL_WIDTH", "DEFAULT_OFFSET", "WIDTH_MULTIPLIER", "stack", "events", "firstWeekday", "overlapThreshold", "handler", "getOverlapGroupHandler", "day", "dayEvents", "timed", "reset", "getVisuals", "dayStart", "getTimestampIdentifier", "visuals", "groups", "getGroups", "group", "nodes", "visual", "child", "getNode", "index", "getNextIndex", "parent", "getParent", "sibling", "hasOverlap", "start", "end", "addTime", "children", "push", "getOverlappingRange", "length", "grand", "grandNext", "calculateBounds", "sort", "a", "b", "left", "event", "startTimestampIdentifier", "node", "columns", "getMaxChildIndex", "spaceLeft", "spaceWidth", "offset", "Math", "min", "columnWidthMultiplier", "getColumnWidthMultiplier", "columnOffset", "columnWidth", "width", "hasFullWidth", "maxColumn", "minColumn", "reduce", "c", "getOverlappingIndices", "indices", "other", "i", "indexMin", "indexMax", "returnFirstColumn", "arguments", "undefined", "overlapping", "first", "n", "filter", "getNormalizedRange", "added", "max", "childMax", "identifier", "minutes", "removeMinutes", "totalMinutes", "addHours", "floor", "addMinutes", "CalendarEventOverlapModes", "stack", "column", "parseEvent", "input", "index", "startProperty", "endProperty", "timed", "arguments", "length", "undefined", "category", "startInput", "endInput", "startParsed", "parseTimestamp", "endParsed", "start", "isTimedless", "updateHasTime", "end", "startIdentifier", "getDayIdentifier", "startTimestampIdentifier", "getTimestampIdentifier", "endIdentifier", "endOffset", "hasTime", "endTimestampIdentifier", "allDay", "isEventOn", "event", "dayIdentifier", "isEventOnDay", "day", "inRange", "dayStart", "nextMinutes", "copyTimestamp", "dayEnd", "starts", "ends", "isEventHiddenOn", "time", "date", "isEventStart", "firstWeekday", "weekday", "isEventOverlapping", "WIDTH_FULL", "WIDTH_START", "makeCalendarWithEventsProps", "propsFactory", "events", "type", "Array", "default", "eventStart", "String", "eventEnd", "eventTimed", "Function", "eventCategory", "eventHeight", "Number", "eventColor", "eventTextColor", "eventName", "eventOverlapThreshold", "eventOverlapMode", "validate", "mode", "CalendarEventOverlapModes", "eventMore", "Boolean", "eventMoreText", "eventRipple", "Object", "eventMarginBottom", "useCalendarWithEvents", "props", "slots", "attrs", "base", "useCalendarBase", "noEvents", "computed", "isArray", "length", "categoryMode", "eventTimedFunction", "event", "eventCategoryFunction", "parsedEvents", "map", "index", "parseEvent", "value", "parsedEventOverlapThreshold", "parseInt", "eventTextColorFunction", "eventNameFunction", "timedEvent", "input", "eventModeFunction", "eventWeekdays", "effectiveWeekdays", "eventColorFunction", "e", "color", "eventsRef", "ref", "updateEventVisibility", "eventsMap", "getEventsMap", "date", "parent", "more", "parentBounds", "getBoundingClientRect", "last", "eventsSorted", "bottom", "sort", "a", "b", "hidden", "i", "hide", "style", "display", "innerHTML", "locale", "t", "elements", "forEach", "el", "getAttribute", "parentElement", "push", "genDayEvent", "_ref", "day", "dayIdentifier", "getDayIdentifier", "week", "start", "startIdentifier", "end", "endIdentifier", "width", "WIDTH_START", "weekdayIdentifier", "WIDTH_FULL", "scope", "eventParsed", "timed", "genEvent", "class", "height", "marginBottom", "genTimedEvent", "_ref2", "left", "startDelta", "timeDelta", "endDelta", "isEventHiddenOn", "top", "timeToY", "Math", "max", "scopeInput", "data", "slot", "text", "background", "overlapsNoon", "hour", "singline", "diffMinutes", "formatTime", "withTime", "ampm", "formatter", "getFormatter", "timeZone", "minute", "undefined", "timeSummary", "eventSummary", "name", "hasTime", "time", "delimiter", "_createElementVNode", "_createTextVNode", "outside", "getPrefixedEventHandlers", "nativeEvent", "_withDirectives", "_mergeProps", "getColorProps", "genName", "vRipple", "genPlaceholder", "genMore", "getVisibleEvents", "days", "filter", "isEventOverlapping", "isEventForCategory", "category", "categoryName", "getEventsForDay", "identifier", "firstWeekday", "isEventStart", "getEventsForDayAll", "allDay", "isEventOn", "getEventsForDayTimed", "isEventOnDay", "intervalRange", "getScopedSlots", "isNode", "getSlotChildren", "getter", "mapper", "visuals", "visual", "children", "column", "mapped", "concat", "VCalendar", "genericComponent", "name", "directives", "vResize", "props", "modelValue", "type", "String", "Number", "Date", "validate", "validateTimestamp", "categoryDays", "default", "x", "isFinite", "parseInt", "categories", "Array", "categoryText", "Function", "maxDays", "categoryHideDynamic", "Boolean", "categoryShowAll", "categoryForInvalid", "makeCalendarBaseProps", "makeCalendarWithEventsProps", "setup", "_ref", "slots", "attrs", "emit", "root", "ref", "base", "useCalendarWithEvents", "lastStart", "lastEnd", "parsedCategoryDays", "computed", "parsedCategories", "getParsedCategories", "renderProps", "around", "parsedValue", "value", "component", "start", "end", "VCalendarWeekly", "getStartOfMonth", "getEndOfMonth", "VCalendarDaily", "getStartOfWeek", "getEndOfWeek", "relativeDays", "copyTimestamp", "nextDay", "updateFormatted", "parsedStart", "parsedEnd", "days", "VCalendarCategory", "getCategoryList", "Error", "eventWeekdays", "effectiveWeekdays", "categoryMode", "monthLongFormatter", "getFormatter", "timeZone", "month", "monthShortFormatter", "title", "spanYears", "year", "spanMonths", "checkChange", "date", "move", "amount", "arguments", "length", "undefined", "moved", "forward", "mover", "prevDay", "limit", "DAYS_IN_MONTH_MAX", "DAY_MIN", "times", "day", "DAYS_IN_WEEK", "updateWeekday", "updateRelative", "now", "timestampToDate", "getTime", "next", "prev", "noEvents", "categoryMap", "reduce", "map", "category", "index", "categoryName", "count", "categoryLength", "parsedEvents", "forEach", "ev", "filter", "hasOwnProperty", "watch", "onMounted", "updateEventVisibility", "onUpdated", "window", "requestAnimationFrame", "useRender", "Component", "_withDirectives", "_createVNode", "_mergeProps", "filterProps", "onClick:date", "e", "getScopedSlots", "quiet", "forwardRefs", "VWindowSymbol", "Symbol", "for", "VWindowGroupSymbol", "makeVWindowProps", "propsFactory", "continuous", "Boolean", "nextIcon", "type", "String", "Function", "Object", "default", "prevIcon", "reverse", "showArrows", "validator", "v", "verticalArrows", "touch", "undefined", "direction", "modelValue", "disabled", "selectedClass", "mandatory", "crossfade", "transitionDuration", "Number", "makeComponentProps", "makeTagProps", "makeThemeProps", "VWindow", "genericComponent", "name", "directives", "vTouch", "props", "emits", "value", "setup", "_ref", "slots", "themeClasses", "provideTheme", "isRtl", "useRtl", "t", "useLocale", "group", "useGroup", "rootRef", "ref", "isRtlReverse", "computed", "isReversed", "shallowRef", "transition", "axis", "transitionCount", "transitionHeight", "activeIndex", "items", "findIndex", "item", "selected", "includes", "id", "watch", "newVal", "oldVal", "scrollableParent", "savedScrollPosition", "left", "top", "IN_BROWSER", "getScrollParent", "scrollLeft", "scrollTop", "itemsLength", "length", "lastIndex", "nextTick", "currentScrollY", "scrollTo", "behavior", "requestAnimationFrame", "rafScrollY", "flush", "provide", "canMoveBack", "toRef", "canMoveForward", "prev", "next", "arrows", "prevProps", "icon", "class", "onClick", "push", "_createVNode", "VBtn", "_createElementVNode", "nextProps", "touchOptions", "options", "right", "start", "_ref2", "originalEvent", "stopPropagation", "useRender", "_withDirectives", "tag", "_normalizeClass", "_normalizeStyle", "style", "PREFERS_REDUCED_MOTION", "convertToUnit", "height", "additional", "makeVCarouselProps", "propsFactory", "color", "String", "cycle", "Boolean", "delimiterIcon", "type", "IconValue", "default", "height", "Number", "hideDelimiters", "hideDelimiterBackground", "interval", "validator", "value", "progress", "verticalDelimiters", "makeVWindowProps", "continuous", "mandatory", "showArrows", "VCarousel", "genericComponent", "name", "props", "emits", "setup", "_ref", "slots", "model", "useProxiedModel", "t", "useLocale", "windowRef", "ref", "slideTimeout", "watch", "restartTimeout", "val", "window", "clearTimeout", "onMounted", "startTimeout", "setTimeout", "group", "next", "requestAnimationFrame", "useRender", "windowProps", "VWindow", "filterProps", "_createVNode", "_mergeProps", "$event", "class", "convertToUnit", "style", "additional", "_ref2", "_createElementVNode", "_Fragment", "left", "right", "items", "length", "VDefaultsProvider", "VBtn", "icon", "size", "variant", "map", "item", "index", "id", "isSelected", "onClick", "select", "VProgressLinear", "undefined", "getItemIndex", "prev", "makeVWindowItemProps", "propsFactory", "reverseTransition", "type", "Boolean", "String", "default", "undefined", "transition", "makeComponentProps", "makeGroupItemProps", "makeLazyProps", "VWindowItem", "genericComponent", "name", "directives", "vTouch", "props", "emits", "val", "setup", "_ref", "slots", "window", "inject", "VWindowSymbol", "groupItem", "useGroupItem", "VWindowGroupSymbol", "isBooted", "useSsrBoot", "Error", "isTransitioning", "shallowRef", "hasTransition", "computed", "value", "isReversed", "onAfterTransition", "transitionCount", "transitionHeight", "onBeforeTransition", "convertToUnit", "rootRef", "clientHeight", "onTransitionCancelled", "onEnterTransition", "el", "nextTick", "onBeforeEnter", "onAfterEnter", "onEnterCancelled", "onBeforeLeave", "onAfterLeave", "onLeaveCancelled", "onEnter", "hasContent", "useLazy", "isSelected", "useRender", "_createVNode", "MaybeTransition", "_withDirectives", "_createElementVNode", "_normalizeClass", "selectedClass", "class", "_normalizeStyle", "style", "_vShow", "makeVCarouselItemProps", "propsFactory", "makeVImgProps", "makeVWindowItemProps", "VCarouselItem", "genericComponent", "name", "inheritAttrs", "props", "setup", "_ref", "slots", "attrs", "useRender", "imgProps", "VImg", "filterProps", "windowItemProps", "VWindowItem", "_createVNode", "_mergeProps", "class", "default", "VCode", "createSimpleFunctional", "makeVColorPickerCanvasProps", "propsFactory", "color", "type", "Object", "disabled", "Boolean", "dotSize", "Number", "String", "default", "height", "width", "makeComponentProps", "VColorPickerCanvas", "defineComponent", "name", "props", "emits", "hue", "setup", "_ref", "emit", "isInteracting", "shallowRef", "canvasRef", "ref", "canvasWidth", "parseFloat", "canvasHeight", "_dotPosition", "x", "y", "dotPosition", "computed", "get", "value", "set", "val", "h", "s", "clamp", "v", "a", "dotStyles", "radius", "parseInt", "convertToUnit", "transform", "resizeRef", "useResizeObserver", "entries", "el", "offsetParent", "contentRect", "updateDotPosition", "rect", "left", "top", "handleMouseDown", "e", "preventDefault", "handleMouseMove", "window", "addEventListener", "handleMouseUp", "coords", "getEventCoordinates", "clientX", "clientY", "getBoundingClientRect", "removeEventListener", "updateCanvas", "canvas", "ctx", "getContext", "saturationGradient", "createLinearGradient", "addColorStop", "fillStyle", "fillRect", "valueGradient", "watch", "immediate", "newVal", "oldVal", "flush", "deep", "onMounted", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "stripAlpha", "color", "a", "rest", "extractColor", "input", "hasA", "startsWith", "r", "g", "b", "HSVtoRGB", "h", "s", "l", "HSVtoHSL", "Math", "round", "hex", "HSVtoHex", "slice", "converted", "has", "nullColor", "h", "s", "v", "a", "rgba", "inputProps", "type", "min", "inputs", "label", "max", "step", "getValue", "c", "Math", "round", "r", "getColor", "Number", "localeKey", "g", "b", "_ref", "to", "HSVtoRGB", "from", "RGBtoHSV", "rgb", "slice", "hsla", "l", "_ref2", "HSVtoHSL", "HSLtoHSV", "hsl", "hexa", "HSVtoHex", "HexToHSV", "hex", "modes", "VColorPickerInput", "_ref", "label", "rest", "_createElementVNode", "_normalizeProps", "_guardReactiveProps", "makeVColorPickerEditProps", "propsFactory", "color", "Object", "disabled", "Boolean", "mode", "type", "String", "default", "validator", "v", "keys", "modes", "includes", "Array", "isArray", "every", "m", "makeComponentProps", "VColorPickerEdit", "defineComponent", "name", "props", "emits", "setup", "_ref2", "emit", "t", "useLocale", "enabledModes", "computed", "map", "key", "inputs", "value", "find", "to", "_ref3", "getValue", "getColor", "localeKey", "inputProps", "ariaLabel", "onChange", "e", "target", "from", "nullColor", "useRender", "_normalizeClass", "class", "_normalizeStyle", "style", "_createVNode", "length", "VBtn", "onClick", "mi", "findIndex", "makeVColorPickerPreviewProps", "propsFactory", "color", "type", "Object", "disabled", "Boolean", "hideAlpha", "hideEyeDropper", "eyeDropperIcon", "IconValue", "default", "makeComponentProps", "VColorPickerPreview", "defineComponent", "name", "props", "emits", "setup", "_ref", "emit", "t", "useLocale", "abortController", "AbortController", "onUnmounted", "abort", "openEyeDropper", "SUPPORTS_EYE_DROPPER", "eyeDropper", "window", "EyeDropper", "result", "open", "signal", "colorHexValue", "RGBtoHSV", "parseColor", "sRGBHex", "nullColor", "e", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "_createVNode", "VBtn", "background", "HSVtoCSS", "VSlider", "h", "a", "red", "base", "lighten5", "lighten4", "lighten3", "lighten2", "lighten1", "darken1", "darken2", "darken3", "darken4", "accent1", "accent2", "accent3", "accent4", "pink", "purple", "deepPurple", "indigo", "blue", "lightBlue", "cyan", "teal", "green", "lightGreen", "lime", "yellow", "amber", "orange", "deepOrange", "brown", "blueGrey", "grey", "shades", "black", "white", "transparent", "makeVColorPickerSwatchesProps", "propsFactory", "swatches", "type", "Array", "default", "parseDefaultColors", "colors", "disabled", "Boolean", "color", "Object", "maxHeight", "Number", "String", "makeComponentProps", "keys", "map", "key", "base", "darken4", "darken3", "darken2", "darken1", "lighten1", "lighten2", "lighten3", "lighten4", "lighten5", "black", "white", "transparent", "VColorPickerSwatches", "defineComponent", "name", "props", "emits", "setup", "_ref", "emit", "onSwatchClick", "hsva", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "convertToUnit", "style", "swatch", "rgba", "parseColor", "RGBtoHSV", "background", "RGBtoCSS", "onClick", "deepEqual", "_createVNode", "VIcon", "getContrast", "undefined", "VPickerTitle", "createSimpleFunctional", "makeVPickerProps", "propsFactory", "bgColor", "String", "divided", "Boolean", "landscape", "title", "hideHeader", "hideTitle", "makeVSheetProps", "VPicker", "genericComponent", "name", "props", "setup", "_ref", "slots", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "color", "useRender", "sheetProps", "VSheet", "filterProps", "hasTitle", "_createVNode", "_mergeProps", "actions", "class", "style", "default", "_createElementVNode", "_normalizeClass", "value", "_normalizeStyle", "VPickerTitle", "header", "VDefaultsProvider", "VBtn", "slim", "variant", "makeVColorPickerProps", "propsFactory", "canvasHeight", "type", "String", "Number", "default", "disabled", "Boolean", "dotSize", "hideCanvas", "hideSliders", "hideInputs", "mode", "validator", "v", "Object", "keys", "modes", "includes", "Array", "isArray", "every", "m", "showSwatches", "swatches", "swatchesMaxHeight", "modelValue", "makeVPickerProps", "hideHeader", "pick", "makeVColorPickerPreviewProps", "VColorPicker", "defineComponent", "name", "props", "emits", "color", "setup", "_ref", "slots", "useProxiedModel", "hue", "ref", "model", "undefined", "c", "RGBtoHSV", "parseColor", "err", "consoleWarn", "extractColor", "currentColor", "computed", "value", "h", "rtlClasses", "useRtl", "externalChange", "watch", "immediate", "updateColor", "hsva", "onBeforeMount", "provideDefaults", "VSlider", "trackColor", "trackFillColor", "useRender", "pickerProps", "VPicker", "filterProps", "_createVNode", "_mergeProps", "class", "HSVtoCSS", "nullColor", "a", "style", "_createElementVNode", "_Fragment", "VColorPickerCanvas", "width", "VColorPickerPreview", "endsWith", "hideEyeDropper", "eyeDropperIcon", "VColorPickerEdit", "VColorPickerSwatches", "makeVConfirmEditProps", "propsFactory", "modelValue", "color", "String", "cancelText", "type", "default", "okText", "disabled", "Boolean", "Array", "undefined", "hideActions", "VConfirmEdit", "genericComponent", "name", "props", "emits", "cancel", "save", "value", "setup", "_ref", "emit", "slots", "model", "useProxiedModel", "internalModel", "ref", "watchEffect", "structuredClone", "deepToRaw", "t", "useLocale", "isPristine", "computed", "deepEqual", "isActionDisabled", "action", "isArray", "includes", "isSaveDisabled", "isCancelDisabled", "actions", "actionsProps", "_createElementVNode", "_Fragment", "_createVNode", "VBtn", "_mergeProps", "actionsUsed", "useRender", "makeDataIteratorItemsProps", "propsFactory", "items", "type", "Array", "default", "itemValue", "String", "Function", "itemSelectable", "returnObject", "Boolean", "transformItem", "props", "item", "value", "getPropertyFromItem", "selectable", "raw", "transformItems", "array", "push", "useDataIteratorItems", "computed", "makeVDataIteratorProps", "propsFactory", "search", "String", "loading", "Boolean", "makeComponentProps", "makeDataIteratorItemsProps", "makeDataTableSelectProps", "makeDataTableSortProps", "makeDataTablePaginateProps", "itemsPerPage", "makeDataTableExpandProps", "makeDataTableGroupProps", "makeFilterProps", "makeTagProps", "makeTransitionProps", "transition", "component", "VFadeTransition", "hideOnLeave", "VDataIterator", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "groupBy", "useProxiedModel", "toRef", "items", "useDataIteratorItems", "filteredItems", "useFilter", "transform", "item", "raw", "initialSortOrder", "sortBy", "multiSort", "mustSort", "createSort", "page", "createPagination", "toggleSort", "provideSort", "sortByWithGroups", "opened", "extractRows", "isGroupOpen", "toggleGroup", "provideGroupBy", "sortedItems", "useSortedItems", "flatItems", "useGroupedItems", "itemsLength", "length", "startIndex", "stopIndex", "pageCount", "prevPage", "nextPage", "setItemsPerPage", "setPage", "providePagination", "paginatedItems", "usePaginatedItems", "paginatedItemsWithoutGroups", "computed", "isSelected", "select", "selectAll", "toggleSelect", "provideSelection", "allItems", "currentPage", "isExpanded", "toggleExpand", "provideExpanded", "useOptions", "slotProps", "itemsCount", "groupedItems", "useRender", "_createVNode", "tag", "_normalizeClass", "class", "_normalizeStyle", "style", "default", "header", "MaybeTransition", "LoaderSlot", "loader", "_createElementVNode", "footer", "makeVDatePickerControlsProps", "propsFactory", "active", "type", "String", "Array", "default", "undefined", "controlHeight", "Number", "controlVariant", "noMonthPicker", "Boolean", "disabled", "nextIcon", "IconValue", "prevIcon", "modeIcon", "text", "monthText", "yearText", "viewMode", "VDatePickerControls", "genericComponent", "name", "props", "emits", "click:year", "click:month", "click:prev", "click:next", "click:prev-year", "click:next-year", "setup", "_ref", "emit", "slots", "t", "useLocale", "disableMonth", "computed", "isArray", "includes", "disableYear", "disablePrevMonth", "disableNextMonth", "disablePrevYear", "disableNextYear", "onClickPrevMonth", "onClickNextMonth", "onClickPrevYear", "onClickNextYear", "onClickYear", "onClickMonth", "useRender", "innerDefaults", "VBtn", "density", "variant", "prevMonth", "_createVNode", "value", "nextMonth", "prevYear", "nextYear", "onlyMonthBtn", "onlyYearBtn", "monthYearBtn", "monthYearSplit", "_createElementVNode", "_Fragment", "slotProps", "monthYearText", "openMonths", "openYears", "modalControls", "VSpacer", "dockedControls", "VDefaultsProvider", "_normalizeClass", "convertToUnit", "makeVDatePickerHeaderProps", "propsFactory", "appendIcon", "IconValue", "color", "String", "header", "transition", "onClick", "EventProp", "VDatePickerHeader", "genericComponent", "name", "props", "emits", "click", "click:append", "setup", "_ref", "emit", "slots", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "onClickAppend", "useRender", "hasContent", "default", "hasAppend", "append", "_createElementVNode", "_normalizeClass", "value", "_normalizeStyle", "prepend", "_createVNode", "MaybeTransition", "VBtn", "VDefaultsProvider", "icon", "variant", "makeCalendarProps", "propsFactory", "allowedDates", "Array", "Function", "disabled", "type", "Boolean", "default", "displayValue", "modelValue", "month", "Number", "String", "max", "min", "showAdjacentMonths", "year", "weekdays", "weeksInMonth", "firstDayOfWeek", "undefined", "firstDayOfYear", "weekdayFormat", "useCalendar", "props", "adapter", "useDate", "model", "useProxiedModel", "v", "wrapInArray", "map", "i", "date", "computed", "value", "length", "isArray", "getYear", "startOfYear", "setYear", "getMonth", "startOfMonth", "setMonth", "weekdayLabels", "toJsDate", "startOfWeek", "getDay", "getWeekdays", "filter", "_", "includes", "weeks", "getWeekArray", "days", "flat", "daysInMonth", "lastDay", "week", "day", "push", "addDays", "genDays", "today", "index", "isoDate", "toISO", "isAdjacent", "isSameMonth", "isStart", "isSameDay", "isEnd", "endOfMonth", "isSame", "weekdaysCount", "formatted", "format", "isDisabled", "isHidden", "isSelected", "some", "isToday", "isWeekEnd", "isWeekStart", "localized", "daysInWeek", "weekNumbers", "getWeek", "minDate", "maxDate", "useCalendarRange", "isBefore", "endOfDay", "isAfter", "d", "isValid", "clampDate", "isInAllowedRange", "makeVDatePickerMonthProps", "propsFactory", "color", "String", "hideWeekdays", "Boolean", "multiple", "Number", "showWeek", "transition", "type", "default", "reverseTransition", "events", "Array", "Function", "Object", "eventColor", "omit", "makeCalendarProps", "VDatePickerMonth", "genericComponent", "name", "props", "emits", "date", "setup", "_ref", "emit", "slots", "daysRef", "ref", "t", "useLocale", "daysInMonth", "model", "weekNumbers", "weekdayLabels", "useCalendar", "adapter", "useDate", "rangeStart", "shallowRef", "rangeStop", "isReverse", "toRef", "value", "length", "atMax", "computed", "max", "includes", "Infinity", "watch", "val", "oldVal", "isBefore", "onRangeClick", "_value", "startOfDay", "undefined", "isSameDay", "endOfDay", "createDateRange", "getDateAriaLabel", "item", "fullDate", "format", "localeKey", "isToday", "onMultipleClick", "index", "findIndex", "selection", "splice", "onClick", "getEventColors", "eventData", "eventColors", "isArray", "wrapInArray", "filter", "map", "genEvents", "_createElementVNode", "_createVNode", "VBadge", "useRender", "weekdays", "_createTextVNode", "week", "_normalizeClass", "MaybeTransition", "toString", "weekDay", "i", "slotProps", "class", "isSelected", "disabled", "isDisabled", "icon", "ripple", "variant", "isAdjacent", "isHidden", "isWeekEnd", "isWeekStart", "isoDate", "showAdjacentMonths", "day", "VBtn", "localized", "makeVDatePickerMonthsProps", "propsFactory", "color", "String", "height", "Number", "min", "max", "modelValue", "year", "allowedMonths", "Array", "Function", "VDatePickerMonths", "genericComponent", "name", "props", "emits", "date", "setup", "_ref", "emit", "slots", "adapter", "useDate", "model", "useProxiedModel", "months", "computed", "startOfYear", "setYear", "createRange", "map", "i", "text", "format", "label", "isDisabled", "isMonthAllowed", "isAfter", "startOfMonth", "getNextMonth", "value", "watchEffect", "getMonth", "month", "isArray", "length", "includes", "useRender", "_createElementVNode", "convertToUnit", "btnProps", "active", "ariaLabel", "undefined", "disabled", "rounded", "variant", "onClick", "_createVNode", "VBtn", "_mergeProps", "makeVDatePickerYearsProps", "propsFactory", "color", "String", "height", "Number", "min", "max", "modelValue", "allowedYears", "Array", "Function", "VDatePickerYears", "genericComponent", "name", "props", "directives", "vIntersect", "emits", "year", "setup", "_ref", "emit", "slots", "adapter", "useDate", "model", "useProxiedModel", "hasFocusedItem", "shallowRef", "years", "computed", "getYear", "date", "startOfYear", "setYear", "createRange", "map", "i", "text", "format", "value", "isDisabled", "isYearAllowed", "watchEffect", "yearRef", "templateRef", "focusSelectedYear", "el", "scrollIntoView", "block", "isArray", "length", "includes", "useRender", "_withDirectives", "_createElementVNode", "convertToUnit", "onFocus", "focus", "onFocusin", "onFocusout", "btnProps", "ref", "undefined", "active", "rounded", "disabled", "variant", "onClick", "_createVNode", "VBtn", "_mergeProps", "handler", "once", "makeVDatePickerProps", "propsFactory", "header", "type", "String", "default", "headerColor", "headerDateFormat", "landscapeHeaderWidth", "Number", "omit", "makeVDatePickerControlsProps", "makeVDatePickerMonthProps", "weeksInMonth", "makeVDatePickerMonthsProps", "makeVDatePickerYearsProps", "makeVPickerProps", "title", "modelValue", "VDatePicker", "genericComponent", "name", "props", "emits", "date", "setup", "_ref", "emit", "slots", "adapter", "useDate", "t", "useLocale", "rtlClasses", "useRtl", "model", "useProxiedModel", "undefined", "v", "wrapInArray", "map", "i", "multiple", "viewMode", "minDate", "maxDate", "clampDate", "useCalendarRange", "internal", "computed", "today", "value", "isValid", "toRef", "color", "_month", "month", "get", "getMonth", "startOfMonth", "set", "_year", "year", "getYear", "startOfYear", "setMonth", "isReversing", "shallowRef", "length", "formattedDate", "format", "landscape", "split", "replace", "monthStart", "setDate", "setYear", "monthYearText", "monthText", "yearText", "headerTransition", "disabled", "targets", "push", "_date", "prevMonthEnd", "addDays", "prevYearEnd", "isAfter", "nextMonthStart", "endOfMonth", "nextYearStart", "endOfYear", "allowedYears", "isYearAllowed", "allowedMonths", "isMonthAllowed", "isAllowedInRange", "start", "end", "allowedDates", "days", "daysDiff", "parseISO", "Array", "isArray", "monthTwoDigits", "padStart", "onClickNextMonth", "onUpdateYear", "onUpdateMonth", "onClickPrevMonth", "onClickNextYear", "onClickPrevYear", "onClickDate", "onClickMonth", "onClickYear", "watch", "val", "oldVal", "arrBefore", "arrAfter", "before", "after", "isSameDay", "newMonth", "newYear", "isBefore", "useRender", "pickerProps", "VPicker", "filterProps", "datePickerControlsProps", "VDatePickerControls", "datePickerHeaderProps", "VDatePickerHeader", "datePickerMonthProps", "VDatePickerMonth", "datePickerMonthsProps", "VDatePickerMonths", "datePickerYearsProps", "VDatePickerYears", "headerProps", "transition", "_createVNode", "_mergeProps", "showWeek", "class", "convertToUnit", "style", "_createElementVNode", "VDefaultsProvider", "prepend", "append", "_Fragment", "controls", "VFadeTransition", "$event", "day", "actions", "makeVEmptyStateProps", "propsFactory", "actionText", "String", "bgColor", "color", "icon", "IconValue", "image", "justify", "type", "default", "headline", "title", "text", "textWidth", "Number", "href", "to", "makeComponentProps", "makeDimensionProps", "makeSizeProps", "size", "undefined", "makeThemeProps", "VEmptyState", "genericComponent", "name", "props", "emits", "e", "setup", "_ref", "emit", "slots", "themeClasses", "provideTheme", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "dimensionStyles", "useDimension", "displayClasses", "useDisplay", "onClickAction", "useRender", "hasActions", "actions", "hasHeadline", "hasTitle", "hasText", "hasMedia", "media", "_createElementVNode", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "_Fragment", "_createVNode", "VImg", "VIcon", "VDefaultsProvider", "src", "height", "maxWidth", "convertToUnit", "VBtn", "onClick", "makeVFabProps", "propsFactory", "app", "Boolean", "appear", "extended", "layout", "offset", "modelValue", "type", "default", "omit", "makeVBtnProps", "active", "makeLayoutItemProps", "makeLocationProps", "makeTransitionProps", "transition", "VFab", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "model", "useProxiedModel", "height", "shallowRef", "layoutItemStyles", "ref", "resizeRef", "useResizeObserver", "entries", "length", "target", "clientHeight", "hasPosition", "toRef", "absolute", "position", "computed", "location", "split", "shift", "orientation", "useToggleScope", "useLayoutItem", "id", "order", "parseInt", "layoutSize", "elementSize", "watchEffect", "vFabRef", "useRender", "btnProps", "VBtn", "filterProps", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "_createVNode", "MaybeTransition", "_withDirectives", "_mergeProps", "undefined", "_vShow", "makeVFooterProps", "propsFactory", "app", "Boolean", "color", "String", "height", "type", "Number", "default", "makeBorderProps", "makeComponentProps", "makeElevationProps", "makeLayoutItemProps", "makeRoundedProps", "makeTagProps", "tag", "makeThemeProps", "VFooter", "genericComponent", "name", "props", "setup", "_ref", "slots", "layoutItemStyles", "ref", "themeClasses", "provideTheme", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "borderClasses", "useBorder", "elevationClasses", "useElevation", "roundedClasses", "useRounded", "autoHeight", "shallowRef", "resizeRef", "useResizeObserver", "entries", "length", "value", "target", "clientHeight", "computed", "parseInt", "useToggleScope", "layout", "useLayoutItem", "id", "order", "position", "toRef", "layoutSize", "elementSize", "undefined", "active", "absolute", "watchEffect", "useRender", "_createVNode", "_normalizeClass", "class", "_normalizeStyle", "convertToUnit", "style", "makeVKbdProps", "propsFactory", "color", "String", "makeBorderProps", "makeComponentProps", "makeRoundedProps", "makeTagProps", "tag", "makeThemeProps", "makeElevationProps", "VKbd", "genericComponent", "name", "props", "setup", "_ref", "slots", "themeClasses", "provideTheme", "borderClasses", "useBorder", "roundedClasses", "useRounded", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "elevationClasses", "useElevation", "useRender", "_createVNode", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "processKey", "config", "requestedMode", "isMac", "keyCfg", "mac", "default", "mode", "icon", "symbol", "value", "text", "startsWith", "slice", "toUpperCase", "hotkeyMap", "ctrl", "meta", "cmd", "shift", "alt", "enter", "arrowup", "arrowdown", "arrowleft", "arrowright", "backspace", "escape", "makeVHotkeyProps", "propsFactory", "keys", "String", "displayMode", "type", "keyMap", "Object", "platform", "inline", "Boolean", "disabled", "prefix", "suffix", "variant", "validator", "v", "includes", "makeComponentProps", "makeThemeProps", "makeBorderProps", "makeRoundedProps", "makeElevationProps", "color", "AND_DELINEATOR", "Symbol", "SLASH_DELINEATOR", "THEN_DELINEATOR", "getKeyText", "key", "lowerKey", "toLowerCase", "result", "applyDisplayModeToKey", "replace", "VHotkey", "genericComponent", "name", "props", "setup", "t", "useLocale", "themeClasses", "provideTheme", "rtlClasses", "useRtl", "borderClasses", "useBorder", "roundedClasses", "useRounded", "elevationClasses", "useElevation", "colorClasses", "colorStyles", "variantClasses", "useVariant", "computed", "navigator", "test", "userAgent", "keyCombinations", "split", "map", "combination", "sequenceGroups", "splitKeySequence", "i", "length", "group", "push", "keyParts", "separators", "splitKeyCombination", "j", "part", "accessibleLabel", "readableShortcuts", "readableParts", "Array", "isArray", "textKey", "mergeDeep", "translateKey", "join", "shortcutText", "getKeyTooltip", "undefined", "renderKey", "keyIndex", "isContained", "KeyComponent", "VKbd", "keyClasses", "_createVNode", "_normalizeClass", "_normalizeStyle", "VIcon", "renderDivider", "_createElementVNode", "useRender", "content", "_Fragment", "comboIndex", "_createTextVNode", "class", "style", "makeVHoverProps", "propsFactory", "disabled", "Boolean", "modelValue", "type", "default", "makeDelayProps", "VHover", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "isHovering", "useProxiedModel", "runOpenDelay", "runCloseDelay", "useDelay", "onMouseenter", "onMouseleave", "makeVInfiniteScrollProps", "propsFactory", "color", "String", "direction", "type", "default", "validator", "v", "includes", "side", "mode", "margin", "Number", "loadMoreText", "emptyText", "makeDimensionProps", "makeTagProps", "VInfiniteScrollIntersect", "defineComponent", "name", "props", "required", "rootMargin", "emits", "intersect", "isIntersecting", "setup", "_ref", "emit", "intersectionRef", "useIntersectionObserver", "watch", "val", "useRender", "_createElementVNode", "_createTextVNode", "VInfiniteScroll", "genericComponent", "load", "options", "_ref2", "slots", "rootEl", "ref", "startStatus", "shallowRef", "endStatus", "computed", "convertToUnit", "setScrollAmount", "amount", "value", "property", "getScrollAmount", "getScrollSize", "getContainerSize", "onMounted", "setStatus", "status", "getStatus", "previousScrollSize", "handleIntersect", "_isIntersecting", "intersecting", "done", "nextTick", "window", "requestAnimationFrame", "t", "useLocale", "renderSide", "onClick", "slotProps", "error", "empty", "loading", "_createVNode", "VProgressCircular", "VBtn", "dimensionStyles", "useDimension", "Tag", "tag", "hasStartIntersect", "hasEndIntersect", "intersectMode", "_normalizeClass", "_normalizeStyle", "reset", "effectiveSide", "VItemGroupSymbol", "Symbol", "for", "makeVItemGroupProps", "propsFactory", "makeComponentProps", "makeGroupProps", "selectedClass", "makeTagProps", "makeThemeProps", "VItemGroup", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "themeClasses", "provideTheme", "isSelected", "select", "next", "prev", "selected", "useGroup", "_createVNode", "tag", "_normalizeClass", "class", "_normalizeStyle", "style", "default", "VItem", "genericComponent", "name", "props", "makeGroupItemProps", "emits", "val", "setup", "_ref", "slots", "isSelected", "select", "toggle", "selectedClass", "value", "disabled", "useGroupItem", "VItemGroupSymbol", "default", "makeVLayoutProps", "propsFactory", "makeComponentProps", "makeDimensionProps", "makeLayoutProps", "VLayout", "genericComponent", "name", "props", "setup", "_ref", "slots", "layoutClasses", "layoutStyles", "getLayoutItem", "items", "layoutRef", "createLayout", "dimensionStyles", "useDimension", "useRender", "_createElementVNode", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "default", "makeVLayoutItemProps", "propsFactory", "position", "type", "String", "required", "size", "Number", "default", "modelValue", "Boolean", "makeComponentProps", "makeLayoutItemProps", "VLayoutItem", "genericComponent", "name", "props", "setup", "_ref", "slots", "layoutItemStyles", "useLayoutItem", "id", "order", "computed", "parseInt", "toRef", "elementSize", "layoutSize", "active", "absolute", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "value", "style", "makeVLazyProps", "propsFactory", "modelValue", "Boolean", "options", "type", "Object", "default", "root", "undefined", "rootMargin", "threshold", "makeComponentProps", "makeDimensionProps", "makeTagProps", "makeTransitionProps", "transition", "VLazy", "genericComponent", "name", "directives", "vIntersect", "props", "emits", "value", "setup", "_ref", "slots", "dimensionStyles", "useDimension", "isActive", "useProxiedModel", "onIntersect", "isIntersecting", "useRender", "_withDirectives", "_createVNode", "tag", "_normalizeClass", "class", "_normalizeStyle", "style", "MaybeTransition", "handler", "makeVLocaleProviderProps", "propsFactory", "locale", "String", "fallbackLocale", "messages", "Object", "rtl", "type", "Boolean", "default", "undefined", "makeComponentProps", "VLocaleProvider", "genericComponent", "name", "props", "setup", "_ref", "slots", "rtlClasses", "provideLocale", "useRender", "_createElementVNode", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "VNoSsr", "defineComponent", "name", "setup", "_", "_ref", "slots", "show", "useHydration", "value", "default", "HOLD_REPEAT", "HOLD_DELAY", "useHold", "_ref", "toggleUpDown", "timeout", "interval", "onScopeDispose", "holdStop", "holdStart", "value", "tick", "window", "addEventListener", "document", "setTimeout", "setInterval", "clearTimeout", "clearInterval", "removeEventListener", "makeVNumberInputProps", "propsFactory", "controlVariant", "type", "String", "default", "inset", "Boolean", "hideInput", "modelValue", "Number", "min", "MIN_SAFE_INTEGER", "max", "MAX_SAFE_INTEGER", "step", "precision", "minFractionDigits", "decimalSeparator", "validator", "v", "length", "omit", "makeVTextFieldProps", "VNumberInput", "genericComponent", "name", "props", "emits", "val", "setup", "_ref", "slots", "vTextFieldRef", "ref", "holdStart", "holdStop", "useHold", "toggleUpDown", "form", "useForm", "controlsDisabled", "computed", "isDisabled", "value", "isReadonly", "isFocused", "shallowRef", "focused", "decimalSeparatorFromLocale", "useLocale", "correctPrecision", "arguments", "undefined", "trim", "fixed", "toFixed", "toString", "replace", "baseDigits", "fractionDigits", "split", "padEnd", "RegExp", "filter", "join", "model", "useProxiedModel", "clamp", "_inputText", "_lastParsedValue", "watch", "isNaN", "immediate", "inputText", "get", "set", "parsedValue", "isOutOfRange", "numberFromText", "canIncrease", "canDecrease", "incrementIcon", "toRef", "decrementIcon", "controlNodeSize", "controlNodeDefaultHeight", "incrementSlotProps", "onClick", "onControlClick", "onPointerup", "onControlMouseup", "onPointerdown", "onUpControlMousedown", "onPointercancel", "decrementSlotProps", "onDownControlMousedown", "formatInputValue", "onMounted", "clampModel", "inferPrecision", "str", "idx", "indexOf", "increment", "inferredPrecision", "Math", "onBeforeinput", "e", "data", "inputElement", "target", "existingTxt", "selectionStart", "selectionEnd", "potentialNewInputVal", "slice", "potentialNewNumber", "extractNumber", "escapeForRegex", "test", "preventDefault", "nextTick", "cursorPosition", "setSelectionRange", "endsWith", "onKeydown", "includes", "key", "ctrlKey", "stopPropagation", "el", "currentTarget", "releasePointerCapture", "pointerId", "setPointerCapture", "actualText", "trimDecimalZeros", "onFocus", "onBlur", "useRender", "_", "textFieldProps", "VTextField", "filterProps", "incrementControlNode", "_createVNode", "VBtn", "VDefaultsProvider", "disabled", "height", "size", "icon", "variant", "decrementControlNode", "decrement", "controlNode", "_createElementVNode", "VDivider", "dividerNode", "appendInnerControl", "reverse", "_Fragment", "hasAppendInner", "prependInnerControl", "hasPrependInner", "_mergeProps", "$event", "error", "class", "style", "_len", "args", "Array", "_key", "_len2", "_key2", "forwardRefs", "makeVOtpInputProps", "propsFactory", "autofocus", "Boolean", "divider", "String", "focusAll", "label", "type", "default", "length", "Number", "modelValue", "undefined", "placeholder", "makeDimensionProps", "makeFocusProps", "pick", "makeVFieldProps", "variant", "VOtpInput", "genericComponent", "name", "props", "emits", "finish", "val", "setup", "_ref", "attrs", "emit", "slots", "dimensionStyles", "useDimension", "isFocused", "focus", "blur", "useFocus", "model", "useProxiedModel", "split", "join", "t", "useLocale", "computed", "fields", "Array", "value", "fill", "focusIndex", "ref", "contentRef", "inputRef", "current", "_isComposing", "useToggleScope", "intersectScope", "effectScope", "run", "intersectionRef", "isIntersecting", "useIntersectionObserver", "watchEffect", "watch", "v", "stop", "onInput", "isValidNumber", "array", "slice", "target", "focusChild", "onCompositionend", "onKeydown", "e", "index", "includes", "key", "preventDefault", "requestAnimationFrame", "select", "onPaste", "stopPropagation", "clipboardText", "clipboardData", "getData", "trim", "finalIndex", "reset", "onFocus", "onBlur", "test", "provideDefaults", "VField", "color", "toRef", "bgColor", "baseColor", "disabled", "error", "rounded", "scoped", "deep", "nextTick", "useRender", "rootAttrs", "inputAttrs", "filterInputAttrs", "_createElementVNode", "_mergeProps", "class", "style", "_normalizeStyle", "map", "_", "i", "_Fragment", "_createVNode", "loader", "_normalizeClass", "onCompositionstart", "event", "VOverlay", "loading", "VProgressCircular", "some", "input", "floor", "val", "Math", "abs", "sign", "makeVParallaxProps", "propsFactory", "scale", "type", "Number", "String", "default", "makeComponentProps", "VParallax", "genericComponent", "name", "props", "setup", "_ref", "slots", "intersectionRef", "isIntersecting", "useIntersectionObserver", "resizeRef", "contentRect", "useResizeObserver", "height", "displayHeight", "useDisplay", "root", "ref", "watchEffect", "value", "$el", "scrollParent", "watch", "getScrollParent", "document", "scrollingElement", "addEventListener", "onScroll", "passive", "removeEventListener", "onBeforeUnmount", "computed", "clamp", "frame", "PREFERS_REDUCED_MOTION", "cancelAnimationFrame", "requestAnimationFrame", "el", "querySelector", "scrollHeight", "Document", "documentElement", "clientHeight", "scrollPos", "window", "scrollY", "scrollTop", "top", "getBoundingClientRect", "center", "translate", "sizeScale", "max", "style", "setProperty", "useRender", "_createVNode", "VImg", "_normalizeClass", "class", "_normalizeStyle", "makeVRadioProps", "propsFactory", "makeVSelectionControlProps", "falseIcon", "trueIcon", "VRadio", "genericComponent", "name", "props", "setup", "_ref", "slots", "useRender", "controlProps", "VSelectionControl", "filterProps", "_createVNode", "_mergeProps", "class", "style", "makeVRadioGroupProps", "propsFactory", "height", "type", "Number", "String", "default", "makeVInputProps", "omit", "makeSelectionControlGroupProps", "trueIcon", "IconValue", "falseIcon", "VRadioGroup", "genericComponent", "name", "inheritAttrs", "props", "emits", "value", "setup", "_ref", "attrs", "slots", "uid", "useId", "id", "computed", "model", "useProxiedModel", "inputRef", "ref", "useRender", "rootAttrs", "controlAttrs", "filterInputAttrs", "inputProps", "VInput", "filterProps", "controlProps", "VSelectionControl", "label", "for", "_createVNode", "_mergeProps", "class", "style", "$event", "_ref2", "messagesId", "isDisabled", "isReadonly", "_createElementVNode", "_Fragment", "VLabel", "VSelectionControlGroup", "undefined", "forwardRefs", "makeVRangeSliderProps", "propsFactory", "makeFocusProps", "makeVInputProps", "makeSliderProps", "strict", "Boolean", "modelValue", "type", "Array", "default", "VRangeSlider", "genericComponent", "name", "inheritAttrs", "props", "emits", "value", "end", "start", "setup", "_ref", "slots", "emit", "attrs", "startThumbRef", "ref", "stopThumbRef", "inputRef", "rtlClasses", "useRtl", "getActiveThumb", "e", "startOffset", "getOffset", "$el", "direction", "stopOffset", "a", "Math", "abs", "b", "steps", "useSteps", "model", "useProxiedModel", "undefined", "arr", "length", "map", "roundValue", "activeThumbRef", "hasLabels", "max", "min", "mousePressed", "onSliderMousedown", "onSliderTouchstart", "position", "trackContainerRef", "disabled", "readonly", "useSlider", "onSliderStart", "blur", "onSliderEnd", "_ref2", "newValue", "onSliderMove", "_ref3", "stop", "focus", "isFocused", "useFocus", "trackStart", "computed", "trackStop", "useRender", "inputProps", "VInput", "filterProps", "rootAttrs", "inputAttrs", "filterInputAttrs", "hasPrepend", "label", "prepend", "_createVNode", "_mergeProps", "class", "style", "slotProps", "_createElementVNode", "_Fragment", "VLabel", "_ref4", "id", "messagesId", "VSliderTrack", "VSliderThumb", "v", "relatedTarget", "onBlur", "ripple", "forwardRefs", "makeVRatingProps", "propsFactory", "name", "String", "itemAriaLabel", "type", "default", "activeColor", "color", "clearable", "Boolean", "disabled", "emptyIcon", "IconValue", "fullIcon", "halfIncrements", "hover", "length", "Number", "readonly", "modelValue", "itemLabels", "Array", "itemLabelPosition", "validator", "v", "includes", "ripple", "makeComponentProps", "makeDensityProps", "makeSizeProps", "makeTagProps", "makeThemeProps", "VRating", "genericComponent", "props", "emits", "value", "setup", "_ref", "slots", "t", "useLocale", "themeClasses", "provideTheme", "root", "ref", "rating", "useProxiedModel", "normalizedValue", "computed", "clamp", "parseFloat", "range", "createRange", "increments", "flatMap", "hoverIndex", "shallowRef", "itemState", "map", "isHovering", "isFilled", "isHovered", "isFullIcon", "icon", "eventState", "onMouseenter", "onMouseleave", "onClick", "undefined", "currentItemIndex", "Math", "floor", "max", "moveCurrentFocus", "currentItem", "querySelector", "focus", "onItemKeydown", "event", "ctrlKey", "altKey", "step", "key", "newValue", "min", "nextTick", "uid", "useId", "VRatingItem", "_ref2", "index", "showStar", "id", "replace", "isFocusable", "btnProps", "density", "size", "variant", "tabindex", "onKeydown", "_createElementVNode", "_Fragment", "_normalizeClass", "item", "_createVNode", "VBtn", "_mergeProps", "createLabel", "labelProps", "label", "_createTextVNode", "useRender", "hasLabels", "tag", "class", "_normalizeStyle", "style", "i", "rootTypes", "actions", "article", "avatar", "button", "card", "chip", "divider", "heading", "image", "ossein", "paragraph", "sentences", "subtitle", "table", "text", "genBone", "type", "children", "arguments", "length", "undefined", "_createElementVNode", "_normalizeClass", "genBones", "bone", "split", "Array", "from", "map", "genStructure", "includes", "mapBones", "push", "bones", "replace", "makeVSkeletonLoaderProps", "propsFactory", "boilerplate", "Boolean", "color", "String", "loading", "loadingText", "default", "makeDimensionProps", "makeElevationProps", "makeThemeProps", "VSkeletonLoader", "genericComponent", "name", "inheritAttrs", "props", "setup", "_ref", "attrs", "slots", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "dimensionStyles", "useDimension", "elevationClasses", "useElevation", "themeClasses", "provideTheme", "t", "useLocale", "items", "computed", "wrapInArray", "join", "useRender", "isLoading", "loadingProps", "ariaLive", "ariaLabel", "role", "_mergeProps", "value", "_Fragment", "VSlideGroupItem", "genericComponent", "name", "props", "makeGroupItemProps", "emits", "val", "setup", "_ref", "slots", "slideGroupItem", "useGroupItem", "VSlideGroupSymbol", "default", "isSelected", "value", "select", "toggle", "selectedClass", "makeVSnackbarQueueProps", "propsFactory", "closable", "Boolean", "String", "closeText", "type", "default", "modelValue", "Array", "omit", "makeVSnackbarProps", "VSnackbarQueue", "genericComponent", "name", "props", "emits", "val", "setup", "_ref", "emit", "slots", "t", "useLocale", "isActive", "shallowRef", "isVisible", "current", "watch", "length", "oldVal", "value", "showNext", "onAfterLeave", "undefined", "next", "rest", "text", "nextTick", "onClickClose", "btnProps", "computed", "color", "useRender", "hasActions", "actions", "_", "snackbarProps", "VSnackbar", "filterProps", "_createElementVNode", "_Fragment", "_createVNode", "VDefaultsProvider", "item", "_mergeProps", "$event", "VBtn", "onClick", "makeLineProps", "propsFactory", "autoDraw", "Boolean", "autoDrawDuration", "Number", "String", "autoDrawEasing", "type", "default", "color", "gradient", "Array", "gradientDirection", "validator", "val", "includes", "height", "labels", "labelSize", "lineWidth", "id", "itemValue", "modelValue", "min", "max", "padding", "showLabels", "smooth", "width", "makeVBarlineProps", "propsFactory", "autoLineWidth", "Boolean", "makeLineProps", "VBarline", "genericComponent", "name", "props", "setup", "_ref", "slots", "uid", "useId", "id", "computed", "autoDrawDuration", "Number", "hasLabels", "showLabels", "labels", "length", "label", "lineWidth", "parseFloat", "totalWidth", "Math", "max", "modelValue", "value", "width", "boundary", "minX", "maxX", "minY", "maxY", "parseInt", "height", "items", "map", "item", "getPropertyFromItem", "itemValue", "genBars", "values", "totalValues", "maxValue", "minValue", "min", "gridX", "gridY", "horizonY", "abs", "index", "x", "y", "parsedLabels", "points", "len", "i", "push", "String", "bars", "offsetX", "smooth", "useRender", "gradientData", "gradient", "slice", "reverse", "_createElementVNode", "gradientDirection", "color", "autoDraw", "PREFERS_REDUCED_MOTION", "_Fragment", "textAnchor", "dominantBaseline", "fill", "labelSize", "genPath", "points", "radius", "fill", "arguments", "length", "undefined", "height", "start", "shift", "end", "x", "y", "map", "point", "index", "next", "prev", "isCollinear", "checkCollinear", "threshold", "Math", "min", "getDistance", "isTooCloseForRadius", "radiusForPoint", "before", "moveTo", "after", "join", "int", "value", "parseInt", "p0", "p1", "p2", "sqrt", "pow", "to", "from", "vector", "unitVector", "makeVTrendlineProps", "propsFactory", "fill", "Boolean", "makeLineProps", "VTrendline", "genericComponent", "name", "props", "setup", "_ref", "slots", "uid", "useId", "id", "computed", "autoDrawDuration", "Number", "lastLength", "ref", "path", "genPoints", "values", "boundary", "minX", "maxX", "minY", "maxY", "length", "totalValues", "maxValue", "max", "Math", "minValue", "min", "gridX", "gridY", "map", "value", "index", "x", "y", "hasLabels", "showLabels", "labels", "label", "lineWidth", "parseFloat", "totalWidth", "width", "padding", "parseInt", "height", "items", "modelValue", "item", "getPropertyFromItem", "itemValue", "parsedLabels", "points", "len", "i", "push", "String", "watch", "nextTick", "autoDraw", "PREFERS_REDUCED_MOTION", "pathRef", "getTotalLength", "style", "strokeDasharray", "strokeDashoffset", "getBoundingClientRect", "transition", "autoDrawEasing", "transformOrigin", "transform", "immediate", "genPath", "smoothValue", "smooth", "_genPath", "useRender", "gradientData", "gradient", "slice", "reverse", "_createElementVNode", "gradientDirection", "color", "textAnchor", "dominantBaseline", "labelSize", "makeVSparklineProps", "propsFactory", "type", "String", "default", "makeVBarlineProps", "makeVTrendlineProps", "VSparkline", "genericComponent", "name", "props", "setup", "_ref", "slots", "textColorClasses", "textColorStyles", "useTextColor", "color", "hasLabels", "computed", "Boolean", "showLabels", "labels", "length", "label", "totalHeight", "height", "parseInt", "value", "labelSize", "useRender", "Tag", "VTrendline", "VBarline", "lineProps", "filterProps", "_createVNode", "_mergeProps", "width", "makeVSpeedDialProps", "propsFactory", "makeComponentProps", "makeVMenuProps", "offset", "minWidth", "openDelay", "closeDelay", "location", "transition", "VSpeedDial", "genericComponent", "name", "props", "emits", "value", "setup", "_ref", "slots", "model", "useProxiedModel", "menuRef", "ref", "computed", "y", "x", "split", "locationClasses", "replace", "useRender", "menuProps", "VMenu", "filterProps", "_createVNode", "_mergeProps", "$event", "class", "style", "contentClass", "default", "slotProps", "VDefaultsProvider", "VBtn", "size", "MaybeTransition", "VStepperSymbol", "Symbol", "for", "makeVStepperActionsProps", "propsFactory", "color", "String", "disabled", "type", "Boolean", "default", "prevText", "nextText", "VStepperActions", "genericComponent", "name", "props", "emits", "click:prev", "click:next", "setup", "_ref", "emit", "slots", "t", "useLocale", "onClickPrev", "onClickNext", "useRender", "prevSlotProps", "onClick", "nextSlotProps", "_createElementVNode", "_createVNode", "VDefaultsProvider", "VBtn", "includes", "text", "variant", "prev", "next", "VStepperHeader", "createSimpleFunctional", "makeStepperItemProps", "propsFactory", "color", "String", "title", "subtitle", "complete", "Boolean", "completeIcon", "type", "IconValue", "default", "editable", "editIcon", "error", "errorIcon", "icon", "ripple", "Object", "rules", "Array", "makeVStepperItemProps", "makeGroupItemProps", "VStepperItem", "genericComponent", "name", "directives", "vRipple", "props", "emits", "val", "setup", "_ref", "slots", "group", "useGroupItem", "VStepperSymbol", "step", "computed", "value", "isValid", "every", "handler", "isClickable", "disabled", "canEdit", "hasError", "hasCompleted", "length", "isSelected", "slotProps", "useRender", "hasColor", "hasTitle", "hasSubtitle", "onClick", "toggle", "_withDirectives", "_createElementVNode", "_normalizeClass", "selectedClass", "genOverlays", "_createVNode", "VAvatar", "undefined", "VIcon", "makeVStepperWindowProps", "propsFactory", "omit", "makeVWindowProps", "VStepperWindow", "genericComponent", "name", "props", "emits", "v", "setup", "_ref", "slots", "group", "inject", "VStepperSymbol", "_model", "useProxiedModel", "model", "computed", "get", "value", "items", "find", "item", "selected", "includes", "id", "set", "val", "useRender", "windowProps", "VWindow", "filterProps", "_createVNode", "_mergeProps", "$event", "class", "style", "makeVStepperWindowItemProps", "propsFactory", "makeVWindowItemProps", "VStepperWindowItem", "genericComponent", "name", "props", "setup", "_ref", "slots", "useRender", "windowItemProps", "VWindowItem", "filterProps", "_createVNode", "_mergeProps", "class", "style", "makeStepperProps", "propsFactory", "altLabels", "Boolean", "bgColor", "String", "completeIcon", "IconValue", "editIcon", "editable", "errorIcon", "hideActions", "items", "type", "Array", "default", "itemTitle", "Function", "itemValue", "itemProps", "nonLinear", "flat", "makeDisplayProps", "makeVStepperProps", "makeGroupProps", "mandatory", "selectedClass", "makeVSheetProps", "pick", "makeVStepperActionsProps", "VStepper", "genericComponent", "name", "props", "emits", "v", "setup", "_ref", "slots", "_items", "next", "prev", "selected", "useGroup", "VStepperSymbol", "displayClasses", "mobile", "useDisplay", "color", "prevText", "nextText", "toRefs", "computed", "map", "item", "index", "title", "getPropertyFromItem", "value", "_props", "raw", "activeIndex", "findIndex", "includes", "id", "disabled", "length", "provideDefaults", "VStepperItem", "VStepperActions", "useRender", "sheetProps", "VSheet", "filterProps", "hasHeader", "header", "hasWindow", "hasActions", "actions", "_createVNode", "_mergeProps", "class", "style", "VStepperHeader", "_ref2", "_createElementVNode", "_Fragment", "VDivider", "icon", "subtitle", "VStepperWindow", "VStepperWindowItem", "makeVSystemBarProps", "propsFactory", "color", "String", "height", "Number", "window", "Boolean", "makeComponentProps", "makeElevationProps", "makeLayoutItemProps", "makeRoundedProps", "makeTagProps", "makeThemeProps", "VSystemBar", "genericComponent", "name", "props", "setup", "_ref", "slots", "themeClasses", "provideTheme", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "elevationClasses", "useElevation", "roundedClasses", "useRounded", "ssrBootStyles", "useSsrBoot", "computed", "layoutItemStyles", "useLayoutItem", "id", "order", "parseInt", "position", "shallowRef", "layoutSize", "elementSize", "active", "absolute", "toRef", "useRender", "_createVNode", "tag", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "VTabsSymbol", "Symbol", "for", "makeVTabProps", "propsFactory", "fixed", "Boolean", "sliderColor", "String", "sliderTransition", "sliderTransitionDuration", "Number", "hideSlider", "inset", "direction", "type", "default", "omit", "makeVBtnProps", "selectedClass", "variant", "VTab", "genericComponent", "name", "props", "setup", "_ref", "slots", "attrs", "textColorClasses", "sliderColorClasses", "textColorStyles", "sliderColorStyles", "useTextColor", "backgroundColorClasses", "insetColorClasses", "backgroundColorStyles", "insetColorStyles", "useBackgroundColor", "rootEl", "ref", "sliderEl", "isHorizontal", "computed", "isSelected", "value", "group", "fade", "nextEl", "prevEl", "opacity", "grow", "transform", "shift", "prevBox", "getBoundingClientRect", "nextBox", "xy", "XY", "rightBottom", "widthHeight", "prevPos", "nextPos", "delta", "origin", "Math", "sign", "size", "abs", "scale", "max", "initialScale", "sigma", "transformOrigin", "Array", "fill", "updateSlider", "_ref2", "$el", "parentElement", "querySelector", "color", "getComputedStyle", "keyframes", "duration", "animate", "backgroundColor", "easing", "standardEasing", "useRender", "btnProps", "VBtn", "filterProps", "_createVNode", "_mergeProps", "VTabsSymbol", "class", "style", "undefined", "_createElementVNode", "_Fragment", "text", "_normalizeClass", "_normalizeStyle", "forwardRefs", "makeVTabsWindowProps", "propsFactory", "omit", "makeVWindowProps", "VTabsWindow", "genericComponent", "name", "props", "emits", "v", "setup", "_ref", "slots", "group", "inject", "VTabsSymbol", "_model", "useProxiedModel", "model", "computed", "get", "value", "items", "find", "item", "selected", "includes", "id", "set", "val", "useRender", "windowProps", "VWindow", "filterProps", "_createVNode", "_mergeProps", "$event", "class", "style", "makeVTabsWindowItemProps", "propsFactory", "makeVWindowItemProps", "VTabsWindowItem", "genericComponent", "name", "props", "setup", "_ref", "slots", "useRender", "windowItemProps", "VWindowItem", "filterProps", "_createVNode", "_mergeProps", "class", "style", "parseItems", "items", "map", "item", "isObject", "text", "value", "makeVTabsProps", "propsFactory", "alignTabs", "type", "String", "default", "color", "fixedTabs", "Boolean", "Array", "stacked", "bgColor", "grow", "height", "Number", "undefined", "hideSlider", "inset", "insetPadding", "insetRadius", "sliderColor", "pick", "makeVTabProps", "makeVSlideGroupProps", "mandatory", "selectedClass", "makeDensityProps", "makeTagProps", "VTabs", "genericComponent", "name", "props", "emits", "v", "setup", "_ref", "attrs", "slots", "model", "useProxiedModel", "computed", "densityClasses", "useDensity", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "scopeId", "useScopeId", "provideDefaults", "VTab", "toRef", "direction", "fixed", "sliderTransition", "sliderTransitionDuration", "useRender", "slideGroupProps", "VSlideGroup", "filterProps", "hasWindow", "window", "length", "_createElementVNode", "_Fragment", "_createVNode", "_mergeProps", "$event", "class", "convertToUnit", "style", "VTabsSymbol", "tab", "spaced", "prev", "next", "VTabsWindow", "VTabsWindowItem", "makeVThemeProviderProps", "propsFactory", "withBackground", "Boolean", "makeComponentProps", "makeThemeProps", "makeTagProps", "VThemeProvider", "genericComponent", "name", "props", "setup", "_ref", "slots", "themeClasses", "provideTheme", "default", "_createVNode", "tag", "_normalizeClass", "value", "class", "_normalizeStyle", "style", "makeVTimelineDividerProps", "propsFactory", "dotColor", "String", "fillDot", "Boolean", "hideDot", "icon", "IconValue", "iconColor", "lineColor", "makeComponentProps", "makeRoundedProps", "makeSizeProps", "makeElevationProps", "VTimelineDivider", "genericComponent", "name", "props", "setup", "_ref", "slots", "sizeClasses", "sizeStyles", "useSize", "backgroundColorStyles", "backgroundColorClasses", "useBackgroundColor", "roundedClasses", "useRounded", "elevationClasses", "useElevation", "lineColorClasses", "lineColorStyles", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "style", "value", "default", "_createVNode", "VIcon", "size", "VDefaultsProvider", "color", "makeVTimelineItemProps", "propsFactory", "density", "String", "dotColor", "fillDot", "Boolean", "hideDot", "hideOpposite", "type", "default", "undefined", "icon", "IconValue", "iconColor", "lineInset", "Number", "side", "validator", "v", "includes", "makeComponentProps", "makeDimensionProps", "makeElevationProps", "makeRoundedProps", "makeSizeProps", "makeTagProps", "VTimelineItem", "genericComponent", "name", "props", "setup", "_ref", "slots", "dimensionStyles", "useDimension", "dotSize", "shallowRef", "dotRef", "ref", "watch", "newValue", "value", "$el", "querySelector", "getBoundingClientRect", "width", "flush", "useRender", "_createElementVNode", "_normalizeClass", "class", "_normalizeStyle", "convertToUnit", "style", "_createVNode", "VTimelineDivider", "size", "elevation", "rounded", "opposite", "makeVTimelineProps", "propsFactory", "align", "type", "String", "default", "validator", "v", "includes", "direction", "justify", "side", "lineThickness", "Number", "lineColor", "truncateLine", "pick", "makeVTimelineItemProps", "lineInset", "makeComponentProps", "makeDensityProps", "makeTagProps", "makeThemeProps", "VTimeline", "genericComponent", "name", "props", "setup", "_ref", "slots", "themeClasses", "provideTheme", "densityClasses", "useDensity", "rtlClasses", "useRtl", "provideDefaults", "VTimelineDivider", "toRef", "VTimelineItem", "density", "dotColor", "fillDot", "hideOpposite", "iconColor", "size", "sideClasses", "computed", "truncateClasses", "classes", "useRender", "_createVNode", "tag", "_normalizeClass", "value", "class", "_normalizeStyle", "convertToUnit", "style", "makeVTimePickerClockProps", "propsFactory", "allowedValues", "Function", "ampm", "Boolean", "color", "String", "disabled", "displayedValue", "double", "format", "type", "default", "val", "max", "Number", "required", "min", "scrollable", "readonly", "rotate", "step", "modelValue", "VTimePickerClock", "genericComponent", "name", "props", "emits", "change", "input", "setup", "_ref", "emit", "clockRef", "ref", "innerClockRef", "inputValue", "undefined", "isDragging", "valueOnMouseDown", "valueOnMouseUp", "emitChangeDebounced", "debounce", "value", "textColorClasses", "textColorStyles", "useTextColor", "backgroundColorClasses", "backgroundColorStyles", "useBackgroundColor", "count", "computed", "roundCount", "degreesPerUnit", "degrees", "Math", "PI", "innerRadiusScale", "genChildren", "children", "push", "watch", "update", "isAllowed", "wheel", "e", "preventDefault", "delta", "sign", "deltaY", "isInner", "handScale", "getPosition", "rotateRadians", "x", "sin", "y", "cos", "angleToValue", "angle", "insideClick", "round", "getTransform", "i", "left", "top", "euclidean", "p0", "p1", "dx", "dy", "sqrt", "center", "atan2", "abs", "setMouseDownValue", "onDragMove", "width", "getBoundingClientRect", "innerWidth", "clientX", "clientY", "touches", "coords", "handAngle", "checksCount", "ceil", "onMouseDown", "window", "addEventListener", "onMouseUp", "stopPropagation", "removeListeners", "removeEventListener", "onScopeDispose", "useRender", "_createElementVNode", "_normalizeClass", "_normalizeStyle", "transform", "map", "isActive", "makeVTimePickerFieldProps", "propsFactory", "active", "Boolean", "color", "String", "disabled", "label", "modelValue", "readonly", "VTimePickerField", "genericComponent", "name", "inheritAttrs", "props", "emits", "v", "setup", "_ref", "emit", "attrs", "textColorClasses", "textColorStyles", "useTextColor", "vTextInputRef", "ref", "isFocused", "shallowRef", "onKeydown", "e", "includes", "key", "preventDefault", "target", "value", "useRender", "_createElementVNode", "_createVNode", "VTextField", "_mergeProps", "onFocus", "onBlur", "forwardRefs", "pad", "n", "length", "arguments", "undefined", "String", "padStart", "convert24to12", "hour", "convert12to24", "period", "extractInteger", "v", "digits", "replaceAll", "Number", "incrementHour", "increment", "value", "togglePeriod", "incrementMinuteOrSecond", "val", "makeVTimePickerControlsProps", "propsFactory", "ampm", "Boolean", "color", "String", "disabled", "hour", "Number", "minute", "second", "period", "readonly", "useSeconds", "value", "viewMode", "VTimePickerControls", "genericComponent", "name", "props", "emits", "data", "v", "setup", "_ref", "emit", "slots", "t", "useLocale", "transformHours", "in", "isNaN", "val", "pad", "convert24to12", "out", "extractInteger", "convert12to24", "clamp", "useProxiedModel", "undefined", "transformMinutesOrSeconds", "onHourFieldKeydown", "e", "includes", "key", "preventDefault", "stopPropagation", "current", "togglePeriod", "incrementHour", "onMinuteFieldKeydown", "incrementMinuteOrSecond", "onSecondFieldKeydown", "createInputInterceptor", "valueTransformOut", "compare", "apply", "inputElement", "target", "existingTxt", "selectionStart", "selectionEnd", "potentialNewInputVal", "slice", "length", "trim", "startsWith", "substring", "setSelectionRange", "maxValue", "potentialNewNumber", "hourInputRef", "ref", "minuteInputRef", "secondInputRef", "watch", "_", "old", "blur", "hourInputFilter", "minuteInputFilter", "secondInputFilter", "useRender", "_createElementVNode", "_normalizeClass", "_createVNode", "VTimePickerField", "onFocus", "_createTextVNode", "VBtn", "onClick", "rangeHours24", "createRange", "rangeHours12am", "rangeHours12pm", "map", "v", "range60", "makeVTimePickerProps", "propsFactory", "allowedHours", "Function", "Array", "allowedMinutes", "allowedSeconds", "disabled", "Boolean", "format", "type", "String", "default", "max", "min", "viewMode", "period", "validator", "includes", "modelValue", "readonly", "scrollable", "useSeconds", "variant", "omit", "makeVPickerProps", "title", "makeDensityProps", "VTimePicker", "genericComponent", "name", "props", "emits", "val", "setup", "_ref", "emit", "slots", "t", "useLocale", "densityClasses", "useDensity", "inputHour", "ref", "inputMinute", "inputSecond", "lazyInputHour", "lazyInputMinute", "lazyInputSecond", "useProxiedModel", "controlsRef", "clockRef", "isAllowedHourCb", "computed", "cb", "minHour", "Number", "split", "maxHour", "isAllowedMinuteCb", "isHourAllowed", "value", "minMinute", "maxMinute", "minTime", "maxTime", "time", "isAllowedSecondCb", "isMinuteAllowed", "minSecond", "maxSecond", "isAmPm", "shouldClear", "toRef", "emitValue", "genValue", "watch", "setPeriod", "setInputData", "old", "onMounted", "pad", "Date", "getHours", "getMinutes", "getSeconds", "hour", "minute", "second", "trim", "toLowerCase", "match", "convert12to24", "parseInt", "firstAllowed", "allowedFn", "range", "first", "find", "length", "newHour", "onInput", "onChange", "emitChange", "useRender", "pickerProps", "VPicker", "filterProps", "timePickerControlsProps", "VTimePickerControls", "timePickerClockProps", "VTimePickerClock", "_createVNode", "_mergeProps", "undefined", "class", "hideHeader", "style", "_createElementVNode", "header", "convert24to12", "actions", "makeVTreeviewGroupProps", "propsFactory", "omit", "makeVListGroupProps", "collapseIcon", "expandIcon", "VTreeviewGroup", "genericComponent", "name", "props", "setup", "_ref", "slots", "vListGroupRef", "ref", "toggleIcon", "computed", "value", "isOpen", "activatorDefaults", "VTreeviewItem", "prependIcon", "undefined", "appendIcon", "useRender", "listGroupProps", "VListGroup", "filterProps", "_createVNode", "_mergeProps", "class", "activator", "slotProps", "_createElementVNode", "_Fragment", "VDefaultsProvider", "default", "VTreeviewSymbol", "Symbol", "for", "makeVTreeviewItemProps", "propsFactory", "loading", "Boolean", "hideActions", "hasCustomPrepend", "indentLines", "Array", "toggleIcon", "IconValue", "makeVListItemProps", "slim", "VTreeviewItem", "genericComponent", "name", "props", "emits", "toggleExpand", "value", "setup", "_ref", "slots", "emit", "visibleIds", "inject", "VTreeviewSymbol", "ref", "vListItemRef", "isActivatableGroupActivator", "computed", "root", "activatable", "isGroupActivator", "vListItemRefIsClickable", "link", "isClickable", "list", "disabled", "isFiltered", "has", "toRaw", "id", "activateGroupActivator", "e", "activate", "isActivated", "onClickAction", "preventDefault", "stopPropagation", "useRender", "listItemProps", "VListItem", "filterProps", "hasPrepend", "prepend", "prependIcon", "prependAvatar", "_createVNode", "_mergeProps", "undefined", "class", "slotProps", "_createElementVNode", "_Fragment", "length", "map", "type", "_normalizeClass", "VListItemAction", "default", "toggle", "VBtn", "loader", "VProgressCircular", "VDefaultsProvider", "density", "icon", "variant", "indeterminate", "size", "width", "onClick", "VAvatar", "VIcon", "image", "appendAvatar", "appendIcon", "start", "forwardRefs", "makeVTreeviewChildrenProps", "propsFactory", "fluid", "Boolean", "disabled", "loadChildren", "Function", "loadingIcon", "type", "String", "default", "items", "Array", "openOnClick", "undefined", "indeterminateIcon", "IconValue", "falseIcon", "trueIcon", "returnObject", "activatable", "selectable", "selectedColor", "selectStrategy", "Object", "index", "Number", "isLastGroup", "separateRoots", "parentIndentLines", "indentLinesVariant", "path", "pick", "makeVTreeviewItemProps", "makeDensityProps", "VTreeviewChildren", "genericComponent", "name", "props", "setup", "_ref", "slots", "isLoading", "reactive", "Set", "activatorItems", "ref", "isClickOnOpen", "computed", "checkChildren", "item", "length", "children", "add", "value", "raw", "delete", "selectItem", "select", "isSelected", "map", "itemProps", "loading", "has", "nextItemHasChildren", "at", "depth", "isLast", "treeItemProps", "isFirst", "hideAction", "hideActions", "indentLines", "getIndentLines", "leafLinks", "variant", "slotsWithItem", "toggle", "slotProps", "internalItem", "prepend", "_createElementVNode", "_Fragment", "includes", "_createVNode", "VListItemAction", "VCheckboxBtn", "density", "isIndeterminate", "v", "e", "stopPropagation", "key", "append", "title", "subtitle", "treeviewGroupProps", "VTreeviewGroup", "filterProps", "treeviewChildrenProps", "footerProps", "footer", "_mergeProps", "activator", "_ref2", "activatorProps", "listItemProps", "node", "onToggleExpand", "onClick", "renderSlot", "header", "VTreeviewItem", "el", "divider", "VDivider", "subheader", "VListSubheader", "leaf", "toRaw", "flatten", "items", "flat", "arguments", "length", "undefined", "item", "push", "children", "makeVTreeviewProps", "propsFactory", "openAll", "Boolean", "indentLines", "String", "search", "hideNoData", "noDataText", "type", "default", "makeFilterProps", "filterKeys", "omit", "makeVTreeviewChildrenProps", "makeVListProps", "collapseIcon", "expandIcon", "slim", "modelValue", "Array", "VTreeview", "genericComponent", "name", "props", "emits", "val", "value", "setup", "_ref", "slots", "emit", "t", "useLocale", "useListItems", "activeColor", "toRef", "baseColor", "color", "activated", "useProxiedModel", "_selected", "selected", "computed", "get", "set", "vListRef", "ref", "opened", "flatItems", "filteredItems", "useFilter", "visibleIds", "getPath", "Set", "flatMap", "itemVal", "returnObject", "raw", "getChildren", "map", "toRaw", "id", "arr", "queue", "slice", "child", "shift", "ids", "i", "concat", "provide", "VTreeviewSymbol", "provideDefaults", "VTreeviewGroup", "VTreeviewItem", "activeClass", "density", "disabled", "lines", "variant", "useRender", "listProps", "VList", "filterProps", "treeviewChildrenProps", "VTreeviewChildren", "indentLinesVariant", "_createVNode", "_mergeProps", "fluid", "class", "style", "$event", "size", "VListItem", "VValidation", "genericComponent", "name", "props", "makeValidationProps", "emits", "value", "setup", "_ref", "slots", "validation", "useValidation", "default"] } diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAlert.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAlert.js index 6ad12e7..f64a335 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAlert.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAlert.js @@ -1,34 +1,35 @@ import { VAlert, VAlertTitle -} from "./chunk-TSYQL5U3.js"; +} from "./chunk-QMLWKRPM.js"; import "./chunk-MVBFAXEB.js"; -import "./chunk-QC7VWQER.js"; -import "./chunk-NURQ3473.js"; -import "./chunk-ET5GCC5W.js"; +import "./chunk-UQALH6SL.js"; +import "./chunk-5AQLTWWS.js"; import "./chunk-W6DJL42A.js"; import "./chunk-HOEZWRBG.js"; import "./chunk-ADXDXPPR.js"; import "./chunk-X7YBE6PF.js"; import "./chunk-YJD2PNP6.js"; -import "./chunk-U2DSRSME.js"; -import "./chunk-FVDWV4NO.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-MH76ZJYE.js"; +import "./chunk-UXZ55AO7.js"; +import "./chunk-6RFSM2OD.js"; import "./chunk-AJ7MUB7M.js"; import "./chunk-KTTVT6V2.js"; import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; +import "./chunk-4XZHKYGH.js"; import "./chunk-PIT7IT55.js"; -import "./chunk-VH7QIDM4.js"; import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-5BPWKCNA.js"; -import "./chunk-573D4TYC.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-OJDZBU5D.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-DS4J67XG.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VApp.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VApp.js index 94f23db..87cbf32 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VApp.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VApp.js @@ -1,6 +1,6 @@ import { VApp -} from "./chunk-IYFY4IHW.js"; +} from "./chunk-47GEKY7C.js"; import "./chunk-KQXZAEJP.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAppBar.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAppBar.js index 0379077..b6d826c 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAppBar.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAppBar.js @@ -2,40 +2,41 @@ import { VAppBar, VAppBarNavIcon, VAppBarTitle -} from "./chunk-BXEVD6W6.js"; -import "./chunk-LPZZJ62X.js"; -import "./chunk-QC7VWQER.js"; -import "./chunk-NURQ3473.js"; -import "./chunk-ET5GCC5W.js"; +} from "./chunk-P6EQK5CJ.js"; +import "./chunk-H2QFYTJQ.js"; +import "./chunk-TTIGZHWR.js"; +import "./chunk-PCKQGDLK.js"; +import "./chunk-B4JFJDWM.js"; +import "./chunk-5ONGSJQ2.js"; +import "./chunk-CAGZXMOS.js"; +import "./chunk-KQXZAEJP.js"; +import "./chunk-UQALH6SL.js"; +import "./chunk-5AQLTWWS.js"; import "./chunk-W6DJL42A.js"; import "./chunk-HOEZWRBG.js"; import "./chunk-ADXDXPPR.js"; -import "./chunk-PCKQGDLK.js"; -import "./chunk-6CRS5HI4.js"; import "./chunk-X7YBE6PF.js"; import "./chunk-YJD2PNP6.js"; -import "./chunk-B4JFJDWM.js"; -import "./chunk-U2DSRSME.js"; -import "./chunk-FVDWV4NO.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-MH76ZJYE.js"; +import "./chunk-UXZ55AO7.js"; +import "./chunk-6RFSM2OD.js"; import "./chunk-AJ7MUB7M.js"; import "./chunk-KTTVT6V2.js"; import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; +import "./chunk-4XZHKYGH.js"; import "./chunk-PIT7IT55.js"; -import "./chunk-VH7QIDM4.js"; import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-5BPWKCNA.js"; -import "./chunk-573D4TYC.js"; -import "./chunk-5ONGSJQ2.js"; -import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-OJDZBU5D.js"; -import "./chunk-KQXZAEJP.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-DS4J67XG.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAvatar.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAvatar.js new file mode 100644 index 0000000..cdfe708 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAvatar.js @@ -0,0 +1,24 @@ +import { + VAvatar +} from "./chunk-SXI5CS7S.js"; +import "./chunk-TTIGZHWR.js"; +import "./chunk-5ONGSJQ2.js"; +import "./chunk-CAGZXMOS.js"; +import "./chunk-ADXDXPPR.js"; +import "./chunk-X7YBE6PF.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-TM3MIDYC.js"; +import "./chunk-4XZHKYGH.js"; +import "./chunk-PIT7IT55.js"; +import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; +import "./chunk-2HZIACSB.js"; +import "./chunk-OJDZBU5D.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; +import "./chunk-3DSR7NCB.js"; +import "./chunk-LZ5T2ERG.js"; +import "./chunk-2MKFL3BX.js"; +export { + VAvatar +}; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAvatar.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAvatar.js.map new file mode 100644 index 0000000..9865211 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VAvatar.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": [], + "sourcesContent": [], + "mappings": "", + "names": [] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBottomNavigation.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBottomNavigation.js new file mode 100644 index 0000000..ccf9c8c --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBottomNavigation.js @@ -0,0 +1,22 @@ +import { + VBottomNavigation +} from "./chunk-LFKLAYDH.js"; +import "./chunk-PCKQGDLK.js"; +import "./chunk-KQXZAEJP.js"; +import "./chunk-5AQLTWWS.js"; +import "./chunk-W6DJL42A.js"; +import "./chunk-ADXDXPPR.js"; +import "./chunk-X7YBE6PF.js"; +import "./chunk-YJD2PNP6.js"; +import "./chunk-TM3MIDYC.js"; +import "./chunk-AQK3CYVW.js"; +import "./chunk-2HZIACSB.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-XDSAO7OT.js"; +import "./chunk-KA77II4V.js"; +import "./chunk-3DSR7NCB.js"; +import "./chunk-LZ5T2ERG.js"; +import "./chunk-2MKFL3BX.js"; +export { + VBottomNavigation +}; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBottomNavigation.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBottomNavigation.js.map new file mode 100644 index 0000000..9865211 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBottomNavigation.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": [], + "sourcesContent": [], + "mappings": "", + "names": [] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBreadcrumbs.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBreadcrumbs.js index 3f5260c..76241dd 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBreadcrumbs.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBreadcrumbs.js @@ -2,17 +2,18 @@ import { VBreadcrumbs, VBreadcrumbsDivider, VBreadcrumbsItem -} from "./chunk-WNCBJDZZ.js"; +} from "./chunk-TN4XZECZ.js"; +import "./chunk-GSWLJLRT.js"; import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; +import "./chunk-4XZHKYGH.js"; import "./chunk-PIT7IT55.js"; -import "./chunk-VH7QIDM4.js"; import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-573D4TYC.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-OJDZBU5D.js"; +import "./chunk-573D4TYC.js"; import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBtn.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBtn.js index 9cb2a73..fcf9218 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBtn.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBtn.js @@ -1,32 +1,33 @@ import "./chunk-MVBFAXEB.js"; import { VBtn -} from "./chunk-QC7VWQER.js"; -import "./chunk-NURQ3473.js"; -import "./chunk-ET5GCC5W.js"; +} from "./chunk-UQALH6SL.js"; +import "./chunk-5AQLTWWS.js"; import "./chunk-W6DJL42A.js"; import "./chunk-HOEZWRBG.js"; import "./chunk-ADXDXPPR.js"; import "./chunk-X7YBE6PF.js"; import "./chunk-YJD2PNP6.js"; -import "./chunk-U2DSRSME.js"; -import "./chunk-FVDWV4NO.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-MH76ZJYE.js"; +import "./chunk-UXZ55AO7.js"; +import "./chunk-6RFSM2OD.js"; import "./chunk-AJ7MUB7M.js"; import "./chunk-KTTVT6V2.js"; import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; +import "./chunk-4XZHKYGH.js"; import "./chunk-PIT7IT55.js"; -import "./chunk-VH7QIDM4.js"; import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-5BPWKCNA.js"; -import "./chunk-573D4TYC.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-OJDZBU5D.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-DS4J67XG.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBtnToggle.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBtnToggle.js index 9a192d8..efc8104 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBtnToggle.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VBtnToggle.js @@ -1,7 +1,7 @@ import "./chunk-F6LZGKE2.js"; import { VBtnToggle -} from "./chunk-NURQ3473.js"; +} from "./chunk-5AQLTWWS.js"; import "./chunk-W6DJL42A.js"; import "./chunk-ADXDXPPR.js"; import "./chunk-X7YBE6PF.js"; @@ -9,8 +9,8 @@ import "./chunk-YJD2PNP6.js"; import "./chunk-TM3MIDYC.js"; import "./chunk-AQK3CYVW.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-KA77II4V.js"; import "./chunk-BHV5Z34M.js"; +import "./chunk-KA77II4V.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCard.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCard.js index be92bd7..1b2726e 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCard.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCard.js @@ -5,33 +5,34 @@ import { VCardSubtitle, VCardText, VCardTitle -} from "./chunk-MPVSDM4V.js"; +} from "./chunk-3NOJ7Z44.js"; +import "./chunk-SXI5CS7S.js"; +import "./chunk-TTIGZHWR.js"; +import "./chunk-5ONGSJQ2.js"; +import "./chunk-CAGZXMOS.js"; import "./chunk-HOEZWRBG.js"; -import "./chunk-Z3677HMS.js"; import "./chunk-ADXDXPPR.js"; -import "./chunk-6CRS5HI4.js"; import "./chunk-X7YBE6PF.js"; import "./chunk-YJD2PNP6.js"; -import "./chunk-U2DSRSME.js"; -import "./chunk-FVDWV4NO.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-UXZ55AO7.js"; +import "./chunk-6RFSM2OD.js"; import "./chunk-AJ7MUB7M.js"; import "./chunk-KTTVT6V2.js"; import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; +import "./chunk-4XZHKYGH.js"; import "./chunk-PIT7IT55.js"; -import "./chunk-VH7QIDM4.js"; import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-5BPWKCNA.js"; -import "./chunk-573D4TYC.js"; -import "./chunk-5ONGSJQ2.js"; -import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-OJDZBU5D.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-DS4J67XG.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCheckbox.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCheckbox.js index 845ed11..6d3838c 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCheckbox.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCheckbox.js @@ -1,22 +1,23 @@ import { VCheckbox, VCheckboxBtn -} from "./chunk-BYBKODOB.js"; -import "./chunk-4VABFUPG.js"; +} from "./chunk-6HLLVLOR.js"; +import "./chunk-KHWE4FHS.js"; +import "./chunk-IK67YVHF.js"; import "./chunk-GAYXO4FM.js"; import "./chunk-B4JFJDWM.js"; -import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; -import "./chunk-PIT7IT55.js"; -import "./chunk-2HZIACSB.js"; -import "./chunk-5BPWKCNA.js"; import "./chunk-GUNW7S2L.js"; import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; +import "./chunk-TM3MIDYC.js"; +import "./chunk-4XZHKYGH.js"; +import "./chunk-PIT7IT55.js"; +import "./chunk-2HZIACSB.js"; import "./chunk-OJDZBU5D.js"; +import "./chunk-DS4J67XG.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VChip.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VChip.js index 3ceadf7..5fad703 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VChip.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VChip.js @@ -1,31 +1,32 @@ import { VChip -} from "./chunk-SHBPUR7N.js"; -import "./chunk-W6DJL42A.js"; -import "./chunk-Z3677HMS.js"; -import "./chunk-ADXDXPPR.js"; -import "./chunk-6CRS5HI4.js"; -import "./chunk-X7YBE6PF.js"; -import "./chunk-YJD2PNP6.js"; +} from "./chunk-PLNIG6WP.js"; +import "./chunk-SXI5CS7S.js"; +import "./chunk-TTIGZHWR.js"; import "./chunk-B4JFJDWM.js"; -import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; -import "./chunk-PIT7IT55.js"; -import "./chunk-VH7QIDM4.js"; -import "./chunk-AQK3CYVW.js"; -import "./chunk-2HZIACSB.js"; import "./chunk-NJV3GUE4.js"; -import "./chunk-5BPWKCNA.js"; -import "./chunk-573D4TYC.js"; import "./chunk-5ONGSJQ2.js"; import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-N4LJHDYD.js"; +import "./chunk-W6DJL42A.js"; +import "./chunk-ADXDXPPR.js"; +import "./chunk-X7YBE6PF.js"; +import "./chunk-YJD2PNP6.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-TM3MIDYC.js"; +import "./chunk-4XZHKYGH.js"; +import "./chunk-PIT7IT55.js"; +import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; +import "./chunk-2HZIACSB.js"; import "./chunk-OJDZBU5D.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-DS4J67XG.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCombobox.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCombobox.js new file mode 100644 index 0000000..7109f0e --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCombobox.js @@ -0,0 +1,58 @@ +import { + VCombobox +} from "./chunk-244ON7Z6.js"; +import "./chunk-4MMPKXON.js"; +import "./chunk-RB6DAYHX.js"; +import "./chunk-IZDIYS2S.js"; +import "./chunk-6MO6MKTY.js"; +import "./chunk-IZQZFEAL.js"; +import "./chunk-6HLLVLOR.js"; +import "./chunk-ITO3JWXJ.js"; +import "./chunk-PLNIG6WP.js"; +import "./chunk-LPDOFVDK.js"; +import "./chunk-MQSMF5CI.js"; +import "./chunk-SXI5CS7S.js"; +import "./chunk-X3WY3J75.js"; +import "./chunk-TTIGZHWR.js"; +import "./chunk-PCKQGDLK.js"; +import "./chunk-KHWE4FHS.js"; +import "./chunk-IK67YVHF.js"; +import "./chunk-GAYXO4FM.js"; +import "./chunk-B4JFJDWM.js"; +import "./chunk-NJV3GUE4.js"; +import "./chunk-CL6G3ICF.js"; +import "./chunk-YGX2Z63P.js"; +import "./chunk-BVUPSGRF.js"; +import "./chunk-5ONGSJQ2.js"; +import "./chunk-GUNW7S2L.js"; +import "./chunk-CAGZXMOS.js"; +import "./chunk-N4LJHDYD.js"; +import "./chunk-W6DJL42A.js"; +import "./chunk-ADXDXPPR.js"; +import "./chunk-X7YBE6PF.js"; +import "./chunk-YJD2PNP6.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-UXZ55AO7.js"; +import "./chunk-6RFSM2OD.js"; +import "./chunk-AJ7MUB7M.js"; +import "./chunk-KTTVT6V2.js"; +import "./chunk-TM3MIDYC.js"; +import "./chunk-4XZHKYGH.js"; +import "./chunk-PIT7IT55.js"; +import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; +import "./chunk-2HZIACSB.js"; +import "./chunk-OJDZBU5D.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-DS4J67XG.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; +import "./chunk-XDSAO7OT.js"; +import "./chunk-ENTLCOCZ.js"; +import "./chunk-KA77II4V.js"; +import "./chunk-3DSR7NCB.js"; +import "./chunk-LZ5T2ERG.js"; +import "./chunk-2MKFL3BX.js"; +export { + VCombobox +}; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCombobox.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCombobox.js.map new file mode 100644 index 0000000..9865211 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VCombobox.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": [], + "sourcesContent": [], + "mappings": "", + "names": [] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VDataTable.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VDataTable.js index 4d27a72..8868263 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VDataTable.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VDataTable.js @@ -6,59 +6,63 @@ import { VDataTableRows, VDataTableServer, VDataTableVirtual -} from "./chunk-4HCXUCLO.js"; -import "./chunk-ERI3RTQS.js"; -import "./chunk-VSEC5QGQ.js"; -import "./chunk-BYBKODOB.js"; -import "./chunk-SHBPUR7N.js"; -import "./chunk-HGIC64KW.js"; -import "./chunk-MVBFAXEB.js"; -import "./chunk-QC7VWQER.js"; -import "./chunk-NURQ3473.js"; -import "./chunk-ET5GCC5W.js"; -import "./chunk-W6DJL42A.js"; -import "./chunk-HV7P7R7J.js"; -import "./chunk-HOEZWRBG.js"; -import "./chunk-Z3677HMS.js"; -import "./chunk-ADXDXPPR.js"; -import "./chunk-PCKQGDLK.js"; -import "./chunk-6CRS5HI4.js"; -import "./chunk-X7YBE6PF.js"; -import "./chunk-YJD2PNP6.js"; +} from "./chunk-FCTFWI5H.js"; +import "./chunk-RB6DAYHX.js"; +import "./chunk-QV3QXWPM.js"; +import "./chunk-IZDIYS2S.js"; +import "./chunk-6MO6MKTY.js"; import "./chunk-IZQZFEAL.js"; -import "./chunk-J7Q2NMV7.js"; -import "./chunk-4VABFUPG.js"; +import "./chunk-6HLLVLOR.js"; +import "./chunk-ITO3JWXJ.js"; +import "./chunk-PLNIG6WP.js"; +import "./chunk-LPDOFVDK.js"; +import "./chunk-MQSMF5CI.js"; +import "./chunk-SXI5CS7S.js"; +import "./chunk-X3WY3J75.js"; +import "./chunk-TTIGZHWR.js"; +import "./chunk-PCKQGDLK.js"; +import "./chunk-KHWE4FHS.js"; +import "./chunk-IK67YVHF.js"; import "./chunk-GAYXO4FM.js"; import "./chunk-B4JFJDWM.js"; -import "./chunk-U2DSRSME.js"; -import "./chunk-FVDWV4NO.js"; +import "./chunk-WGYWYQOA.js"; +import "./chunk-NJV3GUE4.js"; +import "./chunk-CL6G3ICF.js"; +import "./chunk-YGX2Z63P.js"; +import "./chunk-BVUPSGRF.js"; +import "./chunk-5ONGSJQ2.js"; +import "./chunk-GUNW7S2L.js"; +import "./chunk-CAGZXMOS.js"; +import "./chunk-N4LJHDYD.js"; +import "./chunk-KQXZAEJP.js"; +import "./chunk-MVBFAXEB.js"; +import "./chunk-UQALH6SL.js"; +import "./chunk-5AQLTWWS.js"; +import "./chunk-W6DJL42A.js"; +import "./chunk-HOEZWRBG.js"; +import "./chunk-ADXDXPPR.js"; +import "./chunk-X7YBE6PF.js"; +import "./chunk-YJD2PNP6.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-MH76ZJYE.js"; +import "./chunk-UXZ55AO7.js"; +import "./chunk-6RFSM2OD.js"; import "./chunk-AJ7MUB7M.js"; import "./chunk-KTTVT6V2.js"; import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; +import "./chunk-4XZHKYGH.js"; import "./chunk-PIT7IT55.js"; -import "./chunk-VH7QIDM4.js"; import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-WGYWYQOA.js"; -import "./chunk-NJV3GUE4.js"; -import "./chunk-TS6Y6OVT.js"; -import "./chunk-YGX2Z63P.js"; -import "./chunk-5BPWKCNA.js"; -import "./chunk-BVUPSGRF.js"; -import "./chunk-573D4TYC.js"; -import "./chunk-GUNW7S2L.js"; -import "./chunk-5ONGSJQ2.js"; -import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; -import "./chunk-N4LJHDYD.js"; import "./chunk-OJDZBU5D.js"; -import "./chunk-KQXZAEJP.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-DS4J67XG.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-WXMECWZN.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VDialog.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VDialog.js index aabbf38..8b507e9 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VDialog.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VDialog.js @@ -1,19 +1,20 @@ import { VDialog -} from "./chunk-34XWDQGB.js"; +} from "./chunk-RWSHRKUK.js"; import "./chunk-B4JFJDWM.js"; -import "./chunk-VH7QIDM4.js"; -import "./chunk-TS6Y6OVT.js"; +import "./chunk-CL6G3ICF.js"; import "./chunk-YGX2Z63P.js"; import "./chunk-BVUPSGRF.js"; -import "./chunk-573D4TYC.js"; import "./chunk-GUNW7S2L.js"; import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-N4LJHDYD.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-PAT7NP2Z.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VDivider.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VDivider.js index 412aa5c..d46e836 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VDivider.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VDivider.js @@ -1,6 +1,6 @@ import { VDivider -} from "./chunk-WXMECWZN.js"; +} from "./chunk-X3WY3J75.js"; import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VExpansionPanel.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VExpansionPanel.js index 2c63691..be6b6ac 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VExpansionPanel.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VExpansionPanel.js @@ -3,21 +3,22 @@ import { VExpansionPanelText, VExpansionPanelTitle, VExpansionPanels -} from "./chunk-TSTWIJCO.js"; +} from "./chunk-SCY7DFFY.js"; +import "./chunk-B4JFJDWM.js"; +import "./chunk-YGX2Z63P.js"; import "./chunk-W6DJL42A.js"; import "./chunk-YJD2PNP6.js"; -import "./chunk-B4JFJDWM.js"; -import "./chunk-CMZ4UYUX.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-4XZHKYGH.js"; import "./chunk-PIT7IT55.js"; -import "./chunk-VH7QIDM4.js"; import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-YGX2Z63P.js"; -import "./chunk-5BPWKCNA.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-OJDZBU5D.js"; -import "./chunk-KA77II4V.js"; +import "./chunk-DS4J67XG.js"; import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; +import "./chunk-KA77II4V.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VFileInput.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VFileInput.js index 9f0d6cf..0238d4a 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VFileInput.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VFileInput.js @@ -1,41 +1,42 @@ import { VFileInput -} from "./chunk-PEUMXYT2.js"; -import "./chunk-SHBPUR7N.js"; -import "./chunk-W6DJL42A.js"; -import "./chunk-Z3677HMS.js"; -import "./chunk-ADXDXPPR.js"; -import "./chunk-6CRS5HI4.js"; -import "./chunk-X7YBE6PF.js"; -import "./chunk-YJD2PNP6.js"; +} from "./chunk-EKMPZMZF.js"; import "./chunk-OI3EYDCB.js"; -import "./chunk-J7Q2NMV7.js"; -import "./chunk-4VABFUPG.js"; +import "./chunk-ITO3JWXJ.js"; +import "./chunk-PLNIG6WP.js"; +import "./chunk-SXI5CS7S.js"; +import "./chunk-TTIGZHWR.js"; +import "./chunk-IK67YVHF.js"; import "./chunk-GAYXO4FM.js"; import "./chunk-B4JFJDWM.js"; -import "./chunk-U2DSRSME.js"; -import "./chunk-FVDWV4NO.js"; +import "./chunk-NJV3GUE4.js"; +import "./chunk-5ONGSJQ2.js"; +import "./chunk-GUNW7S2L.js"; +import "./chunk-CAGZXMOS.js"; +import "./chunk-N4LJHDYD.js"; +import "./chunk-W6DJL42A.js"; +import "./chunk-ADXDXPPR.js"; +import "./chunk-X7YBE6PF.js"; +import "./chunk-YJD2PNP6.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-UXZ55AO7.js"; +import "./chunk-6RFSM2OD.js"; import "./chunk-AJ7MUB7M.js"; import "./chunk-KTTVT6V2.js"; import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; +import "./chunk-4XZHKYGH.js"; import "./chunk-PIT7IT55.js"; -import "./chunk-VH7QIDM4.js"; import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-NJV3GUE4.js"; -import "./chunk-5BPWKCNA.js"; -import "./chunk-573D4TYC.js"; -import "./chunk-GUNW7S2L.js"; -import "./chunk-5ONGSJQ2.js"; -import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; -import "./chunk-N4LJHDYD.js"; import "./chunk-OJDZBU5D.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-DS4J67XG.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VGrid.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VGrid.js index f017cc7..b1dbeb0 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VGrid.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VGrid.js @@ -3,10 +3,10 @@ import { VContainer, VRow, VSpacer -} from "./chunk-UIXKNP5E.js"; +} from "./chunk-CMTCIV56.js"; +import "./chunk-N4LJHDYD.js"; import "./chunk-2HZIACSB.js"; import "./chunk-6EZKHCRW.js"; -import "./chunk-N4LJHDYD.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; import "./chunk-LZ5T2ERG.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VIcon.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VIcon.js index 6ea7fb6..40d7f6d 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VIcon.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VIcon.js @@ -1,6 +1,6 @@ import { VIcon -} from "./chunk-CMZ4UYUX.js"; +} from "./chunk-4XZHKYGH.js"; import "./chunk-PIT7IT55.js"; import "./chunk-2HZIACSB.js"; import { diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VImg.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VImg.js index aace555..1638db5 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VImg.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VImg.js @@ -1,11 +1,11 @@ import { VImg -} from "./chunk-6CRS5HI4.js"; -import "./chunk-AQK3CYVW.js"; +} from "./chunk-TTIGZHWR.js"; import "./chunk-5ONGSJQ2.js"; import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; +import "./chunk-AQK3CYVW.js"; import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; export { diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VList.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VList.js index 45565f5..f2c60d7 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VList.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VList.js @@ -8,29 +8,30 @@ import { VListItemSubtitle, VListItemTitle, VListSubheader -} from "./chunk-HV7P7R7J.js"; -import "./chunk-Z3677HMS.js"; -import "./chunk-ADXDXPPR.js"; +} from "./chunk-MQSMF5CI.js"; +import "./chunk-SXI5CS7S.js"; +import "./chunk-X3WY3J75.js"; +import "./chunk-TTIGZHWR.js"; import "./chunk-PCKQGDLK.js"; -import "./chunk-6CRS5HI4.js"; -import "./chunk-X7YBE6PF.js"; -import "./chunk-YJD2PNP6.js"; import "./chunk-B4JFJDWM.js"; -import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; -import "./chunk-PIT7IT55.js"; -import "./chunk-VH7QIDM4.js"; -import "./chunk-AQK3CYVW.js"; -import "./chunk-2HZIACSB.js"; -import "./chunk-5BPWKCNA.js"; -import "./chunk-573D4TYC.js"; import "./chunk-5ONGSJQ2.js"; import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; +import "./chunk-ADXDXPPR.js"; +import "./chunk-X7YBE6PF.js"; +import "./chunk-YJD2PNP6.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-TM3MIDYC.js"; +import "./chunk-4XZHKYGH.js"; +import "./chunk-PIT7IT55.js"; +import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; +import "./chunk-2HZIACSB.js"; import "./chunk-OJDZBU5D.js"; -import "./chunk-KA77II4V.js"; -import "./chunk-WXMECWZN.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-DS4J67XG.js"; import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; +import "./chunk-KA77II4V.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VMain.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VMain.js index 76ad54d..5c59f59 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VMain.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VMain.js @@ -1,10 +1,10 @@ import { VMain -} from "./chunk-DRSCVHAQ.js"; +} from "./chunk-Q5BHIW5H.js"; import "./chunk-PCKQGDLK.js"; +import "./chunk-KQXZAEJP.js"; import "./chunk-2HZIACSB.js"; import "./chunk-6EZKHCRW.js"; -import "./chunk-KQXZAEJP.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VMenu.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VMenu.js index 4ce1cd3..0e92f51 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VMenu.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VMenu.js @@ -1,19 +1,20 @@ import { VMenu -} from "./chunk-HGIC64KW.js"; +} from "./chunk-LPDOFVDK.js"; import "./chunk-B4JFJDWM.js"; -import "./chunk-VH7QIDM4.js"; -import "./chunk-TS6Y6OVT.js"; +import "./chunk-CL6G3ICF.js"; import "./chunk-YGX2Z63P.js"; import "./chunk-BVUPSGRF.js"; -import "./chunk-573D4TYC.js"; import "./chunk-GUNW7S2L.js"; import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-N4LJHDYD.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-PAT7NP2Z.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VNavigationDrawer.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VNavigationDrawer.js index 67f5e24..e6fa0a6 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VNavigationDrawer.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VNavigationDrawer.js @@ -1,26 +1,27 @@ import { VNavigationDrawer -} from "./chunk-7SKEB5LN.js"; +} from "./chunk-ZB5S5BI5.js"; +import "./chunk-TTIGZHWR.js"; import "./chunk-PCKQGDLK.js"; -import "./chunk-6CRS5HI4.js"; -import "./chunk-X7YBE6PF.js"; -import "./chunk-YJD2PNP6.js"; -import "./chunk-VH7QIDM4.js"; -import "./chunk-AQK3CYVW.js"; -import "./chunk-2HZIACSB.js"; import "./chunk-WGYWYQOA.js"; import "./chunk-NJV3GUE4.js"; import "./chunk-BVUPSGRF.js"; -import "./chunk-573D4TYC.js"; import "./chunk-5ONGSJQ2.js"; import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-N4LJHDYD.js"; import "./chunk-KQXZAEJP.js"; +import "./chunk-X7YBE6PF.js"; +import "./chunk-YJD2PNP6.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; +import "./chunk-2HZIACSB.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VOverlay.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VOverlay.js new file mode 100644 index 0000000..1924640 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VOverlay.js @@ -0,0 +1,18 @@ +import { + VOverlay +} from "./chunk-CL6G3ICF.js"; +import "./chunk-YGX2Z63P.js"; +import "./chunk-BVUPSGRF.js"; +import "./chunk-CAGZXMOS.js"; +import "./chunk-N4LJHDYD.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; +import "./chunk-ENTLCOCZ.js"; +import "./chunk-KA77II4V.js"; +import "./chunk-3DSR7NCB.js"; +import "./chunk-LZ5T2ERG.js"; +import "./chunk-2MKFL3BX.js"; +export { + VOverlay +}; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VOverlay.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VOverlay.js.map new file mode 100644 index 0000000..9865211 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VOverlay.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": [], + "sourcesContent": [], + "mappings": "", + "names": [] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VProgressCircular.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VProgressCircular.js index 7aa0640..d51b419 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VProgressCircular.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VProgressCircular.js @@ -1,11 +1,11 @@ import { VProgressCircular -} from "./chunk-ET5GCC5W.js"; +} from "./chunk-MH76ZJYE.js"; import "./chunk-AJ7MUB7M.js"; import "./chunk-PIT7IT55.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-XDSAO7OT.js"; import "./chunk-BHV5Z34M.js"; +import "./chunk-XDSAO7OT.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VProgressLinear.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VProgressLinear.js index 612724d..fc982d7 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VProgressLinear.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VProgressLinear.js @@ -1,14 +1,14 @@ import { VProgressLinear -} from "./chunk-FVDWV4NO.js"; +} from "./chunk-6RFSM2OD.js"; import "./chunk-AJ7MUB7M.js"; import "./chunk-KTTVT6V2.js"; import "./chunk-AQK3CYVW.js"; import "./chunk-2HZIACSB.js"; +import "./chunk-BHV5Z34M.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSelect.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSelect.js index ca00c61..fb1cd04 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSelect.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSelect.js @@ -1,50 +1,53 @@ +import "./chunk-QV3QXWPM.js"; import { VSelect -} from "./chunk-ERI3RTQS.js"; -import "./chunk-VSEC5QGQ.js"; -import "./chunk-BYBKODOB.js"; -import "./chunk-SHBPUR7N.js"; -import "./chunk-HGIC64KW.js"; -import "./chunk-W6DJL42A.js"; -import "./chunk-HV7P7R7J.js"; -import "./chunk-Z3677HMS.js"; -import "./chunk-ADXDXPPR.js"; -import "./chunk-PCKQGDLK.js"; -import "./chunk-6CRS5HI4.js"; -import "./chunk-X7YBE6PF.js"; -import "./chunk-YJD2PNP6.js"; +} from "./chunk-IZDIYS2S.js"; +import "./chunk-6MO6MKTY.js"; import "./chunk-IZQZFEAL.js"; -import "./chunk-J7Q2NMV7.js"; -import "./chunk-4VABFUPG.js"; +import "./chunk-6HLLVLOR.js"; +import "./chunk-ITO3JWXJ.js"; +import "./chunk-PLNIG6WP.js"; +import "./chunk-LPDOFVDK.js"; +import "./chunk-MQSMF5CI.js"; +import "./chunk-SXI5CS7S.js"; +import "./chunk-X3WY3J75.js"; +import "./chunk-TTIGZHWR.js"; +import "./chunk-PCKQGDLK.js"; +import "./chunk-KHWE4FHS.js"; +import "./chunk-IK67YVHF.js"; import "./chunk-GAYXO4FM.js"; import "./chunk-B4JFJDWM.js"; -import "./chunk-U2DSRSME.js"; -import "./chunk-FVDWV4NO.js"; +import "./chunk-NJV3GUE4.js"; +import "./chunk-CL6G3ICF.js"; +import "./chunk-YGX2Z63P.js"; +import "./chunk-BVUPSGRF.js"; +import "./chunk-5ONGSJQ2.js"; +import "./chunk-GUNW7S2L.js"; +import "./chunk-CAGZXMOS.js"; +import "./chunk-N4LJHDYD.js"; +import "./chunk-W6DJL42A.js"; +import "./chunk-ADXDXPPR.js"; +import "./chunk-X7YBE6PF.js"; +import "./chunk-YJD2PNP6.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-UXZ55AO7.js"; +import "./chunk-6RFSM2OD.js"; import "./chunk-AJ7MUB7M.js"; import "./chunk-KTTVT6V2.js"; import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; +import "./chunk-4XZHKYGH.js"; import "./chunk-PIT7IT55.js"; -import "./chunk-VH7QIDM4.js"; import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-NJV3GUE4.js"; -import "./chunk-TS6Y6OVT.js"; -import "./chunk-YGX2Z63P.js"; -import "./chunk-5BPWKCNA.js"; -import "./chunk-BVUPSGRF.js"; -import "./chunk-573D4TYC.js"; -import "./chunk-GUNW7S2L.js"; -import "./chunk-5ONGSJQ2.js"; -import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; -import "./chunk-N4LJHDYD.js"; import "./chunk-OJDZBU5D.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-DS4J67XG.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-WXMECWZN.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSheet.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSheet.js index 676fd2d..8c2b4ce 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSheet.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSheet.js @@ -1,16 +1,16 @@ import { VSheet -} from "./chunk-RNFCLGZV.js"; +} from "./chunk-7M5DDQ46.js"; import "./chunk-HOEZWRBG.js"; import "./chunk-X7YBE6PF.js"; import "./chunk-YJD2PNP6.js"; import "./chunk-KTTVT6V2.js"; import "./chunk-AQK3CYVW.js"; import "./chunk-2HZIACSB.js"; +import "./chunk-BHV5Z34M.js"; import "./chunk-6EZKHCRW.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSlider.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSlider.js index 4501d6c..ac2eb11 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSlider.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSlider.js @@ -1,23 +1,23 @@ import { VSlider -} from "./chunk-LHMOJDYM.js"; -import "./chunk-YJD2PNP6.js"; -import "./chunk-4VABFUPG.js"; +} from "./chunk-WGWEQK64.js"; +import "./chunk-IK67YVHF.js"; import "./chunk-GAYXO4FM.js"; import "./chunk-B4JFJDWM.js"; +import "./chunk-GUNW7S2L.js"; +import "./chunk-CAGZXMOS.js"; +import "./chunk-YJD2PNP6.js"; import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; +import "./chunk-4XZHKYGH.js"; import "./chunk-PIT7IT55.js"; import "./chunk-AQK3CYVW.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-5BPWKCNA.js"; -import "./chunk-GUNW7S2L.js"; -import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-OJDZBU5D.js"; +import "./chunk-DS4J67XG.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSnackbar.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSnackbar.js index 4893ba6..653d115 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSnackbar.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSnackbar.js @@ -1,29 +1,30 @@ import { VSnackbar -} from "./chunk-YDVSSFCH.js"; -import "./chunk-HOEZWRBG.js"; -import "./chunk-ADXDXPPR.js"; -import "./chunk-FVDWV4NO.js"; -import "./chunk-AJ7MUB7M.js"; -import "./chunk-KTTVT6V2.js"; -import "./chunk-VH7QIDM4.js"; -import "./chunk-AQK3CYVW.js"; -import "./chunk-2HZIACSB.js"; +} from "./chunk-CCNWGDBL.js"; import "./chunk-WGYWYQOA.js"; import "./chunk-NJV3GUE4.js"; -import "./chunk-TS6Y6OVT.js"; +import "./chunk-CL6G3ICF.js"; import "./chunk-YGX2Z63P.js"; import "./chunk-BVUPSGRF.js"; -import "./chunk-573D4TYC.js"; import "./chunk-GUNW7S2L.js"; import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-N4LJHDYD.js"; import "./chunk-KQXZAEJP.js"; +import "./chunk-HOEZWRBG.js"; +import "./chunk-ADXDXPPR.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-6RFSM2OD.js"; +import "./chunk-AJ7MUB7M.js"; +import "./chunk-KTTVT6V2.js"; +import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; +import "./chunk-2HZIACSB.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSwitch.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSwitch.js new file mode 100644 index 0000000..1eaaa09 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSwitch.js @@ -0,0 +1,33 @@ +import { + VSwitch +} from "./chunk-L7BQJLEW.js"; +import "./chunk-KHWE4FHS.js"; +import "./chunk-IK67YVHF.js"; +import "./chunk-GAYXO4FM.js"; +import "./chunk-B4JFJDWM.js"; +import "./chunk-GUNW7S2L.js"; +import "./chunk-CAGZXMOS.js"; +import "./chunk-MH76ZJYE.js"; +import "./chunk-UXZ55AO7.js"; +import "./chunk-6RFSM2OD.js"; +import "./chunk-AJ7MUB7M.js"; +import "./chunk-KTTVT6V2.js"; +import "./chunk-TM3MIDYC.js"; +import "./chunk-4XZHKYGH.js"; +import "./chunk-PIT7IT55.js"; +import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; +import "./chunk-2HZIACSB.js"; +import "./chunk-OJDZBU5D.js"; +import "./chunk-DS4J67XG.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; +import "./chunk-XDSAO7OT.js"; +import "./chunk-ENTLCOCZ.js"; +import "./chunk-KA77II4V.js"; +import "./chunk-3DSR7NCB.js"; +import "./chunk-LZ5T2ERG.js"; +import "./chunk-2MKFL3BX.js"; +export { + VSwitch +}; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSwitch.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSwitch.js.map new file mode 100644 index 0000000..9865211 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VSwitch.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": [], + "sourcesContent": [], + "mappings": "", + "names": [] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTextField.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTextField.js index 11e2342..c23e9fa 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTextField.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTextField.js @@ -1,31 +1,32 @@ import "./chunk-4MMPKXON.js"; import { VTextField -} from "./chunk-VSEC5QGQ.js"; +} from "./chunk-6MO6MKTY.js"; import "./chunk-IZQZFEAL.js"; -import "./chunk-J7Q2NMV7.js"; -import "./chunk-4VABFUPG.js"; +import "./chunk-ITO3JWXJ.js"; +import "./chunk-IK67YVHF.js"; import "./chunk-GAYXO4FM.js"; import "./chunk-B4JFJDWM.js"; -import "./chunk-U2DSRSME.js"; -import "./chunk-FVDWV4NO.js"; +import "./chunk-5ONGSJQ2.js"; +import "./chunk-GUNW7S2L.js"; +import "./chunk-CAGZXMOS.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-UXZ55AO7.js"; +import "./chunk-6RFSM2OD.js"; import "./chunk-AJ7MUB7M.js"; import "./chunk-KTTVT6V2.js"; import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; +import "./chunk-4XZHKYGH.js"; import "./chunk-PIT7IT55.js"; -import "./chunk-VH7QIDM4.js"; import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-GUNW7S2L.js"; -import "./chunk-5ONGSJQ2.js"; -import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-OJDZBU5D.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTextarea.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTextarea.js index 684d814..1700d6e 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTextarea.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTextarea.js @@ -1,35 +1,36 @@ import { VTextarea -} from "./chunk-I4SZJCEY.js"; -import "./chunk-OI3EYDCB.js"; +} from "./chunk-T4XKRUDE.js"; import "./chunk-IZQZFEAL.js"; -import "./chunk-J7Q2NMV7.js"; -import "./chunk-4VABFUPG.js"; +import "./chunk-OI3EYDCB.js"; +import "./chunk-ITO3JWXJ.js"; +import "./chunk-IK67YVHF.js"; import "./chunk-GAYXO4FM.js"; import "./chunk-B4JFJDWM.js"; -import "./chunk-U2DSRSME.js"; -import "./chunk-FVDWV4NO.js"; +import "./chunk-WGYWYQOA.js"; +import "./chunk-NJV3GUE4.js"; +import "./chunk-5ONGSJQ2.js"; +import "./chunk-GUNW7S2L.js"; +import "./chunk-CAGZXMOS.js"; +import "./chunk-N4LJHDYD.js"; +import "./chunk-KQXZAEJP.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-UXZ55AO7.js"; +import "./chunk-6RFSM2OD.js"; import "./chunk-AJ7MUB7M.js"; import "./chunk-KTTVT6V2.js"; import "./chunk-TM3MIDYC.js"; -import "./chunk-CMZ4UYUX.js"; +import "./chunk-4XZHKYGH.js"; import "./chunk-PIT7IT55.js"; -import "./chunk-VH7QIDM4.js"; import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; import "./chunk-2HZIACSB.js"; -import "./chunk-WGYWYQOA.js"; -import "./chunk-NJV3GUE4.js"; -import "./chunk-GUNW7S2L.js"; -import "./chunk-5ONGSJQ2.js"; -import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; -import "./chunk-N4LJHDYD.js"; import "./chunk-OJDZBU5D.js"; -import "./chunk-KQXZAEJP.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-XDSAO7OT.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VToolbar.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VToolbar.js index a6e0587..16004f8 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VToolbar.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VToolbar.js @@ -4,21 +4,22 @@ import { import { VToolbar, VToolbarTitle -} from "./chunk-LPZZJ62X.js"; -import "./chunk-ADXDXPPR.js"; -import "./chunk-6CRS5HI4.js"; -import "./chunk-X7YBE6PF.js"; -import "./chunk-YJD2PNP6.js"; +} from "./chunk-H2QFYTJQ.js"; +import "./chunk-TTIGZHWR.js"; import "./chunk-B4JFJDWM.js"; -import "./chunk-VH7QIDM4.js"; -import "./chunk-AQK3CYVW.js"; -import "./chunk-2HZIACSB.js"; import "./chunk-5ONGSJQ2.js"; import "./chunk-CAGZXMOS.js"; +import "./chunk-ADXDXPPR.js"; +import "./chunk-X7YBE6PF.js"; +import "./chunk-YJD2PNP6.js"; +import "./chunk-GSWLJLRT.js"; +import "./chunk-AQK3CYVW.js"; +import "./chunk-PAT7NP2Z.js"; +import "./chunk-2HZIACSB.js"; +import "./chunk-BHV5Z34M.js"; import "./chunk-6EZKHCRW.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import "./chunk-LZ5T2ERG.js"; import "./chunk-2MKFL3BX.js"; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTooltip.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTooltip.js new file mode 100644 index 0000000..d2e0a3c --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTooltip.js @@ -0,0 +1,20 @@ +import { + VTooltip +} from "./chunk-EXUNAYJA.js"; +import "./chunk-CL6G3ICF.js"; +import "./chunk-YGX2Z63P.js"; +import "./chunk-BVUPSGRF.js"; +import "./chunk-GUNW7S2L.js"; +import "./chunk-CAGZXMOS.js"; +import "./chunk-N4LJHDYD.js"; +import "./chunk-573D4TYC.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; +import "./chunk-ENTLCOCZ.js"; +import "./chunk-KA77II4V.js"; +import "./chunk-3DSR7NCB.js"; +import "./chunk-LZ5T2ERG.js"; +import "./chunk-2MKFL3BX.js"; +export { + VTooltip +}; diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTooltip.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTooltip.js.map new file mode 100644 index 0000000..9865211 --- /dev/null +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_components_VTooltip.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": [], + "sourcesContent": [], + "mappings": "", + "names": [] +} diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_directives.js b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_directives.js index cd6f5b5..14b8f75 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_directives.js +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_directives.js @@ -1,27 +1,29 @@ import { Resize, - Touch, + Touch +} from "./chunk-2AYDXCXT.js"; +import { VTooltip -} from "./chunk-6VKWM6MN.js"; +} from "./chunk-EXUNAYJA.js"; import { ClickOutside -} from "./chunk-TS6Y6OVT.js"; +} from "./chunk-CL6G3ICF.js"; import "./chunk-YGX2Z63P.js"; -import { - Ripple -} from "./chunk-5BPWKCNA.js"; import "./chunk-BVUPSGRF.js"; -import "./chunk-573D4TYC.js"; -import "./chunk-GUNW7S2L.js"; import { Intersect } from "./chunk-5ONGSJQ2.js"; +import "./chunk-GUNW7S2L.js"; import "./chunk-CAGZXMOS.js"; -import "./chunk-6EZKHCRW.js"; import "./chunk-N4LJHDYD.js"; +import "./chunk-573D4TYC.js"; +import { + Ripple +} from "./chunk-DS4J67XG.js"; +import "./chunk-BHV5Z34M.js"; +import "./chunk-6EZKHCRW.js"; import "./chunk-ENTLCOCZ.js"; import "./chunk-KA77II4V.js"; -import "./chunk-BHV5Z34M.js"; import "./chunk-3DSR7NCB.js"; import { consoleError, diff --git a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_directives.js.map b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_directives.js.map index 3e8182b..0e2deaf 100644 --- a/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_directives.js.map +++ b/ServerManagerWebApp/frontend/node_modules/.vite/deps/vuetify_directives.js.map @@ -2,6 +2,6 @@ "version": 3, "sources": ["../../vuetify/src/directives/mutate/index.ts", "../../vuetify/src/directives/scroll/index.ts", "../../vuetify/src/composables/directiveComponent.ts", "../../vuetify/src/directives/tooltip/index.ts"], "sourcesContent": ["// Types\nimport type { DirectiveBinding } from 'vue'\nimport type { MutationOptions } from '@/composables/mutationObserver'\n\nexport interface MutationDirectiveBinding extends Omit {\n value: MutationCallback | { handler: MutationCallback, options?: MutationObserverInit }\n modifiers: MutationOptions\n}\n\nfunction mounted (el: HTMLElement, binding: MutationDirectiveBinding) {\n const modifiers = binding.modifiers || {}\n const value = binding.value\n const { once, immediate, ...modifierKeys } = modifiers\n const defaultValue = !Object.keys(modifierKeys).length\n\n const { handler, options } = typeof value === 'object'\n ? value\n : {\n handler: value,\n options: {\n attributes: modifierKeys?.attr ?? defaultValue,\n characterData: modifierKeys?.char ?? defaultValue,\n childList: modifierKeys?.child ?? defaultValue,\n subtree: modifierKeys?.sub ?? defaultValue,\n },\n }\n\n const observer = new MutationObserver((\n mutations: MutationRecord[] = [],\n observer: MutationObserver\n ) => {\n handler?.(mutations, observer)\n\n if (once) unmounted(el, binding)\n })\n\n if (immediate) handler?.([], observer)\n\n el._mutate = Object(el._mutate)\n el._mutate![binding.instance!.$.uid] = { observer }\n\n observer.observe(el, options)\n}\n\nfunction unmounted (el: HTMLElement, binding: MutationDirectiveBinding) {\n if (!el._mutate?.[binding.instance!.$.uid]) return\n\n el._mutate[binding.instance!.$.uid]!.observer.disconnect()\n delete el._mutate[binding.instance!.$.uid]\n}\n\nexport const Mutate = {\n mounted,\n unmounted,\n}\n\nexport default Mutate\n", "// Types\nimport type { DirectiveBinding } from 'vue'\n\ninterface ScrollDirectiveBinding extends Omit {\n value: EventListener | {\n handler: EventListener\n options?: AddEventListenerOptions\n } | EventListenerObject & { options?: AddEventListenerOptions }\n modifiers?: {\n self?: boolean\n }\n}\n\nfunction mounted (el: HTMLElement, binding: ScrollDirectiveBinding) {\n const { self = false } = binding.modifiers ?? {}\n const value = binding.value\n const options = (typeof value === 'object' && value.options) || { passive: true }\n const handler = typeof value === 'function' || 'handleEvent' in value ? value : value.handler\n\n const target = self\n ? el\n : binding.arg\n ? document.querySelector(binding.arg)\n : window\n\n if (!target) return\n\n target.addEventListener('scroll', handler, options)\n\n el._onScroll = Object(el._onScroll)\n el._onScroll![binding.instance!.$.uid] = {\n handler,\n options,\n // Don't reference self\n target: self ? undefined : target,\n }\n}\n\nfunction unmounted (el: HTMLElement, binding: ScrollDirectiveBinding) {\n if (!el._onScroll?.[binding.instance!.$.uid]) return\n\n const { handler, options, target = el } = el._onScroll[binding.instance!.$.uid]!\n\n target.removeEventListener('scroll', handler, options)\n delete el._onScroll[binding.instance!.$.uid]\n}\n\nfunction updated (el: HTMLElement, binding: ScrollDirectiveBinding) {\n if (binding.value === binding.oldValue) return\n\n unmounted(el, binding)\n mounted(el, binding)\n}\n\nexport const Scroll = {\n mounted,\n unmounted,\n updated,\n}\n\nexport default Scroll\n", "// Utilities\nimport { h, mergeProps, render, resolveComponent } from 'vue'\nimport { consoleError, isObject } from '@/util'\n\n// Types\nimport type {\n Component,\n ComponentInternalInstance,\n ComponentPublicInstance,\n ConcreteComponent,\n DirectiveBinding,\n ObjectDirective,\n VNode,\n} from 'vue'\nimport type { ComponentInstance } from '@/util'\n\ntype ExcludeProps =\n | 'v-slots'\n | `v-slot:${string}`\n | `on${Uppercase}${string}`\n | 'key'\n | 'ref'\n | 'ref_for'\n | 'ref_key'\n | '$children'\n\ndeclare const CustomDirectiveSymbol: unique symbol\ntype DirectiveHook = (el: any, binding: B, vnode: VNode, prevVNode: VNode) => void\nexport interface CustomDirective {\n created?: DirectiveHook\n beforeMount?: DirectiveHook\n mounted?: DirectiveHook\n beforeUpdate?: DirectiveHook\n updated?: DirectiveHook\n beforeUnmount?: DirectiveHook\n unmounted?: DirectiveHook\n [CustomDirectiveSymbol]: true\n}\n\nexport function useDirectiveComponent <\n Binding extends DirectiveBinding,\n> (component: string | Component, props?: (binding: Binding) => Record): CustomDirective\nexport function useDirectiveComponent <\n C extends Component,\n Props = Omit['$props'], ExcludeProps>\n> (component: string | C, props?: Record): ObjectDirective\nexport function useDirectiveComponent (\n component: string | Component,\n props?: Record | ((binding: DirectiveBinding) => Record)\n): ObjectDirective | CustomDirective {\n const concreteComponent = (typeof component === 'string'\n ? resolveComponent(component)\n : component) as ConcreteComponent\n\n const hook = mountComponent(concreteComponent, props)\n\n return {\n mounted: hook,\n updated: hook,\n unmounted (el: HTMLElement) {\n render(null, el)\n },\n }\n}\n\nfunction mountComponent (component: ConcreteComponent, props?: Record | ((binding: DirectiveBinding) => Record)) {\n return function (el: HTMLElement, binding: DirectiveBinding, vnode: VNode) {\n const _props = typeof props === 'function' ? props(binding) : props\n const text = binding.value?.text ?? binding.value ?? _props?.text\n const value = isObject(binding.value) ? binding.value : {}\n\n // Get the children from the props or directive value, or the element's children\n const children = () => text ?? el.textContent\n\n // If vnode.ctx is the same as the instance, then we're bound to a plain element\n // and need to find the nearest parent component instance to inherit provides from\n const provides = (vnode.ctx === binding.instance!.$\n ? findComponentParent(vnode, binding.instance!.$)?.provides\n : vnode.ctx?.provides) ?? binding.instance!.$.provides\n\n const node = h(component, mergeProps(_props, value), children)\n node.appContext = Object.assign(\n Object.create(null),\n (binding.instance as ComponentPublicInstance).$.appContext,\n { provides }\n )\n\n render(node, el)\n }\n}\n\nfunction findComponentParent (vnode: VNode, root: ComponentInternalInstance): ComponentInternalInstance | null {\n // Walk the tree from root until we find the child vnode\n const stack = new Set()\n const walk = (children: VNode[]): boolean => {\n for (const child of children) {\n if (!child) continue\n\n if (child === vnode || (child.el && vnode.el && child.el === vnode.el)) {\n return true\n }\n\n stack.add(child)\n let result\n if (child.suspense) {\n result = walk([child.ssContent!])\n } else if (Array.isArray(child.children)) {\n result = walk(child.children as VNode[])\n } else if (child.component?.vnode) {\n result = walk([child.component?.subTree])\n }\n if (result) {\n return result\n }\n stack.delete(child)\n }\n\n return false\n }\n if (!walk([root.subTree])) {\n consoleError('Could not find original vnode, component will not inherit provides')\n return root\n }\n\n // Return the first component parent\n const result = Array.from(stack).reverse()\n for (const child of result) {\n if (child.component) {\n return child.component\n }\n }\n return root\n}\n", "// Components\nimport { VTooltip } from '@/components/VTooltip'\n\n// Composables\nimport { useDirectiveComponent } from '@/composables/directiveComponent'\n\n// Utilities\nimport { isObject } from '@/util'\n\n// Types\nimport type { DirectiveBinding } from 'vue'\nimport type { Anchor } from '@/util'\n\nexport interface TooltipDirectiveBinding extends Omit, 'arg' | 'value'> {\n arg?: { [T in Anchor]: T extends `${infer A} ${infer B}` ? `${A}-${B}` : T }[Anchor]\n value: boolean | string | Record\n}\n\nexport const Tooltip = useDirectiveComponent(VTooltip, binding => {\n const disabled = isObject(binding.value)\n ? !binding.value.text\n : ['', false, null].includes(binding.value) // undefined means true\n\n return {\n activator: disabled ? null : 'parent',\n location: binding.arg?.replace('-', ' '),\n text: typeof binding.value === 'boolean' ? undefined : binding.value,\n }\n})\n\nexport default Tooltip\n"], - "mappings": "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", + "mappings": "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", "names": ["mounted", "el", "binding", "modifiers", "value", "once", "immediate", "modifierKeys", "defaultValue", "Object", "keys", "length", "handler", "options", "attributes", "attr", "characterData", "char", "childList", "child", "subtree", "sub", "observer", "MutationObserver", "mutations", "arguments", "undefined", "unmounted", "_mutate", "instance", "$", "uid", "observe", "disconnect", "Mutate", "mounted", "el", "binding", "self", "modifiers", "value", "options", "passive", "handler", "target", "arg", "document", "querySelector", "window", "addEventListener", "_onScroll", "Object", "instance", "$", "uid", "undefined", "unmounted", "removeEventListener", "updated", "oldValue", "Scroll", "useDirectiveComponent", "component", "props", "concreteComponent", "resolveComponent", "hook", "mountComponent", "mounted", "updated", "unmounted", "el", "render", "binding", "vnode", "_props", "text", "value", "isObject", "children", "textContent", "provides", "ctx", "instance", "$", "findComponentParent", "node", "h", "mergeProps", "appContext", "Object", "assign", "create", "root", "stack", "Set", "walk", "child", "add", "result", "suspense", "ssContent", "Array", "isArray", "subTree", "delete", "consoleError", "from", "reverse", "Tooltip", "useDirectiveComponent", "VTooltip", "binding", "disabled", "isObject", "value", "text", "includes", "activator", "location", "arg", "replace", "undefined"] } diff --git a/ServerManagerWebApp/frontend/src/App.vue b/ServerManagerWebApp/frontend/src/App.vue index 4a323ee..2baca3d 100644 --- a/ServerManagerWebApp/frontend/src/App.vue +++ b/ServerManagerWebApp/frontend/src/App.vue @@ -8,6 +8,12 @@ + + + + diff --git a/ServerManagerWebApp/frontend/src/components/ComicsManager.vue b/ServerManagerWebApp/frontend/src/components/ComicsManager.vue index 0376fe0..9fdcf25 100644 --- a/ServerManagerWebApp/frontend/src/components/ComicsManager.vue +++ b/ServerManagerWebApp/frontend/src/components/ComicsManager.vue @@ -1,149 +1,536 @@ \ No newline at end of file diff --git a/ServerManagerWebApp/frontend/src/components/Dashboard.vue b/ServerManagerWebApp/frontend/src/components/Dashboard.vue new file mode 100644 index 0000000..10684ce --- /dev/null +++ b/ServerManagerWebApp/frontend/src/components/Dashboard.vue @@ -0,0 +1,130 @@ + + + diff --git a/ServerManagerWebApp/frontend/src/components/JobManagerWidget.vue b/ServerManagerWebApp/frontend/src/components/JobManagerWidget.vue new file mode 100644 index 0000000..da1da6b --- /dev/null +++ b/ServerManagerWebApp/frontend/src/components/JobManagerWidget.vue @@ -0,0 +1,84 @@ + + + diff --git a/ServerManagerWebApp/frontend/src/components/QbittorrentManager.vue b/ServerManagerWebApp/frontend/src/components/QbittorrentManager.vue new file mode 100644 index 0000000..b9e9f8a --- /dev/null +++ b/ServerManagerWebApp/frontend/src/components/QbittorrentManager.vue @@ -0,0 +1,338 @@ + + + + + \ No newline at end of file diff --git a/ServerManagerWebApp/frontend/src/components/SambaExplorer.vue b/ServerManagerWebApp/frontend/src/components/SambaExplorer.vue index ed112b5..b71840a 100644 --- a/ServerManagerWebApp/frontend/src/components/SambaExplorer.vue +++ b/ServerManagerWebApp/frontend/src/components/SambaExplorer.vue @@ -1,420 +1,494 @@