{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Part 1: Deriving Derivatives on Triangular Grid" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "_To run this script you need output from [Selecting and Reindexing of Area of Interest](../cutting_grid_window.ipynb)._" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Theoretical Introduction" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Since we are working on a grid whitout any right angles, we have to come up with something new to calculate gradients or derivatives.
\n", "Basically, the idea is this: We do a local two-dimensional Taylor evolution for a cell $i$, giving us a plane equation containing 3 unknowns. If we apply this plane equation to three points (here the three neighbors) in the neighborhood of the cell $i$, the equation can be solved. This procedure can be applied in matrix form to all cells simultaneously and thus calculate the derivative for a certain area in one go.\n", "\n", "To look at this from a mathematical point of view, we make use of linear algebra: if you have the coordinates of three points, you can use them to create a plane and thus a linear system of equations.
\n", "This has the form:\n", "\n", "$$\\underline{\\underline{A}}~ \\underline{\\phi} = \\underline{p}.$$\n", "\n", "If the matrix $\\underline{\\underline{A}}$ is square and has full rank, then the system has a unique solution given by:\n", "\n", "$$\\underline{\\phi} = \\underline{\\underline{A}}^{-1}~\\underline{p},$$\n", "where $\\underline{\\underline{A}}^{-1}$ is the inverse of $\\underline{\\underline{A}}$. (For matrices which are not square or of full rank the Moore-Penrose pseudoinverse can help here, and possibly be used to generalize this code.)\n", "\n", "We reach the respective centers of the neighboring cells via their coordinates and write down the equations in parametric form of a plane:\n", "\n", "$$\n", "\\begin{matrix}\n", "\\alpha(x_0, y_0) + \\beta (x_1-x_0) + \\gamma (y_1-y_0) = p_1(x_1, y_1)\\\\\n", "\\alpha(x_0, y_0) + \\beta (x_2-x_0) + \\gamma (y_2-y_0) = p_2(x_2, y_2)\\\\\n", "\\alpha(x_0, y_0) + \\beta (x_3-x_0) + \\gamma (y_3-y_0) = p_3(x_3, y_3)\n", "\\end{matrix}\n", "$$\n", "\n", "Perhaps you can already see the practical use of this approach; the derivative with respect to $x_i$ or $y_i$, with $i \\in \\{1,2,3\\}$ results in the coefficients $\\beta$ or $\\gamma$:\n", "\n", "$$\\frac{\\partial p_i}{\\partial x_i} = \\beta ~~\\text{and}~~ \\frac{\\partial p_j}{\\partial y_j} = \\gamma$$\n", "This means that we have to calculate these coefficients to get the derivatives of the corresponding variable.\n", "\n", "We write down our equations in matrix notation:\n", "\n", "$$\n", "\\underbrace{\n", "\\begin{bmatrix}\n", "1 & (x_1-x_0) & (y_1-y_0)\\\\\n", "1 & (x_2-x_0) & (y_2-y_0)\\\\\n", "1 & (x_3-x_0) & (y_3-y_0)\n", "\\end{bmatrix}}_{\\underline{\\underline{A}}}\n", "\\underbrace{\n", "\\begin{bmatrix}\n", "\\alpha\\\\\n", "\\beta\\\\\n", "\\gamma\n", "\\end{bmatrix}}_{\\underline{\\phi}}\n", "=\n", "\\underbrace{\n", "\\begin{bmatrix}\n", "p_1(x_1, y_1)\\\\\n", "p_2(x_2, y_2)\\\\\n", "p_3(x_3, y_3)\n", "\\end{bmatrix}}_{\\underline{p}}\n", "$$\n", "\n", "As a final step, we calculate the inverse of $\\underline{\\underline{A}}$ and automatically obtain the coefficients $\\alpha, \\beta, \\gamma$ by calculating the matrix product $$\\underline{\\phi} = \\underline{\\underline{A}}^{-1}~\\underline{p}.$$\n", "\n", "Let's get our hands dirty now!" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import xarray as xr\n", "import numpy as np" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Deriving Derivatives" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The individual output variables of the ICON simulations do not contain any coordinates apart from the height (only in 3D output) and the time. Therefore it is necessary to get the coordinates from the grid-file.
\n", "We have created a `new_grid` via the [Selecting and Reindexing of Area of Interest](../cutting_grid_window.ipynb) script, which contains the same information as the global grid-file focused on our area of interest with the advantage of being smaller and easier to handle." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Range of area of interest:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "# Max Plancks birthplace, Kiel, Schleswig-Holstein, Germany\n", "left_bound = 9.88\n", "right_bound = 10.38\n", "top_bound = 54.57\n", "bottom_bound = 54.07" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We import the `selected_indices`, hence the indices for `cells`, `vertices` and `edges`, just like the `new_grid` which contains the grid information of the area of interest." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.Dataset>\n",
       "Dimensions:                         (cell: 70, nv: 3, vertex: 50, ne: 6,\n",
       "                                     edge: 119, no: 4, nc: 2,\n",
       "                                     max_stored_decompositions: 4, two_grf: 2,\n",
       "                                     cell_grf: 14, max_chdom: 1, edge_grf: 24,\n",
       "                                     vert_grf: 13)\n",
       "Coordinates:\n",
       "    clon                            (cell) float64 0.1804 0.1805 ... 0.174\n",
       "    clat                            (cell) float64 0.9453 0.946 ... 0.9488\n",
       "    vlon                            (vertex) float64 0.1815 0.1807 ... 0.1717\n",
       "    vlat                            (vertex) float64 0.9456 0.9466 ... 0.9482\n",
       "    elon                            (edge) float64 0.1811 0.1814 ... 0.1724\n",
       "    elat                            (edge) float64 0.9461 0.9471 ... 0.9487\n",
       "  * cell                            (cell) int64 4282376 4282377 ... 4283130\n",
       "  * vertex                          (vertex) int32 2144929 2144932 ... 2145286\n",
       "  * edge                            (edge) int32 6427302 6427311 ... 6428420\n",
       "Dimensions without coordinates: nv, ne, no, nc, max_stored_decompositions,\n",
       "                                two_grf, cell_grf, max_chdom, edge_grf, vert_grf\n",
       "Data variables: (12/91)\n",
       "    clon_vertices                   (cell, nv) float64 0.1794 0.1802 ... 0.173\n",
       "    clat_vertices                   (cell, nv) float64 0.9457 0.9446 ... 0.9492\n",
       "    vlon_vertices                   (vertex, ne) float64 9.969e+36 ... 9.969e+36\n",
       "    vlat_vertices                   (vertex, ne) float64 9.969e+36 ... 9.969e+36\n",
       "    elon_vertices                   (edge, no) float64 0.1807 0.1805 ... 0.1728\n",
       "    elat_vertices                   (edge, no) float64 0.9466 0.946 ... 0.9485\n",
       "    ...                              ...\n",
       "    edge_dual_normal_cartesian_x    (edge) float64 -0.6706 -0.7373 ... -0.7362\n",
       "    edge_dual_normal_cartesian_y    (edge) float64 -0.5071 0.4974 ... 0.4973\n",
       "    edge_dual_normal_cartesian_z    (edge) float64 0.5414 0.4572 ... 0.4589\n",
       "    cell_circumcenter_cartesian_x   (cell) float64 0.576 0.5755 ... 0.5739\n",
       "    cell_circumcenter_cartesian_y   (cell) float64 0.105 0.105 ... 0.1003 0.1009\n",
       "    cell_circumcenter_cartesian_z   (cell) float64 0.8107 0.8111 ... 0.8127\n",
       "Attributes: (12/43)\n",
       "    title:                    ICON grid description\n",
       "    institution:              Max Planck Institute for Meteorology/Deutscher ...\n",
       "    source:                   git@git.mpimet.mpg.de:GridGenerator.git\n",
       "    revision:                 d00fcac1f61fa16c686bfe51d1d8eddd09296cb5\n",
       "    date:                     20180529 at 222250\n",
       "    user_name:                Rene Redler (m300083)\n",
       "    ...                       ...\n",
       "    topography:               modified SRTM30\n",
       "    subcentre:                1\n",
       "    number_of_grid_used:      15\n",
       "    history:                  Thu Aug 16 11:05:44 2018: ncatted -O -a ICON_gr...\n",
       "    ICON_grid_file_uri:       http://icon-downloads.mpimet.mpg.de/grids/publi...\n",
       "    NCO:                      netCDF Operators version 4.7.5 (Homepage = http...
" ], "text/plain": [ "\n", "Dimensions: (cell: 70, nv: 3, vertex: 50, ne: 6,\n", " edge: 119, no: 4, nc: 2,\n", " max_stored_decompositions: 4, two_grf: 2,\n", " cell_grf: 14, max_chdom: 1, edge_grf: 24,\n", " vert_grf: 13)\n", "Coordinates:\n", " clon (cell) float64 ...\n", " clat (cell) float64 ...\n", " vlon (vertex) float64 ...\n", " vlat (vertex) float64 ...\n", " elon (edge) float64 ...\n", " elat (edge) float64 ...\n", " * cell (cell) int64 4282376 4282377 ... 4283130\n", " * vertex (vertex) int32 2144929 2144932 ... 2145286\n", " * edge (edge) int32 6427302 6427311 ... 6428420\n", "Dimensions without coordinates: nv, ne, no, nc, max_stored_decompositions,\n", " two_grf, cell_grf, max_chdom, edge_grf, vert_grf\n", "Data variables: (12/91)\n", " clon_vertices (cell, nv) float64 ...\n", " clat_vertices (cell, nv) float64 ...\n", " vlon_vertices (vertex, ne) float64 ...\n", " vlat_vertices (vertex, ne) float64 ...\n", " elon_vertices (edge, no) float64 ...\n", " elat_vertices (edge, no) float64 ...\n", " ... ...\n", " edge_dual_normal_cartesian_x (edge) float64 ...\n", " edge_dual_normal_cartesian_y (edge) float64 ...\n", " edge_dual_normal_cartesian_z (edge) float64 ...\n", " cell_circumcenter_cartesian_x (cell) float64 ...\n", " cell_circumcenter_cartesian_y (cell) float64 ...\n", " cell_circumcenter_cartesian_z (cell) float64 ...\n", "Attributes: (12/43)\n", " title: ICON grid description\n", " institution: Max Planck Institute for Meteorology/Deutscher ...\n", " source: git@git.mpimet.mpg.de:GridGenerator.git\n", " revision: d00fcac1f61fa16c686bfe51d1d8eddd09296cb5\n", " date: 20180529 at 222250\n", " user_name: Rene Redler (m300083)\n", " ... ...\n", " topography: modified SRTM30\n", " subcentre: 1\n", " number_of_grid_used: 15\n", " history: Thu Aug 16 11:05:44 2018: ncatted -O -a ICON_gr...\n", " ICON_grid_file_uri: http://icon-downloads.mpimet.mpg.de/grids/publi...\n", " NCO: netCDF Operators version 4.7.5 (Homepage = http..." ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "selected_indices = xr.open_dataset(\n", " f\"../selected_indices_region_{bottom_bound}-{top_bound}_{left_bound}-{right_bound}.nc\"\n", ")\n", "new_grid = xr.open_dataset(\n", " f\"../new_grid_region_{bottom_bound}-{top_bound}_{left_bound}-{right_bound}.nc\"\n", ")\n", "\n", "new_grid" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Since this is an example of Max Planck's birthplace, let's take a look at how the pressure on his birthday in 2020 behaves within the region where he spent his first hours of life, so the dark green area from the script [Selecting and Reindexing of Area of Interest](../cutting_grid_window.ipynb). For this purpose we access the pressure `pfull` of the Dyamond dpp0029 simulation. The output will be the whole globe at this point." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'pfull' (time: 1, height: 90, ncells: 20971520)>\n",
       "[1887436800 values with dtype=float32]\n",
       "Coordinates:\n",
       "  * height   (height) float64 1.0 2.0 3.0 4.0 5.0 ... 86.0 87.0 88.0 89.0 90.0\n",
       "  * time     (time) float64 2.02e+07\n",
       "Dimensions without coordinates: ncells\n",
       "Attributes:\n",
       "    standard_name:                air_pressure\n",
       "    long_name:                    Pressure\n",
       "    units:                        Pa\n",
       "    param:                        0.3.0\n",
       "    CDI_grid_type:                unstructured\n",
       "    number_of_grid_in_reference:  1
" ], "text/plain": [ "\n", "[1887436800 values with dtype=float32]\n", "Coordinates:\n", " * height (height) float64 1.0 2.0 3.0 4.0 5.0 ... 86.0 87.0 88.0 89.0 90.0\n", " * time (time) float64 2.02e+07\n", "Dimensions without coordinates: ncells\n", "Attributes:\n", " standard_name: air_pressure\n", " long_name: Pressure\n", " units: Pa\n", " param: 0.3.0\n", " CDI_grid_type: unstructured\n", " number_of_grid_in_reference: 1" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "max_birthday_data = xr.open_dataset(\n", " \"/work/mh0287/k203123/Dyamond++/icon-aes-dyw2/experiments/dpp0029/dpp0029_atm_3d_1_ml_20200423T000000Z.nc\"\n", ")\n", "pfull = max_birthday_data.pfull\n", "pfull" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "But as we only want the area around his birthplace in Kiel, we select via `.isel(ncells = selected_indices.cell)` only the cells in the area of interest. Furthermore we average in time and choose the first 10 heightlevels from the atmosphere - land/ocean surface upwards (the z-vector in the ICON simulations points to the interior of the earth, i.e. to the surface of the earth, so that the level closest to the earth has the index `90` and we thus run from `81-90`).\n", "
\n", "\n", "The next step requires a relatively large amount of memory for various reasons. It is therefore advisable to use about 32GB at this point and save the result to use in later calculations." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'pfull' (height: 10, cell: 70)>\n",
       "array([[ 89579.93 ,  89524.6  ,  89488.8  ,  89601.09 ,  89637.8  ,\n",
       "         89505.664,  89588.016,  89515.9  ,  89455.82 ,  89628.78 ,\n",
       "         89769.734,  89697.72 ,  89747.2  ,  89601.88 ,  89620.94 ,\n",
       "         89537.88 ,  89568.84 ,  89619.6  ,  89473.53 ,  89578.05 ,\n",
       "         89530.805,  89863.78 ,  89874.59 ,  89801.36 ,  89865.234,\n",
       "         89873.83 ,  89874.29 ,  89878.98 ,  89876.27 ,  89785.62 ,\n",
       "         89815.086,  89723.125,  89753.766,  89685.4  ,  89664.7  ,\n",
       "         89672.19 ,  89590.06 ,  89466.48 ,  89633.836,  89566.055,\n",
       "         89569.05 ,  89584.96 ,  89607.36 ,  89586.35 ,  89625.45 ,\n",
       "         89485.46 ,  89533.4  ,  89723.61 ,  89655.95 ,  89720.44 ,\n",
       "         89754.84 ,  89648.88 ,  89516.305,  89732.47 ,  89718.28 ,\n",
       "         89825.27 ,  89695.81 ,  89882.02 ,  89862.805,  89879.836,\n",
       "         89692.67 ,  89654.26 ,  89836.68 ,  89712.78 ,  89724.66 ,\n",
       "         89881.46 ,  89886.16 ,  89770.2  ,  89740.29 ,  89750.305],\n",
       "       [ 91697.42 ,  91636.45 ,  91596.43 ,  91717.51 ,  91757.08 ,\n",
       "         91612.414,  91704.62 ,  91624.65 ,  91559.664,  91747.234,\n",
       "         91900.195,  91821.46 ,  91874.39 ,  91716.66 ,  91740.4  ,\n",
       "         91648.15 ,  91683.46 ,  91739.58 ,  91580.266,  91695.84 ,\n",
       "         91642.55 ,  92001.88 ,  92012.78 ,  91934.52 ,  92003.15 ,\n",
       "         92011.06 ,  92011.81 ,  92015.88 ,  92013.9  ,  91915.88 ,\n",
       "...\n",
       "        101646.22 , 101715.98 , 102000.59 , 101901.94 , 101991.586,\n",
       "        102043.75 , 101875.74 , 101698.97 , 101997.73 , 101980.17 ,\n",
       "        102144.83 , 101936.79 , 102235.68 , 102205.15 , 102234.97 ,\n",
       "        101932.21 , 101877.91 , 102163.36 , 101973.68 , 101991.84 ,\n",
       "        102228.2  , 102237.72 , 102058.66 , 102013.766, 102033.27 ],\n",
       "       [102309.24 , 102219.92 , 102155.516, 102326.03 , 102382.24 ,\n",
       "        102168.05 , 102313.945, 102194.7  , 102103.3  , 102368.69 ,\n",
       "        102579.664, 102468.74 , 102534.625, 102313.586, 102361.57 ,\n",
       "        102221.02 , 102278.79 , 102365.4  , 102133.664, 102308.28 ,\n",
       "        102222.21 , 102722.5  , 102731.53 , 102631.77 , 102719.91 ,\n",
       "        102719.28 , 102722.78 , 102720.305, 102726.414, 102594.2  ,\n",
       "        102638.445, 102489.87 , 102553.766, 102450.336, 102398.12 ,\n",
       "        102403.766, 102294.336, 102106.266, 102357.83 , 102246.2  ,\n",
       "        102257.36 , 102266.836, 102310.47 , 102292.81 , 102346.68 ,\n",
       "        102137.52 , 102208.1  , 102495.82 , 102396.266, 102486.766,\n",
       "        102539.   , 102368.85 , 102190.805, 102492.61 , 102475.08 ,\n",
       "        102641.555, 102430.74 , 102734.87 , 102702.695, 102734.59 ,\n",
       "        102426.09 , 102371.79 , 102660.34 , 102468.66 , 102487.75 ,\n",
       "        102726.49 , 102736.54 , 102553.94 , 102508.5  , 102528.7  ]],\n",
       "      dtype=float32)\n",
       "Coordinates:\n",
       "  * height   (height) float64 81.0 82.0 83.0 84.0 85.0 86.0 87.0 88.0 89.0 90.0\n",
       "  * cell     (cell) int64 4282376 4282377 4282378 ... 4283128 4283129 4283130
" ], "text/plain": [ "\n", "array([[ 89579.93 , 89524.6 , 89488.8 , 89601.09 , 89637.8 ,\n", " 89505.664, 89588.016, 89515.9 , 89455.82 , 89628.78 ,\n", " 89769.734, 89697.72 , 89747.2 , 89601.88 , 89620.94 ,\n", " 89537.88 , 89568.84 , 89619.6 , 89473.53 , 89578.05 ,\n", " 89530.805, 89863.78 , 89874.59 , 89801.36 , 89865.234,\n", " 89873.83 , 89874.29 , 89878.98 , 89876.27 , 89785.62 ,\n", " 89815.086, 89723.125, 89753.766, 89685.4 , 89664.7 ,\n", " 89672.19 , 89590.06 , 89466.48 , 89633.836, 89566.055,\n", " 89569.05 , 89584.96 , 89607.36 , 89586.35 , 89625.45 ,\n", " 89485.46 , 89533.4 , 89723.61 , 89655.95 , 89720.44 ,\n", " 89754.84 , 89648.88 , 89516.305, 89732.47 , 89718.28 ,\n", " 89825.27 , 89695.81 , 89882.02 , 89862.805, 89879.836,\n", " 89692.67 , 89654.26 , 89836.68 , 89712.78 , 89724.66 ,\n", " 89881.46 , 89886.16 , 89770.2 , 89740.29 , 89750.305],\n", " [ 91697.42 , 91636.45 , 91596.43 , 91717.51 , 91757.08 ,\n", " 91612.414, 91704.62 , 91624.65 , 91559.664, 91747.234,\n", " 91900.195, 91821.46 , 91874.39 , 91716.66 , 91740.4 ,\n", " 91648.15 , 91683.46 , 91739.58 , 91580.266, 91695.84 ,\n", " 91642.55 , 92001.88 , 92012.78 , 91934.52 , 92003.15 ,\n", " 92011.06 , 92011.81 , 92015.88 , 92013.9 , 91915.88 ,\n", "...\n", " 101646.22 , 101715.98 , 102000.59 , 101901.94 , 101991.586,\n", " 102043.75 , 101875.74 , 101698.97 , 101997.73 , 101980.17 ,\n", " 102144.83 , 101936.79 , 102235.68 , 102205.15 , 102234.97 ,\n", " 101932.21 , 101877.91 , 102163.36 , 101973.68 , 101991.84 ,\n", " 102228.2 , 102237.72 , 102058.66 , 102013.766, 102033.27 ],\n", " [102309.24 , 102219.92 , 102155.516, 102326.03 , 102382.24 ,\n", " 102168.05 , 102313.945, 102194.7 , 102103.3 , 102368.69 ,\n", " 102579.664, 102468.74 , 102534.625, 102313.586, 102361.57 ,\n", " 102221.02 , 102278.79 , 102365.4 , 102133.664, 102308.28 ,\n", " 102222.21 , 102722.5 , 102731.53 , 102631.77 , 102719.91 ,\n", " 102719.28 , 102722.78 , 102720.305, 102726.414, 102594.2 ,\n", " 102638.445, 102489.87 , 102553.766, 102450.336, 102398.12 ,\n", " 102403.766, 102294.336, 102106.266, 102357.83 , 102246.2 ,\n", " 102257.36 , 102266.836, 102310.47 , 102292.81 , 102346.68 ,\n", " 102137.52 , 102208.1 , 102495.82 , 102396.266, 102486.766,\n", " 102539. , 102368.85 , 102190.805, 102492.61 , 102475.08 ,\n", " 102641.555, 102430.74 , 102734.87 , 102702.695, 102734.59 ,\n", " 102426.09 , 102371.79 , 102660.34 , 102468.66 , 102487.75 ,\n", " 102726.49 , 102736.54 , 102553.94 , 102508.5 , 102528.7 ]],\n", " dtype=float32)\n", "Coordinates:\n", " * height (height) float64 81.0 82.0 83.0 84.0 85.0 86.0 87.0 88.0 89.0 90.0\n", " * cell (cell) int64 4282376 4282377 4282378 ... 4283128 4283129 4283130" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pfull = (\n", " pfull.mean(dim=\"time\")\n", " .isel(ncells=selected_indices.cell)\n", " .sel({\"height\": slice(81, 90)})\n", ")\n", "pfull" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Before we start with our calculations, let's first look at the surface field of the pressure. For this we use [matplotlib.pyplot.tripcolor()](https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.tripcolor.html), which we have used [here](../tripcolor.ipynb) before, because it can be used to represent triangular grids very nicely." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib.pylab as plt" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To make this plot we need information from the `new_grid` file, namely the vertices of each cell `.vertex_of_cell` which again lives in the 1-based Fortran world, so we compensate the index offset by subtracting `1` in `voc`." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "heightlevel = 90\n", "\n", "vlon = np.rad2deg(new_grid.vlon)\n", "vlat = np.rad2deg(new_grid.vlat)\n", "voc = new_grid.vertex_of_cell.T.values - 1\n", "p_data = pfull.sel(height=heightlevel).values / 100 ### in [hPa]\n", "\n", "fig, ax = plt.subplots(figsize=(10, 6))\n", "im = ax.tripcolor(\n", " vlon, vlat, voc, p_data, cmap=plt.cm.get_cmap(\"turbo\"), vmin=1022, vmax=1028\n", ")\n", "cbar = fig.colorbar(im)\n", "\n", "cbar.set_label(\"$P\\mathrm{sfc}$ / hPa\")\n", "ax.set_title(r\"Surface Pressure $p$\")\n", "ax.set_xlabel(\"Longitude / deg\")\n", "ax.set_ylabel(\"Latitude / deg\")\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Derivatives" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now to the core of this script and to the interpretation of what we described in the [Theoretical Introduction](#Theoretical-Introduction) into code. Since we are interested in derivatives on the triangular grid, we want to calculate the pressure gradient along both the x and y directions as an example at this point.\n", "
\n", "\n", "Within the function `derivative()` we find 5 paragraphs:\n", "\n", "In the **first paragraph**, we consider the neighbors of each cell, because the idea is to span a plane over the central initial cell with their help and to determine the derivative for the central cell in x- and y-direction by means of the slope of this plane.
\n", "However, this reduces the initial set of cells to those that have 3 neighbors. The cells that are at the edge of our cut out area do not necessarily have 3 neighbors and are neglected here; the area shrinks a little. Only ```valid```cells within 3 neighbors are choosen.\n", "\n", "The **second paragraph**, is used to identify the respective coordinates.\n", "\n", "The **third paragraph**, outputs the pressure values for the valid cells.\n", "\n", "In the **fourth** and **fifth paragraphs** happens what we described mathematically at the [beginning](#Theoretical-Introduction).
\n", "We set up a system of equations in matrix form and solve it via matrix inversion. Finally, we output the coefficients and a boolean array of the valid cells and we are done!" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "def derivative(grid, data):\n", " neighbors = (grid.neighbor_cell_index.values - 1).T\n", " valid = np.all(neighbors >= 0, axis=-1)\n", "\n", " cell_lon = np.rad2deg(new_grid.clon.values[valid])\n", " cell_lat = np.rad2deg(new_grid.clat.values[valid])\n", " neighbors_lon = np.rad2deg(new_grid.clon.values[neighbors[valid]])\n", " neighbors_lat = np.rad2deg(new_grid.clat.values[neighbors[valid]])\n", "\n", " p = data.values[..., neighbors[valid]]\n", " ones = np.ones_like(neighbors_lon)\n", " A = np.stack(\n", " (\n", " ones,\n", " neighbors_lon - cell_lon[:, np.newaxis],\n", " neighbors_lat - cell_lat[:, np.newaxis],\n", " ),\n", " axis=2,\n", " )\n", " A_inv = np.linalg.inv(A)\n", "\n", " alpha, beta, gamma = np.einsum(\"...ij,...j->i...\", A_inv, p)\n", "\n", " return alpha, beta, gamma, valid" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We apply our defined function `derivative()` to our `new_grid` and the pressure `pfull` and we get $\\alpha, \\beta, \\gamma$ which we identified as $p_0, \\frac{\\partial p}{\\partial lon}, \\frac{\\partial p}{\\partial lat}$. These are defined at the centroid of the points $p_1, p_2, p_3$, which we used to construct the linear equation system. The centroid of the triangle spanned by the centers of the neighboring cells lies approximately (but to a good approximation) on the center of the cell for which we wanted to calculate the derivative.
\n", "\n", "By substracting the coordinates of each center cell from the coordinates of the corresponding neighbor cells within our matrix $A$, we obtain the relative difference in lat/lon direction of the central cell to its neighbors. By doing this $p_0$ corresponds to the averaged pressure value based on the neighbors cell pressure values." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "p0, dpdlon, dpdlat, valid = derivative(new_grid, pfull)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's look at what the pressure gradient field looks like on the surface.
\n", "We notice that we are looking at a small area, since the cells that do not have exactly 3 neighbors were not included in the calculation." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "dvlon = np.rad2deg(new_grid.vlon)\n", "dvlat = np.rad2deg(new_grid.vlat)\n", "dvoc = voc[valid] ### choosing only the cells with 3 neighbors\n", "dpdlon_sfc = dpdlon[9, :] ### choosing the surface layer, index 9\n", "\n", "fig, ax = plt.subplots(figsize=(10, 6))\n", "im = plt.tripcolor(dvlon, dvlat, dvoc, dpdlon_sfc, cmap=plt.cm.get_cmap(\"turbo\"))\n", "cbar = fig.colorbar(im)\n", "\n", "cbar.set_label(\"dp/dlon / hPa deg$^{-1}$\")\n", "ax.set_title(r\"Longitudinal Pressure Gradient: $\\frac{\\partial p}{\\partial lon}$\")\n", "ax.set_xlabel(\"Longitude / deg\")\n", "ax.set_ylabel(\"Latitude / deg\")\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "dpdlat_sfc = dpdlat[9, :]\n", "\n", "fig, ax = plt.subplots(figsize=(10, 6))\n", "im = plt.tripcolor(dvlon, dvlat, dvoc, dpdlat_sfc, cmap=plt.cm.get_cmap(\"turbo\"))\n", "cbar = fig.colorbar(im)\n", "\n", "cbar.set_label(\"dp/dlat / hPa deg$^{-1}$\")\n", "ax.set_title(r\"Latitudinal Pressure Gradient: $\\frac{\\partial p}{\\partial lat}$\")\n", "ax.set_xlabel(\"Longitude / deg\")\n", "ax.set_ylabel(\"Latitude / deg\")\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In fact, it is difficult to tell with the naked eye whether our `derivative()` function did what we wanted it to do. For this reason you can see in [Part 2: Verification of Derivative Function](test_derivative.ipynb) a test example with the same function. Have fun !\n", "\n", "Interesting side note: we compare below the initial pressure field on which our calculations are based with the calculated one. For this purpose, we plot the surface pressure field and see the initial pressure field from the simulation output on the left, the averaged pressure field based on the pressure values of the respective neighboring cells in the center and their difference to the right.
\n", "Two things are remarkable:\n", "\n", "1) The pressure fields are almost but not exactly equal. This is because the averaged values do not necessarily have to match the initial values for physical reasons.\n", "\n", "2) Since we only calculate the pressure gradient for cells that have exactly three neighbors, the initial pressure field shrinks. The border cells of our window are truncated. This is especially important when averaging over the window and all cells afterwards. If we then compare averaged gradient fields with averaged non-gradient fields, we run the risk of comparing areas of different size. If, for example, the sea surface temperature is to be compared with the overlying pressure gradient field on average, the SST field may only contain as many cells as the gradient field; i.e. only those cells that have exactly three neighbors." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "import matplotlib.gridspec as gridspec" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "p0_sfc = p0[9, :] / 100 # selecting surface layer and converting into [hPa]." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA+QAAAGeCAYAAAAde8ufAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAAsTAAALEwEAmpwYAACMNElEQVR4nO3debgcZZn+8e+ThEUCGBDCFjAIiIKsIooggsgiouKGogwoOozbqD9FRR1wwxnclXEUUREUFXFBERBEFBFEEQirIAiELYEQ2ddsz++Pqg59+vRSVf1W1Vvd9+e6+so53dXV7+mcrtN3329VmbsjIiIiIiIiItWaUvcARERERERERMaRArmIiIiIiIhIDRTIRURERERERGqgQC4iIiIiIiJSAwVyERERERERkRookIuIiIiIiIjUQIFcREREREREpAYK5CIiIiIiIiI1UCAXkUnM7JNmtjDnfU40s0s7rjvAzN4yaLmi6++x3FvM7DIze8jM7jOzOWb25byPN+AxjjKzO81smZmdGHLdBcfzSTPztss8M/u5mW1S99hkMEvckv7fbVr3eOpgZs9Jf/7dMiyr17he4yIiI0OBXERC+Qzwlo7rDuhyXbflgjCzjwLfAc4BXgMcDPwKeGXAx9gB+BTwdWBnkp8nBg8AO6WXw4FtgfPMbHqdg5JMdgJmp1+/scZxRE+vcb3GRURGzbS6ByAio8Hdbwq5XEHvAb7l7h9ru+7XZvapYVdsZlOBqcCz0qv+z90fHHa9AS1x97+kX//FzG4D/gTsC/y0c+HWz+PuiyocY2axjy+wA4FHgGvSr4+u4kEb+hzrNZ7Qa1xEZESoIReRgVrTxc1sTzO7ysweMbMLzWzLzmXavwdeC7y4bZrlJ3tMbd/JzE5Pp2E+YmZXmNmbCwx1BnBX55Xu7m2Pdb6Z/azj8XdLx/ecLj/z/mZ2LfA48BvgB+kiD7Sm2GYdv5ntamZ/MLOHzeyBdCzbdSyzi5n90cweNbN/mdm3zWy1As/FZem/s/v8PM/P8phmtqWZnW1m96Y/33Vm9u4ctw98zocZXy/pdOZPm9kP0/vda2bfMrOV+tznrWb2hJnN6Lh+y3S8e2T5mbNKQ8nrgdOBE4AtzGzrvONJrxv0/9j1Oc7z+jOz95jZ7elyvzSzPaxjqnmW/y8ze1fben4NrJfxKZuBXuMteo0XeI2LiMRGDbmIZLUR8AXgs8BjwBeBU83sOe1vhtt8Jr3PDOBd6XV30L39ezpwEXAcyZu0nYHvmdkyd/9xjjFeDvynJc3RGe7+rxz37WY28Hng08DdwCLgz8B/AS8heR7+TtJQ9R1/GljOBf4AHELSiO4MbADMSZfZGTgP+CXwOuBpwDHAGun3eccOE8NL589zS8bHPB24HjgIeALYHFi9bb2Dbs8z5iLjm8TMnk7yu/cB4HskoXcXkqnI/wB67XP8C5L/x1en92t5A7AAOD/9PtTP/BJgHeAU4EKSadIHAlflGU+O52k2Hc8xyfMy8PVnZq8G/hf4Bsk08V2A77b/MFnGYWavAv4vfbxfAi8m+TAiC73GJ44d9BrP+xoXEYmLu+uiiy66TLgAnwQWtn1/IrAE2Kztuv0BB57VtsylHev5GXB+x3WTluu43Ug+LPwW8Pus90uX2Rq4OR3XMuBakjd+q7ctcz7ws4777Zbe5zkdj+fAth3LviW9ftWc478YuBSwPuP/E/CHjute0jm2Xv9f6eNOA55JEgoeBNYb8PP0fUxgrfTrrXo8dt/bsz7nRcfX5zFfmS5zTMf1vwN+O+D36FfA2R3X/QP4etafOcdr7QTgPmDF9PszSUKyZR1P1uep13Oc5fc3ve1vwJkd130jXeduOcZxCfCbjmW+3b6ePuPTa1yv8aFf47rooosuMV00ZV1Esprr7je2ff/39N9Zw67YzNYws2PN7FZgcXo5jORNZ2bufhXwbJI3at8geeN8JHCpma1aYGh3uvsVgxYaNH5LDrr0fOAkd+82mwAzW4XkYE2nmtm01oWkNV0MPHfAMJ7W9tj/AJ4BvMHd5/f6eTI+5r3A7cBxZvYGM5vZ8biDbs+jyPh62QZ4lGRWR7t/AmsOGMdPgD3MbK10HNuS/F/+JL09yM+cTqt9NXCaP7kf7Y9JWsQXZB1Pzudp0u90ltefJVPrtyVpStud3rbMwHGk69mO5EOGdr/o/Uw9Sa9xvcbbZHqNW3IE/8vN7EZLdjsosnuAiEhpFMhFJKv7O75vBYiVA6z7RJIpuF8A9gKeR9Ic5l63uz/h7r929/e4+xbA24HNgLcVGNfdGZc7kf7jX4MkOMzvdue2ZaaShIzFbZcngBWADQeM4YH0cXcg+ZBktrv/pmOZzp9n4GO6+7L0Z7or/ZnuMrM/Wbpf7KDbc8o9vj7r2oZkRkXnlObZwLwB4zg9fZzXpN+/AbiTJCSE/JlfRjLl9iwzm2HJfuLnk/x8B2YdD/mep26/0ycy+PW3Nkkze0/Hfdu/zzKO1noWdKyn8/ue9BrXazyV9TV+HPBf7r4ZybT7DxcYt4hIabQPuYjUysxWBl4OvMfdj2u7PsgHhu7+XTP7PE8eOflxYMWOxXo1pl2brnYZx38fyfTafgeuuj99vE8CZ3W5fVCIXOLug87T3vnzZHpMd78eeK2ZrQC8CPgccKaZzXL3ZYNuJ/tzXmh8PWxDsi/wcmkz9gLgE33uh7s/bGZnkgSw40lO33dqe/OZ4WfOohW6Jx0hGzjAzP6fuy/NMJ77yf48TXiOc7z+7iHZbWXtjuvbv88yjtZ6OlvWwq2rXuMT6DXe9ho3s3WAjd29te7vAqeRzKoQEYmCArmIlGkRg1vulUgakidaV6Rvqlr7B2ZmZjPdfUHHdWsDT+XJZuYOYNeOu+6Z53E6DBy/uz9iZn8FDjazr3eb0pou8xdgc3f/9BDjySzvY7r7YuD3ZvZl4Eck7e69GW4v9JwXfU7S6cObkLTI7d6b/ntShtWcAvzEzF5BMjX4lB5j7Puc9BnjqsB+JFPUj++4eTuSA1LtTrI/bN/xDPm7k+n15+5LzewK4FUk+063vLJtmUzjaFvPcW1Xv6b70pPuq9d4DnqNMysdW8ttDJ6JICJSKQVyESnT9cCrzGx/kjdFk9oOd3/AzP4GHGVmD5K0TEeQTM/MexTfq83sV8BvSabAPh04nGQ/w9YbtNOAt5nZV0gOoLU7sHfOxyky/iNIwtVvzOx4kiMw70Qy5fKMdJkPA+eZ2TKSA+I9RHKk+pcDH3f3G4qOs4++j0nygcoXSfZXvplkiulHgCvd/V5LTtHV8/b0MYZ5zos8J1uTTB/exMyOIjlo1F7AB4GD3P3+DI97JsnvzbeAW9z9ktYNg35mMzuYZGrvJu5+a4/1vwpYBfiau/+1/QYzu4jkuT+QJwN5z/GkCv3u5Hz9/TfwCzP7Osk0+p3T9ZPeL+s4Wuv5JsnvxouBfXo8T530Gs9vnF/jRs4PdkVEKpfnCHC66KLLeFzofpT1ziOozyZ5o7Nfn2XWInmjdi9PTkvsttymwO9J3sDeRvIGbeAYuoz73SRv1OeRTKGcS9LiPKtjuY+SHKToIeBknmy6Oo/APOnx6HIE5izjT5d7MXABSXi4n+Qoydt2LPN84GySoyc/QnLwvC8DT836/9VjmZ7PX7/HJJlK/AOSN+KPk+xH+mNgo/S+fW/P+pwXHV+P5d9BEpa2JjlX8xMkpxF7Vc7XwcnpGP+n4/pBz0nrd2R2n3WfAdzQ5/ZvkEyDXmnQeLI+T72e46y/v+my/0ny4dqjJFOMX0/HkbOz/H8B7+lYz15kO8q6XuN6jUPG1ziwLsmB5Frfbw5cl2c7oIsuuuhS9sXc9cGhiIiMjrR53crdd6l7LKPOzP6LpGVd090fq3s8Mh7yvMbTGSefdfez0mMNLHb3j5c+SBGRjDRlXURERs02wJy6BzFq0n21P0rS+j5KcnCvjwDfVRiXiuV5jb8TOMnMvkZyurg3lzYqEZECFMhFRGRkmJkBW5HtwG2SzyKSI5kfTDLVeT7wNXTEaqlQ3te4J+euL3KKNhGRSmjKuoiIiIiIiEgNgpznV0RERERERETyUSAXERERERERqYECuYiIiIiIiEgNFMhFREREREREaqBALiIiIiIiIlIDBXIRERERERGRGiiQi4iIiIiIiNRAgVxERERERESkBgrkIiIiIiIiIjVQII+UmV1rZrsVvb1tublm9tJwIxv4eJub2Rwze8jM3lvV44pI/czsRDM7usLH0/ZGpIHa38N0vo71uhaRcaNAXqE84djdt3T383vdr/32Ice0i5n92cweMLN7zewiM3veEKv8MHC+u6/m7scOO74s0ufnMTN72MzuNrPvmdmqVTy2yLDM7Hwzu8/MVqp7LGXT9kZk9LW9Rh4ys/vT1/w7zGz5e86O9zCdr+PKX9ciInVSIB9jZrY6cAbwv8CawAbAp4AnCqxrWvrl04FrQ40xh1e4+6rA9sDzgP/qXKBtjLWJYQwSDzObDbwIcOCVJaw/mt+3cdveQP3Pf92PL2PtFe6+Gslr9BjgI8B3eyzb+Tou/LrW77yINJECeU3ST5APN7Or0rboJ2a2csftLzWzHwAbAb9OG5kPt9+efn2Emd2Ufhr9dzN7dcZhPBPA3X/s7kvd/TF3/627X5Wu181s07YxTZiOmo7hI2Z2FfCImf0e2B34ejrWZ/Ybm5ltaGa/MLN7zOxfZvb1ttvWN7Ofp7fdknXamrvfCfwGeE6PMU4btO50+TvTMf/DzPYYcH3e52ngGDrG8+a0YfiJmd1lZreb2cuyPB8SvYOBvwAnAoe0rkxfNz9rX9DMvmZmx6Zf9/z96fH71u91uL09OT30p+nvWfvvb7/H2s7MLk/v+xNg+Tasi77bm3R9PV9Lw25v0nV03eaE2t70ef77PYfa3sjIcvcH3P104A3AIWbW/rf5pV1ex5Ne1+nyebd5g5bv9/4r6Haibb2lvLb0mhUZAe6uS0UXYC7w0ravLwHWJ2mLrgPe0WfZl/ZZ1+vT9Uwh+aP3CLBer/u2rWN14F/AScDLgDU6bndg07bvTwSO7hjDFcCGwFPS684H3t62TNexAVOBK4GvANNJ3sjvkt5nCnAZcBSwIvAM4GZg7wzP64Ykn6x/ptsYB60b2By4HVg//X42sEmv64s8TwV+vmOAx4ADgBWAw4Fb6/591mX4C/BP4F3Ac4HFwDrp9U8HHgVWT7+fCswHXpDhd7jb67LX63BF4Fbgfenv1muARa3f336P1Xbf/5fe93Xpz3B0j5+17/YmXabna6nHz3U+GbY3bc/hpG1OgdfjXHpsb7qNc8BzqO2NLiN3ocf7DuA24J2dy3R5HXd+n2ubl3H5ru+/htlOAN8AvtHneSnltaXXrC66NP+ihrxex7r7PHe/F/g1sG2Rlbj7T9P1LHP3nwA3AjtmuN+DJH9oHPg2cI+ZnW5m6+R4+GPd/XZ3fyzn2HYk+WP4IXd/xN0fd/cL07s9D1jb3T/t7ovc/eZ0fG/sM45fmtn9wIXAH4H/7jHGQeteCqwEbGFmK7j7XHe/qc/1RZ6nvD/fVsBX3P1Ud18MfB/YqP0TfWkeM9uFJHif6u6XATcBbwJw91uBy4H908VfAjzq7n8h2+/PhNdln9fhC4Bp6fKL3f0XJG9UW/o91gtI3vx9Nb3vz4C/9fp5a97eQO9tTujtTec4+62/cdsbM/usmf3JzH5mZqvkGJPIPJIAnFfebV7W5bu9/yq8nXD3d7n7u/r8HGX9LddrVqThFMjrdVfb148ChQ4MZGYHm9kVlhw85X6S6ZNrZbmvu1/n7m9x91np/dYHvprj4W8vOLYNST7BXdLlbk8H1m/dJ73fx4B+b9z3d/cZ7v709I9i+xv29jH2Xbe7/xN4P/BJYIGZnWJm6/e6vt/P3iHzGLrYCmifvjwTeNjdH8/x+BKfQ4DfuvvC9Psf0TZtPf3+wPTrN6XfQ7bfnwmvyz6vw/WBO93de9y332N1u++t/X7gGrc30HubE3p70znOnutv2vYmnW68ibu/CPgdcGiOMYlsANxb4H55t3lZlu/1/ivkdqJTpr/llhzo03tcLmQyvWZFGk6BvBm81w1m9nSST2nfAzzN3WcA1wCW+0HcryeZ/tjaH/JRoP3T1HUDju12kk9wux2A5XbglvQNb+uymrvvm/NH6jbGget29x+5e6u9dOBz/a4n//OU+eczsxkkbxDuabv6dST7rUpDmdlTSKYXvjjd5+8ukqnf25jZNuliPwV2M7NZwKt5MpBn+f1Z/vs24HU4H9jAzNq3Fxu2fd3vsbrdd6Osz0GX7Q0Mfi0Nsy3stc0Jvb3pHGff9Tdse/Oitq9/QzLjQWQgS86msAHJrJK8cm3zMi7f77GCbyfy/C13993c3XpcJrzm9JoVGQ0K5M1wN8n+St1MJ/lDdA+Amb2ViW9wezKzZ5nZB9M3/JjZhiSN3F/SRa4A3mRmU81sH+DFOcfdb2yXkLyhP8bMppvZyma2c9ttD1pykJanpI//HBvu9EgtfddtyflPX2LJKageJ9kva2mv69N1XkG+5ynPz7dV+jhvsuRANS8n2ef4k0M9C1K3/Un+X7cgmSq5LfBs4E8kB3rD3e8h2ZfyeyRvBK9L75v39dHvdXhxOo73pL9fr2Li7i79HutiYAnw3vS+r6HPrjIZtjcw3DZn0Law1zanzO1N63G7rr+B25s1gAfSrx+g2PRjGSNmtrqZ7QecApzs7lcXWE3e1+gwr+mythNl/S3Xa1ZkBCiQN8P/AP9lyTSpw9tvcPe/A18ieXN8N8nG+aKM630IeD7wVzN7hOSN8TXAB9Pb3we8ArgfeDPwyzyD7jc2d1+arntTkgO93EFyEKb227YFbgEWAt8Bnprn8XuMadC6VyI5QMpCkiltM0mmpfW6HnI+Tzl/vq2AHwI7AfeRnCZq//S5leY6BPieu9/m7ne1LsDXgTe3tTM/Al7Kk+147tfHgNfhIpIDub2N5Pf3IJJTkz0x6LHa7vsWkt/NNwC/6PMzD9rewBDbnEHbwl7bnDK3Nx2P2239Tdve3Nd2v6dSbPqxjIdfm9lDJM3yx4EvA28tsqIC27zCr+lhthNmdpyZHddj1WX9LddrVmQEmE/Y/U9EYmJm3wRucPev1D0WGQ9m9lfgOHf/Xt1jkWoN2t6Y2VbAR939TWZ2GLCSu/9vpYMUaaCy/pbrNSsyGtSQi8RtK5JTsoiUwsxebGbrptMdDwG2Bs6ue1xSi77bm3S68a1m9ieS07adUNXARBqurL/les2KjAAFcpG4PQe4vu5ByEjbnOS8uw+QTB9/nbvPr3dIUpOB2xt3/6i7v8jdX+vuj1Q0LpGmK+tvuV6zY8rMTjCzBWZ2Tdt1a5rZuWZ2Y/rvGun1e5rZZWZ2dfrvS9ruc2B6/VVmdraZZTpLU4y6PScdt+9mZg9YcjaWK8zsqKrH2IumrIuIiIiIiDSEme0KPAx8392fk173eeBedz/GzI4A1nD3j5jZdsDd7j7PklPhnePuG6THq5kHbOHuC9P7P+run6znpxpOt+ek4/bdgMPdfb+KhzaQGnIREREREZGGcPcLmHyQvlcBJ6Vfn0RyRhfcfY67z0uvvxZYOT2Lh6WX6WZmwOokAb2RejwnjaBALiIiIiIi0mzrtHY5S/+d2WWZ1wJz3P0Jd18MvBO4mrQpB75b1WBrspOZXWlmvzGzLeseTMu0wYs0x1prreWzZ8+uexgiAlx22WUL3X3tuseRl7YjInFp4rZE2xGRuJS5HdlkivmjgfcAvitpsh9vu+p4dz9+mHWmAfRzwF7p9yuQBPLtgJuB/wU+Chw9zOMAbGrmjw67kg7zh39OLgee7u4Pm9m+JKcN3SzgEAsbqUA+e/ZsLr300rqHISKAmd1a9xiK0HZEJC5N3JZoOyISlzK3I48Bh60QdtLxpxcve9zdd8h5t7vNbD13n29m6wELWjeY2SzgNOBgd78pvXpbgNb3ZnYqcMTQgyd5Tt4ZYkVtjoIiz8ly7v5g29dnmdk3zGwtd18YZoTFacq6iIiIiIhIAQZMtbCXgk4HDkm/PgT4FYCZzQDOJDkn/UVty98JbGFmrZkDexLw9HxTAl+GlZ7i1dKvd0xX+68Aqx7aSDXkIiIiIiIiVZpWPEQXYmY/BnYD1jKzO4BPAMcAp5rZ24DbgNeni78H2BQ40syOTK/bKz3q+qeAC8xsMXAr8JYg46P61rfHc7ICgLsfB7wOeKeZLSEp8d/okZxuTIFcRERERESkIdz9wB437dFl2aPpsV94GlSPCzi02vR5Tlq3fx34ekXDyUWBXEREREREpIDWlHWZSPtFZ6dALiIiIiIiUoACeXcK5NkpkIuIiIiIiBRhMNWi2BU5GnXsQ95keq5EREREREREaqCGXEREREREpACj+qOsN4Fa3+wUyEVERERERAowYKrS5wSasp6PArmIiIiIiEhBOqjbZArk2SmQi4iIiIiIFGCmQN6NnpLsSv3wwszmmtnVZnaFmV3acdvhZuZmtlaP+84ws5+Z2fVmdp2Z7VTmWEUkTtqOiEgI2paIiEiMqmjId3f3he1XmNmGwJ7AbX3u9zXgbHd/nZmtCKxS4hhlzFy57YoAbHPFoppHIhlpOyIiIWhbIiLBqSGfyICpdQ+iQeqa3v8V4MNA15P2mdnqwK7AdwHcfZG731/Z6GSktcK4NJ62IyISgrYlIlJY66BuIS+jYErgyygr++dz4LdmdpmZHQZgZq8E7nT3K/vc7xnAPcD3zGyOmX3HzKZ3W9DMDjOzS83s0nvuuSf4DyCjRWG8kbQdEZEQSt2WaDsiMp6MpCEPeWm61lHWFcizKfvn29ndtwdeBrzbzHYFPg4cNeB+04DtgW+6+3bAI8AR3RZ09+PdfQd332HttdcOOHQZNd3CuAJ6I2g7IiIhlLot0XZERESKKDWQu/u89N8FwGnAi4GNgSvNbC4wC7jczNbtuOsdwB3u/tf0+5+R/DEUGQvX7bhS3UOIhrYjIhKCtiUiUorA7fgoNOSghjyP0n4+M5tuZqu1vgb2Av7m7jPdfba7zyb5I7e9u9/Vft/0+9vNbPP0qj2Av5c1Vhl9/Zrw2FryVhhXKNd2RETC0LZERMpiwJQpYS+jQIE8uzKPsr4OcJqZtR7nR+5+dq+FzWx94Dvuvm961X8CP0yPZnoz8NYSxyojLLbA3Y9C+CTajohICNqWiEhpRqXVDqW1D7lkU1ogd/ebgW0GLDO77et5wL5t318B7FDS8GRMZA3jV267YpSnQLtux5V49iVP1D2M2mg7IiIhaFsiImVpHdRNJlIgz07PlYysJjXjoHZcRERERGTclDllXaQ2oxTGx70lFxEREYmV2eicOzwUSy+SjQK5SKquaetqxkVERESaa4rS5yRT6x5AgyiQy8hpUjuuMC4iIiLSXAZMDZ7IPfD6qqWDuuWj50pGyrBhvMownyeMK7iLiIiIiIweNeQyMtSMi4iIiEilTFPWu1Hrm52eKxkJIcN4rMFeIV5EREQkLsmU9bCXUTAl8GWUqSGXxos1QPeiYC0iIiIyOtSQT6R9yPPRcyWNVlYYL2u9w4ZxhXkRERGReLROe6aGfCI15NmN+s8nEg2FaRERERERaacp69JYTZqqHjKMX7fjSjz7kieCrU9EREREipuiOesTaMp6PnqupJGqCOOhHkPNuIiIiMjommJhL6PAAl9GmRpyaZwmNeMiIiIiMrpa+5DLRFPrHkCD6NdHGqXqMD7s45XVjqt1FxERERFpPjXkJXjuQ9/KtNxlq/1HySMZLU1rxhWaRUREREaf9iGfSPuQ56NAHthOjxzLilNg0bLBYUzBvRmu3HZFtrliUa77VBHGdXA3ERERkXoZo7Pfd0gK5NkpkAe00yPHlrJeBfdmteNqxkVERETGhMEUpc8J1JDno0AeSGcYX3HKE5la8pBGNbgrjPd/PLXkIiIiIvUwTFPWu1Agz06BPICymvGyPPehb/HLV3+AeXf2D3LPv25JRSPqLZYwnmXauppxGSdLztkJgGl7X1zzSESkya62JMhs5V7zSERE6qFAPqR+YbyOljyLX776A5mW++uzs/16lBXcYwnjIjJRK4y3vlYoF5EiWmFcpOk0ZX0yPSXZKZCPsfU3WGlgS55FluCeN7THGMb7teR1tuOati5Vag/jIiJFKYzLyNA+5JNoH/J8FMiH0LSp6pC9HQ8tT9seYxjvR1PVRUREsusWxq8207R1aSRDpz3rRs9IdgrkBWUN4zFNW68rjOeRNbivvFI9n7t1tuSxhHG15FKFXu14jNPWl3ziGVx92u19l9nuqsUVjUZEWhrXjM+bN3iZ9dcvfxwiMrIUyAsYpWY81LT1qj3+xLJMy5UZ3GMJ4yJVaNJU9SWfeEam5eZsvUKm5RTcRcIYFMZja8kfSMf71Dvv7L9gltAOCu6jSlPWJzFgat2DaBAF8pyKhPG6W/ImNONlyRLc84b2K7ddkRVXjO8TfrXkUpYsYTyWlrw9jG/16g0HtuRZKLiLjJ8Hymjy1baPJE1Z706fUWSnQJ7DKDXj7ZrakocSQ9suEqsmNeN1yxLcFdplXGWdqh5DS15KGM9KbXsjqSGfTE9JdgrkFam7JZfhtQf3FVeMcyKOWnIJKW8Yr7slzzpVvU6doX3atO5v/Le6vPsZHUSaqEn7jXcL4w9ssMHgaetVawvuD67aPZyvvnpVgxlzBqaGfAIdZT0fBfKMRrUdbxn3ljyvRYs8ymnrIuOqVxgPNW29aldvn+1sEwruErsiYbyulrzWZrygR2eszzRgSZezyz74YLZ1KLiL1EuBPINQYbzKlnyc9xsvm6auyzgoOlW9jpa8Cc14L0uWeM+WPIsswV2hXerSpGZ8kChb8kAU3IeT7ENe9yjio6ckOwXyAUa9GW+nlnyw9jAea0uuaesyrCbtN54ljDe1JQ9FbbvUoWlhvKnteMu0ad1b8pCyBPexDO1W/UHdzOwEYD9ggbs/J71uTeAnwGxgLnCAu99nZnsCxwArAouAD7n7781sNeBPbaudBZzs7u8fenxUH8i7PScdtxvwNWBf4FHgLe5+ebWj7E4fXvQxTmFcBlMzLuNg1MJ4EyxZEsdpnq7efsVJF5EiQoTxKgN91jD+wAYblDyS7NrDeEwefHDyZfQZNiXsJYMTgX06rjsCOM/dNwPOS78HWAi8wt23Ag4BfgDg7g+5+7atC3Ar8Iuhn47UlMCXDE5k8nPS7mXAZunlMOCbeX6eMilh9FBWGF9xSnnNpcJ4eXqF8UWL4ngj3bJkibNkieuNtBQSKozHGOq3evWGdQ+hcdSYyzhoejPebprmvY4Nd78AuLfj6lcBJ6VfnwTsny47x91bRwG8FljZzCbsQ2tmmwEzmdiYN0qP56Tdq4Dve+IvwAwzW6+a0fWnQC4TrL+BjgTfqSnNeCwtmzRTjCG6n1Fpx1tie/0qjEtRIZvtslvyImG87pY81ma8l3GYwt7ahzzkBVjLzC5tuxyWYSjruPt8gPTfmV2WeS0wx907G8IDgZ+4hzuaogW+UOw5abcB0L7/2h3pdbXTZ2ldlD1VvYyDu6kdL0eWMB7DvuTd3sxfvf2KelMttSnz4G5Fw/i470uelbYbUlST9hsfpWY8VuMQxoGyTnu20N13CLlCM9sS+BywV5eb3wj8W7DHAko4QfCwz0m3/6QoPg1vRvVXIe03rpa8aWJr1qR5mtSOj1ozLjIqygrjZay3iWE8q1imrY9NGE9NmWJBLwXd3ZqCnf67oHWDmc0CTgMOdveb2u9kZtsA09z9sqIP3E0N+5APcgfQvv/aLGBej2UrpUDepsowHmpfcjXj5WnKVHWRYZQZxkOve9TDeAwfrqkdlyKa1IyHUMe09Sa14+MWxpOGPOyloNNJDtpG+u+vAMxsBnAm8FF3v6jL/Q4Eflz4UbtoHWU9skB+OnCwJV4APNCa4l83JY6UmvGJxr0lzxvG6zq426A38Dq4m/Qzjs24Du7Wm8K4FFFFGA/5GE1sx/OG8Tpb8rEL4zUxsx8DFwObm9kdZvY2klOb7WlmNwKtU50BvAfYFDjSzK5IL+37lx9A4EBeh27PiZm9w8zekS5yFnAz8E/g28C7ahrqJJFMbKlXXWF8mH3J1YyXpynNeAxtmjTXOIbxJliyxJk2rfrAoDAu4yBkGH9ggw146p13BltfL2rG42fAlKnVbrfd/cAeN+3RZdmjgaP7rKuUP7JVv5vu85y0bnfg3RUNJ5dmJA+RigwTxqtsyfOEcbXk0qnKMB5j8FdLPpHCuBTVpKnq49CMt4tlX/KxkB7UreLzkEcvwinr0Rr1n28gTVXvbdymrasZF4nPOLXjLVW+xhXGpaiqw/gwj1dWGC9zX/ImNeMwvu14wrCpYS9NF+k+5NEa9Z+vrxjCeN6Du2mqetzKbsmLvlFXSy4tdTTWRR+zzDCullxhXIpTM14uhfGGUUPelQJ5dqP+8/UUQxjPq44wPi4teRPacTXjMqwYp4/3Mo7NuEgT1BnGY/wgoI4jrmdVxbT1sQ/jIgHEn0JKEFsYz9KSqxkvTxPCeAhqycdb3WE8z+MrjJf/AZzacSkixkDcj9rxcimMJ1oHdQt5GQUW+DLKxiOJNFzdYXyUW/IywngZ09bVjssw6g7jeVQZxsd12rrCuDRZ1g8FFMYTZbXkCuNtDO1D3sGAqYEvo2wsA/nF099b9xAmybsvuQyvKc24wrgMI6YwHtNYmqCM177CuBTVpHa86jAeYtp6k5pxmUz7kE+mfcizK3XvEjObCzwELAWWuPsObbcdDnwBWNvdF+a5bwhZQ3nd09vrbsdb1t9gJebdOTofGpQdxhctclZccfgNaug35Fdvv2Lj3pDHvB2JXdMCcB1T1bd69YZcfdrtlT9uHZr22g9N25LiFMbLVXYYnzYNliwJtz614yJhVXGWwt07/7iZ2YbAnsBtee9btSqD+4pTnmDRsienh8cSxqUeasYnaPR2RAbTfuPdLVniTJs2fMAY9zDeRtuSnGIM41ebsZVP/htZZxh/YIMNeOqdd+a+X9OacYXxycxGY5p5SK3Tnkk2VQTybr4CfBj4VU2PH1yo4P7nTx4NwIIr7x16TNJdVVPVh2nJywzjTWzJexi57UhIC/7+QtjQWPP2uD7YWXLOTkzb++KJ19UcxsepJZeutC3p4XYzZgD31zwOGV6IllxhvId0H3KZSIE8u7IDuQO/NTMHvuXux5vZK4E73f1K6/9J5qT7ljzWSgwK7k/wBQBmbrNmpvVVGdxHYdp6U/Yblwm0HRnCvRtme5NQV3CvO4w3wbAt+Yh8ABeCtiUFzci43P0ljqFTZ0sew1T1vC15k9pxhfH+bKreX7ZTQ55P2YF8Z3efZ2YzgXPN7Hrg48BeRe7r7hd0LmRmhwGHAWy00UYhx165ZV/YnBXWXYXFdz2a+T4xBvdY1RHGi7TkVUxVb1hLru1IBbIE91ChvdWSxxTGR7Ulb9DrvAqlbktGcTuyoTu35wi6MzIud3+RwfQRQxjPS2F8hKgh70qBPLtSA7m7z0v/XWBmpwEvBjYGWp9EzwIuN7Md3f2uAffdEZj0Rjr9lPp4gB122CGuuZk5LPvC5qWuP1Rwb2pL3pRmXPuNT6btSDEzt/hzMm09oNjbdplIYXyisrclo7gdKcuMjMvdP+D2q81o4kcfdYXxItPWFcZFyldaIDez6cAUd38o/Xov4NPuPrNtmbnADl0OsNL1vmWNtW6dYTxvSx7SoOB+/Je2BGDHZ/+uiuEEoTDeXNqONFOW4L7ahTuzQgVjGRV5p60rjE+kbUlxeVvykGYMuH0j/gDA/exe+liyGjRtvUnNuGSlg7p10pT1fMpsyNcBTks/dZ4G/Mjdz+61sJmtD3zH3ffNe98mK7sZL8sl17104DIxhPYYwniWaet1hPGGTFvXdmQIZbTkIS3ec71My61w7vySR5IYlWnrDXhd10HbkhE2Iw3m/cQQ2mMI43lacrXj2ZimrHdV/zvw5igtkLv7zcA2A5aZ3fb1PGDfrPcdBf3CeJ0teT+fu/LLfGSbbKdjyxLaIY7gXic1471pOyIQX3CvS5aWXGG8O21LhlNnS97fl4Fs70myhHYIE9yLngItJgrjOZgO6taNnpHs6jrtmTTQJgefU8p6ywruMbTjLb1a8rrDeENachlCjC35/LUXM39teOY/Vgy63izBfVBoH5WWXGTUbcQrSllvWcE9hna8ZVBLrjAuUi0F8ppkmao+Ci15SHmmyccUxkXkSfPXXlzr42dq2yMO5P1acn24JuMpe0se0sDgvsEN+J3PBOIK44MojBejKesTaR/yfPRc1aCJ+42X1Y6Hdsl1L+V5/75p3cPoatGiiW143e14y9Xbh20pRXrpDOM3bB5ngHzWN3bkWd/Yse5h5KIwLmXb0OP4mwXlteOh2QY3KIyPAzOYGvgyAqYEvowyNeQVG5UwXldLPsi7vzwXGBx28xytuAyxhHEZDzFMW6+7Gc9r2mPOOuuv1HeZu+fFcQpIhXEZJ00J4wD+0d/C0b+Ftdbqu9yj76j+/VTntHWF8eGoIZ9IDXk+CuQVKhLG65623pRmHJ4M41lkDcRlBHeFcZG4TXsseY2u/cGtuedLV/VcblBgbwkd3NunrSuMS5XqPrhb7zBez7T1fvyjv8287CrHfXngMnWEdslIB3XrSs9IdgrkFRmVZrwptjt0E+accNPQ68kSnvOE9kWLnCkRbqF0cLfRV2dL3q8dv2HzRcEP7jaMVhgPqazgrtesjJPGNePtFi4c2JIPkiW0Q77g3mrJ1Y6L1EuBvAHqaMmzhPGYpq3nacdDq7NtF4ldk6aqdwvjg1rykLIE91imycv4qqMlzxbG42vJ65A3uCuMB2CMzH7fIVno7UREx7EITYG8Ak1sx5ukVxgP1ZKHsmSJs8oq/evxOqezqyUffVW35FnDeAwteRnNeBlaoX2qPuCTMdGkZhz6TFUP0JKHtMpxX4YZM5JvDj201rE0nWHah7yTWTIFI6TFzfmAP68IJ8+OllBhfIV1VwmynizyTFX/3JXZPoktS53NeF4rr2wsWzb4YHNZLiKxa3oz3m7tD25d0UiyaYXxu/dbreaRyLiK6YjrE9X7niTPfuO1a4VxGZ4BU6eEvYyCadPCXkbYiPyPx6mJzXiT9hvPEsa3O3ST8gdSg7JCu06BNvpmbvHn0h+jSBiP9RRosVEzLuOkSe14o8P4CSfUMgwRSSiQl6SMMF52S140jNfRkjepGYekHW8Z1JKHorZdZLCmTFWH7mFcLbmMquJhvPr3JJnD+MKF5Q5EamNTLeil8VpT1tWQZ6JAXgI149KuPYzHqD2cax9yGdYwU9WrbsnzhPG6p62rGZfYlDltXc14iTRVPbzWQd1CXppOgTwXBXIJEsarbMnztuN1TlvvFcarasnzePYlOnrzuChr2voo7TceE4VxGSdNCuOF1NmS9wvjmrZenBk2dUrQS+MpkOcyAv/jcSm7Ha/y4G4xatJU9dibcZGQxiGM192S96Jp61KX0C15uDBeTUnQqHZczXi51JBPpECeiwJ5QJqqXq5hwnjVLXnTwrja8fETsiUPGcbLnrbepGYc1I6LxGqoMF51S541jKslF6mFAnkgVYbxUC156DBe5rT1UWzGY5m2rjAuw2hSMx5ClS15njCullzqEqolDz9Vvbz3JGrGZQLtQ96dGvLMFMgDUDNerlBhfFRPgTYMhfHxVsUp0IooqyVvUjuuZlzGSZP2Gw8WxmM94rpa8mIUyCfSlPVcFMiHVFcYH6YlLzOMh27Jm9SMQ/6p6nW25ArjMqwmteMhw3jZLXnRMK6WXOoyTEtebhgP+56kUc04qB2vihlMCXxpOgXyXBTIx0yTmvEylNmSN2m/cYVxaSnakpcdxkO25GrGReLUpGa8cRTGRRpDgXwIdU9Vj/WI66Fa8ia148OE8apbcoVxGda4NuMiEk51YTzMe5JS2vGypq0PG8Y1bT2/qVPCXppODXkuI/A/Xo+6w3gRTWrHxyWMizRNlWF82Ja8zDBexrT1EO24pq1LXUKfAi0mjZqqrma8ejqo22QK5LkokBegMF6ussN4yGnrocJ4VS252nHpJuu09SY1402jqeoyTpo0Vb30MB6yJQ8ZxtWSZ6dA3p0CeWYK5DnFFsazTFuvI4wXnbbepGa8aRTGZRhNC+NVTFUP1ZKHDuNqyaUuWVryesJ4sfckasYlm8BhfBQCuRryXBTIR5ya8e5CtORNmqquMC6DjNIp0Jq037iacRknasZ70CnQRMaaAnlO3zl81vJLLHq15HWH8dCnQItJGWG8rGnrCuMyrCa141WH8WFa8jLDuFpyqUuvlrz+MD6670nUjtfM0GnPOqkhz2W0f7qSZQ3lb//iHSWPpPnqmKq+3aGbMOeEm3LfT824jKqZW/yZBX9/4YTrYgjjN2y+iGf+Y8WByzWpGRcZJ/WH8Xxqmaq+cCGstVb++5Udxk84AQ49tNzHGAE+CtPMQ2oFcslEz1ROh9l5HO975LpPFcF9hXVXYfFdjy7/vu52vOVzV36Zj2zzgb7LNGm/8bLD+LJlzpRR+GRURkIMYTyrpoVxTVWXUbahO7dbjL/jXwb6vyfRfuOSW6shlycpkOeiZyoiwwb3I7+42/Kv38T/8KOrPhpiWKVSGC+P2nEpYuYWf+ZVi45a/v2nH/hNjaN5UtaWvA5rf3Br7vnSVZmXryqM373faqxzxkOVPJZIpw1//vPlXztgrz2xtrFkpTAuInVQIG+gbsF9vq3BdB7jEX/K8uvetPX/ZFpf2cG9V0seQxgvOm29TCFacoVxKerEZbsBuy7//qinvizT/eoM7k1qx9WMyzg4/XR4Zcd1/vO3ZLpvXcE9ijCeddp61WFc09YH0pT1LtSQZ6ZnqoAi09ZjVkdwjyGM59GkdlxhXIpKwngxdQX3WMJ4lpa8jjCullyqdvrp6b/TXsMrl/wi9/3LD+6Tp61HEcaluQwdJruTpqznomdqBMy3NSp5nCzBvQnT5DsNaskVxmUctIfxV0+7gNOW7Np74SEME9w7p63HEsazUDMuElaW4J4ltEcXxge15HVNVVdL3pNjlTfkZnYCsB+wwN2fk163JvATYDYwFzjA3e8zsz2BY4AVgUXAh9z99+l9VgS+DuwGLAM+7u4/Z1g1BXIz2wf4GjAV+I67H9Nx+27Ar4Bb0qt+4e6frnKM3SiQFxRLS94ZxqfbxGnrVesV2m/3tdnQ7gGa1Y7XFcaLTFtXGJeihmnGy9IruJ/CeUCcYbxXS153GFdLLlVptePLvy/YkofSO7Tfi712zSqHEob2G49TPQd1O5EkSH+/7bojgPPc/RgzOyL9/iPAQuAV7j7PzJ4DnANskN7n4ySh/plmNgUI88KoIZCb2VTg/4A9gTuAv5nZ6e7+945F/+Tu+1U6uAE0waLBqmrGQ7nd12aaL2XxdvH9Edzu0E0mXadmXMZBrzD+6mkXVDuQjN644x5ctvUi7t44vkAuMs46w3js/Of38qEP7Qazsh1Qt1ILF06+LoYwfsIJdY9AUu5+AXBvx9WvAk5Kvz4J2D9ddo67z0uvvxZY2cxWSr8/FPifdLll7t7ll68xdgT+6e43u/si4BSS5yR6asiHUGdL3i+M192S97Ixdy3/OmsoX2FO57amGjGEcZ0CTaS3uTOXkPVP2Dq3VPc66mzJ627HW9SSS5n6hfG6W/JePvyX1zz5TZZQfkfxU9MOLYYwLn15+Pdra5nZpW3fH+/uxw+4zzruPh/A3eeb2cwuy7wWmOPuT5jZjPS6z6RTuW8C3uPudw83dMpqyAc9JxsAt7d9fwfw/C7r2cnMrgTmAYe7+7WhB5qXAnkDNa0Zh4lh/ITdpnPo+Y9kul+W4B4qtLf2JY8hjOehdlyKGjRVvcx9yYv60OP5DwqXtU0PHdxjCeMiZWpaMw4dYTyrrE166OCuMB4/Aw8/53ihu+8QcoVmtiXwOWCv9KppwCzgInf/gJl9APgi8G8BHqyMQD7oOen2R7fzDcDlwNPd/WEz2xf4JbBZoPEVpkA+pFj2Je8UU0veHsbLEKptv/n1T2X7p2zO3797Q4hhBTGoJVcYl6Ji3G98kCJhPI8swX1QaL97Y2f6Mduw6L+yn5dcpKmyhvGYWvLOMP7hue/i87O/Ee4BAgX32173ATY6aFd4y1uGH1NIOrhbVyUE8iLuNrP10nZ8PWBB6wYzmwWcBhzs7q0jGf8LeDS9HuCnwNuCjab6g7rdAWzY9v0skhZ8OXd/sO3rs8zsG2a2Vt1T9RXIG6aJ7Xgs+gX32zdduvzrLd72zEzrqzu4K4xLUXnCeCwtebcwPnfmEmYvqPbPWJbQ/siqy5h+9NaZ1ldlcNe0dRl3hZrxsvQJ7rft964nvznxxGzriy24jxOL5jzkpwOHkBxR/RCSo4mTTk0/E/iou1/UWtjd3cx+TXKE9d8DewCdB0Brkr8Bm5nZxsCdwBuBN7UvYGbrAnenP/uOJMdT+1flI+2gQN4gecN4DC15r3Y8z7T1srWH8Zv2m84mZ2QbV5bgHiK0d2vJFcalKDXjcVkxwuAukkUTp6r3ErwlH0J7GL/t5AuSljyLLME9VGhXS147M/sxSZBey8zuAD5BEsRPNbO3AbcBr08Xfw+wKXCkmR2ZXreXuy8gOQr7D8zsq8A9wFsDDbDyhtzdl5jZe0iOIj8VOMHdrzWzd6S3Hwe8DninmS0BHgPe6O61HyVWgTyAKqatN7EZL3uqegjtYbwMZbTtCuNS1CiG8Tpa8iweWXUZ0x8ON4cxS3DPEtrVkksIRcJ43dPWo2rHe5jQjJdBbXspnOqnrLv7gT1umhRI3P1o4Oge67kVCD8NrqbzkLv7WcBZHdcd1/b110lOFxeV+N7FyCSjGsZjasnb5WnJQxkU3K//3o0VjURksrqmrY9yM16GrG27yDCa2IxnCeN1t+S9wniuljyUrMFdLflykexDHo+aAnlT6dcnkMPsvFLWO2wYn26PBRpJdk1oxqH8djykT1z0fj5x0fvVjkthTWzHs0pOgRafR1ZdVvcQRIIaNoyfPq36lroJzXgjZQ3t4yA9ynrIS+O1AnnIywgbhf9yiUjeMH7CbtNLGkl/g8L4TfvVM65u3vD2ly//+oDFH6lxJNJUIcL4q6ddMPxAclA7Xo41tr1o8EIiXYxqMz5h+bklTxnvYdBU9dtOrnb7m8kFEY5JpKEUyAMK3ZKHmqpeR0sesyY14+1hXKSIJjbjCuPlUBiXGFTVkjelGS99v/EyKIxPsmxK2MtIUEOe2aj8l4+cUd1vvG5NCuMiwwodxqtoyYuGcU1bFylPE9vxJlAYHw2uKeuTacp6LqPwXx6VEC15GWG87JZ8mDBe1bT1vGG87mnrvdpxTVuXLNSMSzu141JUE8P4MO14VdPW84bxKKatK4z3pIa8gwJ5LqPwXz5S1IwLaKq6jJ8QYVwteXcK41JUWWG8zGnrTZiqrmZ89Kgh76BAnkup/+VmNtfMrjazK8zs0o7bDjczN7O1+tx/qpnNMbMzyhxnLMY5jJfdkhedql5HS54ljI9TS67tSH5ltuNVH9xNhqMw/iRtS/IZt2Z8wnpqOrjbIFG05CISXBWfwezu7tu6+w6tK8xsQ2BP4LYB930fcF2ZgytDWadAG1boaetNacabtN+4mvGexm47UtS4T1VXS/4khfGutC3JoIowHrolb0IzDmrHR5GbpqxPooY8l7r+y78CfBjwXguY2Szg5cB3qhpUnZrYjodWRkseIoxX1ZLnDePj1JL3oO1Ih6rCeMiWXPuNl0NhPBdtSxqujDBeRkseIoxX3pIrjGfiUzzoZSQokGdWdiB34LdmdpmZHQZgZq8E7nT3Kwfc96skfyD71gpmdpiZXWpml95zzz0hxhxEnpa8yjAeqiVvQjuuZnxkjO12JI9xb8bbqSWXHkrdlozCdgSqnape1SnQYqBmfISpIZ9MDXkuZf+X7+zu2wMvA95tZrsCHweO6ncnM9sPWODulw16AHc/3t13cPcd1l577SCDrlITm/Eyw3ioljx0GK/7iOtjTtuRAeoI48O25GrGy6N2vKdStyVN347AeO83XiaFcRHpp9RA7u7z0n8XAKcBLwY2Bq40s7nALOByM1u34647A69MlzkFeImZnVzmWMswqCWvK4wP05I3oRlvmmHa8XGYtj7u25FRpDBeHoXx3rQt6a+uMD5MS152GA8xbb2MMF76tHWF8VwcNeSTqCHPpbT/cjObbmartb4G9gL+5u4z3X22u88G7gC2d/cJKc/dP+rus9Jl3gj83t0PKmusdVAzXh5NVR8d2o4MVudU9ZiPuD6O09YVxnvTtqQ/NeMiw1k2xYNeGk+BPJcyP4NZB7jQzK4ELgHOdPezey1sZuub2VkljqcWo3LE9SrD+DDT1ssM46GnrYcK4yPekms70of2G5cWhfGBtC3pQWF8wGMN0ZKXOVW9tJZc7XhuOsp6FwrkuQz86czs10w+8ugDwKXAt9z98W73c/ebgW36rTv9tLn19Txg3y7LnA+cP2icTdK0dlzNeHhqxrPRdqQ3hfHB5s5cwuwF8f0Rf2TVZUx/ONw7LoXxwbQtidvp017DK5f8ItOyTWnGtd/4eBmJVju0EQ/RIWV5R3Az8DDw7fTyIHA38Mz0e8mhaWG8Lnlb8qrCeIiWvIwwPuItuXSIKYxnnbauZlwkPk1sx+uQtyWvKowHbckVxkVqk+Wji+3cfde2739tZhe4+65mdm1ZAxslh9l5HO97RBfGp9tjPOJP6btME9rxJjXjIsOKKYxnVWcYH/WWXO24FBVbGM/SkjehHVczPoZsRKaZh9Sasi6ZZHmm1jazjdz9NgAz2whYK71tUWkjGzEvve0R5q3x4KTrz1v96TWMJpu6w/gJu03n0PMf6btMHWH8pv2ms8kZ/cfVS5lT1Q9Y/BFOXeFzpa1f4rCyL5503eO2Qg0jedKrp13AaUt27XqbmvHyKIxLYaeeyiu7XH36ygdUPpSs6g7jH577Lj4/+xt9l1EYH08OLLO6RxEZBfJcsjxTHyQ5EMpNgJGcIuRd6VFKTypzcKPi5ltf0PO2PR68NdM6ygruvVryusP4KNJ+41KWbiG9m7qDe11ibcmHoTAuQzngADj11ElXv/Lxydd1U1Zw79WS1x3GY3bbyRew0UHdPxAdSGE8kBE5MnpICuS5DHym3P0sM9sMeBZJIL++7UBuXy1xbNKmyuAeUxjv15I3aaq6wriE8sapF3HK0p0L3bfM4N6tJVc73l/RaesK41K3KoN7U8J4I9txEYlClqOsrwJ8AHi6u/+7mW1mZpu7+xnlD6/52tvx9e+byrw1yg2RRYJ7e0seUxjvp+4wnmfaepVhXNPWJYQQwV1hvBwK4xJMj5Y8pCLBvb0ljy2M95q2XncYL9SSqx0PxrUP+WRqyHPJ8kx9D7gM2Cn9/g7gp4AC+QD9pqrXrVtwP321Z9UwkvzqDuN5qBmXMgzTkofUGdwPnHoeALMeie/wIrFOW8/TkiuMy6jqGtwb8ma+7jBeiMJ4cMtMU9YnUCDPJcu7gE3c/fPAYgB3f4xk6rr00SuMr3/f1IpHkt2Gdg/bP3D/8kss2k+BFlMYD3EKtDLoFGhSpzUXLebRFWzCRUQkr2PveA2ff+Plyy+xaD8FWkxhPPMp0BTGg3Ng6ZSwl5EwbVrYywjL8tMtMrOnkPy+YWabAE+UOqqGi7kZ72XO6k+bdF3WUH75U2eEHUwPMYXxLNSOy7hZc1H3qe5ZQvkqi8tvF5rckqsdl1JUMG29iGPvmrzvedZQ/uFTtg89nK5iCuOZKYyXQ1PWJ1NDnkuWZ+oTwNnAhmb2Q2Bn4C1lDqrJmh7GL5nxNHa8/1+57l9FcD9ht+nsecfk08bVrde+5HWHce1LPvpimbYeStYmvYrgHhuFcRkn7WH82Au357275GvHqwjuH577Lt5T+N7l6bsvucK4SLSyHGX9XDO7HHgByVT197n7wtJHNsKqOLhbVt2a8bJkCe69QnuMYbyXusO4SB16teOhjWpw79WSK4xL6SJqybs142XJEtx7hfb3xJjGpVbah7zDmDXkZrYGsBmwcus6d8/8KVjPZ8rMOrdC89N/NzKzjdw9nh16ItG0drxXGC/SkofSK7T/azX4+VOfPOjcYXfcUNGIBmtvyRXGpUqxtORVhfE8egX3P2488c/ei29ZUsVwClEYl3HSK4wXaclD6RnaFybjatl//2rGU5ja8VK19iGXNmMUyM3s7cD7gFnAFSQl9sXAS7Kuo98z9aX035WBHYArSRryrYG/ArvkHvEIyxvGY2rJm2Dzm1eE7Z78/vhZz8x0vyqDe2xhXNPWpQoxhvFePm+v4a2cOeG6zoDeTR2hXWFcKhVRS94EX3nuc5n6tScb0V/+Mtv9qgjuk6atK4xXYpmOXzrRGAVykjD+POAv7r67mT0L+FSeFfR8ptx9dwAzOwU4zN2vTr9/DnB44SGPoKY141DtVPVhbX7zioXvmyW4hwjtsYVxGR91tuRNC+MA31v8ct66wpkDlp4oS2iH4YN7nlOgiYySKqeqD+srz31u4ftmCe5BQ7vCuEgVHnf3x80MM1vJ3a83s83zrCDLu4xntcI4gLtfY2bb5h3pqBomjNfVkmcJ43VOW2/XHsY/Nudm/nu7ZwR/jBjb9lDUkktZmhTGqxIquO8x91yY+yiX779KiGGJZFNTS54ljNc5bb3dMGE8qxBt+20nX8BGvzsBTjgBDj00xLCkDzdNWe9qfBryO8xsBvBL4Fwzuw+Yl2cFWZ6p68zsO8DJJLtJHARcl2+co0nNeLmGacbL0C+4//Wyty//+vnbfKeK4YgsF8u+5LFqteOx6Bfcv/Trc5Z/vf0vHx24LoV2abImN+NL32cTpq1XrV9wf++qJzz5zQkn9F6wnYL7UDRlvcMYTVl391enX37SzP4APJXkDGWZZXmm3gq8k2R+PMAFwDfzPIj0VmVLnjeM19mSxxbG8/jrlW8fuEyVoV0tuYTWpHa8WxgvMm29Coff+t+sl/M+WUI7KLhLfPKG8Tpb8iqa8dplCe4K7V05sFSBfKIxCORmtjLwDmBT4Grgu+7+xyLrynLas8eBr6QXSTWtHW9SM95PWdPWh/GDf7wXVr2fFR+ekfk+WUI7qG2X+DQ9jMfq8Fv/u9T1q22XTCqatt7kZrxd3S15N697HczjUNY/O2Mznofa9u4MlmnK+kRjEMiBk4DFwJ+AlwFb8GSBncvIP1NlaFoYH0YdLXmT2vEf/OO9pa4/trZd4lXFtPVRCuMxteTtYXz+1pex3lX1tHEK7RK7WPYlj9XrXlf3CFKDgvu4BXYZVVu4+1YAZvZd4JKiK1Igz6mMMF72tPUmteNZwngsLXlnGF+UsyUPJUto327vXZjzrwsrGI2MqlEK4yLSR8kt+ai04y2xtOSdYXzePiW15DKJpqx3MR4N+fI3Ru6+xKz4L0HPCRZm9lEz267X7eOoic14iDB+yYxqAr2a8XKsufdb6x6CVOSNU8s5d3WTwnge31tc/+kKu01Vn7/1ZTWMZDC14zKsUQvjsYimGc9iRNvxZRb2MhKmTQt7ic82ZvZgenkI2Lr1tZk9mGdF/fZ4uAV4n5nNMbMTzewNZrbGUMNusLLD+Pr3TQ2+zlFrxtt9bM7NJY1ksH5hfNGq91c3kJy2e9oudQ9BpHRNasfL3m88JIXxMXNA+OAcKowfe+H2QdbTT94wvvR99SWoRoXxEZU05Bb00nithnyEA7m7T3X31dPLau4+re3r1fOsq2cgd/dT3P0t7r4d8DXgGcAvzOwCMzvKzHYc8ueQEo1yGJfs1I6Pn9AteZPa8SJhvK6WXGFcxoma8XIMCuPz9omsjR7RdlxkWJmOCejuc9z9f9x9d2A/4Fog22GiR0BVU9VDteRlhPGqpq3nUUdL3vSp6mrJJY9RD+N1yRLGY5m2rjA+xgK15GWE8bJa8iaF8cYZ5TAeeLr6SExZH4OGvMXMVjKzN5nZx9LS+igzOyrPOnIfpN/dH3T3n7v7YXnv20RN3G+8SZrUjmcN4zFMW1czPt5CtOQK4+VoUjMuItlVPW0961T1KFryUQ7jaMp6V2MUyIFfAa8ClgCPtF0y01nz+mhiGC9zqnrolnwUw3gMBoVxteQyyLiF8RgO7tZN3S252nEZVplT1UO35E1qxxu13/iIh3F48ijrIS+NN16BfJa7v8HdP+/uX2pd8qxAgbyHusL4MNPWx3G/8SqmrRcJ43W15GrGZVhNCuNN06R2XGFcgKGmrY/jfuNVtORFwnhtLfkYhPGEsczCXkbC+ATyP5vZVsOsYGAgt8RBrbnwZrbRqB/QTc14byFacjXjIuUr6xRoMQk5Vb3slrxoGK+jJVcYl2FVFcZDtORqxksyNmFcxpWZXW1mVwG7AJeb2T/M7Kq26zPL0pB/A9gJODD9/iHg/3KNWHLJ25KPYzPers5ToPVTdUuepx3XtHXppkntuPYbL4fCuEySsyUfx2a8XVkteaPC+JjRPuRdjMeU9f2AVwAvAzYF9kq/b12fWZZA/nx3fzfwOIC73wc0p+LMqWnteB1hPMYjrpehSe24pqpLN3lacoXxclpyhXEZJ+MexmNW6bT1MWzHl2JBL403BoHc3W/td8mzriyBfLGZTSX5AAgzWxtYVmDc0YspjIc6BVpMypyqHrolH4cwrpZcWhTGyxEqjNd9cDeRUKdAK0NZp0CLSaPa8TEM425Uvg+5mZ1gZgvM7Jq269Y0s3PN7Mb03zXS6/c0s8vSqdSXmdlL2u5zfjrV+or0MjPIk1JTIDezfdKf559mdkSX283Mjk1vv8rMotiAZAnkxwKnATPN7LPAhUBzPvLPKKYwntW4T1UvS8gwXva0dTXjMsigllxhvBxNasZB7bgMT+34k0JOWw8ZxktvyccwjNfoRGCfjuuOAM5z982A89LvARYCr3D3rYBDgB903O/N7r5tellQ4phLlRbI/0cyhXwL4EAz26JjsZcBm6WXw4BvDvF4O5mF2b9gYCB39x8CHwb+B5gP7O/uPw3x4DGZs4H1vNSlX0tedxjPM219XMN42UKEcbXk461JYbwq43gKNIVxGVbdYTxPS96kqepqxpvCWMqUoJdB3P0C4N6Oq18FnJR+fRKwf7rsHHefl15/LbCyma0U5EfvpZ6GfEfgn+5+s7svAk4heU7avQr4vif+Aswws/UK/pSHAJeZ2Slm9hYzW7fgeuj505nZmm3fLgB+3H6bu3f+EoysrKF8uzu95JEk6g7jeVQZxj8252b+e7tnFL5/WWF80ar3s+LDM0pZt8i4UDteDoVxyeyAA+DUUyddXXcYz6PKML70fcbUrxV/X1hWGJ+3z6Gsf/YJYVc61mH8yYO6BbaWmV3a9v3x7n78gPus4+7zAdx9fo/p568F5rj7E23Xfc/MlgI/B4529yCBZln4s2sPek42AG5v+/4O4Pkd6+i2zAYkpXMu7v4OADN7FknzfqKZPRX4A3A2cJG7L82yrn4fN1xG8jtmwEbAfenXM4DbgI3zDjxmr512MT9fstNQ66giuMcUxi+Z8TR2vP9fPW9vUjPeNJqqLnm8cepFnLJ05wnXNakdrzqMf2/xy3nrCmcWum+ZYXz+1pex3lXhAoXCuAwrpjB+7IXb895dLu95u5pxKVMJ4XOhu+8QcoVmtiXwOZKjgbe82d3vNLPVSAL5vwHfH/ax3GHJkmHXMsmg56RbEOsMXVmWycXdrweuB75iZk8BdgdeD3wZyPR/2PO3x903dvdnAOeQ7Hewlrs/jeRQ7r8YZuDjrt/0+M6p8u3T1mMK47EqenC3sqeqh9yXPHQY17T18aMwXg414zLy2g7uFlMYH6SuMF7WKdCGFXRf8jFvxyGq057d3Zp+nf67fH9wM5tFckywg939puVjd78z/fch4Eck076H1grkIS8Z3AFs2Pb9LGBegWUKc/fH3P0sd//PPB+oZPk453nuflbbA/0GeHGRQUo+de/DnkWvfcmb1I6P237jMp4++/DbAYXxrPLuS15VGA+xL7nCuEi8GtWOK4zH5nSS/ZpJ//0VgJnNAM4EPuruy4/0ambTzGyt9OsVSErXa2iuvwGbmdnGZrYi8EaS56Td6cDB6dHWXwA80JrmX6cse8gvNLP/Ak4m+RDoIKD3POUGCzFtvQx3rzKNjR9YwmrLHp9020NTVq5hRP3VHcbz7EteZRgfdl/yMsP4dk/bhTn/urC09UscWqH8FaufO+m23R7/Z9XD6UvNuEh8zmlr7t77k8m3192ad5u2XvdU9Tz7kiuMN5OnB3Wrkpn9GNiNZL/qO4BPAMcAp5rZ20h2L359uvh7gE2BI83syPS6vYBHgHPSMD4V+B3w7RDjK2nK+oDH9CVm9h6S2d1TgRPc/Voze0d6+3HAWcC+wD+BR4Eomq4sgfxAkv/k09LvL0ivk4ps/EDyG731fY9w1RrTJ9zWLaR3U1VwrzuM56FmXMbFVg98b+Ay56+8aaZ1VRHcYwnjw+xLHiu141LUORmm0b533ckHfeumquBedxjPo+owPtTB3RTGJ6k6kLt7ryy2R5dljwaO7rF8KS+SOgJ58rh+Fknobr/uuLavHXh31eMaZGAgT4+m/r4KxhKF2FryVhgfVpnBvXVwt5jC+KCWXGF8MrXkoylLGM8jS3CPrW0vUx3teNGDuymMS1Hdwvg5b3gDe/+kS02eQZnBvdWSK4yXRGF8EsdYYr1PVTyu6gjkdTCzk4D3ufv96fdrAF9y98wvloGB3Mz+QJejz7n7S7IPVYoIFcbzKBrcP/bDv3Vd7uc77dz1+jrVGcZ1CjSpUq8w/usH9+w6bT2UYdr2t9xy3KTrtnjGb4ceUxmaNFVdYVyaqGhwf8brtoeNJ08T/89b6jkuT79p63WG8VJOgTaGnOob8tjV1ZDXZOtWGAdw9/vMbLs8K8gyZf3wtq9XJjl/3Ug/xTG05L3CeLdp63VoBfeP3flfyRWv/B3PPv2lk5Z77cUXTbqumxiDeww0VV2KCt2Ml6EV3E+96AtPXrnm3ZOW+/vNe026rpsygnuvaet1h/E8LbnCuAyj31T1YVrykJYH92uS41G99yB4xsmfnrTc/3YJ6d3UFdyjp3ZcpJspZraGu98HYGZrki1jL5dlynrnIV0vMrM/5nkQGU3Lw3gAWYJ73tDebdp6DFPVs7bkdYRxTVsfDVnCeNkteVYTwjiwyr3r8GiXUJ5FVcG97jCeh8K4DCPLfuPRuCbcwaGzBPe8ob1bSx7DVPXMLbnCeB/GEjXkE4xZQ/5F4M9m9rP0+9cDn82zgixT1tds+3YKyc7/6+Z5kCaqsyUfNFU9hpa8Wxi/rkdLHsqwbXsMYTwrNeMi5ckb3Ntb8pjCeNF9yUWyyBrGo2jJu4Txmw86qmtLHsqwbXsMYTwzhfG+kinr2oe83TgEcjP7gbv/G7AmyQzylwAGvMbd/55nXVnq9MtIfteMZKr6LcDbco1YMqtjv/G8QjbjZZgQ3C9O/vn7Ht33ca9Lv5a87jCulrzZ8kxVr7sl72zHW4ZpyUNqD+4fYi++sHmzjm+qdlyKGtdmvAwTgvtXk38ubNKfWIXxgRxjiQL5BOMQyIHnmtnTgUOB7wM/at1gZmumB0bPJEsgf7a7TzjSl5mtlPUBJLs8YTyGlrybslvyIu49ahc2WfWCCdfd9PzOPTHiUHcYl2Zrwn7jLb3CeMx+8LHT2XqliWeTuOotl/dYul4K41JUkTBeW0seeRjv5pZbvsX6pzwy4bp5b/xATaNJH7/XtHWFcZF+jgPOBp5BUmC3GEmZ3ft0Tx2yBPI/A9t3XHdxl+smMbO5wEPAUmCJu+/QdtvhwBeAtd19Ycf9ViY53/lK6Rh/5u6fyDDWoKqctt6EZhzib8c73XvULgA88oFdmf7lJ0P5Jn/NNs0z1uBetpha8qZvR6pSNIzX0ZI3MYxvfdLG3a8/ceCfwlJDe7dp6wrj3WlbMn7Knrae1y23fAsA++B0/EtPhvL1T/lypvtXGtwVxjNz0D7kXYx6Q+7uxwLHmtk33f2dw6yrZyA3s3WBDYCnpIdub31kujqQ56/97l3+uG0I7Anc1uM+TwAvcfeHzWwF4EIz+427/yXH4468qlvypoXxEMoM7p3T1tWO96XtSB+j2IzHMm0dJoZxe2IR3tGSD7x/htAOYYK7wvhA2pb0oanqccsS3IuGdp0CbRimfcg7jMmU9Zbfm9lq7v6Qmf0XSWn9GXefk3UF/RryvYG3ALOA9i3AQ8DHCgy23VeADwO/6najuzvwcPrtCukl29EzAquiJW9CO54njMcybb3Vjrd0tuQhZQnu/UK7wnghjdmOlGkUw3hMejXjpTxWweDeaskVxgvTtoThw3il09ZzhPFYWvJWO97S2ZKHEqRtVzuei2MscQXydmMWyI9095+a2S4k+fmLJNPZn591BT0DubufBJxkZq91958XHKADvzUzB77l7seb2SuBO939Suuz8TezqSTz8TcF/s/d/9pjucOAwwA22mijgsOsz6iF8Vh0hvEYdIb2lR5OpjfFOFaIatq6tiMlq/vgbr3U3ZL3CuNFWvKQJgX3u+8G7oL9M++uNq5K3ZY0eTuiZrxcnWE8BpOC+9y5tYxjFCRT1hXI241ZIF+a/vty4Jvu/isz+2SeFfTc4cHMDkq/nG1mH+i8ZFz/zu6+PfAy4N1mtivwceCoQXd096Xuvi1JQ7+jmT2nx3LHu/sO7r7D2muvnXFY+bx22sWlrDdEGN/6vvCfrrYrGsave+XvAo8ku34B95EP7FrhSCSQkdiOlEHtuCRhPLH3f9xc40AaodRtSVO3IyHD+DlveEOwdXVVMIzffNDA/+LS9Avj9sFIDs6rMC4yjDvN7FvAAcBZ6cHPcx1UoN/Cra3EqsBqHZdVs6zc3eel/y4ATgNeDGwMXJkeXGUWcHm6v3qvddwPnA/sk+Uxm6IJzXgTxdo2d2q14wBrfjqKFrqr7Z5W//Op7Uh3ocP4rx/cM+j62g0Txle5d52AI8lu0FR1e2JRRSPp4+449rFvCm1LJlMzXq4Ym/FM3vveukfQKK3TnoW8NF2rIQ95idjrgXOAfdK/EWsCH8qzgp6B3N1bW5Hfufun2i/AeYNWbGbTzWy11tfAXsDf3H2mu89299nAHcD27n5Xx33XNrMZ6ddPAV4KXJ/nB4tZ6DBeVks+7FT1qlvyJoZx6U/bke7UjJeryv3GC+sRxtWSd6dtSXVKb8kLqrolb0wYVzsehAL5ZKMeyM3sEDNbCNwJ7A/cBeDu8939t3nWlSUZ/G/G6zqtQ3Ik0iuBS4Az3f3sXgub2fpmdlb67XrAH8zsKuBvwLnufkaGxyxNWdPWY9XE/cazqnPausJ4biO1HQmhzDAeuiUPFcarbMmbHMalL21LOqgdL0+eMF7rtPV+YVwteWbJQd2mBb003Zg05EeSnKHjWcCtwH8XXVG/057tBLwQWLtjn/HVYfBHN+5+M7DNgGVmt309D9g3/foqYLtBj9FEZU1VD3kKtCaG8Sa04/3C+JqfvjDKn6Hug7ppOzKRmvFy5Q3jdR/crZe9/+NmzvmWDvDWTtuSiRTGRc24yNAebDu12ZFm1vXAwVn0q+tWJNlXfBoT9x9/EHhd0QdssmFb8ibsNx46jFcxbb1IkK26JW9iM153GBepUiOacVA7LkOrIowHm7YeOIxXMW29yFT1ylvyrGFcLXkm2od8sjFpyNczs8PM7EVmtjbJKTEL6Xfasz8CfzSzE9391qIPIIlxDONViLFVLiqmllxhPD5VteMhToFWRjte9ynQeqm0Jc8RxtWSSzdqxsvViP3G1YwH56DzkHcYk9OefQLYGngzsBWwarqr05XAVe7+46wrylLbPWpmXzCzs8zs961LoWGPgCIteVVhvOxToBVVVks+bHitqiVvYjsucdFU9XI1oh1XMy5DqjqMD9WSlxjGy2rJhw3j0ZwCTXJTQz7ZODTk6aku3+PuL3b3NYFnAF8H7ifd5SmrLEnhhyRHE90Y+BQwl+SgJpJBE5pxaF47HkuTPEjeMB7DKdDUjseljjBe9OBuZYfxMg7uFiKMl34KNIVxkag1ohmHYu24pq0P5jqoWzejHsg7ufsd7n6Wu3/O3f8tz32zpIWnuft3gcXu/kd3PxR4QaGRjoiYj7hepCWvIoxXfQq0rMpsyZvYjCuMx0XNeLlGvRnXKdCkpa6p6oVa8gqmqodsyUc6jItIJbIkhsXpv/PN7OVmth0wq8QxjYwmtONNa8ahGe34MGG8rpZcYVza5WnJqwzjoVryRoRxkQC033hzlDZtfdgwrpa8r9Y+5CEvTTcOU9ZDypIajjazpwIfBA4HvgO8v8xBjYI6w3jWlrzqMB6iJR/1MF4XhfH4NKkdb5oywngp09YDTFVXSz7eYgjjmVvyBobxRrTjasZL5xhLmRb00nQK5PkMTA7ufoa7P+Du17j77u7+XGCTCsYWtX7T1tWMl6OsMB5y2rrCuIQQSxjP0pI3cap6I2i/cRlSDGE8sxrC+LDT1ssK40Fb8pBhXC15T46pIe+gQJ5P0fTwgaCjGCGxhPFYj7heVBOa8ZCqmrauMB6fWMJ4FnWF8WGmrZc5VT1YSx44jKslHz8K4+VqRDMuIo1RNJA3aEtfns6WPJYwPkid7XiRaetVhPEQLXkT23GJi8J4uRqx37iacRlBQ50CrURFWvIqwniQllxT1SujfcgnU0OeT9EE4UFHIZVp4lT1JigjjJfdkqsdj0usYbzbtPUYwnjelryqMD5US64wLgGoHS9PY5rxssK4pq33YCxhWtBL0ymQ59MzRZjZQ2b2YJfLQ8D6FY4xaq2WPMZ2vHPaeixhPE9LXuVU9aIteRObcYVxKSqGMJ5XI5rxkmnautRtUkseSRgPeQq0KKgZr5xjLPWpQS+jQIE8u54fwbj7alUOpMmOP+yEvrf/zxcOrmgkvcUSxvNown7jZYfxNT99YfDnQWE8Tlc/9a0Dl6mrRf/1g3vyitXPreWx+1nl3nV4dM3+rXJjwrjacQlkb+8/iTGKBj2SMJ5H1e24fXA6/qWcxwOqIoy/971w7LHlP06DuDMS08xDajXkkk3z50RE4JwTns3eh17X8/aPfuj7mdZTRnDf+r5H2O/R/wm+3mFd98rf8ezTX9rzdoXxciiMN1uW0A7lBfcmtuN1sCcW4SutmP0OFYXxvf/jZs751jMqeSyJ16DA3lJGcD/nDW9g7yOPDL7eYd180FE84+RP97y9EVPV1YyLNJYCeUTqDO4xqTOMP/KBXZn+5Qtqe/wyKYyPjzLa9iynQKtDv5a8Ee24mnGJVJ3BPSZ1hvFCLXkV1JJ3MJa6IlU7NeT56LengUY5uDehGYdq2/Eypq2L1N22l63uMJ6pJa8hjKsll9BGObg3ohkHteM1a52HXJ6kQJ6PAnkgg6at16EV3Ld85IG+y137xYerGM4kg6at12VQS66p6jJONjhqn+SLFVbou9w/93+igtFkU3cYz0TNuIyZf3wtCe7/Wqv/cm+6vp6DrHVOW48ljA9syRXGa+cwMgdiC0WBPB8F8hG35K4bmbLazL7LbHn4qpnWVXZwb0ILXFcYH6YlVxiXIBYv7hvKN/3lSplWU0Zwb5+2HlMYz70vuciIyjO7+UfP6r0vd0tdoT06dYZxTVsXCUaBPKDYWvIld90IwLKHFgwM5VlkCe55Q3urJY8tjHdrydWMy7jZ533zg6+zzOAeUxjvq+Z2XNPWpUqdmW3hQlhrQEs+SJbQDvmDe6slj6Udb+nakqsZj4j2Ie9GDXl2+u0ZUa0wXrUibftj3zicp6z7gq7LPXbXX4KMa1gxhPG8LbnCuAyjaxgf0JKHlDe4b/mpRSx+5OKey62w5U5BxpXXpJZcU9VljNRdoBYJ7p/8JMB/dF3ukEMiCeqxhHG15AC4m6asd9CU9XwUyAOLoSXvFsZDteShbHn4qtx/0ecBWAys8NTubU2voN6pjODe5COuK4zLMMpoxsuy8f/enmm5xdf2DustpYf2iMK4WnIpW5Ny2gHXtwX362G//bovd9JJ3YN6p1KDeyxhXJbTPuSTKZDno0A+YupqxvNqhfFQygzuMbTjIlVpUhhfevs/J3w/ZfqaLHvk3sLryxLaoWBwjyiMi9QtxLT1mGUJ7nlDu06BFjNjmQL5BArk+SiQlyCGljxm3cL44gdu7tmSh5QluLeH9tjCeJZp62rHpahMYbzCaev9dIbxKuUO7pGGcbXkUpYm5bNf/rKexy3UtqsdFxlJCuQjZFA7HsO09dDNeBnaQ/tNz7u553Kb/C2+N7IK4yLxaAX3ac/bvfdC85ozI0Eki6xhPIaWvFcYP+OM3tPWqzYhuL9/zd4LHnRQ+YPpZcxbckf7kHdSQ56PAvmIaMJU9SaE8Tz6hfWWMkJ7r5ZcYVyGkWuqes0teb92fNhp65Vbf71syym4SwM0KZPV1YyX5uSTBy9TZ2gfZQ7LlimQd1Igz06BvCRVTlvPE8brasmzhPGqpq1ndfe330dyyLnisoR2GD64K4zLMJq833gT2KOP46usPNxKsgT3AqFd09YllCJhvK6WPEsYj6klB3jzIQZrrDHcSrKEdlBwz0kN+WRqyPNRIG+4JjTjTZSEcZi6ZAWWThsulGeRt21vb8kVxmUYhcN4DS151jAeU0te6enW1LZLTdSMl+vNhxgAS++7j6nDhvIsirTtYz5tXWQYCuQlKrslLxrGq27J80xVj6Elb4Xx2EwK7b/5PnN3VLMlxakZL1d7GA/SkofSEdz3/tRjnPOJp9Q0GJF4xdCSt8J4dLqF9jEO5Ms8roMA100NeT767ZFSjcJ+41OX1H9E6V5euOXhdQ9BGmrUw/iU6X0OflSBSpvxISmMyzCGzWALF4YZRxZNa8e7hfGl991Xw0ikP8N9atBL07UCecjLKFMgL9k5Jzy7lPU2Yap60TC++IFs+12XIdZ2vJv13/qNuocg425x+btzNFGvMG6PPl7xSAZTGJdhNKkQLRrGzzgj6DBG171x7CZUB3dj2bKpQS+DmNkJZrbAzK5pu25NMzvXzG5M/10jvX5PM7vMzK5O/31Jl/Wd3r6u4Z+TuAJ5r+emy3Jz0+fpCjO7dLhHzU6BvIFChPFlDy0IMJLemtiM9wvjsbXk7WFcLbnkNerteJ3UjMu4CBnGy27Jm9aMQ8RT1bsZ4zDe4j4l6CWDE4F9Oq47AjjP3TcDzku/B1gIvMLdtwIOAX7Qficzew3w8BA/flcxBXJ6Pzfd7O7u27r7DkM/akYK5A0zys14ndSMy7gIHsZLbMmHDeN1T1sXGVXj0IzXaVAYj2rausJ4Ldz9AqDzyX8VcFL69UnA/umyc9x9Xnr9tcDKZrYSgJmtCnwAOLrsMdes63MTCwXyCoSath46jJfdkg+jymnroxDG1ZJLFmrGy5WlHY9l2rracYlNGS15qDBe5bR1NePNtGzZlKCXgtZx9/kA6b/djuD8WmCOuz+Rfv8Z4EvAo0UftJvYpqyT7bkBcOC36dT+w4Z+1Ix0lPWGaEIzDs1rx/OE8apOgdaLmnEZRqlhPPAp0EKG8apOgaap6jIumtSON02eMF7ZKdB6URh/klsZB2Jbq2Mf5uPd/fhhVmhmWwKfA/ZKv98W2NTd/5+ZzR5m3Z1KOsp63+fEzH4HrNvlfh/P8Rg7u/s8M5sJnGtm16ezEUqlQF6Rsk+BVlTIU6CFDuMxnAJNZBSoGS9X3jBe5ynQFMZlGGWH8YULYa21wqwr9FT1sk+B1qhmXCYLf9qzhQX2Yb7bzNZz9/lmth6wfCqsmc0CTgMOdveb0qt3Ap5rZnNJMuFMMzvf3XcbdvAlBfK+z4m7v7TXbWbW87npWMe89N8FZnYasCNQeiDXlPUGaEI73rRmHIpNVa/r4G5Z2nFNW5daRXzE9TL3JVczLuOiSc14E/cbL6K2fcnVjsfqdJKDtpH++ysAM5sBnAl81N0vai3s7t909/XdfTawC3BDiDAeqa7PTTszm25mq7W+JplJEOzI8/0okFeoyL7kVYTxYfclLzOMl7Uv+SjsNy6Shdrx8gwTxqvel1xhXIahMJ4oa1/yRrXjCuOTOIYvmxL0MoiZ/Ri4GNjczO4ws7cBxwB7mtmNwJ7p9wDvATYFjkxP53VFOiW7NBHuQ971uTGz9c3srHSZdYALzexK4BLgTHc/e+hHzkBT1iOmZrwcw4bxKvclzxvGX7jl4fz52i+WNBppGoXxJ1W1L7nIqKk6jA8zbb2JzbjC+AhwIMO5w4M+pPuBPW7ao8uyRzPgKOruPhd4zvAja62vlCnrhbn7v+j+3MwD9k2/vhnYpuKhAWrIK5e1JW9CGK9KyJZczbiMi1rCeMFp601rxkFT1UViM65hvLJp6wrjfViyD3nIywiIrCGP2mj8j4+YOsJ4kWnrTWvHxyWMa19yUTNerlBhvIpp6wrjMoy6pqqXcQq0UEJNW1czPmKWTQ17abgIp6xHTYFcCmlaGA+troO7iQxSexjP0ZJXHcZDHNxNzbiMC+03Xp7QYbzUllxhXKR0CuQ16Ddtvc6p6llb8jrC+LDT1selHReR8pQRxstqyRXGZRgxhPGsLXkdYbysg7tJQ7mpIe+ghjwfBfKINGG/8SY242WF8TJa8lBhXNPWx1Pt7XhLhpa8rqnqRVtyNeMyLmII41k1rRmH8qaql9KSqx3PbtmUsJeGUyDPp/n/4w3V2ZLHEsb7teR1h/EiLbmacRkX0YTxDJq433iZqj4FmkgvCuPZFWnJtd/4aDIMWzY16KXpFMjzUSCPQCxhfNRUEcZDteRlhHG15ONDYTyfvC252nGRevSatl53GC+iijAerCVXGM/HDfOpQS+jQIE8u1LPQ25mc4GHgKXAEnffoe22w4EvAGu7+8KO+20IfB9YF1gGHO/uXytzrHX4+3uSz0M2v/AVA5f1s39d9nD6qrsdb1n8wM2s8NRnDFxOzfjo0HZksCe2XC/zsitdW1F4X7wYVpj4gVUMYTwvhfHRoW3JYPvvn225JgbiOqkZF5F+Sg3kqd17/HHbE7itx32WAB9098vNbDXgMjM7193/XvJYK7Ph5f/ItbztMzi0Q5jgvuyhBUxZbeby72MJ45LfC7c8nD9f+8W6hxGCtiN9/OEw2P34bMtmDe+hg7vCeH/26OP4KisXvr/CeGbalgRQZXBfuBDWWivsOkM54wzYb7/+yyiMj4kR2O87pNaUdcmmikDezVeADwO/6naju88H5qdfP2Rm1wEbACPxx68zjP9jlxvY/MJnBll36ODexDBedTs+dckKLJ2W/VRP7dSOD2WstyNlyxLcB4b2Li15LKZMX5Nlj/R+86lmfKxoW1KS0ME9pjAeq6X33cfUNdaoexhjxkZiv++QFMjzKTuQO/BbM3PgW+5+vJm9ErjT3a80G/ypoZnNBrYD/trj9sOAwwA22mijUOMuTd5mvCyDgrsDD3z+tdUMJqd+09Y1VX0kaTsSqaxt+7Tz/lLySMKqK4wXackVxnMpdVsyCtuRjTaC23rNEyhRluB+eKSHRenXkqsdHxMOtlSBvJ0CeT5lz6/Y2d23B14GvNvMdgU+DhyV5c5mtirwc+D97v5gt2Xc/Xh338Hdd1h77bVDjbty/9jlhrqHMMHdz+z6dEetzjCe9+BuVYbxETi4m7YjGfzhsLpH0N2yKV73EHrqdnC3JjXjklup25JR2I7EaqO/nFr3EHKrM4znPribwrhIrUptyN19XvrvAjM7DXgxsDHQ+iR6FnC5me3o7ne139fMViD5w/dDd/9FmeOsSizteFaPf+d7AKz/5/6/Jvee8G9VDGeCzpZczfjo0nakuVphfNGez2fZN48ZuPzKm+5e9pCil6clVzuej7Yl2dTVkvfSCuOnvi4N5e9/f9/lD9hlXskjmqyzJVczPl4MY4r2IZ9ADXk+pQVyM5sOTEn3t5oO7AV82t1nti0zF9ihywFWDPgucJ27f7msMVYpSxgPuS/5MPK242se+oNMy5UV3GMJ41n2Ja8rjDf14G7ajuST5+BuZetsxqe884iBofzxf/5h4HpDh/b2fcmb1I4rjOejbcn4OPXC9TMtV1ZwjyWMZ9qXXGE8DEf7kHehQJ5dmQ35OsBp6afO04AfufvZvRY2s/WB77j7vsDOwL8BV5vZFekiH3P3s0ocb2ma1Ix3C+PzXrhkYEueRejgnvUUaNJo2o40UJnT1LOEdsgf3GMK44NacoXxQrQtySGWlrzrVPWvfnVgS55FluCeJ7SfcQb8+KdxhPFMFMYDMkwN+QRqyPMpLZC7+83ANgOWmd329Txg3/TrC4EGbdV6a3oYr0OW4N4K7au/9IOs/pPey934hmq3Bv1a8rqnqjexJdd2JL+YWvJOWVryULIEd1+6iKdsvjdP3PE3Hrvl932XXX2/j4ca2lAUxovRtqR5YthvPG/bPnWn/h/sLb344qHHJBFymKKGfAIF8nzqOu3ZWCgSxuuatj4ojIdqyUNY8H97L//67pNfzzoH/bTnspv9JNuYyw7udYdxkarEfBC3bh77xzmZlnvwjM8OXKbs0K4wLlWqsyUfGMYDteQh2Py/wE/TJ2rARJtBgb0lVHDvOW1d7bhIVOJIWFKrWJrxLNrDeEhlBneFcRkXWcJ4lS15P750UfB1ZgntkC24d05bVxiXcRFDM56VzZ94Ske7+BR8pzcOvd4swb1waFcYD840ZX0SNeT5KJCXZJip6rEc3K1TTC15XbIE9xvfwPJp67GF8SZOW5f86pi23qRmvFsYn7LCaixb/FAlj581uK92wGdKHomIFNUZxquWp21f3pIrjJfDYYrOQz6BAnk++jinBNpvvBy92vG7T359xSPprxXa13jZwTWPRKQaTQ/jsXro1CMBteNSn402qvjx8rTjX/1qaeMYhl18St1DmGB5cFcYL1Fy2rOQl1GwZEnYyygbjf/xiIQK4//Y5YYg6+lnFMJ4rJ71w+QN9PR//0LXS51euOXhtT6+VOMPh1XzOEXC+JR3HlHCSAYbFManrLBaRSPJ4Y476h6BSCWaPFU9dnbfsZidXPcwRKSH8Z5/HNg4NON1TFvPEsYHHdytaoNa+6yh/JFvfyjEcETGXpOa8ZbVXvgfAOz97zdyzrc3q3k0Mq6qOLhb4TBew8HdsoTxUPuSSzMYaB/yDpqyno8CeSBlhPGy9iVXM16u9jC+8DMvYq0j/1R4XVmCe5HQrn3Jx0PZ+5IPM1U9loO7dapyX/J+WmFcZNSpGS+XXfyuJ7+2k3E/qMbRjCg37UPehfuyuofQGArkYyZEGK+qJc8bxmNoyevYn11tu9RB+42Xp1sYV0sudSqrJQ8SxitqyZsexqVco7LfdzgOLK17EI2h354AmjRVXcrTK4wv/MyLKh5Jd+37sKsdHx9l7EseKoxXsS9508K4iMSnSBiv++BuvcK49iUPz9yYsnRK0MtoWBr4MrpG5X+8NmWH8ZAHdws5VX3eC8vdMaRpU9VjO9J7P+e+3+oegjTYODTjdR7crd9U9b3//cYKRyJSrqBT1SM94npd1IyLNIsC+RCa1IyPy37jsQbjWFpykWGUEcbLasmb2Ixrv3GJWchToI3LfuN1tOQK4/WwZVOCXpqvNWVdDXkWo/A/Xosqw/iwLXlZYbyMlrxpzTjE+yFAN2rHx1NVp0AbJVW35ArjMi7GJYzHTNPWA3OYstSCXkbDssCX0aVAPuLGpRlvV2VAVhiXcTEOU9XrkieMa9q61GnYlrzUMB542nqoMF5lS652vB6GMWXZlKCX5lNDnsco/I9Xro6p6iH3JY/RODTjdU5bVxiXYVryssN4yGnrIcN4FS25mnEZF2rGy5U3jKslF4mHAnlO2m98orIP7lZU2c21mnEZF2rG46OWXOoUcl/y4AK05OMQxiUwhynLLOil+dSQ56FAnkPdYTxPSz6OU9WrMkwYr7olVxiXdnlb8irD+LAteRPDuNpxGRdNasfLUOa09WHCuFryMAx02rOuFMizGpX/8dLVHcbzqDqMD9OSNy2MN4nCuAxDzXiirGnrw4ZxteRSpzwteeVhfIiWvGntuJrxSDjYUgt6aT415HkokGegMF6OssN4GdPKQ6xTp0CTOsV8xPWyToEWGzXjMi6a1IyXHcbrOAVaFmrJQwg7XX00pqyDjrKenQJ5w/Sbtl5nGM/bkjexGdd+4zIu1I5PFLIlVxiXcaEwXi614yKjQ4F8gCa1401RZRgPFaIVxmVcKIyXJ3QY17R1qVO/aeu1h/Ec09arDOOhWnKF8choynoXmrKehwJ5H7GG8W4teZOmqjdNGWG8rGnrCuOSRa9p6zGE8azT1qsO41WcAk1EqqVmPF2npq0PxXSU9S4UyPNQIO9nvX8ml8jFEsazTFuvY6r6MIFazbiMixjCeFZNa8ahvKnqasmlTt1a8trb8ZYAp0ArwzAtuZrxeNnSsJfRoECelQJ5H7ev9/Lki1YwH3SpUKsljyWMZ9G0/cbLDuMhW3KFccmrqQd3qzOMF23Jtd+4jItowngGTWvHyw7jaslF6qNAHlLFoT3GMN6rJa87jDep6RapWpPa8aapIoyrJZc6tVryKMN4j5a8aWFcIqcp611oynoeCuRVi7BtL1vdYbyIqgJ8iJZc7bgU9YfD4g3j3Vrypk1VVzMu4yLKMN5DDGE877T1qqaqqyUvxtCU9e502rOsFMgHWD5tvWoZQvtjqz5cz9gGaG/JFcbLpTAuw7p/vYe5f704tyXtYgnjWaetVx3G1ZJLrZ71rOQSo7aWPIYwnpf2G28AB1sW9tJ8asjzmFb3AKSYpUtXAMgcyp/y8KplDqcR7j759axz0E8HLlO1hZ95EWsd+afc91MYl5CyhvIZ86vblkx55xEs++Yx0YRxEelh663hqquyh/Lrry93PF3EFsbt4lPwnd44YBmF8aawpXHONqvXaIfokBTIM7h9vZez4fwz6x7GUKoO7vNeuIRpb65pdkFBasZlHF358tXY5syHMi+fJbiHDO0xhvEpK6zGssW9nzNNVRcZIOLgHou6wrjZybgfVMtji4wrBfIGarXjj86+llXmbhl03aGCe6xhvFdLrjAuEk6otn3p1z8dYjiVqjOM7/3vN3LOtzer7fFlzLVa8pACBffY2vGWXi25mvGG8VGZZh5Sa8q6ZKFAnlEsLXkrjNdtYHD/1U9Y7VVvqGYwI6DotHWREPK25KEMDO6f/QDT3vpqnrJ+uFMEhtKtJVczLlKTAcHdr7wf22ZGNWMZAWrJ89OU9U4K5HnooG4N0i2MPzr72hpGMtgm561Z9xB66mzD1Y6LxOnKlycHUHts3p8yXeoUSxjXwd2kVltvXfcIurJtHgPmZ7zUS+14AzmwzMNeBjCzE8xsgZld03bdmmZ2rpndmP67Rnr9nmZ2mZldnf77krb7nG1mV5rZtWZ2nJlNDffExHOUdTN7ffozLjOzHfost4+Z/cPM/mlmk0/3UhIF8oaIpRnPIuYw3immMD7oFGgK41KmVvhtsrpCeyxhXES62Hpr3J+f4w7VBvf2U6DFFMZ1CrTonQjs03HdEcB57r4ZcF76PcBC4BXuvhVwCPCDtvsc4O7bAM8B1gbieWMc1jXAa4ALei2Qfhjxf8DLgC2AA81siyoGpynrOdQ1bX1QGC9jX/KimhLGH/rD//LonT1fk9FRGJdx0/qA4LIFv+O5M18abL1ZQ3mWafKDDu5WF+1LLrUqY1/yokpt7LOE8vWyrWrhQuzGo4YajdTH8MqnrLv7BWY2u+PqVwG7pV+fBJwPfMTd57Qtcy2wspmt5O5PuPuD6fXTgBVJ+v4QIySmKevufh2AWd/30zsC/3T3m9NlTyF5Tv9e9vgUyCWYzjA+873nsuDYPWsaTX+P3nkBq2ywa6blqtRtX3KFcalKXfuSdxtH3bIG92VLH+exXww+YNTM13xv2CGJSB4dYdz9+Zj9teJBZG/SfbPBB7FUaI9Ua8p6WGuZ2aVt3x/v7scPuM867j4fwN3nm9nMLsu8Fpjj7k+0rjCzc0jC6G+Anw057jbBA3mR5ySPDYDb276/A8gzvaYwBfKcqm7Js05Vj6klHyVZQjuUF9wVxmXcdAvjoVvyUJYtfTzzsgt+8daByyi0i4wf9+fDMzMumyG0Q7jgroO75bA0+GHWF7p7z32dizCzLYHPAXu1X+/ue5vZysAPgZcA5w7/aKU05H2fEzP7HbBul5s+7u6/yrD+bm+6K5n6oEAesVHYb3wUWvIsYmzbRZomhmY8q8sW/A6A7Z62S7B1ZgntkC24a9q61Kruaes9pqrX05JXT217xdxhWRTnPbvbzNZL2/H1gAWtG8xsFnAacLC739R5R3d/3MxOJ5miHSCQQ9VT1t192E/u7wA2bPt+FjBvyHVmokBeQBUt+SiEcZkoa/hvTVtXOy51qGva+qAwHlNL3grjdVHbLtJHpEd672b5weZuuAGembEmD/XYWdt2Qy15c5xOctC2Y9J/fwVgZjOAM4GPuvtFrYXNbFVgtTTATwP2Bcb5HLx/AzYzs42BO4E3Am+q4oF1lPUIFQ3jdZwCLUsYn/neQB+0lSDG1roV3Pf8qve8iEg9OsP4nH9dWNNI+svatouUpo5g3MQwHrmswX3sLV0W9jKAmf0YuBjY3MzuMLO3kQTxPc3sRmDP9HuA9wCbAkea2RXpZSYwHTjdzK4CriRp1I8L84Q4kZ327NVmdgewE3Bmut88Zra+mZ0F4O5LSJ6rc4DrgFPdvZJwpYa8oLqOuB4TNePlWOXQzw5cJmsoV8suRVTdkjdpqrqIRCpjGI9h2nrXMF5DS57JDTfUPYL4OVjFU9bd/cAeN+3RZdmjgaN7LP+8YIOaJKqjrJ9GMmW/8/p5JDMDWt+fBZxV4dAABfLoDDtVvaqDuymMl+PROy/g0S5HWi8qS3BXaJc65QnjdU9b7zVVfc6/Lgy6L3kIsTb3Mmaq2pdczXg5FMYz8jIO6tZwcZ32LHYK5BFp0n7jeY3Lwd2GHUcd1LZLN1W05E1qxuvebzwPhXGR/upqyRXGRaQb7UM+hNvXe3mwdYUM42XvS652vHwLP/OiuocwifZfl5CKhvE6grHCuEjEGtSODxRLCI5lHE3hJEdZD3lpvFZDHvIyuhTII9CkZnyYMK6Du8X7+CJVGsVmPIYgHMMYRCYpMzAPse6q2+pGteOSk8PSpWEvIyGeg7rFToF8SMO25OMSxqW3XmE8xpZc09bHS6zBuarGWs24SMQa1IznCuN1t9N1P34TqSHvQg15HgrkIyr0tPVQYVwtef2PWZTCuIQQa8gPQaFYpIfQ4XlUw3jdFMYLUkPenQJ5VgrkARRtyZvUjkt4CuPSBCEDdJPCuNpxkUgFDONlh+XC668jGCuMi9Sm1EBuZnPN7Or0BPSXdtx2uJm5ma3V474nmNkCM7umzDHWpYowHqol11T18LKG8RimrdcdxrUdGQ2hw3iZgXmYdVcdjhXGs9O2pGYNarVDUDM+RtzxpUuDXppPU9bzqKIh393dt3X3HVpXmNmGwJ7AbX3udyKwT8ljq0WTmvEywrimrUsB2o7UaNgwrWa8HArjhWhb0mQlhPpGBecyKIyHsWxp2MtIUCDPqq4p618BPkzy8UlX7n4BcG9lIxpS1mnrVYfxYVpyNePlyBv662zJ627HBxi57cgoKjOMhw7PCuNjS9uSqgwTqBvUsAcJ+QrKzeHah3wyR0dZz67sQO7Ab83sMjM7DMDMXgnc6e5XhngAMzvMzC41s0vvueeeEKsszbg34+3GtSVvUgMfURjXdiQCTWq5iwgZxssOywrjhZW6LdF2pEQlh/GQLXmjGneF/nDUkHfQlPU8yg7kO7v79sDLgHeb2a7Ax4GjQj2Aux/v7ju4+w5rr712qNUWMuwp0MqStyVXM16OYcJ41S15RGEcxmw7MkqqCPFNarWldqVuS7QdKcm4NePtygzMCuMi0Sg1kLv7vPTfBcBpwIuBjYErzWwuMAu43MzWLXMcMWhSO16VcWrJ1YwXp+1IMzWpUS8j1JfVYqsdL07bkkjkCdgVhvFhw7Sa8THmDkuXhL2MBDXkWZUWyM1supmt1voa2Av4m7vPdPfZ7j4buAPY3t3vKmscVevWkjcpjKsdD09hvLhx3Y7EKmvIrjqMDxOom9SwK4wXp22JlKnUMB46PCuMB+foKOuTacp6HmU25OsAF5rZlcAlwJnufnavhc1sfTM7q+37HwMXA5ub2R1m9rYSx1qaWMJ4lmnrdYTxcWrJh1X2tPXYwnhK25GGGfdmvF3IAK0wPjRtS2KSpflu0FT1xlAYL4c7LFsS9jISFMizmlbWit39ZmCbAcvMbvt6HrBv2/cHljW2st2+3svZcP6Z0YTxLNSMlyO2UN8047wdidWVL1+Nbc58qO5hDE3N+HjRtqRhagrj7s/H7K+571O6G26AZz6z/McRkVrUddqzkXf7ei9n3qy9mDdrr7qHslyvllxhvBxlhPGyWvJI23FpmDrb8TwBW2FcJAK9QneDmnHtNy7LaR/yDjrtWR6lNeTypKyhfP07flvySCaLIYzPfO+5LDh2z7qH0dWjd17AKhvsWuh+TaEwLnl1a8mbNFW9SnP+dSHbPW2Xuoch0gwRhPGsLbnCuCznjo9EiA5ttKeZh6RAHpEqgvujs69llblbFr6/DFZ2GF/4mRex1pF/CrIuhXEJIZYwftmC3/HcmS8duExTqB2XsRJBGM+qljBedNq6wngFfIT2+w6ldVA3yUKBvIFCBfcY2vGWUWnJ1YzLuIkljGdRVxgv0pIrjMtY2HpruOqqukcxSb+WXM24TNI67Zm0USDPQ4F8hPUM7rPSf9P3h3t/6rFKxiPxUBiXYcUaxHu15GrGRSLVoGa8dnlacoVxkcZQIBfO+cRTBi5TRWhvekteZTsectq6yKiLIYxnbckVxkXi1ah2XKrjji9dXPcoIqSGPCsFcskkS2iH8W3bNVVdJE4xhPGsFMZF4tE5bT2aMJ6lJVc7XjEF8sk0ZT0PBXIJahyDe11hvEhLrjAu4yDLwd3qoCOuizRTNGE8C4Xx6rkO6tbdaJ+qLCQFcqlFz+D+iYkNUUxvXrtNW1czLhKnJjXjoHZcJEaNCuKgMC7SUArkErUsb1LrCu0xhPGsLbnCuEi8FMZFJJdu09YVxmukKeuTacp6Hgrk0nhZ38yGCO55ToEWC4VxkXh0TltXGBeRoSmM18sdFMi7UCDPSoFcxkbItj2GdlxEmk1hXEQKy3MKNCmV6yjrXaghz0OBXKRNlW17KP2mrasdF4mPgriIBKFmPBKOL1tU9yAipIO6ZaVALlJAE4K7wriIiIiISNwUyEVKVNVB6TpbcoVxERERkQpoH/IuNGU9DwVykZqFbtsVxkVERESq4vhSTVmfSIE8DwVykYbQfqciIiIikXEF8u4UyLOaUvcARERERERERMaRGnIREREREZFCdNqzyTRlPQ8FchERERERkQLcl2nKelc67VlWCuQiIiIiIiKFOL7siboHERk15HkokIuIiIiIiBShg7r1oECelQ7qJiIiIiIiIlIDNeQiIiIiIiJFqCHvQlPW81AgFxERERERKWQZvlT7kE+kQJ6HArmIiIiIiEgB7q5A3pUCeVbah1xERERERESkBmrIRURERERECtGU9ckcnYc8OwVyERERERGRIjRlvQdNWc9KgVxERERERKQIV0M+mQ7qlof2IRcRERERESkkachDXgYxsxPMbIGZXdN23Zpmdq6Z3Zj+u0Z6/Z5mdpmZXZ3++5L0+lXM7Ewzu97MrjWzY0I+J0kgD3kpzsxen/6My8xshz7LzU2fpyvM7NKhHjSHkWrIL7vssoVmdiuwFrCw7vEQxzhiGANoHLGNAcofx9NLXHdptB3pKYZxxDAG0Dg6aVvSoW07AnH8P8UwBtA4OsUwjhjGANqO5HUi8HXg+23XHQGc5+7HmNkR6fcfIXleX+Hu88zsOcA5wAbpfb7o7n8wsxWB88zsZe7+m8p+iupcA7wG+FaGZXd390pfEyMVyN19bQAzu9Tde376UZUYxhHDGDSO+MYQ0zhio+1IvOOIYQwaR7zjiElrOwJxPD8xjEHjiHMcMYwhpnEU4b6MZUsfr/gx/QIzm91x9auA3dKvTwLOBz7i7nPalrkWWNnMVnL3R4E/pOtbZGaXA7PCjTKeg7q5+3UAZlb3ULoaqUAuIiIiIiJSlceWPnLOFfdetFbg1a7cMWX6eHc/fsB91nH3+QDuPt/MZnZZ5rXAHHefMC/ezGYArwC+NsSY2zxwDvw6huckLwd+a2YOfKuE9XelQC4iIiIiIlKAu+9T9xiyMLMtgc8Be3VcPw34MXCsu98c4rHqeE7M7HfAul1u+ri7/yrjanZOp/bPBM41s+vd/YJwo+xuVAN5JZ9mZBDDOGIYA2gc7WIYA8QzjljF8vxoHE+KYQygcXSKZRyxiuH5iWEMoHF0imEcMYwB4hlHk91tZuul7fh6wILWDWY2CzgNONjdb+q43/HAje7+1eqGGp67vzTAOual/y4ws9OAHYHSA7m5e9mPISIiIiIiIoGk+5Cf4e7PSb//AvCvtoO6renuH06no/8R+LS7/7xjHUcDzwZe7+7x7PRdEjM7Hzjc3ScdQd3MpgNT3P2h9OtzSZ6zs0sflwK5iIiIiIhIM5jZj0kO4LYWcDfwCeCXwKnARsBtJCH7XjP7L+CjwI1tq9gLWBG4HbgeaO1T/nV3/04FP0KlzOzVwP8CawP3A1e4+95mtj7wHXff18yeQTKLAJJZ5D9y989WMj4FchEREREREZHqTal7AEWZ2fvM7Jr0JO/v73L7U83s12Z2ZbrMW2saxxpmdpqZXWVml6Tn/wvxuCeY2QIzu6btujXN7FwzuzH9d40e993HzP5hZv9Mp7TUNY5J9616HGa2oZn9wcyuS/8P31fDGFZOfzdav6ufKjqGYcbRtuxUM5tjZmcMM46m0Lak/m2JtiPBxqFtSU20Hal/OxJgHCO1LdF2RKQ5GhnI0z8g/06yo/02wH5mtlnHYu8G/u7u25BM6fiSJSe9r3ocHyOZFrE1cDDBTifAiUDnEQyPAM5z982A89LvO8c8Ffg/4GXAFsCBZrZF1ePoc9+qx7EE+KC7Pxt4AfDuIZ6PomN4AnhJ+ru6LbCPmb2g4BiGGUfL+4Drhnj8xtC2BIhjW1JoDH3uW1TRcYTcjgwzDm1LaqDtCBDHdqTwOPrct+px6D3JZGOxHZHx1shATnLwgb+4+6PuvoTkQAWv7ljGgdXMzIBVgXtJNnRVj2MLko0N7n49MNvM1hn2gdND8N/bcfWrgJPSr08C9u9y1x2Bf7r7ze6+CDglvV/V4+h130rH4e7z3f3y9OuHSDb6G1Q8Bnf3h9NvV0gvhfclGeb/xJKjcL4cGLn9h3rQtiSCbYm2I8HGoW1JPbQdiWA7MuQ4Rm5bou2ISHM0NZBfA+xqZk8zs1WAfYENO5b5Oskfp3nA1cD7Sjh6YJZxXAm8BsDMdgSeDswKPI6Wddx9PiQbdWBml2U2IDmAQ8sdDPHGcYhxVCHXOCw5WuV2wF+rHkM6JesKklNUnOvuIceQeRzAV4EPAyN/pM2UtiXdxbAt0XakwDi0LamFtiPdxbAdyTqOKsSwLdF2RCRCjQzk7n4dyYntzwXOJvkD0/lJ897AFcD6JFNuvm5mq9cwjmOANdIN238Cc7osUyXrct3YH9nPzFYFfg68390frPrx3X2pu29L8sZoRwu0X18eZrYfsMDdL6v6seuibclQtC3pUPd2BLQtqYO2I0PRdqSLurcl2o6IVKuRgRzA3b/r7tu7+64kU2Fu7FjkrcAv0qk3/wRuAZ5V9Tjc/UF3f2u6YTuY5HD7t4QeR+puM1sPIP13QZdl7mDiJ+azSD6xr3ocVcg0DjNbgeQP3w/d/Rd1jKHF3e8Hzifcfmx5xrEz8Eozm0sybfAlZnZy4HFER9uSrmLYlmg7UmAcLdqWVEvbka5i2I5kHUcVYtiWaDsiEqHGBnIzm5n+uxHJ9KsfdyxyG7BHusw6wObAzVWPw8xmtB245e3ABSV+2nk6cEj69SHAr7os8zdgMzPbOB3XG9P7VT2OKgwcR7o/33eB69z9yzWNYW0zm5F+/RTgpSTnhKx0HO7+UXef5e6zSX4vfu/uBwUeR3S0Lekqhm2JtiP5x6FtSU20Hekqhu1I1nFUIYZtibYjIjFy90ZegD8BfyeZkrVHet07gHekX68P/JZkX61rgINqGsdOJJ9QXw/8Algj0OP+GJgPLCb5hPltwNNIDtZyY/rvmm3PxVlt990XuAG4Cfh4jeOYdN+qxwHsQjI97iqS6YRXAPtWPIatSaYNXpX+rh5V1/9J2zp2A84o4zUT20Xbkvq3JdqOBBuHtiU1XbQdqX87EmAcI7Ut0XZEF12aczH3sd9VR0RERERERKRyjZ2yLiIiIiIiItJkCuQiIiIiIiIiNVAgFxEREREREamBArmIiIiIiIhIDRTIRURERERERGqgQD7GzOzhktd/VnrO0xlm9q4C99/NzM4ocL+zzWyDPrfPNrNr8q5XRCbTdkREQtC2RETGlQK5lMbd93X3+4EZQO4/fkWY2VNIzmd5ZxWPJyLl0nZERELQtkREYqVALhOY2bZm9hczu8rMTjOzNdLrzzezz5nZJWZ2g5m9KL1+FTM7NV3+J2b2VzPbIb1trpmtBRwDbGJmV5jZFzo/ZTazr5vZW9Kv9zGz683sQuA1bctMN7MTzOxvZjbHzF7V40fYDTi/y8/1XDO70swuBt7ddv3UdEx/S3+G/0ivn2Jm3zCza83sjPST9dcN8dSKjA1tR7QdEQlB2xJtS0TGgQK5dPo+8BF33xq4GvhE223T3H1H4P1t178LuC9d/jPAc7us8wjgJnff1t0/1OuBzWxl4NvAK4AXAeu23fxx4Pfu/jxgd+ALZja9y2peBpzd5frvAe919506rn8b8EC63ucB/25mG5P84Z0NbAW8Hei8n4j0pu2ItiMiIWhbom2JyMhTIJflzOypwAx3/2N61UnArm2L/CL99zKSPwwAuwCnALj7NcBVQwzhWcAt7n6juztwctttewFHmNkVJJ82rwxs1GUdOwMXtl/R5ef6Qcd6D07X+1fgacBm6c/1U3df5u53AX8Y4ucSGRvajmg7IhKCtiXaloiMi2l1D0Aa5Yn036U8+btjBdazhIkfBq3c9rX3uI8Br3X3f/RaqZk9A7jd3Rd1uW+/9f6nu5/Tsa6X93ocERmKtiMiEoK2JSIyEtSQy3Lu/gBwX2tfLODfgD/2uQskn/weAGBmW5BMp+r0ELBa2/e3AluY2UrpJ8V7pNdfD2xsZpuk3x/Ydp9zgP80M0sfa7suj9N1alh6EJcHzGyX9Ko3d6z3nWa2QrreZ6bTzi4EXpvut7UOyX5gIjKAtiPajoiEoG2JtiUi40IN+XhbxczuaPv+y8AhwHFmtgpwM/DWAev4BnCSmV0FzCGZHvZA+wLu/i8zu8iS03r8xt0/ZGanpsvemN4Pd3/czA4DzjSzhSR/gJ6TruYzwFeBq9I/gHOB/TrGsg/wnz3G+VbgBDN7lOQPXst3SKa6XZ6u9x5gf+DnJH+UrwFuIJk6NuHnEhFA2xHQdkQkBG1LtC0RGUuW7BYjUoyZTQVWSP9wbQKcBzyzyxStssexEnCRu+8QcJ2ruvvDZvY04BJg53TfLREJSNsREQlB2xIRaSI15DKsVYA/pNOrDHhn1X/4ANz9CSDYH77UGWY2A1gR+Iz+8ImURtsREQlB2xIRaRw15CIiIiIiIiI10EHdRERERERERGqgQC4iIiIiIiJSAwVyERERERERkRookIuIiIiIiIjUQIFcREREREREpAb/HxA1SavhOdrjAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig = plt.figure(figsize=(16, 6))\n", "fig.suptitle(\n", " \"Initial Surface Pressure $p$ vs. Averaged Surface Pressure $p_0$\", fontsize=15\n", ")\n", "ax = fig.subplots(1, 3)\n", "\n", "ax[0].tripcolor(\n", " vlon, vlat, voc, p_data, cmap=plt.cm.get_cmap(\"turbo\"), vmin=1022, vmax=1028\n", ")\n", "ax[0].set_title(f\"Initial Surface Pressure $p$\")\n", "ax[0].set_xlabel(\"Longitude / deg\")\n", "ax[0].set_ylabel(\"Latitude / deg\")\n", "\n", "im = ax[1].tripcolor(\n", " dvlon, dvlat, dvoc, p0_sfc, cmap=plt.cm.get_cmap(\"turbo\"), vmin=1022, vmax=1028\n", ")\n", "ax[1].set_title(\"Averaged Surface Pressure $p_0$\")\n", "ax[1].set_xlabel(\"Longitude / deg\")\n", "\n", "im1 = ax[2].tripcolor(\n", " dvlon,\n", " dvlat,\n", " dvoc,\n", " p_data[valid] - p0_sfc,\n", " cmap=plt.cm.get_cmap(\"seismic\"),\n", " vmin=-1.5,\n", " vmax=1.5,\n", ")\n", "ax[2].set_title(\"Difference: $p-p_0$\")\n", "ax[2].set_xlabel(\"Longitude / deg\")\n", "\n", "fig.subplots_adjust(right=0.8)\n", "cbar = fig.add_axes([0.82, 0.12, 0.018, 0.76])\n", "cbar1 = fig.add_axes([0.88, 0.12, 0.018, 0.76])\n", "fig.colorbar(im, cax=cbar)\n", "fig.colorbar(im1, cax=cbar1, label=\"$P\\mathrm{sfc}$ / hPa\")\n", "\n", "plt.show()" ] } ], "metadata": { "jupytext": { "formats": "ipynb,md:myst" }, "kernelspec": { "display_name": "Python 3 (based on the module python3/2022.01)", "language": "python", "name": "python3_2022_01" }, "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.9.9" } }, "nbformat": 4, "nbformat_minor": 4 }