From 85d6c35c068d8e7206255038bf4d4dfabac14bf4 Mon Sep 17 00:00:00 2001 From: nicholasloveday Date: Mon, 13 Jan 2025 14:29:20 +1100 Subject: [PATCH 1/3] labelled dimensions --- tutorials/CRPS_for_Ensembles.ipynb | 38 +++++++++++++++--------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/tutorials/CRPS_for_Ensembles.ipynb b/tutorials/CRPS_for_Ensembles.ipynb index 1fd0515a..8db5e8f0 100644 --- a/tutorials/CRPS_for_Ensembles.ipynb +++ b/tutorials/CRPS_for_Ensembles.ipynb @@ -34,7 +34,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 5, "id": "9859bbe2", "metadata": {}, "outputs": [], @@ -56,7 +56,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 6, "id": "6e5251e4", "metadata": {}, "outputs": [], @@ -75,41 +75,41 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 7, "id": "244c5cf2", "metadata": {}, "outputs": [], "source": [ "# In this example, each ensemble member is given a name 0 to 9\n", "ensemble_forecast = xarray.DataArray(\n", - " [1.2, 2.0, 2.7, 2.9, 3.0, 3.0, 3.1, 3.2, 3.8, 5.0],\n", - " coords=[[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]],\n", - " dims=[\"ensemble_member\"],\n", + " [[1.2, 2.0, 2.7, 2.9, 3.0, 3.0, 3.1, 3.2, 3.8, 5.0]],\n", + " dims=[\"time\", \"ensemble_member\"],\n", + " coords={\"time\": [0], \"ensemble_member\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]},\n", ")\n", "\n", "# The observation is assumed to be 4.5\n", - "obs_array = xarray.DataArray(4.5)" + "obs_array = xarray.DataArray(4.5, dims=[\"time\"], coords={\"time\": [0]})" ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 8, "id": "e2078a9f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 4, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX0AAAE8CAYAAAAsfWGYAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAABPdElEQVR4nO3dd1gU19cH8O+ywC4dpYMIqKAYEBAUkShGUbAQu0ZRAcsvRrARX1sU7CRWNKDGhjHBoFHTLBBE0USxIkZjBUWMSrOAgLCwO+8fhAkrIAsCuzDn8zwk7uydmTPDzuHunTv38hiGYUAIIYQTlOQdACGEkKZDSZ8QQjiEkj4hhHAIJX1CCOEQSvqEEMIhlPQJIYRDKOkTQgiHUNInhBAOoaRPCCEcQkm/mUtMTASPx0NiYqJM5fv06YM+ffo0WjyWlpbw9/dvtO03BR6Ph6CgIHmHUSd79+4Fj8dDenq6vEPhBH9/f2hqaspUlsfjYdmyZY0bUB1Q0q+Digurpp8LFy7IO8Rmpbi4GJs2bYKrqyt0dHQgFAphY2ODoKAg3Lt3jy23bNkyqfOsrq6Otm3bwsfHB1FRUSgpKamybX9//xp/T7GxsU15mJz0rvMvFArlHR6nKcs7gOZoxYoVsLKyqrK8Q4cOTR5L79698ebNG6iqqspU/vfff2/kiGSTm5sLb29vXL16FUOGDMH48eOhqamJu3fvIiYmBjt27IBIJJJaZ9u2bdDU1ERJSQmePHmCuLg4TJ48GeHh4Th69CjMzc2lygsEAuzatavKvh0cHBr12Ei5ms4/n8+XQzSkAiX9ehg4cCBcXFzkHQYAQElJSaaaU1FREdTV1WX+49DY/P39ce3aNRw6dAgjR46Uem/lypX44osvqqwzatQo6Ovrs69DQkIQHR2NSZMmYfTo0VW+aSkrK2PChAmNcwCkVnT+FRM17zSC9PR08Hg8rF+/HpGRkWjXrh3U1dUxYMAAPH78GAzDYOXKlWjTpg3U1NQwdOhQvHjxQmoblpaWGDJkCH7//Xc4OjpCKBSic+fOOHLkiFS56tr0+/TpAzs7O1y9ehW9e/eGuro6Fi9ezL73dpt+cXExli1bBhsbGwiFQpiYmGDEiBFIS0tjy6xfvx49e/aEnp4e1NTU4OzsjEOHDtXr/Fy8eBHHjh3DlClTqiR8oLyGuH79epm25evri6lTp+LixYuIj4+vVzw1iY6ORseOHSEUCuHs7IyzZ89Kvf/o0SPMmDEDHTt2hJqaGvT09DB69Ogq7eqlpaVYvnw5rK2tIRQKoaenhw8//LBKvHfu3MGoUaPQunVrCIVCuLi44Ndff60S199//42+fftCTU0Nbdq0wapVqyCRSGQ+rlOnTqFXr17Q0NCArq4uhg4ditu3b0uVqWhSS01Nhb+/P3R1daGjo4OAgAAUFRXJvK/aVDSZnjt3DsHBwTAwMICGhgaGDx+OnJwcqbJXrlyBl5cX9PX1oaamBisrK0yePFmqjEQiQXh4OD744AMIhUIYGRnh008/xcuXL6XKVVxfiYmJcHFxgZqaGuzt7dnr6MiRI7C3t2d/99euXas2/gcPHsDLywsaGhowNTXFihUrIMvAxU+ePMHkyZNhZGQEgUCADz74AHv27KnDmas/qunXQ15eHnJzc6WW8Xg86OnpSS2Ljo6GSCTCzJkz8eLFC6xduxZjxoxB3759kZiYiAULFiA1NRVff/015s2bV+WXfv/+fYwdOxbTp0+Hn58foqKiMHr0aMTGxqJ///7vjPH58+cYOHAgPvnkE0yYMAFGRkbVlhOLxRgyZAgSEhLwySefYPbs2Xj9+jXi4+Nx8+ZNtG/fHgCwefNmfPzxx/D19YVIJEJMTAxGjx6No0ePYvDgwXU6fxWJbOLEiXVaryYTJ07Ejh078Pvvv1c5L2//nlRUVKCjo1PrNs+cOYMDBw5g1qxZEAgE2Lp1K7y9vXHp0iXY2dkBAC5fvozz58/jk08+QZs2bZCeno5t27ahT58+uHXrFtTV1QGUJ9CwsDBMnToV3bt3R35+Pq5cuYLk5GQ23r///hvu7u4wMzPDwoULoaGhgYMHD2LYsGE4fPgwhg8fDgDIzMzERx99hLKyMrbcjh07oKamJtO5OnnyJAYOHIh27dph2bJlePPmDb7++mu4u7sjOTkZlpaWUuXHjBkDKysrhIWFITk5Gbt27YKhoSG++uormfb39vkHAFVVVWhra0stmzlzJlq1aoXQ0FCkp6cjPDwcQUFBOHDgAAAgOzsbAwYMgIGBARYuXAhdXV2kp6dXqQR9+umn2Lt3LwICAjBr1iw8fPgQERERuHbtGs6dOwcVFRW2bGpqKsaPH49PP/0UEyZMwPr16+Hj44Pt27dj8eLFmDFjBgAgLCwMY8aMwd27d6Gk9F89WSwWw9vbGz169MDatWsRGxuL0NBQlJWVYcWKFTWek6ysLPTo0YPtMGBgYIATJ05gypQpyM/Px5w5c2Q6t/XGEJlFRUUxAKr9EQgEbLmHDx8yABgDAwPm1atX7PJFixYxABgHBwemtLSUXT5u3DhGVVWVKS4uZpdZWFgwAJjDhw+zy/Ly8hgTExPGycmJXXb69GkGAHP69Gl2mYeHBwOA2b59e5Vj8PDwYDw8PNjXe/bsYQAwGzdurFJWIpGw/y4qKpJ6TyQSMXZ2dkzfvn2llltYWDB+fn5VtlXZ8OHDGQDMy5cv31muQmhoKAOAycnJqfb9ly9fMgCY4cOHs8v8/Pyq/T1VPvaaVJS9cuUKu+zRo0eMUCiU2sfb54RhGCYpKYkBwOzbt49d5uDgwAwePPid++zXrx9jb28v9RmQSCRMz549GWtra3bZnDlzGADMxYsX2WXZ2dmMjo4OA4B5+PDhO/fj6OjIGBoaMs+fP2eXXb9+nVFSUmImTZrELqs455MnT5Zaf/jw4Yyent4798EwNZ9/AIyXlxdbruKa8vT0lPq8zZ07l+Hz+ez189NPPzEAmMuXL9e4zz/++IMBwERHR0stj42NrbK84vo6f/48uywuLo4BwKipqTGPHj1il3/zzTdVrrGK45s5cya7TCKRMIMHD2ZUVVWlPqsAmNDQUPb1lClTGBMTEyY3N1cqzk8++YTR0dGp9nPVkKh5px4iIyMRHx8v9XPixIkq5UaPHi1Vq3R1dQUATJgwAcrKylLLRSIRnjx5IrW+qakpW8MDAG1tbUyaNAnXrl1DZmbmO2MUCAQICAio9VgOHz4MfX19zJw5s8p7PB6P/XflmuTLly+Rl5eHXr16ITk5udZ9vC0/Px8AoKWlVed1q1PRde7169dSy4VCYZXf04YNG2TappubG5ydndnXbdu2xdChQxEXFwexWAxA+pyUlpbi+fPn6NChA3R1daXOi66uLv7++2/cv3+/2n29ePECp06dwpgxY/D69Wvk5uYiNzcXz58/h5eXF+7fv89+No4fP44ePXqge/fu7PoGBgbw9fWt9ZiePXuGlJQU+Pv7o3Xr1uzyLl26oH///jh+/HiVdaZPny71ulevXnj+/Dn7O3yX6s5/fHw8vvzyyypl//e//0l93nr16gWxWIxHjx4BKD+HAHD06FGUlpZWu78ff/wROjo66N+/P3sOc3Nz4ezsDE1NTZw+fVqqfOfOneHm5sa+rrg++/bti7Zt21ZZ/uDBgyr7rNy1t6LmLhKJcPLkyWpjZBgGhw8fho+PDxiGkYrTy8sLeXl59bqm6oKad+qhe/fuMt3IrfzBAcD+AXi7l0nF8rfbHTt06CB1IQCAjY0NgPL7BsbGxjXu28zMTKabtmlpaejYsaPUH6HqHD16FKtWrUJKSopUF8m345NFxVf7169fsxfz+ygoKABQ9Y8In8+Hp6dnvbZpbW1dZZmNjQ2KioqQk5MDY2NjvHnzBmFhYYiKisKTJ0+k2nLz8vLYf69YsQJDhw6FjY0N7Ozs4O3tjYkTJ6JLly4AypsZGIbB0qVLsXTp0mrjyc7OhpmZGR49esQmoco6duxY6zFVJNDqytra2iIuLg6FhYXQ0NBgl7/9GW7VqhWA8s/q2000b6vL+X/XfgDAw8MDI0eOxPLly7Fp0yb06dMHw4YNw/jx4yEQCACUN4fm5eXB0NCw2n1kZ2e/c591vT6VlJTQrl07qWWVr8/q5OTk4NWrV9ixYwd27NghU5wNjZJ+I6qpa1pNy5kGnLlS1jZeWfzxxx/4+OOP0bt3b2zduhUmJiZQUVFBVFQU9u/fX+ftderUCQBw48YN9OrV673ju3nzJoCm7zI7c+ZMREVFYc6cOXBzc4OOjg54PB4++eQTqRurvXv3RlpaGn755Rf8/vvv2LVrFzZt2oTt27dj6tSpbNl58+bBy8ur2n3Jozsw0DSfVVn2w+PxcOjQIVy4cAG//fYb2113w4YNuHDhAjQ1NSGRSGBoaIjo6Ohqt2VgYCDTPhvzmCt+1xMmTICfn1+1ZSoqA42Fkr4Cq6gBVq5NVzy09PYNt/pq3749Ll68iNLSUqmbXJUdPnwYQqEQcXFxbK0KAKKiouq1Tx8fH4SFheH7779vkKT/3XffAUCNCbM+qmuKuXfvHtTV1dnkcejQIfj5+Uk1GRUXF+PVq1dV1m3dujUCAgIQEBCAgoIC9O7dG8uWLcPUqVPZ2qKKikqtNWMLC4tqY7t7926tx2RhYVFj2Tt37kBfX1+qlq+IevTogR49emD16tXYv38/fH19ERMTg6lTp6J9+/Y4efIk3N3dG7TSUxOJRIIHDx6wtXug9uvTwMAAWlpaEIvF9f4W+r6oTV+BPX36FD/99BP7Oj8/H/v27YOjo+M7m3bqYuTIkcjNzUVERESV9ypqNnw+Hzwej23LBsq/vv7888/12qebmxu8vb2xa9euarchEokwb948mba1f/9+7Nq1C25ubujXr1+94qlOUlKSVNvq48eP8csvv2DAgAFsTZDP51ep/X399ddS5wko70lVmaamJjp06MA2kxkaGqJPnz745ptv8OzZsyqxVO66OGjQIFy4cAGXLl2Ser+m2m1lJiYmcHR0xLfffiv1h+nmzZv4/fffMWjQoFq3IS8vX76scq4dHR0BgD2PY8aMgVgsxsqVK6usX1ZWVu0f4/dV+bphGAYRERFQUVGp8bPI5/MxcuRIHD58mP2GWtnb3VQbA9X06+HEiRO4c+dOleU9e/as0sb3PmxsbDBlyhRcvnwZRkZG2LNnD7Kysupdw67OpEmTsG/fPgQHB+PSpUvo1asXCgsLcfLkScyYMQNDhw7F4MGDsXHjRnh7e2P8+PHIzs5GZGQkOnTogL/++qte+923bx8GDBiAESNGwMfHB/369YOGhgbu37+PmJgYPHv2rEpf/UOHDkFTU5O96R0XF4dz587BwcEBP/74Y0OcDpadnR28vLykumwCwPLly9kyQ4YMwXfffQcdHR107twZSUlJOHnyZJWuu507d0afPn3g7OyM1q1b48qVKzh06JDUTcDIyEh8+OGHsLe3x7Rp09CuXTtkZWUhKSkJ//zzD65fvw4AmD9/Pr777jt4e3tj9uzZbJdNCwsLmX4X69atw8CBA+Hm5oYpU6awXTZ1dHQafHyYsrIyfP/999W+N3z48Dp9q/j222+xdetWDB8+HO3bt8fr16+xc+dOaGtrs3+sPDw88OmnnyIsLAwpKSkYMGAAVFRUcP/+ffz444/YvHkzRo0a1SDHBpTfqI6NjYWfnx9cXV1x4sQJHDt2DIsXL67SlFTZl19+idOnT8PV1RXTpk1D586d8eLFCyQnJ+PkyZNVntlpcI3aN6iFeVeXTQBMVFQUwzD/ddlct26d1PoV3St//PHHardbuTuahYUFM3jwYCYuLo7p0qULIxAImE6dOlVZt6Yumx988EG1x/B2l02GKe96+MUXXzBWVlaMiooKY2xszIwaNYpJS0tjy+zevZuxtrZm44iKimK79VUmS5fNyvtdv349061bN0ZTU5NRVVVlrK2tmZkzZzKpqalsuYr9VPwIhUKmTZs2zJAhQ5g9e/ZIdXOs4Ofnx2hoaMgUx9sAMIGBgcz333/PHrOTk5PUOWaY8q6iAQEBjL6+PqOpqcl4eXkxd+7cqXIOVq1axXTv3p3R1dVl1NTUmE6dOjGrV69mRCKR1PbS0tKYSZMmMcbGxoyKigpjZmbGDBkyhDl06JBUub/++ovx8PBghEIhY2ZmxqxcuZLZvXu3TF02GYZhTp48ybi7uzNqamqMtrY24+Pjw9y6dUuqTE3dZCs+q7Xt511dNiuvX91nn2Gqfq6Tk5OZcePGMW3btmUEAgFjaGjIDBkyRKpbbYUdO3Ywzs7OjJqaGqOlpcXY29sz8+fPZ54+fcqWqbi+3lbxu6+suuu54vOVlpbGDBgwgFFXV2eMjIyY0NBQRiwWV9lm5S6bDMMwWVlZTGBgIGNubs5ec/369WN27NjxzvPaEHj/BkUUjKWlJezs7HD06FF5h0IIaUGoTZ8QQjiEkj4hhHAIJX1CCOEQatMnhBAOoZo+IYRwCCV9QgjhEM49nCWRSPD06VNoaWnVa7AwQghRNAzD4PXr1zA1NZUa8786nEv6T58+rTKKHiGEtASPHz9GmzZt3lmGc0m/Yvjdx48f1zo0LCGENAf5+fkwNzeXaY4KziX9iiYdbW1tSvqEkBZFliZrupFLCCEcQkmfEEI4hJI+IYRwiFzb9M+ePYt169bh6tWrePbsGX766ScMGzbsneskJiYiODgYf//9N8zNzbFkyRL4+/s3aFwMw6CsrKzKZBiE1IbP50NZWZm6AxOFJdekX1hYCAcHB0yePBkjRoyotfzDhw8xePBgTJ8+HdHR0UhISMDUqVNhYmLSYFPliUQiPHv2DEVFRQ2yPcI96urqMDExkWliekKamsKMvcPj8Wqt6S9YsADHjh2Tmmbsk08+watXrxAbGyvTfvLz86Gjo4O8vLwqvXckEgnu378PPp8PAwMDqKqqUo2NyIxhGIhEIuTk5EAsFsPa2rrWB2UIaQjvymtva1ZdNpOSkqpMJuzl5YU5c+bUuE5JSQk7hyZQfnJqIhKJIJFIYG5uDnV19feOl3CPmpoaVFRU8OjRI4hEIgiFQnmHVKPiUjFm/nANj1803LfawKKtsCu73WDb4yrx0K3o4ODeKNtuVkk/MzMTRkZGUsuMjIyQn5+PN2/eQE1Nrco6YWFhUvOayoJqZ+R9NJfPz1//5CH+VlaDbU8PefARnmiw7XFZ7N2/KenX16JFixAcHMy+rnhyjRCuE0vKW3Y1eCX4UCX9vbfXCnnl22WUEMGbWG0ljNSOr8zHIPeGuUdZnWaV9I2NjZGVJV0zycrKgra2do0fMIFAAIFA0BThEdKsMChP+iqQwJT/+r23p8uUN52KeXz4z10JHR2d994maXjN43vov9zc3JCQkCC1LD4+Hm5ubnKKqPmxtLREeHi4vMNoMImJieDxeHj16pW8Q+E8PiQAADGUwOfz5RwNqYlck35BQQFSUlKQkpICoLxLZkpKCjIyMgCUN81MmjSJLT99+nQ8ePAA8+fPx507d7B161YcPHgQc+fOlUf4Cufx48eYPHkyTE1NoaqqCgsLC8yePRvPnz+Xd2gNok+fPlVu2vfs2RPPnj2jWmV9NHC/PaV/k74ESs3mvgYXyfU3c+XKFTg5OcHJyQkAEBwcDCcnJ4SEhAAAnj17xv4BAAArKyscO3YM8fHxcHBwwIYNG7Br164G66PfnD148AAuLi64f/8+fvjhB6SmpmL79u1ISEiAm5sbXrx4IZe4xGIxJBJJo21fVVUVxsbG1LVWAVSu6VPSV1xy/c306dMHDMNU+dm7dy8AYO/evUhMTKyyzrVr11BSUoK0tLQGfxr3bQzDoEhUJpefujxCERgYCFVVVfz+++/w8PBA27ZtMXDgQJw8eRJPnjzBF198wZZ9/fo1xo0bBw0NDZiZmSEyMlLqeJctW4a2bdtCIBDA1NQUs2bNYt8vKSnBvHnzYGZmBg0NDbi6ukr9jvbu3QtdXV38+uuv6Ny5MwQCAXbt2gWhUFilCWb27Nno27cvAOD58+cYN24czMzMoK6uDnt7e/zwww9sWX9/f5w5cwabN28Gj8cDj8dDenp6tc07hw8fxgcffACBQABLS0ts2LBBar+WlpZYs2YNJk+eDC0tLbRt2xY7duyQ+Vy3FEw1/3ofSih/gl0CPjXvKLBmdSNXHt6UitE5JE4u+761wgvqqrX/il68eIG4uDisXr26yg1tY2Nj+Pr64sCBA9i6dSsAYN26dVi8eDGWL1+OuLg4zJ49GzY2Nujfvz8OHz6MTZs2ISYmBh988AEyMzNx/fp1dntBQUG4desWYmJiYGpqip9++gne3t64ceMGrK2tAQBFRUX46quvsGvXLujp6aFNmzYICQnB4cOHMWXKFADl3wAOHDiA1atXAwCKi4vh7OyMBQsWQFtbG8eOHcPEiRPRvn17dO/eHZs3b8a9e/dgZ2eHFStWAAAMDAyQnp4udbxXr17FmDFjsGzZMowdOxbnz5/HjBkzoKenJ1VB2LBhA1auXInFixfj0KFD+Oyzz+Dh4YGOHTvW7ZdEWFTTbx4o6bcA9+/fB8MwsLW1rfZ9W1tbvHz5Ejk5OQAAd3d3LFy4EABgY2ODc+fOYdOmTejfvz8yMjJgbGwMT09PqKiooG3btujevTsAICMjA1FRUcjIyICpqSkAYN68eYiNjUVUVBTWrFkDACgtLcXWrVvh4ODAxvDJJ59g//79bNJPSEjAq1evMHLkSACAmZkZ5s2bx5afOXMm4uLicPDgQXTv3h06OjpQVVWFuro6jI2NazwXGzduRL9+/bB06VL2+G7duoV169ZJJf1BgwZhxowZAMqf9N60aRNOnz7NqaRf8UWyoRrGqE2/eaCkXws1FT5urZDPPQM1lbp9RZa1Oejt3k5ubm5sj57Ro0cjPDwc7dq1g7e3NwYNGgQfHx8oKyvjxo0bEIvFsLGxkVq/pKQEenp67GtVVVV06dJFqoyvry969OiBp0+fwtTUFNHR0Rg8eDB0dXUBlNf816xZg4MHD+LJkycQiUQoKSmp85PRt2/fxtChQ6WWubu7Izw8HGKxmG12qBwfj8eDsbExsrOz67QvIo1fKenTPRbFRUm/FjweT6YmFnnq0KEDeDwebt++jeHDh1d5//bt22jVqhUMDAxq3Za5uTnu3r2LkydPIj4+HjNmzMC6detw5swZFBQUgM/n4+rVq1XabDU1Ndl/q6mpVbnou3Xrhvbt2yMmJgafffYZfvrpJ/beDVDe5LR582aEh4fD3t4eGhoamDNnDkQiUR3PhmxUVFSkXvN4vEa94ayImAbuvvNfTZ/a8xWZYmczIhM9PT30798fW7duxdy5c6Xa9TMzMxEdHY1JkyaxifjChQtS61+4cEGqaUhNTQ0+Pj7w8fFBYGAgOnXqhBs3bsDJyQlisRjZ2dno1atXneP09fVFdHQ02rRpAyUlJQwePJh979y5cxg6dCgmTJgAoHzwu3v37qFz585sGVVV1VqHu7a1tcW5c+eklp07dw42NjZ0c7GRsUmfR007iox+Oy1EREQESkpK4OXlhbNnz+Lx48eIjY1F//79YWZmxt4wBcqT4Nq1a3Hv3j1ERkbixx9/xOzZswGU977ZvXs3bt68iQcPHuD777+HmpoaLCwsYGNjA19fX0yaNAlHjhzBw4cPcenSJYSFheHYsWO1xujr64vk5GSsXr0ao0aNknpS2traGvHx8Th//jxu376NTz/9tMrT15aWlrh48SLS09ORm5tbbc38888/R0JCAlauXIl79+7h22+/RUREhNT9AlKuodv0+ZV67xDFRUm/hbC2tsaVK1fQrl07jBkzBu3bt8f//vc/fPTRR0hKSkLr1q3Zsp9//jn7jMSqVauwceNG9lkHXV1d7Ny5E+7u7ujSpQtOnjyJ3377jW2zj4qKwqRJk/D555+jY8eOGDZsGC5fvoy2bdvWGmOHDh3QvXt3/PXXX/D19ZV6b8mSJejatSu8vLzQp08fGBsbVxlme968eeDz+ejcuTMMDAyknuGo0LVrVxw8eBAxMTGws7NDSEgIVqxY0ehde0nlmj4lfUWmMOPpN5V3jTtdXFyMhw8fwsrKSqGHxCWKrbl8js7cy4HfnktozSvCUOGt995eF+YWhiMW6fx2sFx6rQEiJLKqy3j6VNMnhDQIquk3D5T0CeGoii/5DdemX5H0qX+IIqOkTwhpEBXDMDBU01dolPQJ4aiGHnunoqZPSV+xUdInhDSIijZ9RomadxQZ/XYIURS5qcBvs4A3r5pkd91KynBCtQjKkECbKXnv7Wng3wnWqaav0CjpE6Iobv8KPDpXe7kGognAthG+6xeoGjb8RkmDoaRPiKIQl48zdBftcBFOjb67HIkGksvMoINizPqw5pFL60LCF8CsC01qpMgo6ROiKMSlAIA8aOMhz6LRd/cYOjgnsYa+UhE6DRrd6PsjioFu5BKiKCTlSV/cxJclDYLMLZT0Wwh/f392GsHKP6mpqfIOrV4qpl3kFHEZgPLx6AlpLNS804J4e3sjKipKapksY+i/TSQSQVVVtaHCIrJia/pN0/ulofvpk+aBqhS1YRhAVCifnzqOhScQCGBsbCz1w+fzcebMGXTv3h0CgQAmJiZYuHAhysrK2PX69OmDoKAgzJkzB/r6+uyImzdv3sTAgQOhqakJIyMjTJw4Ebm5uex6EokEa9euRYcOHSAQCNC2bVupIZwXLFgAGxsbqKuro127dli6dClKS0vZ969fv46PPvoIWlpa0NbWhrOzM65cuYLExEQEBAQgLy+P/caybNmyev4Cm5F/2/Sppk8aE9X0a1NaBKwxlc++Fz8FVDXeaxNPnjzBoEGD4O/vj3379uHOnTuYNm0ahEKhVCL99ttv8dlnn7ETkLx69Qp9+/bF1KlTsWnTJrx58wYLFizAmDFjcOrUKQDAokWLsHPnTmzatAkffvghnj17hjt37rDb1NLSwt69e2FqaoobN25g2rRp0NLSwvz58wGUj6/v5OSEbdu2gc/nIyUlBSoqKujZsyfCw8MREhKCu3fvApCemavFklebPjXqcwol/Rbk6NGjUslx4MCBsLGxgbm5OSIiIsDj8dCpUyc8ffoUCxYsQEhICDuBtbW1NdauXcuuu2rVKjg5ObGTnQPAnj17YG5ujnv37sHExASbN29GREQE/Pz8AADt27fHhx9+yJZfsmQJ+29LS0vMmzcPMTExbNLPyMjA//3f/6FTp05sDBV0dHTYuWs5g9r0SROgpF8bFfXyGre89l0HH330EbZt28a+1tDQQGBgINzc3KTmrHV3d0dBQQH++ecfdvITZ2dnqW1dv34dp0+frraGnZaWhlevXqGkpAT9+vWrMZ4DBw5gy5YtSEtLQ0FBAcrKyqTG+g4ODsbUqVPx3XffwdPTE6NHj0b79u3rdMwtSpO36VMVn4so6deGx3vvJpamoqGhgQ4dOtR73coKCgrg4+ODr776qkpZExMTPHjw4J3bS0pKgq+vL5YvXw4vLy/o6OggJiYGGzZsYMssW7YM48ePx7Fjx3DixAmEhoYiJiam2sndOUFCNX3S+Cjpt3C2trY4fPgwGIZha/vnzp2DlpYW2rRpU+N6Xbt2xeHDh2FpaQll5aofE2tra6ipqSEhIQFTp06t8v758+dhYWGBL774gl326NGjKuVsbGxgY2ODuXPnYty4cYiKisLw4cNlmgS9xfm3eYf66ZPGRFWKFm7GjBl4/PgxZs6ciTt37uCXX35BaGgogoOD2fb86gQGBuLFixcYN24cLl++jLS0NMTFxSEgIABisRhCoRALFizA/PnzsW/fPqSlpeHChQvYvXs3gPI/ChkZGYiJiUFaWhq2bNmCn376id3+mzdvEBQUhMTERDx69Ajnzp3D5cuXYWtrC6D8HkBBQQESEhKQm5uLoqKixj1RikBCvXdI46NPVwtnZmaG48eP49KlS3BwcMD06dMxZcoUqZus1TE1NcW5c+cgFosxYMAA2NvbY86cOdDV1WX/WCxduhSff/45QkJCYGtri7FjxyI7OxsA8PHHH2Pu3LkICgqCo6Mjzp8/j6VLl7Lb5/P5eP78OSZNmgQbGxuMGTMGAwcOxPLlywEAPXv2xPTp0zF27FgYGBhI3WRuscTy6b1DuIUmRq+kuUxoTRRbvT9He4cA6X/gEAbjb17HxgvwX4/Eujgl6gAjfiEurh7T6PsjjYcmRiekOZJTTZ/a9LmFkj4hiqKJ2/Q59RWfsOSe9CMjI2FpaQmhUAhXV1dcunTpneXDw8PRsWNHqKmpwdzcHHPnzkVxcXETRUtII5LXMAxU1ecUuSb9AwcOIDg4GKGhoUhOToaDgwO8vLzYm4Fv279/PxYuXIjQ0FDcvn0bu3fvxoEDB7B48eImjpyQRiCRT5dNwi1y/XRt3LgR06ZNQ0BAADp37ozt27dDXV0de/bsqbb8+fPn4e7ujvHjx8PS0hIDBgzAuHHjav12QEizIKeaPlX0uUVuD2eJRCJcvXoVixYtYpcpKSnB09MTSUlJ1a7Ts2dPfP/997h06RK6d++OBw8e4Pjx45g4cWKN+ykpKUFJyX+TPufn5zfcQRBuKc4HXj8DGMm7y5VKgNfZwP7FQHGWzJtnXqaDh6YbhoHSPTfJLenn5uZCLBbDyMhIarmRkZHUSI2VjR8/Hrm5ufjwww/BMAzKysowffr0dzbvhIWFsX2/CXkvRc/LR12tjZgpn+/2xX2g4LHMm+cBkICHPGjVP0ZCatGshmFITEzEmjVrsHXrVri6uiI1NRWzZ8/GypUrpR78qWzRokUIDg5mX+fn58Pc3LypQiYtSnl/lwKooxiCGkuVQowCFOFnDIAIr+q0h5fQwWte0yR96r3DTXJL+vr6+uDz+cjKkv76m5WVVeNwukuXLsXEiRPZsV7s7e1RWFiI//3vf/jiiy+qHVZAIBBAIKj5ApVVXl5ekw4FoK6uDh0dnSbbH5HBv88xlkEZItQ8s1gZylAGPv6BKQp5iv87pEYebpFb0ldVVYWzszMSEhIwbNgwAOUzMSUkJCAoKKjadYqKiqokdj6/vP2zMR8szsvLQ0REhNRsU41NWVkZQUFBzTbx37lzB/7+/khJSUGnTp2QkpIi75AaAFPpvy1AizkQUhdy7b0THByMnTt34ttvv8Xt27fx2WefobCwEAEBAQCASZMmSd3o9fHxwbZt2xATE4OHDx8iPj4eS5cuhY+PD5v8G0NRUVGTJnwAKCsra9aDjIWGhkJDQwN3795FQkJCg29fJBJh7dq1cHBwgLq6OvT19eHu7o6oqCh2SsbKk8WrqKjAysoK8+fPr/JcR+WJ5HV0dODu7s7ODgYAOTk5+Oyzz9DWoTcEVq7o5NgD48ePx+XLlxv8uAhpbHJt0x87dixycnIQEhKCzMxMODo6IjY2lr25m5GRIVWzX7JkCXg8HpYsWYInT57AwMAAPj4+UvOyEtmVlpZCRUWlUbadlpaGwYMHw8LCot7bqGmCdpFIBC8vL1y/fh0rV66Eu7s7tLW1ceHCBaxfvx5OTk5wdHQE8N9k8aWlpbh69Sr8/PzA4/GqzBMQFRUFb29v5Obm4osvvsCQIUNw8+ZNtGvXDiNHjoRIJMK3EV+inake7uWIcOrPS3j58mW9j00RUEWfm+T+FEhQUBAePXqEkpISXLx4Ea6urux7iYmJ2Lt3L/taWVkZoaGhSE1NxZs3b5CRkYHIyEjo6uo2feAKJjY2Fh9++CF0dXWhp6eHIUOGIC0tjX0/PT0dPB4PBw4cgIeHB4RCIaKjowEAu3btgq2tLYRCITp16oStW7dKbbu2Cc7fxuPxcPXqVaxYsUJqUvMbN26gb9++UFNTg56eHv73v/+hoKCAXc/f3x/Dhg3D6tWrYWpqio4dqx90LDw8HGfPnkVCQgICAwPh6OiIdu3aYfz48bh48aLUtIsVk8Wbm5tj2LBh8PT0RHx8fJVt6urqwtjYGHZ2dti2bRvevHmD+Ph4vHr1Cn/88Qe++uorfOTuCos2pujq5IiZM2diwIABtf9imgFq0+eWZtV7h9SssLAQwcHB6NKlCwoKChASEoLhw4cjJSVF6tvSwoULsWHDBjg5ObGJPyQkBBEREXBycsK1a9cwbdo0aGhosHPf1jbB+duePXsGT09PeHt7Y968edDU1ERhYSG8vLzg5uaGy5cvIzs7G1OnTkVQUJDUH/aEhARoa2tXm5grREdHw9PTE05OTlXeU1FRqfHby82bN9nJXd5FTU0NQPk3Ck1NTWhqauLnn39Gj/YBEMi9mkTI+6Gk30KMHDlS6vWePXtgYGCAW7duwc7Ojl0+Z84cjBgxgn0dGhqKDRs2sMusrKxw69YtfPPNN2zSr22C87cZGxtDWVkZmpqabE+snTt3ori4GPv27WOnZoyIiGCnZKxo0tPQ0MCuXbuqbdapcP/+ffTp00em81IxWXxZWRlKSkqgpKSEiIiIGssXFRVhyZIl4PP58PDwgLKyMvbu3Ytp06Zh+/Zt6GrXCd16uGPI0OHo3LmzTDEQokgo6bcQ9+/fR0hICC5evIjc3FxIJOVPjWZkZEglfRcXF/bfhYWFSEtLw5QpUzBt2jR2eVlZmVSvodomOJfF7du34eDgIDUXr7u7OyQSCe7evcsmfXt7+3cmfKBuPbUqJosvLCzEpk2boKysXOUPJACMGzcOfD4fb968gYGBAXbv3o0uXboAKP+DOnjwYPzx2/e4cCkZv52+gIht32DdunUYO3aszLEoHmrY4SJK+i2Ej48PLCwssHPnTpiamkIikcDOzg4ikUiqXOWkW9GevnPnTql7KcB/XWFlmeC8Ib09QXt1bGxsanxqu7rtVUwWv2fPHjg4OGD37t2YMmWKVLlNmzbB09MTOjo6MDAwqLIdoVAIz9490d/dGZ/NnY9Z8xZjw4YNzTzpl+NR7ucUaqFsAZ4/f467d+9iyZIl6NevH2xtbWXqWWJkZARTU1M8ePAAHTp0kPqxsrICID3BuYuLC6ytraud4Lw2tra2uH79OgoLC9ll586dg5KSUo03bGsyfvx4nDx5EteuXavyXmlpqdQ+KlNSUsLixYuxZMkSvHnzRuo9Y2NjdOjQodqE/5+Kfvo8WFtbN+sutQD13uEqSvotQKtWraCnp4cdO3YgNTUVp06dkhp64l2WL1+OsLAwbNmyBffu3cONGzcQFRWFjRs3Aqh9gnNZ+fr6QigUws/PDzdv3sTp06cxc+ZMTJw4scr4S7WZM2cO3N3d0a9fP0RGRuL69et48OABDh48iB49euD+/fs1rjt69Gjw+XxERkbKtK/nz5+jb9+++P777/HX33fwMOMJfv3tGLZt2wYvL686xU2IIqCkLwN1dXUoKzdtS5iysjLU1dVlKqukpISYmBhcvXoVdnZ2mDt3LtatWyfTulOnTsWuXbsQFRUFe3t7eHh4YO/evWxNv7YJzmWlrq6OuLg4vHjxAt26dcOoUaPQr1+/d95UrYlAIEB8fDzmz5+Pb775Bj169EC3bt2wZcsWzJo1S+oextsqnnReu3Ztjd8IKtPU1ISrqys2bdoEj+EBsOs7Gl+u24jx48dj1apVdY5dEfGozs8pNDF6Je+a0JrG3iHMs7/AY8TIhh7K3nE7rKysDE+ePMG5c+dk+sMiL2llrXG2tB3MVQrxx0qaGL05q8vE6HQjV0Y6OjqUhDnvvzZ9Qporat4hRFbc+lJMWihK+oTIrGXV9Cv+hFGbPrdQ0idEFkxLSfWE6yjpV4Nj97aJLCp9Jmr7dDSfzw/9GeMiupFbScVAXUVFReygW6QFe/MSeJ2Fuj+m9O5kWVpaCrFYXGXcfoVFj+RyCiX9Svh8PnR1dZGdnQ2gvNskjy6IlutVlmwTnVcihhJKIa72PYZhUFpaihcvXuDRo0cQi6svpyioTZ+bKOm/pWJUyIrET1qwgiygrATFELyz331lYiiBwZua3xeL8ejRI6SmpjZUlIQ0KEr6b+HxeDAxMYGhoeE7JwohLcChVUDmdRzHR3iA+s/wVVlxcbHC1/AJt1HSrwGfz2/UeXeJAijOBgoeQ4RXKOTpyzsaOaImTC6h3juEw6gtG6A2fa6hpE+4i2lZD1sRIgtK+oS7mPLZxbia9Kl+z02U9AmHUdoj3ENJn3AX27zDVeXfcOhRFG6pV9I/ffp0Q8dBiBz893gSIVxRr6Tv7e2N9u3bY9WqVXj8+HFDx0RI02Db9LmN/uRxS72S/pMnTxAUFIRDhw6hXbt28PLywsGDByESiRo6PkIaD1PxP0p7hDvqlfT19fUxd+5cpKSk4OLFi7CxscGMGTNgamqKWbNm4fr16w0dJyGNgJp3CPe8943crl27YtGiRQgKCkJBQQH27NkDZ2dn9OrVC3///XdDxEhI4+D4jVyuHjfX1Tvpl5aW4tChQxg0aBAsLCwQFxeHiIgIZGVlITU1FRYWFhg9enRDxkpIA6OaPsD1o+eeeo29M3PmTPzwww9gGAYTJ07E2rVrYWdnx76voaGB9evXw9TUtMECJaTB0Y1cwkH1Svq3bt3C119/jREjRkAgEFRbRl9fn7p2EsVGwzCU4/jhc029mndCQ0MxevToKgm/rKwMZ8+eBQAoKyvDw8Oj1m1FRkbC0tISQqEQrq6uuHTp0jvLv3r1CoGBgTAxMYFAIICNjQ2OHz9en8MgnMftOj63j5676pX0P/roI7x48aLK8ry8PHz00Ucyb+fAgQMIDg5GaGgokpOT4eDgAC8vrxonMBGJROjfvz/S09Nx6NAh3L17Fzt37oSZmVl9DoNwHdX0AVBFn2vq1bzDMEy10wg+f/4cGhoaMm9n48aNmDZtGgICAgAA27dvx7Fjx7Bnzx4sXLiwSvk9e/bgxYsXOH/+PDufraWlZX0OgRDOD7hG6Z6b6pT0R4wYAaB8dil/f3+p5h2xWIy//voLPXv2lGlbIpEIV69exaJFi9hlSkpK8PT0RFJSUrXr/Prrr3Bzc0NgYCB++eUXGBgYYPz48ViwYEGNE56UlJSgpKSEfZ2fny9TfKTlYzic7ivj0VnglDolfR0dHQDlNX0tLS2oqamx76mqqqJHjx6YNm2aTNvKzc2FWCyGkZGR1HIjIyPcuXOn2nUePHiAU6dOwdfXF8ePH0dqaipmzJiB0tJShIaGVrtOWFgYli9fLlNMhGOoeYdwUJ2SflRUFIDyJpV58+bVqSmnIUgkEhgaGmLHjh3g8/lwdnbGkydPsG7duhqT/qJFixAcHMy+zs/Ph7m5eVOFTBQa3cosR+eBS+rVpl9Tgq0LfX198Pl8ZGVlSS3PysqCsbFxteuYmJhARUVFqinH1tYWmZmZEIlEUFVVrbKOQCCosVsp4TiO99Pn6nFzncxJv2vXrkhISECrVq3g5ORU7Y3cCsnJybVuT1VVFc7OzkhISMCwYcMAlNfkExISEBQUVO067u7u2L9/PyQSCZSUyjse3bt3DyYmJtUmfELeiZp3AOCd1zJpeWRO+kOHDmVrzBVJ+n0FBwfDz88PLi4u6N69O8LDw1FYWMj25pk0aRLMzMwQFhYGAPjss88QERGB2bNnY+bMmbh//z7WrFmDWbNmNUg8hGMYGoaBcI/MSb9yk05DNO8AwNixY5GTk4OQkBBkZmbC0dERsbGx7M3djIwMtkYPAObm5oiLi8PcuXPRpUsXmJmZYfbs2ViwYEGDxEO4htsDrv2HzgCX1KtNvyEFBQXV2JyTmJhYZZmbmxsuXLjQyFERTuB4TZ9SPTfJnPRbtWolc9tfdU/rEqJwOP9wVjnqp88tMif98PDwRgyDEHngevMOJXsukjnp+/n5NWYchDQ9jjfvVOD20XOPzEk/Pz8f2tra7L/fpaIcIYqN6zV9wkV1atN/9uwZDA0NoaurW237fsVAbGKxuEGDJKRRUJt+OY4fPtfInPRPnTqF1q1bAwBNjkJaBobbdXxuHz13yZz0K0+IIsvkKIQ0F1yv6XP76Lmn3v30X758id27d+P27dsAgM6dOyMgIID9NkCIwuN4TZ9wU71mzjp79iwsLS2xZcsWvHz5Ei9fvsSWLVtgZWXFTpdIiOKjsXcAqulzTb1q+oGBgRg7diy2bdvGjngpFosxY8YMBAYG4saNGw0aJCGNgvM3crl63NxWr5p+amoqPv/8c6khjvl8PoKDg5GamtpgwRHSqKh5BwBAg2xyS72SfteuXdm2/Mpu374NBweH9w6KkKbB7X769DePm2Ru3vnrr7/Yf8+aNQuzZ89GamoqevToAQC4cOECIiMj8eWXXzZ8lIQ0Bnoil3CQzEnf0dERPB4PTKXqwfz586uUGz9+PMaOHdsw0RHSmDjfpk+4SOak//Dhw8aMgxA54HbzTgVq0+cWmZO+hYVFY8ZBSNPjePMO1//YcdV7TaJy69YtZGRkQCQSSS3/+OOP3ysoQpoSJT/CJfVK+g8ePMDw4cNx48YNqXb+ikHYaMA10ixQmz7hoHp12Zw9ezasrKyQnZ0NdXV1/P333zh79ixcXFyqneKQEMVEdXyAq41b3FWvmn5SUhJOnToFfX19KCkpQUlJCR9++CHCwsIwa9YsXLt2raHjJKThMVwfhoGrx81t9arpi8ViaGlpAQD09fXx9OlTAOU3e+/evdtw0RHSqKimD1Dq55p61fTt7Oxw/fp1WFlZwdXVFWvXroWqqip27NiBdu3aNXSMhDQOjtf06U8eN9Ur6S9ZsgSFhYUAgBUrVmDIkCHo1asX9PT0cODAgQYNkJDGwqNRNstRR31OqVfS9/LyYv/doUMH3LlzBy9evECrVq2qnUaREIVDA88QjnqvfvoA8PjxYwCAubn5ewdDSJOplPS5XtPnUUMPp9TrRm5ZWRmWLl0KHR0dWFpawtLSEjo6OliyZAlKS0sbOkZCGgElOsJN9arpz5w5E0eOHMHatWvh5uYGoLwb57Jly/D8+XNs27atQYMkpMH9+2AWQDV9apLllnol/f379yMmJgYDBw5kl3Xp0gXm5uYYN24cJX2i+KSadwjhjno17wgEAlhaWlZZbmVlBVVV1feNiZAmUDnVc7Omy+3h5rirXkk/KCgIK1euRElJCbuspKQEq1evRlBQUIMFR0ijoZo+4SiZm3dGjBgh9frkyZNo06YNOz3i9evXIRKJ0K9fv4aNkJDGUKlNn7t1Xa4eN7fJXNPX0dGR+hk5ciSGDBkCc3NzmJubY8iQIRgxYgR0dHTqHERkZCQsLS0hFArh6uqKS5cuybReTEwMeDwehg0bVud9Eq6jLpuEm2Su6UdFRTVKAAcOHEBwcDC2b98OV1dXhIeHw8vLC3fv3oWhoWGN66Wnp2PevHno1atXo8RFWjhq3qE2fY6qV5t+hZycHPz555/4888/kZOTU69tbNy4EdOmTUNAQAA6d+6M7du3Q11dHXv27KlxHbFYDF9fXyxfvpzG+iH1xNVUXw3K+pxSr6RfWFiIyZMnw8TEBL1790bv3r1hamqKKVOmoKioSObtiEQiXL16FZ6env8FpKQET09PJCUl1bjeihUrYGhoiClTptS6j5KSEuTn50v9EEJP5BKuqlfSDw4OxpkzZ/Dbb7/h1atXePXqFX755RecOXMGn3/+uczbyc3NhVgshpGRkdRyIyMjZGZmVrvOn3/+id27d2Pnzp0y7SMsLEzqXgQNF0EA0MNZlXD76LmnXkn/8OHD2L17NwYOHAhtbW1oa2tj0KBB2LlzJw4dOtTQMbJev36NiRMnYufOndDX15dpnUWLFiEvL4/9qRgriHAdNe8QbqrXE7lFRUVVaucAYGhoWKfmHX19ffD5fGRlZUktz8rKgrGxcZXyaWlpSE9Ph4+PD7tMIimvsSkrK+Pu3bto37691DoCgQACgUDmmAhHUPMO4ah61fTd3NwQGhqK4uJidtmbN2+wfPlydiweWaiqqsLZ2RkJCQnsMolEgoSEhGq306lTJ9y4cQMpKSnsz8cff4yPPvoIKSkp1HRDSB3Qdx1uqldNPzw8HN7e3lUezhIKhYiLi6vTtoKDg+Hn5wcXFxd0794d4eHhKCwsREBAAABg0qRJMDMzQ1hYGIRCIezs7KTW19XVBYAqywl5J2rTZ9GAa9xSr6Rvb2+P+/fvIzo6Gnfu3AEAjBs3Dr6+vlBTU6vTtsaOHYucnByEhIQgMzMTjo6OiI2NZZuPMjIyoKT0Xj1LCamq8iQqnE16XD1ubuMxTN2mECotLUWnTp1w9OhR2NraNlZcjSY/Px86OjrIy8uDtra2vMMh8lKQDay3BgAs5wXLORj5uFZqipQyU3TTfYMfF46SdzjkPdQlr9W5Cq2ioiLVlk9Is8ROik4It9Sr3SQwMBBfffUVysrKGjoeQprGv236XG/PBzjcusVR9WrTv3z5MhISEvD777/D3t4eGhoaUu8fOXKkQYIjpPFU1PS5m/HoWw431Svp6+rqYuTIkQ0dCyFNp263sghpMeqU9CUSCdatW4d79+5BJBKhb9++WLZsWZ177BAif1TTJ9xUpzb91atXY/HixdDU1ISZmRm2bNmCwMDAxoqNkMZDNX0WtelzS52S/r59+7B161bExcXh559/xm+//Ybo6Gh2KARCmg26kUtt+hxVp6SfkZGBQYMGsa89PT3B4/Hw9OnTBg+MkMZFXTYr8Dj8h4+L6pT0y8rKIBQKpZapqKigtLS0QYMipNExNG8Ut4+du+p0I5dhGPj7+0uNWllcXIzp06dLddukLptE8VFNvwKlfm6pU9L38/OrsmzChAkNFgwhTYah3juEm+qU9BtrcnRCmhw177Co9w630PCVhKOoeYfLx85l9Xoil5Bm4Vo0cGGb1Nj5rDIaNLACVfS5hZI+abkubAWybr6zyEvoNFEwhCgGSvqk5SorAQDEwQNZ0K+2yFNUnYuZc6iqzymU9EmLxUhKwQPwD0zwD89U3uEoHGrT5ya6kUtaLnH5Q4Ni+pi/Ez2Ryy10NZCW69+kLwFfzoEoKkr2XERJn7RckvKZ3aim/26U+rmFrgbScrE1ffqYE1KBrgbSckmoTV8W9EQut9DVQFquf5t3qKZfPeq9w010NZCWiWHAo6QvE6rpcwtdDaRlkojZf1LzDiH/oauBtEyS/yb2oS6bhPyHkj5pmcT/JX2q6RPyH7oaSMv0b3s+QG36Nfr3Ti6PGvU5ha4G0jL9W9NnADA8+pgTUoGuBtIysX30qT2/JhVTRVI9n1so6ZOWiZ7GJaRaCnFFREZGwtLSEkKhEK6urrh06VKNZXfu3IlevXqhVatWaNWqFTw9Pd9ZnnAUjbsjM6rpc4vcr4gDBw4gODgYoaGhSE5OhoODA7y8vJCdnV1t+cTERIwbNw6nT59GUlISzM3NMWDAADx58qSJIycKjWr6hFRL7lfExo0bMW3aNAQEBKBz587Yvn071NXVsWfPnmrLR0dHY8aMGXB0dESnTp2wa9cuSCQSJCQkNHHkRKHRuDu1YodhoKo+p8h15iyRSISrV69i0aJF7DIlJSV4enoiKSlJpm0UFRWhtLQUrVu3rvb9kpISlJSUsK/z8/PfL2hSf3FfAGmnm2ZfpUUAqKZPyNvkmvRzc3MhFothZGQktdzIyAh37tyRaRsLFiyAqakpPD09q30/LCwMy5cvf+9YyXsSFQJJEU2+25fQbfJ9Njc0cxa3NOs5cr/88kvExMQgMTERQqGw2jKLFi1CcHAw+zo/Px/m5uZNFSKpIBax//weIyBpkkTDwz808TkhUuSa9PX19cHn85GVlSW1PCsrC8bG775Y169fjy+//BInT55Ely5daiwnEAggEAgaJF7yHsT/PSGbBgsa2lGB0K+CW+Ta4KmqqgpnZ2epm7AVN2Xd3NxqXG/t2rVYuXIlYmNj4eLi0hShkvdV+cYqZRlC5EbuzTvBwcHw8/ODi4sLunfvjvDwcBQWFiIgIAAAMGnSJJiZmSEsLAwA8NVXXyEkJAT79++HpaUlMjMzAQCamprQ1NSU23GQWlAXSoVDT+Ryk9yT/tixY5GTk4OQkBBkZmbC0dERsbGx7M3djIwMKCn9lyi2bdsGkUiEUaNGSW0nNDQUy5Yta8rQSV3Qw1KEKAS5J30ACAoKQlBQULXvJSYmSr1OT09v/IBIw6OaPiEKga5A0jRoADRCFAIlfdI0qKavsOi+OrfQFUiaBk1STohCoCuQNA26katwKsbeoYo+t9AVSJoGNe8QohDoCiRNg0a9VFjUps8tdAWSpiGuaNOn3juKh7I+l1DSJ01DQs07ioaeyOUmugJJ0xBT8w4hioCuQNI0JNS8o7Coqs8plPRJ06CavsKinM8tdAWSpkFt+oQoBLoCSdOgfvqEKASFGGWTNIGS18ChyUDeE/nsv+g5AEDCo6SvKOiJXG6ipM8Vj84D93+XdxR4wehSllE09HQWp1DS54qyEgBANvQQiz7yCQHK+Acmctk3qRmlfG6hpM8V/95ILYI6HvIs5BwMIUReqIGVK8Q0yiV5G9XxuYgyAFdQl0lSA2rS5xbKAFzBdpmkJ2JJOeq9w02U9LmCJjEhhICSPndU1PSpnzwhnEYZgCtoEhNCCCjpc0dFTZ+hXzkpx9RehLRAlAG4QiIGQDV9UhWPuu9wCmUArqAum4QQUNLnDhrPntSA6vncQhmAK9iZq+hXTgiXUQbgCramTw9nkQr/ToxOVX1OoaTPFdSmTwgBJX3uoDZ98hbqsslNCpEBIiMjYWlpCaFQCFdXV1y6dOmd5X/88Ud06tQJQqEQ9vb2OH78eBNF2oxRmz4hBAqQ9A8cOIDg4GCEhoYiOTkZDg4O8PLyQnZ2drXlz58/j3HjxmHKlCm4du0ahg0bhmHDhuHmzZtNHHkzQ236pAZK1KjPKXJP+hs3bsS0adMQEBCAzp07Y/v27VBXV8eePXuqLb9582Z4e3vj//7v/2Bra4uVK1eia9euiIiIaOLImxlq0yeEQM4zZ4lEIly9ehWLFi1ilykpKcHT0xNJSUnVrpOUlITg4GCpZV5eXvj555+rLV9SUoKSkhL2dX5+fr1ivbDtUxjlXKjXuorAUJIFDQDJpWb4WdJZ3uEQBVDIqMo7BCIHck36ubm5EIvFMDIyklpuZGSEO3fuVLtOZmZmteUzMzOrLR8WFobly5e/d6yqBU9hJUl/7+3I2y3GHC8ZdXmHQRSIvho173BJi58jd9GiRVLfDPLz82Fubl7n7egOXILYvy4j4/HjhgyvSRUoacGtsxP6qlPSJ+W0VHkY0I2++XGJXJO+vr4++Hw+srKypJZnZWXB2Ni42nWMjY3rVF4gEEAgELx3rO3sXNHOzvW9t0MIIfIk17t6qqqqcHZ2RkJCArtMIpEgISEBbm5u1a7j5uYmVR4A4uPjayxPCCHkP3Jv3gkODoafnx9cXFzQvXt3hIeHo7CwEAEBAQCASZMmwczMDGFhYQCA2bNnw8PDAxs2bMDgwYMRExODK1euYMeOHfI8DEIIaRbknvTHjh2LnJwchISEIDMzE46OjoiNjWVv1mZkZEBJ6b8vJD179sT+/fuxZMkSLF68GNbW1vj5559hZ2cnr0MghJBmg8cwDKeexs7Pz4eOjg7y8vKgra0t73AIIeS91SWv0ZM6hBDCIZT0CSGEQyjpE0IIh8j9Rm5Tq7iFUd/hGAghRNFU5DNZbtFyLum/fv0aAOr1VC4hhCiy169fQ0dH551lONd7RyKR4OnTp9DS0gKvDkPKVgzf8PjxY+r1U090Dt8Pnb/311LPIcMweP36NUxNTaW6uFeHczV9JSUltGnTpt7ra2trt6gPizzQOXw/dP7eX0s8h7XV8CvQjVxCCOEQSvqEEMIhlPRlJBAIEBoa2iAjdnIVncP3Q+fv/dE55OCNXEII4TKq6RNCCIdQ0ieEEA6hpE8IIRxCSZ8QQjiEkr6MIiMjYWlpCaFQCFdXV1y6dEneITUbYWFh6NatG7S0tGBoaIhhw4bh7t278g6r2fryyy/B4/EwZ84ceYfSbDx58gQTJkyAnp4e1NTUYG9vjytXrsg7LLmgpC+DAwcOIDg4GKGhoUhOToaDgwO8vLyQnZ0t79CahTNnziAwMBAXLlxAfHw8SktLMWDAABQWFso7tGbn8uXL+Oabb9ClSxd5h9JsvHz5Eu7u7lBRUcGJEydw69YtbNiwAa1atZJ3aHJBXTZl4Orqim7duiEiIgJA+fg95ubmmDlzJhYuXCjn6JqfnJwcGBoa4syZM+jdu7e8w2k2CgoK0LVrV2zduhWrVq2Co6MjwsPD5R2Wwlu4cCHOnTuHP/74Q96hKASq6ddCJBLh6tWr8PT0ZJcpKSnB09MTSUlJcoys+crLywMAtG7dWs6RNC+BgYEYPHiw1GeR1O7XX3+Fi4sLRo8eDUNDQzg5OWHnzp3yDktuKOnXIjc3F2KxmJ2ovYKRkREyMzPlFFXzJZFIMGfOHLi7u9Nk9nUQExOD5ORkhIWFyTuUZufBgwfYtm0brK2tERcXh88++wyzZs3Ct99+K+/Q5IJzo2wS+QoMDMTNmzfx559/yjuUZuPx48eYPXs24uPjIRQK5R1OsyORSODi4oI1a9YAAJycnHDz5k1s374dfn5+co6u6VFNvxb6+vrg8/nIysqSWp6VlQVjY2M5RdU8BQUF4ejRozh9+vR7DW/NNVevXkV2dja6du0KZWVlKCsr48yZM9iyZQuUlZUhFovlHaJCMzExQefOnaWW2draIiMjQ04RyRcl/VqoqqrC2dkZCQkJ7DKJRIKEhAS4ubnJMbLmg2EYBAUF4aeffsKpU6dgZWUl75CalX79+uHGjRtISUlhf1xcXODr64uUlBTw+Xx5h6jQ3N3dq3QRvnfvHiwsLOQUkXxR844MgoOD4efnBxcXF3Tv3h3h4eEoLCxEQECAvENrFgIDA7F//3788ssv0NLSYu+F6OjoQE1NTc7RKT4tLa0q9z80NDSgp6dH90VkMHfuXPTs2RNr1qzBmDFjcOnSJezYsQM7duyQd2jywRCZfP3110zbtm0ZVVVVpnv37syFCxfkHVKzAaDan6ioKHmH1mx5eHgws2fPlncYzcZvv/3G2NnZMQKBgOnUqROzY8cOeYckN9RPnxBCOITa9AkhhEMo6RNCCIdQ0ieEEA6hpE8IIRxCSZ8QQjiEkj4hhHAIJX1CCOEQSvqEEMIhlPQJIYRDKOmTZoXH473zZ9myZfIOscFZWlrSDFmkwdCAa6RZefbsGfvvAwcOICQkRGoERU1NTXmEVWcMw0AsFkNZuekuQZFIBFVV1SbbH1FMVNMnzYqxsTH7o6OjAx6PJ7UsJiYGtra2EAqF6NSpE7Zu3cqum56eDh6Ph4MHD6JXr15QU1NDt27dcO/ePVy+fBkuLi7Q1NTEwIEDkZOTw67n7++PYcOGYfny5TAwMIC2tjamT58OkUjElpFIJAgLC4OVlRXU1NTg4OCAQ4cOse8nJiaCx+PhxIkTcHZ2hkAgwJ9//om0tDQMHToURkZG0NTURLdu3XDy5El2vT59+uDRo0eYO3cu+20GAJYtWwZHR0epcxMeHg5LS8sqca9evRqmpqbo2LEjgPJJWcaMGQNdXV20bt0aQ4cORXp6ekP8ekgzQEmftBjR0dEICQnB6tWrcfv2baxZswZLly6tMi1eaGgolixZguTkZCgrK2P8+PGYP38+Nm/ejD/++AOpqakICQmRWichIQG3b99GYmIifvjhBxw5cgTLly9n3w8LC8O+ffuwfft2/P3335g7dy4mTJiAM2fOSG1n4cKF+PLLL3H79m106dIFBQUFGDRoEBISEnDt2jV4e3vDx8eHneDjyJEjaNOmDVasWIFnz55JfdORRUJCAu7evYv4+HgcPXoUpaWl8PLygpaWFv744w+cO3cOmpqa8Pb2lvojRlowOY/ySUi9RUVFMTo6Ouzr9u3bM/v375cqs3LlSsbNzY1hGIZ5+PAhA4DZtWsX+/4PP/zAAGASEhLYZWFhYUzHjh3Z135+fkzr1q2ZwsJCdtm2bdsYTU1NRiwWM8XFxYy6ujpz/vx5qX1PmTKFGTduHMMwDHP69GkGAPPzzz/XelwffPAB8/XXX7OvLSwsmE2bNkmVCQ0NZRwcHKSWbdq0ibGwsJCK28jIiCkpKWGXfffdd0zHjh0ZiUTCLispKWHU1NSYuLi4WmMjzR+16ZMWobCwEGlpaZgyZQqmTZvGLi8rK4OOjo5U2S5durD/rpjw3t7eXmpZdna21DoODg5QV1dnX7u5uaGgoACPHz9GQUEBioqK0L9/f6l1RCIRnJycpJa5uLhIvS4oKMCyZctw7NgxPHv2DGVlZXjz5k2DTeVnb28v1Y5//fp1pKamQktLS6pccXEx0tLSGmSfRLFR0ictQkFBAQBg586dcHV1lXrv7ekEVVRU2H9XtJG/vUwikdR538eOHYOZmZnUewKBQOq1hoaG1Ot58+YhPj4e69evR4cOHaCmpoZRo0bV2tSipKQE5q2pMEpLS6uUe3t/BQUFcHZ2RnR0dJWyBgYG79wnaRko6ZMWwcjICKampnjw4AF8fX0bfPvXr1/Hmzdv2OkdL1y4AE1NTZibm6N169YQCATIyMiAh4dHnbZ77tw5+Pv7Y/jw4QDKk/LbN1VVVVWrTH5uYGCAzMxMMAzD/uFKSUmpdX9du3bFgQMHYGhoCG1t7TrFSloGupFLWozly5cjLCwMW7Zswb1793Djxg1ERUVh48aN771tkUiEKVOm4NatWzh+/DhCQ0MRFBQEJSUlaGlpYd68eZg7dy6+/fZbpKWlITk5GV9//XWVm8hvs7a2xpEjR5CSkoLr169j/PjxVb5lWFpa4uzZs3jy5Alyc3MBlPfqycnJwdq1a5GWlobIyEicOHGi1uPw9fWFvr4+hg4dij/++AMPHz5EYmIiZs2ahX/++af+J4g0G5T0SYsxdepU7Nq1C1FRUbC3t4eHhwf27t0LKyur9952v379YG1tjd69e2Ps2LH4+OOPpR4EW7lyJZYuXYqwsDDY2trC29sbx44dq3XfGzduRKtWrdCzZ0/4+PjAy8sLXbt2lSqzYsUKpKeno3379mwTjK2tLbZu3YrIyEg4ODjg0qVLmDdvXq3Hoa6ujrNnz6Jt27YYMWIEbG1tMWXKFBQXF1PNnyNojlxCauHv749Xr17h559/lncohLw3qukTQgiHUNInhBAOoeYdQgjhEKrpE0IIh1DSJ4QQDqGkTwghHEJJnxBCOISSPiGEcAglfUII4RBK+oQQwiGU9AkhhEP+H9sLUKmRRmtNAAAAAElFTkSuQmCC", + "image/png": "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", "text/plain": [ "
" ] @@ -140,7 +140,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 9, "id": "c11d30f5", "metadata": {}, "outputs": [ @@ -511,14 +511,14 @@ " fill: currentColor;\n", "}\n", "
<xarray.DataArray ()>\n",
-       "array(1.111)
" + "array(1.111)" ], "text/plain": [ "\n", "array(1.111)" ] }, - "execution_count": 5, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" } @@ -530,7 +530,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 10, "id": "1d296010", "metadata": {}, "outputs": [ @@ -901,14 +901,14 @@ " fill: currentColor;\n", "}\n", "
<xarray.DataArray ()>\n",
-       "array(1.056)
" + "array(1.056)" ], "text/plain": [ "\n", "array(1.056)" ] }, - "execution_count": 6, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" } @@ -942,7 +942,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3 (ipykernel)", + "display_name": "scores", "language": "python", "name": "python3" }, @@ -956,7 +956,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.6" + "version": "3.12.3" } }, "nbformat": 4, From c8c08e7b84370c443e864d8081b27cf2fd57538c Mon Sep 17 00:00:00 2001 From: nicholasloveday Date: Mon, 13 Jan 2025 14:33:37 +1100 Subject: [PATCH 2/3] updated to say that the area squared is the CRPS --- tutorials/CRPS_for_Ensembles.ipynb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorials/CRPS_for_Ensembles.ipynb b/tutorials/CRPS_for_Ensembles.ipynb index 8db5e8f0..643d7ed3 100644 --- a/tutorials/CRPS_for_Ensembles.ipynb +++ b/tutorials/CRPS_for_Ensembles.ipynb @@ -121,7 +121,7 @@ "source": [ "# The ensemble forecast can be converted to a CDF\n", "# When converted in a naive way we get the empirical CDF illustrated here. The larger the ensemble the smoother and more sensible this will be.\n", - "# The plot below also shows the CDF corresponding to the observation, and the area corrsponding to the CRPS.\n", + "# The plot below also shows the CDF corresponding to the observation. The area squared corresponds to the CRPS.\n", "fcst_thresholds = numpy.linspace(0, 7, 700)\n", "empirical_cdf = xarray.DataArray(\n", " coords={\"temperature\": fcst_thresholds},\n", From 9265928946fa666fe7a2373a85a49cdcbdc26887 Mon Sep 17 00:00:00 2001 From: nicholasloveday Date: Mon, 13 Jan 2025 14:45:31 +1100 Subject: [PATCH 3/3] add example with multiple coords along the time dimension --- tutorials/CRPS_for_Ensembles.ipynb | 419 ++++++++++++++++++++++++++++- 1 file changed, 411 insertions(+), 8 deletions(-) diff --git a/tutorials/CRPS_for_Ensembles.ipynb b/tutorials/CRPS_for_Ensembles.ipynb index 643d7ed3..46f45ff3 100644 --- a/tutorials/CRPS_for_Ensembles.ipynb +++ b/tutorials/CRPS_for_Ensembles.ipynb @@ -918,6 +918,417 @@ "crps_for_ensemble(ensemble_forecast, obs_array, ensemble_member_dim=\"ensemble_member\", method=\"fair\").round(3)" ] }, + { + "cell_type": "markdown", + "id": "5dfd780e", + "metadata": {}, + "source": [ + "Now, let's calculate the CRPS for an ensemble that produces forecasts for multiple timesteps" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "258352e8", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "
<xarray.DataArray (time: 3)>\n",
+       "array([1.111, 1.422, 2.133])\n",
+       "Coordinates:\n",
+       "  * time     (time) int64 0 1 2
" + ], + "text/plain": [ + "\n", + "array([1.111, 1.422, 2.133])\n", + "Coordinates:\n", + " * time (time) int64 0 1 2" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "temp_fcst = numpy.array([1.2, 2.0, 2.7, 2.9, 3.0, 3.0, 3.1, 3.2, 3.8, 5.0])\n", + "\n", + "ensemble_forecast2 = xarray.DataArray(\n", + " data=[temp_fcst, temp_fcst * 2, temp_fcst * 3],\n", + " dims=[\"time\", \"ensemble_member\"],\n", + " coords={\"time\": [0, 1, 2], \"ensemble_member\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]},\n", + ")\n", + "\n", + "obs_array2 = xarray.DataArray([4.5, 8, 12], dims=[\"time\"], coords={\"time\": [0, 1, 2]})\n", + "\n", + "crps_for_ensemble(ensemble_forecast2, obs_array2, ensemble_member_dim=\"ensemble_member\", preserve_dims=\"time\").round(3)" + ] + }, { "cell_type": "markdown", "id": "2517d17e", @@ -930,14 +1341,6 @@ " 140(683):1917-1923. https://doi.org/10.1002/qj.2270\n", "* Explore our [twCRPS for ensemble forecasts tutorial](./Threshold_Weighted_CRPS_for_Ensembles.ipynb)" ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "2b4027aa", - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": {