{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 3.6 softmax回归的从零开始实现"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.4.1\n",
      "0.2.1\n"
     ]
    }
   ],
   "source": [
    "import torch\n",
    "import torchvision\n",
    "import numpy as np\n",
    "import sys\n",
    "sys.path.append(\"..\") # 为了导入上层目录的d2lzh_pytorch\n",
    "import d2lzh_pytorch as d2l\n",
    "\n",
    "print(torch.__version__)\n",
    "print(torchvision.__version__)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.6.1 获取和读取数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "batch_size = 256\n",
    "train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.6.2 初始化模型参数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "num_inputs = 784\n",
    "num_outputs = 10\n",
    "\n",
    "W = torch.tensor(np.random.normal(0, 0.01, (num_inputs, num_outputs)), dtype=torch.float)\n",
    "b = torch.zeros(num_outputs, dtype=torch.float)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([0., 0., 0., 0., 0., 0., 0., 0., 0., 0.], requires_grad=True)"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "W.requires_grad_(requires_grad=True)\n",
    "b.requires_grad_(requires_grad=True) "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[5, 7, 9]])\n",
      "tensor([[ 6],\n",
      "        [15]])\n"
     ]
    }
   ],
   "source": [
    "X = torch.tensor([[1, 2, 3], [4, 5, 6]])\n",
    "print(X.sum(dim=0, keepdim=True))\n",
    "print(X.sum(dim=1, keepdim=True))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.6.3 实现softmax运算"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def softmax(X):\n",
    "    X_exp = X.exp()\n",
    "    partition = X_exp.sum(dim=1, keepdim=True)\n",
    "    return X_exp / partition  # 这里应用了广播机制"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[0.1195, 0.2642, 0.2857, 0.1721, 0.1585],\n",
      "        [0.1918, 0.1353, 0.1837, 0.3329, 0.1562]]) tensor([1., 1.])\n"
     ]
    }
   ],
   "source": [
    "X = torch.rand((2, 5))\n",
    "X_prob = softmax(X)\n",
    "print(X_prob, X_prob.sum(dim=1))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.6.4 定义模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def net(X):\n",
    "    return softmax(torch.mm(X.view((-1, num_inputs)), W) + b)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.6.5 定义损失函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[0.1000],\n",
       "        [0.5000]])"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "y_hat = torch.tensor([[0.1, 0.3, 0.6], [0.3, 0.2, 0.5]])\n",
    "y = torch.LongTensor([0, 2])\n",
    "y_hat.gather(1, y.view(-1, 1))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def cross_entropy(y_hat, y):\n",
    "    return - torch.log(y_hat.gather(1, y.view(-1, 1)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.6.6 计算分类准确率"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def accuracy(y_hat, y):\n",
    "    return (y_hat.argmax(dim=1) == y).float().mean().item()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.5\n"
     ]
    }
   ],
   "source": [
    "print(accuracy(y_hat, y))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# 本函数已保存在d2lzh_pytorch包中方便以后使用。该函数将被逐步改进：它的完整实现将在“图像增广”一节中描述\n",
    "def evaluate_accuracy(data_iter, net):\n",
    "    acc_sum, n = 0.0, 0\n",
    "    for X, y in data_iter:\n",
    "        acc_sum += (net(X).argmax(dim=1) == y).float().sum().item()\n",
    "        n += y.shape[0]\n",
    "    return acc_sum / n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.0681\n"
     ]
    }
   ],
   "source": [
    "print(evaluate_accuracy(test_iter, net))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.6.7 训练模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epoch 1, loss 0.7878, train acc 0.749, test acc 0.794\n",
      "epoch 2, loss 0.5702, train acc 0.814, test acc 0.813\n",
      "epoch 3, loss 0.5252, train acc 0.827, test acc 0.819\n",
      "epoch 4, loss 0.5010, train acc 0.833, test acc 0.824\n",
      "epoch 5, loss 0.4858, train acc 0.836, test acc 0.815\n"
     ]
    }
   ],
   "source": [
    "num_epochs, lr = 5, 0.1\n",
    "\n",
    "# 本函数已保存在d2lzh_pytorch包中方便以后使用\n",
    "def train_ch3(net, train_iter, test_iter, loss, num_epochs, batch_size,\n",
    "              params=None, lr=None, optimizer=None):\n",
    "    for epoch in range(num_epochs):\n",
    "        train_l_sum, train_acc_sum, n = 0.0, 0.0, 0\n",
    "        for X, y in train_iter:\n",
    "            y_hat = net(X)\n",
    "            l = loss(y_hat, y).sum()\n",
    "            \n",
    "            # 梯度清零\n",
    "            if optimizer is not None:\n",
    "                optimizer.zero_grad()\n",
    "            elif params is not None and params[0].grad is not None:\n",
    "                for param in params:\n",
    "                    param.grad.data.zero_()\n",
    "            \n",
    "            l.backward()\n",
    "            if optimizer is None:\n",
    "                d2l.sgd(params, lr, batch_size)\n",
    "            else:\n",
    "                optimizer.step()  # “softmax回归的简洁实现”一节将用到\n",
    "            \n",
    "            \n",
    "            train_l_sum += l.item()\n",
    "            train_acc_sum += (y_hat.argmax(dim=1) == y).sum().item()\n",
    "            n += y.shape[0]\n",
    "        test_acc = evaluate_accuracy(test_iter, net)\n",
    "        print('epoch %d, loss %.4f, train acc %.3f, test acc %.3f'\n",
    "              % (epoch + 1, train_l_sum / n, train_acc_sum / n, test_acc))\n",
    "\n",
    "train_ch3(net, train_iter, test_iter, cross_entropy, num_epochs, batch_size, [W, b], lr)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.6.8 预测"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (http://matplotlib.org/) -->\n",
       "<svg height=\"109pt\" version=\"1.1\" viewBox=\"0 0 690 109\" width=\"690pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <defs>\n",
       "  <style type=\"text/css\">\n",
       "*{stroke-linecap:butt;stroke-linejoin:round;}\n",
       "  </style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 109.625311 \n",
       "L 691 109.625311 \n",
       "L 691 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 10.7 98.925311 \n",
       "L 73.869811 98.925311 \n",
       "L 73.869811 35.7555 \n",
       "L 10.7 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p6569faf22c)\">\n",
       "    <image height=\"64\" id=\"imaged67c0cfa11\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"10.7\" xlink:href=\"data:image/png;base64,\n",
       "iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABHNCSVQICAgIfAhkiAAABYBJREFUeJztmjmPHEUUx3/dPT3XHt5r1mt77bXX9lomgQBhjESADCJBIiFwBDkEDpAISEHCSDgh4BMgBJgPAMiIAMkcEkJYspEPfIDAXrO7M3v17Ez3dBO86qqenV0fBJTk6ZdUd71XVf9+9a9Xr2rGed55JaGPxbUNwLbkDrANwLbkDrANwLbkDrANwLbkDrANwLbkDrANwLbkDrANwLYU7qX0RkcBWDkxB0B9zjMNn6oDcHBsAYB9A3Wt21OSZw85aHZwAAhjM9yltV0AfH/9AACj35a1rvbpBQDi9fVtscXf7AXgudoVAC6s7tG6O+vDACyuVwGIIsEdts34c29cB3IG4Lw49XoCcOWtWV1Ze+wfAGaG613GG5Gvn+eDQQAW6kMARI2i1vkr4vHYFwYkQgCSsVDbPDH7h4xVXgNgtrKgdZ1E5uXticsAvL94GICv549qm4/nPgFgzCupNr3XGkEi430V7APg2sZOrfvu1NNAzgCcYyc/SACiVxd15eLVcQDK8+Ifry31ScZdblqXhgXH6NKlHivCOLGU4VBmlpR9p6zqxltaVSh2ABisbgBwdPxuD/BhX3QFp9Oju7MhMWCyJOxaakssCCLD0tYp+ca+Z0DfO6Aw9NkPAKzFx3Tl4G7xixvJ+8aElIlnKOx0nK66JLMEogGpi8uK+6muGGsbr5GuE2WSmYoklgZLd4XK5+sScN27hsKVgytdH7JWr5qXtnRWGJZ1Wq5I+ez0dW1yabcExpwB6cPg2R915ch+8U5zbhKA8LZEuvaA8VdUkVle3S/vnYphhxvKDBbnpfs0eKbbIpjglwbIzppJUuJQNVDsqow0AQiGTSLWaol9sdgbBP0RCZC1EQmCy0EFgEa7YsbwBWPfM8B5wT+ZACRR9J86KOydBqB5xCQZS0clOWlOyQy6bfG2Z3Y6QhUnIrU1Jhl2JGWZVb8qicxAVRqWfINxaXkAgDhW8co18SUM1P6rmOQOSj/DQ01tUzstGHMGbPnTmOt1vydbhOq4d+1tFu+QHHRunpSDTzZOFOvCimhAdVc0uvaY9F0ck7UcLsjaLaj3rg9wpV2hYPAES7IjOCo++GVhzr4Jk9q7J/6U8r5f8YhL3ztg6/uA7eidZOrVMnE8KZMozNipe4BrNwDY+66Ut998RpusHhJalm8LBG/DZFJpXWFKbNqO9Bc2zWnU9QVLqSLjlotm/EBtnyUVRIfUmeLWT9Pa5gD5EgDucyOkxUkP9Jl4qViS3CMYOgWVCKktdteZ81rnvS5saDwuszRywcxuepoMmpL6ukNik9RNKuyMqxNjRbZI38vgSFLY3fF95sveIJoz4IGstrht6WFFdutU22Y685uZADD5kbAheOc4AM2dZow0HkQrMuMT0w0AGpnDmOvJGKG67+vEmdOYkljVrQZy3zjxqzkMpXzpewb0vQMebAlsJZuXxT2CoaZ+dpko+4NnLgHw2+kjWuW0VA7flDJoSYCcrplMbn5ZLmPTM8BY1eT5jaKkl1Eon9dpqWXSWO7BljPgfx0twxLHlwCXzsqBL4zu1kvqMrYlQay5Jie3ZMj8UJIGuERdRV27vEvr/FHZGneo09/C3zu2hZQzwNbAXakz4J/7WT/vOCxbY/1Jleb+LttY6bWb2mZmU3+1zHNhRn42++tlKauD2+PIGWAbgN4ZMvFh6ty8qCK5ZZo8exEwycv9JLolB52dH0p5473j2w//MFgfRel7B9hbAmkilfQSu3NVcvZxVaYW6ZlCmnW6+8mIW5UrsTgIAJj9XH5E2epv8TkDbAN4GHnQq/t05nW7Xy5ua9v3DMgdYBuAbckdYBuAbckdYBuAbckdYBuAbckdYBuAbckdYBuAbckdYBuAbfkX2jW77pkEACIAAAAASUVORK5CYII=\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 10.7 98.925311 \n",
       "L 10.7 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 73.869811 98.925311 \n",
       "L 73.869811 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 10.7 98.925311 \n",
       "L 73.869811 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 10.7 35.7555 \n",
       "L 73.869811 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_1\">\n",
       "    <!-- ankle boot -->\n",
       "    <defs>\n",
       "     <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-61\"/>\n",
       "     <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-6e\"/>\n",
       "     <path d=\"M 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 31.109375 \n",
       "L 44.921875 54.6875 \n",
       "L 56.390625 54.6875 \n",
       "L 27.390625 29.109375 \n",
       "L 57.625 0 \n",
       "L 45.90625 0 \n",
       "L 18.109375 26.703125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-6b\"/>\n",
       "     <path d=\"M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-6c\"/>\n",
       "     <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-65\"/>\n",
       "     <path id=\"DejaVuSans-20\"/>\n",
       "     <path d=\"M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "M 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "z\n",
       "\" id=\"DejaVuSans-62\"/>\n",
       "     <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-6f\"/>\n",
       "     <path d=\"M 18.3125 70.21875 \n",
       "L 18.3125 54.6875 \n",
       "L 36.8125 54.6875 \n",
       "L 36.8125 47.703125 \n",
       "L 18.3125 47.703125 \n",
       "L 18.3125 18.015625 \n",
       "Q 18.3125 11.328125 20.140625 9.421875 \n",
       "Q 21.96875 7.515625 27.59375 7.515625 \n",
       "L 36.8125 7.515625 \n",
       "L 36.8125 0 \n",
       "L 27.59375 0 \n",
       "Q 17.1875 0 13.234375 3.875 \n",
       "Q 9.28125 7.765625 9.28125 18.015625 \n",
       "L 9.28125 47.703125 \n",
       "L 2.6875 47.703125 \n",
       "L 2.6875 54.6875 \n",
       "L 9.28125 54.6875 \n",
       "L 9.28125 70.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-74\"/>\n",
       "    </defs>\n",
       "    <g transform=\"translate(10.561781 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-61\"/>\n",
       "     <use x=\"61.279297\" xlink:href=\"#DejaVuSans-6e\"/>\n",
       "     <use x=\"124.658203\" xlink:href=\"#DejaVuSans-6b\"/>\n",
       "     <use x=\"182.568359\" xlink:href=\"#DejaVuSans-6c\"/>\n",
       "     <use x=\"210.351562\" xlink:href=\"#DejaVuSans-65\"/>\n",
       "     <use x=\"271.875\" xlink:href=\"#DejaVuSans-20\"/>\n",
       "     <use x=\"303.662109\" xlink:href=\"#DejaVuSans-62\"/>\n",
       "     <use x=\"367.138672\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"428.320312\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"489.501953\" xlink:href=\"#DejaVuSans-74\"/>\n",
       "    </g>\n",
       "    <!-- ankle boot -->\n",
       "    <g transform=\"translate(10.561781 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-61\"/>\n",
       "     <use x=\"61.279297\" xlink:href=\"#DejaVuSans-6e\"/>\n",
       "     <use x=\"124.658203\" xlink:href=\"#DejaVuSans-6b\"/>\n",
       "     <use x=\"182.568359\" xlink:href=\"#DejaVuSans-6c\"/>\n",
       "     <use x=\"210.351562\" xlink:href=\"#DejaVuSans-65\"/>\n",
       "     <use x=\"271.875\" xlink:href=\"#DejaVuSans-20\"/>\n",
       "     <use x=\"303.662109\" xlink:href=\"#DejaVuSans-62\"/>\n",
       "     <use x=\"367.138672\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"428.320312\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"489.501953\" xlink:href=\"#DejaVuSans-74\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_2\">\n",
       "   <g id=\"patch_7\">\n",
       "    <path d=\"M 86.503774 98.925311 \n",
       "L 149.673585 98.925311 \n",
       "L 149.673585 35.7555 \n",
       "L 86.503774 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p27288ec5ab)\">\n",
       "    <image height=\"64\" id=\"imaged220d9f07e\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"86.503774\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_8\">\n",
       "    <path d=\"M 86.503774 98.925311 \n",
       "L 86.503774 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_9\">\n",
       "    <path d=\"M 149.673585 98.925311 \n",
       "L 149.673585 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_10\">\n",
       "    <path d=\"M 86.503774 98.925311 \n",
       "L 149.673585 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_11\">\n",
       "    <path d=\"M 86.503774 35.7555 \n",
       "L 149.673585 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_2\">\n",
       "    <!-- pullover -->\n",
       "    <defs>\n",
       "     <path d=\"M 18.109375 8.203125 \n",
       "L 18.109375 -20.796875 \n",
       "L 9.078125 -20.796875 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "z\n",
       "M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-70\"/>\n",
       "     <path d=\"M 8.5 21.578125 \n",
       "L 8.5 54.6875 \n",
       "L 17.484375 54.6875 \n",
       "L 17.484375 21.921875 \n",
       "Q 17.484375 14.15625 20.5 10.265625 \n",
       "Q 23.53125 6.390625 29.59375 6.390625 \n",
       "Q 36.859375 6.390625 41.078125 11.03125 \n",
       "Q 45.3125 15.671875 45.3125 23.6875 \n",
       "L 45.3125 54.6875 \n",
       "L 54.296875 54.6875 \n",
       "L 54.296875 0 \n",
       "L 45.3125 0 \n",
       "L 45.3125 8.40625 \n",
       "Q 42.046875 3.421875 37.71875 1 \n",
       "Q 33.40625 -1.421875 27.6875 -1.421875 \n",
       "Q 18.265625 -1.421875 13.375 4.4375 \n",
       "Q 8.5 10.296875 8.5 21.578125 \n",
       "z\n",
       "M 31.109375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-75\"/>\n",
       "     <path d=\"M 2.984375 54.6875 \n",
       "L 12.5 54.6875 \n",
       "L 29.59375 8.796875 \n",
       "L 46.6875 54.6875 \n",
       "L 56.203125 54.6875 \n",
       "L 35.6875 0 \n",
       "L 23.484375 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-76\"/>\n",
       "     <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-72\"/>\n",
       "    </defs>\n",
       "    <g transform=\"translate(93.762429 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-70\"/>\n",
       "     <use x=\"63.476562\" xlink:href=\"#DejaVuSans-75\"/>\n",
       "     <use x=\"126.855469\" xlink:href=\"#DejaVuSans-6c\"/>\n",
       "     <use x=\"154.638672\" xlink:href=\"#DejaVuSans-6c\"/>\n",
       "     <use x=\"182.421875\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"243.603516\" xlink:href=\"#DejaVuSans-76\"/>\n",
       "     <use x=\"302.783203\" xlink:href=\"#DejaVuSans-65\"/>\n",
       "     <use x=\"364.306641\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "    </g>\n",
       "    <!-- pullover -->\n",
       "    <g transform=\"translate(93.762429 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-70\"/>\n",
       "     <use x=\"63.476562\" xlink:href=\"#DejaVuSans-75\"/>\n",
       "     <use x=\"126.855469\" xlink:href=\"#DejaVuSans-6c\"/>\n",
       "     <use x=\"154.638672\" xlink:href=\"#DejaVuSans-6c\"/>\n",
       "     <use x=\"182.421875\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"243.603516\" xlink:href=\"#DejaVuSans-76\"/>\n",
       "     <use x=\"302.783203\" xlink:href=\"#DejaVuSans-65\"/>\n",
       "     <use x=\"364.306641\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_3\">\n",
       "   <g id=\"patch_12\">\n",
       "    <path d=\"M 162.307547 98.925311 \n",
       "L 225.477358 98.925311 \n",
       "L 225.477358 35.7555 \n",
       "L 162.307547 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p2b903a8124)\">\n",
       "    <image height=\"64\" id=\"image14aa1b1d54\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"162.307547\" xlink:href=\"data:image/png;base64,\n",
       "iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABHNCSVQICAgIfAhkiAAABSpJREFUeJztm11oHFUUx38zm9ndbLKb75ImStDWKtbEWAqtVlBLKQpWX1LQIvhWfBJB330TH1WoD4JvQn2wiC/B4osKFj+qkVrUqMU0UjehyTZfm+xmdmZ8OPOxk8lGSO88lJnzsjP3nnv2cs//nHvOuXe0E9qEQ8xUfv0xABqPrvht3Z90AlD8+NsI/9rpIwBkz84BUKkWAOj5oNPnyU3+oGRuuhIpdzC1KZOkacGzEwbV8TPfA/DO3st+28KRKgATK68BYY0uv7gGwNWDnwFQd0wARn971ee5Z1LNtBOPgMQvgDIT0NoM/9kxN0N9p7qnAPi5XvfbLq6NA9s7M8sSvSxYYibz7ntuUYvw3i6lCFAlyLGsSNvKmaMAjGa/AWDVDpyjoUX5PXpu/y8AVGx5txDNd5RtJXNtphQByiQ5Ue3cfLYGQNXVfKHJhM99cRKA/UQDoQ1L/EkGJ/Rr5VIfoJwUIiAaUX909EMAlm3RqJEx/b7BS60j8OHcUujd8wH1nhQByinxC6DOBLahRbsDgD5dAppK0zZYml4GYLuN7anOXwGoORkAxrJ5AHbYOXdNKQLiEJp58AAA9xkSAP3TKAGw2Ojweewrv7ccX9TEWdqEnV6KgBgoFgSUn+wHYEAXDVY0SY4OZVd9nvd2GH+vIdvmtBlWuaY+Ek4RkPgFiMUEVo9tAFBz84OiLibw5vwTTVzm1mE+5TTDHR9ud2JQV4qAOIS+cFCKn0u2rG+vLs5scvohn2cfU/8rp2J5ZXCpJFk5hZN0KUVAHEIf7/wDANNdX88XtP3V3nKMns9H2vJa2E+0rauaYdP/qhd5Z1EsCHi6IDb75YYcafUaciRWH2zt+bVsNtJWc7xKs8hriqSVUeIRkPgFiLUesOnm814IPzSy2JJ3/dj9/vOyfRGAFbvLbXFNoKB8iikCYkVAhy6aq7hl7pdHghL4BfaEeGefCXRR0MQhmk6s0wNSBMSLAO9AY8WRGPal4ozftxUB+aGq/2w6ljs+hgLAFko8AhK/APF7GWDVlji/0LTcekH2NHtdAvzDw7N+X91pAGBt0Y9ZSk+HlVM8RdGGXHIy3O2sanuJfM3nWXp+DIDSedka373rc7+vpAtianZw6wTA6m2dS+yWUgTEIfRSbQiAB7LzQLAdNtPqaSmRl87Le08miHO9u0TdmS0FgI2M6qmmCIgFAdO1vQAcyv0LgKGJV591fQPAW6OfAnCOA5HxNTcEzuvh22b6pnp9JR4BiV+AWEzgwvWHATg7/hMAWfdYd6YR3PY+3l4B4KsfRQe3rMDhbSIO0csG120xBacnbBIqKEVAHEKrU30AGI/I+t4wewAYzwfh7vWGbI1vDHwNwHf1vogc3c0Gy5ZofmSodUVpt5QiIA6h/VdEc126HIQMtElZ3Gq68bFoS99MQ8Le5mDJ07yN4fJKKD3QHmyjy4rmmngEJH4BYjGBrsvl0HtJlyzQqwsAdLjXZrzzvyBjhKxrKV422OcWV6/dChxlP2ocYoqAOIQ2ZmZD70UXAVVnp/O/gLzcQXdvRe0zJICqLBR9nn41U00REGtNcNavDMnf/Fkb9PvuNsSGPXTMNbr8voopGte3lMWzN6IIul1KEaBMkt5UrbEl+Xl7/gQA7w9L3W8sOxcZds0UlBzOBolOQRdNl/36gSCie1rZbH1KPAISvwCasq/Ht/l2uDohX4HnXpHAaObqkM+i7xHnp/8tOUGjI5iG0y3BkWOKfkZGboqckzNKptpMiUfAf6zddIDYRyooAAAAAElFTkSuQmCC\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_13\">\n",
       "    <path d=\"M 162.307547 98.925311 \n",
       "L 162.307547 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_14\">\n",
       "    <path d=\"M 225.477358 98.925311 \n",
       "L 225.477358 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_15\">\n",
       "    <path d=\"M 162.307547 98.925311 \n",
       "L 225.477358 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_16\">\n",
       "    <path d=\"M 162.307547 35.7555 \n",
       "L 225.477358 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_3\">\n",
       "    <!-- trouser -->\n",
       "    <defs>\n",
       "     <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-73\"/>\n",
       "    </defs>\n",
       "    <g transform=\"translate(172.317765 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-74\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "     <use x=\"80.291016\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"141.472656\" xlink:href=\"#DejaVuSans-75\"/>\n",
       "     <use x=\"204.851562\" xlink:href=\"#DejaVuSans-73\"/>\n",
       "     <use x=\"256.951172\" xlink:href=\"#DejaVuSans-65\"/>\n",
       "     <use x=\"318.474609\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "    </g>\n",
       "    <!-- trouser -->\n",
       "    <g transform=\"translate(172.317765 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-74\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "     <use x=\"80.291016\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"141.472656\" xlink:href=\"#DejaVuSans-75\"/>\n",
       "     <use x=\"204.851562\" xlink:href=\"#DejaVuSans-73\"/>\n",
       "     <use x=\"256.951172\" xlink:href=\"#DejaVuSans-65\"/>\n",
       "     <use x=\"318.474609\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_4\">\n",
       "   <g id=\"patch_17\">\n",
       "    <path d=\"M 238.111321 98.925311 \n",
       "L 301.281132 98.925311 \n",
       "L 301.281132 35.7555 \n",
       "L 238.111321 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p5e61c36ef1)\">\n",
       "    <image height=\"64\" id=\"image29084a8448\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"238.111321\" xlink:href=\"data:image/png;base64,\n",
       "iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABHNCSVQICAgIfAhkiAAABT9JREFUeJztm89vG1UQxz+73rWdtRsXGjeQxGmpSIFCW9EWCVRQaYWoxAkhwoEL6oUDEv8Af0IPXCsOSMANgZDgRiUEh4JUihClBKUJpQVEGzVpHCfxb+8uh3neZ0MDSN13qHbn4me/eePRzHfmzZt9az1nvRxiiJypSQA23s0CUP3i/mhu4vQ3W65bfO/w0PeZU9/LIIxfVTt2iXcZOSaFX3l9GoD5/WcAOFV6Jpq7fnrrdW8f/RCAY/mbALxy9A0A7HM/xK5j4hGQeAMYDQE/J58rfh2ArN37X+uWuiUA/nBXANjYlQegdC5mBUkRYBYBJ45L0loN5LtrBVvyZnbcG41ncpeEH+HfmBY/lQzomCLApPCnRq8AsBZIITSS6WzNvHNHNMxbXQAaoajXKm+NnDulFAEmhX9dmwFgT1kKmm6YGZgd3hH80kg0di1/iD8YSRFgjBJvAKMhUM5uALDcGwVgzN0cmM0P8QY5HR5BKH7poH5zjB1YUwQYRUDJaQKwEYi3PXtwGxxGgO9qX+QtSZC3/AIA23duGNMxRYARqZYFQK038h+MmjJtvdXVQxeAy60JALp+5rZr4qDEIyDxBjATAqp52Q5E/Gd/7gfg430fRCxfFU4CENSlVxAMJMH5tkD/nbmnAbDnikbUhBQBZrfBTy4cAWDsW0liL82+Fs3ZL4wBUPzoPAArB3LR3KXGFACVM6JeaLeN6ZgiwKRwd1U8375HtsXqXDmayz4ktu9H9/pB7eXvlqWd3q0IKgo3/qWPcIeUIsCk8H4TOLcqu0KzbEVz3eLwAeeJmWvR+OqadIdG1qUvkK0JAkwciRKPgMQbwEgIWI6I7XkCWisQ6Nu+5umMd4fWvDp+Phq/tfQiAIWOrLcbEgI+8VOKABNC7ZJ0gHxPTnjdovqbQKexTNUdWlNxVqNxpyP8fl780x6XzdKZM6Br/CLvLjKCgGC33ASxO8q+yvFOQ2+D4d/6fPUwG409T4qi9qj0E3LVtCdojBJvACMh0Br3AAgV4i2V/OyuDgE/NwzrPY5umYdqoa/6pptTEh4le6A1FsSzKaYIMCE0zIgHQ1c1Oi3lOQ0AgsKwB8sZ3Q/ob4NWQRZk1EHRcrW6YTtFQCxkBAFdT9nV7hdC4smep3kyRTkq+s8eUr9c0OtbopajckD/rpGd0yjx2/F0iVIEmBDaVbFrN8S+6lkn3g2d+at7hOfmIXGzPeCLsClq2eq8ZPXDfQABcVHiEZB4AxgJAbchUA/UadBbErg77X/W9P22WTVo6R8VWz/5qecrhOohSpyUIsCE0OrDYle3Kp6vT6oKKNSV0JMPXgXgscevA1C0dH9g+8Q6AGv2NgAsX+asbQOPyBqNWHRNEWBCaGhLEPcmpVjZO30DANvSOeD5HdLeKTvi7XOtQjT3aHkJgJndPwLwflu9Z9AcyBMxUeIRkHgDmAkBleuO710AYHZM6vyLzemIx1fl4U/NCgA5W7fJZwpys/Sg9zsApV01mcgON1LjoBQBJoR2K/Igw1FPQlx17W3QyxX3lvCq+8A1Xx8VjxXnAZhry2t3gYJU69ADEY979lYsuqYIMCHUWpVYPbztNwB+bsmNj2pPb3WL1n1Daxbq49H4iPcrANdacoukv30uH9Ct84mz8eiaIsCE0PyK2HW2+AsAFztSwn65+UjEc8K7DMDn9X0ALNb07ZHFUUFH/6rt2pKUxCUDF0USj4DEG8Ay8fa4U5Gkt/CmFDnuumpv36aUz9XU3w9o0X+zxs/KOu+m9BVKn+p3h4NWPOeCxCPgLzlZY2R99xx0AAAAAElFTkSuQmCC\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_18\">\n",
       "    <path d=\"M 238.111321 98.925311 \n",
       "L 238.111321 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_19\">\n",
       "    <path d=\"M 301.281132 98.925311 \n",
       "L 301.281132 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_20\">\n",
       "    <path d=\"M 238.111321 98.925311 \n",
       "L 301.281132 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_21\">\n",
       "    <path d=\"M 238.111321 35.7555 \n",
       "L 301.281132 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_4\">\n",
       "    <!-- trouser -->\n",
       "    <g transform=\"translate(248.121539 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-74\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "     <use x=\"80.291016\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"141.472656\" xlink:href=\"#DejaVuSans-75\"/>\n",
       "     <use x=\"204.851562\" xlink:href=\"#DejaVuSans-73\"/>\n",
       "     <use x=\"256.951172\" xlink:href=\"#DejaVuSans-65\"/>\n",
       "     <use x=\"318.474609\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "    </g>\n",
       "    <!-- trouser -->\n",
       "    <g transform=\"translate(248.121539 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-74\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "     <use x=\"80.291016\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"141.472656\" xlink:href=\"#DejaVuSans-75\"/>\n",
       "     <use x=\"204.851562\" xlink:href=\"#DejaVuSans-73\"/>\n",
       "     <use x=\"256.951172\" xlink:href=\"#DejaVuSans-65\"/>\n",
       "     <use x=\"318.474609\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_5\">\n",
       "   <g id=\"patch_22\">\n",
       "    <path d=\"M 313.915094 98.925311 \n",
       "L 377.084906 98.925311 \n",
       "L 377.084906 35.7555 \n",
       "L 313.915094 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p1fc34f3f2c)\">\n",
       "    <image height=\"64\" id=\"image63906b76a3\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"313.915094\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_23\">\n",
       "    <path d=\"M 313.915094 98.925311 \n",
       "L 313.915094 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_24\">\n",
       "    <path d=\"M 377.084906 98.925311 \n",
       "L 377.084906 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_25\">\n",
       "    <path d=\"M 313.915094 98.925311 \n",
       "L 377.084906 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_26\">\n",
       "    <path d=\"M 313.915094 35.7555 \n",
       "L 377.084906 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_5\">\n",
       "    <!-- shirt -->\n",
       "    <defs>\n",
       "     <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-68\"/>\n",
       "     <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-69\"/>\n",
       "    </defs>\n",
       "    <g transform=\"translate(332.08625 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-73\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-68\"/>\n",
       "     <use x=\"115.478516\" xlink:href=\"#DejaVuSans-69\"/>\n",
       "     <use x=\"143.261719\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "     <use x=\"184.375\" xlink:href=\"#DejaVuSans-74\"/>\n",
       "    </g>\n",
       "    <!-- shirt -->\n",
       "    <g transform=\"translate(332.08625 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-73\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-68\"/>\n",
       "     <use x=\"115.478516\" xlink:href=\"#DejaVuSans-69\"/>\n",
       "     <use x=\"143.261719\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "     <use x=\"184.375\" xlink:href=\"#DejaVuSans-74\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_6\">\n",
       "   <g id=\"patch_27\">\n",
       "    <path d=\"M 389.718868 98.925311 \n",
       "L 452.888679 98.925311 \n",
       "L 452.888679 35.7555 \n",
       "L 389.718868 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p06a5f34e44)\">\n",
       "    <image height=\"64\" id=\"image3b8bbcb4d7\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"389.718868\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_28\">\n",
       "    <path d=\"M 389.718868 98.925311 \n",
       "L 389.718868 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_29\">\n",
       "    <path d=\"M 452.888679 98.925311 \n",
       "L 452.888679 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_30\">\n",
       "    <path d=\"M 389.718868 98.925311 \n",
       "L 452.888679 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_31\">\n",
       "    <path d=\"M 389.718868 35.7555 \n",
       "L 452.888679 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_6\">\n",
       "    <!-- trouser -->\n",
       "    <g transform=\"translate(399.729086 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-74\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "     <use x=\"80.291016\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"141.472656\" xlink:href=\"#DejaVuSans-75\"/>\n",
       "     <use x=\"204.851562\" xlink:href=\"#DejaVuSans-73\"/>\n",
       "     <use x=\"256.951172\" xlink:href=\"#DejaVuSans-65\"/>\n",
       "     <use x=\"318.474609\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "    </g>\n",
       "    <!-- trouser -->\n",
       "    <g transform=\"translate(399.729086 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-74\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "     <use x=\"80.291016\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"141.472656\" xlink:href=\"#DejaVuSans-75\"/>\n",
       "     <use x=\"204.851562\" xlink:href=\"#DejaVuSans-73\"/>\n",
       "     <use x=\"256.951172\" xlink:href=\"#DejaVuSans-65\"/>\n",
       "     <use x=\"318.474609\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_7\">\n",
       "   <g id=\"patch_32\">\n",
       "    <path d=\"M 465.522642 98.925311 \n",
       "L 528.692453 98.925311 \n",
       "L 528.692453 35.7555 \n",
       "L 465.522642 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#pa01a1c593a)\">\n",
       "    <image height=\"64\" id=\"image41d8868fa5\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"465.522642\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_33\">\n",
       "    <path d=\"M 465.522642 98.925311 \n",
       "L 465.522642 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_34\">\n",
       "    <path d=\"M 528.692453 98.925311 \n",
       "L 528.692453 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_35\">\n",
       "    <path d=\"M 465.522642 98.925311 \n",
       "L 528.692453 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_36\">\n",
       "    <path d=\"M 465.522642 35.7555 \n",
       "L 528.692453 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_7\">\n",
       "    <!-- coat -->\n",
       "    <defs>\n",
       "     <path d=\"M 48.78125 52.59375 \n",
       "L 48.78125 44.1875 \n",
       "Q 44.96875 46.296875 41.140625 47.34375 \n",
       "Q 37.3125 48.390625 33.40625 48.390625 \n",
       "Q 24.65625 48.390625 19.8125 42.84375 \n",
       "Q 14.984375 37.3125 14.984375 27.296875 \n",
       "Q 14.984375 17.28125 19.8125 11.734375 \n",
       "Q 24.65625 6.203125 33.40625 6.203125 \n",
       "Q 37.3125 6.203125 41.140625 7.25 \n",
       "Q 44.96875 8.296875 48.78125 10.40625 \n",
       "L 48.78125 2.09375 \n",
       "Q 45.015625 0.34375 40.984375 -0.53125 \n",
       "Q 36.96875 -1.421875 32.421875 -1.421875 \n",
       "Q 20.0625 -1.421875 12.78125 6.34375 \n",
       "Q 5.515625 14.109375 5.515625 27.296875 \n",
       "Q 5.515625 40.671875 12.859375 48.328125 \n",
       "Q 20.21875 56 33.015625 56 \n",
       "Q 37.15625 56 41.109375 55.140625 \n",
       "Q 45.0625 54.296875 48.78125 52.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-63\"/>\n",
       "    </defs>\n",
       "    <g transform=\"translate(484.108172 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-63\"/>\n",
       "     <use x=\"54.980469\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"116.162109\" xlink:href=\"#DejaVuSans-61\"/>\n",
       "     <use x=\"177.441406\" xlink:href=\"#DejaVuSans-74\"/>\n",
       "    </g>\n",
       "    <!-- coat -->\n",
       "    <g transform=\"translate(484.108172 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-63\"/>\n",
       "     <use x=\"54.980469\" xlink:href=\"#DejaVuSans-6f\"/>\n",
       "     <use x=\"116.162109\" xlink:href=\"#DejaVuSans-61\"/>\n",
       "     <use x=\"177.441406\" xlink:href=\"#DejaVuSans-74\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_8\">\n",
       "   <g id=\"patch_37\">\n",
       "    <path d=\"M 541.326415 98.925311 \n",
       "L 604.496226 98.925311 \n",
       "L 604.496226 35.7555 \n",
       "L 541.326415 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#pb023a21323)\">\n",
       "    <image height=\"64\" id=\"image8dbbda0795\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"541.326415\" xlink:href=\"data:image/png;base64,\n",
       "iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABHNCSVQICAgIfAhkiAAACd5JREFUeJztm2uMXVUVx3/n3rmPeb/unWc7nUdnqND3m7YULYSGaioCJo0IxPjJBEPQaPhg9IvxAwkmJsYQGyORaIiAGJBCC1bAtiqPFAacQtG2TGfa6XRe93buzJ25Lz/8z9378pjOGfUT9+4v52StdfY5e6//XmvttddxbnbuzOGxTd19vbm/vC0LQO99/1j0uYlv6LnoicuGNnhbEwBVw+qn5t+zVn51BQCNB/8GgL+mBoBMPP6Jvn3rPqfv2VpnaNWDKQCCh99Y9Nt8i0p8xluZFyEnEAQgvn/a0A5u/B0AD7EGgNyOdYZ3cWclAMsPjQNQ9/UhAIbqlxuZmWUZAGabHfXdVWl4kV0XdfPOWgDG+8SbuNZ+U/eDQsfodmm++cCHhvfhkU4Alh1R3+QWBnnRI6DoJ8DTEkjvXA1A+OWwof247ksABBH0PrgnZHjhEV1zZZrf8YSM2lyDhWJwUrxUtWh+awOJzeo9YZ8g7J+XTLoua2ScLVp6FaOinXpvmeE1TLjvcVz95jILjq2EAC9C8U5pt+25IUM7tSUKQK9PtLp3bVe+lDTguyK1Tg02AxC0CsTJOq6s+yEFCEgkA6JNiRho1PvLhws+1zVsmZD6CY36DWu+2u2zVe9ND19YcGwlBHgRmrhO1+l2u84OrDsGwMlwFQCBK3Z951xl5MYmAIi+1grAjOvyAFqPJQCI9co+BBJ2nabfVJ+ZgX4AKp1rAEjWNxgZ/4Rc8sguuchcxbx9f6XuZ/vb1HcJAQs3TwgITEtzVcNWy4eHVgHQUhMDIPqSDURi2xXw5OalicoLuo7eUDDfx3VJCQDEu+wazvldz9CscDnZrkWdty0A6TPndFPVCEBoMGh5FRqWfya56NiKHgFFPwGelkDZjK4Vo2lDGxwXLMO7ZZhi3XYu+/Z9AED/9g0A5FoFxRO7f2Zkdia/qz7btcPb3/VPw4sErgDwaHIvAKk1MpjR+gkjM7xiBwDl1VqCTsIGYr55N4BKyMdebbtbQoAXodozclHlf33P0HJ3yDVN9mkOV/xpyvAunO8BoO+5ARHaWwD4/NnvGZlVD4uX7e0A4HjHNsObq1Gfy359AgBng/xwtqLGyKS7pdfRLlnR6KUCN+yq1T8mdFjcfrKVEOBF6KYfKuh57MZdhnb05ocB+NrAvQD4HrUux5+SppxKBSnzEWlpvsnqItujoGpsnYKe2agNkvKBVIMj2nS3ZMLjKfsOd4N0aK/sygO9XzW86xvPAvBM2Y0ARH5pQ/iPt6JHQNFPgKcl8NjLNwDQ84SF+d5p16B1y0U5u6KGd3G3tn1zNSsASFULynvW9RuZ/nXaz8dlL0m32b4DYS2V7O71AIyt1ZoITRRGi7ruO3I/AF1PWiP4TKcMa/Nxuc2FswElBHhDQEO/NBgYiRla5G1lbRp2KNU9N9RseOXDMnpVwzJamXLN8+sjNikaGdT+IOsmXKezNpBJ1SofEDx/Sf2c17sCCavlkRuEssqIorT48gIXWeEa1FEbOC3USgjwIjS+VWsy1ttiaPkd4m+7ngDg3sh3DC/kxkT+OWkp62Ztcjnr6nwZN89X8dHMkB5wr6n0J3lucyrFm5/TEGavKwiEGufUzSvaTXL5Mgu1EgK8CNW/JbGETQgRcpfXwQltSrJlVrtth4ZFGx2TrF8me3LlaiMTeOMd9V2uvELZrLXVUz2yB+nzCmAiL8he5JptRqjim1r7I3/WRzkVFgG+KdkM3wU9X/ICV2lFPwHelsD7gmC8J2BoftcwPXVoJwDpL9tA5sIXZCxDl9sBcFwM/uSe3xiZB2vuBiDbKygHQ3afsK3tNAADM9sBGN0serbeWsMa1wg3nRRtss9+Wz4BkLk0uujYSgjwIhTqPwdATV+foTU/ewaA1AHFslfaC+bS1bjfBYXjurXnJ9cYkYYBqSmW1I5xpsWaqmxb3jVKpnJIRjQ1ZYOl2zfqdPi5lhs/IgvQ+E7BKcsirYQAL0Kzm7sB+P4Djxvaj5YdAGDLHmV2Bh+y6KjuVwibPnceAF9Ymjvm32Bklj/9JgDBm1UDED48Y3j978pdRp6Qlmuj7karqeBg5E7BavIWaXv/NXaj9ccB1SqsPLb42IoeAUU/Ad5Ohq7I1RyLW5ivfGQQgH+dUiQXW2vncmyNzuSaX4sAkGiRi2q5yaamZlyYjmyTgQvGaw0vs0lpced1JUMvbdFOLxmx0ebZP+wBoOdZ7VBfX7bZ8KpXeBoWUEKAxyKp428BcPSZHYbWmXxfPNfF+Qpyz3P1ckmpaml3vlaam0nZYCU859YQpKxW862tXlpNNcj45fcZuUJPG9TzH35RyAnaVAXtz8sIX20PkG8lBCxF2Flvp/nct3Qwkg1IE+GxArmMNFY5JBeVKlewE0uUG5nacUVJgWmhIjRhA5nhCWm154w6bczqBHh0o61RqpCSmdun5ENi1p4Op950T5NPLz6mEgKWItxUYwslJ6ekpZa/i5aMWu2k3Ryg/z3VDNQ6nQCMDVYZGWdA+YDGJlU/ls3YFRs7J7kra4WY+Wr1F4xblDS/oCDrXEQZ4ExXwaFJUsjzUgNc9Ago+glY0hIYm7b1vPXn5ffSVTJi0222q+C0C76ojNd8vQxULmBBmVnfC0CiSc9lA/b5TEhywZjeEe/Q8ppps8/Hvq0Ue+37eVpBrmJERVFXOxXOtxICliLse9XW5FedlosaulXhbvRWG+bm3dj4GvewZKWOzx7f+isjc++YjrSSHco21UWsgT3QoR3mK8cVeM27Zx6pqDV0ZRMFGSCgaqiggGpo2PuYPEt+RpuzlD9GcjvXm/vbD74IwNPXKlx1Nl1nO03JpWX7VVGSL3cbumulkWn9qao/fGu1mcpU2mzP5U2yNU0/l0z+j5H06i4jEzijiuz4jk4ALt5hCyV77jrpdUglBBT9BCxpCRS2049sBaD1L5rDyVV2LsP6U4aIm5yc6pYbi91i017Bt90aX/exjF0BpKu0xVx+RI5srk62enSrlcnXB5QltO/oetL+UJU7aUvuFmslBPy3CMi39J5NAJy9zXrUQLM0H3otX9ykV5SP23h/8CvScn1E2Z/ErIVAxy+k3kxI14vXK5BKVdlPbX9VfVWdlMtbiusrbEWPgCUFQp/awVGlt3uPWlr+f56Zdq3h8gtuXqDOanlNjwKnjopJAM5MNxre8IZOAGoGpeVUtfuT5g/eMjLZpPIJXsLdq7WiR8D/bAO8tOwuBVAv/v5RQ7tvWKWxWdxiyLTN6Dyy/CUAbu9UKJxLf4qencV/ivTSih4BRT8B/78l4LNFjI77w+PHoTtyv02rJ7bOuo+5hm7KptSqP5Btbn34xMe+tiCFfjXoL2F5FD0C/gOn7weHyW4VggAAAABJRU5ErkJggg==\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_38\">\n",
       "    <path d=\"M 541.326415 98.925311 \n",
       "L 541.326415 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_39\">\n",
       "    <path d=\"M 604.496226 98.925311 \n",
       "L 604.496226 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_40\">\n",
       "    <path d=\"M 541.326415 98.925311 \n",
       "L 604.496226 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_41\">\n",
       "    <path d=\"M 541.326415 35.7555 \n",
       "L 604.496226 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_8\">\n",
       "    <!-- shirt -->\n",
       "    <g transform=\"translate(559.497571 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-73\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-68\"/>\n",
       "     <use x=\"115.478516\" xlink:href=\"#DejaVuSans-69\"/>\n",
       "     <use x=\"143.261719\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "     <use x=\"184.375\" xlink:href=\"#DejaVuSans-74\"/>\n",
       "    </g>\n",
       "    <!-- shirt -->\n",
       "    <g transform=\"translate(559.497571 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-73\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-68\"/>\n",
       "     <use x=\"115.478516\" xlink:href=\"#DejaVuSans-69\"/>\n",
       "     <use x=\"143.261719\" xlink:href=\"#DejaVuSans-72\"/>\n",
       "     <use x=\"184.375\" xlink:href=\"#DejaVuSans-74\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_9\">\n",
       "   <g id=\"patch_42\">\n",
       "    <path d=\"M 617.130189 98.925311 \n",
       "L 680.3 98.925311 \n",
       "L 680.3 35.7555 \n",
       "L 617.130189 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#pc724b6cde2)\">\n",
       "    <image height=\"64\" id=\"image88235ba060\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"617.130189\" xlink:href=\"data:image/png;base64,\n",
       "iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABHNCSVQICAgIfAhkiAAAAuRJREFUeJztmr9PFFEQxz+7t5wHqOQQT0AEYyMYExNULLAxodAQKyWxNjFGKzsbLf0PrOwsbIyVNlgYS40aJVookVxAUTlEwo/ccZx3uxazvr3zjAgUk7Dv0/DyZvbmu995O1sszpBzPiDGuNoCtLEGaAvQxhqgLUAba4C2AG2sAdoCtLEGaAvQxhqgLUAba4C2AG2sAdoCtLEGaAvQxhqgLUAba4C2AG1ib4CX2JMBYH7ogNlcyYgv+U75ZuL4st8465icQnvt9xR/m2/WbknyvIJTc11L9qfJaf7wHYBydnJDwhNtu2RRCn8z2VCf5IT9dZ26UCU3K6ENVd9CeLTskEUx6mjre3E186oMgONL7ONFz+QcujUHQL53NwDFdMLEyilx3A+bEoShqaqvcG2ZJACLy0ekRrbJxJqn5W96vARAKiunZepCl8kp9BVlsSxFnHLU5cCVOoEX1gvb7O0smZyO+/urQ/El9gY46/k6/PjrmFkPHz0NQPnbzKYEuId7AcjeTJq9kYNvAGjxCgB8WU1L/YcDJqdpRmQXW+sHXBC29fejR5jiN0S3uu/JqtTflPotgDPkjgQATiIaYkGlUpsViHOVU/3RhTdkME1MtAOQHosGZOb5EgCJuUUAps91A5AfKJicYz2fAMgVZAif7XhnYv2NkwA8mD8OwIvbUjd999k6b29tYn8CTNtquh7UjgXHk7TE09dmL996AoCeyzkAhgejDnZeWwBgoSKvtkfh89qf/mxyRu8MyuLMPAAnm8dN7PqVqwAkR18CkKa+824qBYBfLP7r/tYk9icg9gas6zX4N7y9nQCs9HWYvfJ2GahL3fLotL2VYzp5KSrVdU9iTVMyMJ0fC9H1M7naIm44oP0/hnM1TtXrMPj/W7InwP6bXMyxBmgL0MYaoC1AG2uAtgBtrAHaArSxBmgL0MYaoC1AG2uAtgBtrAHaArSxBmgL0MYaoC1AG2uAtgBtYm/ALzuaqJRP3IXmAAAAAElFTkSuQmCC\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_43\">\n",
       "    <path d=\"M 617.130189 98.925311 \n",
       "L 617.130189 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_44\">\n",
       "    <path d=\"M 680.3 98.925311 \n",
       "L 680.3 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_45\">\n",
       "    <path d=\"M 617.130189 98.925311 \n",
       "L 680.3 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_46\">\n",
       "    <path d=\"M 617.130189 35.7555 \n",
       "L 680.3 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_9\">\n",
       "    <!-- sandal -->\n",
       "    <defs>\n",
       "     <path d=\"M 45.40625 46.390625 \n",
       "L 45.40625 75.984375 \n",
       "L 54.390625 75.984375 \n",
       "L 54.390625 0 \n",
       "L 45.40625 0 \n",
       "L 45.40625 8.203125 \n",
       "Q 42.578125 3.328125 38.25 0.953125 \n",
       "Q 33.9375 -1.421875 27.875 -1.421875 \n",
       "Q 17.96875 -1.421875 11.734375 6.484375 \n",
       "Q 5.515625 14.40625 5.515625 27.296875 \n",
       "Q 5.515625 40.1875 11.734375 48.09375 \n",
       "Q 17.96875 56 27.875 56 \n",
       "Q 33.9375 56 38.25 53.625 \n",
       "Q 42.578125 51.265625 45.40625 46.390625 \n",
       "z\n",
       "M 14.796875 27.296875 \n",
       "Q 14.796875 17.390625 18.875 11.75 \n",
       "Q 22.953125 6.109375 30.078125 6.109375 \n",
       "Q 37.203125 6.109375 41.296875 11.75 \n",
       "Q 45.40625 17.390625 45.40625 27.296875 \n",
       "Q 45.40625 37.203125 41.296875 42.84375 \n",
       "Q 37.203125 48.484375 30.078125 48.484375 \n",
       "Q 22.953125 48.484375 18.875 42.84375 \n",
       "Q 14.796875 37.203125 14.796875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-64\"/>\n",
       "    </defs>\n",
       "    <g transform=\"translate(628.957282 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-73\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-61\"/>\n",
       "     <use x=\"113.378906\" xlink:href=\"#DejaVuSans-6e\"/>\n",
       "     <use x=\"176.757812\" xlink:href=\"#DejaVuSans-64\"/>\n",
       "     <use x=\"240.234375\" xlink:href=\"#DejaVuSans-61\"/>\n",
       "     <use x=\"301.513672\" xlink:href=\"#DejaVuSans-6c\"/>\n",
       "    </g>\n",
       "    <!-- sandal -->\n",
       "    <g transform=\"translate(628.957282 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-73\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-61\"/>\n",
       "     <use x=\"113.378906\" xlink:href=\"#DejaVuSans-6e\"/>\n",
       "     <use x=\"176.757812\" xlink:href=\"#DejaVuSans-64\"/>\n",
       "     <use x=\"240.234375\" xlink:href=\"#DejaVuSans-61\"/>\n",
       "     <use x=\"301.513672\" xlink:href=\"#DejaVuSans-6c\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p6569faf22c\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"10.7\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p27288ec5ab\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"86.503774\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p2b903a8124\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"162.307547\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p5e61c36ef1\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"238.111321\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p1fc34f3f2c\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"313.915094\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p06a5f34e44\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"389.718868\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"pa01a1c593a\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"465.522642\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"pb023a21323\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"541.326415\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"pc724b6cde2\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"617.130189\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<matplotlib.figure.Figure at 0x11d164128>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "X, y = iter(test_iter).next()\n",
    "\n",
    "true_labels = d2l.get_fashion_mnist_labels(y.numpy())\n",
    "pred_labels = d2l.get_fashion_mnist_labels(net(X).argmax(dim=1).numpy())\n",
    "titles = [true + '\\n' + pred for true, pred in zip(true_labels, pred_labels)]\n",
    "\n",
    "d2l.show_fashion_mnist(X[0:9], titles[0:9])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python [default]",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
