diff --git a/examples/decoding/classical_ldpc.ipynb b/examples/decoding/classical_ldpc.ipynb index 008d3abd..85751a6a 100644 --- a/examples/decoding/classical_ldpc.ipynb +++ b/examples/decoding/classical_ldpc.ipynb @@ -38,6 +38,7 @@ " XOR_RIGHT,\n", ")\n", "from examples.decoding.decoding import (\n", + " linear_code_parity_matrix_dense,\n", " linear_code_constraint_sites,\n", " linear_code_prepare_message,\n", " linear_code_codewords,\n", @@ -169,7 +170,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "100%|██████████| 9/9 [00:00<00:00, 67.54it/s]\n" + "100%|██████████| 9/9 [00:00<00:00, 149.11it/s]\n" ] } ], @@ -181,6 +182,7 @@ " renormalise=True,\n", " result_to_explicit=True,\n", " silent=False,\n", + " strategy=\"Naive\",\n", ")" ] }, @@ -201,7 +203,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "100%|██████████| 9/9 [00:03<00:00, 2.66it/s]\n" + "100%|██████████| 9/9 [00:01<00:00, 6.34it/s]\n" ] } ], @@ -315,14 +317,7 @@ "name": "stderr", "output_type": "stream", "text": [ - " 40%|████ | 6/15 [00:00<00:00, 45.16it/s]" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "100%|██████████| 15/15 [00:12<00:00, 1.24it/s]\n" + "100%|██████████| 15/15 [00:08<00:00, 1.85it/s]\n" ] }, { @@ -338,7 +333,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "100%|██████████| 1/1 [00:00<00:00, 4.75it/s]" + "100%|██████████| 1/1 [00:00<00:00, 1.72it/s]" ] }, { @@ -346,7 +341,7 @@ "output_type": "stream", "text": [ "\n", - "The overlap of the density MPO main component and the initial codeword state: 1.0\n" + "The overlap of the density MPO main component and the initial codeword state: 0.0\n" ] }, { @@ -421,7 +416,7 @@ " chi_max=CHI_MAX_CONTRACTOR,\n", " renormalise=True,\n", " result_to_explicit=False,\n", - " strategy=\"Naive\",\n", + " strategy=\"Optimized\",\n", " silent=False,\n", ")\n", "\n", @@ -461,7 +456,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "100%|██████████| 100/100 [01:19<00:00, 1.25it/s]\n" + "100%|██████████| 100/100 [00:30<00:00, 3.27it/s]\n" ] } ], @@ -538,7 +533,7 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAApwAAAHsCAYAAAB/gX35AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/H5lhTAAAACXBIWXMAAA9hAAAPYQGoP6dpAABFh0lEQVR4nO3deXhU9fn//9ckIQtLIohJCIZFhQKyChIRbaFGkSLKxyqoVCIobkTAuEBUCLgQxEpRQSjI5k8Rqi1oFUFNCbigbKbVrwsgSCKSBFQSEiCBmfP7I2XqyAlmwjlzJpnno9e5rs7JOe9zz8k4ubnfy3EZhmEIAAAAsEmY0wEAAACgfiPhBAAAgK1IOAEAAGArEk4AAADYioQTAAAAtiLhBAAAgK1IOAEAAGCrCKcDAAAACDZHjx5VZWWlLW1HRkYqOjralraDFQknAADAzxw9elRtWzdWYbHblvYTExO1e/fukEo6STgBAAB+prKyUoXFbu3Z2kaxTawdfVh6yKPWPb9VZWUlCScAAECoa9zEpcZNXJa26ZG17dUVTBoCAACArahwAgAAmHAbHrkN69sMRVQ4AQAAYCsqnAAAACY8MuSRtSVOq9urK6hwAgAAwFYknAAAACY8Nv3PHxs2bNDgwYOVlJQkl8ulVatW/eo5FRUVevjhh9W6dWtFRUWpTZs2WrRoUS3vgjXoUgcAADDhNgy5DWu7wP1tr7y8XN26ddOoUaN07bXX1uicoUOHqqioSAsXLtR5552nffv2yeNxdrISCScAAECQGjhwoAYOHFjj49esWaP169dr165datasmSSpTZs2NkVXc3SpAwAAmDgxacjqTZJKS0t9toqKCktifuONN9SrVy/NmDFDLVu2VPv27XX//ffryJEjlrRfW1Q4AQAAAiw5OdnndVZWlqZMmXLa7e7atUsffPCBoqOjtXLlSh04cEB33323fvjhBy1evPi0268tEk4AAAATHhly27QsUkFBgWJjY737o6KirGnf45HL5dLLL7+suLg4SdLMmTN13XXX6fnnn1dMTIwl1/EXXeoAAAABFhsb67NZlXC2aNFCLVu29CabktSxY0cZhqHvvvvOkmvUBgknAACACTvHcNqlb9+++v7771VWVubdt337doWFhenss8+29dqnQsIJAAAQpMrKypSXl6e8vDxJ0u7du5WXl6f8/HxJUmZmpkaMGOE9/qabbtKZZ56pkSNH6osvvtCGDRv0wAMPaNSoUY51p0uM4QQAADAVDOtwbtmyRf379/e+zsjIkCSlpaVpyZIl2rdvnzf5lKTGjRvr3Xff1T333KNevXrpzDPP1NChQ/X4449b8wZqyWUYFt9JAACAOqy0tFRxcXH66ssENWlibWfwoUMedehYpJKSEp9JQ/UdXeoAAACwFV3qAAAAJtw2LItkdXt1BRVOAAAA2IoKJwAAgAm3UbVZ3WYoosIJAAAAW1HhBAAAMOH572Z1m6GICicAAABsRYUTAADAhEcuueWyvM1QRMIJAABgwmNUbVa3GYroUgcAAICtqHACAACYcNvQpW51e3UFFU4AAADYigonAACACSqc1qn3CafH49H333+vJk2ayOUKzV8yAAB1jWEYOnTokJKSkhQWRodsXVfvE87vv/9eycnJTocBAABqoaCgQGeffbYj1/YYLnkMi5dFsri9uqLeJ5xNmjSRJF2iPyhCDRyLIyIh3rFrn2A0inE6BBnRUU6HIE8j5z4HP2eEOf+lc7yx8/fCE+H8fTDo/ZAkuYJgvZawIHjQdPgRt9MhSJLCK447HYLCDh527NrHPRVav3ue9+846rZ6n3Ce6EaPUANFuBxMOMMiHbv2CUa488leMMTgiXD+dyEFR8KpiCBIOBs4fx9IOKsERcLpcj6G8IggSTiPB0HCGe78vXByOBxjOK1T7xNOAACA2nArTG6LF/RxPoV3BqNwAQAAYCsqnAAAACYMGyYNGSE6aYgKJwAAAGxFhRMAAMAEk4asQ4UTAAAAtqLCCQAAYMJthMltWDxL3fmVvxxBhRMAAAC2osIJAABgwiOXPBbX5jwKzRInCScAAIAJJg1Zp050qc+ZM0dt2rRRdHS0UlJStGnTJqdDAgAAQA0FfcK5YsUKZWRkKCsrS9u2bVO3bt00YMAAFRcXOx0aAACox05MGrJ6C0VB/65nzpyp0aNHa+TIkerUqZPmzZunhg0batGiRabHV1RUqLS01GcDAACAc4I64aysrNTWrVuVmprq3RcWFqbU1FRt3LjR9Jzs7GzFxcV5t+Tk5ECFCwAA6pGqSUPWb6EoqBPOAwcOyO12KyEhwWd/QkKCCgsLTc/JzMxUSUmJdysoKAhEqAAAAKhGvZulHhUVpaioKKfDAAAAdZxHYXKzLJIlgrrC2bx5c4WHh6uoqMhnf1FRkRITEx2KCgAAAP4I6oQzMjJSPXv2VE5Ojnefx+NRTk6O+vTp42BkAACgvmOWunWCvks9IyNDaWlp6tWrl3r37q1Zs2apvLxcI0eOdDo0AABQj3kUxpOGLBL0CeewYcO0f/9+TZ48WYWFherevbvWrFlz0kQiAAAABKegTzglKT09Xenp6U6HAQAAQojbcMltWPxoS4vbqytCcyABAAAAAqZOVDgBAAACzW3DskjuEB3DSYUTAAAAtqLCCQAAYMJjhMlj8TJGHoMKJwAAAGA5KpwAAAAmGMNpHRJOAAAAEx5Zv4yRx9LW6g661AEAAILUhg0bNHjwYCUlJcnlcmnVqlU1PvfDDz9URESEunfvblt8NUXCCQAAYOLEoy2t3vxRXl6ubt26ac6cOX6dd/DgQY0YMUKXXXaZX+fZhS71ADGaxjodgo4mxzkdgirOcP4jdzg+OP6d5Y5yOgLpWCOnI5A8Uc6PZwqGB3+4gqCfLazS+RsRcdjpCKTIQ85/JiWpQZnzcUT/GO3YtY8fOyp949jlg8bAgQM1cOBAv8+78847ddNNNyk8PNyvqqhdguMvLwAAQJBxG2G2bJJUWlrqs1VUVFgW9+LFi7Vr1y5lZWVZ1ubpIuEEAAAIsOTkZMXFxXm37OxsS9rdsWOHJk6cqJdeekkREc73Kp4QPJEAAAAEEY9c8sjqWepV7RUUFCg29n/D7aKiTn+cldvt1k033aSpU6eqffv2p92elUg4AQAAAiw2NtYn4bTCoUOHtGXLFn366adKT0+XJHk8HhmGoYiICL3zzjv6/e9/b+k1a4qEEwAAwMTPx1xa2aZdYmNj9dlnn/nse/755/Wvf/1Lr732mtq2bWvbtX8NCScAAECQKisr086dO72vd+/erby8PDVr1kytWrVSZmam9u7dqxdffFFhYWHq3Lmzz/nx8fGKjo4+aX+gkXACAACYsOfRlv61t2XLFvXv39/7OiMjQ5KUlpamJUuWaN++fcrPz7c0RjuQcAIAAJjwGC55rH60pZ/t9evXT4ZR/ZqsS5YsOeX5U6ZM0ZQpU/y6ph1YFgkAAAC2osIJAABgwmNDl7q/j7asL0LzXQMAACBgqHACAACY8Bhh8li8jJHV7dUVofmuAQAAEDBUOAEAAEy45ZLb4kdbWt1eXUGFEwAAALaiwgkAAGCCMZzWIeEEAAAw4Zb1XeBuS1urO0IzzQYAAEDAUOEEAAAwQZe6dULzXQMAACBgqHACAACYcBthcltckbS6vboiNN81AAAAAoYKJwAAgAlDLnksnqVusPA7AAAAYD0qnAAAACYYw2kdEk4AAAATHsMlj2FtF7jV7dUVoZlmAwAAIGCocAIAAJhwK0xui2tzVrdXV4TmuwYAAEDAUOEEAAAwwRhO61DhBAAAgK2ocAIAAJjwKEwei2tzVrdXV5BwBoincbTTIehwvPO/7vIWzv+HVt7a7XQIkqSwppVOh6BGjY46HYLiYpyPodId7nQIOuZ2/r+NssPOf0+VlUc6HYIiDjRwOgRJUuRPzn8m3JHOdf+6K53/mwXr8NsEAAAw4TZccls85tLq9uoKEk4AAAATTBqyjvP1egAAANRrVDgBAABMGEaYPBY/+9wI0Weph+a7BgAAQMBQ4QQAADDhlktuWTxpyOL26goqnAAAALAVFU4AAAATHsP6WeUew9Lm6gwqnAAAALAVFU4AAAATHhtmqVvdXl1BwgkAAGDCI5c8Fk/ysbq9uiI002wAAAAETFAnnNnZ2brwwgvVpEkTxcfHa8iQIfr666+dDgsAAISAE89St3oLRUGdcK5fv15jxozRxx9/rHfffVfHjh3TFVdcofLycqdDAwAAQA0F9RjONWvW+LxesmSJ4uPjtXXrVv32t791KCoAABAKmDRknaBOOH+ppKREktSsWbNqj6moqFBFRYX3dWlpqe1xAQAAoHp1Js32eDwaP368+vbtq86dO1d7XHZ2tuLi4rxbcnJyAKMEAAD1hUcueQyLN2apB7cxY8bo888/1/Lly095XGZmpkpKSrxbQUFBgCIEAACAmTrRpZ6enq4333xTGzZs0Nlnn33KY6OiohQVFRWgyAAAQH1l2LAOpxGiFc6gTjgNw9A999yjlStXKjc3V23btnU6JAAAECJOdINb3WYoCuou9TFjxuill17SsmXL1KRJExUWFqqwsFBHjhxxOjQAAADbbdiwQYMHD1ZSUpJcLpdWrVp1yuP/8Y9/6PLLL9dZZ52l2NhY9enTR2vXrg1MsKcQ1Ann3LlzVVJSon79+qlFixbebcWKFU6HBgAA6rkTyyJZvfmjvLxc3bp105w5c2p0/IYNG3T55Zdr9erV2rp1q/r376/Bgwfr008/rc0tsEzQd6kDAACEqoEDB2rgwIE1Pn7WrFk+r6dNm6bXX39d//znP9WjRw+Lo6u5oE44AQAAnGLnGM5frhNu16Rnj8ejQ4cOnXIN80AI6i51AACA+ig5Odln3fDs7GxbrvPnP/9ZZWVlGjp0qC3t1xQVTgAAABMeG5ZFOtFeQUGBYmNjvfvtqG4uW7ZMU6dO1euvv674+HjL2/cHCScAAECAxcbG+iScVlu+fLluu+02vfrqq0pNTbXtOjVFwgkAAGCirq7D+corr2jUqFFavny5Bg0aZPv1aoKEEwAAwEQwJJxlZWXauXOn9/Xu3buVl5enZs2aqVWrVsrMzNTevXv14osvSqrqRk9LS9MzzzyjlJQUFRYWSpJiYmIUFxdn3RvxE5OGAAAAgtSWLVvUo0cP75JGGRkZ6tGjhyZPnixJ2rdvn/Lz873Hz58/X8ePH9eYMWN81jAfN26cI/GfQIUTAADARDBUOPv163fKdcmXLFni8zo3N7cWUdmPCicAAABsRYUzQI41iXQ6BB1t5vy/Lw638Dgdghq1POR0CJKkdmfudzoEndv4gNMhqGXUT06HoJLjDZ0OQYc9zn9H7Dh0ltMhaF+5fbN2a6o40vkYJOmIDcvk+CviiHN/N9wV9k+u+TXBUOGsL5zPQAAAAFCvUeEEAAAwYUiWL/xe/WjM+o0KJwAAAGxFhRMAAMAEYzitQ8IJAABggoTTOnSpAwAAwFZUOAEAAExQ4bQOFU4AAADYigonAACACSqc1qHCCQAAAFtR4QQAADBhGC4ZFlckrW6vrqDCCQAAAFtR4QQAADDhkcvyR1ta3V5dQYUTAAAAtqLCCQAAYIJZ6tYh4QQAADDBpCHr0KUOAAAAW1HhBAAAMEGXunWocAIAAMBWVDgBAABMMIbTOlQ4AQAAYCsqnAAAACYMG8ZwUuEEAAAAbECFEwAAwIQhyTCsbzMUkXACAACY8MglF89StwRd6gAAALAVFU4AAAATLItkHSqcAAAAsBUVTgAAABMewyUXj7a0BBVOAAAA2IoKJwAAgAnDsGFZpBBdF4kKJwAAAGxFhTNAPJHO5/aVsU5HIBnNK50OQR3PKnI6BEnSRWfsdjoE9Wq4y+kQ1KFBudMhqOB4A6dDULkR6XQI2hjRzukQtCu6udMhaJs73OkQJEk/HHf+78bRM537XHqOOl8KZJa6dUg4AQAATJBwWsf5fz4BAACgXqPCCQAAYIJlkaxDhRMAAAC2osIJAABggmWRrEOFEwAAALaiwgkAAGCiqsJp9Sx1S5urM6hwAgAAwFZUOAEAAEywDqd1SDgBAABMGP/drG4zFNGlDgAAAFuRcAIAAJg40aVu9eaPDRs2aPDgwUpKSpLL5dKqVat+9Zzc3FxdcMEFioqK0nnnnaclS5bU7gZYqE4lnNOnT5fL5dL48eOdDgUAAMB25eXl6tatm+bMmVOj43fv3q1Bgwapf//+ysvL0/jx43Xbbbdp7dq1Nkd6anVmDOfmzZv117/+VV27dnU6FAAAEAqCYBDnwIEDNXDgwBofP2/ePLVt21ZPP/20JKljx4764IMP9Je//EUDBgzw7+IWqhMVzrKyMg0fPlwLFixQ06ZNnQ4HAADgtJSWlvpsFRUVlrS7ceNGpaam+uwbMGCANm7caEn7tVUnEs4xY8Zo0KBBJ91AMxUVFSf9EgEAAPxmx/jN/47hTE5OVlxcnHfLzs62JOTCwkIlJCT47EtISFBpaamOHDliyTVqI+i71JcvX65t27Zp8+bNNTo+OztbU6dOtTkqAACA2isoKFBsbKz3dVRUlIPR2C+oK5wFBQUaN26cXn75ZUVHR9fonMzMTJWUlHi3goICm6MEAAD1UdWjLa3fJCk2NtZnsyrhTExMVFFRkc++oqIixcbGKiYmxpJr1EZQVzi3bt2q4uJiXXDBBd59brdbGzZs0OzZs1VRUaHw8HCfc6Kiour9vxIAAID96uKThvr06aPVq1f77Hv33XfVp08fW6/7a4I64bzsssv02Wef+ewbOXKkOnTooAkTJpyUbAIAANQnZWVl2rlzp/f17t27lZeXp2bNmqlVq1bKzMzU3r179eKLL0qS7rzzTs2ePVsPPvigRo0apX/961/629/+prfeesuptyApyBPOJk2aqHPnzj77GjVqpDPPPPOk/QAAAJb62SQfS9v0w5YtW9S/f3/v64yMDElSWlqalixZon379ik/P9/787Zt2+qtt97Svffeq2eeeUZnn322XnjhBUeXRJKCPOEEAAAIZf369ZNhVL94p9lThPr166dPP/3Uxqj8V+cSztzcXKdDAAAAIeDnk3ysbDMUBfUsdQAAANR9da7CCQAAEBBB8GjL+oIKJwAAAGxFhRMAAMBEXVyHM1iRcAIAAFQnRLvArUaXOgAAAGxFhRMAAMAEXerWocIJAAAAW1HhBAAAMMOySJYh4QwQT0QQlNCDIISIBm6nQ1DTyMNOhyBJOieq2OkQ1C6izOkQFB/e2OkQdNBT7nQICvc4/1eodeQBp0PQvso4p0NQbPRRp0OQJB2Nc/5P9JH9kY5d2+PYlWEH5z/NAAAAQckl66s1QVD9cQBjOAEAAGArKpwAAABmGMNpGRJOAAAAMySclqFLHQAAALaiwgkAAGDGcFVtVrcZgqhwAgAAwFZUOAEAAEwYRtVmdZuhiAonAAAAbHVaCeeGDRt09GhwPJEBAADAUoZNWx2QlZWlPXv2WNbeaSWc/fv3V35+vlWxAAAAIAi8/vrrOvfcc3XZZZdp2bJlqqioOK32TivhNEJ1IAIAAKj/TsxSt3qrA/Ly8rR582adf/75GjdunBITE3XXXXdp8+bNtWqPMZwAAAAmXIY9W13Ro0cPPfvss/r++++1cOFCfffdd+rbt6+6du2qZ555RiUlJTVui4QTAAAA1TIMQ8eOHVNlZaUMw1DTpk01e/ZsJScna8WKFTVqg4QTAADATAhPGpKkrVu3Kj09XS1atNC9996rHj166Msvv9T69eu1Y8cOPfHEExo7dmyN2iLhBAAAgI8uXbrooosu0u7du7Vw4UIVFBRo+vTpOu+887zH3Hjjjdq/f3+N2vM74fR4PHr99dd99r377rsqLy/3tykAAIDgFcKThoYOHapvv/1Wb731loYMGaLw8PCTjmnevLk8Hk+N2vM74dy+fbvS0tI0bdo0uVwurVixQtdcc40++ugjf5sCAABAEJo0aZJatmwpqWoM5+muTOR3wtmhQwetXbtWTz31lAzD0OOPP64XX3xRl19++WkFAgAAEFRCfAznwoUL1blzZ0VHRys6OlqdO3fWCy+8UKu2ajWGMyUlRe+8847OOeccvfLKK7ruuutqdXEAAAAEn8mTJ2vcuHEaPHiwXn31Vb366qsaPHiw7r33Xk2ePNnv9iJqG8iFF16onTt31vZ0AACA4GZHRbKOVDjnzp2rBQsW6MYbb/Tuu/rqq9W1a1fdc889evTRR/1qr9YJJwAAQL0WwgnnsWPH1KtXr5P29+zZU8ePH/e7PZZFAgAAgI+bb75Zc+fOPWn//PnzNXz4cL/bo8IJAABgxo5ljOrIskhS1aShd955RxdddJEk6ZNPPlF+fr5GjBihjIwM73EzZ8781bZIOAEAAODj888/1wUXXCBJ+uabbyRVrbvZvHlzff75597jXK6aJdC1Tjh37typb775Rr/97W8VExMjwzBqfFEAAIBg5zKqNqvbrAvWrVtnaXt+j+H84YcflJqaqvbt2+sPf/iD9u3bJ0m69dZbdd9991kaHAAAAJz13Xff6bvvvjutNvxOOO+9915FREQoPz9fDRs29O4fNmyY1qxZc1rBAAAABI0QXvjd4/Ho0UcfVVxcnFq3bq3WrVvrjDPO0GOPPVbjx1n+nN9d6u+8847Wrl2rs88+22d/u3bttGfPHr8DAAAAQHB5+OGHtXDhQk2fPl19+/aVJH3wwQeaMmWKjh49qieeeMKv9vxOOMvLy30qmyf8+OOPioqK8rc5AAAABJmlS5fqhRde0NVXX+3d17VrV7Vs2VJ333233wmn313ql156qV588UXva5fLJY/HoxkzZqh///7+NgcAAIAg8+OPP6pDhw4n7e/QoYN+/PFHv9vzu8I5Y8YMXXbZZdqyZYsqKyv14IMP6v/9v/+nH3/8UR9++KHfAQAAAAQjl2yYpW5tc7bp1q2bZs+erWeffdZn/+zZs9WtWze/2/M74ezcubO2b9+u2bNnq0mTJiorK9O1116rMWPGqEWLFn4HECpcHudHCRtB8FwpV5jz9wH/E+1y/kNR7C53OgQdNcKdDkGVQfDgtzCX/xMBrBYXccTpEBQV7v9j++xQcbSB0yHIE+PcZ8Ij5z+Pobzw+4wZMzRo0CC999576tOnjyRp48aNKigo0OrVq/1ur1brcMbFxenhhx+uzakAAAAIcr/73e+0fft2zZkzR1999ZUk6dprr9Xdd9+tpKQkv9urVcJ59OhR/ec//1FxcfFJU+N/PrgUAACgzrJjGaNatjdnzhw99dRTKiwsVLdu3fTcc8+pd+/e1R4/a9YszZ07V/n5+WrevLmuu+46ZWdnKzo6+levdezYMV155ZWaN2+e35ODquN3wrlmzRqNGDFCBw4cOOlnLpdLbrfbksAAAAAgrVixQhkZGZo3b55SUlI0a9YsDRgwQF9//bXi4+NPOn7ZsmWaOHGiFi1apIsvvljbt2/XLbfcIpfLVaPnnjdo0ED/+c9/LH0Pfg8auueee3T99ddr37598ng8PhvJJgAAqDeCZOH3mTNnavTo0Ro5cqQ6deqkefPmqWHDhlq0aJHp8R999JH69u2rm266SW3atNEVV1yhG2+8UZs2barxNf/0pz9p4cKF/gdbDb8rnEVFRcrIyFBCQoJlQQAAAISS0tJSn9dRUVGm65lXVlZq69atyszM9O4LCwtTamqqNm7caNr2xRdfrJdeekmbNm1S7969tWvXLq1evVo333xzjeM7fvy4Fi1apPfee089e/ZUo0aNfH5ek0rpz/mdcF533XXKzc3Vueee6++pAAAAdYbLsGFZpP+2l5yc7LM/KytLU6ZMOen4AwcOyO12n1ToS0hI8E7m+aWbbrpJBw4c0CWXXCLDMHT8+HHdeeedeuihh2oc5+eff64LLrhAkrR9+/Yan1cdvxPO2bNn6/rrr9f777+vLl26qEED32Ubxo4de9pBAQAA1GcFBQWKjY31vrbyaY25ubmaNm2ann/+eaWkpGjnzp0aN26cHnvsMU2aNKlGbaxbt86yeKRaJJyvvPKK3nnnHUVHRys3N1cu1//Wk3K5XCScAACgfrBxlnpsbKxPwlmd5s2bKzw8XEVFRT77i4qKlJiYaHrOpEmTdPPNN+u2226TJHXp0kXl5eW6/fbb9fDDDyss7Nen8IwaNUrPPPOMmjRp4rO/vLxc99xzT7XjR6vj96Shhx9+WFOnTlVJSYm+/fZb7d6927vt2rXL3+YAAACCUxBMGoqMjFTPnj2Vk5Pj3efxeJSTk+NdkP2XDh8+fFJSGR5e9YALw6hZAEuXLtWRIyc/iOHIkSM+jzivKb8rnJWVlRo2bFiNsmMAAACcnoyMDKWlpalXr17q3bu3Zs2apfLyco0cOVKSNGLECLVs2VLZ2dmSpMGDB2vmzJnq0aOHt0t90qRJGjx4sDfxrE5paakMw5BhGDp06JDPup1ut1urV682XYrp1/idcKalpWnFihV+DTwFAACoa+ycNOSPYcOGaf/+/Zo8ebIKCwvVvXt3rVmzxjuRKD8/36cQ+Mgjj8jlcumRRx7R3r17ddZZZ2nw4ME1WsT9jDPOkMvlksvlUvv27U+O3+XS1KlT/X4PfiecbrdbM2bM0Nq1a9W1a9eTJg35O00eAAAAp5aenq709HTTn+Xm5vq8joiIUFZWlrKysvy+zrp162QYhn7/+9/r73//u5o1a+b9WWRkpFq3bh2YR1t+9tln6tGjh6SqKfM/9/MJRFbZu3evJkyYoLfffluHDx/Weeedp8WLF6tXr16WXwsAAMDLcFVtVrcZxH73u99Jknbv3q3k5GTLhlD6nXBaPU3+VH766Sf17dtX/fv319tvv62zzjpLO3bsUNOmTQMWAwAAQKhp3bq1Dh48qE2bNqm4uFgej8fn5yNGjPCrPb8TzkB68sknlZycrMWLF3v3tW3b1sGIAABAyLBxWaRg989//lPDhw9XWVmZYmNjT1oG05aE89prr9WSJUsUGxura6+99pTH/uMf//ArgFN54403NGDAAF1//fVav369WrZsqbvvvlujR4+u9pyKigpVVFR4X//y0VEAAAA4tfvuu0+jRo3StGnT1LBhw9Nur0Yd83Fxcd7MNi4u7pSblXbt2qW5c+eqXbt2Wrt2re666y6NHTtWS5curfac7Oxsn3h++egoAACAmjgxS93qrS7Yu3evxo4da0myKdWwwrl48WI9+uijuv/++326t+3m8XjUq1cvTZs2TZLUo0cPff7555o3b57S0tJMz8nMzFRGRob3dWlpKUknAADwXwh3qQ8YMEBbtmzROeecY0l7NR7DOXXqVN15552WZbo10aJFC3Xq1MlnX8eOHfX3v/+92nOioqIsfR4pAABAqBk0aJAeeOABffHFF+rSpctJy2BeffXVfrVX44Szpo9CslLfvn319ddf++zbvn27WrduHfBYAABAiLGjC7yOVDhPzJd59NFHT/qZy+WS2+32qz2/Zqnbsc7mqdx77726+OKLNW3aNA0dOlSbNm3S/PnzNX/+/IDGAQAAEEp+uQzS6fJrNc/27durWbNmp9ysdOGFF2rlypV65ZVX1LlzZz322GOaNWuWhg8fbul1AAAATmLYtAWxP/zhDyopKfG+nj59ug4ePOh9/cMPP5w03LEm/KpwTp061fKZ6L/mqquu0lVXXRXQawIAAISitWvX+iwveaKX+YwzzpAkHT9+/KThjjXhV8J5ww03KD4+3u+LAAAA1DkhOEv9l3N2rJrDU+Mu9UCP3wQAAED9ENSz1AEAAJxix0Ltwb7wu8vlOqnIaEXRscYJp9WzlQAAABBcDMPQLbfc4l3T/OjRo7rzzjvVqFEjSfIZ3+kPv8ZwAgAAoP765ZMc//SnP510zIgRI/xul4QTAADATAhOGrLrEeZ+rcMJAAAA+IsKJwAAgIlQnDRkFyqcAAAAsBUVTgAAgOqEaEXSaiScAdKg/LjTISjyYAOnQ9Ch/TFOh6BN0a2dDkGS9FNlQ6dD0NuRh50OQWdFljkdQlDwGM4/XKOoItbpENQiuuTXD7JZsyjn/7uQpJbNDzodgvKLWjh2bZfb+f8mYB0STgAAADMhOEvdLiScAAAAJpg0ZB0mDQEAAMBWVDgBAADM0KVuGSqcAAAAsBUVTgAAABOM4bQOFU4AAADYigonAACAGcZwWoYKJwAAAGxFhRMAAMAMFU7LkHACAACYYNKQdehSBwAAgK2ocAIAAJihS90yVDgBAABgKyqcAAAAZqhwWoYKJwAAAGxFhRMAAMAEs9StQ4UTAAAAtqLCCQAAYIYxnJYh4QQAADBBl7p16FIHAACArahwAgAAmKFL3TJUOAEAAGArEk4AAAAzhk1bLcyZM0dt2rRRdHS0UlJStGnTplMef/DgQY0ZM0YtWrRQVFSU2rdvr9WrV9fu4hagSx0AACCIrVixQhkZGZo3b55SUlI0a9YsDRgwQF9//bXi4+NPOr6yslKXX3654uPj9dprr6lly5bas2ePzjjjjMAH/18knAAAACZc/92sbtNfM2fO1OjRozVy5EhJ0rx58/TWW29p0aJFmjhx4knHL1q0SD/++KM++ugjNWjQQJLUpk2b04j69NGlDgAAEGClpaU+W0VFhelxlZWV2rp1q1JTU737wsLClJqaqo0bN5qe88Ybb6hPnz4aM2aMEhIS1LlzZ02bNk1ut9uW91ITJJwAAABmbBzDmZycrLi4OO+WnZ1tGsKBAwfkdruVkJDgsz8hIUGFhYWm5+zatUuvvfaa3G63Vq9erUmTJunpp5/W448/Xts7cdroUgcAADBh58LvBQUFio2N9e6Pioqy7Boej0fx8fGaP3++wsPD1bNnT+3du1dPPfWUsrKyLLuOP0g4AQAAAiw2NtYn4axO8+bNFR4erqKiIp/9RUVFSkxMND2nRYsWatCggcLDw737OnbsqMLCQlVWVioyMvL0gq8FutQBAADMBMGySJGRkerZs6dycnK8+zwej3JyctSnTx/Tc/r27audO3fK4/F4923fvl0tWrRwJNmUSDgBAACCWkZGhhYsWKClS5fqyy+/1F133aXy8nLvrPURI0YoMzPTe/xdd92lH3/8UePGjdP27dv11ltvadq0aRozZoxTb4Eu9UBxHXf+WVYNDjsfQ8Qh5/+Nc/CHxk6HIEn6yrB6sQ3/NWt4xOkQtN118hpygfZDeUOnQwgKFRUNnA5BTZscdjoElVc4UwH6pfLSaKdDUNhx567tcvDaPpz/06lhw4Zp//79mjx5sgoLC9W9e3etWbPGO5EoPz9fYWH/+/uanJystWvX6t5771XXrl3VsmVLjRs3ThMmTHDqLZBwAgAABLv09HSlp6eb/iw3N/ekfX369NHHH39sc1Q1R8IJAABgws5Z6qHG+f5NAAAA1GtUOAEAAMzUYlZ5jdoMQVQ4AQAAYCsqnAAAACYYw2kdEk4AAAAzdKlbhi51AAAA2IoKJwAAgAm61K1DhRMAAAC2osIJAABghjGclgnqCqfb7dakSZPUtm1bxcTE6Nxzz9Vjjz0mwwjR3xYAAEAdFNQVzieffFJz587V0qVLdf7552vLli0aOXKk4uLiNHbsWKfDAwAA9RkVTssEdcL50Ucf6ZprrtGgQYMkSW3atNErr7yiTZs2ORwZAAAAaiqou9Qvvvhi5eTkaPv27ZKkf//73/rggw80cODAas+pqKhQaWmpzwYAAOCvE7PUrd5CUVBXOCdOnKjS0lJ16NBB4eHhcrvdeuKJJzR8+PBqz8nOztbUqVMDGCUAAKiX6FK3TFBXOP/2t7/p5Zdf1rJly7Rt2zYtXbpUf/7zn7V06dJqz8nMzFRJSYl3KygoCGDEAAAA+KWgrnA+8MADmjhxom644QZJUpcuXbRnzx5lZ2crLS3N9JyoqChFRUUFMkwAAFAPuQxDLotXxrG6vboiqCuchw8fVliYb4jh4eHyeDwORQQAAAB/BXWFc/DgwXriiSfUqlUrnX/++fr00081c+ZMjRo1yunQAABAfccYTssEdcL53HPPadKkSbr77rtVXFyspKQk3XHHHZo8ebLToQEAAKCGgjrhbNKkiWbNmqVZs2Y5HQoAAAgxdixjFKrLIgX1GE4AAADUfUFd4QQAAHAMYzgtQ8IJAABggi5169ClDgAAAFtR4QQAADBDl7plqHACAADAVlQ4AQAATDCG0zpUOAEAAGArKpwAAABmGMNpGSqcAAAAsBUVzgBxHXM7HYLCK5yOQIoscTkdgjwNguNjf6iyidMhqCy6odMhSGXO/z7Cjjr/uVQwhHDM+SCKG8Y4HYKMyBAtQZkIq3TwM+HktX8mVMdcWs35b3oAAIBgZBhVm9VthiC61AEAAGArKpwAAAAmWBbJOlQ4AQAAYCsqnAAAAGZYFskyVDgBAABgKyqcAAAAJlyeqs3qNkMRFU4AAADYigonAACAGcZwWoaEEwAAwATLIlmHLnUAAADYigonAACAGR5taRkqnAAAALAVFU4AAAATjOG0DhVOAACAIDdnzhy1adNG0dHRSklJ0aZNm2p03vLly+VyuTRkyBB7A/wVJJwAAABmDJs2P61YsUIZGRnKysrStm3b1K1bNw0YMEDFxcWnPO/bb7/V/fffr0svvdT/i1qMhBMAACCIzZw5U6NHj9bIkSPVqVMnzZs3Tw0bNtSiRYuqPcftdmv48OGaOnWqzjnnnABGa46EEwAAwMSJMZxWb5JUWlrqs1VUVJjGUFlZqa1btyo1NdW7LywsTKmpqdq4cWO1sT/66KOKj4/Xrbfeauk9qS0STgAAADMnlkWyepOUnJysuLg475adnW0awoEDB+R2u5WQkOCzPyEhQYWFhabnfPDBB1q4cKEWLFhg7f04DcxSBwAACLCCggLFxsZ6X0dFRVnS7qFDh3TzzTdrwYIFat68uSVtWoGEEwAAwISdyyLFxsb6JJzVad68ucLDw1VUVOSzv6ioSImJiScd/8033+jbb7/V4MGDvfs8Ho8kKSIiQl9//bXOPffc03gHtUOXOgAAQJCKjIxUz549lZOT493n8XiUk5OjPn36nHR8hw4d9NlnnykvL8+7XX311erfv7/y8vKUnJwcyPC9qHACAACYqeUyRr/app8yMjKUlpamXr16qXfv3po1a5bKy8s1cuRISdKIESPUsmVLZWdnKzo6Wp07d/Y5/4wzzpCkk/YHEgknAABAEBs2bJj279+vyZMnq7CwUN27d9eaNWu8E4ny8/MVFhbcndYknAAAACaC6dGW6enpSk9PN/1Zbm7uKc9dsmRJ7S5qoeBOhwEAAFDnUeEEAAAw4zGqNqvbDEEknAAAAGaCZNJQfUCXOgAAAGxFhRMAAMCESzZMGrK2uTqDCicAAABsRYUTAADAjGFUbVa3GYJIOAMkvKzC6RAU80O00yEoGD5yEYeDo7B/rJHzcRgRzv8+wo84HYEUWRqafwB+yeVxOgLpWKNwp0PQsV9/vHVAGEHQ99qg3LlruyuC4AbAMs7/tQEAAAhCwbTwe13nfIkFAAAA9RoVTgAAADOsw2kZEk4AAAATLsOQy+JJPla3V1fQpQ4AAABbUeEEAAAw4/nvZnWbIYgKJwAAAGxFhRMAAMAEYzitQ4UTAAAAtqLCCQAAYIZlkSxDhRMAAAC2cjTh3LBhgwYPHqykpCS5XC6tWrXK5+eGYWjy5Mlq0aKFYmJilJqaqh07djgTLAAACC2GYc8WghxNOMvLy9WtWzfNmTPH9OczZszQs88+q3nz5umTTz5Ro0aNNGDAAB09ejTAkQIAAKC2HB3DOXDgQA0cOND0Z4ZhaNasWXrkkUd0zTXXSJJefPFFJSQkaNWqVbrhhhsCGSoAAAgxLqNqs7rNUBS0Yzh3796twsJCpaamevfFxcUpJSVFGzdurPa8iooKlZaW+mwAAAB+o0vdMkGbcBYWFkqSEhISfPYnJCR4f2YmOztbcXFx3i05OdnWOAEAAHBqQZtw1lZmZqZKSkq8W0FBgdMhAQCAOsjlsWcLRUGbcCYmJkqSioqKfPYXFRV5f2YmKipKsbGxPhsAAACcE7QJZ9u2bZWYmKicnBzvvtLSUn3yySfq06ePg5EBAICQwBhOyzg6S72srEw7d+70vt69e7fy8vLUrFkztWrVSuPHj9fjjz+udu3aqW3btpo0aZKSkpI0ZMgQ54IGAACAXxxNOLds2aL+/ft7X2dkZEiS0tLStGTJEj344IMqLy/X7bffroMHD+qSSy7RmjVrFB0d7VTIAAAgVPBoS8s4mnD269dPxilKyy6XS48++qgeffTRAEYFAAAAKzmacAIAAAQrl2HIZfGYS6vbqytIOAEAAMzYMcknRBPOoJ2lDgAAgPqBCicAAIAZQ5LVC7WHZoGTCicAAADsRYUTAADABJOGrEOFEwAAALaiwgkAAGDGkA2z1K1trq6gwgkAAABbUeEEAAAwwzqcliHhDBDXkQqnQ1DkwWNOh6CwY87/hxaz3+V0CJIkT1QQxOH8ryMoRJS7nQ5BriD4Xbg8zgdxtFkDp0MIGkebOd8JGe7gny53pfOfR3kkWf1VbfUyS3WE859mAAAA1GtUOAEAAEywLJJ1qHACAADAVlQ4AQAAzDBpyDJUOAEAAILcnDlz1KZNG0VHRyslJUWbNm2q9tgFCxbo0ksvVdOmTdW0aVOlpqae8vhAIOEEAAAwc6LCafXmpxUrVigjI0NZWVnatm2bunXrpgEDBqi4uNj0+NzcXN14441at26dNm7cqOTkZF1xxRXau3fv6d6RWiPhBAAACGIzZ87U6NGjNXLkSHXq1Enz5s1Tw4YNtWjRItPjX375Zd19993q3r27OnTooBdeeEEej0c5OTkBjvx/SDgBAADM2FjhLC0t9dkqKswXPa2srNTWrVuVmprq3RcWFqbU1FRt3LixRm/j8OHDOnbsmJo1a3b696SWSDgBAADMeGzaJCUnJysuLs67ZWdnm4Zw4MABud1uJSQk+OxPSEhQYWFhjd7GhAkTlJSU5JO0Bhqz1AEAAAKsoKBAsbGx3tdRUVG2XGf69Olavny5cnNzFR0dbcs1aoKEEwAAwISdC7/Hxsb6JJzVad68ucLDw1VUVOSzv6ioSImJiac8989//rOmT5+u9957T127dq190BagSx0AACBIRUZGqmfPnj4Tfk5MAOrTp0+1582YMUOPPfaY1qxZo169egUi1FOiwgkAAGAmSBZ+z8jIUFpamnr16qXevXtr1qxZKi8v18iRIyVJI0aMUMuWLb3jQJ988klNnjxZy5YtU5s2bbxjPRs3bqzGjRtb9178QMIJAAAQxIYNG6b9+/dr8uTJKiwsVPfu3bVmzRrvRKL8/HyFhf2v03ru3LmqrKzUdddd59NOVlaWpkyZEsjQvUg4AQAAzHgMyWVxhdNTu/bS09OVnp5u+rPc3Fyf199++22trmEnxnACAADAVlQ4AQAAzATJGM76gIQTAADAlA0Jp0Iz4aRLHQAAALaiwgkAAGCGLnXLUOEEAACArahwAgAAmPEYsnzMZS2XRarrqHACAADAVlQ4AQAAzBieqs3qNkMQFU4AAADYigonAACAGWapW4aEEwAAwAyThixDlzoAAABsRYUTAADADF3qlqHCCQAAAFtR4QQAADBjyIYKp7XN1RX1PuE0/vtBOa5jzv6SPRUOXrzK8eNHnQ5Bx487/5HzeFxOhyBJ8oQFQRwh+sV3kuNupyOQKwh+F64gmMxw/Jjzv4tg4a4Mgk7ISucu7T5W9TfLCNEu6PrG+b/+Njt06JAk6QOtdjaQb529vKTgiAEAAD8cOnRIcXFxzlycMZyWqfcJZ1JSkgoKCtSkSRO5XP5XlEpLS5WcnKyCggLFxsbaEGHdwb2own2own2own2own2own2oYsV9MAxDhw4dUlJSksXRwQn1PuEMCwvT2WeffdrtxMbGhvSXx89xL6pwH6pwH6pwH6pwH6pwH6qc7n1wrLJ5gscjyeJHUXpC89GW9T7hBAAAqBW61C0TBCOSAQAAUJ9R4fwVUVFRysrKUlRUlNOhOI57UYX7UIX7UIX7UIX7UIX7UKXe3AcqnJZxGaw3AAAA4FVaWqq4uDilNh+liLBIS9s+7qnUewcWqaSkJKTG+VLhBAAAMOMxZPmCxUGw3q0TGMMJAAAAW1HhBAAAMGEYHhmGtcsYWd1eXUGFEwAAALYi4fwVc+bMUZs2bRQdHa2UlBRt2rTJ6ZACKjs7WxdeeKGaNGmi+Ph4DRkyRF9//bXTYTlu+vTpcrlcGj9+vNOhBNzevXv1pz/9SWeeeaZiYmLUpUsXbdmyxemwAs7tdmvSpElq27atYmJidO655+qxxx6r98993rBhgwYPHqykpCS5XC6tWrXK5+eGYWjy5Mlq0aKFYmJilJqaqh07djgTrI1OdR+OHTumCRMmqEuXLmrUqJGSkpI0YsQIff/9984FbJNf+zz83J133imXy6VZs2YFLL7TZhhVYy6t3Or5d0R1SDhPYcWKFcrIyFBWVpa2bdumbt26acCAASouLnY6tIBZv369xowZo48//ljvvvuujh07piuuuELl5eVOh+aYzZs3669//au6du3qdCgB99NPP6lv375q0KCB3n77bX3xxRd6+umn1bRpU6dDC7gnn3xSc+fO1ezZs/Xll1/qySef1IwZM/Tcc885HZqtysvL1a1bN82ZM8f05zNmzNCzzz6refPm6ZNPPlGjRo00YMAAHT16NMCR2utU9+Hw4cPatm2bJk2apG3btukf//iHvv76a1199dUORGqvX/s8nLBy5Up9/PHHde8xlSeWRbJ6C0Esi3QKKSkpuvDCCzV79mxJksfjUXJysu655x5NnDjR4eicsX//fsXHx2v9+vX67W9/63Q4AVdWVqYLLrhAzz//vB5//HF17969bv1r/TRNnDhRH374od5//32nQ3HcVVddpYSEBC1cuNC7749//KNiYmL00ksvORhZ4LhcLq1cuVJDhgyRVFXdTEpK0n333af7779fklRSUqKEhAQtWbJEN9xwg4PR2ueX98HM5s2b1bt3b+3Zs0etWrUKXHABVN192Lt3r1JSUrR27VoNGjRI48ePD/reoRPLIl0Wd7MiXBYvi2RUKqfk/wu5ZZGocFajsrJSW7duVWpqqndfWFiYUlNTtXHjRgcjc1ZJSYkkqVmzZg5H4owxY8Zo0KBBPp+LUPLGG2+oV69euv766xUfH68ePXpowYIFTofliIsvvlg5OTnavn27JOnf//63PvjgAw0cONDhyJyze/duFRYW+vz3ERcXp5SUlJD+3pSqvjtdLpfOOOMMp0MJKI/Ho5tvvlkPPPCAzj//fKfD8Z/HY88WgpilXo0DBw7I7XYrISHBZ39CQoK++uorh6Jylsfj0fjx49W3b1917tzZ6XACbvny5dq2bZs2b97sdCiO2bVrl+bOnauMjAw99NBD2rx5s8aOHavIyEilpaU5HV5ATZw4UaWlperQoYPCw8Pldrv1xBNPaPjw4U6H5pjCwkJJMv3ePPGzUHT06FFNmDBBN954Y0hVtKSqoScREREaO3as06HAYSScqLExY8bo888/1wcffOB0KAFXUFCgcePG6d1331V0dLTT4TjG4/GoV69emjZtmiSpR48e+vzzzzVv3ryQSzj/9re/6eWXX9ayZct0/vnnKy8vT+PHj1dSUlLI3QtU79ixYxo6dKgMw9DcuXOdDiegtm7dqmeeeUbbtm2Ty+VyOpzaMWxY+D1ERzLSpV6N5s2bKzw8XEVFRT77i4qKlJiY6FBUzklPT9ebb76pdevW6eyzz3Y6nIDbunWriouLdcEFFygiIkIRERFav369nn32WUVERMjtdjsdYkC0aNFCnTp18tnXsWNH5efnOxSRcx544AFNnDhRN9xwg7p06aKbb75Z9957r7Kzs50OzTEnvhv53qxyItncs2eP3n333ZCrbr7//vsqLi5Wq1atvN+be/bs0X333ac2bdo4HR4CjISzGpGRkerZs6dycnK8+zwej3JyctSnTx8HIwsswzCUnp6ulStX6l//+pfatm3rdEiOuOyyy/TZZ58pLy/Pu/Xq1UvDhw9XXl6ewsPDnQ4xIPr27XvSsljbt29X69atHYrIOYcPH1ZYmO9XaHh4uDwhOj5Lktq2bavExESf783S0lJ98sknIfW9Kf0v2dyxY4fee+89nXnmmU6HFHA333yz/vOf//h8byYlJemBBx7Q2rVrnQ6vRgyPx5YtFNGlfgoZGRlKS0tTr1691Lt3b82aNUvl5eUaOXKk06EFzJgxY7Rs2TK9/vrratKkiXccVlxcnGJiYhyOLnCaNGly0rjVRo0a6cwzzwyp8az33nuvLr74Yk2bNk1Dhw7Vpk2bNH/+fM2fP9/p0AJu8ODBeuKJJ9SqVSudf/75+vTTTzVz5kyNGjXK6dBsVVZWpp07d3pf7969W3l5eWrWrJlatWql8ePH6/HHH1e7du3Utm1bTZo0SUlJSaecwV0Xneo+tGjRQtddd522bdumN998U2632/vd2axZM0VGWjvr2Um/9nn4ZaLdoEEDJSYm6je/+U2gQ4XDWBbpV8yePVtPPfWUCgsL1b17dz377LNKSUlxOqyAqW7czeLFi3XLLbcENpgg069fv5BbFkmS3nzzTWVmZmrHjh1q27atMjIyNHr0aKfDCrhDhw5p0qRJWrlypYqLi5WUlKQbb7xRkydPrlcJxS/l5uaqf//+J+1PS0vTkiVLZBiGsrKyNH/+fB08eFCXXHKJnn/+ebVv396BaO1zqvswZcqUanuD1q1bp379+tkcXeD82ufhl9q0aVOnlkX6fcwwW5ZF+teRFSG3LBIJJwAAwM94E86oofYknBV/C7mEkzGcAAAAsBVjOAEAAMwYhiSLJ/mEaMcyFU4AAADYigonAACACcNjyHBZW5EM1akzVDgBAABgKyqcAAAAZgyPrB/DGZoLv1PhBAAACHJz5sxRmzZtFB0drZSUFG3atOmUx7/66qvq0KGDoqOj1aVLF61evTpAkZoj4QQAADBheAxbNn+tWLFCGRkZysrK0rZt29StWzcNGDBAxcXFpsd/9NFHuvHGG3Xrrbfq008/1ZAhQzRkyBB9/vnnp3tLao2F3wHUmsvl0sqVK+vVYwtD9QlSAP7nxMLv/Vz/pwhXA0vbPm4cU66x0q+F31NSUnThhRdq9uzZkiSPx6Pk5GTdc889mjhx4knHDxs2TOXl5XrzzTe9+y666CJ1795d8+bNs+aN+IkKJwBT+/fv11133aVWrVopKipKiYmJGjBggD788EPvMfv27dPAgQMlSd9++61cLpfy8vIcihgArHXcqNBxj8WbUSGpKqn9+VZRUWEaQ2VlpbZu3arU1FTvvrCwMKWmpmrjxo2m52zcuNHneEkaMGBAtccHApOGAJj64x//qMrKSi1dulTnnHOOioqKlJOTox9++MF7TGJiooMR1h1ut1sul0thYfwbH6gLIiMjlZiYqA8K7Rn32LhxYyUnJ/vsy8rK0pQpU0469sCBA3K73UpISPDZn5CQoK+++sq0/cLCQtPjCwsLTy/w08C3H4CTHDx4UO+//76efPJJ9e/fX61bt1bv3r2VmZmpq6++2nucy+XSqlWrJElt27aVJPXo0UMul0v9+vXzHvfCCy+oY8eOio6OVocOHfT888+f8vr9+vXT2LFj9eCDD6pZs2ZKTEz0+SI2q6YePHhQLpdLubm5kqTc3Fy5XC6tXbtWPXr0UExMjH7/+9+ruLhYb7/9tjp27KjY2FjddNNNOnz4sM/1jx8/rvT0dMXFxal58+aaNGmSz9p5FRUVuv/++9WyZUs1atRIKSkp3utK0pIlS3TGGWfojTfeUKdOnRQVFaX8/Pwa3HkAwSA6Olq7d+9WSUmJLdt333130r7MzEyn37atqHACOEnjxo3VuHFjrVq1ShdddJGioqJ+9ZxNmzapd+/eeu+993T++ecrMjJSkvTyyy9r8uTJmj17tnr06KFPP/1Uo0ePVqNGjZSWllZte0uXLlVGRoY++eQTbdy4Ubfccov69u2ryy+/3K/3MmXKFM2ePVsNGzbU0KFDNXToUEVFRWnZsmUqKyvT//3f/+m5557ThAkTfK596623atOmTdqyZYtuv/12tWrVSqNHj5Ykpaen64svvtDy5cuVlJSklStX6sorr9Rnn32mdu3aSZIOHz6sJ598Ui+88ILOPPNMxcfH+xU3AGdFR0crOjra6TDUvHlzhYeHq6ioyGd/UVFRtb1MiYmJfh0fEAYAmHjttdeMpk2bGtHR0cbFF19sZGZmGv/+9799jpFkrFy50jAMw9i9e7chyfj00099jjn33HONZcuW+ex77LHHjD59+lR77d/97nfGJZdc4rPvwgsvNCZMmFDttX766SdDkrFu3TrDMAxj3bp1hiTjvffe8x6TnZ1tSDK++eYb77477rjDGDBggM+1O3bsaHg8Hu++CRMmGB07djQMwzD27NljhIeHG3v37vWJ77LLLjMyMzMNwzCMxYsXG5KMvLy8at8jANRU7969jfT0dO9rt9tttGzZ0sjOzjY9fujQocZVV13ls69Pnz7GHXfcYWucp0KXOgBTf/zjH/X999/rjTfe0JVXXqnc3FxdcMEFWrJkSY3bKC8v1zfffKNbb73VWzVt3LixHn/8cX3zzTenPLdr164+r1u0aFHtEiA1bSchIUENGzbUOeec47Pvl+1edNFFcrlc3td9+vTRjh075Ha79dlnn8ntdqt9+/Y+72n9+vU+7ykyMvKk9wAAtZGRkaEFCxZo6dKl+vLLL3XXXXepvLxcI0eOlCSNGDHCp0t+3LhxWrNmjZ5++ml99dVXmjJlirZs2aL09HSn3gJd6gCqFx0drcsvv1yXX365Jk2apNtuu01ZWVm65ZZbanR+WVmZJGnBggVKSUnx+Vl4ePgpz23QwHcpEpfLJY+n6gkdJybfGD8bV3ns2LFfbcflcp2y3ZooKytTeHi4tm7detJ7aNy4sff/x8TE+CStAFBbw4YN0/79+zV58mQVFhaqe/fuWrNmjXdiUH5+vs+kxIsvvljLli3TI488ooceekjt2rXTqlWr1LlzZ6feAgkngJrr1KmTd5LQL50Ys+l2u737EhISlJSUpF27dmn48OGWxXHWWWdJqlqWqUePHpJk6XJMn3zyic/rjz/+WO3atVN4eLh69Oght9ut4uJiXXrppZZdEwBOJT09vdoK5c8nLZ5w/fXX6/rrr7c5qpoj4QRwkh9++EHXX3+9Ro0apa5du6pJkybasmWLZsyYoWuuucb0nPj4eMXExGjNmjU6++yzFR0drbi4OE2dOlVjx45VXFycrrzySlVUVGjLli366aeflJGRUav4YmJidNFFF2n69Olq27atiouL9cgjj5zOW/aRn5+vjIwM3XHHHdq2bZuee+45Pf3005Kk9u3ba/jw4RoxYoSefvpp9ejRQ/v371dOTo66du2qQYMGWRYHANQXJJwATtK4cWOlpKToL3/5i7755hsdO3ZMycnJGj16tB566CHTcyIiIvTss8/q0Ucf1eTJk3XppZcqNzdXt912mxo2bKinnnpKDzzwgBo1aqQuXbpo/PjxpxXjokWLdOutt6pnz576zW9+oxkzZuiKK644rTZPGDFihI4cOaLevXsrPDxc48aN0+233+79+eLFi/X444/rvvvu0969e9W8eXNddNFFuuqqqyy5PgDUNzzaEgAAALZiljoAAABsRcIJAAAAW5FwAgAAwFYknAAAALAVCScAAABsRcIJAAAAW5FwAgAAwFYknAAAALAVCScAAABsRcIJAAAAW5FwAgAAwFb/P34aeCfcAA1xAAAAAElFTkSuQmCC", + "image/png": "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+QQAAIB6jQonAACACZZFsg4VTgAAANiKCicAAIAJlkWyDhVOAAAA2IoKJwAAgImqCqfVs9Qtba7OoMIJAAAAW1HhBAAAMME6nNYh4QQAADBh/Hezus1QRJc6AAAAbEXCCQAAYOJEl7rVmz82btyoIUOGKCkpSS6XS6tXr/7Vc3Jzc3X++ecrKipK5557rpYuXVq7G2ChOpVwzpgxQy6XSxMmTHA6FAAAANuVl5ere/fumjt3bo2O3717twYPHqwBAwYoLy9PEyZM0K233qp169bZHOmp1ZkxnJ988on++te/qlu3bk6HAgAAQkEQDOIcNGiQBg0aVOPj58+fr3bt2umpp56SJHXq1Envv/++/vKXv2jgwIH+XdxCdaLCWVZWphEjRmjhwoVq2rSp0+EAAACcltLSUp+toqLCknY3bdqk1NRUn30DBw7Upk2bLGm/tupEwjl27FgNHjz4pBtopqKi4qRfIgAAgN/sGL/53zGcycnJiouL827Z2dmWhFxYWKiEhASffQkJCSotLdWRI0csuUZtBH2X+ooVK7Rt2zZ98sknNTo+Oztb06ZNszkqAACA2isoKFBsbKz3dVRUlIPR2C+oK5wFBQUaP368XnrpJUVHR9fonMzMTJWUlHi3goICm6MEAAD1UdWjLa3fJCk2NtZnsyrhTExMVFFRkc++oqIixcbGKiYmxpJr1EZQVzi3bt2q4uJinX/++d59brdbGzdu1Jw5c1RRUaHw8HCfc6Kiour9vxIAAID96uKThvr27as1a9b47HvnnXfUt29fW6/7a4I64bz00kv12Wef+ewbNWqUOnbsqIkTJ56UbAIAANQnZWVl2rlzp/f17t27lZeXp2bNmql169bKzMzU3r179cILL0iS7rjjDs2ZM0cPPPCARo8erX/961/629/+pjfffNOptyApyBPOJk2aqEuXLj77GjVqpObNm5+0HwAAwFI/m+RjaZt+2LJliwYMGOB9nZGRIUlKS0vT0qVLtW/fPuXn53t/3q5dO7355pu655579PTTT+uss87S888/7+iSSFKQJ5wAAAChrH///jKM6hfvNHuKUP/+/fXpp5/aGJX/6lzCmZub63QIAAAgBPx8ko+VbYaioJ6lDgAAgLqvzlU4AQAAAiIIHm1ZX1DhBAAAgK2ocAIAAJioi+twBisSTgAAgOqEaBe41ehSBwAAgK2ocAIAAJigS906VDgBAABgKyqcAAAAZlgWyTIknAHiiQiCEnoQhBDRwO10CGoaedjpECRJZ0cVOx2C2keUOR2C4sMbOx2CDnrKnQ5B4R7n/wq1iTzgdAjaVxnndAiKjT7qdAiSpKNxzv+JPrI/0rFrexy7Muzg/KcZAAAgKLlkfbUmCKo/DmAMJwAAAGxFhRMAAMAMYzgtQ8IJAABghoTTMnSpAwAAwFZUOAEAAMwYrqrN6jZDEBVOAAAA2IoKJwAAgAnDqNqsbjMUUeEEAACArU4r4dy4caOOHg2OJzIAAABYyrBpqwOysrK0Z88ey9o7rYRzwIABys/PtyoWAAAABIHXXntN55xzji699FItX75cFRUVp9XeaSWcRqgORAAAAPXfiVnqVm91QF5enj755BOdd955Gj9+vBITE3XnnXfqk08+qVV7jOEEAAAw4TLs2eqKnj176plnntH333+vRYsW6bvvvlO/fv3UrVs3Pf300yopKalxWyScAAAAqJZhGDp27JgqKytlGIaaNm2qOXPmKDk5WStXrqxRGyScAAAAZkJ40pAkbd26Venp6WrZsqXuuece9ezZU19++aU2bNigHTt26PHHH9e4ceNq1BYJJwAAAHx07dpVF154oXbv3q1FixapoKBAM2bM0Lnnnus95oYbbtD+/ftr1J7fCafH49Frr73ms++dd95ReXm5v00BAAAErxCeNDRs2DB9++23evPNNzV06FCFh4efdEyLFi3k8Xhq1J7fCef27duVlpam6dOny+VyaeXKlbr66qv14Ycf+tsUAAAAgtDkyZPVqlUrSVVjOE93ZSK/E86OHTtq3bp1evLJJ2UYhh577DG98MILuuyyy04rEAAAgKAS4mM4Fy1apC5duig6OlrR0dHq0qWLnn/++Vq1VasxnCkpKXr77bd19tln6+WXX9a1115bq4sDAAAg+EyZMkXjx4/XkCFD9Morr+iVV17RkCFDdM8992jKlCl+txdR20AuuOAC7dy5s7anAwAABDc7KpJ1pMI5b948LVy4UDfccIN331VXXaVu3brp7rvv1iOPPOJXe7VOOAEAAOq1EE44jx07pt69e5+0v1evXjp+/Ljf7bEsEgAAAHzcdNNNmjdv3kn7FyxYoBEjRvjdHhVOAAAAM3YsY1RHlkWSqiYNvf3227rwwgslSR9//LHy8/M1cuRIZWRkeI+bNWvWr7ZFwgkAAAAfn3/+uc4//3xJ0jfffCOpat3NFi1a6PPPP/ce53LVLIGudcK5c+dOffPNN/rtb3+rmJgYGYZR44sCAAAEO5dRtVndZl2wfv16S9vzewznDz/8oNTUVHXo0EF/+MMftG/fPknSLbfconvvvdfS4AAAAOCs7777Tt99991pteF3wnnPPfcoIiJC+fn5atiwoXf/8OHDtXbt2tMKBgAAIGiE8MLvHo9HjzzyiOLi4tSmTRu1adNGZ5xxhh599NEaP87y5/zuUn/77be1bt06nXXWWT7727dvrz179vgdAAAAAILLQw89pEWLFmnGjBnq16+fJOn999/X1KlTdfToUT3++ON+ted3wlleXu5T2Tzhxx9/VFRUlL/NAQAAIMgsW7ZMzz//vK666irvvm7duqlVq1a66667/E44/e5Sv+SSS/TCCy94X7tcLnk8Hs2cOVMDBgzwtzkAAAAEmR9//FEdO3Y8aX/Hjh31448/+t2e3xXOmTNn6tJLL9WWLVtUWVmpBx54QP/v//0//fjjj/rggw/8DgAAACAYuWTDLHVrm7NN9+7dNWfOHD3zzDM+++fMmaPu3bv73Z7fCWeXLl20fft2zZkzR02aNFFZWZmuueYajR07Vi1btvQ7gFDh8jg/StgIgudKucKcvw/4n2iX8x+KYne50yHoqBHudAiqDIIHv4W5/J8IYLW4iCNOh6CocP8f22eHiqMNnA5BnhjnPhMeOf95DOWF32fOnKnBgwfr3XffVd++fSVJmzZtUkFBgdasWeN3e7VahzMuLk4PPfRQbU4FAABAkPvd736n7du3a+7cufrqq68kSddcc43uuusuJSUl+d1erRLOo0eP6j//+Y+Ki4tPmhr/88GlAAAAdZYdyxjVsr25c+fqySefVGFhobp3765nn31Wffr0qfb42bNna968ecrPz1eLFi107bXXKjs7W9HR0b96rWPHjumKK67Q/Pnz/Z4cVB2/E861a9dq5MiROnDgwEk/c7lccrvdlgQGAAAAaeXKlcrIyND8+fOVkpKi2bNna+DAgfr6668VHx9/0vHLly/XpEmTtHjxYl100UXavn27br75Zrlcrho997xBgwb6z3/+Y+l78HvQ0N13363rrrtO+/btk8fj8dlINgEAQL0RJAu/z5o1S2PGjNGoUaPUuXNnzZ8/Xw0bNtTixYtNj//www/Vr18/3XjjjWrbtq0uv/xy3XDDDdq8eXONr/mnP/1JixYt8j/Yavhd4SwqKlJGRoYSEhIsCwIAACCUlJaW+ryOiooyXc+8srJSW7duVWZmpndfWFiYUlNTtWnTJtO2L7roIr344ovavHmz+vTpo127dmnNmjW66aabahzf8ePHtXjxYr377rvq1auXGjVq5PPzmlRKf87vhPPaa69Vbm6uzjnnHH9PBQAAqDNchg3LIv23veTkZJ/9WVlZmjp16knHHzhwQG63+6RCX0JCgncyzy/deOONOnDggC6++GIZhqHjx4/rjjvu0IMPPljjOD///HOdf/75kqTt27fX+Lzq+J1wzpkzR9ddd53ee+89de3aVQ0a+C7bMG7cuNMOCgAAoD4rKChQbGys97WVT2vMzc3V9OnT9dxzzyklJUU7d+7U+PHj9eijj2ry5Mk1amP9+vWWxSPVIuF8+eWX9fbbbys6Olq5ublyuf63npTL5SLhBAAA9YONs9RjY2N9Es7qtGjRQuHh4SoqKvLZX1RUpMTERNNzJk+erJtuukm33nqrJKlr164qLy/XbbfdpoceekhhYb8+hWf06NF6+umn1aRJE5/95eXluvvuu6sdP1odvycNPfTQQ5o2bZpKSkr07bffavfu3d5t165d/jYHAAAQnIJg0lBkZKR69eqlnJwc7z6Px6OcnBzvguy/dPjw4ZOSyvDwqgdcGEbNAli2bJmOHDn5QQxHjhzxecR5Tfld4aysrNTw4cNrlB0DAADg9GRkZCgtLU29e/dWnz59NHv2bJWXl2vUqFGSpJEjR6pVq1bKzs6WJA0ZMkSzZs1Sz549vV3qkydP1pAhQ7yJZ3VKS0tlGIYMw9ChQ4d81u10u91as2aN6VJMv8bvhDMtLU0rV670a+ApAABAXWPnpCF/DB8+XPv379eUKVNUWFioHj16aO3atd6JRPn5+T6FwIcfflgul0sPP/yw9u7dqzPPPFNDhgyp0SLuZ5xxhlwul1wulzp06HBy/C6Xpk2b5vd78DvhdLvdmjlzptatW6du3bqdNGnI32nyAAAAOLX09HSlp6eb/iw3N9fndUREhLKyspSVleX3ddavXy/DMPT73/9ef//739WsWTPvzyIjI9WmTZvAPNrys88+U8+ePSVVTZn/uZ9PILLK3r17NXHiRL311ls6fPiwzj33XC1ZskS9e/e2/FoAAABehqtqs7rNIPa73/1OkrR7924lJydbNoTS74TT6mnyp/LTTz+pX79+GjBggN566y2deeaZ2rFjh5o2bRqwGAAAAEJNmzZtdPDgQW3evFnFxcXyeDw+Px85cqRf7fmdcAbSE088oeTkZC1ZssS7r127dg5GBAAAQoaNyyIFu3/+858aMWKEysrKFBsbe9IymLYknNdcc42WLl2q2NhYXXPNNac89h//+IdfAZzK66+/roEDB+q6667Thg0b1KpVK911110aM2ZMtedUVFSooqLC+/qXj44CAADAqd17770aPXq0pk+froYNG552ezXqmI+Li/NmtnFxcafcrLRr1y7NmzdP7du317p163TnnXdq3LhxWrZsWbXnZGdn+8Tzy0dHAQAA1MSJWepWb3XB3r17NW7cOEuSTamGFc4lS5bokUce0X333efTvW03j8ej3r17a/r06ZKknj176vPPP9f8+fOVlpZmek5mZqYyMjK8r0tLS0k6AQCA/0K4S33gwIHasmWLzj77bEvaq/EYzmnTpumOO+6wLNOtiZYtW6pz584++zp16qS///3v1Z4TFRVl6fNIAQAAQs3gwYN1//3364svvlDXrl1PWgbzqquu8qu9GiecNX0UkpX69eunr7/+2mff9u3b1aZNm4DHAgAAQowdXeB1pMJ5Yr7MI488ctLPXC6X3G63X+35NUvdjnU2T+Wee+7RRRddpOnTp2vYsGHavHmzFixYoAULFgQ0DgAAgFDyy2WQTpdfq3l26NBBzZo1O+VmpQsuuECrVq3Syy+/rC5duujRRx/V7NmzNWLECEuvAwAAcBLDpi2I/eEPf1BJSYn39YwZM3Tw4EHv6x9++OGk4Y414VeFc9q0aZbPRP81V155pa688sqAXhMAACAUrVu3zmd5yRO9zGeccYYk6fjx4ycNd6wJvxLO66+/XvHx8X5fBAAAoM4JwVnqv5yzY9Ucnhp3qQd6/CYAAADqh6CepQ4AAOAUOxZqD/aF310u10lFRiuKjjVOOK2erQQAAIDgYhiGbr75Zu+a5kePHtUdd9yhRo0aSZLP+E5/+DWGEwAAAPXXL5/k+Kc//emkY0aOHOl3uyScAAAAZkJw0pBdjzD3ax1OAAAAwF9UOAEAAEyE4qQhu1DhBAAAgK2ocAIAAFQn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QoK++uor0/YLCwtNjy8sLDy9wE8D334ATnLw4EG99957euKJJzRgwAC1adNGffr0UWZmpq666irvcS6XS6tXr5YktWvXTpLUs2dPuVwu9e/f33vc888/r06dOik6OlodO3bUc889d8rr9+/fX+PGjdMDDzygZs2aKTEx0eeL2KyaevDgQblcLuXm5kqScnNz5XK5tG7dOvXs2VMxMTH6/e9/r+LiYr311lvq1KmTYmNjdeONN+rw4cM+1z9+/LjS09MVFxenFi1aaPLkyT5r51VUVOi+++5Tq1at1KhRI6WkpHivK0lLly7VGWecoddff12dO3dWVFSU8vPza3DnAQSD6Oho7d69WyUlJbZs33333Un7MjMznX7btqLCCeAkjRs3VuPGjbV69WpdeOGFioqK+tVzNm/erD59+ujdd9/Veeedp8jISEnSSy+9pClTpmjOnDnq2bOnPv30U40ZM0aNGjVSWlpate0tW7ZMGRkZ+vjjj7Vp0ybdfPPN6tevny677DK/3svUqVM1Z84cNWzYUMOGDdOwYcMUFRWl5cuXq6ysTP/3f/+nZ599VhMnTvS59i233KLNmzdry5Ytuu2229S6dWuNGTNGkpSenq4vvvhCK1asUFJSklatWqUrrrhCn332mdq3by9JOnz4sJ544gk9//zzat68ueLj4/2KG4CzoqOjFR0d7XQYatGihcLDw1VUVOSzv6ioqNpepsTERL+ODwgDAEy8+uqrRtOmTY3o6GjjoosuMjIzM41///vfPsdIMlatWmUYhmHs3r3bkGR8+umnPsecc845xvLly332Pfroo0bfvn2rvfbvfvc74+KLL/bZd8EFFxgTJ06s9lo//fSTIclYv369YRiGsX79ekOS8e6773qPyc7ONiQZ33zzjXff7bffbgwcONDn2p06dTI8Ho9338SJE41OnToZhmEYe/bsMcLDw429e/f6xHfppZcamZmZhmEYxpIlSwxJRl5eXrXvEQBqqk+fPkZ6err3tdvtNlq1amVkZ2ebHj9s2DDjyiuv9NnXt29f4/bbb7c1zlOhSx2AqT/+8Y/6/vvv9frrr+uKK65Qbm6uzj//fC1durTGbZSXl+ubb77RLbfc4q2aNm7cWI899pi++eabU57brVs3n9ctW7asdgmQmraTkJCghg0b6uyzz/bZ98t2L7zwQrlcLu/rvn37aseOHXK73frss8/kdrvVoUMHn/e0YcMGn/cUGRl50nsAgNrIyMjQwoULtWzZMn355Ze68847VV5erlGjRkmSRo4c6dMlP378eK1du1ZPPfWUvvrqK02dOlVbtmxRenq6U2+BLnUA1YuOjtZll12myy67TJMnT9att96qrKws3XzzzTU6v6ysTJK0cOFCpaSk+PwsPDz8lOc2aOC7FInL5ZLHU/WEjhOTb4yfjas8duzYr7bjcrlO2W5NlJWVKTw8XFu3bj3pPTRu3Nj7/2NiYnySVgCoreHDh2v//v2aMmWKCgsL1aNHD61du9Y7MSg/P99nUuJFF12k5cuX6+GHH9aDDz6o9u3ba/Xq1erSpYtTb4GEE0DNde7c2TtJ6JdOjNl0u93efQkJCUpKStKuXbs0YsQIy+I488wzJVUty9SzZ09JsnQ5po8//tjn9UcffaT27dsrPDxcPXv2lNvtVnFxsS655BLLrgkAp5Kenl5thfLnkxZPuO6663TdddfZHFXNkXACOMkPP/yg6667TqNHj1a3bt3UpEkTbdmyRTNnztTVV19tek58fLxiYmK0du1anXXWWYqOjlZcXJymTZumcePGKS4uTldccYUqKiq0ZcsW/fTTT8rIyKhVfDExMbrwwgs1Y8YMtWvXTsXFxXr44YdP5y37yM/PV0ZGhm6//XZt27ZNzz77rJ566ilJUocOHTRixAiNHDlSTz31lHr27Kn9+/crJydH3bp10+DBgy2LAwDqCxJOACdp3LixUlJS9Je//EXffPONjh07puTkZI0ZM0YPPvig6TkRERF65pln9Mgjj2jKlCm65JJLlJubq1tvvVUNGzbUk08+qfvvv1+NGjVS165dNWHChNOKcfHixbrlllvUq1cv/eY3v9HMmTN1+eWXn1abJ4wcOVJHjhxRnz59FB4ervHjx+u2227z/nzJkiV67LHHdO+992rv3r1q0aKFLrzwQl155ZWWXB8A6hsebQkAAABbMUsdAAAAtiLhBAAAgK1IOAEAAGArEk4AAADYioQTAAAAtiLhBAAAgK1IOAEAAGArEk4AAADYioQTAAAAtiLhBAAAgK1IOAEAAGCr/x/b73gpvFpNMwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] @@ -548,7 +543,7 @@ }, { "data": { - "image/png": "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DCgAAIAJl1G1WR2ztrn66quVlZWlnTt3qlOnTmrQoIHP8+PHj69xTApQAAAAVGv58uVq3LixcnNzlZub6/Ocy+WiAAUAALAMk5AkSUePHrU8JveCBwAAwAWdPn1ahw4d0pkzZy45Vo0LUI/HozfffNNn3+bNm1VWVnbJyQAAAAQNJiFJkk6dOqXRo0erYcOG6tChg3cFpHHjxmnevHl+xaxxAXr48GGlpaVp7ty5crlcWrt2re6++259+OGHfiUAAACA4JWZmakDBw5o69atPmu/p6amau3atX7FrPEY0Hbt2mnTpk26/fbbZRiGZs+erVdeeUW33nqrXwkAAAAEJcaASpLWr1+vtWvX6oYbbvC5C1KHDh30xRdf+BXTrzGgKSkpeuedd3TllVfq1Vdf1S9+8Qu/3hwAAADB7fjx44qLiztnf1lZmU9BWhN+T0Lq0aOHPv/8cw0ZMsTfEAAAAMHLCNBWy3Tv3l1///vfvY/PFp0vvPCCevXq5VdMlmECAAAwwyV4SdLcuXM1YMAAffLJJzpz5oyeffZZffLJJ/rwww/PWRf0YrEMEwAAAKp10003af/+/Tpz5ow6deqkd955R3FxcdqxY4euv/56v2LSAQUAADATiGWTauEyTJJ01VVXacWKFZbFowAFAADABRUVFamoqEgej8dnf+fOnWscy+8C9PPPP9cXX3yhm2++WVFRUTIMw++ZUAAAAMHGZVRtVsesbfLy8pSWlqZPP/1UhuH7AVwul9xud41j1rgA/e6773Tvvffqvffek8vl0pEjR3TllVdq9OjRatq0qZ566qkaJwEAAIDg9MADD6ht27Z68cUXFR8fb0nDscYF6MSJExUWFqZjx46pffv23v333nuvMjIyKEABAEDdwCx4SdKXX36pv/71r7r66qsti1njAvSdd97Rpk2b1LJlS5/9bdq00VdffWVZYgAAAHBev379dODAAWcL0LKyMjVs2PCc/SdOnFBERIQlSQEAACA4vPDCC0pLS9PBgwfVsWNHNWjQwOf5u+66q8Yxa1yA/vznP9fLL7+sJ598UlLV4FOPx6MFCxaob9++NU4AAAAAwWvHjh364IMPtGHDhnOes20S0oIFC9SvXz/t3btXp0+f1pQpU/Q///M/OnHihD744IMaJwAAABCMXArALHhrw9li3Lhx+vWvf62srCzFx8dbErPG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KAAAAGxGBxQAAMCE4TFkuKztWDL1pgodUAAAANiKDigAAIAZwyPrx4CyEL1EBxQAAAA2owMKAABggjGggUMHFIDfXC6X1q9f73QalurTp0/Q36UFAGo7ClAApo4fP66HH35YrVq1UkREhBISEtS/f3998MEH3mO+/fZbDRgwQJL0v//7v3K5XNq/f79DGQOAtc4YFTrjsXgzKpz+WEGBS/AATA0dOlSnT5/W6tWrdeWVV6qwsFA5OTn67rvvvMckJCQ4mGHt4Xa75XK5FBLC//mB2iA8PFwJCQnaXvDfAYmfkJCg8HBrb/FZ2/BtCOAcxcXFev/99zV//nz17dtXV1xxhXr27KnMzEzddddd3uN+egk+OTlZktStWze5XC716dPHe9wLL7yg9u3bKzIyUu3atdPzzz9/3vfv06ePxo8frylTpqhZs2ZKSEjQE0884X3erNtaXFwsl8ulrVu3SpK2bt0ql8ulTZs2qVu3boqKitItt9yioqIibdiwQe3bt1dMTIx+9atf6dSpUz7vf+bMGY0dO1axsbG67LLLlJWV5TNuq6KiQo899ph+9rOfqVGjRkpJSfG+ryStWrVKTZo00VtvvaVrr71WEREROnbs2EWceQDBIDIyUkePHlVJSUlAtqNHjyoyMtLpj+koOqAAztG4cWM1btxY69ev1w033KCIiIgLvmb37t3q2bOn3n33XXXo0MH7v/tXXnlF06dP15IlS9StWzd99NFHGjNmjBo1aqS0tLRq461evVoZGRnatWuXduzYofvvv1+9e/fWrbfeWqPP8sQTT2jJkiVq2LChhg8fruHDhysiIkJr1qzRyZMndc8992jx4sWaOnWqz3uPHj1au3fv1t69e/Xggw+qVatWGjNmjCRp7Nix+uSTT/Taa68pMTFR69at0+23366PP/5Ybdq0kSSdOnVK8+fP1wsvvKDmzZsrLi6uRnkDcFZkZGS9LxIDygAAE3/5y1+Mpk2bGpGRkcaNN95oZGZmGgcOHPA5RpKxbt06wzAM4+jRo4Yk46OPPvI55qqrrjLWrFnjs+/JJ580evXqVe17/8d//Idx0003+ezr0aOHMXXq1Grf6/vvvzckGVu2bDEMwzC2bNliSDLeffdd7zHZ2dmGJOOLL77w7nvooYeM/v37+7x3+/btDY/H4903depUo3379oZhGMZXX31lhIaGGl9//bVPfv369TMyMzMNwzCMlStXGpKM/fv3V/sZAaA+4xI8AFNDhw7VN998o7feeku33367tm7dquuuu06rVq266BhlZWX64osvNHr0aG9XtXHjxpo9e7a++OKL8762c+fOPo9btGihoqKiGn+On8aJj49Xw4YNdeWVV/rs+/e4N9xwg1wul/dxr169dOTIEbndbn388cdyu91q27atz2fKzc31+Uzh4eHnfAYAQBUuwQOoVmRkpG699VbdeuutysrK0m9/+1vNmDFD999//0W9/uTJk5KkFStWKCUlxee50NDQ8762QYMGPo9dLpc8nqo7iJydzGP8ZFxmZWXlBeO4XK7zxr0YJ0+eVGhoqPLy8s75DI0bN/b+OSoqyqeIBQD8PxSgAC7atddeW+26n2fHfLrdbu+++Ph4JSYm6ssvv9TIkSMty+Pyyy+XVLUMVLdu3STJ0uWfdu3a5fN4586datOmjUJDQ9WtWze53W4VFRXp5z//uWXvCQD1CQUogHN89913GjZsmB544AF17txZ0dHR2rt3rxYsWKC7777b9DVxcXGKiorSxo0b1bJlS0VGRio2NlYzZ87U+PHjFRsbq9tvv10VFRXau3evvv/+e2VkZPiVX1RUlG644QbNmzdPycnJKioq0uOPP34pH9nHsWPHlJGRoYceekj79u3T4sWL9dRTT0mS2rZtq5EjR+q+++7TU089pW7duun48ePKyclR586dNXDgQMvyAIC6igIUwDkaN26slJQUPfPMM/riiy9UWVmppKQkjRkzRr///e9NXxMWFqZFixZp1qxZmj59un7+859r69at+u1vf6uGDRvqD3/4gyZPnqxGjRqpU6dOl3y3oZdeekmjR4/W9ddfr2uuuUYLFizQbbfddkkxz7rvvvv0448/qmfPngoNDdWjjz6qBx980Pv8ypUrNXv2bE2aNElff/21LrvsMt1www0aNGiQJe8PAHWdyzC4KSkAAADswyx4AAAA2IoCFAAAALaiAAUAAICtKEABAABgKwpQAAAA2IoCFAAAALaiAAUAAICtKEABAABgKwpQAAAA2IoCFAAAALaiAAUAAICt/n/ie9gjS2Vf6QAAAABJRU5ErkJggg==", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAqAAAAHvCAYAAACL2m3hAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/H5lhTAAAACXBIWXMAAA9hAAAPYQGoP6dpAABB40lEQVR4nO3de3gU9dn/8c8mIQcgCQfNqQSJCoKcFYiItVCiiGBFKIgPrREpWg0gBDm1BgoCAVoVORQKKuDvEcW2gtYWECPEohyDUHlUQKWSR02CYhIJJoTd+f2Rso8rEyDL7Mwmeb+ua66LnZ29995JWG7u+X6/4zIMwxAAAABgkxCnEwAAAED9QgEKAAAAW1GAAgAAwFYUoAAAALAVBSgAAABsRQEKAAAAW1GAAgAAwFYUoAAAALAVBSgAAABsRQEKAAAAW1GAAgAA/EB5eblKS0sDspWXl190Hm+//bbuuOMOJSUlyeVyacOGDT7PG4ah6dOnKzExUVFRUUpLS9ORI0d8jjlx4oRGjBihmJgYNWnSRKNGjdLJkyetOE1+C3P03QEAAIJMeXm5Uq5orIIid0DiJyQk6OjRo4qMjLzgsWVlZercubPuv/9+DR48+JznFyxYoEWLFmnNmjVKSUlRVlaW+vXrpw8++MAbf8SIEfryyy+1ZcsWVVZWauTIkXrggQe0du1ayz/bxXIZhmE49u4AAABBprS0VLGxsfosr5Vioq29WFz6rUdXXP9vlZSUKCYmpkavdblcWr9+vQYNGiSpqvuZlJSkiRMn6tFHH5UklZSUKD4+XqtXr9bw4cP14Ycf6tprr9WePXvUrVs3SdKmTZt0++2363//93+VlJRk6ee7WHRAAQAATDSOdqlxtMvSmB5VxSstLfXZHxERoYiIiBrFOnr0qAoKCpSWlubdFxsbq9TUVO3YsUPDhw/Xjh071KRJE2/xKUlpaWkKCQnRrl27dNddd13Cp/EfY0ABAABslpycrNjYWO+WnZ1d4xgFBQWSpPj4eJ/98fHx3ucKCgoUFxfn83xYWJiaNWvmPcYJdEABAABMuA2P3BYPVHQbHklSfn6+zyX4mnY/azs6oAAAADaLiYnx2fwpQBMSEiRJhYWFPvsLCwu9zyUkJKioqMjn+TNnzujEiRPeY5xAAQoAAGDCIyMgm1VSUlKUkJCgnJwc777S0lLt2rVLPXv2lCT17NlTxcXFysvL8x7z1ltvyePxKDU11bJcaopL8AAAAEHq5MmT+vjjj72Pjx49qv3796tZs2Zq2bKlxo8fr9mzZ6t169beZZiSkpK8M+XbtWun2267TaNHj9by5ctVWVmpMWPGaPjw4Y7NgJcoQAEAAEx55JEnADFrYu/everTp4/3cWZmpiQpPT1dq1ev1uTJk1VWVqYHHnhAxcXFuummm7Rp0yafNUZfeOEFjRkzRn379lVISIiGDBmiRYsWWfOB/MQ6oAAAAN9zdh3Q/I9+FJB1QJPbfu7XOqB1CWNAAQAAYCsuwQMAAJiwetLQ2ZigAwoAAACb0QEFAAAw4ZEhNx3QgKADCgAAAFvRAQUAADDBGNDAoQMKAAAAW9EBBQAAMOE2DLktXi7d6ni1FQUoAACACc9/NqtjgkvwAAAAsBkdUAAAABPuACzDZHW82ooOKAAAAGxFBxQAAMCE26jarI4JOqAAAACwGR1QAAAAE8yCDxw6oAAAALAVHVAAAAATHrnklsvymKAABQAAMOUxqjarY4JL8AAAALAZHVAAAAAT7gBcgrc6Xm1FBxQAAAC2ogMKAABggg5o4NT5AtTj8eiLL75QdHS0XC5+6AAA1AaGYejbb79VUlKSQkK4YFvX1PkC9IsvvlBycrLTaQAAAD/k5+erRYsWjry3x3DJY1i8DJPF8WqrOl+ARkdHS5Ju0u0KUwOHs4HoQgPAxTHq93o9Z1Sp7fqH999x1C11vgA9e9k9TA0U5qIAdRwFKABcpPpdgJ79+E4On2MMaODU+QIUAADAH26FyG3xgkFuS6PVXozqBQAAgK3ogAIAAJgwAjAJyWASkiQ6oAAAALAZHVAAAAATTEIKHDqgAAAAsBUdUAAAABNuI0Ruw+JZ8PV8da2z6IACAADAVnRAAQAATHjkksfiXp2nvt9g4D9qRQd06dKlatWqlSIjI5Wamqrdu3c7nRIAAKjjzk5CsnpDLShA161bp8zMTM2YMUP79u1T586d1a9fPxUVFTmdGgAAAPwQ9AXok08+qdGjR2vkyJG69tprtXz5cjVs2FDPPfec06kBAIA67OwkJKs3BHkBevr0aeXl5SktLc27LyQkRGlpadqxY4fpayoqKlRaWuqzAQAAIHgEdQH61Vdfye12Kz4+3md/fHy8CgoKTF+TnZ2t2NhY75acnGxHqgAAoI6pmoRk/YYgL0D9MW3aNJWUlHi3/Px8p1MCAADA9wT1MkyXXXaZQkNDVVhY6LO/sLBQCQkJpq+JiIhQRESEHekBAIA6zKMQuVmGKSCCugMaHh6u66+/Xjk5Od59Ho9HOTk56tmzp4OZAQAAwF9B3QGVpMzMTKWnp6tbt27q0aOHFi5cqLKyMo0cOdLp1AAAQB0WmFtx0gGVakEBevfdd+v48eOaPn26CgoK1KVLF23atOmciUkAAABW8iiEOyEFSNAXoJI0ZswYjRkzxuk0AAAAYIFaUYACAADYzW245DasXTbJ6ni1VVBPQgIAAEDdQwcUAADAhDsAyzC5GQMqiQ4oAAAAbEYHFAAAwITHCJHH4mWYPCzDJIkOKAAAAGxGBxQAAMAEY0ADhwIUAADAhEfWL5vksTRa7cUleAAAANiKDigAAICJwNyKk96fRAFqH1cQ3PnA5fwvvSs01OkUgkeI878TrmD4vUTQMIJhdq4nCHIwguMiqREM58LjdjoD1FEUoAAAACbcRojcFi/DZHW82oqzAAAAAFvRAQUAADDhkUseWT0LnqFPEh1QAAAA2IwOKAAAgAnGgAYOZwEAAAC2ogMKAABgIjC34qT3J1GAAgAAmPIYLnmsvhWnxfFqK8pwAAAA2IoOKAAAgAlPAC7BcyvOKpwFAAAA2IoOKAAAgAmPESKPxcsmWR2vtuIsAAAAwFZ0QAEAAEy45ZLb4ltnWh2vtqIDCgAAAFvRAQUAADDBGNDAoQAFAAAw4Zb1l8zdlkarvSjDAQAAYCs6oAAAACa4BB84nAUAAADYig4oAACACbcRIrfFHUur49VWnAUAAADYig4oAACACUMueSyeBW+wEL0kOqAAAACwGR1QAAAAE4wBDRzOAgAAgAmP4QrIVhNut1tZWVlKSUlRVFSUrrrqKj3++OMyDMN7jGEYmj59uhITExUVFaW0tDQdOXLE6tNhKQpQAACAIDV//nwtW7ZMS5Ys0Ycffqj58+drwYIFWrx4sfeYBQsWaNGiRVq+fLl27dqlRo0aqV+/fiovL3cw8/PjEjwAAIAJt0LktrhXV9N47777ru68804NGDBAktSqVSu9+OKL2r17t6Sq7ufChQv12GOP6c4775QkPf/884qPj9eGDRs0fPhwS/O3Ch1QAAAAm5WWlvpsFRUVpsfdeOONysnJ0eHDhyVJBw4c0Pbt29W/f39J0tGjR1VQUKC0tDTva2JjY5WamqodO3YE/oP4iQ4oAACACX/GbF5MTElKTk722T9jxgz97ne/O+f4qVOnqrS0VG3btlVoaKjcbrfmzJmjESNGSJIKCgokSfHx8T6vi4+P9z4XjChAAQAAbJafn6+YmBjv44iICNPjXn75Zb3wwgtau3at2rdvr/3792v8+PFKSkpSenq6XelajgIUAADAhEch8lg8WvFsvJiYGJ8CtDqTJk3S1KlTvWM5O3bsqM8++0zZ2dlKT09XQkKCJKmwsFCJiYne1xUWFqpLly6W5m6l+lOAulxVm1NvHxrq2Ht7BUEOrvBwp1OQKzRIhj4Hwc9DIUGQA6oYHqczkOvMGadTkFHpfA5yu53OoEow/Dyc/7Ws906dOqWQEN9/t0JDQ+XxVP1wUlJSlJCQoJycHG/BWVpaql27dumhhx6yO92LVn8KUAAAgBpwGy65LR4DWtN4d9xxh+bMmaOWLVuqffv2eu+99/Tkk0/q/vvvlyS5XC6NHz9es2fPVuvWrZWSkqKsrCwlJSVp0KBBluZuJQpQAAAAE4GchHSxFi9erKysLD388MMqKipSUlKSHnzwQU2fPt17zOTJk1VWVqYHHnhAxcXFuummm7Rp0yZFRkZamruVXMb3l9Kvg0pLSxUbG6verkEKczVwLA8uwVfhEvz3BMHPg0vwQSQYrnUGwyVfLsF7GcHw83AwhzNGpbbpVZWUlFzUWEkrna0dHnx7iCIaW1s7VJys1J9u/qsjnyuY0AEFAAAwYRgh8lh873aDe8FLYiF6AAAA2IwOKAAAgAm3XHLL4klIFserreiAAgAAwFZ0QAEAAEx4jJrPWr+YmKADCgAAAJvRAQUAADDhCcAseKvj1VYUoAAAACY8cslj8aQhq+PVVkFdhmdnZ6t79+6Kjo5WXFycBg0apEOHDjmdFgAAAC5BUBegubm5ysjI0M6dO7VlyxZVVlbq1ltvVVlZmdOpAQCAOu7sveCt3hDkl+A3bdrk83j16tWKi4tTXl6ebr75ZoeyAgAAwKUI6gL0h0pKSiRJzZo1czgTAABQ1zEJKXBqTQHq8Xg0fvx49erVSx06dKj2uIqKClVUVHgfl5aW2pEeAAAALlKtKUAzMjJ08OBBbd++/bzHZWdna+bMmTZlBQAA6iqPXNYvRM8seElBPgnprDFjxuj111/X1q1b1aJFi/MeO23aNJWUlHi3/Px8m7IEAADAxQjqDqhhGBo7dqzWr1+vbdu2KSUl5YKviYiIUEREhA3ZAQCAuswIwDqgBh1QSUFegGZkZGjt2rV69dVXFR0drYKCAklSbGysoqKiHM4OAADUZR4jAJfgWYZJUpBfgl+2bJlKSkrUu3dvJSYmerd169Y5nRoAAAD8FNQdUMMwnE4BAADUUyzDFDicBQAAANgqqDugAAAATmEMaODQAQUAAICt6IACAACY8ARgGSYWoq9CBxQAAAC2ogMKAABggjGggUMBCgAAYIICNHC4BA8AAABb0QEFAAAwQQc0cOiAAgAAwFZ0QO3icr7Wd4U5/+N2RUY6nYJcEeFOp1AlvIHTGciIcD4H/EflGaczkKui0ukUpPIKpzOQUV7udApVguF21G63g2/ukhw+BXRAA8f5qggAAAD1ivMtMQAAgCBkyPqF44Ogrx0U6IACAADAVnRAAQAATDAGNHAoQAEAAExQgAYOl+ABAABgKzqgAAAAJuiABg4dUAAAANiKDigAAIAJOqCBQwcUAAAAtqIDCgAAYMIwXDIs7lhaHa+2ogMKAAAAW9EBBQAAMOGRy/JbcVodr7aiAwoAAABb0QEFAAAwwSz4wKEABQAAMMEkpMDhEjwAAABsRQcUAADABJfgA4cOKAAAAGxFBxQAAMAEY0ADhw4oAAAAbEUHFAAAwIQRgDGgdECr0AEFAACAreiAAgAAmDAkGYb1MUEBCgAAYMojl1zcCz4guAQPAAAAW9EBBQAAMMEyTIFDBxQAAAC2ogMKAABgwmO45OJWnAFBBxQAAAC2ogMKAABgwjACsAwT6zBJogMKAAAAm9EBtUuI82M+XA2c/3G7GkY6nYKMxg2dTkGSdCbG+XNRGdPA6RRkhDn/dyMYVoZuUFrpdAoKO3na6RQUUlLmdArBo9L534kg+KvhKGbBB47zFQkAAEAQogANHC7BAwAAwFZ0QAEAAEywDFPg0AEFAACAreiAAgAAmGAZpsChAwoAAABb0QEFAAAwUdUBtXoWvKXhai06oAAAALAVHVAAAAATrAMaOBSgAAAAJgxZfzcorsBX4RI8AAAAbEUHFAAAwASX4AOnVhWg8+bN07Rp0/TII49o4cKFTqcDAABQ57ndbq1evVo5OTkqKiqSx+Pxef6tt96qccxaU4Du2bNHf/rTn9SpUyenUwEAAPUBg0AlSY888ohWr16tAQMGqEOHDnK5Lr2LWysK0JMnT2rEiBFauXKlZs+e7XQ6AAAA9cZLL72kl19+WbfffrtlMWvFJKSMjAwNGDBAaWlpFzy2oqJCpaWlPhsAAECN/WcMqJWbauEY0PDwcF199dWWxgz6AvSll17Svn37lJ2dfVHHZ2dnKzY21rslJycHOEMAAIC6a+LEiXr66adlWHgbp6C+BJ+fn69HHnlEW7ZsUWRk5EW9Ztq0acrMzPQ+Li0tpQgFAAA1VnUrTutj1jbbt2/X1q1btXHjRrVv314NGjTwef6VV16pccygLkDz8vJUVFSk6667zrvP7Xbr7bff1pIlS1RRUaHQ0FCf10RERCgiIsLuVAEAQB3DMkxVmjRporvuusvSmEFdgPbt21fvv/++z76RI0eqbdu2mjJlyjnFJwAAQF3z+eefa8qUKdq4caNOnTqlq6++WqtWrVK3bt0kSYZhaMaMGVq5cqWKi4vVq1cvLVu2TK1bt7bk/VetWmVJnO8L6gI0OjpaHTp08NnXqFEjNW/e/Jz9AAAAlgrEpKEaxvvmm2/Uq1cv9enTRxs3btTll1+uI0eOqGnTpt5jFixYoEWLFmnNmjVKSUlRVlaW+vXrpw8++OCihzBejOPHj+vQoUOSpGuuuUaXX36537GCugAFAACoz+bPn6/k5GSfLmRKSor3z4ZhaOHChXrsscd05513SpKef/55xcfHa8OGDRo+fPgl51BWVqaxY8fq+eef9y5CHxoaqnvvvVeLFy9Ww4YNaxwz6GfB/9C2bdu4CxIAAAi4s5OQrN4knbNkZEVFhWkOr732mrp166ahQ4cqLi5OXbt21cqVK73PHz16VAUFBT5LVcbGxio1NVU7duyw5DxkZmYqNzdXf/vb31RcXKzi4mK9+uqrys3N1cSJE/2KWesKUAAAgNouOTnZZ9nI6pab/PTTT73jOTdv3qyHHnpI48aN05o1ayRJBQUFkqT4+Hif18XHx3ufu1R//etf9eyzz6p///6KiYlRTEyMbr/9dq1cuVJ/+ctf/IrJJXgAAAAzAbwVZ35+vmJiYry7q1vBx+PxqFu3bpo7d64kqWvXrjp48KCWL1+u9PR0i5Mzd+rUqXMKXEmKi4vTqVOn/IpJBxQAAMBmZzuJZ7fqCtDExERde+21PvvatWunY8eOSZISEhIkSYWFhT7HFBYWep+7VD179tSMGTNUXl7u3ffdd99p5syZ6tmzp18x6YACAACYCIZ1QHv16uWdeX7W4cOHdcUVV0iqmpCUkJCgnJwcdenSRVLV+NJdu3bpoYcesiTnp59+Wv369VOLFi3UuXNnSdKBAwcUGRmpzZs3+xWTAhQAAKA6Dt+5aMKECbrxxhs1d+5cDRs2TLt379aKFSu0YsUKSZLL5dL48eM1e/ZstW7d2rsMU1JSkgYNGmRJDh06dNCRI0f0wgsv6KOPPpIk3XPPPRoxYoSioqL8ikkBCgAAEKS6d++u9evXa9q0aZo1a5ZSUlK0cOFCjRgxwnvM5MmTVVZWpgceeEDFxcW66aabtGnTJkvXAG3YsKFGjx5tWTwKUAAAABPBcAlekgYOHKiBAwdW+7zL5dKsWbM0a9asS0nNx2uvvab+/furQYMGeu2118577M9+9rMax6cABQAAgI9BgwapoKBAcXFx572U73K55Ha7axyfAhQAAMBMAJdhCnZn73j0wz9bhQLUJi6XxfeS9UeY8z9uI7yB0ymo8rKa3zIsEMoSzZfcsDWHBOdXYvOEO52BFFLpdAZS5FfO//1sVOh8DhFnrP+HrqZCviu/8EE2MEKc//sJVKe4uFhNmjTx+/X8dgMAAJhyBWirXebPn69169Z5Hw8dOlTNmjXTj370Ix04cMCvmBSgAAAAqNby5cuVnJwsSdqyZYvefPNNbdq0Sf3799ekSZP8iun89RYAAIBgVI/HgH5fQUGBtwB9/fXXNWzYMN16661q1aqVUlNT/YpJBxQAAMCMEaCtlmnatKny8/MlSZs2bVJaWpokyTAMv2bAS3RAAQAAcB6DBw/Wf/3Xf6l169b6+uuv1b9/f0nSe++9p6uvvtqvmBSgAAAAZgxX1WZ1zFrmqaeeUqtWrZSfn68FCxaocePGkqQvv/xSDz/8sF8xKUABAABQrQYNGujRRx89Z/+ECRP8jkkBCgAAYMIwqjarY9ZGR44c0datW1VUVHTOwvTTp0+vcTwKUAAAAFRr5cqVeuihh3TZZZcpISHB5+Y6LpfL/gL07bffVo8ePRQZGXkpYQAAAIIPyzBJkmbPnq05c+ZoypQplsW8pGWY+vTpo2PHjlmVCwAAAILMN998o6FDh1oa85IKUKO2DmQAAAC4kLOz4K3eapmhQ4fqjTfesDQmY0ABAABMuIyqzeqYtc3VV1+trKws7dy5Ux07dlSDBg18nh83blyNY1KAAgAAoForVqxQ48aNlZubq9zcXJ/nXC4XBSgAAIBlmIQkSTp69KjlMbkXPAAAAC7o9OnTOnTokM6cOXPJsWpcgHo8Hr366qs++7Zs2aKysrJLTgYAACBoMAlJknTq1CmNGjVKDRs2VPv27b0rII0dO1bz5s3zK2aNC9DDhw8rPT1dc+fOlcvl0rp163TnnXfq3Xff9SsBAAAABK9p06bpwIED2rZtm8/a72lpaVq3bp1fMWs8BrRt27bavHmzbrvtNhmGodmzZ+uFF17QLbfc4lcCAAAAQYkxoJKkDRs2aN26dbrhhht87oLUvn17ffLJJ37F9GsMaGpqqt544w1deeWVevHFF/Xzn//crzcHAABAcDt+/Lji4uLO2V9WVuZTkNaE35OQunfvro8//liDBw/2NwQAAEDwMgK01TLdunXT3//+d+/js0XnM888o549e/oVk2WYAAAAzHAJXpI0d+5c9e/fXx988IHOnDmjp59+Wh988IHefffdc9YFvVgswwQAAIBq3XTTTdq/f7/OnDmjjh076o033lBcXJx27Nih66+/3q+YdEABAADMBGLZpFq4DJMkXXXVVVq5cqVl8ShAAQAAcEFFRUUqKiqSx+Px2d+pU6cax/K7AP3444/1ySef6Oabb1ZUVJQMw/B7JhQAAECwcRlVm9Uxa5u8vDylp6frww8/lGH4fgCXyyW3213jmDUuQL/++mvdfffdeuutt+RyuXTkyBFdeeWVGjVqlJo2baonnniixkkAAAAgON1///1q06aNnn32WcXHx1vScKxxATphwgSFhYXp2LFjateunXf/3XffrczMTApQAABQNzALXpL06aef6q9//auuvvpqy2LWuAB94403tHnzZrVo0cJnf+vWrfXZZ59ZlhgAAACc17dvXx04cMDZArSsrEwNGzY8Z/+JEycUERFhSVIAAAAIDs8884zS09N18OBBdejQQQ0aNPB5/mc/+1mNY9a4AP3xj3+s559/Xo8//rikqsGnHo9HCxYsUJ8+fWqcAAAAAILXjh079M4772jjxo3nPGfbJKQFCxaob9++2rt3r06fPq3Jkyfrf/7nf3TixAm98847NU4AAAAgGLkUgFnw1oazxdixY/WLX/xCWVlZ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r6SkpHp3LlC9yspKDRs2TIZhaNmyZU6nY6u8vDw9/fTT2rdvn1wul9Pp+McIwEL0jHyUxCX4al122WUKDQ1VYWGhz/7CwkIlJCQ4lJVzxowZo9dff11bt25VixYtnE7Hdnl5eSoqKtJ1112nsLAwhYWFKTc3V4sWLVJYWJjcbrfTKdoiMTFR1157rc++du3a6dixYw5l5JxJkyZp6tSpGj58uDp27Khf/vKXmjBhgrKzs51OzTFnvxv53qxytvj87LPPtGXLlnrX/fznP/+poqIitWzZ0vu9+dlnn2nixIlq1aqV0+nBYRSg1QgPD9f111+vnJwc7z6Px6OcnBz17NnTwczsZRiGxowZo/Xr1+utt95SSkqK0yk5om/fvnr//fe1f/9+79atWzeNGDFC+/fvV2hoqNMp2qJXr17nLMN1+PBhXXHFFQ5l5JxTp04pJMT3KzQ0NFSeejy+KyUlRQkJCT7fm6Wlpdq1a1e9+t6U/q/4PHLkiN588001b97c6ZRs98tf/lL/+te/fL43k5KSNGnSJG3evNnp9C6K4fEEZAOX4M8rMzNT6enp6tatm3r06KGFCxeqrKxMI0eOdDo122RkZGjt2rV69dVXFR0d7R3HFRsbq6ioKIezs090dPQ5414bNWqk5s2b16vxsBMmTNCNN96ouXPnatiwYdq9e7dWrFihFStWOJ2a7e644w7NmTNHLVu2VPv27fXee+/pySef1P333+90agF18uRJffzxx97HR48e1f79+9WsWTO1bNlS48eP1+zZs9W6dWulpKQoKytLSUlJ550hXhud7zwkJibq5z//ufbt26fXX39dbrfb+93ZrFkzhYdbO6vaSRf6ffhh4d2gQQMlJCTommuusTtVBBmWYbqAJUuW6Pe//70KCgrUpUsXLVq0SKmpqU6nZZvqxu2sWrVK9913n73JBJnevXvXu2WYJOn111/XtGnTdOTIEaWkpCgzM1OjR492Oi3bffvtt8rKytL69etVVFSkpKQk3XPPPZo+fXqdKjB+aNu2berTp885+9PT07V69WoZhqEZM2ZoxYoVKi4u1k033aQ//vGPatOmjQPZBs75zsPvfve7aq8Wbd26Vb179w5wdva50O/DD7Vq1apWLcP006i7A7IM01vfrav3yzBRgAIAAHyPtwCNGBaYArTi5XpfgDIGFAAAALZiDCgAAIAZw5Bk8aQhLjxLogMKAAAAm9EBBQAAMGF4DBkuazuWTL2pQgcUAAAAtqIDCgAAYMbwyPoxoCxEL9EBBQAAgM0oQAH4zeVyacOGDU6nYanevXsH/SLZAOxheIyAbKAABVCN48eP66GHHlLLli0VERGhhIQE9evXT++88473mC+//FL9+/eXJP373/+Wy+XS/v37HcoYAFBbMAYUgKkhQ4bo9OnTWrNmja688koVFhYqJydHX3/9tfeYhIQEBzOsPdxut1wul0JC+D8/UJucMSosH7N5RpWWxqu1DAD4gW+++caQZGzbtu28x0ky1q9f7/3z97ef/OQn3uNWrlxptG3b1oiIiDCuueYaY+nSpeeN+5Of/MQYO3asMWnSJKNp06ZGfHy8MWPGDO/zR48eNSQZ77333jk5b9261TAMw9i6dashydi0aZPRpUsXIzIy0ujTp49RWFho/OMf/zDatm1rREdHG/fcc49RVlbm894ZGRlGRkaGERMTYzRv3tx47LHHDI/H4z2mvLzcmDhxopGUlGQ0bNjQ6NGjh/d9DcMwVq1aZcTGxhqvvvqq0a5dOyM0NNQ4evToeT8zgODx3XffGQkJCed8r1m1JSQkGN99953TH9NRdEABnKNx48Zq3LixNmzYoBtuuEEREREXfM3u3bvVo0cPvfnmm2rfvr3Cw6vun/zCCy9o+vTpWrJkibp27ar33ntPo0ePVqNGjZSenl5tvDVr1igzM1O7du3Sjh07dN9996lXr1665ZZbavRZfve732nJkiVq2LChhg0bpmHDhikiIkJr167VyZMnddddd2nx4sWaMmWKz3uPGjVKu3fv1t69e/XAAw+oZcuWGj16tCRpzJgx+uCDD/TSSy8pKSlJ69ev12233ab3339frVu3liSdOnVK8+fP1zPPPKPmzZsrLi6uRnkDcE5kZKSOHj2q06dPByR+eHi4IiMjAxK71nC6AgYQnP7yl78YTZs2NSIjI40bb7zRmDZtmnHgwAGfY/S9DqhZV9IwDOOqq64y1q5d67Pv8ccfN3r27Fnte//kJz8xbrrpJp993bt3N6ZMmVLte1XXAX3zzTe9x2RnZxuSjE8++cS778EHHzT69evn897t2rXz6XhOmTLFaNeunWEYhvHZZ58ZoaGhxueff+6TX9++fY1p06YZhlHVAZVk7N+/v9rPCAD1GQOSAJgaMmSIvvjiC7322mu67bbbtG3bNl133XVavXr1RccoKyvTJ598olGjRnm7qo0bN9bs2bP1ySefnPe1nTp18nmcmJiooqKiGn+O78eJj49Xw4YNdeWVV/rs+2HcG264QS6Xy/u4Z8+eOnLkiNxut95//3253W61adPG5zPl5ub6fKbw8PBzPgMAoAqX4AFUKzIyUrfccotuueUWZWVl6Ve/+pVmzJih++6776Jef/LkSUnSypUrlZqa6vNcaGjoeV/boEEDn8cul0seT9VkgLOTeYzv3dKustJ8YP/347hcrvPGvRgnT55UaGio8vLyzvkMjRs39v45KirKp4gFAPwfClAAF+3aa6+tdt3Ps2M+3W63d198fLySkpL06aefasSIEZblcfnll0uqWgaqa9eukmTp8k+7du3yebxz5061bt1aoaGh6tq1q9xut4qKivTjH//YsvcEgPqEAhTAOb7++msNHTpU999/vzp16qTo6Gjt3btXCxYs0J133mn6mri4OEVFRWnTpk1q0aKFIiMjFRsbq5kzZ2rcuHGKjY3VbbfdpoqKCu3du1fffPONMjMz/covKipKN9xwg+bNm6eUlBQVFRXpscceu5SP7OPYsWPKzMzUgw8+qH379mnx4sV64oknJElt2rTRiBEjdO+99+qJJ55Q165ddfz4ceXk5KhTp04aMGCAZXkAQF1FAQrgHI0bN1ZqaqqeeuopffLJJ6qsrFRycrJGjx6t3/zmN6avCQsL06JFizRr1ixNnz5dP/7xj7Vt2zb96le/UsOGDfX73/9ekyZNUqNGjdSxY8dLvtvQc889p1GjRun666/XNddcowULFujWW2+9pJhn3Xvvvfruu+/Uo0cPhYaG6pFHHtEDDzzgfX7VqlWaPXu2Jk6cqM8//1yXXXaZbrjhBg0cONCS9weAus5lfH8QFQAAABBgzIIHAACArShAAQAAYCsKUAAAANiKAhQAAAC2ogAFAACArShAAQAAYCsKUAAAANiKAhQAAAC2ogAFAACArShAAQAAYCsKUAAAANiKAhQAAAC2+v/nKvUp/pUJrQAAAABJRU5ErkJggg==", "text/plain": [ "
" ] @@ -602,7 +597,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.12" + "version": "3.10.13" }, "orig_nbformat": 4, "vscode": { diff --git a/examples/decoding/decoding.py b/examples/decoding/decoding.py index aecea15b..c7b270d0 100644 --- a/examples/decoding/decoding.py +++ b/examples/decoding/decoding.py @@ -11,6 +11,7 @@ import numpy as np from tqdm import tqdm +from matrex import msro from opt_einsum import contract from more_itertools import powerset from qecstruct import ( @@ -329,10 +330,9 @@ def bin_vec_to_dense(vector: "qec.sparse.BinaryVector") -> np.ndarray: return array -def linear_code_checks(code: LinearCode) -> List[List[int]]: +def linear_code_parity_matrix_dense(code: LinearCode) -> np.ndarray: """ - Given a linear code, returns a list of its checks, where each check - is represented as a list of indices of the bits touched by it. + Given a linear code, returns its parity check matrix in dense form. Parameters ---------- @@ -341,8 +341,8 @@ def linear_code_checks(code: LinearCode) -> List[List[int]]: Returns ------- - checks : List[List[int]] - List of checks. + parity_matrix : np.ndarray + The parity check matrix. """ parity_matrix = code.par_mat() @@ -350,7 +350,27 @@ def linear_code_checks(code: LinearCode) -> List[List[int]]: for row, cols in enumerate(parity_matrix.rows()): for col in cols: array[row, col] = 1 - return [list(np.nonzero(row)[0]) for row in array] + return array + + +def linear_code_checks(code: LinearCode) -> List[List[int]]: + """ + Given a linear code, returns a list of its checks, where each check + is represented as a list of indices of the bits touched by it. + + Parameters + ---------- + code : qec.LinearCode + Linear code object. + + Returns + ------- + checks : List[List[int]] + List of checks. + """ + + parity_matrix_dense = linear_code_parity_matrix_dense(code) + return [list(np.nonzero(row)[0]) for row in parity_matrix_dense] def linear_code_constraint_sites(code: LinearCode) -> List[List[List[int]]]: @@ -693,61 +713,74 @@ def apply_constraints( entropies = [] bond_dims = [] + + if strategy == "Optimized": + mpo_location_matrix = np.zeros((len(strings), mps.num_sites)) + for row_idx, sublist in enumerate(strings): + for subsublist in sublist: + for index in subsublist: + mpo_location_matrix[row_idx][index] = 1 + + optimized_order = msro(mpo_location_matrix) + strings = [strings[index] for index in optimized_order] + if strategy == "Naive": - for string in tqdm(strings, disable=silent): - # Preparing the MPO. - string = ConstraintString(logical_tensors, string) - mpo = string.mpo() - - # Finding the starting site for the MPS to perform contraction. - start_site = min(string.flat()) - - # Preparing the MPS for contraction. - if isinstance(mps, ExplicitMPS): - mps = mps.mixed_canonical(orth_centre=start_site) - - if isinstance(mps, CanonicalMPS): - if mps.orth_centre is None: - orth_centres, flags_left, flags_right = find_orth_centre( - mps, return_orth_flags=True - ) - - # Managing possible issues with multiple orthogonality centres - # arising if we do not renormalise while contracting. - if orth_centres and len(orth_centres) == 1: - mps.orth_centre = orth_centres[0] - # Convention. - if all(flags_left) and all(flags_right): - mps.orth_centre = 0 - elif flags_left in ([True] + [False] * (mps.num_sites - 1)): - if flags_right == [not flag for flag in flags_left]: - mps.orth_centre = mps.num_sites - 1 - elif flags_left in ([True] * (mps.num_sites - 1) + [False]): - if flags_right == [not flag for flag in flags_left]: - mps.orth_centre = 0 - elif all(flags_right): - mps.orth_centre = 0 - elif all(flags_left): - mps.orth_centre = mps.num_sites - 1 + pass + + for string in tqdm(strings, disable=silent): + # Preparing the MPO. + string = ConstraintString(logical_tensors, string) + mpo = string.mpo() + + # Finding the starting site for the MPS to perform contraction. + start_site = min(string.flat()) - mps = cast( - Union[ExplicitMPS, CanonicalMPS], - mps.move_orth_centre(final_pos=start_site, renormalise=True), + # Preparing the MPS for contraction. + if isinstance(mps, ExplicitMPS): + mps = mps.mixed_canonical(orth_centre=start_site) + + if isinstance(mps, CanonicalMPS): + if mps.orth_centre is None: + orth_centres, flags_left, flags_right = find_orth_centre( + mps, return_orth_flags=True ) - mps = mps_mpo_contract( - mps, - mpo, - start_site, - renormalise=renormalise, - chi_max=chi_max, - inplace=False, - result_to_explicit=result_to_explicit, + # Managing possible issues with multiple orthogonality centres + # arising if we do not renormalise while contracting. + if orth_centres and len(orth_centres) == 1: + mps.orth_centre = orth_centres[0] + # Convention. + if all(flags_left) and all(flags_right): + mps.orth_centre = 0 + elif flags_left in ([True] + [False] * (mps.num_sites - 1)): + if flags_right == [not flag for flag in flags_left]: + mps.orth_centre = mps.num_sites - 1 + elif flags_left in ([True] * (mps.num_sites - 1) + [False]): + if flags_right == [not flag for flag in flags_left]: + mps.orth_centre = 0 + elif all(flags_right): + mps.orth_centre = 0 + elif all(flags_left): + mps.orth_centre = mps.num_sites - 1 + + mps = cast( + Union[ExplicitMPS, CanonicalMPS], + mps.move_orth_centre(final_pos=start_site, renormalise=True), ) - if return_entropies_and_bond_dims: - entropies.append(mps.entanglement_entropy()) - bond_dims.append(mps.bond_dimensions) + mps = mps_mpo_contract( + mps, + mpo, + start_site, + renormalise=renormalise, + chi_max=chi_max, + inplace=False, + result_to_explicit=result_to_explicit, + ) + + if return_entropies_and_bond_dims: + entropies.append(mps.entanglement_entropy()) + bond_dims.append(mps.bond_dimensions) if return_entropies_and_bond_dims: return cast(CanonicalMPS, mps), entropies, bond_dims