diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0e36c8036e650bc907a37c41bd3bd5999d7aabab..4d8ddb14757e2980050a72394a804d6e63578ea6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -38,7 +38,7 @@ deploy: dependencies: - doc_build variables: - "CI_WEBSITE_DIR": _public/ + "CI_WEBSITE_DIR": "_public/" image: gitlab-registry.cern.ch/ci-tools/ci-web-deployer script: - deploy-dfs diff --git a/demo/nnfwtbn.py b/demo/nnfwtbn.py index 64f281862aad90f0304399234d9392c377ee48ed..047b9faadd2b6b05c389f107fc2517f211c4d90a 100644 --- a/demo/nnfwtbn.py +++ b/demo/nnfwtbn.py @@ -116,7 +116,10 @@ def histo_dist(dataframe, variable, processes, bins, range, selector=Selector(), plt.xlim(range) plt.ylabel("Events / %g %s" % ((range[1] - range[0]) / bins, x_unit)) if x_label is not None: - plt.xlabel("%s in %s" % (x_label, x_unit)) + if x_unit is None: + plt.xlabel(x_label) + else: + plt.xlabel("%s in %s" % (x_label, x_unit)) @@ -147,38 +150,40 @@ processes.append(Process("Fake", selin(-199, -100), 'stacked', bkg[len(processes processes.append(Process("Top", selin(-499, -400), 'stacked', bkg[len(processes)])) processes.append(Process("Diboson", selin(-399, -300), 'stacked', bkg[len(processes)])) processes.append(Process("$Z\\rightarrow\\tau\\tau$", selin(-699, -600), 'stacked', bkg[len(processes)])) -processes.append(Process("$Z\\rightarrow\\ell\\ell$", selin(-599, -500), 'stacked', bkg[len(processes)])) +processes.append(Process("$Z\\rightarrow\\ell\\ell$", selin(-599, -500), 'stacked', "#99dddd")) processes.append(Process("Signal", selin(1, 999), 'stacked', sig[1])) processes.append(Process("Data", selin(0, 0), 'data', 'black')) # - histo_dist(df, - "tau_0_p4__Pt", + "ditau_p4__Pt", processes, range=(25, 225), - bins=40, - selector=VBFSelector(), + bins=20, + selector=1 ^ VBFSelector(), x_label="$m_{\mathrm{MMC}}$") -# + -sig = sns.color_palette("hls", 7) - -processes = [] -processes.append(Process("$WHqq$", selin(100, 199), 'stacked', sig[6])) -processes.append(Process("$ZHqq$", selin(200, 299), 'stacked', sig[5])) -processes.append(Process("$ttH$", selin(300, 399), 'stacked', sig[4])) -processes.append(Process("V$H$", selin(400, 599), 'stacked', sig[3])) -processes.append(Process("$ggH$", selin(600, 699), 'stacked', sig[1])) -processes.append(Process("VBF", selin(100, 799), 'stacked', sig[0])) histo_dist(df, - "ditau_mmc_mlm_m", + "fpid", processes, - range=(25, 225), - bins=20, - selector=(VBFSelector()), + range=(-999, 999), + bins=100, x_label="$m_{\mathrm{MMC}}$") -# - +plt.yscale('log') +v = VBFSelector() + +v.func + +histo_dist(df, + "weight", + [processes[4]], + range=(-1, 1), + bins=24, + selector=VBFSelector(), + x_label="Event weight", + x_unit=None) +df[VBFSelector() & selin(-599, -500)].weight.sum() diff --git a/histogram.ipynb b/histogram.ipynb index afa124d11791aebaab32a8c2ba9f431b24878439..093de90f5f8edd09a7395d2470a7e2f33e9e3ca6 100644 --- a/histogram.ipynb +++ b/histogram.ipynb @@ -17,7 +17,7 @@ "source": [ "import pandas as pd\n", "df = pd.read_hdf(\"test.h5\")\n", - "df = pd.read_hdf(\"demo/mva.h5\")" + "#df = pd.read_hdf(\"demo/mva.h5\")" ] }, { @@ -58,14 +58,14 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 8, "metadata": {}, "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYsAAAEHCAYAAABfkmooAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvNQv5yAAAIABJREFUeJzt3Xd4VFX6wPHvIQESSEgIIBCIIfSAVAlSDQuIyNJ0WXqxoououzZURNifWBdWV0WRDi4IFhSCBVRARZCOSIkU6aGEYqghhff3x0xmZ5JJZpKZZCbk/TzPPMy999xz37kZ7jv3nnvPMSKCUkoplZdSvg5AKaWU/9NkoZRSyiVNFkoppVzSZKGUUsolTRZKKaVc0mShlFLKpUBfB5BfISEh0rBhQ5flUlJSCAsLc6tOd8u6Wy45OZkqVar4ZNv5Katx+iZOX343QeP09zgL4/Ns3rz5ooiEulVpbkSkWL3KlSsn7njggQfcKpefsu6Wu/nmm3227fyU1Ti9W6e7cfryuymicXq7Tm/HWRifB7gkHh579TKUUkopl67bZNGrVy+vl81Pnb7ctsbp3W17O87r7buZn7Iap3e3XRhx5sZIMevuo3z58nLp0iVfh5GnVq1asWnTJl+H4ZLG6V0ap3dpnN5jjLksIuU9qaPYNXBnZmYycuRIwJJVizKzKqVUcZGQkEBCQkLWZICn9RW7ZFG1alWmTZvm6zDylJXM/J3G6V0ap3dpnJ6x/zE9ffr0E57WV+wuQ7Vq1Ur8/ZRPKaX8iTFms4i08qSO67aBWymllPdoslBKKQ8EBATQvHlz2+vgwYO5ll29ejU9e/YsuuC8qNi1WSilVG5qPfOFV+s7+OqfXZYJDg5m27ZtXt2uPyrRZxYnT56kQoUKGGNsrw0bNjiUufHGGx2Wu3qtX7+e8+fPU6pUKdu8jz76yO2Y3n77bYf6mjZtmmf5H374gSFDhhATE0NQUBDlypWjZs2atGvXjtGjR7N9+/YC7RulVMEdPHiQjh070rJlS1q2bMnatWtzlNm4cSMtWrRg//79XLp0iXvvvZfWrVvTokULlixZ4oOo81aizyzGjh3LhQsXHOZt376d1q1bA3DkyBGOHDnidn1BQUG0bNmSn376CfsbB1q2bOnW+mfPnmXChAkO8xITE0lPT6d06dI5yj/55JNMnjw5x/xjx45x7Ngx1q1bx5133ul2/Eqp/Lty5QrNmzcHICYmhs8++4wbbriBb775hqCgIPbu3cugQYMcnsVYu3YtjzzyCEuWLOHGG2/kueeeo3PnzsyaNYs//viD1q1b07VrV8qX9+jRCK8qscli27ZtzJ49O8f8X3/91fa+QoUK/Pjjj7bpzMxMunbtSkZGBgBPP/20w3MewcHBlC5dmi1bttjmhYWFUadOHbdimjBhAmfPnnWYl56eTmJiIk2aNHGY/8knn9gSRWhoKGPGjKFly5aICIcOHWLt2rUsWbKEuLg4t7atlCoYZ5eh0tPTGT16NNu2bSMgIIA9e/bYlu3evZuRI0eyYsUKIiMjAVixYgVLly5l0qRJAKSmpnL48GFiY2OL7oO4UGKTxT/+8Q+uXbsGQOfOnVm5ciWAw2WbsLAwOnToYJvetWuXLVEA9O3bl7Zt2+aoe/Pmzbb3LVq0wBjjMp7ExETee+89wJKk6tWrZ6tn+/btOZLF/Pnzbe9feOEFnnzySYflf/vb37h06ZLPf5l06tSJoUOHcv/997ss27hxY6ZMmUKnTp0KPzClCtEbb7xB1apV+eWXX7h27RpBQUG2ZdWrVyc1NZWtW7fakoWI8Omnn9KgQQNfhexSiWyzWLx4MatXrwagUaNGDpdy7M8ssrP/9VCqVKlc2xPszyxuvvlmt2J6/PHHbYno+eefd0hSzmI6c+aM7f2CBQtYunQpKSkpDmVcJYpXXnmFO+64w2FevXr1nM5buHChW5/DEzt37ixwojDGUL58eUJCQqhRowaPP/44mZmZ3g1QKTelpKRQvXp1SpUqxQcffODwXQwPD+eLL77g2WeftR2Hbr/9dt5++23b5eutW7f6Iuw8lbhkkZaWxtNPP22bnjRpEo0aNSIw0HKSdebMGZKSkpyua/8HrF+/vtOD8cWLFx1OOd1pr1i+fDlfffUVALVr1+bRRx+lUaNGtuXOGqlbtfrf8zVbt26lT58+RERE0Lp1ayZPnszly5ddbvfWW29l7dq1ti/y8ePHSU9PZ+vWrQ7z9u3bx6233uqyPnsiYjtzKyq//PILFy9e5LvvvmPBggVMnz49Rxn7M0Nv8HZ96vowatQo5s6dS7NmzUhMTMxxrKhatSrLli3j4YcfZv369YwbN4709HSaNm1K48aNGTdunI8iz4OnfZwX9atu3brywAMPyAMPPCBLly51qy93e6+99poAAsjtt99um9+gQQPb/K+//trpul26dLGVGTRokNMyP/74o60MIImJiXnGk56eLo0aNbKV//jjj3PUU7NmzRzrnT59WuLi4hy2Zf+qV6+eJCcn57ntq1evSnBwsGzatElERBYtWiR333233HrrrQ7z6tSpY1vnp59+klatWkmFChWkVatW8tNPP9mWxcfHy3PPPSft2rWToKAg2bt3r8THx8v06dNFRCQpKUmaNGkir7/+utN4oqOj5ZtvvhERkfHjx8tf//pXGTZsmISEhEijRo1k48aNuX4WQPbu3Wub7tevnzz88MO2el999VVp0qSJlClTRtLT02XXrl0SHx8vYWFh0qhRI1myZInDvu3Zs6eEhoZKq1atZOzYsdK+fXuHbb3zzjtSt25dqVWrloiI7N69W7p27SoVK1aU+vXry6JFi2zlv/jiC4mNjZWQkBCJjIyUf/3rXyIikpycLH/+858lLCxMKlasKB06dJDMzMxcP6NS+bF06VLbsRLYKx4ee31+8M/vKz8D4WR38uRJqVChggASEBAgO3bssC276667bAfa3A5mlSpVclnmzTfftJUJCQmRa9eu5RnTW2+9ZSvfoUMH2/yzZ886HPzPnj2bY9309HT5/PPPZcSIERITE5MjYTz55JMu90mnTp3k3//+t4iIPPzwwzJz5kx57rnnHObdc889IiJy5swZCQ8Pl3nz5kl6erosWLBAwsPD5fTp0yJiSRZRUVGyY8cOSU9Pl7S0NFuy+P3336VevXry/vvv5xpL9mRRtmxZ+eKLLyQjI0OeeeYZueWWW3Jd1z5Z7Ny5U6pWrSozZsyw1dusWTM5fPiwXL58WdLS0qROnTry0ksvydWrV+W7776TkJAQW2IfMGCADBgwQC5duiQ7d+6UmjVr5kgWXbt2lTNnzsjly5fl4sWLUrNmTZk1a5akp6fLli1bpFKlSrJz504REalWrZr88MMPImL5u27evFlERJ555hl58MEHJS0tTdLS0uSHH35w+X1RqiCATaLJwn33339/rr/E7V/Dhg3Lse7hw4cdymQd1LIbPny404O/M2fPnpWIiAi3Yvr+++9dfr6tW7dKrVq1bOv07NnT5Trjx4+Xvn37iohI06ZNZc+ePfLVV185zJszZ46IiMybN0/i4uIc1m/Tpo3Mnj1bRCzJYty4cQ7L4+Pj5R//+IdER0fLggUL8owle7Lo0qWLbdnOnTslKCgo13UBCQ0NlfDwcKldu7aMHTvW9is9OjpaZs6caSv7ww8/SNWqVR1+xQ8cOFDGjx8vGRkZEhgY6HBG6OzM4rvvvrNNL1y4MMffeuTIkTJhwgQREYmKipKpU6dKSkqKQ5lx48ZJ7969Hc6IlCoM3kgWJabN4pdffmHWrFlulXXWRpC9walFixZO17W/E8pV47azW2XdienLL7/kypUrOco0b96cmjVr2qZvvPFGl/XeeuutrFmzhrNnz5KcnEy9evVo164da9eu5ezZs+zYscPWXpGUlER0dLTD+tHR0Rw7dsw2HRUVlWMb8+fPp0aNGvTr18/1B7VTrVo12/ty5cqRmpqaZxvBli1bOHfuHPv372fixImUKvW/r7d9XElJSURFRTksz/ocycnJZGRkOJR39pns5x06dIj169cTHh5ue82fP58TJywdfX766ad8+eWXREdHEx8fz7p16wB46qmnqFu3Lt26daN27dq8+uqr+dk9ShWpEnPrrP2tsoMHD85xx8/Zs2d57LHHAMt90BkZGbZGb3C8EyoqKopKlSrl2Mbly5dJTEy0Te/atYtnnnkmR7kHH3yQtLQ03n33XcByZ9WUKVMICQlxKLd48WI+++wzwPGOqHvuuYeMjAz69etHx44diYyM5I8//mDBggWsWbPGVue9997rcr+0bduWlJQUpk+fTvv27QHLrbuRkZFMnz6dyMhIYmJiAIiMjOTQoUMO6x8+fJju3bvbpp3dJjxhwgS+/vprBg8ezMKFCwkI8Lhr/XyzjysyMpIjR45w7do1W8I4fPgw9evXp0qVKgQGBnL06FHq168P4PTBTPv6oqKiiI+P55tvvnG67bi4OJYsWUJ6ejrvvPMO/fv358iRI4SGhjJ58mQmT57Mjh076Ny5M3FxcXTp0sWbH10p7/D01KSoXwW5DLV48WLbpZly5crJqVOncpRJT0+X0qVL28rZt2eIiPTt29e2rHfv3k63s3btWrcuKR0/flx69OjhsrF8xowZtjJt2rQREZEjR464rL906dK2RmV3tG3bVm644Qb5z3/+Y5s3evRoueGGG2Tw4MG2eadPn5awsDCZP3++pKeny8KFCyUsLMzWkG7fmJ0la97Vq1fljjvukMGDB+faiJv9MtSQIUNsyw4cOCCApKenO12XbA3cudUrYmnYj4mJkVdeeUXS0tJk1apVEhISIrt37xYRkf79+8ugQYPk0qVLsnv3bomKispxGcp+W+fPn5cbb7xR5s2bZ2t/2LBhg+zatUuuXr0q//3vf+WPP/4QEcvf9MYbbxQRkYSEBNm7d69cu3ZNDh8+LNWqVZOVK1c6/QxKeQK9DOVaWloaTz31lG161KhRVKlSJUe5wMBAatWqZZvOfinK/jJUbpeg7J+vyE3VqlXZvn07X375JWA5A8jtNrl69erZ3u/YsQMRoVKlSnz00Uc8+OCDtGzZksjISMqUKUO5cuWIjY1l1KhRbN++3a2H4LLEx8dz6tQph2c7OnbsyKlTpxxuma1UqRLLli1j8uTJVKpUiddff51ly5ZRuXJll9soU6YMixcv5uTJk9x7771Ffltt9lgSEhL46quvqFy5MqNGjWLevHk0bNgQgHfeeYeUlBSqVavGsGHDGDRoEGXLls21vtDQUFasWMHChQuJjIykWrVqjBkzhqtXrwLwwQcfUKtWLSpUqMDUqVNtD1Tu3buXrl27EhISQtu2bRk1ahR/+tOfCn8HKFUAOviRUi6MGTOGEydOMHfuXF+HovzMmTNnbJcNT5w4QUBAgO3H6IYNGyhTpowvw7PxxuBHhdpmYYz5B3A/lssjvwL3ANWBhUAlYDMwTETSjDFlgXnAzcAZYICIHCzM+JRyJjExkbS0NJo0acLGjRuZOXMmM2bM8HVYyh0TwrxcX0qeiytVqmRrz5wwYQIhISE5ut65XhTaZShjTA3gUaCViNyEZcDwgcBrwBsiUhc4B9xnXeU+4Jx1/hvWckoVuQsXLnDXXXdRvnx5BgwYwBNPPEGfPn18HZYqZl5//XVuuukmbrrpJt5++20A9u3bR+PGjRk4cCCxsbH079/f6Z2N/qiw2ywCgWBjTCBQDjgOdAY+sS6fC/S1vu9jnca6vItxpwc+pbwsLi6Offv2cfnyZQ4cOMCzzz7rVmeQSmVZv3498+fPZ+PGjaxbt453333Xdkfjrl27+Pvf/87u3bsJCgri/fff93G07im0ZCEix4BJwGEsSSIFy2WnP0Qk62b5o0AN6/sawBHruhnW8jnvT1VKKT+3Zs0a/vKXvxAcHExoaCh9+/a1DXcQExNDmzZtABg6dKjtdnd/V2htFsaYiljOFmKAP4CPge55ruSG5ORkh070sowcOZKRI0d6Wr1SShWq7Gep3jxrnTZtGtOmTXO2yPUtiy4UZgN3V+CAiCQDGGMWA+2BcGNMoPXsoSaQ9fjvMSAKOGq9bBWGpaHbQZUqVdC7oZRS/qxjx448+OCDPPXUU2RmZrJkyRIWLVoEwIEDB9i4cSNxcXEsWLDA4ZZ1T+X2o9kYc9rTuguzzeIw0MYYU87a9tAF2AWsArL6fRgBZA02u9Q6jXX5Silu9/UqpRTQunVrBg0aRFxcHG3atOFvf/ubbQCz2NhY/v3vfxMbG8vly5eLzRWRQn3OwhjzT2AAkAFsxXIbbQ0st85GWOcNFZGrxpgg4AOgBXAWGCgiv2evU5+zUPmVkpLCbbfdxq5du/j555+56aabfB2SKqH27dtHv379cgzDWtj8/jkLERkPjM82+3egtZOyqcBfCzMeVTKVK1eOL774wuFJfqVU/lz33X248tJLL2GMcfulis5vv/1G8+bNCQ0N5a233qJWrVp8++23+a6ndOnSTrt4Uaqo1a1bt8jPKrylRCeLjIwMfv3113x1plVQ77zzDq1ataJs2bLcfffdOZYPHTqU6tWrU6FCBerXr5/jieGQkBDbq1SpUgQHB9ums/oayk337t154YUXcsxfsmQJ1apVc2toUFfxASxcuJDY2FjKly9PnTp1bLcKZudqX2R5/fXX+dOf/sSFCxd49NFHXcaolCo8JaaLcme+/vrrHF2VF5bIyEief/55li9f7vSJzWeffZaZM2dStmxZEhMT6dSpEy1atLCNiXHx4kVb2Vq1ajFjxgy6du3q1rZHjBjB2LFj+ec//+lwdvTBBx8wZMgQh67Yc+Mqvm+++YYxY8awaNEiWrduzfHjxwu8L7IcOnSIgQMHuvUZT5w44bTswoULHcbFUEoVTIk+s1i8eDF/+ctfHOb9/vvv/PnPf6Zy5cpUqFCB2267zSvbuuuuu+jbt6/TcTAAGjdubOvZNOuS1/79+/O1jaSkJP7yl79QpUoVYmJieOuttwDo27cvZ86ccfilf+7cOZYtW8bw4cPdqttVfOPHj+eFF16gTZs2lCpViho1alCjRg2ndbnaFwCdO3dm1apVjB49mpCQEPbs2QPAxo0badSoERUrVuSee+4hNTUVsAyUtHr16hwvTRRKeUeJSRaHDx/mlVde4dSpU4DlDpnAwMAcAw4NHz6cHj16cPLkSU6dOsWECROc1tezZ0+HkdHsXz179ixQjKNGjaJcuXI0bNiQ6tWr06NHD7fXvXbtGr169aJZs2YcO3aM7777jjfffJPly5cTHBxM//79mTdvnq38Rx99RMOGDWnWrJnH8WVmZrJp0yaSk5OpW7cuNWvWZPTo0R71ebNy5Uo6duzIO++8w8WLF20DEc2fP5/ly5ezf/9+9uzZw8SJE92qr0ePHqxYsYIHHniAOXPmFDgupUqqEpMszp8/z9atW1m4cCEAH3/8Mf37989Rbv/+/WRmZpKZmUlQUJBt9Ljsli1bxh9//OH0tWzZsgLF+O6773LhwgV+/PFH7rrrrjzHUMhu48aNJCcn88ILL1CmTBlq167NAw88YPu8I0aM4JNPPrH9Ep83bx4jRozIq0q34zt58iTp6el88skn/Pjjj2zbto2tW7e6fSDPj9GjRxMVFUVERARjx47lww8/dGu9L7/8kqSkJNatW5dnO4lSyrlilyxSUlJsTykmJCS4vd5NN93EyJEj+eCDDwBYtWoVnTt3zlFu/vz5LFmyhMjISO677z63x8j2loCAADp06MDRo0d577333F7v0KFDJCUlOZzhvPzyy5w8eRKADh06ULlyZT7//HP279/Phg0bGDx4sFfiCw4OBuCRRx6hevXqVK5cmccff9w2wJM32Y99HR0dTVJSkte3odT1ICEhwf6Jbo/7bi92DdxhYWG59X3iUufOnUlKSmL58uVER0fbxl/OXqZz586cOnWKHj16MGfOHB5//PEc5e64445c7/bp2LEjX331VYFizJKRkZGvNouoqChiYmLYu3dvrmWGDx/OvHnz+O2337j99tupWrWqV+KrWLEiNWvWdGg8L6zbjO3Hwz58+DCRkZGFsh2l8uOee+5xGE3zxIkTpKWlFejH5qVLlxgzZgxDhw6lTZs2Oabd1atXL3r16gXA9OnT8x6Yww3FLll4olSpUgwePJgRI0awatWqHMsXL15MkyZNqFu3LhcuXODcuXM0b97caV35TQYZGRlkZGTYLnGlpqYSGBhIYGAgp06dYuXKlfTs2ZPg4GC+/fZbPvzwQ7cvsYCle4HQ0FBee+01Hn30UcqUKcPu3bu5cuUKcXFxgCVZTJw4ke3bt/PGG284rJ91acbZ9Xx34rvnnnt4++236d69O6VLl+aNN97Ite0mr33hypQpU+jZsyflypXjpZdeYsCAAW7uIVUSNJnbxKv1/TriV7fKzZ492/b+wIEDdOzYscA/aqdOnUpqaipr1qyhTZs2OaZ9pdhdhvLUsGHDiIqKIjY2NseyNWvWEB8fT2hoKD169OCZZ55xeqmqICZOnEhwcDCvvvoq//3vfwkODrZd0zfG8N5771GzZk0qVqzIk08+yZtvvknv3r3drj8gIIBly5axbds2YmJiqFy5Mvfffz8pKf/7QVGrVi3atWvHpUuXctR95MiRXNtn3Ilv3LhxxMXFUb9+fWJjY2nRogVjx44FLGdhL7/8slv7wpXBgwfTrVs3ateuTZ06dXj++efd3kdKFbbTp0/TvXt3xo0b5/L/7/bt2/n99xw9GvH111/ToEED2w/V7NO+UiLH4N6zZ4/t7hoFaWlpNGvWjO3bt1O6dGlfh6NUgfnqzALg8uXLdOnSha5du/Liiy+6LL9hwwbuv/9+Pv/8c2rXrg1AamoqPXr0oGrVqsybN4/MzEyH6YL+//T7vqH8lSYKR1mXrJRSBZOZmcnAgQNp2LCh00Tx3//+l1dffTXH/OPHjzNw4EA2bNgAwN69e8nMzKRhw4aULl2axMREh2lfKpHJQimlvGnUqFGkp6czffp0p8uHDh3K0KFDHeYdPnyY3r17O7QfJicns2fPHpYsWeJ02pc0WSillAf++c9/snnzZlavXu3WTRpZfvvtN959913atWtnm5fVC8O1a9c4d+5cjumKFSsWxkdwS4lr4FZKKW85ePAgEyZM4MyZM3To0IHmzZvTvHlzt+7Su+222xwSRUZGBlu2bOHEiRM89NBDBAQE5Jj2pRLZwK2UUiWJNxq49cxCKaWUS5osiqE5c+Z4dZD3LPPnz6dbt25er1cpVfwVu2RR0L6h1qxZQ7t27QgLCyMiIoL27duzcePGQozUvx08eBBjjMPAR0OGDGHFihU+jEop5S3aN1QB+oY6f/48PXv25L333qN///6kpaXx448/5qtXV6WUKk683TdUsTuzKIisgXMGDRpEQEAAwcHBdOvWjaZNmwKWsSAmTpxIdHQ0N9xwA8OHD7d1k5H1C3z27NlERUVRsWJFpk6dysaNG2natCnh4eGMHj3aYXuzZs0iNjaWihUrcvvtt3Po0CGncaWmpjJ06FAqVapEeHg4cXFxtl5iU1JSuO+++6hevTo1atTg+eefJzMz02k9iYmJ3HbbbURERNCgQQM++ugj27IrV67wxBNPEB0dTVhYGB06dODKlSvceuutAISHhxMSEsK6detyXN5au3YtcXFxhIWFERcXx9q1a23LOnXqxLhx42jfvj2hoaF069aN06dP5+vvopQqRvIz/rQ/vG6++WbJr5SUFImIiJDhw4fLl19+KWfPnnVYPnPmTKlTp47s379fLly4IHfeeacMHTpUREQOHDgggDz44INy5coVWb58uZQtW1b69OkjJ0+elKNHj0qVKlVk9erVIiLy+eefS506dWTXrl2Snp4uL774orRt29ZpXFOnTpWePXvKpUuXJCMjQzZt2iQpKSkiItK3b18ZOXKkXLx4UU6ePClxcXEydepUERGZPXu2tG/fXkRELl68KDVr1pRZs2ZJenq6bNmyRSpVqiQ7d+4UEZFRo0ZJfHy8HD16VDIyMuSnn36S1NRU2+dKT0+3xWNf75kzZyQ8PFzmzZsn6enpsmDBAgkPD5fTp0+LiEh8fLzUrl1bfvvtN7l8+bLEx8fLmDFj8v23UUoVPmCTeHjs9fnBP7+vgiQLEZFdu3bJiBEjpEaNGhIQECC9evWSEydOiIhI586dZcqUKbayiYmJEhgYKOnp6baD6tGjR23LIyIiZOHChbbpu+66S9544w0REenevbvMmDHDtiwzM1OCg4Pl4MGDOWKaOXOmtG3bVn755ReH+SdOnJAyZcrI5cuXbfMWLFggnTp1EhHHg/rChQulQ4cODuuPHDlSJkyYIJmZmRIUFCTbtm3LsW1XyWLevHkSFxfnsE6bNm1k9uzZImJJFi+++KJt2ZQpU+T222/PsR2llO95I1mUiMtQALGxscyZM4ejR4+yY8cOkpKS+Pvf/w5YnpqMjo62lY2OjiYjI8N2SQhwGPshODg4x/TFixcByyBEjz32mG0AooiICESEY8eO5Yhp2LBh3H777QwcOJDIyEiefvpp0tPTOXToEOnp6VSvXt1Wz4MPPmgbEtbeoUOHWL9+vcOgR/Pnz+fEiROcPn2a1NRU6tSpk+/9lX2fZO0X+89hP751uXLlbPtAKXX9KXYN3N7QsGFD7r77bt5//30AIiMjHdoVDh8+TGBgIFWrVuXo0aP5qjsqKoqxY8cyZMgQl2VLly7N+PHjGT9+PAcPHqRHjx40aNCAHj16ULZsWU6fPu2y+4CoqCji4+P55ptvciy7du0aQUFB7N+/P8dY264GJ8q+T8CyX7p37+7ycylV0nhz8CN/VSLOLBITE5k8ebLtwH/kyBE+/PBD20AigwYN4o033uDAgQNcvHiR5557jgEDBuSrn5csDz30EK+88go7d+4ELA3VH3/8sdOyq1at4tdffyUzM5MKFSpQunRpSpUqRfXq1enWrRtPPPEE58+f59q1a+zfv5/vv/8+Rx09e/Zkz549fPDBB6Snp5Oens7GjRvZvXs3pUqV4t577+Xxxx8nKSmJzMxM1q1bx9U/9a4tAAAb70lEQVSrV6lSpQqlSpVy2p8+QI8ePdizZw8LFiwgIyODRYsWsWvXrlwHNFLKH+xuGOvVl7tmz57Ntm3b2LZtG5999hmBgYFOBxIrzkpEsggNDWX9+vXccsstlC9fnjZt2nDTTTcxefJkAO69916GDRvGrbfeSkxMDEFBQbz99tsF2tadd97JmDFjGDhwIBUqVOCmm27KdVS9EydO0K9fPypUqEBsbCzx8fEMGzYMgHnz5pGWlkajRo2oWLEi/fr14/jx404/24oVK1i4cCGRkZFUq1aNMWPGcPXqVQAmTZpEkyZNiIuLIyIigjFjxnDt2jXKlSvH2LFjad++PeHh4fz8888O9VaqVIlly5YxefJkKlWqxOuvv86yZcuoXLlygfaLUiWBp4MfnT9/nhYtWtC4cWPKlStH8+bNadOmTa7zr127Vpgfx4H2DaWUum7k52zAHbGJ7o/z4o3Bj+yXvfTSSzm6Js9tvis6+JFSSvkBbw1+lGXHjh00btw4R/nc5hcFTRZKKeUhbw1+lGXXrl20bNnS7flFodgli6y+ocDxcXallPIFbw5+lCUpKYkePXq4Pd+ZhIQE+/7zPO4bStsslFLXjaJuszh48CAxMTHUqlWLsLD/HY8bNGjAokWLCrzduXPnMmHCBObMmUN8fLzL+a54o81Ck4VSSl3ndPAjpZRSRUKThVJKKZc0WSillHIp16Z7Y8wUYIGI/FSE8SjlE/OeW8uFs6ke1REaEcTwl3Pe2aLU9SCv+7z2AJOMMdWBj4APRWRrHuWVKrYunE2l8+qHPapjZacpXopGKf+T62UoEfmPiLQF4oEzwCxjTKIxZrwxpr47lRtjwo0xn1jX222MaWuMiTDGfGOM2Wv9t6K1rDHGvGWM2WeM2W6M8c2TJ0oppXJw2WYhIodE5DURaQEMAvoC7naY8h/gaxFpCDSzrvcM8J2I1AO+s04D3AHUs75GAu/l54MopZSvvPTSSzRu3JimTZvSvHlz1q9fz/3338+uXbu8vq2QkBCv1+kOl48bGmMCsRzIBwJdgNXABDfWCwNuBe4GEJE0IM0Y0wfoZC0211rfGKAPMM86qtPP1rOS6iKSs6tVpZRywhttT/bcaYdat24dy5YtY8uWLbZxaNLS0pgxY4bX4vAHeTVw34blTKIHsAFYCIwUkUtu1h0DJAOzjTHNgM3AY0BVuwRwAsgacq4GcMRu/aPWeZoslFJuuXA2lYendvZafVMeWumyzPHjx6lcuTJly5YFsHXj36lTJyZNmkSrVq2YOXMmr732GuHh4TRr1oyyZcvyzjvvcPfdd1OhQgU2bdrEiRMneP311+nXrx8XL16kT58+nDt3jvT0dCZOnEifPn289rkKIq8zi2eBBcATInKugHW3BB4RkfXGmP/wv0tOAIiIGGPy9Qh5cnIyrVrlfBBx5MiRtj6jlFKqqHTr1o3/+7//o379+nTt2pUBAwY4dMWRlJTEiy++yJYtWwgNDaVz584OI1ceP36cNWvWkJiYSO/evenXrx9BQUF89tlnVKhQgdOnT9OmTRt69+7tcoTLadOmMW3aNGeLPB6IJtdkISK29GyM6QDUE5HZxpgqQIiIHHBR91HgqIist05/giVZnMy6vGS90yprYOljQJTd+jWt8xxUqVIF7e5DKeUvQkJC2Lx5Mz/++COrVq1iwIABDt2Rb9iwgfj4eCIiIgD461//yp49e2zL+/btS6lSpWjUqBEnT54EQER47rnn+OGHHyhVqhTHjh3j5MmTDuPeO5Pbj2ZjzGlPP6c7bRbjgVZAA2A2UBr4L9A+r/VE5IQx5ogxpoGI/IalvWOX9TUCeNX6b9YoHkuB0caYhcAtQIq2VyilioOAgAA6depEp06daNKkCXPnznV73azLV2BJEgDz588nOTmZzZs3U7p0aWrVqkVqqvfaYgrCnSe47wR6A5cARCQJCHWz/keA+caY7UBz4GUsSeI2Y8xeoKt1GuBL4HdgHzAdGOXmNpRSymd+++039u7da5vetm0b0dHRtum4uDi+//57zp07R0ZGBp9++qnLOlNSUrjhhhsoXbo0q1at4tChQ4USe3640/l6mn3bgjGmvLuVi8g2LGcl2XVxUlYAz56KUkqpInbx4kUeeeQR/vjjDwIDA6lbty7Tpk2jX79+ANSoUYPnnnuO1q1bExERQcOGDR26M3dmyJAh9OrViyZNmtCqVSsaNmxYFB8lT+4ki4+MMe8D4caYB4B7sfzyV0opvxIaEeTWHUz5qc+Vm2++mbVr1+aYv3r1atv7wYMHM3LkSDIyMrjzzjvp27cvAHPmzHFY5+LFi4Dljqp169Y53V5WmaLmMlmIyCTrbbTnsbRbvCAi3xR6ZEoplU/+2jfXhAkT+Pbbb0lNTaVbt262ZFGcuDUGoDU5aIJQSqkCmDRpkq9D8FiuDdzGmPuMMU/ZTR81xpw3xlwwxjxUNOEppZTyB3ndDfUQMMtuOllEKgBVsDzZrZRSqoTIK1kYETljN/0xgIikAsGFGpVSSim/kleyCLefEJGXAYwxpfDCo+NKKaWKj7wauFcYYyaKyPPZ5v8fsKIQY8pTSkqK7XH2Xr160atXL1+FopRSfishIYGEhISsybwf7HBDXsniKWCGMWYf8It1XjNgE3C/pxsuqLCwsNw6ylJKKWVl/2N6+vTpKZ7Wl1dHgpeAQcaY2kBj6+xdIrLf040qpZQqXtx5KO93LH02KeWXvDHgTVDqGdeFlCrB3HooTyl/duFsKp1Xa7diShUmd3qdVUopVcLleWZhLMMytcYyvClYBiPaIFmdriullCoR8hqDuxvwLrCX/41YVxOoa4wZJSI+u31WKaVU0crrzOI/QFcROWg/0xgTg2WgothCjEsppZQfyavNIhDLONrZHcMytKpSSqkSIq8zi1nARuuY2Ees86KAgcDMwg5MKaWU/8jrobxXjDGfA32AttbZx4AhIrKrKIJzRrv7UEop14qyuw9EZDew29ONeJN296GUUq55u7uPAj1nYYz5ytMNK6WUKj7yunW2ZW6LgOaFE45SSil/lNdlqI3A91iSQ3bhTuYppZS6TuWVLHYDD4rI3uwLjDFHnJRXSil1ncqrzWJCHssf8X4oSiml/FVet85+kseyzwsnHKWUUv5IuyhXyktCI4KY8tBKj+sY/nI7L0WklPdoslDKS7xxkPc02ShVWHJtszDGRBZlIEoppfxXXmcWM4wxEcBq4GtgjYhkFElUSiml/EpeDdw9jDFBQCfgTmCSMeYwlsTxtYgcLpoQHWnfUEop5Zq3+4Yy+Rn0zjqWxR1Ad6CaiLT2NID8atWqlWzatKmoN6v82JSHVl43Y3Cv7DSFh6d29nUY6jpjjNksIq08qSNfDdwicgDL6HnvGmPKeLJhpZRSxUeBOhIEEJE0bwailFLKfxU4WSillCo58pUsjDEVjTFNCysYpZRS/sllsjDGrDbGVLDeRrsFmG6M+Xfhh6aUUspfuHNmESYi54G7gHkicgvQtXDDUkop5U/cSRaBxpjqQH9gWX43YIwJMMZsNcYss07HGGPWG2P2GWMWZd1VZYwpa53eZ11eK7/bUkopVTjcSRb/BJYD+0RkozGmNpBjjIs8PIbjON6vAW+ISF3gHHCfdf59wDnr/Des5ZRSSvkBd5LFcRFpKiKjAETkd8CtNgtjTE3gz8AM67QBOgNZ3Z/PBfpa3/exTmNd3sVaXimllI+5kyzednOeM28CTwPXrNOVgD/s+pg6CtSwvq8BHAGwLk+xlldKKeVjuT7BbYxpC7QDqhhjHrdbVAEIcFWxMaYncEpENhtjOnkaaJbk5GRatcr51PrIkSNtfUYppVRJNG3aNKZNm+ZsUWVP686ru48yQIi1TKjd/PNAPzfqbg/0Nsb0AIKwJJn/AOHGmEDr2UNN4Ji1/DEgCjhqjAnE0vHVmeyVVqlSBe0bSimlcsrtR7Mx5rSndefV6+z3wPfGmDkicii/FYvIs8CzANYziydFZIgx5mMsyWYhMAJYYl1lqXV6nXX5SslPL4dKKaUKjTsdCZY1xkwDatmXF5GCdo05BlhojJkIbAVmWufPBD4wxuwDzgIDC1i/UkopL3MnWXwMTMVyR1NmQTYiIquxDKKUdTdVjq7NRSQV+GtB6ldKKVW43EkWGSLyXqFHopRSym+5c+tsgjFmlDGmujEmIutV6JEppZTyG+6cWYyw/vuU3TwBans/HKWUUv7IZbIQkZiiCEQppZT/cqeL8nLGmOetd0RhjKlnfeBOKaVUCeFOm8VsIA3L09xgeXhuYqFFpJRSyu+4kyzqiMjrQDqAiFwGtIM/pZQqQdxp4E4zxgRjadTGGFMHuFqoUeUhJSXF9jh7r1696NWrl69CUUopv5WQkEBCQkLWZJin9bmTLCYAXwNRxpj5WPp8utvTDRdUWFhYbh1lKaWUsrL/MT19+vQUT+tz526oFcaYzUAbLJefHhMRjzulUkopVXy4TBbGmARgAbBURC4VfkhKKaX8jTsN3JOAjsAuY8wnxph+xpigQo5LKaWUH3HnMlRWV+UBWIZEfQCYhWV8CqWUUiWAOw3cWO+G6gUMAFryv7GylVJeFBoRxJSHVnq0/vCX27kuqFQ+udNm8RGWLsW/Bt4BvheRa3mvpZQqCE8P9J4kGqXy4s6ZxUxgkIgUaCwLpZRSxV+uDdzGmKcBRGQ5cFe2ZS8XclxKKaX8SF53Q9kPa/pstmXdCyEWpZRSfiqvZGFyee9sWiml1HUsrzYLyeW9s+kio31DKaWUa0XZN1QzY8x5LGcRwdb3WKd99lCe9g2llFKuFVnfUCIS4GnlSimlrg/udPehlFKqhHPrCW6lVNHY3TDWswo6TfFOIEplo2cWSimlXNJkoZRSyiW9DKV8bubdH5MaVKnA6welnvFiNEopZzRZKJ9LDapE59UP+zoMpVQe9DKUUkoplzRZKKWUcqnYXYbS7j6UUsq1ouzuwy9pdx9KKeWat7v70MtQSimlXCp2ZxZKqdx5OoZ3Vh06jrfKTpOFUtcRbxzkdRxv5YxehlJKKeWSJgullFIuabJQSinlUqElC2NMlDFmlTFmlzFmpzHmMev8CGPMN8aYvdZ/K1rnG2PMW8aYfcaY7caYloUVm1JKqfwpzDOLDOAJEWkEtAEeNsY0Ap4BvhOResB31mmAO4B61tdI4L1CjE0ppVQ+FFqyEJHjIrLF+v4CsBuoAfQB5lqLzQX6Wt/3AeaJxc9AuDGmemHFp5RSyn1F0mZhjKkFtADWA1VF5Lh10QmgqvV9DeCI3WpHrfOUUkr5WKE/Z2GMCQE+Bf4uIueNMbZlIiLGGMlPfcnJybRq1SrH/JEjR9r6jFJKqZJo2rRpuXWHVNnTugs1WRhjSmNJFPNFZLF19kljTHUROW69zHTKOv8YEGW3ek3rPAdVqlRh06ZNhRm2UkoVS7n9aDbGnPa07sK8G8oAM4HdIvJvu0VLgRHW9yOAJXbzh1vvimoDpNhdrlJKKeVDhXlm0R4YBvxqjNlmnfcc8CrwkTHmPuAQ0N+67EugB7APuAzcU4ixKXVd2t0w1vNKOk3xvA513Sm0ZCEiawCTy+IuTsoLoGNrKqWUH9KOBJVSDrTnWuWMJgullAPtuVY5o31DKaWUckmThVJKKZc0WSillHJJk4VSSimXNFkopZRyqdjdDZWSkmJ7nL1Xr1706tXLxxEppZT/SUhIICEhIWsyzNP6il2yCAsLy62jLKWUF+hT4NcH+x/T06dPT/G0Pr0MpZRSyiVNFkoppVzSZKGUUsolTRZKKaVc0mShlFLKJU0WSimlXCp2t84qdT3r/6xn/yU/eiXD5zEAPLTO4yqUn9EzC6WUUi7pmYVSyut0AKXrjyYLpfzIrwcOe7T+biK9FIlndACl60+xSxbaN5R/mXn3x6QGVfKojqDUM16Kxre8ca3/1wO+j0FdH7RvKO0byq+kBlWi8+qHfR2GX/D0rMBfYmgSc6MXIlG+5u2+oYpdslCqMPjDWQFArdQFHq1/MGiw50F4gXZGeP3RZKGKvdiBSR7X4Q8HeqX8mSYLpbh+DvTe+ByhPOOFSNT1RpOFKvaulwO9v/BGu4c37sry9PZbvfXWuzRZKJ/zuL1gt3fiUN7jjTagj165z6P1V2qbh1dpslA+5+kv2VreCUNZ6aUs5YwmC+VzehlJKf+nyUIp5Zc8vZSlnRl6lyYLpZTX6cOB1x9NFiWYN7rqCC11yvPnHFI9W135H29cWjx4wLMHDLV527uMiPg6hnypV6+e/OlPfwK0byhPTXlopcddddzRd5KXolHKu8aduOz5j6FifPutfd9Q06dP3yci9Typr9idWWjfUEopd7T7+QWP6yjOt99q31DKq/QSkrpeeaMbmJUnvBDIdUKTRTHmaZtDirmmt62q65Y3vtvjUs/oIE5WmiyKsdSgSkxt+1iB17+w+1UvRqPU9aekX8qyp8mimNMDvlKFxxs3cIw74fnZiT8odskiOTnZ1yG4NG3aNNtofv7swravCW3e3ddhuKRxepfG6V2u4ryv1v1FGI1zo6Gyp3UUu2Rx+vRpX4fgkjvJ4uW/fUuYlPJoOynmmkfrX/ylePxn1Di9S+P0Lldx+ke7YM8qntbgV8nCGNMd+A8QAMwQkev2GkuYlOJf4Vd8HYZSSrnFb5KFMSYAy0OXtwFHgY3GmKUisqsg9SUkJLj9wJ67ZbPKuboL6dShCy6vUWadFVzet55ydW9xuW13y+W3rLs0Tu/FWRjb9uW+zE9ZjdO/v5t58ew6iHe1BvaJyO8ikgYsBPoUtLKsJxe9WTarXGpQJf4VfiXX18nAa3ku/1f4FaaFXQXgyr4Nbm3b3XL5LevtOjVO32zbl/syP2U1Tu9uuzDizI3fnFkANYAjdtNHAa+nTGdtBTt/THLrboWscp62FSilVHHjN31DGWP6Ad1F5H7r9DDgFhEZna1cKpDppIpkwL71Owxw9xF3d8u6W65ytliKctv5KatxerdOd+P05XcTNE5/j9OTz1MZcNaYHSAiQW7W6ZQ/nVkcA6Lspmta5znw9AMrpZTKP39qs9gI1DPGxBhjygADgaU+jkkppRR+lCxEJAMYDSwHdgMficjOrOXGmO7GmN+MMfuMMX4zwK8xJsoYs8oYs8sYs9MY85h1/gRjzDFjzDbrq4cfxHrQGPOrNZ5N1nkRxphvjDF7rf9W9HGMDez22TZjzHljzN/9YX8aY2YZY04ZY3bYzXO6/4zFW9bv63ZjTEsfxvgvY0yiNY7PjDHh1vm1jDFX7Pbp1KKIMY84c/0bG2Oete7L34wxt/s4zkV2MR40xmyzzvfl/sztOOS976eI+P0Ly3MX+4HaQBngF6CRr+OyxlYdaGl9HwrsARoBE4AnfR1ftlgPApWzzXsdeMb6/hngNV/Hme3vfgKI9of9CdwKtAR2uNp/QA/gK8AAbYD1PoyxGxBoff+aXYy17Mv5wb50+je2/n/6BSgLxFiPBQG+ijPb8snAC36wP3M7Dnnt++k3ZxYuePW2Wm8SkeMissX6/gKWs6Iavo0qX/oAc63v5wJ9fRhLdl2A/SJyyNeBAIjID8DZbLNz2399gHli8TMQboyp7osYRWSFWM7cAX7G0h7oU7nsy9z0ARaKyFUROQDsw3JMKHR5xWmMMUB/4MOiiCUveRyHvPb9LC7JwtlttX53QDbG1AJaAOuts0ZbT/Fm+fryjpUAK4wxm40xWf2RVBWR49b3J4CqvgnNqYE4/kf0t/0Jue8/f/3O3ovlF2WWGGPMVmPM98aYjr4Kyo6zv7G/7suOwEkR2Ws3z+f7M9txyGvfz+KSLPyeMSYE+BT4u4icB94D6gDNgeNYTld9rYOItATuAB42xtxqv1As56d+cS+1sdzk0Bv42DrLH/enA3/af84YY8YCGcB866zjwI0i0gJ4HFhgjKngq/goBn/jbAbh+GPG5/vTyXHIxtPvZ3FJFm7dVusrxpjSWP5A80VkMYCInBSRTBG5BkyniE6b8yIix6z/ngI+wxLTyazTT+u/p3wXoYM7gC0ichL8c39a5bb//Oo7a4y5G+gJDLEeNLBe1jljfb8ZS1tAfV/FmMff2K/2JYAxJhC4C1iUNc/X+9PZcQgvfj+LS7Lw29tqrdctZwK7ReTfdvPtr//dCezIvm5RMsaUN8aEZr3H0ui5A8t+HGEtNgJY4psIc3D41eZv+9NObvtvKTDcetdJGyDF7nJAkTKWDjqfBnqLyGW7+VWMpU82jDG1gXrA776I0RpDbn/jpcBAY0xZY0wMljiLrp8L57oCiSJyNGuGL/dnbschvPn99EXLfQFb+3tgaeHfD4z1dTx2cXXAcmq3HdhmffUAPgB+tc5fClT3cZy1sdxR8guwM2sfApWA74C9wLdAhB/s0/LAGSDMbp7P9yeW5HUcSMdyjfe+3PYflrtMpli/r78CrXwY4z4s16ezvp9TrWX/Yv0ubAO2AL18vC9z/RsDY6378jfgDl/GaZ0/B3goW1lf7s/cjkNe+376TXcfSiml/FdxuQyllFLKhzRZKKWUckmThVJKKZc0WSillHJJk4VSSimXNFkopZRySZOFUkoplzRZKOUFxpi1+Sxf1RizwBjzu7Vjx3XGmDtdrLMq+1gOxjLWx3sFiVmp/NBkoZQXiEg7d8tau2b4HPhBRGqLyM1YurBx1XX4h9Zy9rL3zKtUodAnuNV1xRjzMXASS8+lUcAQ4EHgFuBHEbmvkLZ7EbgJS/ffa4B2WDpm6yMiV7KV7YJlwJz4POobCjyKZbCv9cAoIAxIBGqKSJq1K+ofgGjR/8iqkOmZhbreNAF+F5EOwPtYOld7GsuoYX82xpQt5O3XA6aISGPgDyz9BWXXGEvfQU4ZY2KBAUB7EWkOZGLpLfYslg707rAWHYhl+GFNFKrQabJQ1w1jTBAQDrxpnSXATLGMIpaB5aA72G7M5NLGmEPGmJ7GmLtzmV/GGPO2MeYdY8w0Y0wnF2EcEJFt1vebsQy16SruKcaYX4wxG62zugA3AxutMXXB0hEkOF6K0ktQqsgE+joApbyoMZYxMK5Zp5thGVAHY0xNIAlLAvnNGNMOy6hh6+zWdzb/AeBLEfnKWk8ZFzFctXufCQQ7KbMTuzMOEXnYGFMZ2GSdZYC5IvKsk3WXAG8YY1oC5cQyboJShU7PLNT1pAmWLtizNMXSZTNYEkfW+0+wHKy7ASvsyjub3xjLeCoAiGUMeE+tBIKMMX+zm1fO7v13QD9jzA0AxpgIY0y0dfsXgVXALPSsQhUhTRbqetIESz/+WZekgkXknHWZfeLIanA+CVyzW9/Z/J1YLglhrdfVmYVL1jaGvkC8MeaAMWYDMBcYY12+C3gey3jp24FvAPuBgT7Ekvw0Wagio3dDqRLFOrzoaSx3LQkw3DpdOZf5K4CskccCgIUi8n3RRq2U72myUEop5ZJehlJKKeWSJgullFIuabJQSinlkiYLpZRSLmmyUEop5ZImC6WUUi5pslBKKeWSJgullFIuabJQSinl0v8D+BGrJf+tw1kAAAAASUVORK5CYII=\n", + "image/png": "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\n", "text/plain": [ - "<matplotlib.figure.Figure at 0x7fbd7d0b3908>" + "<matplotlib.figure.Figure at 0x7ff6db317208>" ] }, "metadata": {}, @@ -73,7 +73,7 @@ } ], "source": [ - "hist(df, v_mmc, 20, [p_fake, p_top, p_zll, p_ztt, p_sig], range=(0, 200), selection=c_vbf,\n", + "hist(df, v_mmc, 40, [p_fake, p_top, p_zll, p_ztt, p_sig], range=(0, 200), selection=c_vbf,\n", " weight=\"weight\")\n", "None" ]