{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "03c9fc8f-6656-421f-a778-4cc13704907e",
   "metadata": {},
   "source": [
    "# Tutorial Step 2: What's in a GWOSC Data File?"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0d80ff85-102a-464e-afca-c9073c54fa0f",
   "metadata": {},
   "source": [
    "In this tutorial, we will use python to read the file downloaded in [Step 1](<./01 - Download GWOSC Data.ipynb>).\n",
    "This step presents some details about the file format use in GWOSC data files.\n",
    "[Step 5](<./05 - GWpy examples.pynb>) will present a higher-level API to read those files."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4a621166-3916-4dcf-820a-489585e88e61",
   "metadata": {},
   "source": [
    "<div class=\"alert alert-block alert-warning\">\n",
    "<div><b>&#9888; Warning</b></div>\n",
    "    Uncomment the following cell if running in Google Colab.\n",
    "    If you use other running methods, it should not be necessary.\n",
    "</div>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "2a8791ef-742d-4807-a640-02657a38fe68",
   "metadata": {},
   "outputs": [],
   "source": [
    "#! wget http://gwosc.org/archive/data/O3b_4KHZ_R1/1263534080/H-H1_GWOSC_O3b_4KHZ_R1-1264312320-4096.hdf5"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a41fea2f-45b1-444f-8529-23e21cdb2ee5",
   "metadata": {},
   "source": [
    "## The GWOSC HDF5 file format"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "330ae46d-c1e0-4825-9afd-cedc4095c155",
   "metadata": {},
   "source": [
    "The data file uses the standard [HDF5 file format](https://www.hdfgroup.org/solutions/hdf5).\n",
    "This format is used to store large amounts of scientific data and their meta-data (called attributes) in a hierarchical structure and process them efficiently.\n",
    "It is a common format in the scientific world and there are many tools and libraries to work with such files."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5df597f8-586e-4931-9a0d-35055ab86e91",
   "metadata": {},
   "source": [
    "A first option to view the structure of an HDF5 file is the [HDFView tool](https://www.hdfgroup.org/downloads/hdfview/), a free software which can be downloaded from the HDF Group web site.\n",
    "This will give you an interactive display of the content inside GWOSC data file."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "51ecce08-018b-40ff-815f-75689b5f5fef",
   "metadata": {},
   "source": [
    "## Programmatic access with python"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6b4f3e5d-fb58-48ee-8374-91bd189fce0e",
   "metadata": {},
   "source": [
    "### A first glimpse"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "500e4085-c5f9-460e-ad66-b6ba632ab0fb",
   "metadata": {},
   "source": [
    "[h5py](http://www.h5py.org/) is a python package to work with HDF5 files.\n",
    "With it, you can access the content using a dictionary interface."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "583cb2d1-bad0-41cd-ba14-681c29687a65",
   "metadata": {
    "editable": true,
    "slideshow": {
     "slide_type": ""
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "#----------------------\n",
    "# Import needed modules\n",
    "#----------------------\n",
    "import numpy as np\n",
    "import matplotlib.pylab as plt\n",
    "import h5py"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "c1e579c4-f65c-452a-9499-393ac777b55a",
   "metadata": {
    "editable": true,
    "slideshow": {
     "slide_type": ""
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "#--------------\n",
    "# Open the File\n",
    "#--------------\n",
    "filename = 'H-H1_GWOSC_O3b_4KHZ_R1-1264312320-4096.hdf5'\n",
    "dataFile = h5py.File(filename, 'r')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "8327dc48-570d-493a-bcff-58d7d59d86d2",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "meta\n",
      "quality\n",
      "strain\n"
     ]
    }
   ],
   "source": [
    "#-----------------\n",
    "# Explore the file\n",
    "#-----------------\n",
    "for key in dataFile.keys():\n",
    "    print(key)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a5bc96db-060e-4113-930d-6fe9f3c89288",
   "metadata": {},
   "source": [
    "You can now access the data as in a dictionary."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c52b34a5-25c8-45f6-8eaa-3db9aeeb98f2",
   "metadata": {},
   "source": [
    "### Plot a time series"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "16c9f452-6034-4e56-a2aa-21f866bccafe",
   "metadata": {},
   "source": [
    "Let's continue our exploration to make a plot of a few seconds of data. To store the strain data in a convenient place, use the code below:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "19feb687-b5ea-4501-8033-d099de10c2c4",
   "metadata": {
    "editable": true,
    "slideshow": {
     "slide_type": ""
    },
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "ts = 0.000244140625s, sample rate = 4096.0Hz\n"
     ]
    }
   ],
   "source": [
    "#--------------------\n",
    "# Read in strain data\n",
    "#--------------------\n",
    "strain = dataFile['strain']['Strain']\n",
    "ts = dataFile['strain']['Strain'].attrs['Xspacing']\n",
    "print(f\"ts = {ts}s, sample rate = {1/ts}Hz\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8bbeafee-eadd-40d4-8af1-83f6fbd5e761",
   "metadata": {},
   "source": [
    "The code above accesses the `'Strain'` data object that lives inside the group `'strain'` - we store this as `strain`.\n",
    "The \"attribute\" `'Xspacing'` tells how much time there is between each sample, and we store this as `ts`.\n",
    "To see all the structure of a GWOSC data file, see the end of this tutorial."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e0e2705e-1294-456a-9f8a-7722bdd1001b",
   "metadata": {},
   "source": [
    "Now, let's use the meta-data to make a vector that will label the time stamp of each sample. In the same way that we indexed `dataFile` as a python dictionary, we can also index `dataFile['meta']`. To see what meta-data we have to work with, use the code below:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "24994c7a-8850-4442-a509-92be68474ad2",
   "metadata": {
    "editable": true,
    "slideshow": {
     "slide_type": ""
    },
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Description <HDF5 dataset \"Description\": shape (), type \"|O\">\n",
      "DescriptionURL <HDF5 dataset \"DescriptionURL\": shape (), type \"|O\">\n",
      "Detector <HDF5 dataset \"Detector\": shape (), type \"|O\">\n",
      "Duration <HDF5 dataset \"Duration\": shape (), type \"<i8\">\n",
      "FrameType <HDF5 dataset \"FrameType\": shape (), type \"|O\">\n",
      "GPSstart <HDF5 dataset \"GPSstart\": shape (), type \"<i8\">\n",
      "Observatory <HDF5 dataset \"Observatory\": shape (), type \"|O\">\n",
      "StrainChannel <HDF5 dataset \"StrainChannel\": shape (), type \"|O\">\n",
      "Type <HDF5 dataset \"Type\": shape (), type \"|O\">\n",
      "UTCstart <HDF5 dataset \"UTCstart\": shape (), type \"|O\">\n"
     ]
    }
   ],
   "source": [
    "#-------------------------\n",
    "# Print out some meta data\n",
    "#-------------------------\n",
    "metaKeys = dataFile['meta'].keys()\n",
    "meta = dataFile['meta']\n",
    "for key in metaKeys:\n",
    "    print(key, meta[key])"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f210b098-8beb-40a4-bbbc-bf03b9ac2246",
   "metadata": {},
   "source": [
    "You should see that the GPS start time and the duration are both stored as meta-data.\n",
    "To calculate how much time passes between samples, we can divide the total duration by the number of samples:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "2352740a-0c3e-491d-a0be-5dbd4a663540",
   "metadata": {},
   "outputs": [],
   "source": [
    "#---------------------\n",
    "# Create a time vector\n",
    "#---------------------\n",
    "gpsStart = meta['GPSstart'][()]\n",
    "duration = meta['Duration'][()]\n",
    "gpsEnd   = gpsStart + duration\n",
    "\n",
    "time = np.arange(gpsStart, gpsEnd, ts)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b156ac89-200e-4d62-92d2-700d96ec1a09",
   "metadata": {},
   "source": [
    "The numpy command `arange` creates an array (think a column of numbers) that starts at `gpsStart`, ends at `gpsEnd` (non-inclusive), and has an increment of `ts` between each element."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "127ea4bb-ebdb-4e32-a7b6-d69b870a4721",
   "metadata": {},
   "source": [
    "We can now plot the data:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "0ee59d37-6ec9-4746-83e6-82e092fcf47c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjUAAAHACAYAAABaopmvAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAA9hAAAPYQGoP6dpAABam0lEQVR4nO3dd1xTV/8H8E9YQaYiIiAI7oUDweKse9bWXe3jrKO1zmqntVYcFbusbW211Vaf/pz1cbZa954oiIITNyK4BURl5f7+QGICGTchIcnl8369eGly18m693vP+Z5zZIIgCCAiIiKycXaWLgARERGRKTCoISIiIklgUENERESSwKCGiIiIJIFBDREREUkCgxoiIiKSBAY1REREJAkMaoiIiEgSGNQQERGRJDCoISIiIkkolUHNgQMH8Prrr8Pf3x8ymQwbN260+PHu3LmDYcOGwd/fHy4uLujSpQsSExPNWi4iIiIpKZVBTWZmJho2bIgFCxZYxfEEQUDPnj1x9epVbNq0CadOnUJQUBA6dOiAzMzMEikjERGRrZOV9gktZTIZNmzYgJ49eyqfy87Oxueff44VK1bg8ePHCAkJwVdffYU2bdqY5XiXLl1CrVq1kJCQgHr16gEA8vLy4OPjg6+++gojR44s9nGJiIikrlTW1Ojz9ttv4/Dhw1i9ejXOnDmDfv36mbU5KCsrCwDg7OysfM7e3h5OTk44dOiQWY5JREQkNQxqCrly5QpWrVqFtWvXolWrVqhWrRo+/PBDtGzZEkuXLjXLMWvXro2goCBMmTIFjx49QnZ2NubOnYvU1FSkpKSY5ZhERERSw6CmkNjYWAiCgJo1a8LNzU35t3//fly5cgUAcP36dchkMp1/48aNE31MR0dHrFu3DpcuXYKXlxdcXFywb98+dO3aFfb29uZ6qURERJLiYOkCWBuFQgF7e3vExMQUCSjc3NwAAJUqVcL58+d17qdcuXIGHTcsLAxxcXFIS0tDdnY2KlSogIiICISHhxv2AoiIiEopBjWFhIaGIi8vD3fv3kWrVq00ruPo6IjatWub5fienp4AgMTERJw8eRKzZs0yy3GIiIikplQGNU+ePMHly5eVj69du4a4uDh4eXmhZs2aGDhwIIYMGYLvvvsOoaGhuH//Pvbs2YP69eujW7duJj1e5cqVAQBr165FhQoVULlyZcTHx2PixIno2bMnOnXqVPwXTEREVAqUyi7d+/btQ9u2bYs8P3ToUCxbtgw5OTmYPXs2/vzzTyQnJ6N8+fJo1qwZZsyYgfr165v8eADw448/4ptvvsGdO3fg5+eHIUOGYNq0aXBycjL4eERERKVRqQxqiIiISHrY+4mIiIgkgUENERERSUKpShRWKBS4ffs23N3dIZPJLF0cIiIiEkEQBGRkZMDf3x92dtrrY0pVUHP79m0EBgZauhhERERkhKSkJAQEBGhdXqqCGnd3dwD5b4qHh4eFS0NERERipKenIzAwUHkd16ZUBTUFTU4eHh4MaoiIiGyMvtQRJgoTERGRJDCoISIiIklgUENERESSwKCGiIiIJIFBDREREUkCgxoiIiKSBAY1REREJAkMaoiIiEgSGNQQERGRJDCoISIiIklgUENERESSwKCGiIiIJIFBDRERkRkJgoBn2XmWLkapwKCGiIjIjKasj0edL7bh3O10SxdF8hjUEBERmdHqE0kAgIX7r1i4JNLHoIaIiIgkgUENERERSQKDGiIiIgIALDl4FS3m7kHSw6eWLopRGNQQERERAGD2lvNIfvwMc7aet3RRjMKghoiIiNTkKQRLF8EoDGqIiIhIEhjUEBERkSQwqCEiIiJJYFBDREREamQyS5fAOAxqiIiISBIY1BAREZEkMKghIiIqATbaomNTbDaoiYqKgkwmw/vvv2/pohAREZEVsMmg5sSJE/jtt9/QoEEDSxeFiIhIcmQ2Wq9kc0HNkydPMHDgQCxevBjlypWzdHGIiIjISthcUDN27Fi89tpr6NChg951s7KykJ6ervZHRERE0uRg6QIYYvXq1YiNjcWJEydErR8VFYUZM2aYuVRERERkDWympiYpKQkTJ07E8uXL4ezsLGqbKVOmIC0tTfmXlJRk5lISERGRpdhMTU1MTAzu3r2LsLAw5XN5eXk4cOAAFixYgKysLNjb26ttI5fLIZfLS7qoRERENs1WRxS2maCmffv2iI+PV3vu7bffRu3atfHJJ58UCWiIiIiodLGZoMbd3R0hISFqz7m6uqJ8+fJFniciIqLSx2ZyaoiIiIh0sZmaGk327dtn6SIQERFJjq3m1LCmhoiIqATYaqBgSxjUEBERkSQwqCEiIiJJYFBDREREksCghoiIiNRwlm4iIiIiC2JQQ0RERJLAoIaIiIgkgUENERERSQKDGiIiIlJnm3nCDGqIiIhIGhjUEBERlQAbrfywKQxqiIiISBIY1BAREZEaW61VYlBDREREksCghoiIiCSBQQ0RERFJAoMaIiIikgQGNURERKRGJrPNVGEGNURERCQJDGqIiIhIEhjUEBERkSQwqCEiIiI1tplRw6CGiIioRNhq8q0tYVBDREREksCghoiIiCSBQQ0RkZmlpj1HnkKwdDGIJI9BDRGRGR25ch9No3ZjyB/HLV0UItFsNf2HQQ0Z7I9D17D82A1LF4PIJvx5JP+3cvjyAwuXhEj6HCxdALIt9zKyMPOfcwCAfuEBkDvYW7hERERE+VhTQwZ5npOn/H9OHnMEiIjIejCoIaOtYBMUERFZEQY1ZLSLqRmWLgIREZmBjeYJM6gh47HxiYiIrAmDGiIiohJgq7UftoRBDRlNEFhXQ2Qpd9KfIyXtmaWLQWRV2KWbjPYgM9vSRSAqlXLyFIiYsxsAcGFWFzg7cmgFMi1bnXyTNTVkkITkNOX/Dybet2BJiEqvp9kvh1Z49JQ3F0QFGNSQQR7yBEpERFaKQQ0RERntwKV72HnujqWLQQSAOTVERGSk3DwFhvwRDQCIndYRXq5OFi4RlXasqSEiIqPkqfSATHuWY8GSkKnZZpowgxoiIiKSCAY1ZJCzt9MtXQSycgqFgKzcPP0rEplYnkLA+thbSHr41NJFIQthUFPKnb2dhmWHryFPIW4gvZXHb5q5RGTr3vj5EBrN2Imn2bmWLop0WeG4l9YwGOfK4zcw+a/TaPX1Xq3rPMrMxqHE+1CIPOeRbbGZoCYqKgpNmjSBu7s7fHx80LNnT1y8eNHSxbJ5r/14CJF/n8Pak0lm2b81nOioZCUkp+NZTh5O3XysdZ20p8y/MBWZlWQ/XLpj+Qluj119qHedrj8cxKDfj+N/MbdKoERU0mwmqNm/fz/Gjh2LY8eOYefOncjNzUWnTp2QmZlp6aKpEQQBfxy6htibjyxdFIOcTzF9s9L9J1loFrUHc/+9oHO9wndMW86koMeCQ7j5gFXIUrTi+A00nLkDi/ZfsXRRyITyFMZtJwhCid78pKY/BwBsO5taYsdUso74UxxbKqsKmwlqtm3bhmHDhqFevXpo2LAhli5dips3byImJsbSRVOzJT4FM/85h96/HLF0USxuycFrSE1/rvPite/iXTSYsQP/nLmtfG7sylicvpWGKRvOlEQxqYRN3ZAAAHqD3ZK2LuYWtpxJsXQxDPaXmWpZxVCtJRKMaBNTKAT0+Pkw+i06apLAxpgykGlYS628zQQ1haWl5Q/X7+XlZeGSqLt894mli2AUc8zzIeYEM2zpCTzJysW4laeKLHvynDkZVDLuZWThg7WnMXZlLHKNrXKwkHk7L1m6CEZLTX+OM7fScPLGI2Rma04uz8lTSKbW9sCle5YuglkkJKeh8aydWH7shqWLYptBjSAImDx5Mlq2bImQkBCt62VlZSE9PV3tz9YpFAK2JaQiNe252Y8lCALm7biIDaduKR+XFjE3HpqlSc6UtiWkYB3zAkziSdbLANoWv+VS/m0O/v04Xv1mL/ZeuGvS/VriPbv/RJrTzHy49jQePc3B5xsTLF0U2wxqxo0bhzNnzmDVqlU614uKioKnp6fyLzAw0OxlM/fv5K+TSRi9PAatvt5j3gMBiLnxCD/uuYxJa04DADKytNecKBQCdp+/g7sZ5g+2zO1eRhb6LDyKrj8cxMrjN63y7koQBIxeHosP1p7GnXTrfM+zc22rxsOWLTl4zdJFMIqY02VB8u/by07o7VEn4diuxFlLArqhbC6oGT9+PDZv3oy9e/ciICBA57pTpkxBWlqa8i8pybxtzwqF+Vt0DyTmX2Bz8sz/632QKf6u4n8xtzDivyfR7tv9yufuFLc2yQxNYpokPXyKH3cnYvDvx3HjQSZS0p4pl322IV45DLy1ynhunT2J3l52AsGfbsGRK6abzd3YbrgKhWHJqE+ycrH82A3cy8gy6niqNCWkKhQCxqyIQfCnW0wyTMKXW88Xex8lLSXtGWZsPqt8LObXvio6CWduPcbPey8jx8aaCalk2MzcT4IgYPz48diwYQP27duHKlWq6N1GLpdDLpeXQOny50DpPP8Artyzrt5YujxWmXFbTPyg6ZowYdUpyB3ssPZFM4hqNf7GuNtFN7BCqmNaTFh1CjN6aG/StHXbElJxL+M5BjcLLrFj/mfxcVyf+1qx9/Pz3stYtP8KNoxpgeo+bqK3y8lToPP3B+BftgyWj4wQtc3UDfHYFHcbfx69jh2TWhtbZK3+TUjF1vj8YOezDfH4T0Rlg7aXQkLsqD9PIiHZsCberNw8vLHgMABA7mCHka2qmqNoVu9g4j2sj01G5Ov14OniaOniWBWbqakZO3Ysli9fjpUrV8Ld3R2pqalITU3Fs2fP9G9cAi6kZhQJaB4/zdY5Hkfasxws2n8Ftx+b5jUkJKdhxLITSEhOw+rom7j1SHtyXfytNDSauVPn/sTc2G4+fVsZ0Kj6drvhYwhNWR+PXSU82+/Z22lqj++kZ+HwZdPVLADA85w8k33GxTV6eQymbTqLRDONKbLk4FWz7BcAvtl+ERnPc/HllnMGbXfmVhqu3s/EIQM+1+0valcu3TFP4r+278Plu08w8r8nEX8rTePykvI8Jw/xt9L01m4VpzLV0ICmsEQNn40hzU+GhIVpT3Pwb3yKRUfKVigEzPrnHP45cxuDf4/GhlPJGLYsGnO2nue8WypsJqhZuHAh0tLS0KZNG/j5+Sn/1qxZY+miadVo5k40nLlDa2+KKevPYO6/F9BnoWm6f/f65TB2X7iL7j8dwqfr49Huu/1a11162LA2+GfZebhyT/wJfsHeywbtHwBWRd/EyD9PGrxdgav3nmDgkmM4euWB6G1e+/GQ2mMBAp5p6YVhrNrTtqH53D1WNXaRIU2LYt169BSzt+huBjF1cJd4JwMjlp0waRBgybyMYUujsev8Hby+4JD+lc1cjtcXHMIKA5rGivu+JSSn4fbjZxj6RzR2n7+j8aasJPM8BEHAr/uv4PDl+xjyx3G8tyLWJMMQjFsZi20Jhg8dsP1sKn4/dE2tp+ipm4/x24GrBgf6UmZTzU+26mlOHjzsi8aPBdXPKQbknuh6Gwrn2RiSqKnvZPHqN3tF5xeY6rMy9PQ1ZkUsLqRm4PDlB8Vq7jBX1X7vX46YpBkGKP4FxBw/pyc6EskB4Mytx8qmA7EEQYBCAOztVMdDeWngkuO4m5GFPRfv4lqU8e+tvu+aIAiYveU8GgWWxesN/UXvV9tvQVsNx61H1lGjV5Ccu+L4TQxqGiRqGwH5r1fb8BDpz3Pg4ay9qaT/b8fwas0KOHDpHva/SM5f9nYTwwpuQnsu3EVUoSBmw6lkTH+9XrH2+8+ZFPxzJgX/Hf4KWtesoHPdfRfv4saDpxjaPBj3n2g//55PMbzm9dr9TASWKwMHDdcmoMRSGk3OZmpqpK6kho1/mp2LyX/FYYeoZp6XJ2RDEia7/nDQiJIVn5heQIIgYOzKWExZH18CJSopxTv7FGcOnKfZucqaLX2B0sZThuVY7bt4F1WmbEW1z7YWCdBn/3MOH/x1GndffC8FIX8yw2QT1QQVfi2bT9/G74euYfyqouMpaRP86RZUmbJV47LiTgyr6b2OufEIZ249FrV90sOniL6mf0oBQ0xYdQqdvj+gTODNUwjYFJeM0f8Xg3k7L6FB5A6sOaG75uduod9w4XFP9F1ojbkhya/9iC0y/525J8Uc+kc0jl99gBZz9+CvE0n4dvvFIrVTw5aewPTNZ1Fn2jadzXWGvu51MbfQ9tt9eG9FrFFlt2YMaqzEF5vN279/7cmkF4mWV7E+NrnIXbUpo/ILqUXvGjaeSi7WPrNzFSYZFO36g6fYciYFq6JvatyfuSsEBUHAjL/PoufPh03e5TlPIWDaxgRR73XBSTAu6TEazNiBP49eN/h4OXkK1P1iO+p8sU3UhKiGnniHLT2h/P85lTGDBAFYcuga1sWq53KN/O8JtJi7B7vPmz4va80J0/ac3FXMMj7ILHqT0WfhEbyx4LDysxAEAdfvZ2oMWlt9vRdv/noU5/QEV+dT0g3Kc0u8+wQnrucHS6/9eBATV8dh29lU/Lg7EQDwyTrDbiZ2nVcfmyYr5+VvJrvQ7/fa/UxsPyu+rAW/9fw8lRTsEDFtgqnPD/1/O4bkx8/w8bozWLD3Mt5afEzjes9y8rBGx8jRCcnp+N6AQRh/PZA/yvvOc3f0TlNxLyNL75hd5hi81VgMakzgyOX76P6T7jbwPRfu6BzvZFPcbSw/dgORm88qv2B/nUgy2USTH/3vDL7ZfhF/HNKeS5P08Cl6LDikNmWBqby/Js7obXPyFIiYswutv9mn9uPbFJeMFccNG8EyT/HyRKjth/jz3qLTOuw8d8ck48H8L+YWlh6+jrikx8W+sBW2NT4F/3fshkHv9aQ1cXiSlYsvNp3Vv3IhD1XychLvZihrTTRJevgUSw9fL/L85tO3RTVX/qKSo6Vt7b0X839fhY8Te8N6cplMRddbVhDU/Hn0Btp8uw+frNM+3UhCctFcpFXR6rUpmvLcCmpjNNX25L3oPq/p5kYffV+FJ1kva7QzC92Y6frei/mOaRvR2ND9FEfSw5c1jaq9U8X44UXgaKh+i45iyB/RWl9bky93oesPB9VyKi/ffWK1Q0kwqDEB1TtKTY5deYDhy05iyB/ROttFP9+YgGVHriP62kOkPc3Bx+vO4KP/nVEbcEpRzB+VtrwHGfK7lp6+laZxygJTOHLlPjaeStY7gJayTC9ijqSHT/HoaQ6SHz9TyxuauDoOUzckqI0rU1zaLsyj/jyp1vUbyO/GfyE13aATneqIm8X9LAt7aEDy7/Mc0yZDd5l/EEN1jOdT+L0rMOufc4iYs1t5l/k8Jw+7zt0p8h1RbS59qid3pzBjxnDR9cmcTnqMMStidDZPHEw074CNum6Mf9h9CSlpz5TTJ2jqnViYaq8efU2zkZvPoubn/+Ly3ScYuOR4keWDf4/Gu/+ne04+Y2tuT6skhO84dwfLVDo8FA4CCs51/8anIGz2LpOMl1T4e5GnEPDIDEn3AMw6PIjqqefkjUc4mHgfz3N01xwX3BzE30pDh3n70WKu+QeANQaDGhPQV63+/a6XEbSYH0Bq+nNkqpzUVS/khlSvAsD1+5mYJPLOPb3QXEumvin5z+LjeH9NHHoYkCy6+MBVvL1Md9CY8aLcGSrlF3MXYehdV+Hmog/WnkaX+Qex2IBuzFkmanIq7kczfNlJfLP9QpG73ZJ2LyMLdzOylHeZn62Px8g/T2Lyi1GsNdGXTPs8Jw//xqdoHNRO2/Qiqr3B9H13evx8GFvjU/HeipcX7oOJ9zB2RazypmW6npqvjGLOa+Yq197H4+e9VzBIQ7ABaP7OH758H7U+34YFe8Td6S87ch2CkD9ukDa6cvY2xSUbXXNbuGYo8u9zyny/wi+t24vcvvdWxOJhZnaR92T/pXvYGm9YL6TCn1v/X48idNZOXNIyRMIv+y7j623G9Zi6ft/woMaUAxJqi5sLapgLrheCIKjVoFkagxoT0NdzyNDWxqxchdq4AwV3ZZq6wxacpLQlew75I388A31Kskk0UeSknxdTM/Dl1vO4IXIyu1yV9yBX64jLL1/oPR21ZrpsjU9Bu+/2YdOLwQUX7stvrnr8NBsfrj1tUJdyXQ4m3sOCPYkmGSskO1dR5GL9894rWmumHmVmW6TH4foX31VNo/AW0HcTcfLGI7y3IhafbYgvMoN106jdGoczUM0JyskTROU7qX4vB/8ejS3xKZj1j/6utRcNbJZRKASsOH5DLa/hqZ6mEk13+RNWnULLr/aq1dJlZOUqa1u+3VEyE2NOXB2ndZkxib4Frye90Pf7ZqGaNE2nyDE6EmXF5ImcfFF7oWkONoVCwNfbLuKXfUWbs8X4YK32wF6bGlP/xero4o9QrYlQ6N8CE1bHqTWbWZrNdOm2anq++6q/DZkMuJCaruOiC9jJZPhQ5Qv9PCcPHs6ORe6qO8zbjzKO9tgwpjmGLtVc9V/4h62znKLXLBmaTtxX7z/BJ/87g/HtahR7/9ruZvXRdiIsGMzwfzG3cPnLrvhsQzzCg8XPIn/tfib8PJ3h7GgPIP9CCQDVfdzQJcTPqLIWaPHVHr092BKS0/AkKxfPc/KUTapVvV2x+t2m8HF3LtbxLeXj/xXNJ5n5zzm83UJ9RHLVAK7j9+rjO2XnKvR2Vy9QMDyDtl93nkIwaLwnANgYl4ypG/KbLQuGBJgiIuFWNTB78CQLm0/nB+GbVUb6FhOEFVAoBPytkm8nJjncUMYMdrjr/B08eZ6Lx8XsQXrzQSaOXL6P5tW9oVAIZnl9JeHT9fEY8IruEao1vbLj1x6gTS0f5ePsPIXGAOlCoaThv09b18jxDGpMQN9dneqd0e7zRcc+KEwG9S6fd9KyNF5ULr+o8YhLeozDl4tXO6DpruSkFSZYTlh1CpfuPNE7SJ/WehqVl2mqNmtN790/Z1Lw18lb+OukuFm0Dybew+Dfo1HXzwNbJ7ZSW5Z45wna1VbAyUF3xWrhYvx1IglyRzu0rO4tqkt+QbJ7oFcZ5XNX72fih12J+LJX/aLH07tHwxhygTWnwk0Mr369F6kaksSf5+Qh6eFTBHq5KJ+LvvZQ50jew5ZGY0ATzRccbU2B8RqSeU8l6f9tPlfJk1G9QdhvZL7P2pgktd5Lm63kYjbjb9N8b37ccxk/7rmMv8e1xOcb49XydwxxPiUdMTceYUAT80+grI+ucYMKG7b0BNa911z5eFPcbWVtdP7O8v9RbVrUlBulUAiws7PcLTKDmhKg+qXSF9AAwJFCzRcb45JRP8DT5OVSpVAIRS6Kv+voKVVcMTceIixIfC1GgasaAhFNrSRHrtzH1XuZmNBevUbnaVbxEmQfaGiy0pSg+8jAngv/e1F9fU5D18nvdl7C0iPXETuto+j93c14jo9f9Hopa+DcMIXzTnTVKpqS2O+bOQYe1LVLTQENkN9M1errvajooT6/XMuv9sLHXfOccwcT72udruFgoubnNZU3v8lb9xuhup3q/4293By/atpxbUqCagK02Cb2M8mPdQY0T7Nz0XfhUXzcpdbLJ1X2XTBOV0GNq6GeZudiuJ48QjE2nkrG7C3n8G2/hth57g56hlZCk2AvXL33RHlDXJihCe6acqPm707E5I41jSmySTCoKQGGjkdSePyN5cdu4PPX6mD3hbtatii+JYUuKObuvfHn0Rt6h9TXJFdDlfCJ6w8R7O2i9lxBD67Ym4+w7O1XkJCchhl/n0W1CuInQtQkbPYujc+PW2m6QazSnuUU6SVXOHDSl++S/Ei1a6hh1fKFR6ZW/S4oFALibj1GXT8P5Nho9byp3UkvGujq6t5e3KAs7VlOkTFa9CluT7ttCanIs8FR3etH7jB4G30vs8nsXcjMztPb67XwvHJi1f1iu1HbFVYQcBSUc8Xxm7g+9zX0+kX7tDzXdCQni813WrCHQY3kGZLXoklWrgL1pm/XmhxojiTfgnwOc9lkwhm8P9+YoNZVWtW+i/cwZf0ZrIrOTxg9cd08TWr/nFHvRSHm/F+QYK5QCGpNHq98ucugXlKaPv55BgzEpc/tFzU3j59mK/OGIqp4oVK5Mro2sylyPU17lvIsO09tfKT5uy5h/i7DxyNRrTks/F0VY/TyGDStanjNqqUVvqEUM4CnvhsGTePZ3M8wT7duY62P1d7srWvyy38TdA9AqGucM2vBoMZG6OrtYMy8H6VJQUBTksTc0xTc+Qz47Riir7+s2tcX0JxPScd7y3WPA2LItBZirDh+Q5msCgDHrz0ELHR+M3U39Nw8BSI3Gz74oCll5yo01qZEzNmlNtSCMQENANx/Yl0XXUvRN0gqYNxwCetib+Hrvg3U5yizYMXW5L8M7zkF6G9VmGkleW+6MKiRAG21FGQ5YpJex608BW83uVpAI8a4lbG4rtKduGA29rFtqxlWSAOoBjSWJmbkV33SnubA80Wu0QdrTxudFGoqIZHbNV5QCo8dZawTBn7HNDlmgzk1qmTQPIVLYcYGI9U+22qyCWutkdj3xdKt0tZZ50pUSgz4TfNcL7po616sOr2DDaY/lKiC5piE5DSTNoUaS1NAY4q5zgqInbTUkFGppcpUI30vO3LdJPsxpcG/GzeMBQAc1JLgbm0Y1BDZGE2JqYUZM4hZaVLQxCemOcJS2s/br38lkcTePTeetdNkx7Q2Yt8DKd8QaOthJ8ahYmxbktj8RCRBUj4xm8Lvh67C201zt2trIXYkbTH+0DCKMmlWnJqar4ycEsEW6EowtiYMaogkSOxUFKWV2EERqfRZfcL4jgULjZwSgUyHzU9ENkTscP1EZBxtA9ORbWBNDZGNePAkC02jdlu6GEREVotBDZGN0DaaMRER5WPzExEREUkCgxoiIiKSBAY1REREJAkMaoiIiEgSGNQQERGRJDCoISIiIklgUENEREQm88iCE6MyqCEiIiKTeZaTZ7FjM6ghIiIik5HJLHdsBjVEREQkCQxqiIiIyGRksFxVDYMaIiIiMhk2PxEREZEkPMnKtdixGdQQERGRycTeeGSxYzOoISIiIpN5zi7dREREJAVrTiZZ7NgMaoiIiMhksnMVFjs2gxoiIiKSBAY1REREZDIcp4aIiIgkgePUEBERkSSkpD232LEZ1BAREZHJPMtml24iIiKiYmFQQ0RERKbDnBoiIiKSAgvGNAxqiIiISBpsLqj55ZdfUKVKFTg7OyMsLAwHDx60dJGIiIjoBcGCx7apoGbNmjV4//33MXXqVJw6dQqtWrVC165dcfPmTUsXjYiIiCzMpoKaefPmYcSIERg5ciTq1KmD+fPnIzAwEAsXLrR00YiIiAjMqRElOzsbMTEx6NSpk9rznTp1wpEjRzRuk5WVhfT0dLU/IiIikiabCWru37+PvLw8VKxYUe35ihUrIjU1VeM2UVFR8PT0VP4FBgaWRFGJiIhKLebUGEBWaFIJQRCKPFdgypQpSEtLU/4lJSWVRBGJiIhKrexchcWO7WCxIxvI29sb9vb2RWpl7t69W6T2poBcLodcLi+J4hEREZGF2UxNjZOTE8LCwrBz506153fu3InmzZtbqFRERERkLWympgYAJk+ejMGDByM8PBzNmjXDb7/9hps3b2L06NGWLhoRERFZmE0FNf3798eDBw8wc+ZMpKSkICQkBFu3bkVQUJCli0ZEREQWZlNBDQCMGTMGY8aMsXQxiIiIyMoYHNTk5eVh2bJl2L17N+7evQuFQj3Lec+ePSYrHBEREdkWP09nix3b4KBm4sSJWLZsGV577TWEhIRo7U5NREREpY+r3HKNQAYfefXq1fjrr7/QrVs3c5SHiIiIbJhNTZPg5OSE6tWrm6MsREREZOMs2YBjcFDzwQcf4IcffoAgWHIgZCIiIrJGdhaMagxufjp06BD27t2Lf//9F/Xq1YOjo6Pa8vXr15uscERERERiGRzUlC1bFr169TJHWYiIiMjGWbIDkcFBzdKlS81RDiIiIpIAm0oUJiIiItLG3dnKu3Q3btwYu3fvRrly5RAaGqqzaik2NtZkhSMiIiLb0r2hv8WOLSqo6dGjB+RyOQCgZ8+e5iwPERER2TAHOyvPqZk+fbrG/xMRERGpahRY1mLHZk4NERERmYzV59SoysvLw/fff4+//voLN2/eRHZ2ttryhw8fmqxwRERERGIZXFMzY8YMzJs3D2+++SbS0tIwefJk9O7dG3Z2doiMjDRDEYmIiIj0MzioWbFiBRYvXowPP/wQDg4OeOutt7BkyRJ88cUXOHbsmDnKSERERKSXwUFNamoq6tevDwBwc3NDWloaAKB79+7YsmWLaUtHRERENkXuYG+xYxsc1AQEBCAlJQUAUL16dezYsQMAcOLECWW3byIiIiqdKrhbLhYwOKjp1asXdu/eDQCYOHEipk2bhho1amDIkCEYPny4yQtIREREJIbBvZ/mzp2r/H/fvn0RGBiIw4cPo3r16njjjTdMWjgiIiIisQwKanJycvDOO+9g2rRpqFq1KgAgIiICERERZikcERERkVgGNT85Ojpiw4YN5ioLERERkdGMyqnZuHGjGYpCREREZDyDc2qqV6+OWbNm4ciRIwgLC4Orq6va8gkTJpiscERERERiGRzULFmyBGXLlkVMTAxiYmLUlslkMgY1REREZBEGBzXXrl0zRzmISI/v+zfEpDWnLV0MIknzdnPC/SfZ+lckq2RwTs3MmTPx9OnTIs8/e/YMM2fONEmhiKioXqEBiPuio6h1y7s6mbk0RNIUWrmcpYtAxWDUhJZPnjwp8vzTp08xY8YMkxSKiDQr6yIuWPFiUENU4sKDGBBZmsFBjSAIkMlkRZ4/ffo0vLy8TFIoItJuVo96etcRSqActszP0xkDmgRauhhkhdzlBmdlKK0YxTHbLE10UFOuXDl4eXlBJpOhZs2a8PLyUv55enqiY8eOePPNN81ZViIC0KpGBb3rCALDGl3Wj2mOuX0aYNPYFpYuilaze4aYbF9vhgeIWu+HAY1MdkxbFR5s/M256kSO77xa1RTFIQOJDknnz58PQRAwfPhwzJgxA56ensplTk5OCA4ORrNmzcxSSCJbM6ZNNfyy74pZ9h3s7YpNY1ugx8+Hta7DkEacmhXdLV0ErQY1DcLnGxNMsq/ybuImGOzRqBImro4zyTFJWsa1rY4Fey9buhh6iQ5qhg4dCgCoUqUKWrRoAQcH46voyHAfda6Fb7ZftHQxSKSKHs6i1ls5MgL/WXLc4P03DCyrc7mTvcEty6WKi2P++auMkz2+6F4XM/85Z9HyjG9XHT/tKXrBWD4iAoN+N/z7URgr7kqeNdaW9mjkj01xt43atkZFNxOXxjxEn/kUCgVyc3PRunVrZUBz584dzJgxAx9//DEOHTpktkIS8F7ralqXtamlvznCUFW9XfWvVAr1DRNXjS/mhPbzfxqjeXVvjGtbvbjFKuKTrrVNur9lbzdBSCUP5eOW1b1Nuv+S5uniqPx/eTfLJ1V3ruer8fmWNbzxdotg5eO1o5upPRYrrJgJrDGfd0DTqqUjZ7KCu7harcJOTRPXM9GSfhgQqnN5pbJltC6zwhhNI9FBzYgRIzBmzBjl44yMDDRp0gQ///wztm/fjrZt22Lr1q1mKWRp17ORP+zsZFg/prnG5a9UKf7JplahavhfB4cVe5+6eJfQhaRriC/ORHYy2f6+7ddQ7zpf9akval8F+fYfdq6FXqGVlM9/2rU2Igz4TAtqZbrVf3lh9PfUfnIyRptaPvhnfCskzOiMLRNa4vdh4WhcuaxJj2EpXULUA4oqFgjoxQZWTYK9MP11/YnihdX2ffn7Htw0yODty7vJYaehg4jUjGtbHR3q+Bi1bblCPQ4tGQQsfbsJLszqgmtR3Qy6AekZ6m/GUpUM0UHN4cOH0bdvX+XjP//8E7m5uUhMTMTp06cxefJkfPPNN2YppK0L9DLsAvNVn/r4qHMt5eO3XqkMAHB10tzk19gE4yo0DioH1XNWDTPnGhz5tD0+f62O0dt7q+QIeJZxxLEp7TWu17FuRXg4O2pcZi6O9nbFymkZ3boa1rwrPj9t7ehmOPxpOzRRSXB0cbLXsYVhVJNM3eQOqOfvCbmDPaJ6NzDZMQxh6lpEuYM9lo942WtlzbtNS7z5zs+zjMmTdO1Ufs8O9i8fGBub+BhZg2FLPuxcS2PvXm0Kbv7+MuD3WhLa1vKBs6O9xtey7O0mWrez1/HaBZFnNUvHvqJ/ucnJyahRo4by8e7du9GnTx9lwvDQoUNx9uxZ05fQBjja6/4UDb3DEQSgewM/5eOCMUe07UbuYJoTcP1KnmqP5/QSV+NgDCcHO4xsZXjvgDORnTC7Zwg2jXvZa+Xn/zSGr6fmHJaS+oHFfN5B+X8HkRdEUxXNwV6GSmXLqO0v0MsFE9rXwLTudYt8robSdsfpWaZkg8UC5r4BtpPJ1IIAY2oVPZwNzzns0aiS/pUMoHpBs6amA2Obd0xBV7AqtllPNajuXM8X1+e+plZbXlArZuzn+X1//bXBhhj0omauoPa3TS0f1NSSHzOomfZaPEEADnzUVu/xVo5sakQpTUf01dDZ2RnPnj1TPj527BiaNm2qtlzToHwE2NsZfvlS7RrooyfptJGepFFjlVQTkSFcHO0xqGkQfFXeE1/P/JOku4YLSaWyLgCAGW/kV9n3bFT86lVN1ffl3eQY0bIKGgaWRed6htcO9XzR/FTdp+jJJqSSh1HNgZM71sSIllWwdnQzDGpauci4LCtHqo+p0aqGN2r7uiNUZLOSqQLGPo0Ditw96jqxl0QCpuohjmqpBSzwQceaao89nB3UahJVDWkWpNYUZE5uKuOt+KkE/aYKpjvXq2jUdtGf6X4/DTWubXXEfdERlb1ciiwr/F2Onqr92HV8PbQuU6XpN6pq87iWOPJpO9QPMO5molnV4uWrrR2tXmvUJcQXez5ojeUjdY+hE/1Ze/i4677WVC5f9D0urFm18voLaUaig5qGDRvi//7v/wAABw8exJ07d9CuXTvl8itXrsDf3/bb44yhK4kXKHoS6d24EmaKGEBNub1M834AYNPYFpDJZJhlgjEtpnTNbw4a1apKsfdlactHRGDGG/WUd1BDmwcjdlpHvNem+Em5M3vU03hinta9LjaNbQG5gz3eaOSPNxr666ztUg0KWtesgJ2TXsU/41sWWa9v4wCtiaRiODvaY3bP+pjb52Vz0br3mqF5obb2P4e/gq0TWpVo7kSjwLL47s2GaiMlJ37ZFb1CtSdkOzuarmmtgGrVeuFX72hvh1Y1tF9o5I7qp1E/HflMM3uEYHy7GlqXa+JogqYw1Vqb+gFljdrH2y3UzwtucuNq6gxp3hGjX3gAyro4aQyyN4xRH4dI54jcKtufndEZE9ppPlfM6V0ffRoHYN17mnMcnRzs4P8i4TagXBk4Oxr2+fl6OuPE1A76V9SgW31ftWboAlUruOn9HrkWGnSwQ52KOPjxy5qZgkB/ZMuX34NrUd2MKqc5iX63p02bhvnz56NatWro3Lkzhg0bBj+/l00kGzZsQIsW1juQlTm936EmJnWoqXW5g93Lt3n7+69i3puNMKRZsM59amq/LPyj/W1wmLJrr67kP9XeNbraxZtVK49zMztj6mt1X5TBugxpFqSzaUf17WlZwxtDmwerLS88dcCad4yrJpXJZPDxcFbWZGnqEeVob4cf3wrFfyIqi95vjYruGi/YZfTkx8iMuPcuuLConnBlMhnsjKhVLA5N3zF9J19Nd+SGGKjnMzHkohtauSwGRqj/9upV0n3HLzY3ocDo1tVQtYKrWp6dmNqewr/1wU3za4nE9uArrGFgWbW5xwx9Harmvam5Jq5qBcPzpdzNkDPnKneAp4YAyE2eXwv33ZsNRfUo2/dhG5yebnhHBWOb6Iw5FxRw0pDGEKjht6Ya/Jg6QDUF0UFN27ZtERMTgwkTJmDp0qVYvHix2vJGjRph0qRJJi+gLbCzk6F+gPYT2exeL2tRxFwz7GQyOKs0Pzm+CIoKN0N1Enn3/qHKybCBlirRgu+mi5ZkZEtbNaopZvZQfx8bBZZFFW9XBJfPPxGK+YGprhJRtXjVpCemdsCJqR1E9YjSUhqdS6d0rY1WNbyVTVN692bACabgrktTrULhZoW3DAjMjFXNiIuZNs11VH//PjQcX7xeV+f2Moi7YLvLHbBhTIsid7jTX6+H3o21f2YOBgaOXq5O2PNBG4xVuTmJ6q0/323R4DA0r1Yeq0blB++zeoZg2/uvqq3TsW5FNK5cFm1rVcC69/KbLXTl6Imde0yf3o01B1aqze5iFdysGNPM/7VK7aWYHDFD8xcd7O2Mek0AMKG9YTV6xaUrSRh4eQPSsW7++cFaE8cNuoLVrVsXdetqPiG88847JimQFNXwcYNnGUdkPM8R1SZZ3s0J5VydMLNHPdjbyZR36h7Ojgip5IGE5HTRxy48VPfQ5sFoEFAWG+OScfVepmEvpBi+7tMAH687Y/T2hdtpZTIZNoxpDoVg3MnMGD0K5ePIZDKzJj2+27oa3tXTtFlcDQM8ce2++vdgeIsqqOzlisaVy+p8jaqB9wcda8K/bBl8sPa0Qcev86LGwd3ZETGfd1C7W6zgLse9jCwA+cmZV1+UU0z9QMFglUOaBeHPozeUz7evY1weiD5VK7ji6r1MRL5eF55lHPFu62r4dscljeu2q138MmiasHR2zxCsPH4T51LS8UHHmqhWwQ0rR2mujXy7RTCOXX2In94KLVI7ePDjtnhlzm69ZdCWN/ZJl9ro3sAPrb7eK+KVGMbP0xkpac+Vj1vXfDlG148DQtH9p5fjpW18MQVGpbJlkPz4WZGhLzrWrYg3mwRCgIC4pMfoaKbvhrHa1/bBj7sTDdomPNjwnrDRU9vD0c5Oby1tQS5bSCVP7P+ojfK8sO695uiz8IjBxzUX67wtlxh7OxlOTO0AhSAYFLVraqKqWdHdoKDms27q3aYDyrmgVY0KuH4/U29QY8p8zDebBCLxbgYWH7wmegbpmhXdcDcjS2sXXplMBtWOZ2IqKsq6GFdVnTCjM1xN0E26irerMoiwbM1t/oc7440QVCpXBj1Vemo42NsVGbtFE9UB7FrVrKCzG/muya+iw7wDRZ7/TKVbf+Gh/FVrNOYPaIQ3FrycFuLdV6viQWY2/hdzS+PxxrSphi4hvqhS3hXrYm4hMztP52tR/a7LZEW/+x92qoWDiffVnlPNpdkwpgUSktPQ9EXtn67aGCcHOzg72uF5jkJnmQw1qGkQBjUNwt2M53oTPnWNdaOvY8I3fRtgXewtTGxfAz0a+aPXL+oXtP9EVIZnGUcc/LitMrCpX8kT1X3c8H6Hl7UPcgc7ZOUa9h70Cq2knH6kQ52KWDzkZQJ9SCVPlHd1woPMbAAvO1Csebcp1pxI0trk379JZfRvIq42siSb5I05ljFjEOn7rmgSVP7lOTksqBxqVnTDpTvW0VGIQY2JONkXPaFPaFcddnYyrW2+jvYy5OTlf3WvzumGMSticS4lHS10DZZkwDdddaThlaMi8OBJtkUGFiswpWsdtKpRAfX8xfUycHa0x4mpHURX14tZy8fdGb8MbKz1Auzr4Yxu9f3wx+Fras+7FWPmXlWbxrVAg8gdymOZwsumQ/FBV8FF29PFER91Nn704RbVyyPl8XPU8/fAjQfag+Sg8q4Y2bIKlhxSf1+NHUNoyotgXVNQExZUDjKZDNUq5PdS+b+REej9i/g7SU15CQ0Dy+LvcS1R0VOOmOuP8OXW81jwn8bK5Z5lHNV+tzKZDD//pzEOXLqHNSeTRB3DVIy5SBmiX3gg+oXn96RzVKlZ69nIH1Nfq6tsxlHNx2hTqwI+6FQL+ujr2eam0sPR282pSJNr02rlseVMitpzAeVcRB27sJK45wgoVwa3Hr3sVfxem5c1s4b28utQx0f0cBLG8LbS5qbCGNSYiKb22Ml6fkjOjvbIycsFkJ+Xs3BQYwgCdFYDiv2a7/uwDQLKvcyXaF7N8sPa29nJ8KpKdbEYhvT8iHyjHiaujtM7O263+n46l5uTh7Mj/jv8Fdx8kKl3/iZD9WhUCdsSUpW1BSVh+YgI5Xe2WgU3tKheHocvPyiynqO9/uptXcqWeVm7p+1cv+eD1th78V6RRGB9uQJiFXTR7VrfD11FfIdea+CH1xr4aQxqpEL1ne1Uz7dIU+XSYU3wb0KK2sXarMxclWLq4QT+O/wVzNt5CePaVoe7s4PaNAXVVLqOf9O3AR5kZmPuvxc07ifQqwwWDwk3adkKLBrUGAnJ6Whj4LnbUhjUWFAFNzkynucqH8tkMr1NEmJ/VMEmqZEx7gfcu3ElrI9NLvbRDb0U9WhUCa1qVEA5I5uYSkp+HoDpTxBODnb4fZj20UJViZ1wUx/V76xMJsOKkU0R/OkWjeuWMzDJ9J1Xq2LG3/kTTYrJRatawQ1VKxg36Z7a705m/maGV2t6Y/vZO2Y+immIzRvT9HttW9sHbWsbN+0AkF/7sOv8Xc3Hs76ONwYZGFEZ1Sq44WeVGj9VHs6OODG1A+SOdvBwdsTyYy9zw5zs7ZCdp1Bb15COAoYM29AlxA9dQnQH8easeTSUTUzle/36dYwYMQJVqlRBmTJlUK1aNUyfPh3Z2dmWLpqSMT+w34aE4ZVgL6zQMyiSKlOdbNsYeKJJ/LIr9n/URtS6895sZHiBTMTLtWiVtC7/Tmyl9rhGRbdidVXV5RUN40eUtL/ebYZfB4dp7Kppbm+3CMZrDcTXkg1rHoxt77dC4pddzViqfKpNgaZqatTFFFOblJTCvxFzKVyRJ5Op99wsaaqD5xU07ZpyoNMvRYzYXsFdrmyi9VBpDTg6pR3mvdlQmU5gyNARQP45uoK7HHNF9KKzNSb79Z4+fRqNGzdGXp7uhDxjXLhwAQqFAr/++iuqV6+OhIQEjBo1CpmZmfj2229NfrySUt3HHX+NNmzOEFPVfr7ewA/lXBwx+PdoAPprRRzt7UQl+Bb0XvmmbwN89D/DejudmNoB51PSMeSPaIO2K446fi/ze1yc7PFdv4ZYuP+K8rkGAZ5au8EbanQbw6eFEMOQgNoUk58ay9nRHj//pzG2nNFck1OYTCZDbT2jvAaVd8GNB091Dn9f288dXq5OOrugqr6HMuR3V1XNdTA1bV2Dm1Utj6NXHxR7Vu3i+mFAI/y89zIWDQrTOjqyqe3+oA3m7byEC6kZAIBLs7tqbH4e3qIKVkbfwJhiDqSp71zaJNgLS4aEI9jbFXYy4K+Ttyw6MGm3EF/sbuSP8GAvlHeTo3fjAHSr74fEO08QomdspMLq+nsg+rP2VjnOTHGZ9JbEXMOXd+nSBV26dFE+rlq1Ki5evIiFCxdaTVCjaeCikvZlrxBM3ZCA+f0b6V1XJpOhVQ3TNoF837+hMnenX3igwUFNBXc5KriXfLvt/414BSevP8LE9jWK5H1sHld0hF9DHf+sPRLvPEGL6pYdPtzWvfNqVfx24Comq0xLsHRYE3y38xLG6rjAyR3scfyz9npya9SX/T60Cb7YlIBJHbUPqlkc/ZtURuSLpjXVMW1+GdgYG04lFxk+oKT1aFRJ1NxFprwmerk6YeYb9VC2jCP6hQdozaf74vW6+KxbbbMmxRboUPdlN+9PuxqfUK+qceWy6GPEAIgO9nb4YUCo2nPOjvZGT8cgxYAGMCCo6d27t87laWlpJfompaWlwcvL8tX5BWr4uKF3aCWsP1X8XBJddIWNAyOC0KdxgMmGkdd3lwzkjwWRmvYMgoAiyZPd6vtia3yqScpiTq1qVDB5gKeqooezyXJYSrPPutXBh51qqd1AVNWRk6DKkIRzAUAtX3eDZko3VBkne1yf+xruP8lCeZUa0HKuThje0nK1AcVhitN/OVcnnVO+FEwBUBIBjbmsH1M6R94vKaK/GX///TeeP38OT09PjX9ubsYl6BnjypUr+OmnnzB69Gid62VlZSE9PV3tz1xkMhnm9W+EDzuZ586uwBsN8+/ggrUkTppyXpxgb1dsHNtCOf+HpqC1UWBZdAnR3BvEkt3Hi6O9CQZHK0nWNAOzuZmrRtRSN63ebnLJ3DF7uZqnmerXwWHwcnXCj2+FapzXiCzPmr7Comtq6tSpgz59+mDEiBEal8fFxeGff/4x6OCRkZGYMWOGznVOnDiB8PCXXdVu376NLl26oF+/fhg5cqTObaOiovTu39Z0qOODf8a3NFHvJv2KkxhX3IttWJBlTmAta3jj/Q419M7Ga2lta1XAw8xs1KxYMrM+G6p340r450wKFg3SX5NChilT6ObFGi4qqjOBi9EwsCyirz1UPtb2GjrX8y3WhK5UuogOasLCwhAbG6s1qJHL5ahc2bAM7HHjxmHAgAE61wkODlb+//bt22jbti2aNWuG3377Te/+p0yZgsmTJysfp6enIzAw0KAyGsrcd80ymQwhlUyTuGpuxr4Vez5ojZ3n7mBwM8NHxzSV93VMUGot/njRfdta7/R7NqqEb/o2LLFpLIqjspcL3OUOcHd2EDU/m6UVnm/qz+GvWKgkxlvwVihm/HOuyGB5RMUhOqhZtGiRzp5NderUwbVr17Qu18Tb2xve3uIGhUtOTkbbtm0RFhaGpUuXws5OfzW0XC6HXG4boyDaAlNME1CYg50MuQr18KdqBTe829q6a0msgbUGM6psIaAB8nNuYqZ1hJ3MNt5XVcOaB5s1J0yX4oxP4uPhjDm96iuDGkcR53QifUR/i+RyOVxcSn5sCyC/hqZNmzYIDAzEt99+i3v37iE1NRWpqdafhGorGgaU1buOoSd7MSPbrnqnKYLKu+C/NninSdLi5GBnMwmoqrcBo/SMoG3NPMs44vv+DfHDgEbKiXvJ9hja9GhOomtqxCbZengY1l9ejB07duDy5cu4fPkyAgLUu8KZqxu5sayrNPrtnPQqTt54hL4iuxhObF8DP4icObZ1zQr4vxGvKOfg0aRJsBf2f9RW1P7ItthYhYfNsvW3uVeo4d2bybpE9W6AaZsSMKx5sKWLIj6oKVu2rM47dUEQIJPJzDL43rBhwzBs2DCT75eAGhXdUcOARFNfAyNyS1WLk/Wa3LEm5u28pHeOLiKyDb6ezmabe8pQooOavXv3Kv8vCAK6deuGJUuWoFIl/QM0lSa6aiWkwNbvCqnkyB00NyeMb1cdbzT0R5CI+ZxIM2upoba22rgmweWwJZ6Jx6WZ6KCmdevWao/t7e3RtGlTVK3Kuy1V3er74vPX6iC0cllLF8UsrONUStZsUoeauHLvCZoEax7qXyaTldiQBKWBtQUWljSoaRBc5Q4WnQ6ELIuzdJuYTCbDyFYM9Kj0mtihhqWLIHm8udDMwd4O/cLNO2wHWTfbSPUnq8GbQiLrUpxu1aUbQ0MpKlZNja2N50BEJAVWklIDuYMdKpUtg6fZuVbVrZdKL6MntHz+/DlGjx4NV1f1tvH169ebpmRklazkXEpEVkAmk2H/R20gwLYnmSTpEB3UeHqqD80/aNAgkxeGrJ9UE6CJbJWlK8wZzJA1ER3ULF261JzlIBvh7uyo/H/BjOFEVLKcHV8GEu7O7O9BVIC/BjKajUzrQ2RRbWtVwN6L90y6T7mDPTaPa4E8hQAXJ57GiQrw10AGsZZBv4hshbmCjgYi5msjKm3YGEpG4wR0RERkTRjUkNHGtKlu6SIQWT2BfQbphXa1fSxdBMljUENGK+fqZOkiEBERKTGoIYPYWbr/KBERkRZMFCaD+Hk6o11tH8gd7OAm59eHiIisB69KZBCZTIY/hjWxdDGIbEbXED9sjU+FrwenESAyNwY1RERm1L2BH3w9nVHTx93SRSEVHJ1CmhjUEBGZkUwmQ5NgL0sXg6hUYKIwERERSQKDGiIiIpIEBjVEREQkCQxqiIiISI2Ph9zSRTAKgxoiIqISYAtDl/4+NByv1ffDJ51rW7ooRmHvJyIiIgIAtK9TEe3rVLR0MYzGmhoiIiKSBAY1REREJAkMaoiIiEgSGNQQERGRJDCoISIiIklgUENERKUO57OUJgY1REREJAkMaoiIiEgSGNQQERGRJDCoISIiKgEyW5gnwcYxqCEiIiJJYFBDREREksCghoiIiCSBQQ0RERFJAoMaIiIikgQGNURERCQJDGqIiIhIEhjUEBERkSQwqCEiolIjPKgcAGBAk0ALl4TMwcHSBSAiIiopK0c1xa1HT1G1gpuli0JmwJoaIiIqNZwc7CwY0HCeBHNjUENERESSYHNBTVZWFho1agSZTIa4uDhLF4eIiIishM0FNR9//DH8/f0tXQwiIiKyMjYV1Pz777/YsWMHvv32W0sXhYiIiKyMzfR+unPnDkaNGoWNGzfCxcVF1DZZWVnIyspSPk5PTzdX8YiIiMjCbKKmRhAEDBs2DKNHj0Z4eLjo7aKiouDp6an8CwzkuARERERSZdGgJjIyEjKZTOffyZMn8dNPPyE9PR1TpkwxaP9TpkxBWlqa8i8pKclMr4SIiIgszaLNT+PGjcOAAQN0rhMcHIzZs2fj2LFjkMvlasvCw8MxcOBA/Pe//9W4rVwuL7INERERSZNFgxpvb294e3vrXe/HH3/E7NmzlY9v376Nzp07Y82aNYiIiDBnEYmIiMhG2ESicOXKldUeu7nljwZZrVo1BAQEWKJIREREZGVsIlGYiIjI1sk4S4LZ2URNTWHBwcEQBMHSxSAiIiIrwpoaIiIikgQGNURERCQJDGqIiIhIEhjUEBERkSQwqCEiIiJJYFBDREREksCghoiIiCSBQQ0RERFJAoMaIiIikgQGNURERCWAsySYH4MaIiIikgQGNURERCQJDGqIiIhIEhjUEBERkSQwqCEiIiJJYFBDREREksCghoiIiCSBQQ0RERFJAoMaIiIikgQGNURERCQJDGqIiIhKgIzzJJgdgxoiIiKSBAY1REREJAkMaoiIiEgSGNQQERGRJDCoISIiIklgUENERESSwKCGiIiIJIFBDREREUkCgxoiIiKSBAY1REREJAkMaoiIiEqADJwnwdwY1BAREZEkMKghIiIiSWBQQ0RERJLAoIaIiIgkgUENERERSQKDGiIiIpIEBjVEREQkCQxqiIiISBIY1BAREZEkMKghIiIiSWBQQ0REVAJknCXB7BjUEBERkSQwqCEiIiJJsKmgZsuWLYiIiECZMmXg7e2N3r17W7pIREREZCUcLF0AsdatW4dRo0Zhzpw5aNeuHQRBQHx8vKWLRURERFbCJoKa3NxcTJw4Ed988w1GjBihfL5WrVoWLBURERFZE5tofoqNjUVycjLs7OwQGhoKPz8/dO3aFWfPnrV00YiIiMhK2ERQc/XqVQBAZGQkPv/8c/zzzz8oV64cWrdujYcPH2rdLisrC+np6Wp/REREJE0WDWoiIyMhk8l0/p08eRIKhQIAMHXqVPTp0wdhYWFYunQpZDIZ1q5dq3X/UVFR8PT0VP4FBgaW1EsjIiKiEmbRnJpx48ZhwIABOtcJDg5GRkYGAKBu3brK5+VyOapWrYqbN29q3XbKlCmYPHmy8nF6ejoDGyIiIomyaFDj7e0Nb29vveuFhYVBLpfj4sWLaNmyJQAgJycH169fR1BQkNbt5HI55HK5ycpLRERE1ssmej95eHhg9OjRmD59OgIDAxEUFIRvvvkGANCvXz8Ll46IiEg/TpNgfjYR1ADAN998AwcHBwwePBjPnj1DREQE9uzZg3Llylm6aERERGQFbCaocXR0xLfffotvv/3W0kUhIiIiK2QTXbqJiIiI9GFQQ0RERJLAoIaIiIgkgUENERERSQKDGiIiIpIEBjVEREQkCQxqiIiISBIY1BAREZEkMKghIiIqATJwngRzY1BDREREksCghoiIiCSBQQ0RERFJAoMaIiIikgQGNURERCQJDGqIiIhIEhjUEBERkSQwqCEiIiJJYFBDREREksCghoiIiCSBQQ0REVFJ4CwJZseghoiIiCSBQQ0RERFJAoMaIiIikgQGNURERCQJDGqIiIhIEhjUEBERkSQwqCEiIiJJYFBDREREksCghoiIiCSBQQ0REVEJcLLnJdfc+A4TERGZUeTrdVG1gis+7lLL0kWRPJkgCIKlC1FS0tPT4enpibS0NHh4eFi6OERERCSC2Os3a2qIiIhIEhjUEBERkSQwqCEiIiJJYFBDREREksCghoiIiCSBQQ0RERFJAoMaIiIikgQGNURERCQJDGqIiIhIEhjUEBERkSQwqCEiIiJJYFBDREREksCghoiIiCSBQQ0RERFJgoOlC1CSBEEAkD+FOREREdmGgut2wXVcm1IV1GRkZAAAAgMDLVwSIiIiMlRGRgY8PT21LpcJ+sIeCVEoFLh9+zbc3d0hk8ksXZxSKT09HYGBgUhKSoKHh4eli0Mi8XOzTfzcbBM/t6IEQUBGRgb8/f1hZ6c9c6ZU1dTY2dkhICDA0sUgAB4eHvyx2iB+braJn5tt4uemTlcNTQEmChMREZEkMKghIiIiSWBQQyVKLpdj+vTpkMvlli4KGYCfm23i52ab+LkZr1QlChMREZF0saaGiIiIJIFBDREREUkCgxoiIiKSBAY1ZJCFCxeiQYMGyvETmjVrhn///Ve5XBAEREZGwt/fH2XKlEGbNm1w9uxZtX1kZWVh/Pjx8Pb2hqurK9544w3cunVLbZ1Hjx5h8ODB8PT0hKenJwYPHozHjx+XxEssFaKioiCTyfD+++8rn+NnZ50iIyMhk8nU/nx9fZXL+blZr+TkZAwaNAjly5eHi4sLGjVqhJiYGOVyfnZmIBAZYPPmzcKWLVuEixcvChcvXhQ+++wzwdHRUUhISBAEQRDmzp0ruLu7C+vWrRPi4+OF/v37C35+fkJ6erpyH6NHjxYqVaok7Ny5U4iNjRXatm0rNGzYUMjNzVWu06VLFyEkJEQ4cuSIcOTIESEkJETo3r17ib9eKYqOjhaCg4OFBg0aCBMnTlQ+z8/OOk2fPl2oV6+ekJKSovy7e/eucjk/N+v08OFDISgoSBg2bJhw/Phx4dq1a8KuXbuEy5cvK9fhZ2d6DGqo2MqVKycsWbJEUCgUgq+vrzB37lzlsufPnwuenp7CokWLBEEQhMePHwuOjo7C6tWrleskJycLdnZ2wrZt2wRBEIRz584JAIRjx44p1zl69KgAQLhw4UIJvSppysjIEGrUqCHs3LlTaN26tTKo4WdnvaZPny40bNhQ4zJ+btbrk08+EVq2bKl1OT8782DzExktLy8Pq1evRmZmJpo1a4Zr164hNTUVnTp1Uq4jl8vRunVrHDlyBAAQExODnJwctXX8/f0REhKiXOfo0aPw9PRERESEcp2mTZvC09NTuQ4ZZ+zYsXjttdfQoUMHtef52Vm3xMRE+Pv7o0qVKhgwYACuXr0KgJ+bNdu8eTPCw8PRr18/+Pj4IDQ0FIsXL1Yu52dnHgxqyGDx8fFwc3ODXC7H6NGjsWHDBtStWxepqakAgIoVK6qtX7FiReWy1NRUODk5oVy5cjrX8fHxKXJcHx8f5TpkuNWrVyM2NhZRUVFFlvGzs14RERH4888/sX37dixevBipqalo3rw5Hjx4wM/Nil29ehULFy5EjRo1sH37dowePRoTJkzAn3/+CYC/OXMpVRNakmnUqlULcXFxePz4MdatW4ehQ4di//79yuWFZ0AXBEHvrOiF19G0vpj9kGZJSUmYOHEiduzYAWdnZ63r8bOzPl27dlX+v379+mjWrBmqVauG//73v2jatCkAfm7WSKFQIDw8HHPmzAEAhIaG4uzZs1i4cCGGDBmiXI+fnWmxpoYM5uTkhOrVqyM8PBxRUVFo2LAhfvjhB2WPjMJ3B3fv3lXejfj6+iI7OxuPHj3Suc6dO3eKHPfevXtF7mpInJiYGNy9exdhYWFwcHCAg4MD9u/fjx9//BEODg7K95WfnfVzdXVF/fr1kZiYyN+cFfPz80PdunXVnqtTpw5u3rwJAPzszIRBDRWbIAjIyspClSpV4Ovri507dyqXZWdnY//+/WjevDkAICwsDI6OjmrrpKSkICEhQblOs2bNkJaWhujoaOU6x48fR1pamnIdMkz79u0RHx+PuLg45V94eDgGDhyIuLg4VK1alZ+djcjKysL58+fh5+fH35wVa9GiBS5evKj23KVLlxAUFAQA/OzMxSLpyWSzpkyZIhw4cEC4du2acObMGeGzzz4T7OzshB07dgiCkN9F0dPTU1i/fr0QHx8vvPXWWxq7KAYEBAi7du0SYmNjhXbt2mnsotigQQPh6NGjwtGjR4X69euX2i6K5qLa+0kQ+NlZqw8++EDYt2+fcPXqVeHYsWNC9+7dBXd3d+H69euCIPBzs1bR0dGCg4OD8OWXXwqJiYnCihUrBBcXF2H58uXKdfjZmR6DGjLI8OHDhaCgIMHJyUmoUKGC0L59e2VAIwj53RSnT58u+Pr6CnK5XHj11VeF+Ph4tX08e/ZMGDdunODl5SWUKVNG6N69u3Dz5k21dR48eCAMHDhQcHd3F9zd3YWBAwcKjx49KomXWGoUDmr42VmngrFLHB0dBX9/f6F3797C2bNnlcv5uVmvv//+WwgJCRHkcrlQu3Zt4bffflNbzs/O9DhLNxEREUkCc2qIiIhIEhjUEBERkSQwqCEiIiJJYFBDREREksCghoiIiCSBQQ0RERFJAoMaIiIikgQGNURERCQJDGqIiIgs6LfffkObNm3g4eEBmUyGx48f690mKioKTZo0gbu7O3x8fNCzZ88ic00BwPnz5/HGG2/A09MT7u7uaNq0qXJSTVWCIKBr166QyWTYuHGj2rI33ngDlStXhrOzM/z8/DB48GDcvn1bbZ2JEyciLCwMcrkcjRo1MuTlK925cwfDhg2Dv78/XFxc0KVLFyQmJhq0DwY1RGSzrl+/DplMhri4OIsc/+LFi/D19UVGRobedePj4xEQEIDMzMwSKBlZmzZt2mDZsmUalz19+hRdunTBZ599Jnp/+/fvx9ixY3Hs2DHs3LkTubm56NSpk9r368qVK2jZsiVq166Nffv24fTp05g2bRqcnZ2L7G/+/PmQyWQaj9W2bVv89ddfuHjxItatW4crV66gb9++ausIgoDhw4ejf//+ol9D4e179uyJq1evYtOmTTh16hSCgoLQoUMHw34zFp2kgYisXkpKijBhwgShWrVqglwuF3x8fIQWLVoICxcuFDIzM5XrBQUFCQAEAEKZMmWEevXqCYsWLVIuz83NFebMmSPUqlVLcHZ2FsqVKydEREQIf/zxh8bjDh06VLk/bX+5ublCSkqKkJOTY/b3QZM+ffoIM2fOFL1+r169hFmzZpmxRGStWrduLSxdulTnOnv37hUAGDVv0927dwUAwv79+5XP9e/fXxg0aJDebePi4oSAgAAhJSVFACBs2LBB5/qbNm0SZDKZkJ2dXWTZ9OnThYYNG2rc7vDhw0KrVq0EZ2dnISAgQBg/frzw5MkTQRAE4eLFiwIAISEhQbl+bm6u4OXlJSxevFjvayjAmhoi0urq1asIDQ3Fjh07MGfOHJw6dQq7du3CpEmT8Pfff2PXrl1q68+cORMpKSk4c+YMevbsidGjR2PNmjUAgMjISMyfPx+zZs3CuXPnsHfvXowaNQqPHj3SeOwffvgBKSkpyj8AWLp0qdpz9vb28PX1hYODg3nfCA1u3bqFzZs34+233xa9zdtvv42FCxciLy/PjCWj0igtLQ0A4OXlBQBQKBTYsmULatasic6dO8PHxwcRERFFmpaePn2Kt956CwsWLICvr6/e4zx8+BArVqxA8+bN4ejoKLp88fHx6Ny5M3r37o0zZ85gzZo1OHToEMaNGwcAyMrKAgC1WiR7e3s4OTnh0KFDoo/Dmhoi0qpz585CQECA8m6qMIVCofx/UFCQ8P3336str1GjhjBgwABBEAShYcOGQmRkpNFlgYY7yGvXrgkAhFOnTgmC8PJOd9u2bUKjRo0EZ2dnoW3btsKdO3eErVu3CrVr1xbc3d2FAQMGqNUyKRQK4auvvhKqVKkiODs7Cw0aNBDWrl2rszzfffedEB4ervbc9evXhe7duwtly5YVXFxchLp16wpbtmxRLs/KyhLkcrmwe/duo98Hsk3mrKlRKBTC66+/LrRs2VL5XEGti4uLizBv3jzh1KlTQlRUlCCTyYR9+/Yp13vnnXeEESNGKB9r+p0JgiB8/PHHgouLiwBAaNq0qXD//n2NZdFWUzN48GDhnXfeUXvu4MGDgp2dnfDs2TMhOztbCAoKEvr16yc8fPhQyMrKEqKiogQAQqdOnUS/F6ypISKNHjx4gB07dmDs2LFwdXXVuI62NvgCzs7OyMnJAQD4+vpiz549uHfvnsnLWlhkZCQWLFiAI0eOICkpCW+++Sbmz5+PlStXYsuWLdi5cyd++ukn5fqff/45li5dioULF+Ls2bOYNGkSBg0ahP3792s9xoEDBxAeHq723NixY5GVlYUDBw4gPj4eX331Fdzc3JTLnZyc0LBhQxw8eND0L5qsypw5c+Dm5qb8O3jwIEaPHl3kOVMYN24czpw5g1WrVimfUygUAIAePXpg0qRJaNSoET799FN0794dixYtAgBs3rwZe/bswfz58/Ue46OPPsKpU6ewY8cO2NvbY8iQIciPgcSJiYnBsmXL1F5/586doVAocO3aNTg6OmLdunW4dOkSvLy84OLign379qFr166wt7cXfZySr7MlIptw+fJlCIKAWrVqqT3v7e2N58+fA8i/iH/11VdFts3NzcXy5csRHx+P9957DwAwb9489O3bF76+vqhXrx6aN2+OHj16oGvXriYv++zZs9GiRQsAwIgRIzBlyhRcuXIFVatWBQD07dsXe/fuxSeffILMzEzMmzcPe/bsQbNmzQAAVatWxaFDh/Drr7+idevWGo9x/fp1hIWFqT138+ZN9OnTB/Xr11fup7BKlSrh+vXrpnqpZKVGjx6NN998U/l44MCB6NOnD3r37q18rlKlSsU+zvjx47F582YcOHAAAQEByue9vb3h4OCAunXrqq1fp04dZXPOnj17cOXKFZQtW1ZtnT59+qBVq1bYt2+f2v68vb1Rs2ZN1KlTB4GBgTh27JjyN6OPQqHAu+++iwkTJhRZVrlyZQBAWFgY4uLikJaWhuzsbFSoUAERERFFbh50YVBDRDoVro2Jjo6GQqHAwIEDle3gBT755BN8/vnnyMrKgpOTEz766CO8++67AIC6desiISEBMTExOHToEA4cOIDXX38dw4YNw5IlS0xa5gYNGij/X7FiRbi4uKgFGBUrVkR0dDQA4Ny5c3j+/Dk6duyoto/s7GyEhoZqPcazZ8+K9CKZMGEC3nvvPezYsQMdOnRAnz591MoCAGXKlMHTp0+Nfm1kG7y8vJT5LUD+5+7j44Pq1aubZP+CIGD8+PHYsGED9u3bhypVqqgtd3JyQpMmTYp087506RKCgoIAAJ9++ilGjhyptrx+/fr4/vvv8frrr+s8NoAiv39dGjdujLNnz4p6/Z6engCAxMREnDx5ErNmzRJ9HAY1RKRR9erVIZPJcOHCBbXnC4KDMmXKFNnmo48+wrBhw+Di4gI/P78iAZGdnR2aNGmCJk2aYNKkSVi+fDkGDx6MqVOnFjkpF4dqAqNMJiuS0CiTyZTV8wX/btmypcids1wu13oMb2/vIknOI0eOROfOnbFlyxbs2LEDUVFR+O677zB+/HjlOg8fPkS1atWMe2EkSampqUhNTcXly5cB5CfVuru7o3LlysrAqH379ujVq5cysXbs2LFYuXIlNm3aBHd3d6SmpgLIDwgKfpsfffQR+vfvj1dffRVt27bFtm3b8PfffytrYHx9fTUmB1euXFn5e4yOjkZ0dDRatmyJcuXK4erVq/jiiy9QrVo1tVqay5cv48mTJ0hNTcWzZ8+UwyzUrVsXTk5O+OSTT9C0aVOMHTsWo0aNgqurK86fP6/WFLx27VpUqFABlStXRnx8PCZOnIiePXuiU6dOot9L5tQQkUbly5dHx44dsWDBAtHjRHh7e6N69erw9/fXm28DQFk1bsmxW+rWrQu5XI6bN2+ievXqan+BgYFatwsNDcW5c+eKPB8YGIjRo0dj/fr1+OCDD7B48WK15QkJCTprgKj0WbRoEUJDQzFq1CgAwKuvvorQ0FBs3rxZuc6VK1dw//595eOFCxciLS0Nbdq0gZ+fn/KvoLchAPTq1QuLFi3C119/jfr162PJkiVYt24dWrZsKbpsZcqUwfr169G+fXvUqlULw4cPR0hICPbv368W9I8cORKhoaH49ddfcenSJYSGhiI0NFQ5SF+DBg2wf/9+JCYmolWrVggNDcW0adPg5+en3EdKSgoGDx6M2rVrY8KECRg8eLBanpAYrKkhIq1++eUXtGjRAuHh4YiMjESDBg1gZ2eHEydO4MKFC0VySnTp27cvWrRogebNm8PX1xfXrl3DlClTULNmTdSuXduMr0I3d3d3fPjhh5g0aRIUCgVatmyJ9PR0HDlyBG5ubhg6dKjG7Tp37oyRI0ciLy9Pmcj4/vvvo2vXrqhZsyYePXqEPXv2oE6dOsptrl+/juTkZHTo0KFEXhtZD9X8lMIiIyMRGRmpc/vCeVhik3SHDx+O4cOHi1pX037r16+PPXv26N1O1+sr0KRJE+zYsUPr8gkTJmjMuTEEgxoi0qpatWo4deoU5syZgylTpuDWrVuQy+WoW7cuPvzwQ4wZM0b0vjp37oxVq1YhKioKaWlp8PX1Rbt27RAZGWmRcWZUzZo1Cz4+PoiKisLVq1dRtmxZNG7cWOcIr926dYOjoyN27dqFzp07AwDy8vIwduxY3Lp1Cx4eHujSpQu+//575TarVq1Cp06dlDkNRGRaMsGQPllERKT0yy+/YNOmTdi+fbvedbOyslCjRg2sWrVK2TOLiEyLNTVEREZ655138OjRI2RkZMDd3V3nujdu3MDUqVMZ0BCZEWtqiIiISBLY+4mIiIgkgUENERERSQKDGiIiIpIEBjVEREQkCQxqiIiISBIY1BAREZEkMKghIiIiSWBQQ0RERJLAoIaIiIgk4f8BZz9x8I97wFgAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#---------------------\n",
    "# Plot the time series\n",
    "#---------------------\n",
    "plt.plot(time, strain[()])\n",
    "plt.xlabel('GPS Time (s)')\n",
    "plt.ylabel('H1 Strain')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c4d369a5-ac92-4deb-9b98-b02a8581b59a",
   "metadata": {},
   "source": [
    "Finally, let's use all of this to plot a few seconds worth of data.\n",
    "Since this data is sampled at 4096 Hz, 10,000 samples corresponds to about 2.4 s.\n",
    "We will start at time 1256779566.0."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "d9f130e7-910f-4645-9f50-3db5341f93bb",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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q0ePHvjuu++wa9cuzJgxA/v27cMdd9zhs40kSRg6dCjuvvtu1TY/88wzmDJlCiZOnIidO3fi559/xnXXXef9vKCgANWrV8dLL72Eli1bKh7j0qVLqFOnDt58800kJydrniM1Nm/ejP79+6Nv377YuHEj/vvf/+Knn37Ciy++aPxgFkqJEARBqJKdnS09/fTTUt26daXo6GgpMTFR6ty5szR58mTp4sWL3u3S09MlABIAqXz58lLTpk2ljz/+2Pt5UVGRNH78eKlhw4beGkTt27eXPv/8c8XvHTJkiPd4ao+ioiIpOztbunr1qu3nQYlBgwZJr7/+Ovf2t99+u/TGG2/Y2CKCl27duklTp07V3GbRokUSAOncuXOGj3/y5EkJgLRkyRLve3fffbf0wAMP6O6blZUl1axZU8rOzpYASLNmzdLc/scff5TCwsKkwsJCv89effVVqWXLln7vb9++XYqIiJB27typ2x5Juna+nnnmGc1t0tPTpffee8/v/ZKSEumtt96SateuLcXExEgtWrSQvv/+e+/nY8aMkdq2beuzz6xZs6SYmBgpLy+Pq30eyDNEEIRw9u/fj8zMTMyfPx/jx4/Hxo0b8dtvv2HkyJH4+eef8dtvv/ls//rrryM7OxubN2/GbbfdhhEjRuDbb78FAIwbNw6TJk3CG2+8ge3bt2PRokV45JFHcO7cOcXvfv/995Gdne19AMDUqVN93gsPD0dycjIiIiLsPREKHD16FD/99BMefvhh7n0efvhhTJ48GcXFxTa2jHADubm5AIAqVaoAAEpKSjB79mw0aNAAffr0QWJiItq3b++3BHbp0iXce++9+PDDD7k8LWfPnsVXX32FTp06ITIykrt9P//8M+rUqYNffvkFtWvXRkZGBoYPH46zZ8/y/0hOXn75ZUydOhWTJ0/Gtm3bMHLkSDzwwANYsmQJgGseKLl3rHz58rhy5QrWr19v7MsMmU4EQRAc9OnTR6pZs6Z04cIFxc9LSkq8z5VmhfXr15fuueceSZIkqWXLltK4ceNMtwUKM+QDBw5IAKSNGzdKklQ6k587d67UqlUrKSYmRurRo4d04sQJac6cOVKjRo2kuLg46Z577vHxaunNXJV45513/GazBw8elG6++WYpISFBio2NlZo0aeJTfbugoECKjo6Wfv/9d9PngRCDnZ6hkpISacCAAVKX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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#------------------------\n",
    "# Zoom in the time series\n",
    "#------------------------\n",
    "numsamples = 10000\n",
    "startTime  = 1264316116.0\n",
    "startIndex = np.min(np.nonzero(startTime < time))\n",
    "time_seg   = time[startIndex:(startIndex+numsamples)]\n",
    "strain_seg = strain[startIndex:(startIndex+numsamples)]\n",
    "plt.plot(time_seg, strain_seg)\n",
    "plt.xlabel('GPS Time (s)')\n",
    "plt.ylabel('H1 Strain')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7c3e80fa-faf1-4bcd-b420-dedf18c41ba2",
   "metadata": {},
   "source": [
    "You may be surprised that the data looks smooth and curvy, rather than jagged and jumpy as you might expect for [white noise](https://en.wikipedia.org/wiki/White_noise).\n",
    "That's because white noise has roughly equal power at all frequencies, which GW data does not.\n",
    "Rather, GW data includes noise that is a strong function of frequency - we often say the noise is \"colored\" to distinguish it from white noise.\n",
    "The wiggles you see in the plot above are at the low end of the LVK band (around 20 Hz).\n",
    "In general, GW noise is dominated by these low frequencies.\n",
    "To learn more about GW noise as a function of frequency, take a look at the [Step 4 of this tutorial](<04 - Working in Frequency Domain.ipynb>). "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "188fbf2c-9bb8-4937-8818-12f120f4706b",
   "metadata": {},
   "source": [
    "### A slightly more advanced script"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "46270c5b-66d3-4866-963e-4d257438f2b9",
   "metadata": {},
   "source": [
    "Let's write a short python script for viewing the _entire_ structure of a GWOSC data file.\n",
    "It is based on the [visititems](https://docs.h5py.org/en/stable/high/group.html#h5py.Group.visititems) method."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "3f32577a-a030-4d94-82d1-e9450e6797da",
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "meta :\n",
      "meta/Description :\n",
      "   value: b'Strain data time series from LIGO'\n",
      "meta/DescriptionURL :\n",
      "   value: b'http://www.gw-openscience.org/'\n",
      "meta/Detector :\n",
      "   value: b'H1'\n",
      "meta/Duration :\n",
      "   value: 4096\n",
      "meta/FrameType :\n",
      "   value: b'H1_HOFT_CLEAN_SUB60HZ_C01'\n",
      "meta/GPSstart :\n",
      "   value: 1264312320\n",
      "meta/Observatory :\n",
      "   value: b'H'\n",
      "meta/StrainChannel :\n",
      "   value: b'H1:DCS-CALIB_STRAIN_CLEAN_SUB60HZ_C01'\n",
      "meta/Type :\n",
      "   value: b'StrainTimeSeries'\n",
      "meta/UTCstart :\n",
      "   value: b'2020-01-29T05:51:42'\n",
      "quality :\n",
      "quality/detail :\n",
      "quality/injections :\n",
      "quality/injections/GWOSCmeta :\n",
      "   value: b'GWOSC-4KHZ_R1_INJMASK'\n",
      "quality/injections/InjDescriptions :\n",
      "   value: [b'no cbc injection' b'no burst injections' b'no detchar injections'\n",
      " b'no continuous wave injections' b'no stoch injections']\n",
      "quality/injections/InjShortnames :\n",
      "   value: [b'NO_CBC_HW_INJ' b'NO_BURST_HW_INJ' b'NO_DETCHAR_HW_INJ' b'NO_CW_HW_INJ'\n",
      " b'NO_STOCH_HW_INJ']\n",
      "quality/injections/Injmask :\n",
      "   value: [23 23 23 ... 23 23 23]\n",
      "     attrs[Bits]:  5\n",
      "     attrs[Description]:  A bitmask encoded as an integer-valued timeseries. The first \"Bits\" bits might be used, for each there is an entry in \"Bits\", \"Shortnames\", \"Descriptions\", one for each bit.\n",
      "     attrs[Npoints]:  4096\n",
      "     attrs[Xlabel]:  GPS time\n",
      "     attrs[Xspacing]:  1.0\n",
      "     attrs[Xstart]:  1264312320\n",
      "     attrs[Xunits]:  second\n",
      "     attrs[Ylabel]:  Injmask\n",
      "quality/simple :\n",
      "quality/simple/DQDescriptions :\n",
      "   value: [b'data present' b'passes the cbc CAT1 test' b'passes cbc CAT2 test'\n",
      " b'passes cbc CAT3 test' b'passes burst CAT1 test'\n",
      " b'passes burst CAT2 test' b'passes burst CAT3 test']\n",
      "quality/simple/DQShortnames :\n",
      "   value: [b'DATA' b'CBC_CAT1' b'CBC_CAT2' b'CBC_CAT3' b'BURST_CAT1' b'BURST_CAT2'\n",
      " b'BURST_CAT3']\n",
      "quality/simple/DQmask :\n",
      "   value: [127 127 127 ... 127 127 127]\n",
      "     attrs[Bits]:  7\n",
      "     attrs[Description]:  A bitmask encoded as an integer-valued timeseries. The first \"Bits\" bits might be used, for each there is an entry in \"Bits\", \"Shortnames\", \"Descriptions\", one for each bit.\n",
      "     attrs[Npoints]:  4096\n",
      "     attrs[Xlabel]:  GPS time\n",
      "     attrs[Xspacing]:  1.0\n",
      "     attrs[Xstart]:  1264312320\n",
      "     attrs[Xunits]:  second\n",
      "     attrs[Ylabel]:  DQmask\n",
      "quality/simple/GWOSCmeta :\n",
      "   value: b'GWOSC-4KHZ_R1_DQMASK'\n",
      "strain :\n",
      "strain/GWOSCmeta :\n",
      "   value: b'GWOSC-4KHZ_R1_STRAIN'\n",
      "strain/Strain :\n",
      "   value: [-9.97334403e-21 -1.48231254e-20 -2.54824746e-22 ... -1.28230647e-20\n",
      " -2.99821216e-21 -7.84130577e-21]\n",
      "     attrs[Npoints]:  16777216\n",
      "     attrs[Xlabel]:  GPS time\n",
      "     attrs[Xspacing]:  0.000244140625\n",
      "     attrs[Xstart]:  1264312320\n",
      "     attrs[Xunits]:  second\n",
      "     attrs[Ylabel]:  Strain\n",
      "     attrs[Yunits]:  \n"
     ]
    }
   ],
   "source": [
    "def dump_info(name, obj):\n",
    "    print(\"{0} :\".format(name))\n",
    "    try:\n",
    "        print(\"   value: {0}\".format(str(obj[()])))\n",
    "        for key in obj.attrs.keys():\n",
    "            print(\"     attrs[{0}]:  {1}\".format(key, obj.attrs[key]))\n",
    "    except:\n",
    "        pass\n",
    "\n",
    "file = h5py.File(filename)\n",
    "file.visititems(dump_info)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2f05edbf-d92d-4ad2-9c50-94a56fc14083",
   "metadata": {},
   "source": [
    "## What's next?"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2c2e72f2-a641-4a94-a3b2-f28961cd4bb4",
   "metadata": {},
   "source": [
    "In the [next step](<03 - Working with Data Quality.ipynb>), you will learn how to work with data quality."
   ]
  }
 ],
 "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.12.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}