diff --git a/dogs_muffins.ipynb b/dogs_muffins.ipynb new file mode 100644 index 0000000..f242c58 --- /dev/null +++ b/dogs_muffins.ipynb @@ -0,0 +1,550 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "IVGsNc0MUtLr", + "outputId": "f2f21d98-02c8-44b8-f13e-2d85a1ddd2c9" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Drive already mounted at /content/drive; to attempt to forcibly remount, call drive.mount(\"/content/drive\", force_remount=True).\n", + "Warning: Model file not found at /content/drive/MyDrive/Colab Notebooks/models/resnet_model_x50_175. Starting with a new model.\n" + ] + } + ], + "source": [ + "import torch\n", + "from torch import Tensor\n", + "from torch import nn\n", + "from torch import optim\n", + "from torchvision.datasets import ImageFolder\n", + "from torch.utils.data import Dataset, DataLoader, random_split\n", + "from PIL import Image\n", + "import torchvision as tv\n", + "from torchvision import models\n", + "import os\n", + "import numpy\n", + "from tqdm import tqdm\n", + "\n", + "import zipfile\n", + "from google.colab import drive\n", + "\n", + "drive.mount('/content/drive')\n", + "zipped_test = '/content/drive/MyDrive/для кодов/маффины/test.zip'\n", + "zipped_train ='/content/drive/MyDrive/для кодов/маффины/test.zip'\n", + "z = zipfile.ZipFile(zipped_test, 'r')\n", + "z.extractall(path='/content/dataset/test')\n", + "z = zipfile.ZipFile(zipped_train, 'r')\n", + "z.extractall(path='/content/dataset/train')\n", + "import gc\n", + "gc.collect()\n", + "\n", + "\n", + "DATASET_ROOT_DIR = '/content/dataset/'\n", + "BATCH_SIZE = 64\n", + "if torch.cuda.is_available():\n", + " device = 'cuda'\n", + "else:\n", + " device = 'cpu'\n", + "device\n", + "\n", + "\n", + "transforms = tv.transforms.Compose([\n", + " tv.transforms.Resize((224, 224)),\n", + " tv.transforms.ToTensor(),\n", + " tv.transforms.RandomHorizontalFlip(0.5),\n", + "])\n", + "\n", + "def is_valid_file(path):\n", + " \"\"\"Checks if a file is a valid image file and not a hidden macOS file.\"\"\"\n", + " return not path.startswith('._') and os.path.splitext(path)[-1].lower() in ['.jpg', '.jpeg', '.png', '.ppm', '.bmp', '.pgm', '.tif', '.tiff', '.webp']\n", + "\n", + "dataset = ImageFolder(root=os.path.join(DATASET_ROOT_DIR, 'train'),\n", + " transform=transforms,\n", + " is_valid_file=is_valid_file\n", + " ) # 0 - dogs\n", + "\n", + "\n", + "train_size = int(0.8 * len(dataset))\n", + "test_size = len(dataset) - train_size\n", + "train_dataset, test_dataset = random_split(dataset, [train_size, test_size])\n", + "\n", + "\n", + "train_data = DataLoader(\n", + " train_dataset,\n", + " batch_size=BATCH_SIZE,\n", + " shuffle=True,\n", + " )\n", + "test_data = DataLoader(\n", + " test_dataset,\n", + " batch_size=BATCH_SIZE,\n", + " shuffle=True,\n", + " )\n", + "class CustomResNet(nn.Module):\n", + " def __init__(self):\n", + " super(CustomResNet, self).__init__()\n", + " self.resnet = models.resnet18(pretrained=False)\n", + "\n", + " self.ep = 0\n", + "\n", + " num_ftrs = self.resnet.fc.in_features\n", + " self.resnet.fc = nn.Linear(num_ftrs, 2)\n", + "\n", + " def forward(self, x):\n", + " return self.resnet(x)\n", + "\n", + "\n", + "\n", + "model = CustomResNet()\n", + "model.to(device)\n", + "\n", + "\n", + "actual_ep=175\n", + "model_path = f'/content/drive/MyDrive/Colab Notebooks/models/resnet_model_x50_{actual_ep}'\n", + "if os.path.exists(model_path):\n", + " model = torch.load(model_path)\n", + "else:\n", + " print(f\"Warning: Model file not found at {model_path}. Starting with a new model.\")\n", + "loss_func = nn.CrossEntropyLoss()\n", + "optimizer = optim.Adam(model.parameters(), lr = 1e-4)\n", + "\n", + "\n", + "def save_model_to_drive(model, name):\n", + " pth = os.path.join('/content/drive/MyDrive/Colab Notebooks/models', name)\n", + " torch.save(model, pth)\n", + "\n", + "\n", + "def get_acc():\n", + " correct = 0\n", + " total = 0" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "R2crhrvkxJ8v", + "outputId": "c51a415a-b3fb-4dfc-a368-21fbd8561bfc" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Mounted at /content/drive\n" + ] + } + ], + "source": [ + "from google.colab import drive\n", + "drive.mount('/content/drive')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "SBdgo5D9CobC", + "outputId": "15991dbf-ade9-475f-8ce0-ae10618d2ccb" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Warning: Model file not found at /content/drive/MyDrive/Colab Notebooks/models/resnet_model_x50_175. Starting with a new model.\n" + ] + }, + { + "output_type": "stream", + "name": "stderr", + "text": [ + "100%|██████████| 37/37 [05:00<00:00, 8.12s/it]\n" + ] + }, + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Epoch 1, Loss: 0.004813789390027523\n", + "Final accuracy: 1.0\n" + ] + } + ], + "source": [ + "import os\n", + "from tqdm import tqdm\n", + "from PIL import Image\n", + "import torch\n", + "from torch import nn, optim\n", + "from torchvision import models, transforms\n", + "from torch.utils.data import Dataset, DataLoader\n", + "\n", + "# Dataset class with filtering\n", + "class CustomDataset(Dataset):\n", + " def __init__(self, root_dir, transform=None):\n", + " self.root_dir = root_dir\n", + " self.transform = transform\n", + " self.image_paths = []\n", + " self.labels = []\n", + "\n", + " for root, _, files in os.walk(root_dir):\n", + " if '__MACOSX' in root:\n", + " continue\n", + " for file in files:\n", + " if file.lower().endswith(('.png', '.jpg', '.jpeg')):\n", + " self.image_paths.append(os.path.join(root, file))\n", + " label = 0 if 'class0' in os.path.basename(os.path.dirname(os.path.join(root, file))) else 1\n", + " self.labels.append(label)\n", + "\n", + "\n", + " def __len__(self):\n", + " return len(self.image_paths)\n", + "\n", + " def __getitem__(self, idx):\n", + " img_path = self.image_paths[idx]\n", + " label = self.labels[idx]\n", + " try:\n", + " image = Image.open(img_path).convert(\"RGB\")\n", + " except Exception as e:\n", + " print(f\"Error opening image {img_path}: {e}\")\n", + " return None, None\n", + "\n", + " if self.transform:\n", + " image = self.transform(image)\n", + "\n", + " return image, label\n", + "\n", + "\n", + "class CustomResNet(nn.Module):\n", + " def __init__(self):\n", + " super(CustomResNet, self).__init__()\n", + " self.resnet = models.resnet18(pretrained=False)\n", + " self.ep = 0\n", + " num_ftrs = self.resnet.fc.in_features\n", + " self.resnet.fc = nn.Linear(num_ftrs, 2)\n", + "\n", + " def forward(self, x):\n", + " return self.resnet(x)\n", + "\n", + "\n", + "def save_model_to_drive(model, name):\n", + " pth = os.path.join('/content/drive/MyDrive/Colab Notebooks/models', name)\n", + " torch.save(model, pth)\n", + "\n", + "\n", + "def get_acc(data_loader, model, device):\n", + " correct = 0\n", + " total = 0\n", + " model.eval()\n", + " with torch.no_grad():\n", + " for img, label in data_loader:\n", + " img = img.to(device)\n", + " label = label.to(device)\n", + " out = model(img)\n", + " _, predicted = torch.max(out.data, 1)\n", + " total += label.size(0)\n", + " correct += (predicted == label).sum().item()\n", + "\n", + " return correct / total\n", + "\n", + "\n", + "device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')\n", + "\n", + "transform = transforms.Compose([\n", + " transforms.Resize((224, 224)),\n", + " transforms.ToTensor(),\n", + "])\n", + "\n", + "train_data = CustomDataset('/content/dataset/train', transform=transform)\n", + "test_data = CustomDataset('/content/dataset/test', transform=transform)\n", + "\n", + "train_loader = DataLoader(train_data, batch_size=32, shuffle=True)\n", + "test_loader = DataLoader(test_data, batch_size=32, shuffle=False)\n", + "\n", + "model = CustomResNet()\n", + "model.to(device)\n", + "\n", + "actual_ep = 175\n", + "model_path = f'/content/drive/MyDrive/Colab Notebooks/models/resnet_model_x50_{actual_ep}'\n", + "if os.path.exists(model_path):\n", + " model = torch.load(model_path)\n", + " print(f\"Model loaded from {model_path}\")\n", + "else:\n", + " print(f\"Warning: Model file not found at {model_path}. Starting with a new model.\")\n", + "\n", + "loss_func = nn.CrossEntropyLoss()\n", + "optimizer = optim.Adam(model.parameters(), lr=1e-4)\n", + "\n", + "EPOCHS = 1\n", + "\n", + "for i in range(EPOCHS):\n", + " model.train()\n", + " for img, label in tqdm(train_loader):\n", + " optimizer.zero_grad()\n", + " img = img.to(device)\n", + " label = label.to(device)\n", + "\n", + " out = model(img)\n", + " loss = loss_func(out, label)\n", + " loss.backward()\n", + " optimizer.step()\n", + " model.ep += 1\n", + "\n", + " print(f'Epoch {model.ep}, Loss: {loss.item()}')\n", + "\n", + " if model.ep % 5 == 0:\n", + " acc = get_acc(test_loader, model, device)\n", + " print(f'Accuracy: {acc}')\n", + " save_model_to_drive(model, f'resnet_model_x50_{model.ep}')\n", + " print('Model saved!')\n", + "\n", + "final_acc = get_acc(test_loader, model, device)\n", + "print(f'Final accuracy: {final_acc}')\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "BNOhOqCaR2b6", + "outputId": "77a40a53-e355-45f1-82f7-264300539a27" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Using device: cpu\n", + "CustomResNet parameters: 11,177,538\n", + "ResNext50_32x4d parameters: 25,028,904\n", + "Files in /content/dataset/test: ['muffin', '__MACOSX', 'chihuahua']\n", + "All files in directory: ['muffin', '__MACOSX', 'chihuahua']\n", + "No valid image files found in directory: /content/dataset/test. Check the directory path and file extensions. Found: ['muffin', '__MACOSX', 'chihuahua']\n" + ] + } + ], + "source": [ + "import os\n", + "from tqdm import tqdm\n", + "from PIL import Image\n", + "import torch\n", + "from torch import nn, optim\n", + "from torchvision import models, transforms\n", + "from torch.utils.data import Dataset, DataLoader\n", + "import torchvision as tv\n", + "from datetime import datetime\n", + "\n", + "device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')\n", + "print(f\"Using device: {device}\")\n", + "\n", + "class CustomResNet(nn.Module):\n", + " def __init__(self):\n", + " super(CustomResNet, self).__init__()\n", + " self.resnet = models.resnet18(pretrained=False)\n", + " num_ftrs = self.resnet.fc.in_features\n", + " self.resnet.fc = nn.Linear(num_ftrs, 2)\n", + "\n", + " def forward(self, x):\n", + " return self.resnet(x)\n", + "\n", + "\n", + "class MyDataset(Dataset):\n", + " def __init__(self, root, transforms=None):\n", + " all_files = os.listdir(root)\n", + " print(f\"All files in directory: {all_files}\")\n", + "\n", + " self.images = [\n", + " f for f in all_files\n", + " if os.path.isfile(os.path.join(root, f)) and\n", + " '__MACOSX' not in f and\n", + " any(f.lower().endswith(ext) for ext in ('.png', '.jpg', '.jpeg', '.tif', '.tiff', '.dog', '.muf'))\n", + " ]\n", + "\n", + " if not self.images:\n", + " raise ValueError(\n", + " f\"No valid image files found in directory: {root}. \"\n", + " f\"Check the directory path and file extensions. Found: {all_files}\"\n", + " )\n", + "\n", + " print(f\"Filtered images: {self.images}\")\n", + "\n", + " self.root = root\n", + " self.transforms = transforms\n", + "\n", + " def __len__(self):\n", + " return len(self.images)\n", + "\n", + " def __getitem__(self, idx):\n", + " img_name = os.path.join(self.root, self.images[idx])\n", + " image = Image.open(img_name).convert('RGB')\n", + " if self.transforms:\n", + " image = self.transforms(image)\n", + " return image, img_name\n", + "\n", + "transforms_ = transforms.Compose([\n", + " transforms.Resize((224, 224)),\n", + " transforms.ToTensor(),\n", + "])\n", + "\n", + "model = CustomResNet().to(device)\n", + "\n", + "print(f'CustomResNet parameters: {sum(p.numel() for p in model.parameters()):,}')\n", + "resnext_model = models.resnext50_32x4d(pretrained=False)\n", + "print(f'ResNext50_32x4d parameters: {sum(p.numel() for p in resnext_model.parameters()):,}')\n", + "\n", + "test_dataset_path = '/content/dataset/test'\n", + "\n", + "if not os.path.exists(test_dataset_path):\n", + " print(f\"The directory {test_dataset_path} does not exist.\")\n", + "else:\n", + " files_in_dir = os.listdir(test_dataset_path)\n", + " print(f\"Files in {test_dataset_path}: {files_in_dir}\")\n", + "\n", + " try:\n", + " d = MyDataset(test_dataset_path, transforms_)\n", + "\n", + " dtldr = DataLoader(d, batch_size=1, shuffle=True)\n", + "\n", + " for i, (img, img_name) in enumerate(dtldr):\n", + " img = img.to(device)\n", + " out = model(img)\n", + " class_label = torch.argmax(out).item()\n", + "\n", + " name = 'dog' if class_label == 0 else 'muf'\n", + "\n", + " base, ext = os.path.splitext(img_name[0])\n", + " new_name = os.path.join(test_dataset_path, f\"{name}_{i}{ext}\")\n", + " os.rename(img_name[0], new_name)\n", + " print(f\"Renamed {img_name[0]} to {new_name}\")\n", + " except ValueError as e:\n", + " print(e)\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "kSz2jJjSC_St" + }, + "outputs": [], + "source": [ + "import os\n", + "from PIL import Image\n", + "import pandas as pd\n", + "import zipfile\n", + "\n", + "test_zip_path = '/content/drive/MyDrive/для кодов/маффины/test.zip'\n", + "new_extracted_folder = '/content/dataset/new_test/'\n", + "\n", + "\n", + "with zipfile.ZipFile(test_zip_path, 'r') as zip_ref:\n", + " zip_ref.extractall(new_extracted_folder)\n", + "\n", + "extracted_folder = new_extracted_folder\n", + "\n", + "\n", + "predictions = []\n", + "\n", + "model.eval()\n", + "\n", + "for image_file in os.listdir(extracted_folder):\n", + " image_path = os.path.join(extracted_folder, image_file)\n", + "\n", + "\n", + " if os.path.isfile(image_path):\n", + "\n", + " with Image.open(image_path) as img:\n", + "\n", + " img = transforms(img).unsqueeze(0).to(device)\n", + "\n", + "\n", + " with torch.no_grad():\n", + " model.eval()\n", + " output = model(img)\n", + " _, predicted = torch.max(output, 1)\n", + "\n", + "\n", + " predictions.append({'ID': image_file, 'Label': predicted.item()})\n", + " #0=dogs 1=muffins\n", + "\n", + "\n", + "predictions_df = pd.DataFrame(predictions)\n", + "\n", + "\n", + "predictions_df.to_csv('/content/drive/MyDrive/Colab Notebooks/predictions.csv', index=False)\n" + ] + }, + { + "cell_type": "code", + "source": [ + "import csv\n", + "import os\n", + "from pathlib import Path\n", + "\n", + "output_csv_path = '/content/drive/My Drive/results.csv'\n", + "\n", + "results = [\"muffin\" if value else \"chihuahua\" for value in y_pred]\n", + "\n", + "labels = list(valid_files.iterdir())\n", + "\n", + "with open(output_csv_path, \"w\", newline=\"\") as f:\n", + " fieldnames = [\"ID\", \"Label\"]\n", + " writer = csv.DictWriter(f, fieldnames=fieldnames)\n", + " writer.writeheader()\n", + "\n", + " for label, result in zip(labels, results):\n", + " writer.writerow({fieldnames[0]: label.name, fieldnames[1]: result})\n", + "\n", + "print(f\"Results saved to {output_csv_path}\")" + ], + "metadata": { + "id": "0YFwmp9K2ztj" + }, + "execution_count": null, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "2AQNnYfKcoSH" + }, + "source": [ + "# Новый раздел" + ] + } + ], + "metadata": { + "colab": { + "gpuType": "T4", + "provenance": [] + }, + "kernelspec": { + "display_name": "Python 3", + "name": "python3" + }, + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/dogs_muffins_modified.ipynb b/dogs_muffins_modified.ipynb new file mode 100644 index 0000000..84a00ff --- /dev/null +++ b/dogs_muffins_modified.ipynb @@ -0,0 +1,522 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "IVGsNc0MUtLr", + "outputId": "f2f21d98-02c8-44b8-f13e-2d85a1ddd2c9" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Drive already mounted at /content/drive; to attempt to forcibly remount, call drive.mount(\"/content/drive\", force_remount=True).\n", + "Warning: Model file not found at /content/drive/MyDrive/Colab Notebooks/models/resnet_model_x50_175. Starting with a new model.\n" + ] + } + ], + "source": [ + "import torch\n", + "from torch import Tensor\n", + "from torch import nn\n", + "from torch import optim\n", + "from torchvision.datasets import ImageFolder\n", + "from torch.utils.data import Dataset, DataLoader, random_split\n", + "from PIL import Image\n", + "import torchvision as tv\n", + "from torchvision import models\n", + "import os\n", + "import numpy\n", + "from tqdm import tqdm\n", + "\n", + "import zipfile\n", + "from google.colab import drive\n", + "\n", + "drive.mount('/content/drive')\n", + "zipped_test = '/content/drive/MyDrive/для кодов/маффины/test.zip'\n", + "zipped_train ='/content/drive/MyDrive/для кодов/маффины/test.zip'\n", + "z = zipfile.ZipFile(zipped_test, 'r')\n", + "z.extractall(path='/content/dataset/test')\n", + "z = zipfile.ZipFile(zipped_train, 'r')\n", + "z.extractall(path='/content/dataset/train')\n", + "import gc\n", + "gc.collect()\n", + "\n", + "\n", + "DATASET_ROOT_DIR = '/content/dataset/'\n", + "BATCH_SIZE = 64\n", + "if torch.cuda.is_available():\n", + " device = 'cuda'\n", + "else:\n", + " device = 'cpu'\n", + "device\n", + "\n", + "\n", + "transforms = tv.transforms.Compose([\n", + " tv.transforms.Resize((224, 224)),\n", + " tv.transforms.ToTensor(),\n", + " tv.transforms.RandomHorizontalFlip(0.5),\n", + "])\n", + "\n", + "def is_valid_file(path):\n", + " \"\"\"Checks if a file is a valid image file and not a hidden macOS file.\"\"\"\n", + " return not path.startswith('._') and os.path.splitext(path)[-1].lower() in ['.jpg', '.jpeg', '.png', '.ppm', '.bmp', '.pgm', '.tif', '.tiff', '.webp']\n", + "\n", + "dataset = ImageFolder(root=os.path.join(DATASET_ROOT_DIR, 'train'),\n", + " transform=transforms,\n", + " is_valid_file=is_valid_file\n", + " ) # 0 - dogs\n", + "\n", + "\n", + "train_size = int(0.8 * len(dataset))\n", + "test_size = len(dataset) - train_size\n", + "train_dataset, test_dataset = random_split(dataset, [train_size, test_size])\n", + "\n", + "\n", + "train_data = DataLoader(\n", + " train_dataset,\n", + " batch_size=BATCH_SIZE,\n", + " shuffle=True,\n", + " )\n", + "test_data = DataLoader(\n", + " test_dataset,\n", + " batch_size=BATCH_SIZE,\n", + " shuffle=True,\n", + " )\n", + "class CustomResNet(nn.Module):\n", + " def __init__(self):\n", + " super(CustomResNet, self).__init__()\n", + " self.resnet = models.resnet18(pretrained=False)\n", + "\n", + " self.ep = 0\n", + "\n", + " num_ftrs = self.resnet.fc.in_features\n", + " self.resnet.fc = nn.Linear(num_ftrs, 2)\n", + "\n", + " def forward(self, x):\n", + " return self.resnet(x)\n", + "\n", + "\n", + "\n", + "model = CustomResNet()\n", + "model.to(device)\n", + "\n", + "\n", + "actual_ep=175\n", + "model_path = f'/content/drive/MyDrive/Colab Notebooks/models/resnet_model_x50_{actual_ep}'\n", + "if os.path.exists(model_path):\n", + " model = torch.load(model_path)\n", + "else:\n", + " print(f\"Warning: Model file not found at {model_path}. Starting with a new model.\")\n", + "loss_func = nn.CrossEntropyLoss()\n", + "optimizer = optim.Adam(model.parameters(), lr = 1e-4)\n", + "\n", + "\n", + "def save_model_to_drive(model, name):\n", + " pth = os.path.join('/content/drive/MyDrive/Colab Notebooks/models', name)\n", + " torch.save(model, pth)\n", + "\n", + "\n", + "def get_acc():\n", + " correct = 0\n", + " total = 0" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "R2crhrvkxJ8v", + "outputId": "c51a415a-b3fb-4dfc-a368-21fbd8561bfc" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Mounted at /content/drive\n" + ] + } + ], + "source": [ + "from google.colab import drive\n", + "drive.mount('/content/drive')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "SBdgo5D9CobC", + "outputId": "15991dbf-ade9-475f-8ce0-ae10618d2ccb" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Warning: Model file not found at /content/drive/MyDrive/Colab Notebooks/models/resnet_model_x50_175. Starting with a new model.\n" + ] + }, + { + "output_type": "stream", + "name": "stderr", + "text": [ + "100%|██████████| 37/37 [05:00<00:00, 8.12s/it]\n" + ] + }, + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Epoch 1, Loss: 0.004813789390027523\n", + "Final accuracy: 1.0\n" + ] + } + ], + "source": [ + "class CustomDataset(Dataset):\n", + " def __init__(self, root_dir, transform=None):\n", + " self.root_dir = root_dir\n", + " self.transform = transform\n", + " self.image_paths = []\n", + " self.labels = []\n", + "\n", + " for root, _, files in os.walk(root_dir):\n", + " if '__MACOSX' in root:\n", + " continue\n", + " for file in files:\n", + " if file.lower().endswith(('.png', '.jpg', '.jpeg')):\n", + " self.image_paths.append(os.path.join(root, file))\n", + " label = 0 if 'class0' in os.path.basename(os.path.dirname(os.path.join(root, file))) else 1\n", + " self.labels.append(label)\n", + "\n", + "\n", + " def __len__(self):\n", + " return len(self.image_paths)\n", + "\n", + " def __getitem__(self, idx):\n", + " img_path = self.image_paths[idx]\n", + " label = self.labels[idx]\n", + " try:\n", + " image = Image.open(img_path).convert(\"RGB\")\n", + " except Exception as e:\n", + " print(f\"Error opening image {img_path}: {e}\")\n", + " return None, None\n", + "\n", + " if self.transform:\n", + " image = self.transform(image)\n", + "\n", + " return image, label\n", + "\n", + "\n", + "class CustomResNet(nn.Module):\n", + " def __init__(self):\n", + " super(CustomResNet, self).__init__()\n", + " self.resnet = models.resnet18(pretrained=False)\n", + " self.ep = 0\n", + " num_ftrs = self.resnet.fc.in_features\n", + " self.resnet.fc = nn.Linear(num_ftrs, 2)\n", + "\n", + " def forward(self, x):\n", + " return self.resnet(x)\n", + "\n", + "\n", + "def save_model_to_drive(model, name):\n", + " pth = os.path.join('/content/drive/MyDrive/Colab Notebooks/models', name)\n", + " torch.save(model, pth)\n", + "\n", + "\n", + "def get_acc(data_loader, model, device):\n", + " correct = 0\n", + " total = 0\n", + " model.eval()\n", + " with torch.no_grad():\n", + " for img, label in data_loader:\n", + " img = img.to(device)\n", + " label = label.to(device)\n", + " out = model(img)\n", + " _, predicted = torch.max(out.data, 1)\n", + " total += label.size(0)\n", + " correct += (predicted == label).sum().item()\n", + "\n", + " return correct / total\n", + "\n", + "\n", + "device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')\n", + "\n", + "transform = transforms.Compose([\n", + " transforms.Resize((224, 224)),\n", + " transforms.ToTensor(),\n", + "])\n", + "\n", + "train_data = CustomDataset('/content/dataset/train', transform=transform)\n", + "test_data = CustomDataset('/content/dataset/test', transform=transform)\n", + "\n", + "train_loader = DataLoader(train_data, batch_size=32, shuffle=True)\n", + "test_loader = DataLoader(test_data, batch_size=32, shuffle=False)\n", + "\n", + "model = CustomResNet()\n", + "model.to(device)\n", + "\n", + "actual_ep = 175\n", + "model_path = f'/content/drive/MyDrive/Colab Notebooks/models/resnet_model_x50_{actual_ep}'\n", + "if os.path.exists(model_path):\n", + " model = torch.load(model_path)\n", + " print(f\"Model loaded from {model_path}\")\n", + "else:\n", + " print(f\"Warning: Model file not found at {model_path}. Starting with a new model.\")\n", + "\n", + "loss_func = nn.CrossEntropyLoss()\n", + "optimizer = optim.Adam(model.parameters(), lr=1e-4)\n", + "\n", + "EPOCHS = 1\n", + "\n", + "for i in range(EPOCHS):\n", + " model.train()\n", + " for img, label in tqdm(train_loader):\n", + " optimizer.zero_grad()\n", + " img = img.to(device)\n", + " label = label.to(device)\n", + "\n", + " out = model(img)\n", + " loss = loss_func(out, label)\n", + " loss.backward()\n", + " optimizer.step()\n", + " model.ep += 1\n", + "\n", + " print(f'Epoch {model.ep}, Loss: {loss.item()}')\n", + "\n", + " if model.ep % 5 == 0:\n", + " acc = get_acc(test_loader, model, device)\n", + " print(f'Accuracy: {acc}')\n", + " save_model_to_drive(model, f'resnet_model_x50_{model.ep}')\n", + " print('Model saved!')\n", + "\n", + "final_acc = get_acc(test_loader, model, device)\n", + "print(f'Final accuracy: {final_acc}')\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "BNOhOqCaR2b6", + "outputId": "77a40a53-e355-45f1-82f7-264300539a27" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Using device: cpu\n", + "CustomResNet parameters: 11,177,538\n", + "ResNext50_32x4d parameters: 25,028,904\n", + "Files in /content/dataset/test: ['muffin', '__MACOSX', 'chihuahua']\n", + "All files in directory: ['muffin', '__MACOSX', 'chihuahua']\n", + "No valid image files found in directory: /content/dataset/test. Check the directory path and file extensions. Found: ['muffin', '__MACOSX', 'chihuahua']\n" + ] + } + ], + "source": [ + "device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')\n", + "print(f\"Using device: {device}\")\n", + "\n", + "class CustomResNet(nn.Module):\n", + " def __init__(self):\n", + " super(CustomResNet, self).__init__()\n", + " self.resnet = models.resnet18(pretrained=False)\n", + " num_ftrs = self.resnet.fc.in_features\n", + " self.resnet.fc = nn.Linear(num_ftrs, 2)\n", + "\n", + " def forward(self, x):\n", + " return self.resnet(x)\n", + "\n", + "\n", + "class MyDataset(Dataset):\n", + " def __init__(self, root, transforms=None):\n", + " all_files = os.listdir(root)\n", + " print(f\"All files in directory: {all_files}\")\n", + "\n", + " self.images = [\n", + " f for f in all_files\n", + " if os.path.isfile(os.path.join(root, f)) and\n", + " '__MACOSX' not in f and\n", + " any(f.lower().endswith(ext) for ext in ('.png', '.jpg', '.jpeg', '.tif', '.tiff', '.dog', '.muf'))\n", + " ]\n", + "\n", + " if not self.images:\n", + " raise ValueError(\n", + " f\"No valid image files found in directory: {root}. \"\n", + " f\"Check the directory path and file extensions. Found: {all_files}\"\n", + " )\n", + "\n", + " print(f\"Filtered images: {self.images}\")\n", + "\n", + " self.root = root\n", + " self.transforms = transforms\n", + "\n", + " def __len__(self):\n", + " return len(self.images)\n", + "\n", + " def __getitem__(self, idx):\n", + " img_name = os.path.join(self.root, self.images[idx])\n", + " image = Image.open(img_name).convert('RGB')\n", + " if self.transforms:\n", + " image = self.transforms(image)\n", + " return image, img_name\n", + "\n", + "transforms_ = transforms.Compose([\n", + " transforms.Resize((224, 224)),\n", + " transforms.ToTensor(),\n", + "])\n", + "\n", + "model = CustomResNet().to(device)\n", + "\n", + "print(f'CustomResNet parameters: {sum(p.numel() for p in model.parameters()):,}')\n", + "resnext_model = models.resnext50_32x4d(pretrained=False)\n", + "print(f'ResNext50_32x4d parameters: {sum(p.numel() for p in resnext_model.parameters()):,}')\n", + "\n", + "test_dataset_path = '/content/dataset/test'\n", + "\n", + "if not os.path.exists(test_dataset_path):\n", + " print(f\"The directory {test_dataset_path} does not exist.\")\n", + "else:\n", + " files_in_dir = os.listdir(test_dataset_path)\n", + " print(f\"Files in {test_dataset_path}: {files_in_dir}\")\n", + "\n", + " try:\n", + " d = MyDataset(test_dataset_path, transforms_)\n", + "\n", + " dtldr = DataLoader(d, batch_size=1, shuffle=True)\n", + "\n", + " for i, (img, img_name) in enumerate(dtldr):\n", + " img = img.to(device)\n", + " out = model(img)\n", + " class_label = torch.argmax(out).item()\n", + "\n", + " name = 'dog' if class_label == 0 else 'muf'\n", + "\n", + " base, ext = os.path.splitext(img_name[0])\n", + " new_name = os.path.join(test_dataset_path, f\"{name}_{i}{ext}\")\n", + " os.rename(img_name[0], new_name)\n", + " print(f\"Renamed {img_name[0]} to {new_name}\")\n", + " except ValueError as e:\n", + " print(e)\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "kSz2jJjSC_St" + }, + "outputs": [], + "source": [ + "test_zip_path = '/content/drive/MyDrive/для кодов/маффины/test.zip'\n", + "new_extracted_folder = '/content/dataset/new_test/'\n", + "\n", + "\n", + "with zipfile.ZipFile(test_zip_path, 'r') as zip_ref:\n", + " zip_ref.extractall(new_extracted_folder)\n", + "\n", + "extracted_folder = new_extracted_folder\n", + "\n", + "\n", + "predictions = []\n", + "\n", + "model.eval()\n", + "\n", + "for image_file in os.listdir(extracted_folder):\n", + " image_path = os.path.join(extracted_folder, image_file)\n", + "\n", + "\n", + " if os.path.isfile(image_path):\n", + "\n", + " with Image.open(image_path) as img:\n", + "\n", + " img = transforms(img).unsqueeze(0).to(device)\n", + "\n", + "\n", + " with torch.no_grad():\n", + " model.eval()\n", + " output = model(img)\n", + " _, predicted = torch.max(output, 1)\n", + "\n", + "\n", + " predictions.append({'ID': image_file, 'Label': predicted.item()})\n", + " #0=dogs 1=muffins\n", + "\n", + "\n", + "predictions_df = pd.DataFrame(predictions)\n", + "\n", + "\n", + "predictions_df.to_csv('/content/drive/MyDrive/Colab Notebooks/predictions.csv', index=False)\n" + ] + }, + { + "cell_type": "code", + "source": [ + "output_csv_path = '/content/drive/My Drive/results.csv'\n", + "\n", + "results = [\"muffin\" if value else \"chihuahua\" for value in y_pred]\n", + "\n", + "labels = list(valid_files.iterdir())\n", + "\n", + "with open(output_csv_path, \"w\", newline=\"\") as f:\n", + " fieldnames = [\"ID\", \"Label\"]\n", + " writer = csv.DictWriter(f, fieldnames=fieldnames)\n", + " writer.writeheader()\n", + "\n", + " for label, result in zip(labels, results):\n", + " writer.writerow({fieldnames[0]: label.name, fieldnames[1]: result})\n", + "\n", + "print(f\"Results saved to {output_csv_path}\")" + ], + "metadata": { + "id": "0YFwmp9K2ztj" + }, + "execution_count": null, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "2AQNnYfKcoSH" + }, + "source": [ + "# Новый раздел" + ] + } + ], + "metadata": { + "colab": { + "gpuType": "T4", + "provenance": [] + }, + "kernelspec": { + "display_name": "Python 3", + "name": "python3" + }, + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/results.csv b/results.csv new file mode 100644 index 0000000..c907bb1 --- /dev/null +++ b/results.csv @@ -0,0 +1,1184 @@ +ID,label +224ec6c8-2c36-42b2-8741-467dd296f2bf.jpg,muffin +1fb78620-9f25-4e66-a08c-135efac15a1b.jpg,muffin +25152cee-b243-4d9c-b386-307eccc8c2bd.jpg,muffin +21be8209-4e2a-4b77-afc2-b87d005227fa.jpg,muffin +1f7a9345-ae53-4283-ad09-871f4c559949.jpg,chihuahua +2230d476-b46d-414c-a41c-4de2a44d58ff.jpg,chihuahua +28930da6-4208-4ad5-b677-effc298a772d.jpg,muffin +226e204a-ef21-4daa-ae4f-d434cacc5533.jpg,muffin +2533b6ac-064d-40ca-8070-6f9687edc768.jpg,chihuahua +2cfedd9b-21ce-4bf8-a549-f74ba2699f25.jpg,chihuahua +33eccaae-b4fc-4562-a9ea-18df7b9a6c0a.jpg,muffin +2b338e37-50b6-4157-af28-21cf48c650f8.jpg,muffin +32293456-e0e2-46d8-aa06-8b8f78da9336.jpg,chihuahua +2dcdbb73-2fe5-4b9b-9b0e-3f6853877633.jpg,chihuahua +2a706783-15a2-45c9-bb4a-59f572038084.jpg,chihuahua +324a682b-3f71-4ec4-836e-7732e9e42e0a.jpg,muffin +29df414d-d59a-4e37-85d7-ae8da92cc5a0.jpg,chihuahua +321fc937-838a-48aa-ace6-c374fe883eb2.jpg,chihuahua +34d25f84-1b8f-415b-aec1-8df3fbcf2bef.jpg,muffin +2f3d1c15-be47-4399-af3a-e458c1314e7d.jpg,chihuahua +2ad24187-c8c8-4cda-b6a0-fca96ba01b6c.jpg,muffin +33737084-bfb3-437a-9401-1370918f1057.jpg,chihuahua +2e430b40-a34b-489d-b92a-06aa07c932b2.jpg,muffin +32901e38-213f-419d-96dc-b2171124d753.jpg,muffin +2c2a46fb-3250-439d-89b4-f3fbea00525b.jpg,muffin +311fcf14-7656-4c21-9b42-8a33bda70b76.jpg,chihuahua +2ee511f7-1a82-4acf-a39a-28805f932a86.jpg,chihuahua +318d84f5-ef43-4028-bb29-8650d63f45d8.jpg,muffin +34b4621d-4e8c-4d77-93b1-b43a45b5d8d9.jpg,muffin +30cb73ff-6432-4ff8-8089-f68e34174df9.jpg,muffin +340353e9-4444-429a-958d-e11ca30ef65f.jpg,chihuahua +2a9b0561-c7c3-4ff0-b697-8a6ae3527d23.jpg,chihuahua +331c7576-a82b-4b62-884a-7e566031de29.jpg,muffin +2e57f57f-7120-41ab-844c-cff203423319.jpg,chihuahua +2f211a98-69fc-418d-9080-2fdb0084bea0.jpg,muffin +33bae517-8226-4101-89fa-e25b0a0e753e.jpg,chihuahua +30506c5e-4010-4779-8c26-ae38f0c89298.jpg,chihuahua +344e364b-75ab-4e46-8be0-4b4c771da36d.jpg,muffin +34b87724-197d-4018-b6bd-cdd200081875.jpg,muffin +30d89daf-e2c7-403a-b37a-b9187fc685b7.jpg,muffin +2ee5d3ba-1cf0-4b0c-b610-b2fa9b079298.jpg,chihuahua +2fcac27d-4777-4443-b62a-99bd29fe0f8c.jpg,chihuahua +316c0d32-4336-4561-9bbd-570355dfda10.jpg,muffin +29c65a82-67fc-4ea5-b91e-e5975a5e388f.jpg,chihuahua +34639b23-39d3-4a88-99a6-286cd6d21d66.jpg,chihuahua +29c65de1-3b0b-427e-888f-3e4768790f2c.jpg,muffin +2c0abd1c-bb29-44f4-bca3-748c8ae65b0d.jpg,chihuahua +2f522609-7d75-4b31-99d9-78740ee6c3f5.jpg,chihuahua +2df57607-4b20-4389-8f06-ff154d4b8e4d.jpg,chihuahua +2a8cdc67-c6f6-4e89-b739-c8e2b6c4c9f5.jpg,muffin +310b601c-8846-42db-b8d8-3cbe912db0b5.jpg,chihuahua +2b37b7ad-4748-43af-a1ba-f264be65a66e.jpg,muffin +2d06bf65-6a38-4de2-a69f-423baf31788c.jpg,muffin +2e03fdcd-b548-4f73-a683-a026ecd72635.jpg,muffin +3053f2f4-9ef0-4531-9c2f-48c916a276d9.jpg,chihuahua +2f4f4d06-d65b-46c5-bf00-bac2a4597599.jpg,muffin +32b6d7da-8dac-433a-8a64-19d480b0bfa8.jpg,chihuahua +2ddb70eb-3581-4690-9919-1d847ef5ac19.jpg,muffin +34e50e08-583c-46ea-a9fe-e1402a2ed73f.jpg,chihuahua +2eddc055-9496-4117-bf45-94ae62fb7538.jpg,chihuahua +2f5396d5-caa8-4b6a-8fa2-7f489b09854f.jpg,muffin +2bbf2328-9b07-4fe9-8ec2-cf2bd40fe8c3.jpg,chihuahua +2a24a6f4-1541-4c8c-af30-45a971d98d7e.jpg,muffin +2d43373b-2a6f-4cfc-bbb5-5b3aee72bf84.jpg,muffin +2a9c046e-ba3b-4f6d-8ca7-463330c33c83.jpg,chihuahua +2bbab113-0d48-4439-a334-da7758151c79.jpg,chihuahua +2d0dc521-b17e-45ae-8a4f-8c131c1c0245.jpg,muffin +2cf1b20c-ef89-418d-8d34-c4832093ad99.jpg,muffin +3483e761-444e-42c6-ab5c-d25654756629.jpg,chihuahua +3394c424-944a-4469-9e4e-639c592b6855.jpg,muffin +35ab4442-5b21-4bfa-91bd-825341a431db.jpg,muffin +37a768aa-66f6-465e-96f8-997090e53453.jpg,chihuahua +34f2d5ab-4462-4098-9a38-b53f508ba906.jpg,muffin +3c002321-1528-43d5-958a-d5db2e4fb3ce.jpg,muffin +3b3ae863-df21-43fb-950e-5c9cc53ec39a.jpg,muffin +36833e2c-96c0-443c-ad01-957956fb3be4.jpg,chihuahua +3b35bb76-c310-49e9-8cf8-5e87b58857b3.jpg,muffin +3bce0222-81ea-44f8-a70e-a5f2c2657a03.jpg,muffin +3ed70b0f-8f69-4d05-a6cf-599c6e4e8c3c.jpg,chihuahua +3c3c1efa-79ce-405e-86dd-ea19cc51fadc.jpg,muffin +3d1195cb-e746-439e-b5a0-aebfc4ab8854.jpg,muffin +3752c2d7-bb3e-44ec-825c-b47341c1d2dc.jpg,muffin +376eb77f-8aa0-45fb-8b5d-5a5a74f9aac2.jpg,muffin +3a140fb8-558d-4832-b9f8-fcc2e0b5a492.jpg,muffin +3c2c30d0-e401-4b10-81b1-43e6edd597ab.jpg,chihuahua +3adcd503-0f09-4a73-a29b-edaf95341bf0.jpg,muffin +3b9b40dc-2f1a-4cb9-8db3-8871cd2905d9.jpg,muffin +3c1bc0cd-6700-4dfd-babe-c62e43647257.jpg,muffin +39a1fe0d-4511-40ae-83e9-9bf59ddbe77a.jpg,muffin +3d99180d-3761-4507-b45e-d9c7d042ebac.jpg,chihuahua +3a20321b-ac9d-4eba-b8ba-3180671578c4.jpg,muffin +35f63f89-aa4e-43af-9d58-f3d9f76d4cac.jpg,chihuahua +39815aad-7d62-40ad-8a53-c984e99111e3.jpg,muffin +359abc9b-9abd-41e8-a24c-7d2ca645a0a8.jpg,muffin +363a830a-252c-4433-b729-4fd550d6bc0d.jpg,muffin +375239b2-ccb1-4918-8eb8-fe455ea867b1.jpg,chihuahua +381c7c5a-9c3f-4676-ba1f-06a0f50dc2a4.jpg,muffin +3cd049c8-4b65-4c2a-a471-53fab331d43e.jpg,muffin +3efa354d-52c5-405f-aa78-db8d541c0a0c.jpg,chihuahua +34edc32d-1cf3-4c33-b98b-365f95f84998.jpg,muffin +3a6bb09a-03c9-4b4b-bb71-09942aeb2f34.jpg,muffin +36625dea-15bd-4c3b-bde6-876a8a7f3c8a.jpg,chihuahua +3871f1f6-5485-4639-9c92-7158843ead99.jpg,chihuahua +377ccfb9-c0af-4d51-ae46-e053dc76de95.jpg,muffin +3c4e70f3-1167-48d4-8322-c6f385523054.jpg,muffin +368966e3-d1f5-4261-b84f-aff8463f6593.jpg,chihuahua +3512443d-c4b1-4bf6-a9c7-7076d52c6518.jpg,muffin +3a3c44ae-6282-41bf-8259-9b8f5b7103c2.jpg,muffin +37cb74ce-c3e4-4f5b-8d7f-293a7fa6b149.jpg,muffin +3f5a8063-46e9-4d86-809b-42406e2e4025.jpg,chihuahua +365bccba-414d-41d6-9952-ec15b291294b.jpg,chihuahua +3dd84286-f807-4e24-a1a0-f503e5111166.jpg,chihuahua +387d2b09-4819-4052-845a-5fc2306da6dd.jpg,chihuahua +3d8cd19e-ccba-473d-b1ec-55c6a15df743.jpg,muffin +35abc311-de99-4df6-ba6e-8d7332727b92.jpg,muffin +3e6ac623-7712-4d9e-9816-ac7849832018.jpg,muffin +3c8feaf0-e939-4455-8659-369ed42ff49c.jpg,muffin +35ca351e-4dd3-40a9-9b56-1947dd478239.jpg,chihuahua +363b2192-b625-4cc8-a0f1-43915528259f.jpg,chihuahua +3ee50eef-f73a-418c-afca-31f533797332.jpg,chihuahua +3656d417-523f-4ca4-9880-b4610be18d43.jpg,chihuahua +37cb8cfe-ea04-4b0f-983b-41daf6851c80.jpg,chihuahua +36a5b16a-dbab-4ca7-af62-bb9b77c3873a.jpg,muffin +3f36c0d3-f62b-4001-ac18-687b53c82b50.jpg,chihuahua +3f0e0c8e-cf8b-4b8f-bae7-f5a3cdc818ce.jpg,chihuahua +36bf81c5-61a5-4e83-92ff-23ce9071035b.jpg,chihuahua +3a74e47e-1019-4ebb-9951-c283df7ee158.jpg,chihuahua +35d40713-d431-41b8-b330-4d081b0ccdf2.jpg,chihuahua +3606185e-5821-45fd-a387-95e651f6d907.jpg,chihuahua +36784b07-1c80-44c9-af04-d9e0f68a9014.jpg,chihuahua +4230387e-37a9-465c-9901-c70261b020f9.jpg,chihuahua +40ef3760-c47d-4c05-9a78-a3733ada5f2b.jpg,muffin +3f93cd71-9f7f-492a-ba44-6fe7c2a3a005.jpg,muffin +45073e8d-2e2c-40fd-a4f2-3c0b73a1f71c.jpg,muffin +4212b231-f3c3-4c99-bbc8-dd9ddec29ed9.jpg,muffin +4404707f-352d-4d18-bb04-4dbe5a9cbba4.jpg,chihuahua +4862b74f-c918-46f2-94ad-6dd767826cc8.jpg,chihuahua +485e455a-a08a-43e8-b70a-c1cf2f5311bd.jpg,chihuahua +455dc178-72b2-4e04-9297-840df30a9ab3.jpg,muffin +477e109c-04bc-4dd0-932b-937700f19a2f.jpg,chihuahua +48ce63fe-04ec-4597-92d9-2994747447e8.jpg,muffin +4441a92d-e37c-4809-b53e-c3c2e16009e9.jpg,muffin +4746d110-841b-4511-bff8-cb1731f946a0.jpg,chihuahua +489e0640-ee83-4385-b9c9-dbaf0d79ef73.jpg,chihuahua +46f96309-c7c7-49fb-b6c4-2f7f43ea521f.jpg,muffin +40535f47-88a9-4289-86d1-2b7a9df25151.jpg,chihuahua +43a8e572-ff02-421e-a3be-965e2184eaf7.jpg,chihuahua +423a8f53-1493-4edb-9dd9-8f9847149d3d.jpg,muffin +4797b0d1-f95c-4da5-896e-a185c1cfaf5c.jpg,muffin +40680798-4825-4ae5-9dab-9b573412e4f9.jpg,muffin +470586a6-b172-4bb1-b9e0-3d08f9053e7c.jpg,chihuahua +43623018-0d4e-4f32-a40c-7ec3c31951e2.jpg,chihuahua +4568e899-d3a6-4821-9052-9ce6a923c842.jpg,chihuahua +455ebb57-541f-4b6d-8ec1-6f583698c535.jpg,chihuahua +4728c233-e3c6-4934-af11-0def14b7fd8e.jpg,muffin +43f94b87-e383-4896-a36d-995df8cc556b.jpg,chihuahua +42ae3d74-e89a-4c9c-acea-14dce11fc4fe.jpg,muffin +461ed10e-5cda-4a3e-82ce-5bad9b988d69.jpg,muffin +45c768db-928d-4aca-8276-d8ff0c260b75.jpg,chihuahua +404942d7-27c0-4031-ae03-673f2bf2c1ad.jpg,muffin +43c29e2a-e87e-447d-93c0-656503080d52.jpg,chihuahua +4615d6d4-8020-47b2-b4c7-0caedea24187.jpg,muffin +41dc259d-51d5-4c68-a42f-0202bc4d4ef9.jpg,chihuahua +430bee64-42c4-4758-b826-0002c2bb8b08.jpg,chihuahua +41614e5c-8b09-416b-af62-36c30287c44b.jpg,muffin +40a1cdd4-fc7e-49f0-9d7a-db71e2177a52.jpg,chihuahua +4661d916-ca59-4e38-b910-aed1a184d698.jpg,chihuahua +444840c4-e350-496a-a0af-24d71447cff7.jpg,muffin +434f0c46-438a-4eb3-9045-be9fe46918ba.jpg,muffin +41167b24-9de7-48a7-a475-69e581a59b7b.jpg,muffin +4576385f-ce84-49cd-9d5f-223f6d9c5791.jpg,muffin +441334a0-4a0c-47f3-a974-da386ffc8947.jpg,chihuahua +4830fd6a-0e49-44b1-a6e9-1cbedec50b7e.jpg,chihuahua +3f6d08e5-59a7-4292-acaf-84aa03ef0e0f.jpg,muffin +420c13e7-41fe-408f-9a0e-f6ddd0d1f278.jpg,muffin +438832a0-5ec5-49f0-be41-9bbf4743ee72.jpg,chihuahua +3fe36e73-02c5-4fa1-a3b0-7f62debb4b88.jpg,muffin +4585092a-3edc-431d-be6d-a56cbc5bcb66.jpg,chihuahua +4356eb4a-2a8c-4d81-8746-09bb937e2351.jpg,chihuahua +42f71529-2780-460c-9f23-fa2841b8371a.jpg,chihuahua +43495e42-3932-4e9a-a831-4c9c377393df.jpg,chihuahua +4722ed38-0d20-4a7a-b67a-4a2c0acbd1f8.jpg,chihuahua +454b73a4-2dd5-4a7a-905a-3f934b42fbfa.jpg,chihuahua +3fd45c5d-1036-4114-abe4-75dec5951e00.jpg,muffin +41793d15-8063-4494-aeb5-f1422b071f98.jpg,muffin +46f72c86-6686-4a4e-8d57-189a1d1a515f.jpg,muffin +405c7fba-ed04-4bdc-b4a7-7f1f2adf84d9.jpg,chihuahua +4e0c290d-ce84-4e93-bbf1-7a09e1c4c666.jpg,chihuahua +516e4d01-9134-4183-a1a9-8d93822f8dff.jpg,chihuahua +4cf16c27-c1fa-4365-b5ef-20039745cb62.jpg,chihuahua +4b27634e-00b3-4152-901b-db9575a7fb8f.jpg,chihuahua +49534f32-87a1-4329-9efd-7b9648cee63a.jpg,chihuahua +545144d0-a22c-4599-a33e-5d5d636cfb00.jpg,muffin +497d4ea9-334e-452e-9cc0-e21f8e897701.jpg,chihuahua +5373b86e-9b96-48e2-85d3-8a2c5cfd8cb1.jpg,chihuahua +520c9de5-f5e8-44af-bc30-ad2e2dfca0cf.jpg,chihuahua +502d6edf-d2d6-40d3-860a-da0329e20665.jpg,muffin +511adf97-6de7-41b6-a8dc-576998ad2ed2.jpg,muffin +503e5aa0-52ff-4845-a35d-79d04eff32a7.jpg,muffin +495c1586-8986-4809-9d77-0a667790d098.jpg,muffin +4c0a1b7f-f261-47cd-ad3f-d673e66a65e2.jpg,chihuahua +4a3caa83-fc33-4914-9ebf-0ea48813dbcc.jpg,chihuahua +48d86a76-dbb3-4bca-afb3-b486c30979a1.jpg,muffin +50133a64-d2d4-4f34-81d8-8c71a72c53f0.jpg,muffin +49493194-0c2c-4ccd-a4a8-6b56ce2ee476.jpg,chihuahua +53e76663-bb87-430d-b565-06fee4a41d44.jpg,muffin +4f5e6787-8bf2-4edd-866f-50599702e6db.jpg,muffin +4b6a3203-2d9f-46d6-b4be-086d122b2ee2.jpg,chihuahua +4d67a94c-6ad4-4668-b187-272cc155b66e.jpg,chihuahua +490d8b62-e17d-4c4e-99dd-05050f431aba.jpg,chihuahua +4a711137-74ac-46d0-9ac8-2acd8163e973.jpg,muffin +4fc5ec0a-2d07-47d0-a7cd-53d90fed302f.jpg,chihuahua +4c61719c-d415-41fc-8e24-69dc33459cd1.jpg,muffin +535b3fa5-64c6-4cc6-b839-e6f8b3ec2083.jpg,chihuahua +512257bd-fcba-42b3-b1bb-038351faa6dd.jpg,chihuahua +4f4a1137-6537-45c2-9719-3a3230125ecf.jpg,chihuahua +53d2cd10-edf5-4a1f-978d-85fe047cdde8.jpg,chihuahua +525d5f2c-4086-4ac5-aa78-9073cd849c04.jpg,muffin +4929022a-c942-4a1b-ae3c-d61693c0b9ca.jpg,muffin +5312dcb8-a792-41e6-89b4-5a15857bba43.jpg,chihuahua +525401c4-6b6c-4f99-8cff-6e44a7c6006c.jpg,chihuahua +54a1caf8-64a8-4e89-aaf2-60473c120429.jpg,chihuahua +4fa6398f-592a-42b8-91bd-824e757504ce.jpg,muffin +49eb1a05-d5b9-48c9-8b3d-389deac3111a.jpg,chihuahua +4f4d0a70-0564-41ef-84c9-795d626397fb.jpg,chihuahua +5326685a-64df-4fa6-b1a7-7fa1d1930afe.jpg,chihuahua +4a71cb42-5b35-4495-8354-98d12a570800.jpg,muffin +4b738a80-ce05-4b2f-bd5b-18f2b69b7db0.jpg,muffin +4de40876-d54e-4d58-83b2-373558018326.jpg,muffin +51133577-4d8b-40bd-9ed0-871334c53bd4.jpg,chihuahua +4f9fb4ab-3fc0-4ffb-aa57-df1f26a8d71d.jpg,muffin +4a0cf10a-89a7-4508-8cba-208ee4b329ff.jpg,chihuahua +53603712-3965-47bb-b653-69596398e10f.jpg,muffin +48f22728-c222-4f43-88f7-4b78efacbc43.jpg,chihuahua +504212f3-bba8-41f6-9725-7a82f1011871.jpg,chihuahua +527344ee-3e5e-4908-af03-9c705a7e282a.jpg,chihuahua +4f80fab5-cf40-437c-9801-48366c286448.jpg,chihuahua +4e683ac2-7f34-47fa-9728-c643d1415821.jpg,muffin +4a18d703-b0a6-4860-88c2-e48ea4898cbf.jpg,chihuahua +4ef648cc-3d6f-47b2-8827-9e93573681bd.jpg,muffin +4ea73f44-de96-4726-bf08-1d4602ad32f1.jpg,muffin +4c64a525-f153-4ec6-b8b4-4f1a3e3e4783.jpg,muffin +4ca1b2e2-301a-4bf1-b685-f170b2688030.jpg,chihuahua +4efab566-c4c2-4059-89d8-a62b2db1f6be.jpg,muffin +54a903b5-827d-4201-a7ea-75b3a3955ff2.jpg,muffin +52144518-89b2-49f5-82f9-edc24b8b07cd.jpg,chihuahua +50bfda3d-e0d3-4e62-934d-0e7643049046.jpg,chihuahua +52cbf09c-f461-4f5a-b1c2-f9539b1e32cf.jpg,chihuahua +646af4d1-6f98-4610-868e-2ffce8f37486.jpg,chihuahua +58ef3c52-6b2d-4544-a375-24d70a823c89.jpg,chihuahua +5e2c8180-c466-460b-a4a1-a15fb68ff4e7.jpg,muffin +5551adbf-0db5-4efa-81db-40fa8550ab74.jpg,muffin +624e786f-7f31-4f7a-8e4a-b1eec4de9792.jpg,muffin +6412881a-339d-4be2-acaa-f16b5c0c81cf.jpg,chihuahua +5894f987-45fe-44e0-8d0d-49e71f60f93f.jpg,muffin +54b7dede-9037-48b7-ad6d-658cc5abc5c2.jpg,chihuahua +5890d02b-ca3b-49a1-94f9-c20da999b7c6.jpg,chihuahua +54f6304e-5bab-4ac9-a844-118200a02050.jpg,chihuahua +63280df3-d146-42e0-ad5d-e6ecc14cec83.jpg,muffin +61924347-38bf-449f-b45b-0d22ca1232bc.jpg,muffin +5e56e1ea-c602-47d5-96f5-513665e8573f.jpg,muffin +5fad3556-0de0-4d24-8335-eafcaf09430e.jpg,muffin +55cf7983-d45b-4102-b452-290204a0de40.jpg,chihuahua +5ace55ee-3a2c-4690-bd0c-42c46bc1c314.jpg,muffin +61a3a2d6-2ed0-448e-9104-91630d3e52d0.jpg,muffin +6136bb51-6eaa-4033-82af-7adf2c43acd4.jpg,muffin +55e85586-b606-4367-b0b1-bcc8ce9ff43b.jpg,muffin +5b126ec9-c0e5-4499-b5ad-68f7b7be6dad.jpg,muffin +6146cea4-72a8-45bd-ae08-27781015762b.jpg,muffin +643ecd3f-ad94-464b-b8a8-b9ccddb9970b.jpg,muffin +5e39f182-39b0-4276-877e-42030529e8c1.jpg,chihuahua +5f65b4e9-ee17-45ce-943e-26ff6bb307fb.jpg,muffin +5b8b48ee-e21f-4ad1-be4a-60c3a31ab5e7.jpg,muffin +640bdc66-e822-4761-9f21-c305768cd3e1.jpg,chihuahua +572ec5a0-901e-4197-a76d-9d1038e002b7.jpg,muffin +592afe2e-e2f3-4a0e-8589-dd43019c455f.jpg,muffin +5d6f6fa8-368e-4356-b655-de40dd83334d.jpg,muffin +5622dce2-5f9b-4280-8f49-45f931a99f71.jpg,chihuahua +612bc868-27bd-404d-b988-a134da84251a.jpg,chihuahua +596a3e95-097f-47af-9cf4-aedb19d77a16.jpg,muffin +5ec39d3a-e85c-4d42-af8b-757f9ca23a75.jpg,chihuahua +633b0ed3-d59c-4fde-ad6e-2b161002a842.jpg,muffin +5f1d69e0-5817-4053-963e-5b4629acb9a5.jpg,chihuahua +63d9cb28-7990-45bd-b9ed-76d86395d032.jpg,muffin +63c75957-6d74-49e5-9a69-7ee791a00159.jpg,muffin +58285ce2-03c2-486a-9a95-98bfbca6bd89.jpg,muffin +62fbe916-c000-4ea5-9f07-434eede5ac95.jpg,chihuahua +5c98ee6a-84c1-493f-86e6-0d1c58835e1e.jpg,muffin +57fcf57a-a20c-444b-a6ff-3e2803b2ae38.jpg,muffin +59500d64-f2ad-412e-bcd7-4a1074fe1764.jpg,muffin +5a520ab6-a52d-4327-93c8-022925b94c72.jpg,chihuahua +5c5f225b-9b2e-4c81-9042-e839275639ee.jpg,muffin +5e1c2696-bdab-494a-953f-b26dfd5b9b58.jpg,muffin +607cecb3-14f6-44a7-9607-441f66c3020c.jpg,chihuahua +5d4d9078-17c8-4b71-b0dc-d97c3b557fa3.jpg,chihuahua +646c03c8-8d1d-450f-8c38-f89b355d8239.jpg,chihuahua +602490c6-38e1-4769-81f0-2b8b32769d72.jpg,chihuahua +63bc3c88-3ec5-4fe9-bb9d-3c916fedd2ba.jpg,chihuahua +6042c1f7-0eb1-43e6-8499-2191b4b73f8e.jpg,muffin +57838033-5d83-4dd8-8d89-a35db5e16c34.jpg,muffin +62d13c67-5893-41bd-9015-ff0214f4f7d8.jpg,muffin +5c7f7871-121d-4e24-847b-ca67b46712a9.jpg,chihuahua +627dec8b-3330-46a6-8ef0-9cb0e9551f7b.jpg,chihuahua +5b962dc1-b9f6-4113-8d0b-53db40282d18.jpg,chihuahua +5d33b719-d99d-4a5a-81b9-6cfbcf7dfdd9.jpg,muffin +5c42118e-e362-44d9-9977-3099f4c92e7c.jpg,chihuahua +616ad32e-132b-4a81-947a-78edf044aeff.jpg,muffin +61d0a6a8-ee61-428a-9314-4bbdeadcdf16.jpg,muffin +61d95362-3ff9-41da-a23e-b1ace3a54ec3.jpg,chihuahua +6c7e0eba-6a88-40ff-b486-348b0cb7db71.jpg,chihuahua +6728201e-02b4-414b-b0f3-361c2d31dea5.jpg,chihuahua +67ed9de8-7653-432d-93d7-28dadbdc1948.jpg,muffin +7143fb59-27c1-49b1-bab1-a9d66f8f0a9e.jpg,muffin +66e4e208-c166-4dde-9d1c-5daefb50f660.jpg,muffin +702ce31f-444b-41f1-aed5-4794c0a26ecb.jpg,muffin +71776f1f-7602-40c9-a441-6d5c8963337e.jpg,muffin +6bc11948-cddc-4359-97d3-bf0a2a3e20aa.jpg,muffin +69ad0b82-8fad-4aa7-b43e-f7bb93778110.jpg,muffin +6ff5ace0-5006-408c-9523-cbb992736a9a.jpg,muffin +71cbf113-cfb9-4b46-bb65-8ed2547a6f16.jpg,muffin +6a2d25a0-43b5-4dfd-b9cd-4ac1fac4261f.jpg,muffin +66f51763-abaf-4bf6-aed3-7542cd57164e.jpg,chihuahua +6825a5d5-b3c1-4e44-a4bf-3494ab2a513b.jpg,muffin +70c04491-7db5-46e8-82f7-f841bb08d7d7.jpg,chihuahua +6d462261-3373-485c-a46c-03a6d4f54128.jpg,muffin +694c0df0-a065-4dba-8afa-1e458e8de79e.jpg,muffin +68044880-9142-4b67-bdbd-401915fc35ff.jpg,chihuahua +6c9230c2-e339-4e5e-8aca-740c5ac6651f.jpg,muffin +658dabbc-7105-4b86-bc0d-e67906aa55fd.jpg,chihuahua +69045d13-7855-4295-931b-a2b069e4f652.jpg,muffin +6663a497-d9b0-4a2d-a754-a9cdce677aa2.jpg,chihuahua +71cda4c8-0261-4de1-9e09-0eb673275cf9.jpg,chihuahua +69071090-6441-46e9-9ad8-1de81a87b125.jpg,chihuahua +695391fb-2a23-41c4-96d4-f5439f12fa30.jpg,chihuahua +699c8f03-af77-46e6-bd85-d6ab928bd451.jpg,chihuahua +660540a4-bea5-4c74-a460-d8584da0488f.jpg,chihuahua +7177d276-cff5-47e7-a029-ae758673e913.jpg,chihuahua +65c2e184-c5b5-4d1c-a20d-4d001a7ffcf9.jpg,chihuahua +6deb7b85-1531-4fd7-a2af-206115b6da6f.jpg,muffin +65eaf8ca-bbf8-495f-94c8-7e67b812a015.jpg,muffin +6fe024f1-ccfb-4233-a1b1-325902cf9966.jpg,chihuahua +6deaab6b-d948-4ec9-b82e-b03110003904.jpg,chihuahua +6adc6367-d826-474f-8fb8-24fe23b06782.jpg,muffin +71596dab-8bab-4c73-8070-b6d0907568f9.jpg,chihuahua +6c94147b-5f1b-4d99-81b1-0c5d78662c23.jpg,chihuahua +699bc6c1-b560-4c30-85b5-f8cd68ff5400.jpg,muffin +6e65f332-8431-4fee-8da4-cc2f6eb0a591.jpg,chihuahua +6bbb8561-24f4-48f9-bf38-9b268af6187c.jpg,muffin +654aeb7b-eff4-4b25-adae-3e9f9affbbd7.jpg,chihuahua +706a638f-f270-4eb1-a0a7-e0806f40dd1c.jpg,muffin +6782f74a-b337-47a1-aa14-0e7afeb3ac13.jpg,muffin +6edd9d01-3e76-4527-8514-0a3cf75384dc.jpg,chihuahua +68fff406-e01c-412c-b3ea-cc6c177f56a1.jpg,chihuahua +7105c2a6-1320-47be-aa1d-3a99475088f6.jpg,muffin +6bf774a4-43dd-4593-b9c7-1f2cd13dae1f.jpg,muffin +6ff8f51f-c8ae-4efd-90e7-1b315750a273.jpg,chihuahua +7007afab-6d6e-4441-a65f-df92d1ab39f9.jpg,chihuahua +6bf94300-796d-421b-810b-0654cc41df60.jpg,chihuahua +6b6608c3-2cf8-4f62-bae8-4205e08fa7c1.jpg,muffin +6ac782dd-81bd-4204-bc0f-2e5eef39a376.jpg,chihuahua +6c94f38c-d70c-4d5a-9889-7a8d67ec0eac.jpg,muffin +6e014c51-2849-4518-9b57-bb2392c8729f.jpg,chihuahua +67c6624b-01f5-4f61-b8b9-6a143afad422.jpg,chihuahua +6809467e-732c-4fc6-bdf6-6456abca6528.jpg,chihuahua +65da600d-12bf-446e-b52b-883935b3e82e.jpg,chihuahua +67ed32f3-c2a3-4337-815e-ab79785ca33a.jpg,muffin +65f2cee1-2898-4130-b7dc-2e3d184dbf10.jpg,chihuahua +65e7be03-5b50-4a54-ab94-eaecfefcef6e.jpg,muffin +6ff6aea0-51fc-44ab-85db-ca27f1413647.jpg,chihuahua +66048985-16ec-4fd2-b4b8-0c8bb08e3eaf.jpg,chihuahua +711ed8ae-1d40-48ff-81f4-3a20e31b53a6.jpg,muffin +77a3eb0d-778f-4d9c-83fa-3c1440569649.jpg,muffin +7856472d-4ec1-4200-bec9-2ac64d94d9ab.jpg,chihuahua +772d5635-71e8-4eda-b38d-5fa74e6fd0af.jpg,chihuahua +729b8d89-7c02-4d45-a0ad-22d0579c3a04.jpg,muffin +7f5f9b54-8c80-49ca-bbd9-03cfcc9c45e1.jpg,chihuahua +75ed0040-a805-4711-b4f6-364c70fd0928.jpg,muffin +7efef077-b62f-4b90-bb81-4b94d5533926.jpg,chihuahua +7a476f4b-3fb4-4f72-bfce-f67a92d1132c.jpg,muffin +7d8ef8b1-04a3-431e-8344-46e03ba67e87.jpg,chihuahua +7f79afdd-fdec-4f43-a837-a449532db245.jpg,muffin +7ea6a99f-1dde-43c2-97ff-973840f455cf.jpg,muffin +7e0e9a3e-0cd7-44a7-8978-5cb310932c4f.jpg,chihuahua +7ce90ba4-817c-4f0d-a384-3a458c9b7e2b.jpg,chihuahua +76299ea5-4ec6-481e-bbf1-31e394d0387e.jpg,chihuahua +7823aa02-0208-40e3-9f6d-404655190be7.jpg,muffin +78963117-f99b-436a-8b3b-38de5811df71.jpg,chihuahua +72b1cd11-d04a-4cc3-8947-f84f30c86cdb.jpg,muffin +794c4dbe-d06a-4175-b5e6-7cf6eb3a3b36.jpg,chihuahua +7240f798-3554-4b54-a481-13849355eab8.jpg,chihuahua +7728ec20-3146-4993-b530-07d10efc6ab5.jpg,chihuahua +77a5cd33-941a-435c-bc76-1ad78cba2eaa.jpg,chihuahua +7fe62d6d-f5d2-437b-9f0a-1222b713baeb.jpg,chihuahua +76d1dc5f-5c5e-4817-a4ef-43107563c3c4.jpg,chihuahua +77c0ca0a-b6c6-47f7-b875-f123d2f314df.jpg,chihuahua +771c8bc2-b07d-4c57-a8e1-96dafdad4800.jpg,muffin +7ccc8977-b1b9-48c2-a10b-bcea47da9d66.jpg,chihuahua +7891455f-de73-49c7-aafb-982d0b006873.jpg,muffin +7ed72fbe-d7bf-4db4-9952-bc2013a73224.jpg,muffin +7857dd79-a48c-4af3-835b-fa8d4af7f7f9.jpg,chihuahua +7c66ea5d-0df1-4ef4-9e31-d88b238756d7.jpg,muffin +74d5f1f1-2ecc-4f2d-bc54-19259ca8925c.jpg,muffin +7cf79107-2470-4efa-811c-8a137f11c6c8.jpg,chihuahua +7720868e-d275-4321-88f9-f8f3abd153c8.jpg,muffin +78328d07-2d2e-4475-aacf-5a62a2ed4cc7.jpg,chihuahua +7867c7fc-23b7-4ca5-a5da-57594ece6088.jpg,chihuahua +80679073-7180-4051-90a6-6fa14650f5c0.jpg,chihuahua +7ca4b066-8730-4863-9803-e3daa39c4410.jpg,muffin +72093c9c-846a-437f-88f8-aae7ff93bdfc.jpg,chihuahua +7a57aca3-1a71-497d-a9c5-af28768aaa0c.jpg,muffin +77cf9f30-df4d-460b-87f3-b11d3ce7b98a.jpg,chihuahua +7f5039e8-9438-4ff3-b809-060290428702.jpg,chihuahua +7d31b541-3d4c-4d51-9ae5-d07891e57d85.jpg,muffin +7c04bb40-9870-4023-a526-904c1feb9e87.jpg,muffin +74ce7f05-bf41-4ef6-b8e8-f787f57a2bb1.jpg,muffin +783bcaa5-6506-4aee-b3c7-03ab0412296d.jpg,chihuahua +7a60e22c-4447-41a4-b2af-dba89d2a4733.jpg,muffin +746a63d7-d9fa-4132-a2d7-88db6308fa58.jpg,muffin +7fdc595b-b315-4bfd-9cfc-abc609f76630.jpg,muffin +77b94d3d-3549-4968-bc32-aaa772036ddc.jpg,muffin +7b21ce73-f7e1-4bf4-b110-4c5fec5162fe.jpg,chihuahua +75989cd4-e23c-4d9b-a196-93409a8aba59.jpg,muffin +7aea7468-6b80-463b-9636-e43f3a77c1da.jpg,muffin +74724393-b3a5-4ac4-a95a-909c0b9d2485.jpg,muffin +78042f5b-e812-4157-b2b3-89106f1437ef.jpg,chihuahua +724a8f6a-0440-4885-9408-af32018509ae.jpg,muffin +773d0d99-c77a-40ca-a2d5-3892572f61fd.jpg,chihuahua +7b86e9b7-9be4-4bfb-8cc6-24bfb59d8b27.jpg,chihuahua +757bffeb-c84d-47e4-93bb-06d5526ec16e.jpg,muffin +71cf564c-ce7e-49d9-a7b6-8cd9e42dbf6b.jpg,chihuahua +7cb138f0-58a2-4c39-9e44-0a978aefd197.jpg,muffin +78722f92-923f-45a4-adf1-15e0236e202c.jpg,chihuahua +7befedc4-6a8e-42d5-86fc-387b7f622191.jpg,chihuahua +851b8b31-b710-4d88-8578-a62b22cebd65.jpg,chihuahua +87974451-8009-4b18-b9b7-0f4373c27a7e.jpg,chihuahua +8ce0bdd0-871b-4550-80b4-a5094e6d04da.jpg,muffin +84eabebb-0da4-407f-ad6e-caece5a86354.jpg,chihuahua +8b6945ae-693f-4b42-a1c1-178b7507269b.jpg,chihuahua +81928c62-77c1-4a73-9353-e06569689b0f.jpg,muffin +85a0cb51-b89b-43bd-ae25-fd5b979b3c43.jpg,muffin +832f1493-314d-4210-a6a2-3cd3d61d4c0c.jpg,chihuahua +8a0d38e6-9f31-47be-be01-df1269677b49.jpg,muffin +83d9602c-401d-46d0-b7bd-09936a450159.jpg,chihuahua +85c3dfd4-00a9-4aa8-bfb1-8de56dc9489b.jpg,muffin +83db357f-0ab6-4941-8374-9b43332b007e.jpg,muffin +82f0b6f3-c27a-4532-b5fb-0c0f66bd208a.jpg,chihuahua +841759a0-81f1-41fb-a8b6-53a7d2285aaf.jpg,chihuahua +85611aa5-e881-4f72-a196-85e540b41862.jpg,chihuahua +8156b0ee-508e-4555-8767-7bf3b59a776b.jpg,chihuahua +88557569-e8d6-4891-82aa-665c770554dc.jpg,chihuahua +8d07e822-9be3-4bbe-80fb-0931abd61899.jpg,chihuahua +8487118b-c3b8-43aa-ab83-29f50191bc73.jpg,chihuahua +8c0f5a4b-c57d-4944-ab1a-0cf5b926a133.jpg,chihuahua +82addbd7-89a6-4875-b89b-c7a50f5d221e.jpg,muffin +863dce85-3424-457c-84c0-33b2ccaacb0d.jpg,chihuahua +87d4bbe6-e67f-434c-9a08-812fc428074b.jpg,chihuahua +8b0739e5-7ccd-49ae-9119-9e125ecac620.jpg,muffin +8b051f81-15c2-4935-b6a2-21acfdd8757d.jpg,muffin +8825accb-8ab7-4c61-94c2-ee0413b6c84a.jpg,muffin +8d15a534-2337-4597-8a49-21c191342efd.jpg,chihuahua +8381650c-b200-4ff6-9af6-469824f7f8d6.jpg,muffin +81bea775-dd6e-4219-959f-eb7c89d4ce59.jpg,chihuahua +88c7f3e1-4069-4933-8d6c-e3765c0a3274.jpg,chihuahua +8d14a2eb-1aba-4209-a24a-016c2e2fada1.jpg,chihuahua +8207ab83-ae93-448d-ac98-0c77412f37b4.jpg,muffin +8118f281-3fe3-45e8-9b13-8ff4b810b9f2.jpg,chihuahua +853a1849-a8cb-4841-ad7c-478445dc7aa3.jpg,muffin +82b37a26-6d8e-44cf-b689-0d0cd9d80148.jpg,chihuahua +8a00e9d2-b2dc-4d09-bfde-c877a1859b2f.jpg,chihuahua +8095c9ae-3801-4c19-8c6a-5c5fdb4e4e00.jpg,chihuahua +8af80cd8-95ab-47fb-84f2-e33ff8010488.jpg,chihuahua +8a7a0cb2-a523-4d86-8bc6-81b2b1d08939.jpg,chihuahua +818f4529-f88f-4041-b594-b07d31508c5c.jpg,muffin +8b156c13-6526-495b-b53b-7a6c846e83bb.jpg,chihuahua +85d55bce-8418-4d5b-b41f-de9cff322a06.jpg,muffin +8c5e193a-6a4d-48ca-a289-4ee36135feac.jpg,muffin +85d16ccf-ef5c-4d95-a8bc-023f004abe2a.jpg,chihuahua +839988ea-afda-4521-a370-c61df007cecd.jpg,muffin +81e9715f-8acf-46a2-8b0b-2cfc3201fea7.jpg,chihuahua +89df4070-b857-4dd3-a71c-d3805e8d147a.jpg,chihuahua +8d4746eb-b10a-4f11-bb41-7044cdcf143b.jpg,chihuahua +8646c4a2-7028-40b2-bec6-fcba3d652833.jpg,chihuahua +867ed063-2dce-42bd-931d-ddf5073d94b5.jpg,chihuahua +85713c06-c5e3-4a8b-8f3e-885eb7709de6.jpg,chihuahua +8a0b74d8-7ffb-4aaf-85bd-c3354414383a.jpg,chihuahua +80da23a6-0f96-452e-b6f9-a3e499d101b2.jpg,muffin +853d232b-92bb-430c-953e-0de6bf698fa4.jpg,chihuahua +8d44b133-0286-4ee8-9690-29c07ae96bdf.jpg,chihuahua +8c366049-abd8-4ee0-83c5-6143938a0697.jpg,muffin +82bbf64e-9784-4514-aa79-966c13c46273.jpg,muffin +86ab05f9-f68d-4f4c-87f5-5c07e8460faa.jpg,muffin +826dbb70-ed15-4aef-ae1f-5c6446676015.jpg,chihuahua +859ce051-fe55-4302-9605-32f198e725d3.jpg,muffin +9a9513eb-d0ab-4597-8bf6-d081581a8f21.jpg,chihuahua +9160808e-8653-4cb4-aa02-58d73dc8dfda.jpg,chihuahua +98b9773b-fa96-4fe4-b6a6-6a41d381e459.jpg,chihuahua +8ebef129-3815-469d-b38c-3d4fe7310307.jpg,chihuahua +93342aba-6d5b-4305-bee9-e5268bd55cd9.jpg,chihuahua +8e60a232-5339-44d9-9f3a-9ffb1d727959.jpg,chihuahua +8eca8097-a4d1-4c7e-b718-b955d1ce3f7c.jpg,muffin +96f7685a-4232-4046-83fa-1f341b18e787.jpg,chihuahua +90913bbd-0aa8-42a6-88c1-c6167d9d8bd0.jpg,muffin +92fd4d2e-0580-4ee8-8676-173ca4fb7f8e.jpg,chihuahua +8e9c86a9-e819-4e87-bc4b-49c4d06c9505.jpg,muffin +97fe0c9a-0516-4ad4-8327-61c438bd9fbc.jpg,muffin +95b3d98b-0245-4a5a-a781-f54aef742c33.jpg,chihuahua +991e6606-4d63-442a-b7ac-26bba8a639f3.jpg,chihuahua +8db24ce2-8725-4563-81ce-95276587f78a.jpg,chihuahua +951a563f-3b85-41cd-8adb-db8d3d9dcda6.jpg,muffin +96597da7-37a8-4e96-a326-fafa0db60e49.jpg,chihuahua +98f44052-08b4-464e-a491-8deeda4f03c5.jpg,chihuahua +971a2fe5-6daf-46a4-9fe8-3d82a1ab13ba.jpg,muffin +95601ba6-b277-4d96-8fdb-0cc4381f85c6.jpg,muffin +96894bfc-5741-4a47-ade8-eb96ed3c9ead.jpg,muffin +98b0d1a1-7c74-48a2-b776-261341893d79.jpg,muffin +98f298b9-7021-4c6b-af70-05f8382d1356.jpg,muffin +8e3ceff7-2e5d-42da-9229-b4023ae06924.jpg,chihuahua +98e545e8-4a9a-4ca1-9950-73f36288c171.jpg,muffin +97acba9e-d1ae-43db-be45-2fd3065c5e0b.jpg,chihuahua +94835975-09d4-47d4-ab7a-e21070f0197e.jpg,chihuahua +96cfbe38-bcc6-4391-86fb-e6673ffd65c7.jpg,muffin +8defda86-8742-4ecd-856e-7ce4a44f2486.jpg,muffin +90bd989a-a7ae-488f-a910-d85905e23799.jpg,chihuahua +90cc6ed6-696b-406c-a94c-1c76d33fbc1a.jpg,chihuahua +90dff251-9e8a-4e49-a7e4-cb66f683907b.jpg,muffin +8ff346d5-4d0b-4b93-aec1-00a4b6149d86.jpg,chihuahua +941adac8-e10d-40df-a321-b3942920b153.jpg,muffin +90abe35a-689f-4bef-834a-81c2ab061e25.jpg,muffin +95307514-6575-409a-8104-701ae70d6274.jpg,chihuahua +985295e7-8681-4a2d-b32b-e2edde5888b5.jpg,muffin +8d9d51b0-cda8-483a-a488-9771e3cb40e6.jpg,muffin +9a39214b-44f2-4061-b721-ee06d2c757a1.jpg,chihuahua +98532635-74c3-4c63-9c89-ffa77378ba8f.jpg,muffin +98b1d364-7ab0-4e6a-a852-7c9d3b86bc38.jpg,chihuahua +94a1c3dc-9fb8-4c6c-9b94-3a2cbfd747e0.jpg,muffin +99ee4573-bd7f-458b-9bea-cf86e18d43ea.jpg,chihuahua +90d7949a-e535-49c8-be29-e607ac953431.jpg,muffin +934a4165-4c95-40a0-9420-990f68691b41.jpg,chihuahua +8eb1f6b1-5d2d-4f3f-85ed-701179111c65.jpg,chihuahua +92649190-cb33-4f6f-8f97-a71b2dcad905.jpg,chihuahua +924a46a5-f0cd-441d-85db-92c65f7e25bb.jpg,chihuahua +8fe1b247-df0d-4948-952c-8361cddca71c.jpg,chihuahua +90eae3fd-a8c0-40ef-b09c-8b69bb9e659f.jpg,chihuahua +8f5bfd73-f8e2-4076-98ce-1b526ef0a9d8.jpg,muffin +911ca941-d0cf-47de-8f38-61c3997408fe.jpg,chihuahua +9a1fa135-f834-4735-85e4-d94427f54fc2.jpg,muffin +9727a7f6-c64b-4a84-9e8e-f9c820a12277.jpg,chihuahua +937f51e1-52b5-4b34-a303-e09960d54ef4.jpg,muffin +96a1c58b-9bc1-466d-b509-3a8345029bbf.jpg,chihuahua +8f814d87-703c-42a0-ac9a-88a762901ae9.jpg,muffin +8face040-08d0-4ca2-b803-7366f3b75ca5.jpg,chihuahua +95d6585f-0e4e-441c-b386-07ab1314c07d.jpg,chihuahua +9bc278ee-6605-4c1e-86d1-32f0c995d86f.jpg,muffin +9fdf4f61-356f-474c-bea3-f3ba98dcc30f.jpg,muffin +a5f1b29a-2c6f-4bad-9eb0-c00ebf3494f5.jpg,chihuahua +a719059e-3383-4b4e-9649-194354e9af2d.jpg,muffin +a7077f4b-239a-4894-b1d1-5fd216547035.jpg,muffin +a50b79d3-ec2b-40c9-a1f1-0f55d0813565.jpg,muffin +9eed4f9c-4e6d-43a8-b911-e45c5f0a99db.jpg,chihuahua +a2b4db85-e63b-4400-acf2-7d7d31c5014b.jpg,muffin +a3c7fd96-ee00-4c76-a790-fc6dd6c5042f.jpg,muffin +a33617ea-8c9c-439c-8652-e01a09b201f2.jpg,chihuahua +9cb7074e-6121-43bb-8d9a-36aaca084d07.jpg,chihuahua +9eb3b5ef-cb7c-4d69-8ee3-29b4147d336b.jpg,chihuahua +9eea33aa-33fe-4b9d-9390-124b1c096287.jpg,muffin +a22e1b03-5f81-404a-a22b-685944cd69ac.jpg,muffin +a1352dad-7db9-40bf-87e0-51aa838f5cdc.jpg,muffin +9f001bcd-279a-4023-8525-52681750fb9e.jpg,chihuahua +a5c50c88-18f8-4acb-b222-d08b5aa86f81.jpg,muffin +a8a2177a-e251-41df-9170-fdba1c04f35d.jpg,chihuahua +a76acabc-e9bc-43c6-ad53-58f789b61728.jpg,chihuahua +9f0b290d-a011-4898-99fa-2603362ec6bf.jpg,chihuahua +9c11c31c-853c-43dd-9db6-641e22ff5972.jpg,muffin +a2c034ec-b237-415e-9dbe-5b4a87a0fab5.jpg,chihuahua +9e3e6484-0492-4693-8e19-b973700bdee1.jpg,chihuahua +a5ec3efc-f6a0-4d7b-84fd-266b12c83d16.jpg,chihuahua +a2128b0c-582c-45cf-9dc0-3d553854384e.jpg,chihuahua +a52b7e9b-d907-45e4-af9c-279b0deb24d6.jpg,chihuahua +a16452fa-d129-4aa7-a093-ce65e65563ee.jpg,chihuahua +9c2914c4-55ad-4ae3-9997-c5b9b8d1b3d2.jpg,chihuahua +a8199967-c4bf-462c-bf7e-08f9d925fb0d.jpg,muffin +9da48fe4-df22-4213-b88f-164f1f229368.jpg,chihuahua +9cc9ad0d-5db3-4c5c-9b62-42af57a31c84.jpg,chihuahua +a597b866-9faf-4f6f-b6b5-7eff3f660ea4.jpg,muffin +a540bb27-9c0d-4fca-bf4b-b3c9665558fc.jpg,muffin +a2d7cb82-a656-4af2-b751-71e2da9c9fc5.jpg,chihuahua +a1151fe6-85e3-4703-aefb-9f90e7629724.jpg,muffin +9d64e2d2-1a85-4e20-9069-d6cb45762a21.jpg,muffin +9d651ae3-932f-4a0e-8d07-b5e3a0f63010.jpg,chihuahua +a2c5762d-0043-4ee5-aa54-0d07e7ff8684.jpg,chihuahua +9dd1530b-7b8e-41a0-87b9-53f23e56f400.jpg,chihuahua +9aaeb2ff-4236-4c53-b4f7-aa6508d8aa6a.jpg,chihuahua +a4e81af3-6725-404e-8c34-e1308fbbb640.jpg,chihuahua +9ad86044-57cf-418f-ac8e-7a394d71e9ca.jpg,chihuahua +a013c6c7-731a-4250-94ea-2e7cad4e306f.jpg,muffin +9c9e8f99-77a4-4cae-aab2-ad96f88fc443.jpg,chihuahua +a27f6b8b-7096-4e0c-854e-94535f4eb0ef.jpg,chihuahua +a17816d0-2d4b-4ddf-9dbc-48fff5c10400.jpg,chihuahua +9c7b1d62-f1fa-47ea-8cd0-25a8ae760525.jpg,muffin +a72cadb9-1a17-415d-9290-b20b066fa8dd.jpg,chihuahua +a304a9ea-7fa7-4ac9-8f0e-d3b247e9a6cf.jpg,muffin +a2bd691e-3e55-464d-9902-0ba5c992d6f5.jpg,muffin +a61d9e88-18a9-458c-a192-1325f041e2d6.jpg,muffin +a1e5ad41-83fd-484e-8fc8-01f2261b91b8.jpg,chihuahua +9b5adf8c-e5d6-4784-b883-12986fe972aa.jpg,chihuahua +a88a036c-9b47-4f83-a646-0133bf87dce4.jpg,muffin +a15016ed-35f8-4f19-95f7-b6bbaf533611.jpg,chihuahua +a38e4f1b-af6a-488c-8b72-3fa31893e155.jpg,muffin +a44cb2f1-c735-41ce-8498-c9aafc2213db.jpg,chihuahua +a80fc61e-0b76-4957-bb39-ec51394ae8c0.jpg,chihuahua +a17b5ac5-b0d6-4a5a-9ff4-658e52708a74.jpg,chihuahua +aff9801b-0baf-4afc-8c5b-92acb699df66.jpg,muffin +af47eab2-181d-4ec1-82e7-2fd10f7c59bc.jpg,chihuahua +ad2a01f9-d2b3-4892-91e6-3b2d68869093.jpg,chihuahua +b41e56fa-405c-48d4-a56c-ee8a6ce3b7a5.jpg,muffin +b51e6369-3f76-4e6c-b554-1463e6d3464d.jpg,chihuahua +b1d59a09-a5bf-400a-a07d-3974ad511255.jpg,chihuahua +b0b60ce4-129f-4d64-88de-eb8fdf6e9667.jpg,muffin +b198b211-7815-4765-bb2e-1fa3ee05bf35.jpg,chihuahua +b28d7c66-7a32-461e-9c41-b64adc3fd188.jpg,muffin +b07a61d1-6d71-4799-8b06-476b40e40104.jpg,chihuahua +ac357f84-e8ab-423a-afc7-ad69e895777c.jpg,muffin +a8d70822-db9c-4d32-94ee-b287e1c7642d.jpg,muffin +b0485aa7-b3d3-4e5b-aa6a-b72667ec945d.jpg,chihuahua +abcd8f6b-cf96-4da2-81b1-fade84f25c95.jpg,chihuahua +b2bead09-8647-419b-9535-07849893af34.jpg,chihuahua +aef5fb9a-2dcb-4d19-be63-37aec9ff8a23.jpg,chihuahua +b51cafae-8ac6-48db-9a78-c52ff7427544.jpg,chihuahua +aa768083-a0e0-4569-9338-b9221fd5a69f.jpg,muffin +b54bfc0c-6369-4e0f-bfc4-71519960f5e2.jpg,chihuahua +b1389be3-d8e2-47b0-a00d-eed0eb5dff57.jpg,chihuahua +aa151b11-42e9-4f39-b9ca-5309cc230900.jpg,muffin +ad2685ee-e314-4727-b361-732757058798.jpg,chihuahua +a962e171-9b5d-4541-bbc7-047e2d868002.jpg,muffin +b097a457-26e4-4820-ad74-eba4bfa3277a.jpg,chihuahua +ae0be686-5ae5-4f47-ac0d-d0509b5a95dc.jpg,muffin +b1bc3cb6-13c0-4641-9eff-5101c69b206e.jpg,muffin +b4ae3769-b2de-4cbe-880b-e09b2f931b96.jpg,muffin +ae56c5d8-4bb9-4054-9064-7600eb300b1d.jpg,chihuahua +ac896f82-f44e-4ccc-af2e-d4430e8cecec.jpg,chihuahua +ab5e6c93-b0e8-4d14-bd75-6a51922e3958.jpg,chihuahua +ada93b67-9b9d-454e-9511-d6db7d102e54.jpg,muffin +b08b2a29-ed60-4fe6-a1c7-d8acd32762f4.jpg,muffin +b35dd975-03bd-47d3-829e-a51f3d28bd32.jpg,chihuahua +acdb0172-bd53-4327-9b56-8b3dcc9f2a33.jpg,muffin +a9eb9f7d-6786-4dec-be7d-c90641402965.jpg,chihuahua +b1b34081-37a5-4aac-99d0-90f2dd83b2ba.jpg,muffin +aefd02c6-3af0-43c2-8a3c-0ce2a3b41fd4.jpg,muffin +aef038c7-c663-4307-9e68-8420785979e1.jpg,muffin +b4f4cbad-f52c-4e0c-b6dc-c4af7b54389e.jpg,chihuahua +afc5b4ff-f3d2-460d-8d36-73133ceaf078.jpg,muffin +b4b9f8ec-bc94-4810-8b0d-9e472176a319.jpg,chihuahua +ae1f8d59-0bba-453d-b18a-e4dec3dcd5ec.jpg,chihuahua +af77023b-012e-41c0-afd0-8a54f2b36ea3.jpg,muffin +abfb1229-9720-41a9-ba94-e8e179910ed9.jpg,muffin +a8ef5b91-7514-4cbe-a9fc-f7bead23c71e.jpg,muffin +aad9174a-fec6-4d83-9ef0-7c1723beee1c.jpg,chihuahua +af38dbca-3f68-4f9d-9be8-3d3850fc70a1.jpg,chihuahua +b1a80339-3575-47bb-9fd2-00580973aebf.jpg,chihuahua +b33007fb-38f8-4e00-b801-028fac40410a.jpg,muffin +b1489b4a-2ed4-49cf-8b67-6a84d1ed86a3.jpg,chihuahua +aa65ca9b-cd11-427b-956b-16d001ead2a9.jpg,muffin +ae710694-f985-4b4c-8058-baee52deebcb.jpg,chihuahua +acb2fad8-483e-46f5-8cd1-fc2e9b087794.jpg,chihuahua +adfd147a-41d5-4a08-812d-48807328592a.jpg,chihuahua +b208ffba-a247-4c30-8d32-b21d06298db8.jpg,muffin +a97ea53e-4549-4d61-9953-fdb0dd48a99d.jpg,chihuahua +b13ea323-a865-4736-ae44-cfe206e9cd08.jpg,chihuahua +b0643d33-f95b-4748-b97b-b7192703dee9.jpg,chihuahua +b175de49-01d5-4b19-b174-eca6b292a2a5.jpg,chihuahua +b2463255-0918-4b87-adb8-823c1417a7dc.jpg,muffin +b66038b0-f3fa-4827-a958-7edff8e4b00c.jpg,chihuahua +bc369996-5a3f-4950-8ec4-10f3f504a847.jpg,chihuahua +c1174bbc-f191-424f-9be8-2ad5c15134f9.jpg,muffin +bd566d36-7e9a-4107-a3e8-65815868ba5b.jpg,chihuahua +be1dd212-f05d-440c-a103-289e11e29a84.jpg,chihuahua +c1967b2e-9c66-4684-ae36-674aa08163d8.jpg,chihuahua +bdbf75ca-8b00-43b2-8a15-ae612b41566f.jpg,muffin +bce0e592-09cd-47dc-9056-b32eb288ee71.jpg,muffin +bc7f62f2-7f9f-474d-a9e2-3815abeb7aab.jpg,muffin +bded9d08-b134-40bc-85f0-bc4b27e320a1.jpg,muffin +bee96204-4360-4cb9-a3c9-c9fc6cefd2d7.jpg,muffin +be28e9aa-8d8f-4fa5-a318-4573a610ea6e.jpg,muffin +b6fedbba-e2e6-4d7d-bf81-8b5a28d497ea.jpg,muffin +bb0be926-aaa6-4f0a-9700-bc92fbc269a5.jpg,muffin +b6a7f9e2-968b-4878-b929-16670fbb7e1a.jpg,muffin +bccbee8f-dc62-4b8f-bb31-8bc8fbbdb675.jpg,muffin +bf90da3e-a11f-4927-952a-89377b0decf9.jpg,chihuahua +ba63288a-b7fc-4b95-b159-a1abea8bd14d.jpg,muffin +bac30cbd-7c20-4475-abe7-dae823624bd3.jpg,chihuahua +b79b9b87-1e09-4261-b96a-0350a6d64322.jpg,chihuahua +bd6ea0f6-9b51-4655-bcbe-176ec15bc537.jpg,muffin +be853a7a-de36-4166-8b18-b81d96f1cda5.jpg,muffin +c09d965d-6555-49f4-bc58-2ba2134002fb.jpg,chihuahua +c0feffa3-049e-4a05-aa4b-f0ef11e73432.jpg,muffin +bc3798ec-4e37-4c07-a52b-e3d62746143a.jpg,muffin +b72f6f46-2e41-4fce-b32c-394215b3e273.jpg,muffin +bc795c3b-e582-4f99-b87a-0ff7bc04440e.jpg,chihuahua +b854973d-5974-47df-97e6-f6470b4745ca.jpg,chihuahua +b5e19210-503a-4629-96ba-60678103a228.jpg,chihuahua +bd21bddf-14e0-4024-8924-3ece501bcf3d.jpg,chihuahua +bb40bda3-f655-4fb9-a366-6f4bbe87bed8.jpg,muffin +be8c191f-8fb2-4b5f-b9ed-06d592e99026.jpg,muffin +c0a776b6-b55d-4336-bd80-a16fcb0c9033.jpg,chihuahua +bd315fcc-027e-4064-8b74-74928c8cea26.jpg,muffin +bbbdd940-db63-4982-b8bb-9819efe6a730.jpg,muffin +ba24394e-4857-48d0-898c-183ff08189d9.jpg,muffin +be295f39-80ac-4e8b-813c-581492886b9b.jpg,chihuahua +bda66eb2-4b07-4477-961f-8075844324a6.jpg,chihuahua +ba91dd07-584d-4754-a6f7-0a5b107b8265.jpg,chihuahua +b9e19eac-5955-453f-8ade-72c9024832ff.jpg,muffin +ba00d441-1ce6-4530-805b-cce63132cd57.jpg,chihuahua +b7c86bbe-ed5c-43cf-b00c-96dc456dc34c.jpg,chihuahua +bb1a21c2-376e-4921-bf67-4083e8412bdb.jpg,muffin +c1083d5d-5ab6-4636-8dcb-b5af1ff7f1c3.jpg,muffin +b5b6f3b1-3ebb-4518-9a65-266a27d290eb.jpg,muffin +b989b201-e79f-462b-8989-442dffd14b13.jpg,muffin +b93d2210-1157-4d01-a951-8bb4abb6832d.jpg,muffin +b64850a9-08d4-4f06-84bf-6772d2c1e3a1.jpg,chihuahua +bd771949-ddb5-4a60-8ef5-2ecd13bd9fe4.jpg,muffin +c1fe5100-57fd-4b0e-a920-462e75ceb7ff.jpg,muffin +bf0090aa-0047-486c-8a66-9c4ad9c70560.jpg,muffin +b859af1d-7104-4506-adbd-6698a26b92b6.jpg,muffin +bb20557b-85c3-49aa-88f8-795d712a14dc.jpg,muffin +c100e5e2-5c16-44ce-ac7c-ebd9f18c68c9.jpg,chihuahua +b91ae5e0-91cc-4d03-a980-69cfd7a1ae6a.jpg,chihuahua +baee4756-0c9d-47ab-95f5-0d69afa45fec.jpg,chihuahua +bc1dd3a9-dcc3-4f35-be50-e85ccdccdba8.jpg,chihuahua +b75fe82c-f69c-4a01-af8d-99c84d6cd232.jpg,muffin +cab46093-4322-40b9-bba9-f1ade1695244.jpg,chihuahua +c2b5f260-26ea-4da8-ba1f-9ff7020c2038.jpg,muffin +c2ae9332-8dfc-44e7-92ef-d82cd8a355e4.jpg,muffin +c60aa325-5ba3-4b82-b723-f7535a124bd3.jpg,muffin +c8f2bd97-f2b7-4c31-9575-a557801c793c.jpg,muffin +c9c5a9a5-986c-414f-b055-2f0986fca55c.jpg,chihuahua +c9d92c9f-6593-4de8-94ab-621e35d284c1.jpg,muffin +c6eef166-85cd-4f16-a8e1-476d129eef57.jpg,chihuahua +cc4349ff-f13d-49bd-a389-0462904b8ab7.jpg,muffin +ca497c36-dbf2-487c-8a44-d3d603c77e87.jpg,muffin +cb450625-4b8a-4850-a8ef-2f448dc9a700.jpg,chihuahua +c31c2ce8-57f6-47a6-a4dd-d87ab9c57774.jpg,chihuahua +c7e5d845-e86a-4e85-89b0-45e16c1c87a0.jpg,chihuahua +ceee14ce-5051-4909-be5b-bb5efad91aef.jpg,muffin +c3f3bedd-c543-4970-97ca-ffb338d9d0a6.jpg,muffin +ca1badf6-a797-4506-ad3a-f47124ea4df2.jpg,chihuahua +cd98e7ae-1994-476a-8856-6c40a741bd26.jpg,muffin +c243373d-1cbc-4f89-8e60-cce0b3b214e1.jpg,muffin +cedfa31f-f6f5-4e7a-bced-580b219ff414.jpg,muffin +c7b9f34d-849c-4e48-b7ec-261c2c1e83e2.jpg,chihuahua +c8e553fa-c465-41eb-abec-c5b2cc011190.jpg,chihuahua +c6e5913a-1fa4-492f-a0bc-2c449ad36611.jpg,chihuahua +ce30370b-3ade-45b9-82f5-f74632c1da51.jpg,muffin +cab98ca6-79b3-49b5-bf5c-0a2b4d69bb5f.jpg,chihuahua +c807e28c-83cb-44de-8422-a728bdf07178.jpg,muffin +cc74a6fd-4517-4380-973c-ec0784e1c370.jpg,muffin +c65fdc24-a885-4a93-af48-c45e769dd369.jpg,muffin +ceba7cfa-77b9-4b4c-b97e-55816d94bc16.jpg,muffin +c48be149-8356-4ae5-bf17-2faf65a8a3be.jpg,chihuahua +cb35ddeb-0285-44b9-b4c1-a4ba6e4981bd.jpg,muffin +ca44a533-0fcc-452b-9420-38aa884cda5a.jpg,muffin +c7445d40-82c9-49b9-942d-5d96ef819d41.jpg,muffin +ce6ec51b-2916-4a04-aab6-b772c1723697.jpg,muffin +c21ecf86-83d4-43a7-8f3f-dd0d39931c3c.jpg,chihuahua +c31ac7a5-82a2-43d9-be86-f4362615b6ff.jpg,muffin +c25da703-1241-4411-bdcb-b06d14f22d6a.jpg,chihuahua +c81dee6e-41fc-493b-a1f2-a320e9669c1b.jpg,muffin +c68b14c0-d489-4e85-a21a-975f467d9dfc.jpg,muffin +cb798db7-9728-411b-9604-ab4b12c80c88.jpg,chihuahua +c2efebca-ace7-42f4-8372-9f22f5b5a900.jpg,chihuahua +cb332a13-cd2b-40f4-892f-2a77f119aa76.jpg,muffin +c644a566-ea78-4f3c-a376-7f9b4d267e7e.jpg,muffin +cc8fb50d-eb93-464d-a40f-57ff61d8b198.jpg,chihuahua +c9185b99-e0ac-4d62-bd96-c0f2a382c509.jpg,chihuahua +cc63d022-23ed-4b7f-ad7d-79ff0e8cc191.jpg,muffin +c9bdb2f6-8167-4db2-aff1-4bce551e0f15.jpg,muffin +c9cfcfe1-c229-4686-af6b-d35bddbd630a.jpg,muffin +c6c05c75-19a3-456b-964a-3afebf05899c.jpg,muffin +c6ed6d54-ee68-4277-a682-c619289714e6.jpg,chihuahua +c23c7f8b-be6f-4c0a-a672-a6f36c524d52.jpg,chihuahua +c75235c0-4916-45cb-b291-10dda39021c1.jpg,chihuahua +c5016510-e1fe-4bad-b1bd-931451dc27f3.jpg,muffin +c572e426-29ee-4900-ad5d-ba1fcb3061ea.jpg,chihuahua +ca1207eb-c525-4461-b889-f3e07147fb4a.jpg,chihuahua +cbd6cfad-2812-4840-8941-353f851b3548.jpg,chihuahua +ce61e296-19f8-462f-b446-98651f1b473b.jpg,chihuahua +cd7abc98-a3f7-49b6-af0d-1d034d9c18e5.jpg,chihuahua +c6a160ac-49d7-45b1-8f4c-7297bb4427d4.jpg,chihuahua +c4ad91bd-f3c0-413f-bb9b-ed9cbe5606ff.jpg,chihuahua +cc93e883-c83b-4231-b84b-1ee665e31c5a.jpg,muffin +d4d24c5a-010c-4315-a634-1d72eb5c5306.jpg,chihuahua +dcaf7fd4-d567-4841-af23-5f03a88dc5a0.jpg,muffin +da46f7fa-df13-44f9-ae15-efebe3470f0c.jpg,muffin +d57a04e4-d652-4d95-8ed3-eb12e0c82914.jpg,muffin +d5a61ca3-3e67-4cdb-aaa7-b066c1632d76.jpg,chihuahua +d8179386-478f-446a-b15a-e3eb47ee6b4d.jpg,chihuahua +da1954e2-0963-4958-8031-c90ee2a5745b.jpg,chihuahua +d698aa11-a2ae-429c-b2ed-a5d1706dbc8a.jpg,muffin +d9be2a09-f26a-4e09-a22f-f2d37aa97636.jpg,chihuahua +d7a1c9a5-71fe-4721-b390-58d36b87a5a1.jpg,chihuahua +db32a83f-f3fa-4557-b1e6-322a08e25f48.jpg,muffin +d797b141-be27-4d26-9a7e-da8167d3e204.jpg,chihuahua +cf8ae562-9f34-4ecb-85d6-392d4621cd31.jpg,muffin +d7223656-f4e6-4f5d-a18c-7df93e6b55d5.jpg,muffin +d59b56d8-027d-41bc-aaff-cd4805614515.jpg,chihuahua +dc2eb645-91b9-4c77-992e-b6be04aa02c9.jpg,muffin +dcf6bd38-5e53-411b-9395-b12991990556.jpg,muffin +d430e122-a593-466c-bbc5-7cb46df0c492.jpg,muffin +dc167726-5a3b-42cc-86c4-e7ad0b28553d.jpg,muffin +d02a30ed-21c5-4a71-824c-382dd0ca7708.jpg,chihuahua +d569cb0f-b3c4-454c-b76a-0c736fef5bda.jpg,chihuahua +d1af3771-3927-45c9-9078-207a89cd1f92.jpg,chihuahua +d19afaef-25f3-4e34-ac65-8d633863f0d2.jpg,muffin +da895353-f48f-4b72-a072-879ed3156e8c.jpg,chihuahua +d4d3a4bd-9ac0-4b88-a53d-398926379205.jpg,chihuahua +d5907e94-0246-41bd-a7cc-78ba9e97e7be.jpg,chihuahua +d7a14b5f-72c6-4f64-bac7-74537b2404ff.jpg,chihuahua +d5902100-c93a-49a1-84b7-f2ddfa68f8be.jpg,chihuahua +d4189f05-7d5c-443b-94d6-75fa68d52427.jpg,muffin +d2a44d0d-b68f-4f74-8b95-85092203cc35.jpg,chihuahua +d2700457-bce7-4cc2-844b-48ed68a47e0c.jpg,muffin +cfd27c2e-f1f3-4810-a1af-7c941bda2e38.jpg,muffin +dc5f758b-8583-4b15-822c-2c621f574333.jpg,muffin +cfa4ddba-cd49-4ea7-95c5-126c9a598257.jpg,muffin +db12fdf7-41ed-45a7-9111-2436ec32308b.jpg,chihuahua +d7740bb8-1bfd-4f11-ae75-649760746260.jpg,chihuahua +d4d80cd3-8999-4638-89d5-2cf024e98ef0.jpg,chihuahua +dc9375d1-432c-44d0-a596-92168fe2ba0e.jpg,chihuahua +db0591d7-9f9a-42a6-93a5-339b4baf8668.jpg,chihuahua +d865b054-b432-47af-a511-fc1e99228e15.jpg,chihuahua +d1774e1a-3e88-446e-bbc9-c30aa4824cb2.jpg,chihuahua +d18757cd-f10d-4424-859d-e5ba1750a354.jpg,chihuahua +d3c58414-a0ab-4c1e-9279-db8bac84d985.jpg,muffin +db989ded-dc4d-42a7-9bfb-38b55c7ae1f1.jpg,chihuahua +d960707f-097f-457e-8fc0-50580c32b691.jpg,chihuahua +d719aa24-3eb3-4b91-bb15-8c1079b014c7.jpg,muffin +d7d33868-5ebe-46eb-8cf2-b3f52befdc20.jpg,muffin +d6a04258-d5b2-4b6e-937d-dc45143bb8ff.jpg,muffin +d601b86f-b187-4693-b415-f3278692ff57.jpg,muffin +d3199a58-71da-4c4d-ab91-7a4c7d21aec1.jpg,muffin +d56c5468-8b8d-4452-bf74-16b53fda224c.jpg,muffin +dbe8d7db-d84b-4b3e-8308-a1288ea109e7.jpg,muffin +d4bd7567-f759-43b0-96a9-19ad2284a406.jpg,muffin +d24bec81-1ecd-4c4a-8a62-542d2956f21c.jpg,chihuahua +d25e84d1-32fd-47dc-b4dd-0e7fedbf72be.jpg,chihuahua +d50a2df2-73bd-473d-b972-757f12726c73.jpg,chihuahua +d7307188-ee0b-4b40-94ba-a8cb3014d8dc.jpg,chihuahua +d40daa76-4159-4553-82ad-3f29dbd37d37.jpg,muffin +e3a8189b-857f-40ea-b54a-1b0dade89de2.jpg,chihuahua +dea513c6-a45b-45ed-ae8b-1d77f69faec4.jpg,chihuahua +e43e47b7-e3ce-4b3f-8acb-d1a892dc9006.jpg,muffin +e11b5f3b-1591-4d40-928d-537a46880cf1.jpg,muffin +dd01babb-400b-41d4-ad20-1a9766a14e1a.jpg,chihuahua +dee955e8-0c2f-471e-9bed-fa9a7a2936ad.jpg,chihuahua +e18786ef-e2d1-49f0-9c43-d6e21619a429.jpg,chihuahua +e9cb4399-d829-427e-911e-c56152a42562.jpg,muffin +deccdb70-8299-4197-a6a3-4c73e28f32e7.jpg,chihuahua +e74bc490-604c-405c-9952-19aaa04922b2.jpg,chihuahua +e1ad82f2-2a59-4a61-a26d-a16b8d2c384c.jpg,chihuahua +e0258f06-524d-463d-9c69-876b3ed74ee8.jpg,chihuahua +e7d7f57f-f097-42c1-ac2b-53713d77ee66.jpg,muffin +e8e7f8e9-0bd2-4625-aa67-1f8d1e2f7fb0.jpg,muffin +dd697fd9-ed76-4b3f-bdcb-ccbb2f88a844.jpg,chihuahua +e9c2c659-ce2a-40f9-8254-8e6ee188b848.jpg,chihuahua +e090f581-a0bf-4fc8-b92b-90a503ff0414.jpg,chihuahua +e07f7cca-7c70-4f2e-be1a-fcbd7a584df0.jpg,muffin +e7990f16-c771-4a3d-bda0-d569b51b3ba7.jpg,chihuahua +e54b4845-e5b4-4e32-a15a-1f1e1325c45f.jpg,muffin +ded4fdd1-b731-4ab2-ac6b-440f0bf912cf.jpg,chihuahua +e248104f-1a88-4829-85c1-59b755f0dd93.jpg,chihuahua +e1c59c21-96a7-4b97-8022-81a208298c8d.jpg,chihuahua +e11793d0-7266-4828-8c35-b8c1fe4f679b.jpg,chihuahua +e52dc1bc-e764-4e96-bdd8-c002c3c175b6.jpg,muffin +e349d790-8321-4f46-a5bf-5bb1d67742d0.jpg,muffin +e1bb7c12-a48a-4a81-82a5-33835379e6fd.jpg,muffin +dd7926fa-f577-40b8-93b1-17f2d47dbfab.jpg,chihuahua +e8ce29ec-6b37-4b7f-9ae7-0d5e669c6e6c.jpg,chihuahua +e903bf71-df41-4f0e-894c-7bf389d51194.jpg,chihuahua +e342e0de-9bb7-4b2a-86a8-e489bb13e703.jpg,muffin +e2c955fe-5c60-4cdb-9729-030348a66267.jpg,muffin +e4f1253f-61ee-4300-88f1-e2ae6568687d.jpg,muffin +e3f33d4a-1a84-4e41-9178-e59bf1211c25.jpg,chihuahua +e60ac410-0baf-429a-a331-c9283e40c1b0.jpg,chihuahua +e2fd26bf-808c-4693-9762-e08d0b55605a.jpg,muffin +e53d0a32-d1cb-4b5e-9bad-f4ad734dd1d5.jpg,chihuahua +e3fd3428-0471-4f24-b48f-101c9ac6ac39.jpg,muffin +dd30bf0a-e3c8-4280-aa85-7ddbf34e35b2.jpg,chihuahua +e6569090-80bb-4113-b141-d8a41571d941.jpg,chihuahua +e4a204f2-6208-4c20-a570-ba4e51e6aeec.jpg,chihuahua +de8bf597-a523-43a5-8a7a-8ae2a6d70cdb.jpg,muffin +e807cf24-011d-48da-ac70-26836a27f92b.jpg,muffin +e89dba3c-243c-417c-b007-955b9e28fea6.jpg,chihuahua +df8f9887-94a6-4d36-af6a-f9a30090a346.jpg,muffin +dd0c4a83-efe7-4e3f-853a-f1c3d67f350f.jpg,chihuahua +e0ee49c8-2289-4904-8a59-376a5b7d9557.jpg,chihuahua +dd82ce90-81b8-4e54-b040-a1ef082d6282.jpg,muffin +e810f9a5-38f9-4e4b-be22-e0eadbb9c40d.jpg,chihuahua +e83ea143-534c-440f-b893-e1f5c4cd8f3e.jpg,chihuahua +e4551cc9-d69b-4dd4-aa89-f44907a1ccad.jpg,chihuahua +e63d6b2e-6b77-47b0-b84f-e1dda10d5cb8.jpg,chihuahua +e170e498-192c-4f8c-a9c7-8a1354b9f61f.jpg,muffin +de0c0b88-3c87-4977-bca3-7a19afd27be0.jpg,chihuahua +e732e7dc-4a31-4b6e-a7b8-f966f7a8fc1e.jpg,chihuahua +e3f83353-e4ac-4348-b2f6-ef3cdef98b22.jpg,muffin +e175d7c9-29f4-4f41-8124-cc3976206dab.jpg,muffin +e4b5ca83-6500-4955-88f9-42a6e9286fea.jpg,chihuahua +e05296b2-3e9c-48f2-8904-c36e14dce25e.jpg,muffin +ec1fcbda-cfbe-49d4-a3bd-79e06eaf8bcd.jpg,muffin +edf727b7-cecc-4282-bd67-1941bc593594.jpg,muffin +ef442b2c-cc5c-4621-b0f4-607c29ec1834.jpg,chihuahua +ec814d42-03e3-41c5-80e0-c7c03f7b5bf1.jpg,chihuahua +f741f2e8-1750-4c6e-b0fd-f23657eda5d0.jpg,muffin +f3ed0d3f-e1e2-4817-a22e-8772838471ba.jpg,chihuahua +f53e0fb0-9edd-44f5-bc3b-9c6ccd16f629.jpg,muffin +f6952ac7-cd22-4889-8cab-98691239177c.jpg,muffin +ec3f7668-cf72-4ada-a7d5-01369172d26d.jpg,muffin +eb73a6b6-9006-4fdd-8d47-2e28b201aa30.jpg,chihuahua +f4995c1e-93bb-4fa8-ae57-decf2bbd220e.jpg,chihuahua +f37e6a2f-3a1d-4077-b3c1-57494e415798.jpg,chihuahua +f11ebb69-bcbe-43a3-bc8e-5fe931c984a2.jpg,chihuahua +f4cefb90-883d-4a11-8803-94d07f8bdd84.jpg,chihuahua +f1b727cd-92f6-44d3-9cda-b764b5134696.jpg,chihuahua +efbf9550-8208-44ef-be42-e243fd4adbe9.jpg,chihuahua +ed0c6f51-6e73-46a2-88ac-914d6c986653.jpg,muffin +ee3a5494-4a23-43fd-b11c-a6f06ccf5cd7.jpg,chihuahua +ec211b6b-8c2e-4048-b8a5-0cd644dad6b5.jpg,chihuahua +ef33c462-ce14-4a41-ba13-2913e414fc6c.jpg,chihuahua +eb25ad30-863a-400d-96e3-78e5fedcac73.jpg,chihuahua +f1e4dd10-13fc-42cc-a5f3-c65587ca4f88.jpg,muffin +eb5c87cb-c3ed-4150-8ec8-93d85078b4b8.jpg,chihuahua +eec46d87-03ca-4789-9e1d-1e25d9f9bddb.jpg,muffin +efaeab94-aae1-476b-9adb-da2d86257c81.jpg,chihuahua +f55ce691-2896-4ad5-a1ee-81882cfb034d.jpg,chihuahua +ef0f4c84-5716-40d1-9a0e-e97fd7087836.jpg,muffin +f160f3aa-8d2d-4514-b5fa-8aa3d4398625.jpg,muffin +ee3fb774-4713-4354-856a-2b3ed754b0fe.jpg,chihuahua +eb2dfcf4-c428-41ee-8460-8c4b546c8179.jpg,muffin +f5a2e9e4-461f-4107-baeb-00f58ff3a794.jpg,chihuahua +ec26c29d-469d-41e2-9648-545c4ce8f3fe.jpg,chihuahua +ebf78911-5f5b-4e39-8b0e-a8b649396c5a.jpg,chihuahua +f0cc2c6e-c2ab-432e-b8ef-9294977e3e87.jpg,muffin +f6ba2961-dfdc-4dfe-8174-1b532043a26d.jpg,muffin +ee782951-fe05-40ea-89c0-15cc2209dedb.jpg,muffin +f1c332a7-d2d2-495e-98e3-c3772fdcf678.jpg,chihuahua +eef57f32-7fdb-468b-95dd-44a90149ce25.jpg,chihuahua +f4d70178-eda8-48e4-b723-84dd521fb666.jpg,chihuahua +f0adfd07-e3f1-4a05-b801-b048f081cf66.jpg,muffin +eb36dc07-4fb4-4b8a-ad6b-15a7d7fc0e55.jpg,chihuahua +ee185b23-ff5f-4ede-938d-4bc8ad1dc765.jpg,chihuahua +f43054ae-ace9-48ea-b01c-e508e4064cfc.jpg,muffin +f117ae0c-8e7b-4203-b978-45e254775246.jpg,muffin +f489240e-8de5-481e-8840-fa9af235219c.jpg,muffin +ea7d789f-60d3-4be3-af72-070cb6732b5f.jpg,chihuahua +efd7f68f-8a48-423d-a2a8-ce32e38a4622.jpg,chihuahua +ec752af6-6263-4e82-b605-55d7f4c8415f.jpg,chihuahua +ef122eec-dd80-4667-b88e-8e9fda807fe5.jpg,chihuahua +ea1a832c-d9fb-43e9-bb42-06b11ae0ff19.jpg,muffin +f121bbdc-6277-4108-8fb6-e676fef45f77.jpg,chihuahua +f3905bef-765f-439b-9ab4-79fe2064247e.jpg,muffin +f45c597c-8cd2-4d62-b6cd-6f9fd2c6c4b8.jpg,chihuahua +ef8c6353-9725-45fa-8752-3abffb76b0bf.jpg,muffin +f5c18a94-69f8-42d7-b909-fbef040a3f86.jpg,chihuahua +f2eda32d-524a-4b27-9363-4c740d048731.jpg,muffin +eb1275b0-d11c-44f1-8659-922b685f4457.jpg,chihuahua +f66feee1-77d4-423b-88cd-eb839ff4b817.jpg,muffin +f36d01b7-e9f8-4e15-83f0-08bc2bd8df7f.jpg,chihuahua +feef1c33-5f54-4d24-8c97-381df340bf2f.jpg,chihuahua +f7525b6f-62f4-4478-a147-bdb559e6b093.jpg,chihuahua +f885c40b-bb63-4cad-8b7f-433753ce8477.jpg,chihuahua +f9e0917c-c269-4fd8-82fc-8bd7befc86a9.jpg,chihuahua +fb98c3d9-dd6b-48c5-9051-42453933cb55.jpg,muffin +fdc59ccb-636b-402d-89fd-12a6e291ba1a.jpg,chihuahua +fb06de0c-216f-4e95-8c42-9fbb9b64f2ca.jpg,chihuahua +fc564d4b-7b0b-43f9-87a6-5473dc7e4a3e.jpg,chihuahua +f8322537-22ce-4b8f-9bec-926cdf99be09.jpg,chihuahua +fa7af9d6-fa88-46d6-8cee-9e0bf16fe5c5.jpg,muffin +f7b9aa97-2fa5-43cb-9163-d306d6360d32.jpg,muffin +f80d0e7d-7b34-4d97-aa4b-4c1e47d743d8.jpg,chihuahua +fcbad4a5-518c-4130-b8c5-4976e56e8091.jpg,muffin +fa1b8665-625b-4396-b55f-5a7015a2a558.jpg,chihuahua +f75a2d4f-6163-479b-9c4e-e7ff09cb5951.jpg,muffin +f75ed309-5857-4d5c-a5c6-a5e0753c0c4c.jpg,muffin +fd56a72b-f01e-43c5-9118-fd89d7ac66b6.jpg,chihuahua +fff13a39-e2f0-4bdf-bb62-8360c07a6d88.jpg,muffin +f99347ae-1f4f-4f28-ad9d-0e7c7f80ea9d.jpg,muffin +f8e26253-cac8-4654-bc27-65baeef69ef0.jpg,chihuahua +fcd96b12-cbd9-46cf-9fc1-0fdc85d79f2d.jpg,muffin +f9f8c5e8-5275-494d-8060-553f5910f6ff.jpg,chihuahua +fb4d1531-0a1c-45d6-87a9-28f3656e5f7f.jpg,chihuahua +fb1c0e4f-0833-4c14-8744-8f9fcb43a6ef.jpg,chihuahua +fc6d6db7-ff78-495f-9ef4-43ee344ec350.jpg,muffin +fa619acd-c1db-4546-8d30-e4d56fb56306.jpg,muffin +fad8b7bf-5f66-4522-b545-12a455cbe13b.jpg,chihuahua +ffb76cf5-815f-44f8-95d4-8c58cb5cec02.jpg,chihuahua +f857701a-8a37-4559-8c63-d7296dba74f5.jpg,chihuahua +fa26dedd-5a7d-46f3-88fe-b6660acba5bb.jpg,chihuahua +ff9669c9-1632-4107-8eb0-ca521e337752.jpg,chihuahua +ffe1bacb-c301-4cfa-aef4-1482f280c579.jpg,muffin +fb8e011e-0369-4049-a3a8-5d6176575cc6.jpg,chihuahua +fbfb8ed1-451f-4043-8ffc-d256f4a0f281.jpg,muffin +f9dd2348-5aab-40c3-99dd-a3212e61efba.jpg,muffin +05425335-6e3c-4562-8040-339cd3bbffe1.jpg,muffin +022fed4d-d410-414e-8ed8-78538bfd36f4.jpg,muffin +058c706d-10b0-4491-91b9-c884407662b0.jpg,chihuahua +0291aed9-819f-4bf2-8c3d-5126a884cba9.jpg,chihuahua +02c4285a-9a14-4d9a-bbc9-911806107087.jpg,muffin +03bf745b-6a18-43e3-b4ca-d9470c1ca22d.jpg,muffin +00894409-ceb3-4b32-a612-e90fdc49fe03.jpg,chihuahua +004396fe-e3c1-4053-9ef1-513766603a9a.jpg,muffin +035b90a2-251e-49e2-beda-d557bb7ef22d.jpg,chihuahua +04e3534c-e163-4d02-9d2a-10a56d889b9c.jpg,muffin +0066cad0-210b-4153-b49e-078a433154c7.jpg,chihuahua +0352501f-981e-4677-b36a-d67227b18fa8.jpg,chihuahua +03045720-2ed6-4b1b-80fe-f81f28c38e88.jpg,muffin +022368c7-8401-499e-9d7a-70cd93516338.jpg,chihuahua +022a433c-b3c0-499f-a58d-2bda0479b943.jpg,muffin +05cb8859-028e-420b-b5ff-54cf3c2fd3eb.jpg,chihuahua +05d8797d-5cc4-4272-9eb9-95292f51a12e.jpg,chihuahua +039bc52d-d862-4a59-b795-04525906b104.jpg,muffin +0510bdf9-cc67-478c-afaf-525b41d9cfeb.jpg,chihuahua +01af0f09-7f9e-402c-b28b-cf0aef8f1270.jpg,chihuahua +02e9466c-e731-4267-8d5d-931f6d984101.jpg,muffin +003c399a-5f5e-485b-958e-82d7eadc2552.jpg,muffin +0cb21122-fb14-4407-9fd0-ad4a3335096c.jpg,chihuahua +0a32ce61-b8a2-4e19-b132-d3080a8f97e4.jpg,chihuahua +0c2e4ff1-2634-4718-8b09-431911e9c7a0.jpg,chihuahua +0e866172-c306-46a6-9563-cc168110e5b5.jpg,muffin +0f089b85-72be-4390-b388-005ee7dc3112.jpg,chihuahua +0e65feab-bfe9-45af-a969-b4cfda1756bd.jpg,muffin +094028dc-d859-4d5b-b69f-96e59b7eef82.jpg,chihuahua +0a91ed53-6921-4918-a323-a426bf71c97b.jpg,chihuahua +0625c0c9-2304-4ad6-9768-87bb025517ce.jpg,chihuahua +09221197-8d4e-49cd-8c4d-11296433c35a.jpg,chihuahua +0752c3f6-d06f-42e2-934e-a6a7b1747d12.jpg,chihuahua +0c4b0238-414a-47d8-acbb-7869e8c96e6f.jpg,chihuahua +076ff229-08e4-4317-be92-a7115d74bb7b.jpg,muffin +09599991-1894-47bc-97d6-3d91956326ca.jpg,chihuahua +05fdffcd-4c26-4e1f-af2b-d4653ab27976.jpg,muffin +083a4080-4169-43a2-a976-35cc35f7ca25.jpg,chihuahua +0f917d3a-8be8-45fb-bc89-cb6eec485004.jpg,chihuahua +09da5a0e-844a-4ee5-94e0-32097f10fd73.jpg,chihuahua +0fbd7012-be40-4044-849a-8bbd9f85db71.jpg,muffin +095fc02c-3ebc-4969-9930-43c06f7e20cd.jpg,chihuahua +05fa015f-664d-4862-9ab9-e24f7460c956.jpg,chihuahua +0b436764-9397-4a5f-b79c-446de3a02865.jpg,muffin +0dc7a813-afac-4483-adb4-66359a820528.jpg,chihuahua +07643e1b-711d-4c65-b30e-c212376dac99.jpg,muffin +08b66618-70e6-4185-b1c4-0376586ea1bc.jpg,muffin +084dacb1-cfe5-48f5-89db-b43a57bde248.jpg,chihuahua +0f19e4ea-c94f-4ea0-94df-b85b97eba495.jpg,muffin +06ca30da-a989-44a8-932a-94d1fafd136b.jpg,muffin +08331738-1496-4159-b92d-46efd025ea18.jpg,chihuahua +0c20539a-d15f-4b18-bebb-94bc404fc60d.jpg,muffin +0f6d9d63-be93-4799-b863-82bda79bbfab.jpg,chihuahua +0cc732fc-27a4-4d52-a5e2-c433161bc5e7.jpg,muffin +0a73c07b-676f-4323-9091-08fe270c22fe.jpg,chihuahua +05ed5d86-5901-47a3-afba-ef4b1db99ff6.jpg,muffin +0614d19a-ac22-43a8-9d75-4c014fe0bd7c.jpg,chihuahua +06af8e2c-9475-49bd-9060-bfcdb5096bd2.jpg,muffin +0bd7c12f-aea9-40fc-96f0-83b64c1bd202.jpg,muffin +0c788160-9b92-4d2f-9016-822f2f72a0bc.jpg,chihuahua +0823f606-7ff1-4328-af94-df1d3138b7a8.jpg,muffin +0a1a8dd6-2a1f-470c-b3f8-a07fff2c9750.jpg,chihuahua +08604ecc-f7b9-4bed-946c-36c70f31bfdd.jpg,muffin +0ce828ec-09c9-4358-a5e8-14b4e7411dff.jpg,muffin +075c8ef8-fa1e-4070-a8d3-de5cabbdad65.jpg,chihuahua +06ba2a54-e445-4ac4-9fb9-e305025848a1.jpg,chihuahua +0e2c01f9-63ef-432c-9f23-bcbb72d1081a.jpg,muffin +0930e539-9ef0-476e-8e0e-12f529d3046b.jpg,muffin +0c8278bc-17bb-4da1-8cc8-10470da10fd7.jpg,chihuahua +0a9c08a0-5cbe-4a96-9143-10168f003b92.jpg,chihuahua +0f758604-f41e-4f2b-afc4-73be28627453.jpg,muffin +0eac21c5-cb23-4f2a-bec8-8aa44b8a8d63.jpg,muffin +08ed8f84-7746-44f8-98f2-23fe999659c8.jpg,muffin +0d9cfda0-91c9-4b1b-94d3-e77cd59ad1d5.jpg,muffin +0ff563f0-102b-48dd-81df-5fd90e75e29c.jpg,muffin +10257fc5-8951-4095-b262-d1a4eb21eadf.jpg,chihuahua +09c69d30-70e2-4164-90db-bc780397a6aa.jpg,muffin +0da3ba1f-6c4d-4c72-b940-d10f92903477.jpg,chihuahua +08f74dee-5b20-4e16-80f1-b4e7c4714858.jpg,chihuahua +1053a56b-fd07-4551-85d0-994eaa00cc39.jpg,chihuahua +1332a144-b776-4892-b5b2-b82c9e0fb7ad.jpg,muffin +13141b03-5f19-4e1a-96ad-bdd10221292b.jpg,muffin +15e1be75-20d5-4213-a0d8-d6fb6a9a1895.jpg,chihuahua +1ba593a6-6bcb-4d76-a402-39c28a665bb5.jpg,muffin +188a6c39-d864-47ba-9cf5-0c3ede582113.jpg,muffin +1395fd93-f6f3-45fb-81a8-98009a8e9e02.jpg,chihuahua +160ca939-6a63-4ec9-8965-7a583a52b548.jpg,muffin +19f8bc78-b2d9-4281-8941-d780fe126fc9.jpg,chihuahua +1667479b-611c-4079-b6db-a1e34d0bbdec.jpg,chihuahua +13005d63-8e05-42de-b192-618f60c9cd56.jpg,muffin +11ce9fbd-8d9f-4c62-b6a5-9031b0833b32.jpg,chihuahua +13782c9a-8c74-46c7-9f48-8ce7e268186c.jpg,chihuahua +1ae352e4-634b-437a-82a3-ec9b3d2e21d4.jpg,muffin +1b252a12-3518-4828-a8d9-3b7f1949bae4.jpg,muffin +1651398f-0707-4713-bf60-60a26f50978f.jpg,chihuahua +147dd6da-9cb9-4576-9068-ffec14288003.jpg,muffin +1279a611-eec2-4e93-9a05-725bf615deb8.jpg,muffin +13cd92f7-4219-460e-930b-5cf8fe2a807a.jpg,muffin +1c6d4759-36c8-435a-af32-0cb4127d5658.jpg,muffin +1bcbf8fe-9b66-43fd-ad90-6495633e15bf.jpg,chihuahua +137c0afd-133e-4a20-a3b8-92e3a0dfe187.jpg,chihuahua +131ac2ea-8561-4e0d-a1e8-aae98d3d4568.jpg,muffin +10a8d257-f6c0-4422-bd9f-46b4795d70c4.jpg,muffin +14ad26b1-8c92-432b-9fa0-96aa79d620a0.jpg,muffin +15c6c320-a30f-468b-a614-3b71e6d5f7b6.jpg,muffin +193dcfe6-c2c8-41d8-a807-360d62320552.jpg,chihuahua +1203f5fa-aa1a-45c4-87c9-a0745e17ab25.jpg,chihuahua +142b2f4b-1f69-4929-af80-bd1de8a7328a.jpg,chihuahua +1cc63aef-5c31-4ca3-b5d8-818683da830e.jpg,muffin +1a8ceea2-a7a4-4251-bc66-96fb1275317a.jpg,chihuahua +124ec692-2ae4-4670-9ca7-5f0864fae0a2.jpg,muffin +1cb509ea-dfe9-48c2-9880-2094664557af.jpg,chihuahua +10b513b9-e659-4ee0-bc7b-8d7d39013f73.jpg,chihuahua +15fe4fed-1a1a-4963-af6c-f12cbb48b1e0.jpg,muffin +1d1c83e8-9cc3-44b0-9bde-061eb9ae65d6.jpg,muffin +10d9e61c-1242-4003-b2ca-5730ce94d4ef.jpg,muffin +107d1f57-eeea-40ad-8453-6d85a6385d7a.jpg,chihuahua +1625eeb4-78d0-4150-ba35-4ec95ccc490f.jpg,chihuahua +1a94bae0-4a90-4f1c-acd1-e8f01af7517d.jpg,muffin +128b6f77-7452-4016-9bd7-838313473aef.jpg,chihuahua +1231c547-96f1-479a-9ab1-1fa5c2e6885a.jpg,chihuahua +135c91f7-d882-4f93-a19d-bcb2a6ceae3f.jpg,chihuahua +12d18b2c-8121-486a-84f5-d056f1f69625.jpg,chihuahua +191af28a-288e-4506-bd9e-7f6d3f5ab0d7.jpg,muffin +144692e7-11f0-443d-95a4-1477226fd1b4.jpg,chihuahua +116d1e7a-7e71-45c3-8a43-9742dd6a5426.jpg,muffin +15c3d856-d206-47f6-800b-3747ea9ec98e.jpg,muffin +116d0c7f-5910-4fb5-917b-e18de12ab6ec.jpg,chihuahua +11e214a9-1351-4ffc-834b-0a20c88b6470.jpg,chihuahua +13d02e30-34fc-461b-aa8a-af95de392aea.jpg,chihuahua +1819f58d-b985-4bf0-af78-716dd8dcbf45.jpg,muffin +18389ff5-a1d5-4c5a-978a-e7bd6ae5a645.jpg,muffin +188d2666-204b-4edf-a598-b4b37219f347.jpg,chihuahua +10a3f62e-1689-43d0-8073-5aecf389dc2d.jpg,chihuahua +1bb9535d-80ab-483b-9467-04acc5ddce5d.jpg,chihuahua +106386c4-9019-4bd3-a781-2566c31d3799.jpg,chihuahua +283534f7-5214-4d5a-a09c-47689fa6d798.jpg,chihuahua +281aca62-28cd-467a-a849-2a5773074f6a.jpg,chihuahua +1dd4a6dc-c660-4b54-a1c7-3e74dc9cfef2.jpg,chihuahua +261444d8-8411-4049-b308-83f88f5dc56d.jpg,muffin +2964a05a-4ffb-49b7-a990-701219529aa1.jpg,chihuahua +2591361e-e44d-4aa2-bf73-d350c4e346c2.jpg,chihuahua +1e8e02e9-4f64-4414-a243-7e24e2b91885.jpg,muffin +289100aa-2dc5-404e-b227-82951de34712.jpg,chihuahua +26c351bd-b116-4a5d-9641-4e6ad30e2db4.jpg,muffin +2036b168-e9b2-475b-9446-8361d31df06a.jpg,muffin +1f64366c-3fac-49f1-b0c1-550e72127967.jpg,muffin +290b5a9d-f82e-4e0d-b182-b7b6e867a8e7.jpg,muffin +21fdb552-e7f0-4dd2-8d41-6ef74792c58d.jpg,muffin +2706a22f-f80f-4baf-9ef5-7beef0fef51d.jpg,chihuahua +296d217a-4ab7-4dc9-ac2e-c2a6a7e575a7.jpg,chihuahua +285ed9aa-fa8e-403c-930e-c566e98a5f8e.jpg,muffin +2577d00f-f8a1-403f-aff9-77857750c559.jpg,muffin +259a3e76-1ec6-410c-a389-35d57c3efba0.jpg,muffin +20591ad9-9749-4f57-83b3-5dc62429de37.jpg,muffin +28d62962-cc98-4f32-b903-f45d6325c2e1.jpg,muffin +1d382c36-239e-46b9-b235-1601e8d65eb4.jpg,muffin +23c3cabf-3d31-477c-87da-5db63d2b4e60.jpg,muffin +29ad2ee2-3ea4-43c7-8b6a-fbbb0cc97c9f.jpg,muffin +222e905c-804a-412c-b11f-64bdbdbdbd04.jpg,muffin +2248de8d-1d9a-4c3e-bedd-0e4e0a21681a.jpg,chihuahua +25fe6f4e-37e7-4b18-9f58-47a733e5de76.jpg,muffin +20859053-4fc5-4ab7-b10d-e3a324cfbabb.jpg,chihuahua +291312a9-2c90-4085-8848-4ca301850c6f.jpg,chihuahua +20ad30b8-036b-4c2a-98a9-85b50e6c2429.jpg,muffin +207ad67b-a31f-435f-9b6c-2232ae29b1b0.jpg,chihuahua +293e8fcc-723f-4e65-a82b-ad31e26f9206.jpg,chihuahua +296bf65a-3a5b-4f13-bc9d-cb662a0b4de8.jpg,chihuahua +23aa6f13-1138-4d22-bdff-09be21c244ea.jpg,muffin +2320ac4f-6194-47d0-84f0-16bcfdb1d405.jpg,chihuahua +22600b2a-0e65-4094-bada-810727db727b.jpg,chihuahua +27fa93d2-f653-477b-b19f-1243fa105abd.jpg,muffin +21424878-7ee7-4eb9-ac48-4a47741b9a66.jpg,chihuahua +21db9239-47a5-48a2-8ee8-4f5dce03d3a0.jpg,muffin +20f41b33-b01a-4a3b-89a5-22d90592d4d2.jpg,muffin +28c6b7ae-f025-4df1-8458-519d72b37f63.jpg,chihuahua +284add90-a984-45d5-8627-13fac04d364c.jpg,muffin +1d672699-0ba5-42fe-a9d6-35c837c888c0.jpg,muffin +1d20d5ad-8d8e-4b55-9a08-70769b168d20.jpg,muffin +1fd21e36-ff02-4e99-ab82-e30d58ba6efc.jpg,chihuahua +2431da50-ecb3-4f6a-aabd-38d3a681e5e8.jpg,muffin +24eeb49e-9124-4602-b44b-5a2ff32e9931.jpg,chihuahua +27047f9e-8efe-482b-8d4a-7c5145ad13f3.jpg,muffin