{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Using ESMF LocStream objects\n", "\n", "(contributed by [Raphael Dussin](https://github.com/raphaeldussin))\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "ESMF\n", "[LocStream](http://www.earthsystemmodeling.org/esmf_releases/last_built/esmpy_doc/html/locstream.html?highlight=locstream)\n", "objects describe a list of geographical points, represented by 1-dimensional\n", "arrays of lat/lon coordinates. It is useful for remapping gridded data (e.g.\n", "from model output) to/from observation locations, or creating model boundary\n", "conditions.\n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import xarray as xr\n", "import xesmf as xe" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Remapping from a grid to a LocStream\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's open a gridded dataset (for example the xarray air temperature dataset):\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "airtemps = xr.tutorial.open_dataset(\"air_temperature\")" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "airtemps[\"air\"].isel(time=0).plot(vmin=230, vmax=300)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now let's define a list of geographical points (1-D arrays). The name of the\n", "dimension used for the LocStream is not important.\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "ds_locs = xr.Dataset()\n", "ds_locs[\"lon\"] = xr.DataArray(\n", " data=[220, 230, 240, 250, 260, 270], dims=(\"locations\")\n", ")\n", "ds_locs[\"lat\"] = xr.DataArray(data=[20, 30, 40, 50, 60, 70], dims=(\"locations\"))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Creating a `Regridder` for LocStream object can be done by setting\n", "`locstream_out` or `locstream_in` (or both) to `True`. Some algorithms like\n", "`conservative` are not allowed with locstream input/output. See\n", "[this comment](https://github.com/JiaweiZhuang/xESMF/pull/81#issuecomment-588462933)\n", "for more discussions.\n", "\n", "With `locstream_out=True`, the regridder behaves like\n", "[Xarray's advanced indexing](http://xarray.pydata.org/en/stable/interpolation.html#advanced-interpolation).\n" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "regridder = xe.Regridder(airtemps, ds_locs, \"bilinear\", locstream_out=True)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "using dimensions ('lat', 'lon') from data variable air as the horizontal dimensions for this dataset.\n" ] } ], "source": [ "airtemps_locs = regridder(airtemps)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "airtemps_locs[\"air\"].plot(x=\"time\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Remapping from LocStream to grid\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The opposite transformation is also possible, but only available methods are\n", "`nearest_s2d` and `nearest_d2s`.\n" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "regridder_back_s2d = xe.Regridder(\n", " airtemps_locs, airtemps, \"nearest_s2d\", locstream_in=True\n", ")" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "Show/Hide data repr\n", "\n", "\n", "\n", "\n", "\n", "Show/Hide attributes\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
xarray.Dataset
    • locations: 6
    • time: 2920
    • time
      (time)
      datetime64[ns]
      2013-01-01 ... 2014-12-31T18:00:00
      standard_name :
      time
      long_name :
      Time
      array(['2013-01-01T00:00:00.000000000', '2013-01-01T06:00:00.000000000',\n",
             "       '2013-01-01T12:00:00.000000000', ..., '2014-12-31T06:00:00.000000000',\n",
             "       '2014-12-31T12:00:00.000000000', '2014-12-31T18:00:00.000000000'],\n",
             "      dtype='datetime64[ns]')
    • lon
      (locations)
      int64
      220 230 240 250 260 270
      array([220, 230, 240, 250, 260, 270])
    • lat
      (locations)
      int64
      20 30 40 50 60 70
      array([20, 30, 40, 50, 60, 70])
    • air
      (time, locations)
      float64
      292.8 288.9 268.1 ... 255.5 236.8
      array([[292.79000854, 288.8999939 , 268.1000061 , 269.79000854,\n",
             "        247.69999695, 247.88999939],\n",
             "       [293.        , 289.79000854, 262.3999939 , 267.69998169,\n",
             "        246.        , 246.29998779],\n",
             "       [292.29000854, 289.5       , 256.69998169, 269.8999939 ,\n",
             "        244.5       , 243.88999939],\n",
             "       ...,\n",
             "       [296.29000854, 290.58999634, 263.19000244, 266.19000244,\n",
             "        259.79000854, 234.78999329],\n",
             "       [296.48999023, 289.48999023, 261.08999634, 270.88998413,\n",
             "        259.98999023, 237.98999023],\n",
             "       [297.19000244, 289.58999634, 260.79000854, 268.38998413,\n",
             "        255.48999023, 236.78999329]])
  • regrid_method :
    bilinear
" ], "text/plain": [ "\n", "Dimensions: (locations: 6, time: 2920)\n", "Coordinates:\n", " * time (time) datetime64[ns] 2013-01-01 ... 2014-12-31T18:00:00\n", " lon (locations) int64 220 230 240 250 260 270\n", " lat (locations) int64 20 30 40 50 60 70\n", "Dimensions without coordinates: locations\n", "Data variables:\n", " air (time, locations) float64 292.8 288.9 268.1 ... 268.4 255.5 236.8\n", "Attributes:\n", " regrid_method: bilinear" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "airtemps_locs" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "using dimensions ('locations',) from data variable air as the horizontal dimensions for this dataset.\n" ] } ], "source": [ "airtemps_gridded2 = regridder_back_s2d(airtemps_locs)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX8AAAEWCAYAAACOv5f1AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nO3dfbRdVX3u8e8TEoIlvKUQDElqsE1UsAI1pvZSrYgKUjW2Vo230txbeqOWdoADX3jptdXb3KK2tL3jVnvTUkfuFaRRoFBHfQkMUKmSNMQAhkAJgpASg6BAQAkkee4fax6z2exz9nnZ65z98nzGWOOsPdfL/q2T7N+eZ64515RtIiJisEyb6gAiImLyJflHRAygJP+IiAGU5B8RMYCS/CMiBlCSf0TEAEryHxCSfk7SE5IOmOpYImLqJfn3KUn3SXrd0Gvb99ueZXvvVMY1HEkzJV0q6XuSdkn6tqQ3Nu1zqqQ7Jf1Y0g2SXtCw7ZRS9pik+1qc/wZJP5D0uKRbJS1rE8/CcsyPy3u+rmHbXEnXSnpQkiUtHMX1/edybU9K+idJsxu2vUPSN8t73djuXBGdkOQf3WI68ADwa8BhwH8H1g4lVklHAleV8tnARuAfG45/EvgH4IPDnP8cYK7tQ4GVwGclzR0hns8B3wZ+FrgI+IKko8q2fcCXgbeN5sIkHQ/8H+BM4Gjgx8CnGnb5IfBXwMWjOV9ER9jO0mcL8P+oEtRPgCeADwELAQPTyz43An8KfLPs889Uie4y4HHg34CFDed8MbCOKlHdBbxjEq7jNuBtZX0l8M2GbQeX63tx0zGvA+5rc96lwFPA0mG2LwZ2A4c0lH0DeG/TftPL73Rhm/f7n8DlDa9/Hni68fyl/PeAG6f6/0+WwVhS8+9Dts8E7gfe7Kqp5xPD7LqcqjY6jyohfQv4DFXNeivwxwCSDqZK/JcDc4B3AZ8qNdrnkPQpSY8Os9w2mmuQdDRVEt5Sio4Hbm24xieBe0r5qEj6oqSngPVUX34bh9n1eOC7tnc1lN06lvdqcb7G2O+hSv6Lx3m+iAlL8h9sn7F9j+3HgC8B99i+zvYe4PPASWW/N1HVpj9je4/tTcCVwG+1Oqnt37d9+DDLy9oFJWkG1V8ga2zfWYpnAY817foYcMhoL9b2m8r+ZwBfsb1vmF0n/F41ny9iwpL8B9vOhvWftHg9q6y/APjlxho88NvA8zsdkKRpVM1WTwN/0LDpCeDQpt0PBXYxBrafsf0l4DRJbynvuaX0hHpC0qsm8l6SXtVwrqG/WjoSe0QnTZ/qAKI2nXxc6wPA12y/fjQ7S/pb4N3DbP6e7eGaiwRcSnVT9AzbzzRs3gKsaNj3YKqmqi2Mz/RyPM3xSFoMvFDSIQ1NPydQNXuNyPY32P+l2Rj7CQ3nfyEwE/j3ccYeMWGp+fevncALO3SuLwKLJZ0paUZZXiHpJa12tv3ecq+h1TJSu/mngZdQ3av4SdO2q4GXSnqbpIOAjwC3DTULSZpWymdUL3WQpAPLthdLeqOk55XY3w28GvjaMPH/O7AZ+ONynt8AXkbV1EU550FUCRxgZnk9nMuAN5e/Cg4GPgZcNfTFIumAcvx0YFp5zxkjnC9iwpL8+9efAX9Ummk+MJETlST1BqobxA8C3wc+zv7kN2Glz/57gBOB7zc0nfx2ieEHVF0rVwE/An65xDPk1VRNVf8C/FxZ/+rQ6YE/AR4CfkDV7fOd5d7FcJYDS8p7XQz8VolhyFBPKoA7y+uWbG8B3kv1JfAQVVv/7zfscmY5/tPAq8r6340QW8SEyc5kLhERgyY1/4iIAZTkHxFRk3L/ZkN5pMgWSR8t5bMlrZN0d/l5RMMxF0jaJukuSafVFluafSIi6lF6sB1s+4lyE/8mqntOvwn80PbFks4HjrD9YUnHUT1aZClwDHAdsNg1PJMrNf+IiJq4MtQxYEZZDCwD1pTyNcBby/oy4Arbu23fC2yj+iLouJ7o5z9j5sGe+TOz2+8YEQPvyUe3P2z7qPZ7Du+0Uw72Iz9sX9m+5bbdW6ieEzVkte3Vjfuoeoz6LcAvAH9je72ko23vALC9Q9Kcsvs84OaGw7eXso7rieQ/82dmc8Kp50x1GBHRA7555Qe/N9FzPPLDvWz4ys+13e+AuXc/ZXvJSPuUJpsTJR0OXC3ppSPsrlanaBvIOPRE8o+ImEwG9jHco5/GeU770TJfw+nATklzS61/LtX4D6hq+gsaDptPNbam49LmHxHRxJhnvLft0o6ko0qNH0nPo3rk+J3Atex/XMkK4Jqyfi2wXNXkRscCi4ANHb48IDX/iIiWOlTznwusKe3+04C1tr8o6VtUkxWdRfX49bdDNRpc0lrgDmAPcHYdPX0gyT8i4jmM2duBbvC2b2P/o9Ebyx8BTh3mmFVUjzGpVZJ/REQL++q5z9o1kvwjIpoY2JvkHxExeFLzj4gYMAae6fNH3yT5R0Q0MU6zT0TEwDHs7e/cn+QfEdGsGuHb35L8IyKeQ+xt+Zid/pHkHxHRpLrhm+QfETFQqn7+Sf4REQNnX2r+ERGDJTX/iIgBZMTePn/ifW1XJ+lFkjY3LI9LOnekWesjIrrFPqvt0stqS/6277J9ou0TgZcDPwauBs4Hrre9CLi+vI6I6BpGPO0D2i69bLL+rjkVuMf29xh+1vqIiK5QDfKa1nbpZZPV5r8c+FxZH27W+meRtBJYCXDg8w6flCAjIob0+w3f2r+6JB0IvAX4/FiOs73a9hLbS2bMnFVPcBERLdhir6e1XXrZZET/RmCT7Z3l9c4yWz1Ns9ZHRHSNfajt0ssmI/m/i/1NPjD8rPUREV2huuE7ve3Sy2qNXtLPAK8H3tNQfDEtZq2PiOgWQzd8+1mtyd/2j4GfbSobdtb6iIhusbfH+/G3099fbRER4zA0wrfd0o6kBZJukLRV0hZJ55TyEyR9S9Ltkv5Z0qENx1wgaZukuySdVtc1JvlHRLSwz9PaLqOwBzjP9kuAVwJnSzoO+HvgfNu/SDX49YMAZdty4HjgdOBTkmoZTZbkHxHRpHqw28Rr/rZ32N5U1ncBW4F5wIuAr5fd1gFvK+vLgCts77Z9L7ANWNrZq6sk+UdENDHiGR/QdgGOlLSxYVk53DklLQROAtYD36Ea/wRVp5cFZX0e8EDDYdtLWcf1dl+liIga2Ix2ENfDtpe020nSLOBK4Fzbj0v6XeB/SfoIVff3p4d2bRXOKMMekyT/iIjn6NwgLkkzqBL/ZbavArB9J/CGsn0x8Otl9+3s/ysAYD7wYEcCaZJmn4iIJoaOPN5BkoBLga22L2kon1N+TgP+CPjbsulaYLmkmZKOBRYBGzp7dZXU/MdItfwBFqPV512vo4t0aDKXk4EzgdslbS5lFwKLJJ1dXl8FfAbA9hZJa4E7qHoKnW17bycCaZbkHxHRxHRmshbbN9G6HR/gr4c5ZhWwasJv3kaSf0REEwPP9Pize9rp76uLiBgX9f3z/JP8IyKaGEY7grdnJflHRLSQmn9ExICxlZp/RMSgqW741vI8ta7RV8k/ffD732T8G2csQYB6fo7edvoq+UdEdEJ1w7e/awFJ/hERLXRohG/XSvKPiGjSqRG+3SzJPyKihUzgHhExYGx4Zl+Sf0TEQKmafZL8IyIGTkb4RkQMmHT17CLdMoBr+7Lxz6sw/5r+HjHYLybyf63P88UASbNPRMRA6tQcvt2q1q82SYdL+oKkOyVtlfQrkmZLWifp7vLziDpjiIgYq6q3zwFtl15W9981fw182faLgROArcD5wPW2FwHXl9cREV1jaJBXu6WX1Zb8JR0KvJpq5npsP237UWAZsKbstgZ4a10xRESM1z7Udullddb8Xwj8APiMpG9L+ntJBwNH294BUH7OaXWwpJWSNkrauGf3EzWGGRHxbEO9fVLzH5/pwC8Bn7Z9EvAkY2jisb3a9hLbS6bPnFVXjBERLe3ztLZLL6sz+u3Adtvry+svUH0Z7JQ0F6D8fKjGGCIixswWezyt7dKOpAWSbigdXrZIOqeUnyjpZkmbSwvH0oZjLpC0TdJdkk6r6xprS/62vw88IOlFpehU4A7gWmBFKVsBXFNXDBER49WhZp89wHm2XwK8Ejhb0nHAJ4CP2j4R+Eh5Tdm2HDgeOB34lKRauhXV3c//D4HLJB0IfBf4r1RfOGslnQXcD7y93UmeOdwTGlzVLXrxGjIwbWxGO0Csx5uL+16nRviW+5pD9zh3SdoKzCtvcWjZ7TDgwbK+DLjC9m7gXknbgKXAtyYcTJNak7/tzcCSFptOrfN9IyImapTJ/0hJGxter7a9utWOkhYCJwHrgXOBr0j6c6oK8X8qu80Dbm44bHsp67iM8I2IaDKGyVwett2qgvsskmYBVwLn2n5c0p8C77d9paR3UHWJfx207D9ay8Ntevt2dURETTrVz1/SDKrEf5ntq0rxCmBo/fNUTTtQ1fQXNBw+n/1NQh2V5B8R0cSGPfumtV3akSSqWv1W25c0bHoQ+LWy/lrg7rJ+LbBc0kxJxwKLgA0du7AGafaJiGihQ4O4TgbOBG6XtLmUXQj8N+CvJU0HngJWAtjeImktVc/IPcDZtmvpKZLkHxHRpFMTuNu+idbt+AAvH+aYVcCqCb95G0n+EREtuM/74yb5x4gmOjYh4wRaG8uEMX2eg7pWrz+4rZ0k/4gulsQ/NexM4xgRMYDE3lH05ullSf4RES2kzT8iYsB06tk+3SzJPyKimat2/36W5B8R0UJ6+0REDBjnhm9ExGBKs083MPjp3voW1oH7pjqErjCRQWIZIDb8YLA+vxfZFdLbJyJiwNhJ/hERAyldPSMiBlDa/CMiBowR+9LbJyJi8PR5xT/JPyLiOXLDNyJiQPV51T/JPyKihdT8Y1w6PShtEAeNjXaA2CAOBms1+KvPc9WkMrBvX3//QpP8IyKamb7/Nq01+Uu6D9gF7AX22F4iaTbwj8BC4D7gHbZ/VGccERFj1e/9/CejI+sptk+0vaS8Ph+43vYi4PryOiKiu3gUSxuSFki6QdJWSVsknVPK/1HS5rLcJ2lzwzEXSNom6S5Jp3X+wipT0eyzDHhNWV8D3Ah8eAriiIgYhjp1w3cPcJ7tTZIOAW6RtM72O3/6TtJfAI+V9eOA5cDxwDHAdZIW2x7/ExKHUXfN38BXJd0iaWUpO9r2DoDyc06rAyWtlLRR0sa9u56sOcyIiCYdqPnb3mF7U1nfBWwF5g1tlyTgHcDnStEy4Arbu23fC2wDlnbmgp6t7pr/ybYflDQHWCfpztEeaHs1sBpg5sL5fd76FhFdxeAO9/aRtBA4CVjfUPwqYKftu8vrecDNDdu30/Bl0Um11vxtP1h+PgRcTfUNtlPSXIDy86E6Y4iIGB+NYuHIoRaKsqxseSZpFnAlcK7txxs2vYv9tf6hN21WS+W3tpq/pIOBabZ3lfU3AB8DrgVWABeXn9fUFUNExLiNLuU+3NCZpSVJM6gS/2W2r2oonw78JvDyht23AwsaXs8HHhxlxGNSZ7PP0cDVVZMW04HLbX9Z0r8BayWdBdwPvL3diZ4/6zE+/Kp/GVcQH//GGeM6rttMZNBYvw8Qy2CwSgZ+dVgH6tulTf9SYKvtS5o2vw640/b2hrJrgcslXUJ1w3cRsGHikTxXbcnf9neBE1qUPwKcWtf7RkRMWOcGeZ0MnAnc3tCd80Lb/0LVq6exyQfbWyStBe6g6il0dh09fSAjfCMiWurEIC/bN9G6HR/b/2WY8lXAqom/+8iS/CMiWsmzfSIiBk+reyj9JMk/IqLZKAdx9bIk/4iI51Dfd5VK8o+IaCU1/9423vEBMHhjBAZxPED6/sewuvzjUMYQzLf9wHiOH1VWkPTx0ZRFRPSFoX7+7ZapDNE28E/jPX60w0Zf36LsjeN904iIbie3X7rAzZJeMZ4DR2z2kfQ+4PeBF0q6rWHTIcC/jucNIyJ6Qnck93ZOAd4j6XvAk1QDymz7Ze0ObNfmfznwJeDPePaMW7ts/3CcwUZERGeMuwVmxORv+zGqGWbeBVCey38QMEvSLNv3j/eNIyK6WZc067Qk6dDyaOhd4z3HqHr7SHozMPSUuYeAF1DNSHP8eN84IqJrmW5/vMPlwJuAW3h2A5XK6xe2O8Fou3r+KfBK4DrbJ0k6hfLXQEREX+rimr/tN5Wfx0qaTfXo54PGco7RJv9nbD8iaZqkabZvSFfPiOhn3dzsM0TS7wHnUE36spmqkv5NRvHY/NEm/0fLNGRfBy6T9BDVs6b72qANEBvLhDH9MiBsECeCycCvUeqB5E+V+F8B3Gz7FEkvBj46mgNH+2lfBvwEeD/wZeAe4M3jCDQiojd4FMvUe8r2UwCSZtq+E3jRaA4cVc3f9pMNL9eMPb6IiN7RRYO42tku6XCqkb7rJP2IUc75226Q1y5af78NDSQ4dKyRRkT0hO7u7QOA7d8oq38i6QbgMKrWmbba9fM/ZIKxRUT0pB6p+f+U7a+NZf++f6pnRMS49FjyH6sk/4iIZr3T5j9uSf4REa30efIffcfuiIgBon3tl7bnkBZIukHSVklbJJ3TsO0PJd1Vyj/RUH6BpG1l22n1XF2P1Pxnag+LDvz+s8rufvr5UxTN6Ix2gFgvDgaDwZsdrN9nAcvAr9rsAc6zvUnSIcAtktYBR1ONn3qZ7d3loZlIOg5YTvXctGOA6yQttj260YhjUHvNX9IBkr4t6Yvl9WxJ6yTdXX4eUXcMERFj1oFBXrZ32N5U1ndRPRBzHvA+4GLbu8u2h8ohy4ArbO+2fS+wDVjauYvabzKafc6huuAh5wPX214EXM+z5wmIiJh6o5jFa6w3hCUtBE4C1gOLgVdJWi/paw2zcc0DGufk3V7KOq7W5C9pPvDrwN83FC9j/yjhNcBb64whImJcRlfzP1LSxoZlZatTlWejXQmcW57DPx04gupBbB8E1pYJ2Vs1ttVy67nuNv+/Aj5ENe3jkKNt74DqT6Khtq5m5Ze4EmDOMT1xayIi+snoUu7DtpeMtIOkGVSJ/zLbV5Xi7cBVZRL2DZL2AUeW8gUNh89nlI9rGKvaav6S3gQ8ZPuW8Rxve7XtJbaXHDY7yT8iJo/oWG8fAZcCW21f0rDpn4DXln0WAwcCDwPXAsslzZR0LNVz+jd09OKKOrPqycBbJJ1BNcnAoZI+C+yUNLfU+udSzQwWEdE9OjfI62TgTOB2SZtL2YXAPwD/IOk7wNPAivJXwBZJa4E7qHoKnV1HTx+oMfnbvgC4AEDSa4AP2H63pE8CK4CLy89r6oohImLcOpD8bd9E63Z8gHcPc8wqYNXE331kU9GecjHVzY2zgPuBt4/nJM39/oeT8QBTq9V4gPT97w0D3/e/z0f4Tkryt30jcGNZf4RRTDEWETGV8myfiIhBlOQfETFgPLrePL0syT8iopXU/CMiBk/a/CMiBlGSf0TEgBnlUzt7WZJ/REQTkWafntfPg8H6aeBXK704GCwDv/pHkn9ExCBK8o+IGEBJ/hERA6ZzT/XsWkn+ERGtJPlHRAyePN4hImIApdknImLQZJBXRMSASvIfDK0Gg/XiwK9W+mkwWAZ+xWTICN+IiAGlff2d/ZP8IyKapc0/ImIwpdknImIQ9XnyH93jFSMiBozcfml7DmmBpBskbZW0RdI5pfxPJP2HpM1lOaPhmAskbZN0l6TT6rq+1PwjIlrpTM1/D3Ce7U2SDgFukbSubPtL23/euLOk44DlwPHAMcB1khbbfm6XsQlKzT8iopmrxzu0W9qext5he1NZ3wVsBeaNcMgy4Arbu23fC2wDlk78gp4rNf8RZCKY7pO+/92nHyd4GUM//yMlbWx4vdr26pbnlBYCJwHrgZOBP5D0O8BGqr8OfkT1xXBzw2HbGfnLYtxS84+IaMVuv8DDtpc0LMMl/lnAlcC5th8HPg38PHAisAP4i6FdW0XS8WujxuQv6SBJGyTdWm50fLSUz5a0TtLd5ecRdcUQETFenbjhCyBpBlXiv8z2VQC2d9rea3sf8Hfsb9rZDixoOHw+8GCnrqlRnTX/3cBrbZ9A9e12uqRXAucD19teBFxfXkdEdA+PcmlDkoBLga22L2kon9uw228A3ynr1wLLJc2UdCywCNgwwatpqbY2f9sGnigvZ5TFVDc0XlPK1wA3Ah+uK46IiPHo0PP8TwbOBG6XtLmUXQi8S9KJVDnxPuA9ALa3SFoL3EHVU+jsOnr6QM03fCUdANwC/ALwN7bXSzra9g6o7oRLmjPMsSuBlQBzjsl96YiYXJ1I/rZvonU7/rBPZbS9Clg18XcfWa03fEub1olU7VZLJb10DMeuHrqJctjsJP+ImERmtDd8e9ak9Pax/ShV887pwM6h9q7y86HJiCEiYiw6dcO3W9XZ2+coSYeX9ecBrwPupLqhsaLstgK4pq4YIiLGrQM3fLtZne0pc4E1pd1/GrDW9hclfQtYK+ks4H7g7TXGMCn6ZSKYDPyaWv008KvXZTKXCbB9G9VotubyR4BT63rfiIgJszOZS0TEQOrv3J/kHxHRSpp9IiIGjYE0+0REDKD+zv1J/hERraTZJyJiAKW3T0TEoOmDQVztJPnXJAO/pla/DPzqVb0+u1c1yKu/s3+Sf0REK31eV0jyj4hoITX/iIhBkzb/iIhBlGf7REQMpjT7REQMGHdsDt+uleQfEdFKav4REQOov3N/kv9kajXwq5VuGgzWauDXcLp9QFgvDvxqNbsXZIavyaB93f1/Y6ImZQL3iIieYqpBXu2WNiQtkHSDpK2Stkg6p2n7ByRZ0pENZRdI2ibpLkmndeyamqTmHxHRRLhTg7z2AOfZ3iTpEOAWSets3yFpAfB6qrnMq/eVjgOWA8cDxwDXSVpsu/WfgBOQmn9ERCt2+6XtKbzD9qayvgvYCswrm/8S+BDPvruwDLjC9m7b9wLbgKWdvKwhSf4REa2MLvkfKWljw7JyuNNJWgicBKyX9BbgP2zf2rTbPOCBhtfb2f9l0VFp9omIaDbU5t/ew7aXtNtJ0izgSuBcqqagi4A3tNp1mGg6Lsk/IqKFTvX2kTSDKvFfZvsqSb8IHAvcKglgPrBJ0lKqmv6ChsPnAw92JJAmafaJiHiOUTT5jKLNX1V2vxTYavsSANu3255je6HthVQJ/5dsfx+4FlguaaakY4FFwIY6rjA1/y7UixPBQG9OBtOLff+hdf//bu/731MTvJhOjfA9GTgTuF3S5lJ2oe2WA2hsb5G0FriDqnno7Dp6+kCSf0REax2oA9i+idbt+I37LGx6vQpYNfF3H1ltzT7DDW6QNFvSOkl3l59H1BVDRMR4yW679LI62/yHBje8BHglcHYZwHA+cL3tRcD15XVERHfpQJt/N6st+Y8wuGEZsKbstgZ4a10xRESMiw1797VfetiktPk3Dm4Ajra9A6ovCElzhjlmJbASYM4xuTUREZOsx2v27dTe1bNxcIPtx0d7nO3VtpfYXnLY7CT/iJhkafYZv+bBDaV4p6S5Zftc4KE6Y4iIGDMD+9x+6WF19vZ5zuCG4lpgRVlfAVxTVwwREeNj8L72Sw+rsz2l5eAG4GJgraSzqB5l+vYaY+gbvTrwK6InmZ6/odtObcm/zeCGU+t634iIjujxNv12cic1IqKVJP+IiEHT+7152knyj4hoZqDPJ3BP8o+IaCU1/4iIQeP09omIGDgG93g//naS/CMiWunxEbztJPn3sF4Y+JXZvSZPZvfqsLT5R0QMGDu9fSIiBlJq/hERg8Z4by3zpneNJP+IiGZDj3TuY0n+ERGt9HlXz9pn8oqI6DUGvM9tl3YkLZB0g6StkrZIOqeU/w9Jt0naLOmrko5pOOYCSdsk3SXptLquMck/IqKZOzaZyx7gPNsvAV4JnC3pOOCTtl9m+0Tgi8BHAMq25cDxwOnApyTV0l83yT8iogXv3dt2aXsOe4ftTWV9F7AVmNc0n/nBVH9sACwDrrC92/a9wDZgaUcvrJB7oDuTpB8A3wOOBB6e4nDa6fYYuz0+6P4Yuz0+6P4Y64zvBbaPmsgJJH2ZKsZ2DgKeani92vbqYc65EPg68FLbj0taBfwO8Bhwiu0fSPrfwM22P1uOuRT4ku0vjPtihtETN3yH/iElbbS9ZKrjGUm3x9jt8UH3x9jt8UH3x9jt8dk+vZPnkzQLuBI4d6jWb/si4CJJFwB/APwxrWc/rKWGnmafiIgaSZpBlfgvs31Vi10uB95W1rcDCxq2zQcerCOuJP+IiJpIEnApsNX2JQ3lixp2ewtwZ1m/FlguaaakY4FFwIY6YuuJZp8GLdvSuky3x9jt8UH3x9jt8UH3x9jt8XXKycCZwO2SNpeyC4GzJL0I2Ed1P/O9ALa3SFoL3EHVU+hs27UMNe6JG74REdFZafaJiBhASf4REQOoq5L/CEOhZ0taJ+nu8vOIhmMmZSh0m/g+KenOMlz7akmHT0V8I8XYsP0DkizpyIayKf8dlm1/WGLYIukT3RSfpBMl3VyG42+UtLThmMn+Nz5I0gZJt5YYP1rKu+VzMlx8XfM5CcB21yzAXOCXyvohwL8DxwGfAM4v5ecDHy/rxwG3AjOBY4F7gAOmIL43ANNL+cenKr6RYiyvFwBfoQyY67Lf4SnAdcDMsm1Ol8X3VeCNpfwM4MYp/DcWMKuszwDWUz06oFs+J8PF1zWfkyzurpq/hxkKTTXkeU3ZbQ3w1rI+aUOhR4rP9ldt7ym73UzVN3fS4xspxrL5L4EP8exBI13xOwTeB1xse3fZ9lCXxWfg0LLbYezvez0V/8a2/UR5OaMspns+Jy3j66bPSXRZs0+jMhT6JKpaw9G2d0D14QTmlN3mAQ80HLad/YluMuNr9LvAl8r6lMUHz45R0luA/7B9a9Nu3fI7XAy8StJ6SV+T9Ioui+9c4JOSHgD+HLhgKuOTdEDpOvgQsM52V31OhomvUdd8TgZVVyb/VkOhh9u1RVntfVeHi0/SRVR9cy+byvhKLD+NscR0EeXJgc27tiibit/hdOAIquaBDwJrywCZbonvfcD7bS8A3k81cIepis/2XldPhJwPLJX00hF2n/QYR4qvmz4ng0lhhAAAAAJISURBVKzrkr9aD4XeKWlu2T6XqjYBkzgUuk18SFoBvAn4bdtD/3EnPb5hYvx5qrbUWyXdV+LYJOn5UxHjML/D7cBVpclgA9XglyO7KL4VwND659nfLDEl/8ZDbD8K3Ej1+N+u+ZwME19XfU4G3lTfdGhcqGoA/xf4q6byT/LsG1mfKOvH8+wbRd+l/htZreI7nWpE3lFN5ZMa30gxNu1zH/tv+HbL7/C9wMfK+mKqZgB1UXxbgdeU9VOBW6bw3/go4PCy/jzgG1QJtVs+J8PF1zWfkyzuuuT/q1R/7t0GbC7LGcDPAtcDd5efsxuOuYiqd8BdlN4YUxDftpKshsr+diriGynGpn1+mvy76Hd4IPBZ4DvAJuC1XRbfrwK3lCS1Hnj5FP4bvwz4donxO8BHSnm3fE6Gi69rPidZnMc7REQMoq5r84+IiPol+UdEDKAk/4iIAZTkHxExgJL8IyIGUJJ/dDVJT7TfKyLGKsk/ImIAJflHT1Dlk5K+I+l2Se8s5a+RdKOkL5RnxV9WngkUESPotQncY3D9JnAicALVM3/+TdLXy7aTqB4R8CDwr1STZt80FUFG9IrU/KNX/CrwOVdPi9wJfA0YeuzzBtvbbe+jemzAwimKMaJnJPlHrxipKWd3w/pe8hdtRFtJ/tErvg68s0wSchTwamDDFMcU0bNSQ4pecTXwK1RP1TTwIdvfl/TiqQ0rojflqZ4REQMozT4REQMoyT8iYgAl+UdEDKAk/4iIAZTkHxExgJL8IyIGUJJ/RMQA+v8e7GrhPiFH+AAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "airtemps_gridded2[\"air\"].isel(time=0).plot(vmin=230, vmax=300)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Since we drastically undersampled the original dataset, the reconstruction is\n", "very different from the original. The other nearest-neighbor option (d2s) will\n", "only map one destination grid point per LocStream point:\n" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "regrid_back_d2s = xe.Regridder(\n", " airtemps_locs, airtemps, \"nearest_d2s\", locstream_in=True\n", ")" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "using dimensions ('locations',) from data variable air as the horizontal dimensions for this dataset.\n" ] } ], "source": [ "airtemps_gridded3 = regrid_back_d2s(airtemps_locs)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "airtemps_gridded3[\"air\"].isel(time=0).plot()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## LocStream to LocStream\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It is also possible to remap from one LocStream to another, again only nearest\n", "neighbor methods are available.\n" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "ds_locs2 = xr.Dataset()\n", "ds_locs2[\"lon\"] = xr.DataArray(\n", " data=[225, 235, 245, 255, 265, 275], dims=(\"locations\")\n", ")\n", "ds_locs2[\"lat\"] = xr.DataArray(\n", " data=[20, 30, 40, 50, 60, 70], dims=(\"locations\")\n", ")" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "regrid_l2l = xe.Regridder(\n", " ds_locs, ds_locs2, \"nearest_s2d\", locstream_in=True, locstream_out=True\n", ")" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "using dimensions ('locations',) from data variable air as the horizontal dimensions for this dataset.\n" ] } ], "source": [ "airtemps_locs2 = regrid_l2l(airtemps_locs)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYcAAAEaCAYAAAD65pvjAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nO3deZwc9X3n/9e7qqu75x6NZnQLJIO4wRBjbILxFcfYcWJ8JuRwnJP9JWSDE6+T4GRjxwn7S/LLepNfHrET1vbGu3ZCSMAJ6zgQbGMIWRsMmMMgMAIBErqvuae7q+qzf1SNaEkjqVvq1vRIn+fjUY/prq7q+nR3TX/6e5bMDOecc65eMN8BOOec6zyeHJxzzh3Ck4NzzrlDeHJwzjl3CE8OzjnnDuHJwTnn3CEK8x3A8SpGPdZV6MfCLM+pFpOWI4KZGgQBFgbIDAyoxSBBGGBBQFoOCEdnsnVA0l8inEmgUqO2uExYMdKCCKdTENT6AgpThgUiKQEGQQqFyYRqf4gVIKhCWoSwkh1SKRCACSyAsAZpkN0OEkjDbHtCQ1VhYbY9MkgFgWULvHx/9raJQjEmNWEIs/ylGJiJMEwBI0kCgsAoFWJmahGWiDBKKYUxtTQkUEpqAbU42y5Ngyz4VNnf+mPOJTDIj0uSbSPL46g7wxTn71kChansvZ39eRJUU9IoAEE4HZMWQ4JaiknZ+tn3rGYoyT5PC0VQS8EMAkEy2y3bIE6gUIA0wYoRStI8vgSKhezxMNwfdxoFBNUkO1/iBNL05f0CQZodI8njUpqdBwBWyP8GIogNAwiF4uw1psX8ddey9yONgDQ7N5RC3GdEoyKNIKk7F8jPGYL8vQUo5OdJUPe51H8OlsUShClmwpLseYIwRQJhhEGKIWpxiGT0FStU05BaEpKaCAIjjvOTVqDA8ucxokKCmYiTEMjuJ2lAOrs9oGT/TQhevi/LXo+S/LwwKExl6xUbcbcIK6DESEoirFj2b1AQYSWh1hsSzmSffxoFhNUEk1CSYoWg7jNIScohio0gzs4hDFStMRbv3GVmI3OfyI256k09tntP0tC2Dz1WudPM3nY8x5svCz45lEuDXL72Z0h7y5hEYctups5fTvcTW7G+bpK+LoJqjOIUbdsFUYQN9pJ2lRg/s4eBO55CUfY27H3LmQw8NYY2bmHLT5zHwMaYykDI4PoJrBDw0pt7WPJglVpvyOjaECVQHIeRB/bw0luGmBmGnpdg4jQYeCb7R4imjbicfelXe6F3q1HtEbUe6NpjTA+JqRVGvCima3NErc9IelIIDM0EpN0JhZ4YM0gnIoLeGgDJVAHVAkZO38NUtUicBMS1kEKUkMQBSS2kr3+aQpiyb1835e4qZyzezfqtS6mNFxlcOs4rFu1h60Q/PcUKU7Ui23f109NbYWKsjCUBTIeoJtKuFGSEEwUsTwSm7IvNArCuBBUMKgHBZPa+KIVwRlQWJ9kXsKC0M3/PxmDkOzNUFkXE3dk/de+mGaaWlkgjGHx8L1NrB+h6aRIrBEyt6CbuErXugJ7tMcXRGkqMan9EeeskqsZYd5FgbDo7KcywPXvR4iGYmCRZPUI4NgNJCvtGSU9bRrBrFOvvwYoFVI2ZXtlH1wujJINdFHaMwdQ08elLKeydJO0poeka1hUxeXov3Vum0UxM2hUhM2ZGytlnUgoo7athEnFPSHFfjcpQxPjqEMXQsy1hZihkaimEM1CcgKBq7Hp9jeV3FJhaGjBxmhH3J3RtLpAWISkaSV8KsbKEO1gl3FImLRlpf5y93PyLO+yOsy/pVHT1z5CkAZW9ZRSl9C2aIgxToiBhsGuaOA14ae8gpSjmjas28OLUIjaPDzA1U6Svq8Kuvb2ktQCFRrGrRmWySBCmrFiyj+laxJ7dvSg0VozsY89EN1M7e/b/eCiMBaRRdg4k5ZRoLCSNDCUi6UqJxgKqixOCqhh+SAQJlPbE7LwkYtH3UqKJhH1nRAxsrBHOpMwMR/Q9N8G2K/oZWl8lGq0wtbKbnufHsSgkGK8QL+4Gibi7QGnHJKPnDlDeHVPaMUnaVUTVhPDFbdyx/dMvHO93zq49CfffuaqhbaPlzw4f7/Hmy4JPDs45d2IZiaXzHUTbeXJwzrkmGJBiR91uofPk4JxzTUrxkoNzzrk6hlHzaiXnnHP1DEi8Wsk559zBvM3BOefcAQxIToFLHXhycM65Jp38LQ6eHJxzrilmRtVLDs455+pl4xxOfp4cnHOuKSLhMPOMnUQ8OTjnXBOMbB7Gk11HJgdJzwPjQALEZnbp/EbknHMv85LD/HqTme2a7yCcc65eNgjOk4Nzzrk6BtTs5L9OWqe+QgP+VdJDkq6d72Ccc26WIRKChpaFrFNLDleY2RZJS4C7JD1lZvfOPpgnjGsBysWB+YrROXeKSu3kr1bqyNRmZlvyvzuALwGXHfT4TWZ2qZldGkU98xGic+4UNdvm0MiykHVccpDUI6lv9jbwVuC78xuVc87NEokFDS0LWSdGvxS4T9KjwAPAP5vZHfMck3POAXmDNGFDy9FIKkt6QNKjkp6Q9Hv5+iFJd0l6Jv+7qG6fGyRtkPS0pKva9To7rs3BzJ4DXjnfcTjn3FzM1MpSQQV4s5lNSIrIfhj/C/Ae4Gtm9oeSfgv4LeA3JZ0HXAOcD6wAvirpLDNLWhXQrE4sOTjnXEdLUUPL0VhmIr8b5YsBVwOfz9d/HnhXfvtq4GYzq5jZRmADB7XJtoonB+eca0LWIN1wV9ZhSQ/WLYd0zZcUSnoE2AHcZWb3A0vNbCtA/ndJvvlKYFPd7pvzdS3XcdVKzjnX2ZqqVtp1tOl/8iqhiyUNAl+SdMERDz7HUzQaTDM8OTjnXBOyKbtbX+liZvskfQN4G7Bd0nIz2yppOVmpArKSwuq63VYBW1oeDF6t5JxzTTFE1cKGlqORNJKXGJDUBbwFeAq4HfhgvtkHgX/Kb98OXCOpJGktsI6sV2fLecnBOeealLaut9Jy4POSQrIf67eY2ZclfRO4RdLPAy8C7wcwsyck3QI8CcTAde3oqQSeHJxzrimzDdIteS6zx4BL5li/G/iBw+xzI3BjSwI4Ak8OzjnXBEMkp8DcSp4cnHOuSe1okO40nhycc64JZiz4eZMa4cnBOeeaYIhaAz2RFjpPDs4516SFfiGfRnhycM65Jhg6JS7248nBOeea5CWHBSAtBoxeOERQNXqfHWf8+1bS9+Bm0sUDzCzvoWvzGBNnDoKgrxqTDHSRlEKqgxHbXyOC2jl0b51hcmWZqaUBk8sHiS4bpGd7yp6zCww/XmP8zB4KUymLnkqYWBXRtSsbcxL3QBrBttcPEVZBCcTdkEbG6JmiawcoFTOLoDJsFPeKyWVi/KIKwb6IyTWQdCcoBYVGZSjFSikXnvsiT2xeTkpEoSfmved+h0f3rWT7RB+vHNlCV1jl3zafwc+e9U12VPu5d9uZvG7Zc5zTtYU7d13AvmqZweIMM0mBXdM9DA5O0V2sMlicZu2S3cTDAWf07+alqQFSE6f17uUHFz3Jw0vXsGlqEXv6uzi9dy9fffw8opEK7zjjCe58/hziwayedcnAOJVagT1PDlN8xThXrN7I1546G/UmJAJVhZVS4koAkWGhEY4XUJy9P0ENdl5SZuI0o+95URwzdl/QRVqAaNKYPn2AoJIyfkYfU0sCBp6rEVagZ0uVuCuk1lPAItH9/BhTa/qJRmtYGFAIRbhjjHjFIsKuIhNr+ylML6K4Z4apNYNEEzU00gfA1MUr6No6xfSyLtKCSMoBk8sX07UnpWdsmsorFjM9EhHUuggrKWHFCKdjwqoxvrabuCR6tsWUtk0yvqpAZRH0bDEsiEgLkEYiqITsOSeka0d2niTlgMKMMb08+5wHH40YP00oTNl+mSiOQdKXoFjEXZB0pyAojUwR10JKpRrLB8bYUFlGUE4IZJS7q0yNlVm7aidvWfo0w4Vx/vTJN/OfL/wKL1QX83cbX8UZi3ZzRs9O9tR6+PdNa1nSM8FQaZpVPaOkiMFoitcvf4ovcDnVnpDXLX6WfymcR5IGXLF0I5WkwB3PngtAT1TltSMvcNu+V9LfP00gY2a6mHX+LyUwE5KsqGC1gCvPfYZ/W7+OWl8MBuWNJeLBlLASgMAEuy+CZLiG1QJK22DvWQG1voCkZJTGCswMib5NCRNregkr+Xs4GVLeVaUy0k3cHdK1LaAwVmHvhYPMDIlg7SC1HkiiAhMrBkAw9N0JNv/kOvjk8X/nGC0dBNexFnxycM65E8kbpJ1zzs1poV8fuhGeHJxzrglm8mol55xzh/JBcM455w6QXc/Bq5Wcc84doKkrwS1Ynhycc64JBt5byTnn3IF8hLRzzrk5+ZTdzjnnDpBN2X3ylxxO/vTnnHMtlpoaWo5G0mpJd0taL+kJSdfn618p6ZuSHpf0vyX11+1zg6QNkp6WdFW7XqMnB+eca0LW5hA0tDQgBj5sZucCrwWuk3Qe8Bngt8zsQuBLwEcA8seuAc4H3gZ8SlJbWsc9OTjnXBOy3kpBQ8tRn8tsq5k9nN8eB9YDK4GzgXvzze4C3pvfvhq42cwqZrYR2ABc1tpXmOnI5CAplPQdSV+e71icc+5ALS05vPys0hrgEuB+4LvAO/OH3g+szm+vBDbV7bY5X9dyHZkcgOvJMqhzznWcFDW0AMOSHqxbrp3r+ST1ArcCHzKzMeDnyKqYHgL6gOrspnPsbq1/hR3YW0nSKuAdwI3Ar89zOM45d4AmeyvtMrNLj7SBpIgsMXzRzG7LjmFPAW/NHz+L7DsRspLC6rrdVwFbGo++cZ1YcvhT4DeA9HAbSLp2NhPXKpMnLjLnnIOWVStJEvBZYL2ZfbJu/ZL8bwD8DvCX+UO3A9dIKklaC6wDHmjxywM6rOQg6YeBHWb2kKQ3Hm47M7sJuAmgd2h1W4pUzjk3F0PErZtb6QrgA8Djkh7J130UWCfpuvz+bcD/ADCzJyTdAjxJ1tPpOjNLWhVMvY5KDmRv1Dsl/RBQBvolfcHMfmqe43LOOWD2MqGtGQRnZvcxdzsCwJ8dZp8byard26qjqpXM7AYzW2Vma8j68n7dE4NzrtO0o7dSp+m0koNzznW2Bkc/L3QdmxzM7BvAN+Y5DOecO4Bf7Mc559ycvOTgnHPuAAbE6cJuT2iEJwfnnGuCX+zHOefcnLzNwTnn3IHM2xycc84dpJWD4DqZJwfnnGuSJwfnnHMHMETivZWcc84dzBuknXPOHcC8Qdo559xczJODc865A/kgOOeccwcx8AbphaDWAzteJZLhmML2Qbq2w46fXExcCRm8N2LTW4dIexKGHiqw5X29JFMFwu6Y4MUCaX+NLa8PSXsiep4NmDl/GgTp3iLBoipdj3Wx6QcLWMEIl1ZItncRjYs9FwUU90J6wQS1RExOFin2V6hORsT7ItLBmHQyZHx5TGFbiXhplQ9837f4503ns3trP5ee+SLFIKaaFjitew+VtEA1LbBxfIhimLCmZw+9ayvsmO5lbKbMWFxmrFJmed8YU3GRpaUxLlq6ha/tPIfvG9zEGYO7WBKNEWAsLk2wr1rm9J49rCzuZVetly2VAVaV97G90k9/sUJ3WKWvMMNrhvbykE4DIFLMjy26n9uDS4j6EpZGo0yeW+SS/k1c0LWJKy98mjv2XkSglMv6NvLk9Eqe6RvjtUPP8eT4CordNS5evoXYAr63a4Rl/WNs2rOInq4K41NlqlHK8Pl7GJsuM7qjl55nI0qnjzOxLEKbysT9CcFMQLR6gj2beknLondDwORpKWNnFmBkht5vd7Ho6RrTIwV2XwRcuYiky+h/tovSXmPnqwvQWyLaUiQ5Xaz5TMLWK0pMLw8pL51iZqxE1FOjtrtMOFhl8R29jJ4hel6C0mhK3B0QT4sX3j3M9OqYwsAU9mI3w4+FVAZE/wtidG2BfRfGDC4bY+fOPqj2EQ5OUSrVmHhoACXZL8rqINhFBWz5NKtX7GD7RB+7nlxEvLTK4pFxeopVNnctoq9/mmKY0LV8DzvHeukJjDBISZYHlIs1zhnawVA0RSUtsLZ7J/ftOpPVp+/ijP7dbJ4cYG3fHh7btYJqUuCpiWUMRgOcs2QH355Yy3QSsbJvlHN6t7GytJc39q9n50wvhSDl+hX/yn2TZzMadxEqJbWAC/q3MBZ3MRBO8ctr7uHhyTV8X8/zfG9mGe89+xHu33U6k7Uia0o7ecOZz5BaQBQkvGXp03zu26+jZ9E0l614gYlamUDGmxY9xeBF09zz0hn0lSucf942XpoaYNvqPl7RM85weZKJuMTu6W7OGdzOS1ODPL93iHVDu/nezhEKF0wxumEEC0IK05CUYOdFBSrn1UjHilBKWPll2PiuHuIlEYXuKVYsHmXTk8uIxgImLqyBQdeGItMjfVT7W/SlY1m7w8luwScH55w70by3knPOuQMYp0aD9Mlfceaccy2VNUg3shz1maTVku6WtF7SE5Kuz9dfLOlbkh6R9KCky+r2uUHSBklPS7qqXa/SSw7OOdekFrY5xMCHzexhSX3AQ5LuAv4Y+D0z+xdJP5Tff6Ok84BrgPOBFcBXJZ1lZknLIsp5cnDOuSaYQdqi3kpmthXYmt8el7QeWElWezXbhD4AbMlvXw3cbGYVYKOkDcBlwDdbElAdTw7OOdekJsY5DEt6sO7+TWZ201wbSloDXALcD3wIuFPSn5BV/39/vtlK4Ft1u23O17WcJwfnnGtSE9VKu8zs0qNtJKkXuBX4kJmNSfoD4NfM7FZJPwp8FngLzNlNqi0da71B2jnnmmSmhpZGSIrIEsMXzey2fPUHgdnbf09WdQRZSWF13e6reLnKqaU8OTjnXBOMxhJDI8lBkshKBevN7JN1D20B3pDffjPwTH77duAaSSVJa4F1wAMte3F1vFrJOeea0dpZWa8APgA8LumRfN1HgV8E/kxSAZgBrgUwsyck3QI8SdbT6bp29FQCTw7OOde8FtXym9l9zN2OAPCqw+xzI3BjayI4PE8OzjnXpFNhhLQnB+eca5JPvDcPJJWBe4ESWXz/YGYfm9+onHMu43MrtYCkHklBfvssSe/Mu20dSQV4s5m9ErgYeJuk17YzTueca5gBpsaWBazdXVnvBcqSVgJfA34W+Osj7WCZifxulC+nQCHOObdQWNrYspC1OznIzKaA9wB/bmbvBs476k5SmHfr2gHcZWb3H/T4tflMhQ+mk5NtCdw55+bWunEOnaztyUHS5cBPAv+crztqO4eZJWZ2Mdnov8skXXDQ4zeZ2aVmdmnQ09PyoJ1z7oiswWUBa3dyuB64AfhSPnjjFcDdje5sZvuAbwBva094zjnXJGvt9Bmdqq29lczsXrJ2h9n7zwG/eqR9JI0ANTPbJ6mLbLKpP2pnnM4515QFXipoRFuTg6SzgP8ErKk/lpm9+Qi7LQc+LykkK9ncYmZfbmeczjnXnIVdKmhEu8c5/D3wl8BngIbm/zCzx8jmNHfOuc60wHsiNaLdySE2s0+3+RjOOXfizI5zOMm1u0H6f0v6ZUnLJQ3NLm0+pnPOtZVZY8tC1u6Swwfzvx+pW2fAK9p8XOeca58F/sXfiHb3Vlrbzud3zrl5cQpUK7W7t1IE/BLw+nzVN4C/MrNaO4/rnHNtYyBvkD5unyabG+lT+f0P5Ot+oc3Hdc65Nln4k+o1ot3J4dX57Kqzvi7p0TYf0znn2usUaHNod2+lRNIZs3fy6TPacr1T55w7YVo0t5Kk1ZLulrRe0hOSrs/X/52kR/Ll+brrSyPpBkkbJD0t6aojPLckrT7Wl9juksNHgLslPUc2pPB0smm7nXNu4WpdySEGPmxmD0vqAx6SdJeZ/djsBpL+KzCa3z4PuAY4H1gBfFXSWWZ2yI9uMzNJ/8hhrkV9NO3urfQ1SeuAs8mSw1NmVmnnMZ1zrq1aOAjOzLYCW/Pb45LWAyuBJyH79Q/8KDA75dDVwM359+hGSRuAy4BvHuYQ35L0ajP7drOxtSU5SHqzmX1d0nsOeugMSZjZbe04rnPOnQjt6K0kaQ3Z1EH116+5EthuZs/k91cC36p7fHO+7nDeBPwHSS8Ak2Q/0s3MLjpaPO0qObwB+DrwI3M8ZoAnB+fcqWBY0oN1928ys5sO3khSL3Ar8CEzG6t76MeBv63fdI5jHKmS6+3NBFuvLcnBzD6W3/yEmW2sf0ySD4xzzi1oarzNYZeZXXrE58rGg90KfLG+VkVSgewqmvVtBpuB+kbmVcCWOZ6zP08y4w1HepB291a6dY51/9DKA4RVCKcFyop6aQSVvWVKT3UxvQTClVOoK2b3q2vYrhIKjWIpJqwCMwGFZdOoFjCzxEhmChSihGCwSlSKmTp/hqQ/Ju1OWLdsJ+e88kW6X7kHUlG+dA9rh3dz+sgeFCUsGRin3FulsHKKoeFxgsEqA0OTxMsq9C2aohzUuHB4K+VFM3SHVZ7dN8yLo4M8P7mYxdEkG8eHmKoVeXbnMGNxmWf3DZOauOGsf+Gtg9/lspEXKAYJF/a/RHdY5f6Na1jZPcrOah8Ay6O9vKf3BS7vf5Z1/TuZSiJe072B87tf4vSuPQwVJvn5kXtZ1bWX4dIEb+5/krWlnRSClJkk4qxoB5tqiwB4Xe/T7Ir7iNOQlyqDhKRsiwd5ct9SUgsYDCfpD6d5cusyyoqZiEtUxktsnhhgRXmUqJC1jaUmVvWNMtQ7RVBIefvyJzl78U7Crpips6qsWrQvu9buadOURqZ46+u+QxIHpENVlpy+h4l1MdYXky6qsXxklPEzUna8KmJ6WBSmRDQuCIyxdQk7vz8BE8XuKlo3QTJV4IV3FBl83XbCoQrVF3uxOGCwdworpiSVkIl3jTH0mu1MLYNtV8Doa2fY9e5pps+s0D0ySX/vDPFgwo5XGyPvfZEdPzPN6KUVeoYnWTO4FwKjb/k4xWLMuuFdpJeMU7h8L1NnVwnOmCCNjGS6wIWDWzl9YC/hGRP0DU7zmqUvMNI1SamrxujOPkpRTC0JKYQp541sp1IrEAYp5wztIMB4fO9yXpoaYEW0j96oyo7RPqbiIr+79stctehxzh3azoqe7MfmSHGcqTjitNIeRooTLO8eI5DxU33Psi/pIZDxrpGH6QuqLI1G2Rt3896Bh1hR2Esg4+zurTw2sZqRcIz+cJpvjp3JO/ofZV+tiwsGt/Gbr7iDclBjMJpmaWmMKwe+x1Bhgr7Fk3xw3f28cfBpimHM6d276QuneWpsCWZi51gv71r8EG8YfobxqTLnDmzn4W2rWL9jCdtG+6mkBZ7esYQwTHlm1zC95QrlQo2RNXsY+ZFNTLxlgulhqF04SVhIiYZmWL5iL9veV2Xgwl10D05TKsVMVEooFtUVNcBYtmwflWFj8rSEwnQLv3hMjS1HkbcpfBZYb2afPOjht5C1026uW3c7cI2kUv5Dex3wwBxP/Tf534eAB+uW2ftH1a42h3PIWtMHDmp36AfK7Timc86dEK29BOgVZIODH6/rrvpRM/sKWa+k+iol8itq3kLWYB0D1x2mp9IP53/X5pOdrqPJ7952tTmcDfwwMMiB7Q7jwC+26ZjOOXditCg5mNl9HObKQWb2M4dZfyNwYyPPL+kXyC7XvAp4BHgt8H+AHzjavu1qc/gn4J8kXW5mh+ti5ZxzC9ICmlvpeuDVwLfM7E15rc7vNbJjuwfBfUfSdWRVTPuLNGb2c20+rnPOtc/CmT5jxsxmJCGpZGZPSTq7kR3b3SD9v4BlwFXAPWRFm2NuPXfOufkma3zpAJslDQL/CNwl6Z+Yo3fTXNpdcjjTzN4v6Woz+7ykvwHubPMxnXOuvRbIrKxm9u785scl3Q0MAHc0sm+7k8PsdRv2SboA2AasafMxnXOuvTqjVNAUM7unme3bnRxukrQI+B2y/rm9wO+2+ZjOOddWC6hB+pi1e+K9z+Q378WvG+2cOxl0TntCW7W1QVrSf8kbQ2bvL5L0B+08pnPOtV2LrufQydrdW+ntZrZv9o6Z7QV+qM3HdM659joFkkO72xzCvG9tBUBSF1Bq8zGdc66tToVqpXYnhy8AX5P0P8jy6M8Bn2/zMZ1zzh2ndjdI/7Gkx8hmFwT4fTM74jiH/Jqn/5Ns8FxKNv/5n7UzTueca5h5b6VW+Q4QkZUcvtPA9oe7puqT7QzSOecadgpUK7W7t9KPks01/j6y66DeL+l9R9rHzLaa2cP57XFg9pqqzjnXGbxB+rj9NvBqM9sBIGkE+CoNXvDnMNdUdc65eSO8QboVgtnEkNtNg6WVI1xTFUnXAtcCRH2LWhSqc841yJPDcbtD0p28fDWjHwO+crSdDndN1Vn5BbpvAuheuvoU+Jiccx3jFBkh3e7eSh+R9F6yS+GJrOfRl460z1Guqeqcc/PPeysdPzO7lawU0KgjXVPVOefmnZccjpGkceaulRNgZtZ/uH2PdE1V55zrCC1KDkca1yXpPwK/Qta9/5/N7Dfy9TcAPw8kwK8ebezYsWrXNaT72vG8zjk371rbTXXOcV3AUuBq4CIzq0haAiDpPOAasksvrwC+KuksM0taFlGu3RPvOefcSadVlwk9wriuXwL+cHZeurpen1cDN5tZxcw2AhuAy1r/Cj05OOdc05Q2tgDDkh6sW6497HMeOK7rLOBKSfdLukfSq/PNVgKb6nbbTJsGCZ+I6TOcc+7k0ni10i4zu/RoGx08rktSAVgEvBZ4NXCLpFcwd3tsW5rHPTk451wzWjw1xmHGdW0GbjMzAx6QlALD+frVdbuvAra0LpqXebWSc841QU0sR32uw4/r+kfgzfk2ZwFFYBdwO3CNpJKktcA6svnrWs5LDs4516zWlRzmHNcFfA74nKTvAlXgg3kp4glJtwBPkvV0uq4dPZXAk4NzzjWtVYPgjjKu66cOs8+NwI2tieDwPDk451yzfPoM55xzB/CJ95xzzs3Jk4NzzrmDecnBOefcoU6B5KCsd9TCNXLeYvuJL76VyaTE3mo3qYk4DSiHMQPFaSbjIgBTcZFARjms7b9fCFLKYY2JWok4DSgEKamJ/uIMqYmCUvZVu/ZvF+Q/F3bN9NAfVfY/X5CPk2CjIpIAABUbSURBVA9lJCZmkohqWqAYxMRpSIpITZTDGqkFFIKEACOQkZqopgUGomkqaYGZJGIgmgZgMilm+5voLlSZSSIA+qIZKkmBnkIWQymISU2kFlCzgN5ClbFamUDp/ttdYZXUAhLEZFwiUEpXWKM3rFAKYqbTIosKk0wl+fsUZK+rrJgZK+z/W0sL9IUzzFiBibhMKYippAVqFlKzkOFogr1xDyXVSAiopAVCGQUlxBYyViszVJykkhaI0xCAUhhTSwMWR5OMJV3sq3UxXJzghakhlpTGqVn2HsQWMhkXWdk1yvaZPkphTIAxmRQpBjG9YTWPJSC1gK6wmr22pLh/XX9hhgQxnUSUghiA0VoX+6pdrO7et/+8mk4iCkFCatlQoP7CDNNpRDGIiZStn8g/n1IYMxkXqaYFFhcnSRGT+fmWmugrVAiUsrfaQzGISRE9eayzn0OI7X++nkKFKD+napa9h/2FmTyuIoFSYgupJAW6whopIjHt/yxCGbU0ZDCaomYh1bRAgJEiCnnsg9EUKQFdQZV9te7s/CCgkhTy1ztNlJ+nu2s9AHSFNcpBjVJQo5YWSBE7qn3Ze5NELI4mCZUSKKWSRnQHVfbEPXQHVSaSEt1hNXtNabj/HANI8tc4lRaJlBApoWbh/v+37iDbrxzU2FHrpyuoUg5qjMZd+8/drnybsbhMagGB0v2f/ez7DPBXl37hoUZGLB9J95LVds57f72hbb/zl79+3MebL15ycM65ZhjeW8k559yBhLc5OOecm4snB+eccwfTAm+rbYQnB+eca0aLZ2XtVJ4cnHOuSfIGaeeccwfzBmnnnHOH8uTgnHPuAD7xnnPOuTl5cnDOOVfPB8E555ybk9KTPzsE8x2Ac84tKNbEchSSVku6W9J6SU9Iuj5f/3FJL0l6JF9+qG6fGyRtkPS0pKta/fJmdVzJQdLngB8GdpjZBfMdj3POHayF4xxi4MNm9rCkPuAhSXflj/03M/uTA44rnQdcA5wPrAC+KuksM0taFlGuE0sOfw28bb6DcM65w2pRycHMtprZw/ntcWA9sPIIu1wN3GxmFTPbCGwALjvm13EEHZcczOxeYM98x+Gcc4cja2xp6jmlNcAlwP35ql+R9Jikz0lalK9bCWyq220zR04mx6zjkoNzznU0yxqkG1mAYUkP1i3XzvWUknqBW4EPmdkY8GngDOBiYCvwX2c3nTui1uu4NodG5G/wtQC9y3rmORrn3Cmn8a/jXUe7EpykiCwxfNHMbgMws+11j/934Mv53c3A6rrdVwFbGo6mCQuy5GBmN5nZpWZ2aXlRab7Dcc6dQmbHObSiWkmSgM8C683sk3Xrl9dt9m7gu/nt24FrJJUkrQXWAQ+06KUdYEGWHJxzbt6YZUtrXAF8AHhc0iP5uo8CPy7pYrIyyvPAf8gObU9IugV4kqyn03Xt6KkEHZgcJP0t8EayurrNwMfM7LPzG5Vzzr2sVSOkzew+5m5H+MoR9rkRuLE1ERxexyUHM/vx+Y7BOeeO6OQfIN15ycE55zqagZKTPzt4cnDOuWad/LnBk4NzzjXLZ2V1zjl3qNb1VupYnhycc65JXnJwzjl3oAYn1VvoPDk451wThPdWcs45Nwd5m4NzzrkDeLWSc865Q7V0bqWO5cnBOeea5L2VnHPOHcinz3DOOTcnr1bqfAWlrCztI0HQDRNxme6wSqCUShpRS0MCGeWgxq5aL71hhXJQYyaNqKQFBgrT1CxkNO5ioDDNVFKkFMRESqikBYZLRYajCWoWUktDoiBhTVdIQkBsIf3hNH3hTPa4hSQWkCKCvMVqIikRKaEUxJSDGgmirJhAKTULmUpKlIMa40mZvnAGgEgJM1agO6gykZSZSSNqFtIXzmT7pdnH1h1WqFm4//nKqjFjEakFLIlCBsIpEgJGoy5CjEApSwujbK0tojvI3ofEgv3H3BX3sby4jyAvM1fSiIFwigEgVMpMGkEINQvpDioMhNP7P4dKGlEKatQsZLgwTkJAzUJC0uz9V41IMTUrMJ6WiZQwlRb3xxWSUg5qDKUTJKWAnqDCUGGSUlBjKi1m2yclovyzWRyNk1rAQDjFeFomxOjNP4eptLj/PQlJmbEIgLJqjCbd++OMlOyPI1Kyf91o3A3Mvs4qAEOFCfbEvZSD2gHHCTG6gwoJwf73YCIpEyhlNO6mHNRYVJgktYCZrgJlxeyJe4iUTcEfBTHdQZXUAqbSIgCJBYRKs884qDJjhf3nSZCvB/a/d5U02r/d/udVwkSSvc/1+/QFM0ylJYYKE0ym2YWyVhX37D9egNGTv57N1SG6gwpLo9H9n2ekhJCUqJAQKWa4MJ6frxFD4QQVi/a/ryEpy6O9VCwiwAiVEpDuvz973ncHFdL8+WclFpAQUFRMSTXG0y7KqrE0GqVmIQHGosIkNQv3n6eREmrFMP9fLJAgQoxIMQnB/vemJU7+3LDwk4Nzzp1o3pXVOefcoTw5OOecO4AB6VG3WvA8OTjnXBOEofTkzw7BfAfgnHMLjlljy1FIWi3pbknrJT0h6fqDHv9PkkzScN26GyRtkPS0pKva8OoALzk451xzWlutFAMfNrOHJfUBD0m6y8yelLQa+EHgxdmNJZ0HXAOcD6wAvirpLDNrYVesjJccnHOuSTJraDkaM9tqZg/nt8eB9cDK/OH/BvwGB3acvRq42cwqZrYR2ABc1srXNsuTg3PONavxaqVhSQ/WLdce7iklrQEuAe6X9E7gJTN79KDNVgKb6u5v5uVk0lJereScc01pauK9XWZ26dE2ktQL3Ap8iKyq6beBt8616dwBtZ4nB+eca4YBLZxbSVJElhi+aGa3SboQWAs8KglgFfCwpMvISgqr63ZfBWxpWTB1vFrJOeea1Ko2B2Xf/p8F1pvZJwHM7HEzW2Jma8xsDVlC+D4z2wbcDlwjqSRpLbAOeKAdr9FLDs4516zWjZC+AvgA8LikR/J1HzWzr8x9WHtC0i3Ak2TVT9e1o6cSeHJwzrnmGJC2JjmY2X3M3Y5Qv82ag+7fCNzYkgCOwJODc8415dS4ElxHtjlIels++m+DpN+a73icc+4AadrYsoB1XHKQFAJ/AbwdOA/48XxUoHPOzb/ZaqVGlgWs45ID2Wi/DWb2nJlVgZvJRgU651wHMLC0sWUB68TkcNQRgJKunR1xOLW3ckKDc865Vk2818k6MTkcdQSgmd1kZpea2aXdi0onKCznnOOUqVbqxN5KJ2wEoHPOHZMFXipoRCcmh28D6/LRfy+RTU/7E/MbknPOzbIF3xOpER2XHMwslvQrwJ1ACHzOzJ6Y57Cccy5jeHKYL/nQ8TmHjzvn3LzzaiXnnHOH8OTgnHPuQAu/J1IjPDk451wzDGyBD3BrhCcH55xrVuLJwTnnXD3zrqzOOefm4g3SzjnnDmZecnDOOXeghT+pXiM6ceI955zrXAYkSWPLUUhaLeluSeslPSHp+nz970t6TNIjkv5V0oq6fW7IL4T2tKSr2vUyPTk451wTDLDUGloaEAMfNrNzgdcC1+UXN/v/zOwiM7sY+DLwuwD5Y9cA5wNvAz6VXyCt5Tw5OOdcM6x1F/sxs61m9nB+exxYD6w0s7G6zXp4+bIFVwM3m1nFzDYCG8gukNZy3ubgnHNNarBU0BRJa4BLgPvz+zcCPw2MAm/KN1sJfKtut0MuhtayeGyBN6xIGgeenucwhoFd8xwDeBwew9w8jpedbmYjx/MEku4gey2NKAMzdfdvMrOb5njOXuAe4EYzu+2gx24Aymb2MUl/AXzTzL6QP/ZZ4CtmdusxvJQjOhlKDk+b2aXzGYCkB+c7Bo/DY/A4Tgwze1srn09SBNwKfPHgxJD7G+CfgY9xAi+G5m0Ozjk3TyQJ+Cyw3sw+Wbd+Xd1m7wSeym/fDlwjqZRfEG0d8EA7YjsZSg7OObdQXQF8AHhc0iP5uo8CPy/pbCAFXgD+HwAze0LSLcCTZD2drjOzo/eZPQYnQ3I4pP5uHnRCDOBx1PMYXuZxdCgzuw/QHA8d9mJnZnYjcGPbgsot+AZp55xzredtDs455w7hycE559whPDk455w7xIJIDnl3r/mO4dwOiOHDkt6a356390TSQN3t+YzDzwv8vHDt0dHJQdLVkj4PvHKe4/hz4Cv58Pb5OP5bJd0J/CbZcHpsHnoSSHpz3t3u05I+Oo9x+HmBnxeuvTquK6skmZlJehPw+0ANuFzSC2a290TGULdqCNgLvEXS/zKzyomIAYjIZmN8A/D/AkXg1fmIyvhE/gPmw/s/SvaZPAB8XlK3mf3OCTq+nxf4eeFOnI4qORz0z7cRuAr4CPAa4KITHUPdVLjfAj4N/CTZiMQTEoOZVYF/MrMrzewrZF9E15hZ7QR/AQRAL7AJ+I6ZbQJ+AfgxSeecgOP7eYGfF+7E6pjkIOlXgNsk/ZqkZWb2fD6d7deB7cAbJLVl9sE5YviQpBVmlkgqks2b/iXgbrKh6++RdFyTdzUQw69JWm5m387XR2Z2D/CcpLe349gHxfHLkt4LYGYp2ZTBI2RfBpjZc2TvySfy7dtSx+znxSEx+HnhToiOSA6S3g18EPj/yX4J/o6ki+s2+SJwFtkvxfr9WnbiHRTDK4GPSnpV/ivtQTPbBTwD/CrZ6MSWn/RzvA+/LWm2Xj2WNEQ2lL4tw+XzGPok/SVZtcXnJRUAzGw72ZD9D9Vt/lvAaySd345frH5ezBnDKX9euBOjI5ID2T/3p83sbuDjZFUHvzr7oJk9BnwbuCBv/PrNfH0rT7y5Yvil/LF3SPo3soa/fySrThib60naEMP1kL1WM9sDdJHP7Z4X61sqv+DIPWa2jOwKVH9R9/AngIsl/ZCkUv7L8ctkdeDt4OfF4WM4lc8LdwKc0ORw8C+6uvvPAT8BYGYvkE1P2yPpnXWb/y1Zfebfkc+lfiy/EJuMYVDS5cCfAf/HzC42s58GlgHH3IXxON+HLwCXSSrn/4TH7Ahx3J7//RDw48pniDSzCeCPyS5T+FFJnwCuBLYeTxxHiOuEnRdNxtCW86LJGNp2Xhwhjnk9L9yJdaJLDgf8kqj7hfcPwJSkq/P7W4FvAOcp00v2j/g4cJGZfeSg/dsVw9eB15PNs/6bdbu928y+cwzHPpYYvkH+PuTruoCbaU0VwpxxmNmkpMDMtgGfAj5Tt83NwH8hqz4ZAd6eVy0cM0mzX+phfRycwPOiyRjacl4c6/uQr2vZeXG4OE70eeHmmZm1fQEuBf6e7B/5dUCYrw/yvwJ+FriDlycD/Ajw8fx2AVgyTzF8LL8dzm47XzHMxtHOz6MulqBu+xeBy8l+Gb9mNtbjjEFAN9kv//sOfuxEnBfHGUNLzotWxNCK8+JocZyo88KXzlnaWnLIf939IfCXZHWQ24FfAU6D/b0dIPvVcyfZL6KbJK0gu5ZqLd8uNrMd8xRDnG+X2DEW11sVw2wcxxJDo3GYWZr/Ih+o2/WPgH8H7iW77CGWfxMcK8tM5XdHJP1SHmNY99xtOy9aEMNxnxetimE2jmONoZE4TtR54TpIu7MP8HZgUX57Odkvk966xz9BduJfQjao6A/IisyfogW/kj2GY4rjDuDKuu2fAv4EiFoYh/Lj/ylZ6eUxYPAEfyYeQ+Nx/N6JOC986Zyl9U+Yjdp8zRzrryTrbvfN/AR8E1nf6L8Bzjxo226P4fhjaEUcwHnA6lbGwYFVE/9Idh3cPwf+EDgd6MnjOKNdn8mpHEMr4mjVeeFL5y6teyLoA24D9gCf4+Vfp7N1lecDb8pv/yzwP4G1dfsfV32+x9DyOFr1y3jOOPLHzgI+md/+EbJuoI8etH/bPpNTLYYWxdGy0oovnb20ss2hStaL46eALcD74eX6dDN7wrJ+2gD35CdpDbJ+2daa7nceQ+viaNWAqjnjyG0BzpJ0O1n1xD1kffipi6Ntn8kpGEMr4mjbQDvXWY4rOUj6aUlvkDRo2aRjnwG+CnwPuFTSWfl2B/c7f2t+7HE4oEHWYzgOCy0OsoS0hawf/6vM7EeAVZJedbxxeAydF4dbWJq+hnT+xbKMrA4yBZ4lq5O83rKpBMgHx3wQmDGzP8jXlcjquf8IeAn4DTN76piC9hgWehwVM/v9fN2AmY3WPc8B9z2GY9MpcbiFq6mSQ133uj7gJTP7AeCXyeov/2p2OzN7BngIWCHpzPyLKCXrOvkxM3vncXwpewwLP47leRxdwEz+HEG+zbF+KXsMHRaHW9gaup6Dskm2PgGEkr4C9JOPxDSzWNKvAlskvcGyGSIxsy8pu0rWHWS9YN5kZo+TjWZtmsdw8sYBrD/WKguPofPicCcJO0qLNVmXt0fJ5q3/RbIBL28jGx15Wd12vwTcXXf//cAk8N85/tHNHoPH4TEsgDh8OXmWo2+Q1Ut/oO7+p/IT7GeAh/J1AVn95i3k3SHz/a5sSZAeg8fhMSyIOHw5eZZG2hweAm7Ry1e/+nfgNDP7a7Li63+0rAi6CkjMbCOAmf2bmf1bA8/fCI/B4/AYFkYc7iRx1ORgZlNmVrGX+zf/ILAzv/2zwLmSvkw2DcPD7QjSY/A4PIaFEYc7eTTUIA37p+81YCkvz+s+TnZx8QuAjWb2Ussj9Bg8Do9hwcXhFr5murKmZPP/7wIuyn+F/GcgNbP7TtAJ5zF4HB7DwojDLXTNNFAAryU7+e4Dfr4djSAeg8fhMZwccfiysJemRkhLWgV8gGxyrkrTmagFPAaPw2NYGHG4ha3p6TOcc86d/E70NaSdc84tAJ4cnHPOHcKTg3POuUN4cnDOOXcITw5uQZC0WNIj+bJN0kv57QlJn5rv+Jw72XhvJbfgSPo4MGFmfzLfsTh3svKSg1vQJL0xHwWMpI9L+rykf5X0vKT3SPpjSY9LukNSlG/3Kkn3SHpI0p2Sls/vq3Cu83hycCebM4B3AFcDXyC7dsGFwDTwjjxB/DnwPjN7FfA54Mb5Cta5TtXwxHvOLRD/YmY1SY8DIdkVziC74t0a4GyyCejukkS+zdZ5iNO5jubJwZ1sKgBmlkqq2cuNainZ+S7gCTO7fL4CdG4h8Gold6p5GhiRdDmApEjS+fMck3Mdx5ODO6WYWRV4H/BHkh4FHgG+f36jcq7zeFdW55xzh/CSg3POuUN4cnDOOXcITw7OOecO4cnBOefcITw5OOecO4QnB+ecc4fw5OCcc+4Qnhycc84d4v8CVEo7oSwBX6sAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "airtemps_locs2[\"air\"].plot(x=\"time\")" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.8.2" } }, "nbformat": 4, "nbformat_minor": 4 }