{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Awkward Example" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import hist\n", "\n", "import pylhe" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "tags": [] }, "outputs": [ { "data": { "text/html": [ "
[{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 5, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 5, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 5, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 5, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " ...,\n",
       " {eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 5, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},\n",
       " {eventinfo: {nparticles: 5, pid: 1, ...}, weights: {...}, particles: ..., ...}]\n",
       "-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\n",
       "backend: cpu\n",
       "nbytes: 16.7 MB\n",
       "type: 10000 * Event[\n",
       "    eventinfo: EventInfo[\n",
       "        nparticles: float64,\n",
       "        pid: float64,\n",
       "        weight: float64,\n",
       "        scale: float64,\n",
       "        aqed: float64,\n",
       "        aqcd: float64\n",
       "    ],\n",
       "    weights: Weights[\n",
       "        "1": float64,\n",
       "        "2": float64,\n",
       "        "3": float64,\n",
       "        "4": float64,\n",
       "        "5": float64,\n",
       "        "6": float64,\n",
       "        "7": float64,\n",
       "        "8": float64,\n",
       "        "9": float64,\n",
       "        "10": float64,\n",
       "        "11": float64,\n",
       "        "12": float64,\n",
       "        "13": float64,\n",
       "        "14": float64,\n",
       "        "15": float64,\n",
       "        "16": float64,\n",
       "        "17": float64,\n",
       "        "18": float64,\n",
       "        "19": float64,\n",
       "        "20": float64,\n",
       "        "21": float64,\n",
       "        "22": float64,\n",
       "        "23": float64,\n",
       "        "24": float64,\n",
       "        "25": float64,\n",
       "        "26": float64,\n",
       "        "27": float64,\n",
       "        "28": float64,\n",
       "        "29": float64,\n",
       "        "30": float64,\n",
       "        "31": float64,\n",
       "        "32": float64,\n",
       "        "33": float64,\n",
       "        "34": float64,\n",
       "        "35": float64,\n",
       "        "36": float64,\n",
       "        "37": float64,\n",
       "        "38": float64,\n",
       "        "39": float64,\n",
       "        "40": float64,\n",
       "        "41": float64,\n",
       "        "42": float64,\n",
       "        "43": float64,\n",
       "        "44": float64,\n",
       "        "45": float64,\n",
       "        "46": float64,\n",
       "        "47": float64,\n",
       "        "48": float64,\n",
       "        "49": float64,\n",
       "        "50": float64,\n",
       "        "51": float64,\n",
       "        "52": float64,\n",
       "        "53": float64,\n",
       "        "54": float64,\n",
       "        "55": float64,\n",
       "        "56": float64,\n",
       "        "57": float64,\n",
       "        "58": float64,\n",
       "        "59": float64,\n",
       "        "60": float64,\n",
       "        "61": float64,\n",
       "        "62": float64,\n",
       "        "63": float64,\n",
       "        "64": float64,\n",
       "        "65": float64,\n",
       "        "66": float64,\n",
       "        "67": float64,\n",
       "        "68": float64,\n",
       "        "69": float64,\n",
       "        "70": float64,\n",
       "        "71": float64,\n",
       "        "72": float64,\n",
       "        "73": float64,\n",
       "        "74": float64,\n",
       "        "75": float64,\n",
       "        "76": float64,\n",
       "        "77": float64,\n",
       "        "78": float64,\n",
       "        "79": float64,\n",
       "        "80": float64,\n",
       "        "81": float64,\n",
       "        "82": float64,\n",
       "        "83": float64,\n",
       "        "84": float64,\n",
       "        "85": float64,\n",
       "        "86": float64,\n",
       "        "87": float64,\n",
       "        "88": float64,\n",
       "        "89": float64,\n",
       "        "90": float64,\n",
       "        "91": float64,\n",
       "        "92": float64,\n",
       "        "93": float64,\n",
       "        "94": float64,\n",
       "        "95": float64,\n",
       "        "96": float64,\n",
       "        "97": float64,\n",
       "        "98": float64,\n",
       "        "99": float64,\n",
       "        "100": float64,\n",
       "        "101": float64,\n",
       "        "102": float64,\n",
       "        "103": float64,\n",
       "        "104": float64,\n",
       "        "105": float64,\n",
       "        "106": float64,\n",
       "        "107": float64,\n",
       "        "108": float64,\n",
       "        "109": float64,\n",
       "        "110": float64,\n",
       "        "111": float64,\n",
       "        "112": float64,\n",
       "        "113": float64,\n",
       "        "114": float64,\n",
       "        "115": float64,\n",
       "        "116": float64,\n",
       "        "117": float64,\n",
       "        "118": float64,\n",
       "        "119": float64,\n",
       "        "120": float64,\n",
       "        "121": float64,\n",
       "        "122": float64,\n",
       "        "123": float64,\n",
       "        "124": float64,\n",
       "        "125": float64,\n",
       "        "126": float64,\n",
       "        "127": float64,\n",
       "        "128": float64,\n",
       "        "129": float64,\n",
       "        "130": float64,\n",
       "        "131": float64,\n",
       "        "132": float64,\n",
       "        "133": float64,\n",
       "        "134": float64,\n",
       "        "135": float64,\n",
       "        "136": float64,\n",
       "        "137": float64,\n",
       "        "138": float64,\n",
       "        "139": float64,\n",
       "        "140": float64,\n",
       "        "141": float64,\n",
       "        "142": float64,\n",
       "        "143": float64,\n",
       "        "144": float64,\n",
       "        "145": float64\n",
       "    ],\n",
       "    particles: var * Particle[\n",
       "        vector: Momentum4D[\n",
       "            px: float64,\n",
       "            py: float64,\n",
       "            pz: float64,\n",
       "            e: float64\n",
       "        ],\n",
       "        id: float64,\n",
       "        status: float64,\n",
       "        mother1: float64,\n",
       "        mother2: float64,\n",
       "        color1: float64,\n",
       "        color2: float64,\n",
       "        m: float64,\n",
       "        lifetime: float64,\n",
       "        spin: float64\n",
       "    ]\n",
       "]
" ], "text/plain": [ "" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Use an example LHE file from package scikit-hep-testdata\n", "from skhep_testdata import data_path\n", "\n", "lhe_file = data_path(\"pylhe-drell-yan-ll-lhe.gz\")\n", "\n", "arr = pylhe.to_awkward(pylhe.read_lhe_with_attributes(lhe_file))\n", "\n", "arr" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of events: 10000\n" ] } ], "source": [ "print(f\"Number of events: {pylhe.read_num_events(lhe_file)}\")" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "
\n", "\n", "\n", "\n", "50\n", "\n", "\n", "150\n", "\n", "\n", "Axis 0\n", "\n", "\n", "\n", "
\n", "
\n", "Regular(100, 50, 150, label='Axis 0')
\n", "
\n", "Int64() Σ=7860.0 (10000.0 with flow)\n", "\n", "
\n", "
\n", "" ], "text/plain": [ "Hist(Regular(100, 50, 150, label='Axis 0'), storage=Int64()) # Sum: 7860.0 (10000.0 with flow)" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hist1 = hist.Hist.new.Reg(100, 50, 150).Int64()\n", "hist1.fill((arr.particles.vector[:, -1] + arr.particles.vector[:, -2]).mass)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjoAAAGwCAYAAACgi8/jAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA0qElEQVR4nO3df3RU9Z3/8dfkJ4khQX6YEAwEKkUDCJQAi9qWSJZIEbdoK+UoRmBx7Q5iTStCC9FFKooronWUigdxj7pQj0j9UUGNWKhlIQkGxSjCLgiiBDXCQBJJMrnfP/zOND8myWQyM3fmzvNxzpyT+2Pufc8nk8l7Pj9thmEYAgAAsKAYswMAAAAIFhIdAABgWSQ6AADAskh0AACAZZHoAAAAyyLRAQAAlkWiAwAALCvO7ADM1tTUpM8//1w9e/aUzWYzOxwAAOADwzB05swZZWZmKiam/XqbqE90Pv/8c2VlZZkdBgAA8MOxY8d04YUXtns86hOdnj17SvquoFJTU02OBgAA+MLpdCorK8vzf7w9UZ/ouJurUlNTSXQAAIgwnXU7oTMyAACwLBIdAABgWSQ6AADAskh0AACAZZHoAAAAyyLRAQAAlkWiAwAALItEBwAAWBaJDgAAsKyoTXQcDodycnI0btw4s0MBAABBYjMMwzA7CDM5nU6lpaXp9OnTLAEBAECE8PX/d9TW6AAAAOsj0QEAAJYV9auXA+g6wzBU1+Bq93hSfGynKwoDQCiQ6ADosroGl3KKt7V7vHJ5gZIT+HgBYD6argAAgGXxlQtAt5QtzVdyQqxq613KXfGW2eEAQAskOgC6JTkhlmYqAGGLpisAAGBZJDoAAMCyqG8G0CFvQ8lr69sfWg4A4YREB0CHOhtKDgDhjKYrAABgWSQ6AHy2c1Ge5+eypZNVubxASfGxJkYEAB2j6QqAz/qkJOjI/dPMDgMAfEaNDgAAsCwSHQAAYFkkOgAAwLJIdAAAgGWR6AAAAMsi0QEAAJZFogMAACyLRAcAAFgWiQ4AALAsEh0AAGBZEZ/onDp1Srm5uRo9erRGjBihdevWmR0SAAAIExG/1lXPnj21Y8cOJScnq6amRiNGjNC1116rPn36mB0aAAAwWcTX6MTGxio5OVmSdO7cORmGIcMwTI4KAACEA9MTnR07dmj69OnKzMyUzWbTli1b2pzjcDiUnZ2tHj16aMKECdqzZ0+L46dOndKoUaN04YUX6s4771Tfvn1DFD0AAAhnpic6NTU1GjVqlBwOh9fjmzZtUlFRke6++27t3btXo0aNUkFBgU6ePOk5p1evXtq3b58OHz6s559/XlVVVe3e79y5c3I6nS0eAADAmkxPdKZOnaoVK1ZoxowZXo+vXr1a8+fP15w5c5STk6O1a9cqOTlZ69evb3Nuenq6Ro0apZ07d7Z7v5UrVyotLc3zyMrKCthrAfCd2nqXausbPQ+akwGYxfREpyP19fUqLy9Xfn6+Z19MTIzy8/O1a9cuSVJVVZXOnDkjSTp9+rR27NihYcOGtXvNJUuW6PTp057HsWPHgvsigCiUu+It5RRv8zzqGlxmhwQgSoX1qKuvvvpKLpdL6enpLfanp6fr448/liR9+umnuuWWWzydkG+77TaNHDmy3WsmJiYqMTExqHEDAIDwENaJji/Gjx+viooKs8MAol5SfKwqlxeotr5RuStKzA4HACSFedNV3759FRsb26ZzcVVVlTIyMkyKCoA3NptNyQlx6pvSQ0fun6bK5QVmhwQA4Z3oJCQkaOzYsSop+ce3w6amJpWUlGjixIndurbD4VBOTo7GjRvX3TABAECYMr3p6uzZszp06JBn+/Dhw6qoqFDv3r01cOBAFRUVqbCwULm5uRo/frzWrFmjmpoazZkzp1v3tdvtstvtcjqdSktL6+7LAAAAYcj0RKesrEx5eXme7aKiIklSYWGhNmzYoJkzZ+rLL79UcXGxTpw4odGjR2vr1q1tOigDAAC0ZnqiM2nSpE7n2FiwYIEWLFgQoogAAIBVhHUfHQAAgO6I2kSHzsgAAFhf1CY6drtdlZWVKi0tNTsUAAAQJKb30QEQXgzDUF2Di4n/AFgCiQ6AFuoaXMop3mZ2GAAQEFHbdAUAAKyPGh0A7Spbmq/khFjPdlJ8bAdnA0D4idoaHUZdAZ1LTohVckKc52Gz2cwOCQC6JGoTHUZdAQBgfVGb6AAAAOsj0QEAAJZFogMAACyLRAcAAFgWiQ4AALCsqE10GF4OAID1RW2iw/ByAACsL2oTHQAAYH0kOgAAwLJIdAAAgGWR6AAAAMsi0QEAAJZFogMAACwrahMd5tEBAMD6ojbRYR4dAACsL2oTHQAAYH0kOgCCLqd4m7IXv6ba+kazQwEQZeLMDgBA9Gie6CTFx8pms5kYDYBoQKIDIGRyV5R4fq5cXqDkBD6CAAQXTVcAAMCySHQABEVSfKwqlxeobOlkz76di/JMjAhANKLeGEBQ2Gw2JSfEKTkhTkfunyZJdEYGEHLU6AAAAMuK2kSHmZEBALC+qG26stvtstvtcjqdSktLMzscwHS19Y3KKd5mdhgAEFBRm+gAkAzDUF2DSxL9ZwBYE4kOEMXqGlzU4gCwtKjtowMAAKyPRAeApJZz3JQtnazK5QVKio81MSIA6D6argBIkvqkJHjmuwEAq6BGBwAAWBaJDgAAsCwSHQAAYFkkOgAAwLJIdAAAgGWR6AAAAMuK2kSHRT0BALC+qE107Ha7KisrVVpaanYoAAAgSKI20QEAANZHogPAFDnF25S9+DVWTQcQVCwBAcBU7kQnKT5WNpvN5GgAWA01OgBMlbuiRDnF21TX4DI7FAAWRKIDAAAsi0QHQMgkxceqcnmBypZONjsUAFGCPjoAQsZmsyk5gY8dAKFDjQ6AkEtOiNOR+6epcnmB2aEAsDgSHQAAYFkkOgAAwLJIdAAAgGWR6AAAAMsi0QEAAJZFogMAACyLRAcAAFgWiQ4AALCsqJ2i1OFwyOFwyOViIUFEn9r6RuUUbzM7DAAIuqit0bHb7aqsrFRpaanZoQAhYxiGausbVVvfaHYoABASUVujA0SjugYXNTkAokrU1ugAAADro0YHiHJlSycrOSFOSfGxZocCAAFHogNEueSEOCUn8FEAwJpougIAAJbF1zggSlUuL6AmB4DlUaMDAAAsi0QHAABYFokOAACwLBIdAABgWSQ6AADAskh0AACAZZHoAAgLOcXblL34NRYcBRBQJDoAAMCymC0MiAK19Y0Rs2p58xqdpPhY2Ww2E6MBEOlIdACEldwVJZ6fmb0ZQHfxCQJYlGEYqmtwSRL9XgBELRIdwKLqGlxh31yVFB+ryuUFqq1v9NTk7FyUpx+u2m5yZACsgkQHgGlsNlubpqmkBMZIAAgcPlGAKLBzUZ7n57Klk1W5vEBJ8bEmRuQbhpwD6C5qdIAo0LyWJDkhLuw6+CYnxOnI/dMk0Z8IQGBRowMAACwrvL7WAQiK5jUmkchdy8O8OgC6ihodAGEvd0WJcoq3eYbLA4CvIj7ROXbsmCZNmqScnBxdeumleuGFF8wOCQAAhImIb7qKi4vTmjVrNHr0aJ04cUJjx47VT37yE5133nlmhwbAD97m1gEAf0V8otO/f3/1799fkpSRkaG+ffuqurqaRAeIUN7m1gEAf5nedLVjxw5Nnz5dmZmZstls2rJlS5tzHA6HsrOz1aNHD02YMEF79uzxeq3y8nK5XC5lZWUFOWoAABAJTE90ampqNGrUKDkcDq/HN23apKKiIt19993au3evRo0apYKCAp08ebLFedXV1brpppv05JNPdni/c+fOyel0tngACD/ukWKVywvMDgVABDM90Zk6dapWrFihGTNmeD2+evVqzZ8/X3PmzFFOTo7Wrl2r5ORkrV+/3nPOuXPn9NOf/lSLFy/WZZdd1uH9Vq5cqbS0NM+D2h8AAKzL9ESnI/X19SovL1d+fr5nX0xMjPLz87Vr1y5J363QfPPNN+vKK6/U7NmzO73mkiVLdPr0ac/j2LFjQYsfAACYK6wTna+++koul0vp6ekt9qenp+vEiROSpHfffVebNm3Sli1bNHr0aI0ePVoffPBBu9dMTExUampqiwcAALCmiB/acMUVV6ipqcnsMICwUVvfqJzibWaHAQBhIaxrdPr27avY2FhVVVW12F9VVaWMjAyTogIAAJEirBOdhIQEjR07ViUl/5g0rKmpSSUlJZo4cWK3ru1wOJSTk6Nx48Z1N0wAABCmTG+6Onv2rA4dOuTZPnz4sCoqKtS7d28NHDhQRUVFKiwsVG5ursaPH681a9aopqZGc+bM6dZ97Xa77Ha7nE6n0tLSuvsyAABAGDI90SkrK1NeXp5nu6ioSJJUWFioDRs2aObMmfryyy9VXFysEydOaPTo0dq6dWubDspANGje/6ZyeUGLGYQNw1Bdg8uz0jcAIAwSnUmTJskwjA7PWbBggRYsWBCiiIDIVNfgohMyALQS1n10AAAAusP0Gh2zOBwOORwOuVwus0MBOuWtWcr9c1J8rGw2m9fnlS2drOSEOCXFx4YkTgAIN1Gb6NAZGZHEW7NU7orvRiO27qvTXHJCHCuBA4hqNF0BAADLItEBAACWRZ02YEEdNWcBQDShRgcAAFhW1H7lY9QVrIJFPAGgfVFbo2O321VZWanS0lKzQwG6pHJ5gSqXF5gdBgBEhKhNdAAAgPWR6AAAAMsi0QEiXF19k9khAEDY8ivRGTJkiL7++us2+0+dOqUhQ4Z0OygAvvvhqu1mhxAyOcXblL34NVZoB+AzvxKdI0eOeB2tdO7cOR0/frzbQQGAL2rrG5W9+DWSHwDt6tLw8pdfftnz87Zt21qsEeVyuVRSUqLs7OyABRdMDC9HJEuKj/WMvKqtb/Sse8UingDQUpcSnZ/+9KeSJJvNpsLCwhbH4uPjlZ2drYceeihgwQUTi3oiktlsNq8zH7OIJwC01KVPxKam7zo9Dh48WKWlperbt29QggKAjribqWiuAtAZv776HT58ONBxAIDP3E11ANAZv+u4S0pKVFJSopMnT3pqetzWr1/f7cAAoCvctTtJ8bGy2WwmRwMgXPiV6PzHf/yHli9frtzcXPXv358PFcBEyQlxOnL/NLPDCBp3x+vmna53LsprM6zefYyV2wE059enwdq1a7VhwwbNnj070PEAQAveOl4nJTDXKQDf+PVpUV9fr8suuyzQsQCAT9y1PGVLJ3d6LnPtANHNr0TnX//1X/X8888HOpaQcjgcysnJ0bhx48wOBUAXuWt5vDVRMXsygOb8arr69ttv9eSTT+qtt97SpZdeqvj4+BbHV69eHZDggol5dAAAsD6/Ep33339fo0ePliTt37+/xTE6JgMAgHDhV6KzfXv0LCIIhEptfaNyirdJYuSQN1YfXQYgOPgkBUzSOrHp7By05U5+vJWTYRiqrW9s0VeHuXaA6ONXopOXl9fhh8Tbb7/td0AAEAjVNQ3MtQPAv0TH3T/HraGhQRUVFdq/f3+bxT4BwAytkxwA0cmvROfhhx/2uv+ee+7R2bNnuxUQAAQbfaGA6BHQ6UVvvPFG1rkCvOhs0jpvfUlq6xtlGEYow4xY3iYQLFs62edJBQFYV0C/yuzatUs9evQI5CWBqNB6NW73Nv+kfeNtmYj2JhQEEF38+hS49tprW2wbhqEvvvhCZWVlWrZsWUACCzaHwyGHwyGXy2V2KIgy7pobX2buratvCnY4AGBpfiU6rWcSjomJ0bBhw7R8+XJNmTIlIIEFGzMjwyyta286QodaAOgevxKdp59+OtBxAAAABFy3GrDLy8v10UcfSZKGDx+uMWPGBCQoIBrsXJTnqbFx98Vp3jcnOSFOtfWNbfYlxceaE3CE6mhSwebNh0wiCFiTX4nOyZMn9Ytf/ELvvPOOevXqJUk6deqU8vLytHHjRvXr1y+QMQIRyzAM1TW4vPbHSUr4x6BHXzrS0rk28Jo3IzLUHLAmv4aX33bbbTpz5ow+/PBDVVdXq7q6Wvv375fT6dTChQsDHSMQseoaXMop3talfjnwn7v25sj900haAEjyM9HZunWrHn/8cV1yySWefTk5OXI4HHr99dcDFhwABIq3uXZ2LsozMSIAoeDXV56mpibFx8e32R8fH6+mJobDAh0txunua8NkgKHlba6d5s2HAKzJr7/yK6+8Urfffrs+//xzz77jx4/rjjvu0OTJTHAGdMTd16Z1x1eaXQAg8Pz6NH3sscd0zTXXKDs7W1lZWZKkY8eOacSIEXr22WcDGiBgVe7EprvnAADa51eik5WVpb179+qtt97Sxx9/LEm65JJLlJ+fH9DgEFjNm1MYYQIAiAZdarp6++23lZOTI6fTKZvNpn/+53/Wbbfdpttuu03jxo3T8OHDtXPnzmDFCgAA0CVdSnTWrFmj+fPnKzU1tc2xtLQ0/du//ZtWr14dsOAAAAC6o0uJzr59+3TVVVe1e3zKlCkqLy/vdlCh4HA4lJOTo3HjxpkdSliprW9U9uLXlL34NZ8WnQQiTXudvnOKt/G+ByyoS4lOVVWV12HlbnFxcfryyy+7HVQo2O12VVZWqrS01OxQYBGGYai2vtHzAACYr0u9UQcMGKD9+/froosu8nr8/fffV//+/QMSmFXRIdi63LMgt4ffNwCEXpdqdH7yk59o2bJl+vbbb9scq6ur0913362rr746YMEBAAB0R5e+Xi5dulSbN2/W97//fS1YsEDDhg2TJH388cdyOBxyuVz63e9+F5RAgUjSemVyVh0HAHN0KdFJT0/X3//+d/3yl7/UkiVLPFPY22w2FRQUyOFwKD09PSiBwn/eVtBu/nNSfGybWXrRPa1XJqfJCgDM0eVP30GDBukvf/mLvvnmGx06dEiGYWjo0KE6//zzgxFfRAuX/jje+o40X02bviPtC5ffIQDAP35/ap9//vkMzQYAAGGNpXvDUCjmstm5KK/FdvOh0c3jcD9YaRvRgvc8YC3Uw0ep5n1IJJq3ADf3+573PGAN1OiESEc1JnxzDB/MDA0A1kKiEyLuGpPmtSS5K0qUU7xNdQ0uEyNrX+vmLcBqkuJjVbm8QGVLJ5sdCoAgIdEJA+G6xk7r5q1QiIQalUiIEb6x2WwM/wcsjr9uIAjcC0cCAMxFohME3iboq6tv8vt6zOVijta1Ne7t1n2qmv9+EN34WwXCD3+FQeBtBJN7OQBEjub9qZpv058DACIHiU6E8vebo/vcaOxbwrdtdAfvHyAy8ZcaIu6FHWvrG9vUFLi1NwQdAAD4h0QnRHwZ2VHX4Gq3uQQAAHRd1A4vdzgcysnJYb2uIArlMOzu3Kt5TRo1aHALxLQPTEUAmC9qa3TsdrvsdrucTqfS0tLMDiesRFs/Hm+dxxFd3NMBMIIOsJ6oTXTCUXeGoEc6b0Py3T8nxcfKZrOZFVobzX9P0ZIMInDo1AyEFn9hYSSah6B3tKhoKP8Z7FyU5/k9uIeRt+4n1fz3RB8qAAhvUdtHxyzuKvLK5QVmhwIvmi97wdIAABD5+BQ3iXsxwebDzX0Zgu5uKvE2a28kVof70yfCrNfqy+8H0amjplcA5oqM/4YW5F5MsDlfahD4B2seanjQno6aXgGYi6YrAABgWXw9DbLuNq207hDbvLOsW3tV5L42CwViOG24NZ01j6d5k1Pz4740QXW2Cnnr34/7Xknxsd19CQgT7c1Y3rrZGUB4ItEJc60ThuadZd2oIu+Yt/IJVJn50/yIyMKM5UBk4xMZAeetw3Sw5sTp6F5AIARqfqv2BhIACC4SnTDUurmk+Qejt9Fa4aajGpRAN2t1pbbGW7Mf0JlAvWfC9e8VsDoSnQjjbbQWfOOt2Q8AYG188iNodi7Ki7h7uWvTjtw/jYQyCrlrTJt3Li5bOrnNPl+ULZ3c4jmh/HsA8A98kiNoQlmDQm0NAsHf+a288WUgQbiu5wZYCf8d0GW19Y3KXvyashe/1uWOlTnF2/x6HmBFuStKlFO8TXUNLrNDASyLGh2TdTZPSzRyrwMWiPl9gqGjzuIAgPBComNBkTCM1Z8Yva0nBESKSBgxCVgRiY4FRcKHqD8xeltPCIgUwR4xGW6zkwPhgr+ECEDzVnjj94PmmicZ1D4C5qMzsgWYOYzV2zpAXdE8Vvcw3q6sE+XPc4BAC9TsyQACjxodC/BlGGuweFsHqCuax+rPMF73c/jmDDMx4zYQvkh0IhQjf7rOXWa+ruoONMf7B4hMJDoW5G10R9nSyUpOiPM08fhyTnPNOzl2xn0dwzAC8nq6+o/F3YwXqNcONNfR+8d9vKv86UTcuvMxAO9IdCzIl9ldAzkDbGtmNyeZ+dphfbx/gMhiic7IM2bM0Pnnn6+f/exnZocCAADCiCW+gtx+++2aO3eunnnmGbNDQTOh7NNAnyUEUqCmDGDqAcB8lqjRmTRpknr27Gl2GAAAIMyYnujs2LFD06dPV2Zmpmw2m7Zs2dLmHIfDoezsbPXo0UMTJkzQnj17Qh8oAACIOKYnOjU1NRo1apQcDofX45s2bVJRUZHuvvtu7d27V6NGjVJBQYFOnjwZ4kghqc3kgEyUBnSNuzmLkVJAaJjeR2fq1KmaOnVqu8dXr16t+fPna86cOZKktWvX6rXXXtP69eu1ePHiLt/v3LlzOnfunGfb6XR2Pego1npyQCZKAwCEM9NrdDpSX1+v8vJy5efne/bFxMQoPz9fu3bt8uuaK1euVFpamueRlZUVqHABAECYMb1GpyNfffWVXC6X0tPTW+xPT0/Xxx9/7NnOz8/Xvn37VFNTowsvvFAvvPCCJk6c6PWaS5YsUVFRkWfb6XSS7HSDe6K05pOntdbRBGuBmlQQAABvwjrR8dVbb73l87mJiYlKTEwMYjTmMGsYqy8TpXU2wZo/cXdlBlkg0rSe9biz93rr6RTc282/XPj6N9PVewPhLqzfwX379lVsbKyqqqpa7K+qqlJGRoZJUQFAeGldm9qdhXYBqwnrPjoJCQkaO3asSkr+8Ufb1NSkkpKSdpumfOVwOJSTk6Nx48Z1N0wAABCmTE90zp49q4qKClVUVEiSDh8+rIqKCh09elSSVFRUpHXr1umZZ57RRx99pF/+8peqqanxjMLyl91uV2VlpUpLS7v7EgAgrOxclGd2CEDYML3pqqysTHl5//ijdHcULiws1IYNGzRz5kx9+eWXKi4u1okTJzR69Ght3bq1TQdltOVLvx2rTnUfyteO6BTO75+kBNO/wwJhw/REZ9KkSZ2OvFmwYIEWLFgQoogAAIBVkPYj7DH7MqKFe+Zxb6Ooshe/puzFr6nmXIPXc3y9vvs6zUdmtd7ny/P8vV8wnhPM6yDymV6jA3SG2ZcRLXwZLVXX4GJUFdAFUVujw6grAACsL2prdOx2u+x2u5xOp9LS0swOJyy1N6OxFPx5Otz3luR1RuWk+Nig3h8INm9/XzsX5flVgxmqv0sgEkVtooPOtTejsVn3dt+fmVphBd7e4/6OluJvAmhf1DZdAQAA6yPRAQAAlkWiAwAIiWAO+Y7E4eSRGHMkitqGXYfDIYfDIZfLZXYoEcffGWHDeSZZAIA1RW2NDmtdAQBgfVGb6AAAAOsj0QEAAJZFogMAACwrajsjA0AkCNRoHF+u420x0UDGAJiBRAcAwpivyzo0H9XoLTHx5Tqtz2FJCVhB1DZdsagnAPiv9RwwkTAnTLBijITXHs2iNtFheDmAcONe6NO9SKfZ19m5KK9bzwfCAU1XABAm2lvM1qzr+LvIKBBOeBcDAADLItEBAACWRaIDAAAsiz466JTZi3GafX8gmLr6/q6rb/L8XLm8wO++OP7OkeM+3zCMLl27s/sYhqG6BpfX5yTFx8pms3U5xq7EDOsi0QGACPLDVdsDch1/58hxP6+jEV3ert3Z/eoaXMop3ub1OV1N6NqbD6i7o9AQmaK26Yp5dAAAsL6ordGx2+2y2+1yOp1KS0szOxwA8MpdC9G8VsJdu5EUH9vt69TWN7ap8XBvu+fjaX5OV+xclBewGijAX1Gb6ABAJGjdZJOcEOdXvxxfrtN6u7vz8TAPD8IB70IAQEQJ5pILgbp2KJfIiMTlOEKJRAcAAFgWiQ4AALAsEh0AAGBZJDoAAMCyGHUFAAg5f2c9bu86kdTptqOZo7tbHmiLRAcAEHL+znrc3nUiSUczR3e3PNBW1DZdMTMyAADWF7WJjt1uV2VlpUpLS80OBQAsr2zp5KCuNbVzUV7I7hUozWNG8FA/BgAIumA3xzSfhTlSmn6YOTo0KGUAAGBZkZH2AkAUSU6I05H7p3m2/R1R5M91Wj8HiHTU6AAAAMsi0QEAAJZFogMAACyLPjoAANPU1jcqp3ibz+dULi8Iyr3bm6jP2znBikdSp/cK1IgyX1+XP+eEG2p0AACAZZHoAAAAywq/OiYAQNirq2/y/BwpC2oGI+bW13FvG4YRkOuj+0h0AABd9sNV2z0/R8rCmsGIufV13NuRsARFtIjapisW9QQAwPqitkbHbrfLbrfL6XQqLS3N7HAAICKULZ3sGX3Tuvai+XZyQlzYNN94ixnRI2oTHQCIFIFalsHbdXy5dmfntB5SnJwQ59nnz1IWrYct+4OlLOAWtU1XAADA+kh0AACAZZHoAAAAyyLRAQAAlkWiAwAALItEBwAAWBaJDgAAsCwSHQAAYFkkOgAAwLJIdAAAgGWR6AAAAMsi0QEAAJZFogMAACyL1csBACHhXlG8tr7R75XJ21sBvburlbuv2/z6vq627k1dfVOn1+lOeRiGoboGV5vrt76XezspPlY2m61L97AKEh0AQMTIXVESsut2514/XLU9INdpT12Dy2ty1Ppe7u3K5QVKTojOf/lR23TlcDiUk5OjcePGmR0KAAAIkuhM7yTZ7XbZ7XY5nU6lpaWZHQ4AwA9lSycrOSFOSfGxAbnezkV5LWpj/I2ntr7RU5tStnSyJLXYDlbMre+FKE50AACRLzkhLqBNMkkJ3Wvo8BaPt+1gxRytzVMdidqmKwAAYH2kfgAARAh/R6w1f17l8oJAh9XhvcyuZaJGBwAAWBaJDgAAsCwSHQAAYFkkOgAAwLJIdAAAgGWR6AAAAMsi0QEAAJZFogMAACyLRAcAAFgWiQ4AALAsEh0AAGBZJDoAAMCyWNQTANBlyQlxOnL/tBb7Wm+HG3fM/i6M2ZFwWLwS3lGjAwAALItEBwAAWBaJDgAAsCwSHQAAYFkkOgAAwLJIdAAAgGWR6AAAAMsi0QEAAJZliUTn1Vdf1bBhwzR06FA99dRTZocDAADCRMRP49jY2KiioiJt375daWlpGjt2rGbMmKE+ffqYHRoAADBZxNfo7NmzR8OHD9eAAQOUkpKiqVOn6o033jA7LAAAEAZMT3R27Nih6dOnKzMzUzabTVu2bGlzjsPhUHZ2tnr06KEJEyZoz549nmOff/65BgwY4NkeMGCAjh8/HorQAQDdVFffFJBzQqG2vtHzMONegbp3e9ft6F7+nhMOTG+6qqmp0ahRozR37lxde+21bY5v2rRJRUVFWrt2rSZMmKA1a9aooKBABw4c0AUXXNDl+507d07nzp3zbDudzm7FDwDw3w9XbQ/IOaGQu6LE1HsF6v6tr+PLvfw9JxyYXqMzdepUrVixQjNmzPB6fPXq1Zo/f77mzJmjnJwcrV27VsnJyVq/fr0kKTMzs0UNzvHjx5WZmdnu/VauXKm0tDTPIysrK7AvCAAAhA3Ta3Q6Ul9fr/Lyci1ZssSzLyYmRvn5+dq1a5ckafz48dq/f7+OHz+utLQ0vf7661q2bFm711yyZImKioo8206nk2QHAEIoKT5WlcsLJH3X3OGuCShbOlnJCXFKio+VpHbPkbpXe+C+v7d7G4bhOa/1vdzndBRzoONpvi9Y2ntdUuevvfk5OxflhU3tW3Nhneh89dVXcrlcSk9Pb7E/PT1dH3/8sSQpLi5ODz30kPLy8tTU1KRFixZ1OOIqMTFRiYmJQY0bANA+m82m5IS2/36SE+Ja7G/vnGDc333v5v1L2juns32BjCcU2ntdXT0nKcH0RiKvwjrR8dU111yja665xuwwAABAmAnP9Ov/69u3r2JjY1VVVdVif1VVlTIyMkyKCgAARIqwTnQSEhI0duxYlZT8o32yqalJJSUlmjhxYreu7XA4lJOTo3HjxnU3TAAAEKZMb7o6e/asDh065Nk+fPiwKioq1Lt3bw0cOFBFRUUqLCxUbm6uxo8frzVr1qimpkZz5szp1n3tdrvsdrucTqfS0tK6+zIAAEAYMj3RKSsrU15enmfbPSKqsLBQGzZs0MyZM/Xll1+quLhYJ06c0OjRo7V169Y2HZQBAABaMz3RmTRpUovhfN4sWLBACxYsCFFEAADAKsK6jw4AAEB3RG2iQ2dkAACsL2oTHbvdrsrKSpWWlpodCgAACJKoTXSCzVV3RrUH/t5p/yMAAKzKMAxt3rxZ1dXVpsVAohNg1dXVWn7P3Trx5Dx9ueU+ffjhfrNDAgDAFB9+uF/XXXedsrOztWzZMlMSHhKdAKmurtayZcuUnZ2tPzyyRv8ybaokqaGhweTIAAAwh/t/4JQpU7R69WpTEh7Th5dHuurqaj388MN65JFH5HK5ZLfb9Zvf/EafffaZXnzxRbPDAwDLSU6I05H7p4Xk2s0X+ezOdSSFLGb3vWrrG5VTvC0o9+yq3/72t3r88cf1n//5n1q9erUeeeQR3X777brjjjvUu3fvoN47ahMdh8Mhh8Ohxsbv3sROp7NLzz99+rT+8Ic/aO3atS0SnAsuuECS9Nlnn0mSas7WdPnaABAtausb1XSuVtJ3n8ONXlbs9uWcUN47lPE039ceX2I/43S2e532XpekTl9783O83aPmbI3n5wsuuECrVq3Sb37zmxYJz6233qrbbruty6sUuO/faV9YI8odO3bMkOT3o1+/fsYHH3zQ5rrl5eXdui4PHjx48OBhlUd5eXmb/5MffPCB0a9fv25f+9ixYx3+n4/aGh23zMxMHTt2TD179pTNZvP5ec1rdCZMmNCmRsftr3/9q0aPHh3gqIPD6XQqKytLx44dU2pqqtnhWBblHDqUdWhQzqERieVcUVGhH//4xy32nTx5Ug8++KAef/xxxcbG6s477/SrRscwDJ05c0aZmZkdnhf1iU5MTIwuvPDCLj8vNTVVq1at0uLFiz19dBwOhyfhcUtJSYmYN6RbampqxMUciSjn0KGsQ4NyDo1IKueUlBTPz60TnKKiom730fElOWLUVTf17t1b9957r44cOaKioiKtXbtWgwcP1n333Wd2aAAAhIX77rtPgwcP1h//+EcVFRXpyJEjuvfee4PeEVki0QmY1gnPG2+8IUmKj483OTIAAMzh/h/4xhtvhDzBcYv6pqtAcyc8d9xxh9555x2NGDHC7JB8lpiYqLvvvluJiYlmh2JplHPoUNahQTmHRiSW84gRI/Tiiy9q0qRJIU1umrMZBmsUAAAAa6LpCgAAWBaJDgAAsCwSHQAAYFkkOgAAwLJIdKLQ8ePHdeONN6pPnz5KSkrSyJEjVVZW5jluGIaKi4vVv39/JSUlKT8/XwcPHjQx4sjkcrm0bNkyDR48WElJSfre976ne++9t8W6LJR11+3YsUPTp09XZmambDabtmzZ0uK4L2VaXV2tG264QampqerVq5fmzZuns2fPhvBVhL+OyrmhoUF33XWXRo4cqfPOO0+ZmZm66aab9Pnnn7e4BuXcuc7ez83deuutstlsWrNmTYv9lHPHSHSizDfffKPLL79c8fHxev3111VZWamHHnpI559/vuecVatW6dFHH9XatWu1e/dunXfeeSooKNC3335rYuSR54EHHtATTzyhxx57TB999JEeeOABrVq1Sn/4wx8851DWXVdTU6NRo0bJ4XB4Pe5Lmd5www368MMP9eabb+rVV1/Vjh07dMstt4TqJUSEjsq5trZWe/fu1bJly7R3715t3rxZBw4c0DXXXNPiPMq5c529n91eeukl/c///I/X5Q4o5050f1lMRJK77rrLuOKKK9o93tTUZGRkZBgPPvigZ9+pU6eMxMRE47//+79DEaJlTJs2zZg7d26Lfddee61xww03GIZBWQeCJOOll17ybPtSppWVlYYko7S01HPO66+/bthsNuP48eMhiz2StC5nb/bs2WNIMj799FPDMChnf7RXzp999pkxYMAAY//+/cagQYOMhx9+2HOMcu4cNTpR5uWXX1Zubq5+/vOf64ILLtCYMWO0bt06z/HDhw/rxIkTys/P9+xLS0vThAkTtGvXLjNCjliXXXaZSkpK9Mknn0iS9u3bp7/97W+aOnWqJMo6GHwp0127dqlXr17Kzc31nJOfn6+YmBjt3r075DFbxenTp2Wz2dSrVy9JlHOgNDU1afbs2brzzjs1fPjwNscp584xM3KU+b//+z898cQTKioq0m9/+1uVlpZq4cKFSkhIUGFhoU6cOCFJSk9Pb/G89PR0zzH4ZvHixXI6nbr44osVGxsrl8ul3//+97rhhhskibIOAl/K9MSJE7rgggtaHI+Li1Pv3r0pdz99++23uuuuuzRr1izPYpOUc2A88MADiouL08KFC70ep5w7R6ITZZqampSbm+tZdHTMmDHav3+/1q5dq8LCQpOjs5Y//elPeu655/T8889r+PDhqqio0K9+9StlZmZS1rCMhoYGXX/99TIMQ0888YTZ4VhKeXm5HnnkEe3du1c2m83scCIWTVdRpn///srJyWmx75JLLtHRo0clSRkZGZKkqqqqFudUVVV5jsE3d955pxYvXqxf/OIXGjlypGbPnq077rhDK1eulERZB4MvZZqRkaGTJ0+2ON7Y2Kjq6mrKvYvcSc6nn36qN99801ObI1HOgbBz506dPHlSAwcOVFxcnOLi4vTpp5/q17/+tbKzsyVRzr4g0Ykyl19+uQ4cONBi3yeffKJBgwZJkgYPHqyMjAyVlJR4jjudTu3evVsTJ04MaayRrra2VjExLf/EYmNj1dTUJImyDgZfynTixIk6deqUysvLPee8/fbbampq0oQJE0Iec6RyJzkHDx7UW2+9pT59+rQ4Tjl33+zZs/X++++roqLC88jMzNSdd96pbdu2SaKcfWJ2b2iE1p49e4y4uDjj97//vXHw4EHjueeeM5KTk41nn33Wc879999v9OrVy/jzn/9svP/++8a//Mu/GIMHDzbq6upMjDzyFBYWGgMGDDBeffVV4/Dhw8bmzZuNvn37GosWLfKcQ1l33ZkzZ4z33nvPeO+99wxJxurVq4333nvPM9rHlzK96qqrjDFjxhi7d+82/va3vxlDhw41Zs2aZdZLCksdlXN9fb1xzTXXGBdeeKFRUVFhfPHFF57HuXPnPNegnDvX2fu5tdajrgyDcu4MiU4UeuWVV4wRI0YYiYmJxsUXX2w8+eSTLY43NTUZy5YtM9LT043ExERj8uTJxoEDB0yKNnI5nU7j9ttvNwYOHGj06NHDGDJkiPG73/2uxT8Cyrrrtm/fbkhq8ygsLDQMw7cy/frrr41Zs2YZKSkpRmpqqjFnzhzjzJkzJrya8NVROR8+fNjrMUnG9u3bPdegnDvX2fu5NW+JDuXcMZthNJumFQAAwELoowMAACyLRAcAAFgWiQ4AALAsEh0AAGBZJDoAAMCySHQAAIBlkegAAADLItEBAACWRaIDwNLuuece2Ww22Ww2rVmzxrQ4jhw54olj9OjRpsUBRBsSHQDddvPNN8tms+nWW29tc8xut8tms+nmm28OfWD/3/Dhw/XFF1/olltuabH/vffe08yZM9W/f38lJiZq0KBBuvrqq/XKK6/I10njp0+frquuusrrsZ07d8pms+n9999XVlaWvvjiC/3617/u9usB4DsSHQABkZWVpY0bN6qurs6z79tvv9Xzzz+vgQMHmhiZFBcXp4yMDCUnJ3v2/fnPf9Y//dM/6ezZs3rmmWf00UcfaevWrZoxY4aWLl2q06dP+3TtefPm6c0339Rnn33W5tjTTz+t3NxcXXrppYqNjVVGRoZSUlIC9roAdI5EB0BA/OAHP1BWVpY2b97s2bd582YNHDhQY8aMaXHu1q1bdcUVV6hXr17q06ePrr76av3v//6v53h9fb0WLFig/v37q0ePHho0aJBWrlwpSTIMQ/fcc48GDhyoxMREZWZmauHChV2KtaamRvPmzdO0adP02muvacqUKRoyZIguueQSzZs3T/v27VNaWprn/P3792vq1KlKSUlRenq6Zs+era+++kqSdPXVV6tfv37asGFDi3ucPXtWL7zwgubNm9el2AAEFokOgICZO3eunn76ac/2+vXrNWfOnDbn1dTUqKioSGVlZSopKVFMTIxmzJihpqYmSdKjjz6ql19+WX/605904MABPffcc8rOzpYkvfjii3r44Yf1xz/+UQcPHtSWLVs0cuTILsX5xhtv6Ouvv9aiRYvaPcdms0mSTp06pSuvvFJjxoxRWVmZtm7dqqqqKl1//fWSvqstuummm7Rhw4YWzV0vvPCCXC6XZs2a1aXYAARWnNkBALCOG2+8UUuWLNGnn34qSXr33Xe1ceNGvfPOOy3Ou+6661psr1+/Xv369VNlZaVGjBiho0ePaujQobriiitks9k0aNAgz7lHjx5VRkaG8vPzFR8fr4EDB2r8+PFdivOTTz6RJA0bNsyzr7S0VHl5eZ7tjRs36uqrr9Zjjz2mMWPG6L777msRb1ZWlj755BN9//vf19y5c/Xggw/qr3/9qyZNmiTpu2ar6667rkXNEIDQo0YHQMD069dP06ZN04YNG/T0009r2rRp6tu3b5vzDh48qFmzZmnIkCFKTU311NYcPXpU0nedmysqKjRs2DAtXLhQb7zxhue5P//5z1VXV6chQ4Zo/vz5eumll9TY2Njt2C+99FJVVFSooqJCNTU1nmvu27dP27dvV0pKiudx8cUXS5Knue3iiy/WZZddpvXr10uSDh06pJ07d9JsBYQBEh0AATV37lxt2LBBzzzzjObOnev1nOnTp6u6ulrr1q3T7t27tXv3bknf9c2Rvuvvc/jwYd17772qq6vT9ddfr5/97GeSvuv0fODAAT3++ONKSkrSv//7v+tHP/qRGhoafI5x6NChkqQDBw549iUmJuqiiy7SRRdd1OLcs2fPavr06Z4kyP04ePCgfvSjH3nOmzdvnl588UWdOXNGTz/9tL73ve/pxz/+sc8xAQgOEh0AAXXVVVepvr5eDQ0NKigoaHP866+/1oEDB7R06VJNnjxZl1xyib755ps256WmpmrmzJlat26dNm3apBdffFHV1dWSpKSkJE2fPl2PPvqo3nnnHe3atUsffPCBzzFOmTJFvXv31gMPPNDpuT/4wQ/04YcfKjs725MIuR/nnXee57zrr79eMTExev755/Vf//Vfmjt3rqefDwDz0EcHQEDFxsbqo48+8vzc2vnnn68+ffroySefVP/+/XX06FEtXry4xTmrV69W//79NWbMGMXExOiFF15QRkaGevXqpQ0bNsjlcmnChAlKTk7Ws88+q6SkpBb9eDqTkpKip556SjNnztS0adO0cOFCDR06VGfPntXWrVtbxG6327Vu3TrNmjVLixYtUu/evXXo0CFt3LhRTz31lOe8lJQUzZw5U0uWLJHT6TR13iAA/0CNDoCAS01NVWpqqtdjMTEx2rhxo8rLyzVixAjdcccdevDBB1uc07NnT61atUq5ubkaN26cjhw5or/85S+KiYlRr169tG7dOl1++eW69NJL9dZbb+mVV15Rnz59uhTjjBkz9Pe//13Jycm66aabNGzYMF155ZV6++23PR2RJSkzM1PvvvuuXC6XpkyZopEjR+pXv/qVevXqpZiYlh+h8+bN0zfffKOCggJlZmZ2KR4AwWEzfJ3+EwAi0D333KMtW7aooqLC7FAkhV88gNVRowPA8j744AOlpKTo8ccfNy2Go0ePKiUlpcUwdQDBR40OAEurrq72dGLu16+fafPaNDY26siRI5K+G+GVlZVlShxAtCHRAQAAlkXTFQAAsCwSHQAAYFkkOgAAwLJIdAAAgGWR6AAAAMsi0QEAAJZFogMAACyLRAcAAFjW/wNBzYTt9LlZpQAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "artists = hist1.plot1d()\n", "ax = artists[0].stairs.axes\n", "ax.set_yscale(\"log\")\n", "ax.set_xlabel(\"Mass [GeV]\")\n", "ax.set_ylabel(\"Count\");" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.13.3" }, "metadata": { "interpreter": { "hash": "73182083f4e2a7a153b1c22bd64054bec714030b17650bd3a885c40287b848ca" } } }, "nbformat": 4, "nbformat_minor": 4 }