From 7948c86aa05cc082e1f5b809ff3452b2169186f8 Mon Sep 17 00:00:00 2001 From: Matt Troutman Date: Sat, 7 Mar 2026 21:43:35 -0600 Subject: [PATCH] Remove AppleDouble resource fork files from font_files Files starting with _ that are AppleDouble metadata (not real fonts) were being included in casks, causing Font Book issues. Deleted 57 such files from font_files/ and added detection to the cleanup script to prevent them in the future. Co-Authored-By: Claude Opus 4.6 --- .fontfoldercleanup/cleanup_font_folders.py | 19 ++++++++++-- Casks/font-clancy.rb | 1 - Casks/font-idgrotesk.rb | 28 ------------------ font_files/font-clancy/otf/_clancy-free.otf | Bin 220 -> 0 bytes .../otf/_idgrotesktrial-bold.otf | Bin 163 -> 0 bytes .../otf/_idgrotesktrial-bolditalic.otf | Bin 163 -> 0 bytes .../otf/_idgrotesktrial-book.otf | Bin 163 -> 0 bytes .../otf/_idgrotesktrial-bookitalic.otf | Bin 163 -> 0 bytes .../otf/_idgrotesktrial-italic.otf | Bin 163 -> 0 bytes .../otf/_idgrotesktrial-light.otf | Bin 163 -> 0 bytes .../otf/_idgrotesktrial-lightitalic.otf | Bin 163 -> 0 bytes .../otf/_idgrotesktrial-medium.otf | Bin 163 -> 0 bytes .../otf/_idgrotesktrial-mediumitalic.otf | Bin 163 -> 0 bytes .../otf/_idgrotesktrial-regular.otf | Bin 163 -> 0 bytes .../otf/_idgrotesktrial-semibold.otf | Bin 163 -> 0 bytes .../otf/_idgrotesktrial-semibolditalic.otf | Bin 163 -> 0 bytes .../otf/_idgrotesktrial-thin.otf | Bin 163 -> 0 bytes .../otf/_idgrotesktrial-thinitalic.otf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-bold.ttf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-bolditalic.ttf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-book.ttf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-bookitalic.ttf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-italic.ttf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-light.ttf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-lightitalic.ttf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-medium.ttf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-mediumitalic.ttf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-regular.ttf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-semibold.ttf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-semibolditalic.ttf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-thin.ttf | Bin 163 -> 0 bytes .../ttf/_idgrotesktrial-thinitalic.ttf | Bin 163 -> 0 bytes .../web/_idgrotesktrial-bold.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-bold.woff2 | Bin 163 -> 0 bytes .../web/_idgrotesktrial-bolditalic.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-bolditalic.woff2 | Bin 163 -> 0 bytes .../web/_idgrotesktrial-book.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-book.woff2 | Bin 163 -> 0 bytes .../web/_idgrotesktrial-bookitalic.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-bookitalic.woff2 | Bin 163 -> 0 bytes .../web/_idgrotesktrial-italic.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-italic.woff2 | Bin 163 -> 0 bytes .../web/_idgrotesktrial-light.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-light.woff2 | Bin 163 -> 0 bytes .../web/_idgrotesktrial-lightitalic.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-lightitalic.woff2 | Bin 163 -> 0 bytes .../web/_idgrotesktrial-medium.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-medium.woff2 | Bin 163 -> 0 bytes .../web/_idgrotesktrial-mediumitalic.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-mediumitalic.woff2 | Bin 163 -> 0 bytes .../web/_idgrotesktrial-regular.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-regular.woff2 | Bin 163 -> 0 bytes .../web/_idgrotesktrial-semibold.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-semibold.woff2 | Bin 163 -> 0 bytes .../web/_idgrotesktrial-semibolditalic.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-semibolditalic.woff2 | Bin 163 -> 0 bytes .../web/_idgrotesktrial-thin.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-thin.woff2 | Bin 163 -> 0 bytes .../web/_idgrotesktrial-thinitalic.woff | Bin 163 -> 0 bytes .../web/_idgrotesktrial-thinitalic.woff2 | Bin 163 -> 0 bytes 60 files changed, 17 insertions(+), 31 deletions(-) delete mode 100644 font_files/font-clancy/otf/_clancy-free.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-bold.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-bolditalic.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-book.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-bookitalic.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-italic.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-light.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-lightitalic.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-medium.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-mediumitalic.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-regular.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-semibold.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-semibolditalic.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-thin.otf delete mode 100644 font_files/font-idgrotesk/otf/_idgrotesktrial-thinitalic.otf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-bold.ttf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-bolditalic.ttf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-book.ttf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-bookitalic.ttf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-italic.ttf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-light.ttf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-lightitalic.ttf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-medium.ttf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-mediumitalic.ttf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-regular.ttf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-semibold.ttf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-semibolditalic.ttf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-thin.ttf delete mode 100644 font_files/font-idgrotesk/ttf/_idgrotesktrial-thinitalic.ttf delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-bold.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-bold.woff2 delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-bolditalic.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-bolditalic.woff2 delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-book.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-book.woff2 delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-bookitalic.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-bookitalic.woff2 delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-italic.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-italic.woff2 delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-light.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-light.woff2 delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-lightitalic.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-lightitalic.woff2 delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-medium.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-medium.woff2 delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-mediumitalic.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-mediumitalic.woff2 delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-regular.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-regular.woff2 delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-semibold.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-semibold.woff2 delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-semibolditalic.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-semibolditalic.woff2 delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-thin.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-thin.woff2 delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-thinitalic.woff delete mode 100644 font_files/font-idgrotesk/web/_idgrotesktrial-thinitalic.woff2 diff --git a/.fontfoldercleanup/cleanup_font_folders.py b/.fontfoldercleanup/cleanup_font_folders.py index 4f3ae0a..a677e07 100755 --- a/.fontfoldercleanup/cleanup_font_folders.py +++ b/.fontfoldercleanup/cleanup_font_folders.py @@ -33,11 +33,26 @@ class FontFolderCleaner: def move_file_to_correct_directory(self, file_path, folder_path): """Move file to the appropriate subdirectory.""" - if file_path.name == '.DS_Store': + if file_path.name == '.DS_Store' or file_path.name.startswith('._'): file_path.unlink() - print(f"Removed .DS_Store file: {file_path}") + print(f"Removed macOS metadata file: {file_path}") return + # Remove AppleDouble resource fork files (start with _ and aren't real fonts) + if file_path.name.startswith('_') and file_path.suffix.lower() in ( + '.ttf', '.otf', '.ttc', '.woff', '.woff2', '.eot', '.svg', + ): + # Check if it's an AppleDouble file by reading magic bytes + try: + with open(file_path, 'rb') as f: + magic = f.read(4) + if magic == b'\x00\x05\x16\x07': # AppleDouble magic number + file_path.unlink() + print(f"Removed AppleDouble resource fork: {file_path}") + return + except OSError: + pass + target_dir = self.get_target_directory(file_path) target_path = folder_path / target_dir / file_path.name diff --git a/Casks/font-clancy.rb b/Casks/font-clancy.rb index 9db9e26..af34c38 100644 --- a/Casks/font-clancy.rb +++ b/Casks/font-clancy.rb @@ -10,6 +10,5 @@ cask "font-clancy" do name "Clancy" homepage "http://clancy.genet-godzilla.ts.net:8085/Fonts/homebrew-fonts" - font "homebrew-fonts/font_files/font-clancy/otf/_clancy-free.otf" font "homebrew-fonts/font_files/font-clancy/otf/clancy-free.otf" end diff --git a/Casks/font-idgrotesk.rb b/Casks/font-idgrotesk.rb index 91ef16d..25772f6 100644 --- a/Casks/font-idgrotesk.rb +++ b/Casks/font-idgrotesk.rb @@ -10,20 +10,6 @@ cask "font-idgrotesk" do name "Idgrotesk" homepage "http://clancy.genet-godzilla.ts.net:8085/Fonts/homebrew-fonts" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-bold.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-bolditalic.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-book.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-bookitalic.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-italic.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-light.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-lightitalic.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-medium.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-mediumitalic.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-regular.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-semibold.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-semibolditalic.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-thin.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/ttf/_idgrotesktrial-thinitalic.ttf" font "homebrew-fonts/font_files/font-idgrotesk/ttf/idgrotesktrial-bold.ttf" font "homebrew-fonts/font_files/font-idgrotesk/ttf/idgrotesktrial-bolditalic.ttf" font "homebrew-fonts/font_files/font-idgrotesk/ttf/idgrotesktrial-book.ttf" @@ -38,20 +24,6 @@ cask "font-idgrotesk" do font "homebrew-fonts/font_files/font-idgrotesk/ttf/idgrotesktrial-semibolditalic.ttf" font "homebrew-fonts/font_files/font-idgrotesk/ttf/idgrotesktrial-thin.ttf" font "homebrew-fonts/font_files/font-idgrotesk/ttf/idgrotesktrial-thinitalic.ttf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-bold.otf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-bolditalic.otf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-book.otf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-bookitalic.otf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-italic.otf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-light.otf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-lightitalic.otf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-medium.otf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-mediumitalic.otf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-regular.otf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-semibold.otf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-semibolditalic.otf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-thin.otf" - font "homebrew-fonts/font_files/font-idgrotesk/otf/_idgrotesktrial-thinitalic.otf" font "homebrew-fonts/font_files/font-idgrotesk/otf/idgrotesktrial-bold.otf" font "homebrew-fonts/font_files/font-idgrotesk/otf/idgrotesktrial-bolditalic.otf" font "homebrew-fonts/font_files/font-idgrotesk/otf/idgrotesktrial-book.otf" diff --git a/font_files/font-clancy/otf/_clancy-free.otf b/font_files/font-clancy/otf/_clancy-free.otf deleted file mode 100644 index 3b8ecf1ec66cfcd590fd90422e7263e9fff9dc3b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 220 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@hTt&@$UdJ5x_AdBnYYuq+<#Yd!T7! uM2Pbz=jZAr78K;9>g6UT=Kv*G85C9YtzR{Iw)SQe{9M0vO&pqTBDnxzeij!1 diff --git a/font_files/font-idgrotesk/otf/_idgrotesktrial-bold.otf b/font_files/font-idgrotesk/otf/_idgrotesktrial-bold.otf deleted file mode 100644 index 374a435e8acf42194867d4cdd42cc211f0b8c34b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 163 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K$Vqox1Ojhs@R)|o50+1L3ClDI}aUl?c_=|y<2;dkJ5(HHS(lG;wxzV&S nBE&_L^K