{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Progapagating uncertainty in melt inclusion vapour bubble reconstructions\n",
"- This notebook shows how to use Monte Carlo methods to propagate uncertainty in bubble density, bubble volume and melt density to calculate the uncertainty in the equivalent amount of CO2 in the bubble - e.g. how many ppm you add back into the glass\n",
"- In this instance, we get uncertainty in bubble density from repeated Raman measurements, uncertainty in melt density from the code DensityX, and estimate the uncertainty in bubble volume from optical measurements as ~30-50%. "
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"## Install DiadFit if you havent already\n",
"#!pip install DiadFit --upgrade"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"tags": []
},
"outputs": [
{
"data": {
"text/plain": [
"'1.0.0'"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import numpy as np\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"# The code to do the MC is in DiadFit, make sure you cite!\n",
"import DiadFit as pf\n",
"pf.__version__"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Scenario 1 - You have measured x and y using an optical microscope, but you didnt measure Z, so you are assuming it is the average of x and y. "
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
SampleID
\n",
"
Melt_x_um
\n",
"
Melt_y_um
\n",
"
VB_x_um
\n",
"
VB_y_um
\n",
"
CO2_dens_gcm3
\n",
"
err_CO2_dens_gcm3
\n",
"
melt_dens_kgm3
\n",
"
err_melt_dens_kgm3
\n",
"
Unnamed: 9
\n",
"
constant
\n",
"
Vol_melt
\n",
"
Vol_VB
\n",
"
Vol%
\n",
"
CO2_in_melt
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
Test_melt_1
\n",
"
50
\n",
"
33
\n",
"
10
\n",
"
15.0
\n",
"
0.030
\n",
"
0.010
\n",
"
2601
\n",
"
130.05
\n",
"
NaN
\n",
"
4.18879
\n",
"
35853.426159
\n",
"
981.747704
\n",
"
2.738226
\n",
"
3.158276
\n",
"
\n",
"
\n",
"
1
\n",
"
Test_melt_2
\n",
"
40
\n",
"
42
\n",
"
5
\n",
"
5.0
\n",
"
0.040
\n",
"
0.020
\n",
"
2603
\n",
"
130.15
\n",
"
NaN
\n",
"
4.18879
\n",
"
36065.483663
\n",
"
65.449847
\n",
"
0.181475
\n",
"
0.278871
\n",
"
\n",
"
\n",
"
2
\n",
"
Test_melt_3
\n",
"
30
\n",
"
50
\n",
"
6
\n",
"
5.0
\n",
"
0.050
\n",
"
0.010
\n",
"
2700
\n",
"
135.00
\n",
"
NaN
\n",
"
4.18879
\n",
"
31415.926536
\n",
"
86.393798
\n",
"
0.275000
\n",
"
0.509259
\n",
"
\n",
"
\n",
"
3
\n",
"
Test_melt_4
\n",
"
20
\n",
"
30
\n",
"
3
\n",
"
2.5
\n",
"
0.036
\n",
"
0.020
\n",
"
2606
\n",
"
130.30
\n",
"
NaN
\n",
"
4.18879
\n",
"
7853.981634
\n",
"
10.799225
\n",
"
0.137500
\n",
"
0.189946
\n",
"
\n",
"
\n",
"
4
\n",
"
Test_melt_5
\n",
"
100
\n",
"
21
\n",
"
11
\n",
"
12.0
\n",
"
0.042
\n",
"
0.015
\n",
"
2704
\n",
"
135.20
\n",
"
NaN
\n",
"
4.18879
\n",
"
66523.224440
\n",
"
794.822941
\n",
"
1.194805
\n",
"
1.855836
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" SampleID Melt_x_um Melt_y_um VB_x_um VB_y_um CO2_dens_gcm3 \\\n",
"0 Test_melt_1 50 33 10 15.0 0.030 \n",
"1 Test_melt_2 40 42 5 5.0 0.040 \n",
"2 Test_melt_3 30 50 6 5.0 0.050 \n",
"3 Test_melt_4 20 30 3 2.5 0.036 \n",
"4 Test_melt_5 100 21 11 12.0 0.042 \n",
"\n",
" err_CO2_dens_gcm3 melt_dens_kgm3 err_melt_dens_kgm3 Unnamed: 9 \\\n",
"0 0.010 2601 130.05 NaN \n",
"1 0.020 2603 130.15 NaN \n",
"2 0.010 2700 135.00 NaN \n",
"3 0.020 2606 130.30 NaN \n",
"4 0.015 2704 135.20 NaN \n",
"\n",
" constant Vol_melt Vol_VB Vol% CO2_in_melt \n",
"0 4.18879 35853.426159 981.747704 2.738226 3.158276 \n",
"1 4.18879 36065.483663 65.449847 0.181475 0.278871 \n",
"2 4.18879 31415.926536 86.393798 0.275000 0.509259 \n",
"3 4.18879 7853.981634 10.799225 0.137500 0.189946 \n",
"4 4.18879 66523.224440 794.822941 1.194805 1.855836 "
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_noZ=pd.read_excel('Melt_inclusions_all_dimensions.xlsx', sheet_name='noZ')\n",
"df_noZ.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"- We are assuming the error on the measurements is 1um, but for Z, lets assume the error is half the difference between x and y. "
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"working on sample number 0\n"
]
},
{
"data": {
"text/html": [
"
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"vol_noZ_av, vol_noZ_all, fig=pf.propagate_CO2_in_bubble(sample_ID=df_noZ['SampleID'], N_dup=1000, vol_perc_bub=None,\n",
"CO2_bub_dens_gcm3=df_noZ['CO2_dens_gcm3'], melt_dens_kgm3=df_noZ['melt_dens_kgm3'],\n",
"MI_x=df_noZ['Melt_x_um'], MI_y=df_noZ['Melt_y_um'],VB_x=df_noZ['VB_x_um'], VB_y=df_noZ['VB_y_um'],\n",
"error_MI_x=1, error_MI_y=1,error_MI_z=0.5*np.abs(df_noZ['Melt_y_um']-df_noZ['Melt_x_um']),error_VB_x=1, error_VB_y=1,\n",
" error_VB_z=np.abs(df_noZ['VB_y_um']-df_noZ['VB_x_um']),\n",
"error_type_dimension='Abs', error_dist_dimension='normal',\n",
"error_CO2_bub_dens_gcm3=df_noZ['err_CO2_dens_gcm3'], error_type_CO2_bub_dens_gcm3='Abs', error_dist_CO2_bub_dens_gcm3='normal',\n",
"error_melt_dens_kgm3=df_noZ['err_melt_dens_kgm3'], error_type_melt_dens_kgm3='Abs', error_dist_melt_dens_kgm3='normal', neg_values=True)\n",
"\n",
"vol_noZ_av.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Example 1 - Run for a single samle\n",
"- This function lets you investigate for 1 MI how different values propagate to uncertainty in calculated CO2 contents\n",
"- Here, we show a scenario where you dont use the x-y-z dimensions, you just input the bubble vol% and the error on it (as reported in many supporting datasets)\n"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n"
]
}
],
"source": [
"# Which of your samples do you want to look at? here we look at the first one\n",
"sample_i=0\n",
"## How many duplicates do you want in the simulation?\n",
"N_dup=1000\n",
"\n",
"######################### VAPOUR BUBBLE VOLUMES ###########################\n",
"# What is the measured vol% of your bubble\n",
"vol_perc_bub=5\n",
"# What is your estimated error on this value? Is this an absolute error, a percentage error - do you think the error is distributed normally or uniformly etc\n",
"error_vol_perc_bub=40\n",
"error_type_vol_perc_bub='Perc'\n",
"error_dist_vol_perc_bub='normal'\n",
"\n",
"\n",
"######################### VAPOUR BUBBLE DENSITIES ###########################\n",
"# What is your measured bubble density in g/cm3 by Raman or microthermometry?\n",
"CO2_bub_dens_gcm3=0.02\n",
"# What is the error on that value? Here we use the absolute error outputted by DiadFit. This is an absolute error and it should follow a normal distribution as its a 1 sigma value\n",
"error_CO2_bub_dens_gcm3=0.01\n",
"error_type_CO2_bub_dens_gcm3='Abs'\n",
"error_dist_CO2_bub_dens_gcm3='normal'\n",
"\n",
"######################### SILICATE MELT DENSITIES ###########################\n",
"# Melt density (e.g. from DensityX)\n",
"melt_dens_kgm3=2700\n",
"# Estimated error on that - here we use 200 kg/m3, its absolute, and distributed normally\n",
"error_melt_dens_kgm3=80\n",
"error_type_melt_dens_kgm3='Abs'\n",
"error_dist_melt_dens_kgm3='normal'\n",
"\n",
"## Now lets calculate the distribution\n",
"test_dist=pf.propagate_CO2_in_bubble_ind(sample_i=sample_i, N_dup=N_dup, \n",
"vol_perc_bub=vol_perc_bub,\n",
"error_vol_perc_bub=error_vol_perc_bub, error_type_vol_perc_bub=error_type_vol_perc_bub,\n",
"error_dist_vol_perc_bub=error_dist_vol_perc_bub,\n",
"CO2_bub_dens_gcm3=CO2_bub_dens_gcm3, error_CO2_bub_dens_gcm3=error_CO2_bub_dens_gcm3, \n",
"error_type_CO2_bub_dens_gcm3=error_type_CO2_bub_dens_gcm3,\n",
"error_dist_CO2_bub_dens_gcm3=error_dist_CO2_bub_dens_gcm3,\n",
"melt_dens_kgm3=melt_dens_kgm3, error_melt_dens_kgm3=error_melt_dens_kgm3, \n",
"error_type_melt_dens_kgm3=error_type_melt_dens_kgm3, \n",
"error_dist_melt_dens_kgm3=error_dist_melt_dens_kgm3, len_loop=1, neg_values=True)"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"tags": []
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
CO2_eq_melt_ppm_MC
\n",
"
CO2_eq_melt_ppm_noMC
\n",
"
vol_perc_bub_with_noise
\n",
"
CO2_bub_dens_gcm3_with_noise
\n",
"
melt_dens_kgm3_with_noise
\n",
"
vol_perc_bub
\n",
"
CO2_bub_dens_gcm3
\n",
"
error_type_vol_perc_bub
\n",
"
error_dist_Vol
\n",
"
error_CO2_bub_dens_gcm3
\n",
"
error_type_CO2_bub_dens_gcm3
\n",
"
error_dist_CO2_bub_dens_gcm3
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
184.027060
\n",
"
370.37037
\n",
"
4.831051
\n",
"
0.010431
\n",
"
2738.272230
\n",
"
5
\n",
"
0.02
\n",
"
Perc
\n",
"
normal
\n",
"
0.01
\n",
"
Abs
\n",
"
normal
\n",
"
\n",
"
\n",
"
1
\n",
"
331.485215
\n",
"
370.37037
\n",
"
7.000886
\n",
"
0.012853
\n",
"
2714.556235
\n",
"
5
\n",
"
0.02
\n",
"
Perc
\n",
"
normal
\n",
"
0.01
\n",
"
Abs
\n",
"
normal
\n",
"
\n",
"
\n",
"
2
\n",
"
558.692180
\n",
"
370.37037
\n",
"
3.619383
\n",
"
0.039636
\n",
"
2567.751507
\n",
"
5
\n",
"
0.02
\n",
"
Perc
\n",
"
normal
\n",
"
0.01
\n",
"
Abs
\n",
"
normal
\n",
"
\n",
"
\n",
"
3
\n",
"
530.544696
\n",
"
370.37037
\n",
"
4.255368
\n",
"
0.034486
\n",
"
2766.049050
\n",
"
5
\n",
"
0.02
\n",
"
Perc
\n",
"
normal
\n",
"
0.01
\n",
"
Abs
\n",
"
normal
\n",
"
\n",
"
\n",
"
4
\n",
"
909.139425
\n",
"
370.37037
\n",
"
8.238086
\n",
"
0.028807
\n",
"
2610.302722
\n",
"
5
\n",
"
0.02
\n",
"
Perc
\n",
"
normal
\n",
"
0.01
\n",
"
Abs
\n",
"
normal
\n",
"
\n",
"
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
\n",
"
\n",
"
995
\n",
"
166.182144
\n",
"
370.37037
\n",
"
2.466667
\n",
"
0.018581
\n",
"
2757.999512
\n",
"
5
\n",
"
0.02
\n",
"
Perc
\n",
"
normal
\n",
"
0.01
\n",
"
Abs
\n",
"
normal
\n",
"
\n",
"
\n",
"
996
\n",
"
263.174731
\n",
"
370.37037
\n",
"
3.855987
\n",
"
0.018293
\n",
"
2680.219760
\n",
"
5
\n",
"
0.02
\n",
"
Perc
\n",
"
normal
\n",
"
0.01
\n",
"
Abs
\n",
"
normal
\n",
"
\n",
"
\n",
"
997
\n",
"
344.687962
\n",
"
370.37037
\n",
"
8.222711
\n",
"
0.011141
\n",
"
2657.776998
\n",
"
5
\n",
"
0.02
\n",
"
Perc
\n",
"
normal
\n",
"
0.01
\n",
"
Abs
\n",
"
normal
\n",
"
\n",
"
\n",
"
998
\n",
"
158.276474
\n",
"
370.37037
\n",
"
2.400432
\n",
"
0.017365
\n",
"
2633.646470
\n",
"
5
\n",
"
0.02
\n",
"
Perc
\n",
"
normal
\n",
"
0.01
\n",
"
Abs
\n",
"
normal
\n",
"
\n",
"
\n",
"
999
\n",
"
853.307478
\n",
"
370.37037
\n",
"
5.146933
\n",
"
0.044449
\n",
"
2681.073321
\n",
"
5
\n",
"
0.02
\n",
"
Perc
\n",
"
normal
\n",
"
0.01
\n",
"
Abs
\n",
"
normal
\n",
"
\n",
" \n",
"
\n",
"
1000 rows × 12 columns
\n",
"
"
],
"text/plain": [
" CO2_eq_melt_ppm_MC CO2_eq_melt_ppm_noMC vol_perc_bub_with_noise \\\n",
"0 184.027060 370.37037 4.831051 \n",
"1 331.485215 370.37037 7.000886 \n",
"2 558.692180 370.37037 3.619383 \n",
"3 530.544696 370.37037 4.255368 \n",
"4 909.139425 370.37037 8.238086 \n",
".. ... ... ... \n",
"995 166.182144 370.37037 2.466667 \n",
"996 263.174731 370.37037 3.855987 \n",
"997 344.687962 370.37037 8.222711 \n",
"998 158.276474 370.37037 2.400432 \n",
"999 853.307478 370.37037 5.146933 \n",
"\n",
" CO2_bub_dens_gcm3_with_noise melt_dens_kgm3_with_noise vol_perc_bub \\\n",
"0 0.010431 2738.272230 5 \n",
"1 0.012853 2714.556235 5 \n",
"2 0.039636 2567.751507 5 \n",
"3 0.034486 2766.049050 5 \n",
"4 0.028807 2610.302722 5 \n",
".. ... ... ... \n",
"995 0.018581 2757.999512 5 \n",
"996 0.018293 2680.219760 5 \n",
"997 0.011141 2657.776998 5 \n",
"998 0.017365 2633.646470 5 \n",
"999 0.044449 2681.073321 5 \n",
"\n",
" CO2_bub_dens_gcm3 error_type_vol_perc_bub error_dist_Vol \\\n",
"0 0.02 Perc normal \n",
"1 0.02 Perc normal \n",
"2 0.02 Perc normal \n",
"3 0.02 Perc normal \n",
"4 0.02 Perc normal \n",
".. ... ... ... \n",
"995 0.02 Perc normal \n",
"996 0.02 Perc normal \n",
"997 0.02 Perc normal \n",
"998 0.02 Perc normal \n",
"999 0.02 Perc normal \n",
"\n",
" error_CO2_bub_dens_gcm3 error_type_CO2_bub_dens_gcm3 \\\n",
"0 0.01 Abs \n",
"1 0.01 Abs \n",
"2 0.01 Abs \n",
"3 0.01 Abs \n",
"4 0.01 Abs \n",
".. ... ... \n",
"995 0.01 Abs \n",
"996 0.01 Abs \n",
"997 0.01 Abs \n",
"998 0.01 Abs \n",
"999 0.01 Abs \n",
"\n",
" error_dist_CO2_bub_dens_gcm3 \n",
"0 normal \n",
"1 normal \n",
"2 normal \n",
"3 normal \n",
"4 normal \n",
".. ... \n",
"995 normal \n",
"996 normal \n",
"997 normal \n",
"998 normal \n",
"999 normal \n",
"\n",
"[1000 rows x 12 columns]"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Now lets look at the simulation for this one sapmle. The column 'CO2_eq_melt_ppm_noMC' is the same answer as above. The column CO2_eq_melt_ppm_MC gives 1 MonteCarlo result. \n",
"test_dist"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"370.3703703703703"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Lets do the basic math just to persuade ourselves this is working\n",
"vol_perc_bub=5\n",
"melt_dens_gcm3=2.7\n",
"bub_dens_gcm3=0.02\n",
"CO2_eq_bubble=10**4*(bub_dens_gcm3*vol_perc_bub)/melt_dens_gcm3\n",
"CO2_eq_bubble"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA0oAAAKnCAYAAAC4d70FAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAADKA0lEQVR4nOzdeVxUVf8H8M+wDTturIosCi6AimIomWgKLmT4UGZCCaGmqSlquWQlJoJa+lCplP4SrSRbzDI1l1JpIRNBCpVcEdAgUhFENoXz+0O5DzMsMjAwgJ/363Vfzpx7597vPQ5z5zvn3HNkQggBIiIiIiIikmhpOgAiIiIiIqKWhokSERERERGREiZKRERERERESpgoERERERERKWGiREREREREpISJEhERERERkRImSkREREREREqYKBERERERESnR0XQATa2iogJ///03TExMIJPJNB0OEdFDQwiBW7duwcbGBlpa/F2uKl6biIg0Q5VrU5tPlP7++2/Y2tpqOgwioodWVlYWunTpoukwWhRem4iINKs+16Y2nyiZmJgAuFcZpqamGo6GiOjhUVBQAFtbW+lzmP6H1yYiIs1Q5drU5hOlyi4NpqamvBgREWkAu5ZVx2sTEZFm1efaxE7jRERERERESpgoERERERERKWGiREREREREpISJEhERERERkRImSkREREREREqYKBERERERESlhokRERERERKSEiRIREREREZESJkpERERERERKmCgREREREREp0dF0AER0j/3ivTWWX17l18yREBERNZ/arn8Ar4GkWWxRIiIiIiIiUsJEiYiIiIiISAkTJSIiIiIiIiVMlIiIiIiIiJRwMAciIiIiapE40BFpEluUiIiIiIiIlDBRIiIiIiIiUsJEiYiIiIiISAkTJSIiIiIiIiVMlIiIiIiIiJQwUSIiIiIiIlLCRImIiIiIiEgJEyUiIiIiIiIlTJSIiIiIiIiU6Gg6AKLWjDOGExEREbVNGm1RCg8Ph0wmU1isrKyk9UIIhIeHw8bGBgYGBhg2bBhOnz6twYiJiIiIiOhhoPGudy4uLsjOzpaW1NRUad2aNWuwbt06rF+/HomJibCysoKPjw9u3bqlwYiJiIiIiKit03iipKOjAysrK2kxNzcHcK81KTo6GkuXLkVAQABcXV2xbds2FBUVIS4uTsNRExERERFRW6bx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l1/GggULkJOTAzc3N+jq6iqsV55vgoiaH/uVEzWdhQsXori4GDNnzpQmnD148CBMTEw0HRoREamRyonSU089BQAIDQ2VymQymXQjKwdzICKituTo0aMKz2UyGcLDwxEeHq6ReIiIqHmonCilp6c3RRxEREREREQthsqJkp2dXVPEQURERERE1GI0aMLZixcvIjo6GmlpaZDJZOjVqxfmzp2Lbt26qTs+IiIiIiKiZqdyonTgwAE8+eST6NevHx599FEIIZCQkAAXFxd899138PHxaYo4iYiIiIjUrq4BkC6v8mvGSKilUTlRWrx4MebNm4dVq1ZVK1+0aBETJSIiIiIiavW0VH1BWloapkyZUq08NDQUZ86cUUtQREREREREmqRyomRubo6UlJRq5SkpKbCwsFBHTERERERERBqlcte7adOm4cUXX8SlS5fg5eUFmUyGX375BatXr8aCBQuaIkYiIiIiIqJmpXKi9MYbb8DExARr167FkiVLAAA2NjYIDw/HnDlz1B4gEbU+td0Yy5tiiYhIHeoagIFIXVROlGQyGebNm4d58+bh1q1bAAATExO1B0ZERERERKQpDZpHqRITJCIiIiIiaovqlSj1798fP/74I9q3bw93d3fIZLJat01OTlZbcERERERERJpQr0TJ398fcrlcelxXokRERERERNTa1StRWrZsmfQ4PDy8qWIhIiIiIiJqEVSeR8nR0RHXr1+vVn7z5k04OjqqJSgiIiIiIiJNUjlRunz5MsrLy6uVl5aW4sqVK2oJioiIiIiISJPqPerd7t27pccHDhyAmZmZ9Ly8vBw//vgjHBwc1BsdERERERGRBtQ7URo/fjyAe/MoBQcHK6zT1dWFvb091q5dq9bgiIiIiKht4CSx1NrUO1GqqKgAADg4OCAxMRGdOnVqsqCIiIiIiIg0SeUJZ9PT05siDiIiIiIiohZD5UQJAG7fvo34+HhkZmairKxMYd2cOXPUEhgREREREZGmqJwonTx5EmPHjkVRURFu376NDh064Nq1azA0NISFhQUTJSIiIiIiavVUTpTmzZuHcePGISYmBu3atcOxY8egq6uL5557DnPnzm2KGImIiIioHjhgApH6qDyPUkpKChYsWABtbW1oa2ujtLQUtra2WLNmDV577bWmiJGIiIiIiKhZqZwo6erqQiaTAQAsLS2RmZkJADAzM5MeExERERERtWYqd71zd3fHiRMn4OzsjOHDh+PNN9/EtWvX8Mknn8DNza0pYiQiIiIiImpWKrcoRUZGwtraGgCwYsUKdOzYES+99BJyc3OxadMmtQdIRERERETU3FRuUfLw8JAem5ubY9++fWoNiIiIiIiISNMaNI+SusTExCAmJgaXL18GALi4uODNN9/EmDFjAABCCCxfvhybNm1CXl4ePD09sWHDBri4uGgwamoNOOpP82A9ExERUVtVr0TJ3d1dGsDhQZKTk+t98C5dumDVqlXo3r07AGDbtm3w9/fHyZMn4eLigjVr1mDdunXYunUrnJ2dERERAR8fH5w9exYmJib1Pg4REREREZEq6pUojR8/vkkOPm7cOIXnK1euRExMDI4dO4bevXsjOjoaS5cuRUBAAIB7iZSlpSXi4uIwffr0JomJiIiIiIioXonSsmXLmjoOlJeX48svv8Tt27cxePBgpKenIycnB76+vtI2crkc3t7eSEhIYKJERERERERNRqP3KAFAamoqBg8ejJKSEhgbG2PXrl3o3bs3EhISANybq6kqS0tLZGRk1Lq/0tJSlJaWSs8LCgqaJnAiIiIiImqzVE6UtLS06rxfqby8XKX99ejRAykpKbh58yZ27tyJ4OBgxMfHS+uVjyWEqPP4UVFRWL58uUoxEBERERERVaVyorRr1y6F53fu3MHJkyexbdu2BiUoenp60mAOHh4eSExMxLvvvotFixYBAHJycqR5mwAgNze3WitTVUuWLMH8+fOl5wUFBbC1tVU5LiIiIiIienipnCj5+/tXK3v66afh4uKCzz//HFOmTGlUQEIIlJaWwsHBAVZWVjh06BDc3d0BAGVlZYiPj8fq1atrfb1cLodcLm9UDERERERE9HBT2z1Knp6emDZtmkqvee211zBmzBjY2tri1q1b2LFjB44ePYr9+/dDJpMhLCwMkZGRcHJygpOTEyIjI2FoaIjAwEB1hU1ERCTh/H5EVFVt8wVeXuXXzJGQJqglUSouLsb777+PLl26qPS6f/75B88//zyys7NhZmaGPn36YP/+/fDx8QEALFy4EMXFxZg5c6Z0QTp48CDnUCIioibB+f2IiKiSyolS+/btFQZTEELg1q1bMDQ0xKeffqrSvj766KM618tkMoSHhyM8PFzVMImIiFTG+f2IiKiSyolSdHS0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Tzz//PP12j4jIwMHDx6Et7c3SktLsX79esTGxuKPP/5Ar169sGbNGkyaNKnaXEaakJubi61bt+LVV19t1CiMpD5MlIioSb377rsICAhoERehSgcPHoQQosb76IiIqOnJZDJ06tQJ7777bo2DX6hLVlYWnn32WZw6dQpCCLi6umLVqlUYOnRokx2T2g4mSkREREREREpaTl8YIiIiIiKiFoKJEhERERERkRImSkREREREREqYKBERERERESlhokRERERERKSEiRIREREREZESJkpERERERERKmCgREREREREpYaJERERERESkhIkSERERERGREiZKRERERERESnQ0HUBTq6iowN9//w0TExPIZDJNh0NE9NAQQuDWrVuwsbGBlhZ/l6uK1yYiIs1Q5drU5hOlv//+G7a2tpoOg4jooZWVlYUuXbpoOowWhdcmIiLNqs+1qc0nSiYmJgDuVYapqamGoyEiengUFBTA1tZW+hym/+G1iYhIM1S5NrX5RKmyS4OpqSkvRkREGsCuZdXx2kREpFn1uTax0zgREREREZESjSdKV69exXPPPYeOHTvC0NAQ/fr1Q1JSkrReCIHw8HDY2NjAwMAAw4YNw+nTpzUYMRERERERtXUaTZTy8vLw6KOPQldXF99//z3OnDmDtWvXol27dtI2a9aswbp167B+/XokJibCysoKPj4+uHXrluYCJyIiIiKiNk2j9yitXr0atra2iI2Nlcrs7e2lx0IIREdHY+nSpQgICAAAbNu2DZaWloiLi8P06dObO2QiIiKiRhNC4O7duygvL9d0KERtira2NnR0dNRyf6xGE6Xdu3dj1KhRmDBhAuLj49G5c2fMnDkT06ZNAwCkp6cjJycHvr6+0mvkcjm8vb2RkJDARImIiIhanbKyMmRnZ6OoqEjToRC1SYaGhrC2toaenl6j9qPRROnSpUuIiYnB/Pnz8dprr+H48eOYM2cO5HI5Jk+ejJycHACApaWlwussLS2RkZFR4z5LS0tRWloqPS8oKGi6EyAiIiJSQUVFBdLT06GtrQ0bGxvo6elxZEgiNRFCoKysDP/++y/S09Ph5OTUqAnPNZooVVRUwMPDA5GRkQAAd3d3nD59GjExMZg8ebK0nfIHiBCi1g+VqKgoLF++vOmCJiIiImqgsrIyVFRUwNbWFoaGhpoOh6jNMTAwgK6uLjIyMlBWVgZ9ff0G70ujgzlYW1ujd+/eCmW9evVCZmYmAMDKygoApJalSrm5udVamSotWbIE+fn50pKVldUEkRMRERE1XGN+5Saiuqnr70ujf6WPPvoozp49q1B27tw52NnZAQAcHBxgZWWFQ4cOSevLysoQHx8PLy+vGvcpl8ulCfw4kR8RERERETWERhOlefPm4dixY4iMjMSFCxcQFxeHTZs2YdasWQDudbkLCwtDZGQkdu3ahVOnTiEkJASGhoYIDAzUZOhEREREpCabNm2Cra0ttLS0EB0drelwAADh4eHo169fkx5j69atCtPiUMui0XuUBg4ciF27dmHJkiV466234ODggOjoaAQFBUnbLFy4EMXFxZg5cyby8vLg6emJgwcPwsTERIORE7Vs9ov31lh+eZVfM0dCREQtxokTNZd7eNTr5SEhIdi2bRsAQEdHB7a2tggICMDy5cthZGTU4LAKCgowe/ZsrFu3Dk899RTMzMwavC8iddJoogQATzzxBJ544ola18tkMoSHhyM8PLz5giIiIiKiakaPHo3Y2FjcuXMHP//8M6ZOnYrbt28jJiam2rZ37tyBrq7uA/eZmZmJO3fuwM/PD9bW1g2Orabj1TcGoprwTkIiIiIiqhe5XA4rKyvY2toiMDAQQUFB+OabbwD8r6vali1b4OjoCLlcDiEE8vPz8eKLL8LCwgKmpqZ4/PHH8ccffwC41/XMzc0NAODo6AiZTIbLly8DAL777jsMGDAA+vr6cHR0xPLly3H37l0pFplMhg8++AD+/v4wMjJCREREg2KotGrVKlhaWsLExARTpkxBSUlJrfVQUVGBLl264IMPPlAoT05Ohkwmw6VLlwAA69atg5ubG4yMjGBra4uZM2eisLCw1v2GhIRg/PjxCmVhYWEYNmyY9FwIgTVr1sDR0REGBgbo27cvvvrqq1r3SQ3HRImIiIhIg4QQuH37dtMvxcXVFiFEo2I3MDDAnTt3pOcXLlzAF198gZ07dyIlJQUA4Ofnh5ycHOzbtw9JSUno378/RowYgRs3bmDixIn44YcfAADHjx9HdnY2bG1tceDAATz33HOYM2cOzpw5gw8//BBbt27FypUrFY6/bNky+Pv7IzU1FaGhoQ2KAQC++OILLFu2DCtXrsSJEydgbW2NjRs31nreWlpaePbZZ7F9+3aF8ri4OAwePBiOjo7Sdu+99x5OnTqFbdu24fDhw1i4cGHDKxzA66+/jtjYWMTExOD06dOYN28ennvuOcTHxzdqv1SdxrveERERET3MioqKYGxsrJFjF/70Exp6d9Hx48cRFxeHESNGSGVlZWX45JNPYG5uDgA4fPgwUlNTkZubC7lcDgB455138M033+Crr77Ciy++iI4dOwIAzM3NpalhVq5cicWLFyM4OBjAvdamFStWYOHChVi2bJl0vMDAQClBakwM0dHRCA0NxdSpUwEAERER+OGHH+psVQoKCsK6deuQkZEBOzs7VFRUYMeOHXjttdekbcLCwqTHDg4OWLFiBV566aU6k7C63L59G+vWrcPhw4cxePBgqW5++eUXfPjhh/D29m7QfqlmTJSIqE61DQwBcHAIIqKHzZ49e2BsbIy7d+/izp078Pf3x/vvvy+tt7OzkxIUAEhKSkJhYaGUDFUqLi7GxYsXaz1OUlISEhMTFVqQysvLUVJSgqKiImmyXo8aBqJoSAxpaWmYMWOGwvrBgwfjyJEjtcbo7u6Onj174rPPPsPixYsRHx+P3NxcPPPMM9I2R44cQWRkJM6cOYOCggLcvXsXJSUluH37doMGwDhz5gxKSkrg4+OjUF5WVgZ3d3eV90d1Y6JEREREpEGGhoZ13reiNsnJ1Y+tr6/SLoYPH46YmBjo6urCxsam2kAJyl/+KyoqYG1tjaNHj1bbV13DYldUVGD58uUICAiotk6/Ssw1JRvqiqE+goKCEBcXh8WLFyMuLg6jRo1Cp06dAAAZGRkYO3YsZsyYgRUrVqBDhw745ZdfMGXKFIXuilVpaWlV6w5ZdduKigoAwN69e9G5c2eF7Spby0h9mCgRERERaZBMJmvU8Nr1ZmDQ6F0YGRmhe/fu9d6+f//+yMnJgY6ODuzt7VV63dmzZ1U6VmNi6NWrF44dO4bJkydLZceOHXvgvgMDA/H6668jKSkJX331lcLofydOnMDdu3exdu1aaGndGxbgiy++qHN/5ubmOHXqlEJZSkqKlJD27t0bcrkcmZmZ7GbXDJgoEREREVGTGDlyJAYPHozx48dj9erV6NGjB/7++2/s27cP48ePr7HrHAC8+eabeOKJJ2Bra4sJEyZAS0sLf/75J1JTUxEREaH2GObOnYvg4GB4eHhgyJAh2L59O06fPi0NylAbBwcHeHl5YcqUKbh79y78/f2ldd26dcPdu3fx/vvvY9y4cfj111+rjZKn7PHHH8fbb7+Njz/+GIMHD8ann36KU6dOSd3qTExM8Morr2DevHmoqKjAkCFDUFBQgISEBBgbG0v3dJF6MFEieojwfiMiImpOMpkM+/btw9KlSxEaGop///0XVlZWGDp0KCwtLWt93ahRo7Bnzx689dZbWLNmDXR1ddGzZ09psAV1xzBx4kRcvHgRixYtQklJCZ566im89NJLOHDgwAP3HxQUhFmzZmHy5MkwqNJq169fP6xbtw6rV6/GkiVLMHToUERFRSm0WtV03m+88QYWLlyIkpIShIaGYvLkyUhNTZW2WbFiBSwsLBAVFYVLly6hXbt26N+/v8IgEqQeMtHYcSFbuIKCApiZmSE/Px+mpqaaDoeoWdSVENWmtkSJyRU1VGv8/LW3t0dGRka18pkzZ2LDhg0QQmD58uXYtGkT8vLy4OnpiQ0bNsDFxUWl47TGuiH1KCkpQXp6OhwcHBTutWkWJ07UXF5Lqw5Ra1XX35kqn7+cR4mIiOi+xMREZGdnS8uhQ4cAABMmTAAArFmzBuvWrcP69euRmJgIKysr+Pj44NatW5oMm4iImgATJSIiovsq53GpXPbs2YNu3brB29sbQghER0dj6dKlCAgIgKurK7Zt24aioiLExcVpOnQiIlIzJkpEREQ1KCsrw6efforQ0FDIZDKkp6cjJycHvr6+0jZyuRze3t5ISEioc1+lpaUoKChQWIiIqGXjYA5E1GC13b/Ee5eoLfjmm29w8+ZNhISEAABycnIAoNoN6JaWljXe11RVVFQUli9f3iRxEhFR02CLEhERUQ0++ugjjBkzBjY2NgrlMplM4bkQolqZsiVLliA/P19asrKy1B4vERGpF1uUiIiIlGRkZOCHH37A119/LZVZWVkBuNeyZG1tLZXn5ubWOcwxcK+Lnlwub5pgiYioSbBFiYiISElsbCwsLCzg5/e/bqQODg6wsrKSRsID7t3HFB8fDy8vL02ESURETYgtSkStWEPmSyKiulVUVCA2NhbBwcHQ0fnfZVImkyEsLAyRkZFwcnKCk5MTIiMjYWhoiMDAQA1GTERETYGJEhERURU//PADMjMzERoaWm3dwoULUVxcjJkzZ0oTzh48eBAmJiYaiJSIiJoSu94RERFV4evrCyEEnJ2dq62TyWQIDw9HdnY2SkpKEB8fD1dXVw1ESdS2bNq0Cba2ttDS0kJ0dLSmwwEAhIeHo1+/fhqNQSaT4ZtvvtFoDA8zJkpERERE9EAhISGQyWSQyWTQ1dWFo6MjXnnlFdy+fbtR+y0oKMDs2bOxaNEiXL16FS+++KKaIiZ1WLlyJby8vGBoaIh27do1en+V76MZM2ZUWzdz5kzIZDJpWoZKOTk5ePnll+Ho6Ai5XA5bW1uMGzcOP/74Y6PjqQsTJSIiIiKql9GjRyM7OxuXLl1CREQENm7ciFdeeaXGbe/cuVOvfWZmZuLOnTvw8/ODtbU1DA0NGxRbTcerbwwNERISgvDw8Cbbf3Oxt7fH0aNHa11fVlaGCRMm4KWXXlLbMW1tbbFjxw4UFxdLZSUlJfjss8/QtWtXhW0vX76MAQMG4PDhw1izZg1SU1Oxf/9+DB8+HLNmzVJbTDVhokREzcZ+8d5aFyIiavnkcjmsrKxga2uLwMBABAUFSV3DKruqbdmyRfrlXwiB/Px8vPjii7CwsICpqSkef/xx/PHHHwCArVu3ws3NDQDg6OgImUyGy5cvAwC+++47DBgwAPr6+nB0dMTy5ctx9+5dKRaZTIYPPvgA/v7+MDIyQkRERINiqLRq1SpYWlrCxMQEU6ZMQUlJSYPracmSJRg0aFC18j59+mDZsmUAgMTERPj4+KBTp04wMzODt7c3kpOTa93n0aNHIZPJcPPmTaksJSVFoc4AICEhAUOHDoWBgQFsbW0xZ86cRrX6LV++HPPmzZP+n5Tl5eUhKCgI5ubmMDAwgJOTE2JjY+vcZ//+/dG1a1eFKRi+/vpr2Nrawt3dXWHbylam48eP4+mnn4azszNcXFwwf/58HDt2rMHnVR9MlIiIiIhagNu3b+P27dsQQkhlZWVluH37NkpLS2vctqKiQiq7c+cObt++Xe0Lfo3bVkk4GkIIgfLycujr6yu02ly4cAFffPEFdu7ciZSUFACAn58fcnJysG/fPiQlJaF///4YMWIEbty4gYkTJ+KHH34AABw/fhzZ2dmwtbXFgQMH8Nxzz2HOnDk4c+YMPvzwQ2zduhUrV65UiGPZsmXw9/dHamqqNACLqjEAwBdffIFly5Zh5cqVOHHiBKytrbFx48YG109QUBB+//13XLx4USo7ffo0UlNTERQUBAC4desWgoOD8fPPP+PYsWNwcnLC2LFjcevWrQYfNzU1FaNGjUJAQAD+/PNPfP755/jll18we/bsBu/zQd544w2cOXMG33//PdLS0hATE4NOnTo98HUvvPCCQkK1ZcuWaoPo3LhxA/v378esWbNgZGRUbR/q6ApYFyZKRERERC2AsbExjI2Nce3aNans7bffhrGxcbUvuhYWFjA2NkZmZqZUtmHDBhgbG2PKlCkK29rb28PY2Bhp6elS2dbvvmtUrBUVFfj000/xySef4PHHH5fKy8rK8Mknn8Dd3R19+vTBkSNHkJqaii+//BIeHh5wcnLCO++8g3bt2uGrr76CgYEBOnbsCAAwNzeHlZUVtLW1sXLlSixevBjBwcFwdHSEj48PVqxYgQ8//FAhjsDAQISGhsLR0RF2dnYNigEAoqOjERoaiqlTp6JHjx6IiIhA7969G1w/rq6u6NOnD+Li4qSy7du3Y+DAgdJAMY8//jiee+459OrVC7169cKHH36IoqIixMfHN/i4b7/9NgIDAxEWFgYnJyd4eXnhvffew8cff9yoFrK6ZGZmwt3dHR4eHrC3t8fIkSMxbty4B77u+eefxy+//ILLly8jIyMDv/76K5577jmFbS5cuAAhBHr27NkksT8IEyUiIiIiqpc9e/bA2NgYRkZGCA0Nhbu7O959911pvZ2dHczNzaXnSUlJKCwsRMeOHaVE0NjYGOnp6QqtLcqSkpLw1ltvKbxm2rRpyM7ORlFRkbSdh4dHtdc2JIa0tDQMHjxYYT/Kz7dv367w+u3btyMyMrJaWaWgoCDpuRACn332mdSaBAC5ubmYMWMGnJ2dYWZmBjMzMxQWFiokv6pKSkrC1q1bFWIaNWoUKioqkH4/UZ4xY4bC+szMTIwZM6ZaWX299NJL2LFjB/r164eFCxciISGhXq/r1KkT/Pz8sG3bNsTGxsLPz69aS1Rl66pMJqt3POrEeZSIiIiIWoCCggLk5ubizp07qKiogJaWFl599VWEhYUpTH4M3PuSDQAGBgZS2axZszBt2jRoa2srbFt5/4rB6dNSWUg9fvGvyfDhwxETEwMtLS3k5uZCR0cHFhYW0nrl7lEVFRWwtraucbCAurpNVVRUYPny5QgICKi2Tl9fv9bjKZdVVFTg5s2bsLS0xNGjR6GlpdhGoErXrSeffBKenp7S80WLFqFz586YM2eOVGZpaSk9DgwMxOLFi5GcnIzi4mJkZWXh2WefldaHhITg33//RXR0NOzs7CCXyzF48GCUlZXVePzK2Kt2zVQerKKiogLTp09XiKlS5SAJb731lsIAHMOGDcPq1asVzs3GxqbuyqhizJgxyMjIwN69e/HDDz9gxIgRmDVrFt55550HvjY0NFRqLd2wYUO19U5OTpDJZEhLS8P48ePrHZO6MFEiIiIiagEMDQ2Rl5eHvLw86Qu3np4e9PT0qm1bU4Kgq6sLXV3d2retkiTo6jTsK6CRkRG6d++O8vJy6f6euvTv3x85OTnQ0dGBvb19vY/Tv39/nD17Ft27d29QnJWEELCxsUFubi60tbXRrVu3Grfr1asXjh07hsmTJ0tlygMFmJiYKEwubWJigg4dOtQaY5cuXTB06FBs374dxcXFGDlypEIi9fPPP2Pjxo0YO3YsACArK0uh26Wyylay7OxstG/fHgCke7Aq9e/fH6dPn66z3iwsLBSSWx0dHXTu3LlRdW1ubo6QkBCEhITgsccew6uvvlqvRGn06NFSYjhq1Khq6zt06IBRo0Zhw4YNmDNnTrX3/c2bN5v0PiUmSkREREQtgEwmk7oeyWQy4MSJ2jeuoctZSzRy5EgMHjwY48ePx+rVq9GjRw/8/fff2LdvH8aPH19j1zkAePPNN/HEE0/A1tYWEyZMgJaWFv7880+kpqYiIiKi3seXyWQYO3Ystm7diqeeeqrWGObOnYvg4GB4eHhgyJAh2L59O06fPg1HR8dGnX9QUBDCw8NRVlaG//73vwrrunfvjk8++QQeHh4oKCjAq6++qtBCqKx79+6wtbVFeHg4IiIicP78eaxdu1Zhm0WLFmHQoEFS66KRkRHS0tJw6NAhvP/++w06h8zMTNy4cQOZmZkoLy+XkrPu3bvD2NgYb775JgYMGAAXFxeUlpZiz5496NWrV732ra2tjbS0NOlxTTZu3AgvLy888sgjeOutt9CnTx/cvXsXhw4dQkxMjPT6psB7lIiIiIhaAC0tLdjb28Pe3r5aF7HWSiaTYd++fRg6dChCQ0Ph7OyMZ599FpcvX1ZoXVE2atQo7NmzB4cOHcLAgQMxaNAgrFu3Thqwob60tLTg4OCAw4cP1xnDxIkT8eabb2LRokUYMGAAMjIy1DJv0IQJE3D9+nUUFRVV6zq2ZcsW5OXlwd3dHc8//zzmzJmj0NKjTFdXF5999hn++usv9O3bF6tXr66WNPbp0wfx8fE4f/48HnvsMbi7u+ONN96AtbV1g8/hzTffhLu7O5YtW4bCwkK4u7vD3d0dJ+4n8np6eliyZAn69OmDoUOHQltbGzt27Kj3/k1NTWFqalrregcHByQnJ2P48OFYsGABXF1d4ePjgx9//BExMTENPq/6kImqHR3boIKCApiZmSE/P7/O/wSi1kid8w9dXuWntmM0ZF+1vYZaL37+1o518/AqKSlBeno6HBwcFO61qZG6W5Rq218D9lVeXo6TJ08CANzd3WttDSDShLr+zlT5/G0bP1cQERERERGpEe9RIiIiImoBysvL8ccffwAA+vbtC7bRNF61OmXLF6mAiRIRERFRC1FRUaHpENoc1ik1FBMlIiIiohZAS0sLbm5u0mNqPNYpNQYTJSICoN6BIYiISHUymQxyuVzTYbQprFNqDI2m1uHh4ZDJZAqLlZWVtF4IgfDwcNjY2MDAwADDhg3D6SqzShMRERERETUFjbdBuri4IDs7W1pSU1OldWvWrMG6deuwfv16JCYmwsrKCj4+Prh165YGIyYiIiJSv4qKCvzzzz/4559/eF+NmrBOqTE03vVOR0dHoRWpkhAC0dHRWLp0KQICAgAA27Ztg6WlJeLi4jB9+vTmDpWIiIioyQghkJWVBQDo1KmThqNpG1in1BgaT5TOnz8PGxsbyOVyeHp6IjIyEo6OjkhPT0dOTg58fX2lbeVyOby9vZGQkFBrolRaWorS0lLpeUFBQZOfAxEREVFjyWQydOjQQXrcIHVNUvsQUkud0kNLo4mSp6cnPv74Yzg7O+Off/5BREQEvLy8cPr0aeTk5AAALC0tFV5jaWmJjIyMWvcZFRWF5cuXN2ncRFS3hgwMUdtrLq/ya2w4REStgpaWFhwdHTUdhkZs2rQJK1aswNWrV7Fu3TqEhYWpZb+NqdPw8HB88803SElJUUssNTl69CiGDx+OvLw8tGvXrsmOQw2j0XuUxowZg6eeegpubm4YOXIk9u6990Vp27Zt0jbK2b8Qos5fBJYsWYL8/HxpqWxuJSIiIqKGCwkJkQbf0tfXh7+/P6Kjo3H79u1G7begoACzZ8/GokWLcPXqVbz44otqipjqo6SkBCEhIXBzc4OOjg7Gjx/f6H3a29tDJpNhx44d1da5uLhAJpNh69atCuUnT57EhAkTYGlpCX19fTg7O2PatGk4d+5co+NpKI0P5lCVkZER3NzccP78eem+pcqWpUq5ubnVWpmqksvlMDU1VViIiIiIqPFGjx6N7OxsnD9/Hi+99BK++uorLFy4sMZt79y5U699ZmZm4s6dO/Dz84O1tTUMDQ0bFFtNx6tvDG3Z5cuX62xkKC8vh4GBAebMmYORI0eq7bi2traIjY1VKDt27BhycnJgZGSkUL5nzx4MGjQIpaWl2L59O9LS0vDJJ5/AzMwMb7zxhtpiUlWLSpRKS0uRlpYGa2trODg4wMrKCocOHZLWl5WVIT4+Hl5eXhqMkoiIiEj9ysvLkZKSgpSUFJSXl2s6nBrJ5XJYWVnB1tYWo0ePxujRo/Htt98CuNdVrV+/ftiyZQscHR0hl8shhEB+fj5efPFFWFhYwNTUFI8//jj++OMPAMDWrVulCWEdHR0hk8lw+fJlAMB3332HAQMGQF9fH46Ojli+fDnu3r0rxSKTyfDBBx/A398fRkZGiIiIqDGGkydP4ueff8a0adNqjKHSqlWrYGlpCRMTE0yZMgUlJSV11sXgwYOxePFihbJ///0Xurq6OHLkCADg008/hYeHB0xMTGBlZYXAwEDk5ubWus/K+KuKjo6Gvb29QllsbCx69eoFfX199OzZExs3bqwz1roYGRkhJiYG06ZNq3GANQD4448/MHz4cJiYmMDU1BQDBgzAiQfcDxcUFIT4+HiF3l1btmxBUFAQdHT+d/dPUVERXnjhBYwdOxa7d+/GyJEj4eDgAE9PT7zzzjv48MMPG3xujaXRROmVV15BfHw80tPT8fvvv+Ppp59GQUEBgoODIZPJEBYWhsjISOzatQunTp1CSEgIDA0NERgYqMmwiYiIiNTu9u3buHXrlkIrSNmdO7hdXIzSsrJq296+fVthyOs797ctqTKoFQDcLi7G7eJixW2rJByNoa+vrxDvhQsX8MUXX2Dnzp3SvT1+fn7IycnBvn37kJSUhP79+2PEiBG4ceMGJk6ciB9++AEAcPz4cWRnZ8PW1hYHDhzAc889hzlz5uDMmTP48MMPsXXrVqxcuVLh+MuWLYO/vz9SU1MRGhpaLYakpCTcvXsXL7/8cq0xAMAXX3yBZcuWYeXKlThx4gSsra0fmHwEBQXhs88+gxBCKvv8889haWkJb29vAPd+5F+xYgX++OMPfPPNN0hPT0dISEij6nzz5s1YunQpVq5cibS0NERGRuKNN95QuHVF3YKCgtClSxckJiYiKSkJixcvhq6ubp2vsbS0xKhRo6S4ioqK8Pnnn0v/T5UOHDiAa9eu1doyqcl7tzSaKF25cgWTJk1Cjx49EBAQAD09PRw7dgx2dnYAgIULFyIsLAwzZ86Eh4cHrl69ioMHD8LExESTYRMRURt29epVPPfcc+jYsSMMDQ3Rr18/JCUlSes5GTo1FTMzMwwdOhSWlpbQ0rr3Fe3tTz6B8dChmL1mjcK2FhYWMDY2RmZmplS2YcMGGA8diikrVihsa//kkzAeOhRp6elS2dbvvmt0vKdPn8b+/fvx+OOPS2VlZWX45JNP4O7ujj59+uDIkSNITU3Fl19+CQ8PDzg5OeGdd95Bu3bt8NVXX8HAwAAdO3YEAJibm8PKygra2tpYuXIlFi9ejODgYDg6OsLHxwcrVqyo1roQGBiI0NBQODo6St8fq8bQr18/XLt2Denp6bXGANxrtQkNDcXUqVPRo0cPREREoHfv3nWe/8SJE/H333/jl19+kcri4uIQGBgo/f+FhoZizJgxcHR0xKBBg/Dee+/h+++/R2FhYYPrfcWKFVi7di0CAgLg4OCAgIAAzJs3r0lbXjIzMzFy5Ej07NkTTk5OmDBhAvr27fvA14WGhmLr1q0QQuCrr75Ct27dqrWYnT9/HgDQs2fPpgi9UTQ66l1NN3hVJZPJEB4ejvDw8OYJiIiIHmp5eXl49NFHMXz4cHz//fewsLDAxYsXFX7RrJwMfevWrXB2dkZERAR8fHxw9uxZ/pBHamFgYNBih7Les2cPjI2NcffuXdy5cwdDhw7Fu+++K623s7ODubm59DwpKQmFhYVSMlSpuLgYFy9erPU4SUlJSExMVGhBKi8vR0lJCYqKiqT7mDw8PKq9tmoMMpkMp06dQmFhYbV5lKrGkJaWhhkzZiisHzx4sNSF7ueff8aYMWOkdR9++CGCgoLg4+OD7du347HHHkN6ejp+++03xMTESNudPHkS4eHhSElJwY0bN6RWvczMzAcmYjX5999/kZWVhSlTpmDatGlS+d27d2FmZiY9d3FxkUaJrmzxMjY2VqgjVX7gmT9/PqZOnYpPPvkEI0eOxIQJE9CtW7cHvs7Pzw/Tp0/HTz/9hC1btlRrTaoaX0uk8XmUiIiIWorVq1dXuwG56r0BnAydmlJlK0PVwQxeff55hE2aBB1tbYVtK+9zMTAwkMpmzZqFaQMGQFtLscPQ5d27720rl0tlIePGNSjG4cOHIyYmBlpaWsjNzYWOjg4sLCyk9co36VdUVMDa2hpHjx6ttq+6ulRVVFRg+fLl0t9ZVfr6+rUeT50xVOXh4aEwTHjlwGJBQUGYO3cu3n//fcTFxcHFxUVqabl9+zZ8fX3h6+uLTz/9FObm5sjMzMSoUaNQptSVspKWlla1xKFq18bKRGvz5s3w9PRU2E67yntk37590uuuXr2KYcOGKcT/oG5zysLDwxEYGIi9e/fi+++/x7Jly7Bjxw785z//qfN1Ojo6eP7557Fs2TL8/vvv2LVrV7VtnJ2dAQB//fUXBg8erFJcTY2JEhER0X27d+/GqFGjMGHCBMTHx6Nz586YOXOm9MttQydDJ6oPAwMDXL9+HUVFRejYsSO0AOjp6kKvhi+1NSUIurq60K2SOEnb1lCmq9Owr4BGRkbo3r07ysvLpft76tK/f3/k5ORAR0en2oAED3rd2bNn0b179wbFWamiogKOjo7Iycmpc06lXr164dixY5g8ebJUduzYMemxgYFBjbGMHz8e06dPx/79+xEXF4fnn39eWvfXX3/h2rVrWLVqFWxtbQHggQMgmJubIycnR2E6HOUErXPnzrh06RKCgoJq3U9lN0QA0sAJja1LZ2dnODs7Y968eZg0aRJiY2MfmCgB97rfvfPOO5g4cSLat29fbb2vry86deqENWvW1JhI3bx5U2P3KTFRIiIiuu/SpUuIiYnB/Pnz8dprr+H48eOYM2cO5HI5Jk+e3ODJ0EtLS1Fa5Qb7goKCpjkBatWEENL7qEOHDhqORj1GjhyJwYMHY/z48Vi9ejV69OiBv//+G/v27cP48eNr7DoHAG+++SaeeOIJ2NraYsKECdDS0sKff/6J1NRURERE1Pv4QgjY29vDzc0NAQEBtcYwd+5cBAcHw8PDA0OGDMH27dtx+vTpB05Wa2RkBH9/f7zxxhtIS0tTGHCsa9eu0NPTw/vvv48ZM2bg1KlTWKF0/5iyYcOG4d9//8WaNWvw9NNPY//+/fj+++8VprsJDw/HnDlzYGpqijFjxqC0tBQnTpxAXl4e5s+fX++6qerMmTMoKyvDjRs3cOvWLSk569evH4qLi/Hqq6/i6aefhoODA65cuYLExEQ89dRT9dp3r169cO3atVqHfTcyMsL//d//YcKECXjyyScxZ84cdO/eHdeuXcMXX3yBzMzMB96u01Ra1PDgREREmlRRUYH+/fsjMjIS7u7umD59OqZNm6ZwzwGg+mToUVFRMDMzk5bKX5eJAAAnTgAnTkB28iTaAWgHQHbypGZjUhOZTIZ9+/Zh6NChCA0NhbOzM5599llcvny5znkxR40ahT179uDQoUMYOHAgBg0ahHXr1im0lNT3+O3bt0dsbCwee+yxWmOYOHEi3nzzTSxatAgDBgxARkYGXnrppXodIygoCH/88Qcee+wxdO3aVSo3NzfH1q1b8eWXX6J3795YtWoV3nnnnTr31atXL2zcuBEbNmxA3759cfz4cbzyyisK20ydOhX/93//Jw2t7u3tja1bt8LBwUGluqlq7NixcHd3x3fffYejR4/C3d0d7u7uAO516bt+/TomT54MZ2dnPPPMMxgzZgyWL19e7/137NhRoZuoMn9/fyQkJEBXVxeBgYHo2bMnJk2ahPz8fJUSY3WTiZZ8B5UaFBQUwMzMDPn5+Zx8ltoc+8V7NR1Ck7u8yk/TIVADtcbPXzs7O/j4+OD//u//pLKYmBhERETg6tWruHTpErp164bk5GTpSwRw7yLfrl27WofnralFydbWtlXVDalHSUkJ0tPT4eDg8L97bR7QHatGtbTEqHVfdSgvL8fJ+8mcu7u7wv0xRJpW49/Zfapcm9iiREREdN+jjz6Ks2fPKpSdO3dO+hW7oZOhy+VymJqaKixERNSy8R4lIiKi++bNmwcvLy9ERkbimWeewfHjx7Fp0yZs2rQJABQmQ3dycoKTkxMiIyM5GTq1TXW1TlVpUSVqq5goERER3Tdw4EDs2rULS5YswVtvvQUHBwdER0crjC61cOFCFBcXY+bMmcjLy4OnpycnQye1KAdQObONCwB2Zmu88vJyab4gFxcXdhEklTBRIiIiquKJJ57AE088Uet6ToZOTanm2XWoMWqbs4joQZgoEREREbUAWgB6VXlMjaelpYVevXpJj4lUwUSJiIiIqJnVNOiwDED1aWSpMWQyWY2T81Lbpq5BvZkoEbUQD8NQ3w1RV71w6HAiam10dXUBAEVFRXXOK0NEDVdUVATgf39vDcVEiYiIiKiZaGtro127dsjNzQUAGBoaonKqYgHg5v3H7QDUPoUxgJIS9QXVgH2VV3lNSUlJix0kQQiBmzdvAgDatWtX58TQ1PoJIVBUVITc3Fy0a9eu0e9LJkpEREREzcjKygoApGQJ164BACoAZN3fxhYPuE8pPb3m8vv7UsnRoyq/pOLyZVy7f6zLly+32Pt/KioqkJV1r1ZtbW1bbJykXu3atZP+zhqDiRIRERFRM5LJZLC2toaFhQXu3LkDjBkDACgBsPL+NhsB6Ne1k7/+qrn8/r6aWlFyMvz87nV/Tk5OhqGhYbMcV1UlJSVYufJerW7cuBH6+nXWKrUBurq6amvhZKJEREREpAHa2tr3vtBlZAC4lxjF1ffFtX3hv7+vplYulyPj/rHkcnmLTUD09fURF1fvWiVSwPZHIiIiIiIiJUyUiIiIiIiIlDBRIiIiImoBigC43F+KNBxLW1FUVAQXFxe4uLhIQ0YT1RfvUSIiIiJqAQSAM1UeU+MJIXDmzBnpMZEqmCgRERERtQD6AI5UeUyNp6+vjyNHjkiPiVTBRImIiIioBdAGMEzTQbQx2traGDZsmKbDoFaK9ygREREREREpYYsSERERUQtwF8Ce+4+fAL+kqcPdu3exZ8+9Wn3iiSego8NapfpT+d2yf/9+GBsbY8iQIQCADRs2YPPmzejduzc2bNiA9u3bqz1IorbCfvFeTYdAREQtVCmA/9x/XAgmSupQWlqK//znXq0WFhYyUSKVqNz17tVXX0VBQQEAIDU1FQsWLMDYsWNx6dIlzJ8/X+0BEhERET0MtAB43V94b4R6aGlpwcvLC15eXtDSYq2SalROq9PT09G7d28AwM6dO/HEE08gMjISycnJGDt2rNoDJCIiInoYGAD4VdNBtDEGBgb49VfWKjWMyqm1np6eNGHXDz/8AF9fXwBAhw4dpJYmIiIiIiKi1kzlFqUhQ4Zg/vz5ePTRR3H8+HF8/vnnAIBz586hS5cuag+QiIiIiIiouancorR+/Xro6Ojgq6++QkxMDDp37gwA+P777zF69Gi1B0hERET0MCgGMPD+UqzhWNqK4uJiDBw4EAMHDkRxMWuVVKNyi1LXrl2lYRar+u9//6uWgIiIiIgeRhUATlR5TI1XUVGBEydOSI+JVNGgMRIrKipw4cIF5ObmVnvTDR06VC2BERERET1M5PjfPEpyTQbShsjlcukHfrmctUqqUTlROnbsGAIDA5GRkQEhhMI6mUyG8vJytQVHRERE9LDQAeCn6SDaGB0dHfj5sVapYVROlGbMmAEPDw/s3bsX1tbWkMlkTREXERERERGRxqg8mMP58+cRGRmJXr16oV27djAzM1NYGioqKgoymQxhYWFSmRAC4eHhsLGxgYGBAYYNG4bTp083+BhERER1CQ8Ph0wmU1isrKyk9bwuUVMqB3Do/sL+OepRXl6OQ4cO4dChQ+z1RCpTOVHy9PTEhQsX1BpEYmIiNm3ahD59+iiUr1mzBuvWrcP69euRmJgIKysr+Pj44NatW2o9PhERUSUXFxdkZ2dLS2pqqrSO1yVqSiUAfO8vJRqOpUnIZDUvTaikpAS+vr7w9fVFSUmbrFVqQip3vXv55ZexYMEC5OTkwM3NDbq6ugrrlZOdByksLERQUBA2b96MiIgIqVwIgejoaCxduhQBAQEAgG3btsHS0hJxcXGYPn26qqETERE9kI6OjkIrUiVel6ipaQHoW+UxNZ6Wlhb69u0rPSZShcrvmKeeegppaWkIDQ3FwIED0a9fP7i7u0v/qmrWrFnw8/PDyJEjFcrT09ORk5MDX19fqUwul8Pb2xsJCQm17q+0tBQFBQUKCxERUX2dP38eNjY2cHBwwLPPPotLly4BaPh1iai+DACk3F8MNBpJ22FgYICUlBSkpKTAwIC1SqpRuUUpPT1dbQffsWMHkpOTkZiYWG1dTk4OAMDS0lKh3NLSEhkZGbXuMyoqCsuXL1dbjERE9PDw9PTExx9/DGdnZ/zzzz+IiIiAl5cXTp8+3eDrEnDvR7zS0lLpOX/EIyJq+VROlOzs7NRy4KysLMydOxcHDx6Evr5+rdspj6onhKhzpL0lS5Zg/vz50vOCggLY2to2PmAiImrzxowZIz12c3PD4MGD0a1bN2zbtg2DBg0CoPp1CeCPeHQfRwomalUa1Fnz4sWLePnllzFy5Ej4+Phgzpw5uHjxokr7SEpKQm5uLgYMGAAdHR3o6OggPj4e7733HnR0dKRf7Cp/wauUm5tb7de8quRyOUxNTRUWIiKihjAyMoKbmxvOnz8v3bek6nUJuPcjXn5+vrRkZWU1WczUehUDGHZ/KdZoJG1HcXExhg0bhmHDhqG4mLVKqlE5UTpw4AB69+6N48ePo0+fPnB1dcXvv/8OFxcXHDp0qN77GTFiBFJTU6V+oykpKfDw8EBQUBBSUlLg6OgIKysrhX2WlZUhPj4eXl5eqoZNRESkstLSUqSlpcHa2hoODg4Nvi7xRzyqjwoA8feXCg3H0lZUVFQgPj4e8fHxqKhgrZJqVO56t3jxYsybNw+rVq2qVr5o0SL4+PjUaz8mJiZwdXVVKDMyMkLHjh2l8rCwMERGRsLJyQlOTk6IjIyEoaEhAgMDVQ2biIjogV555RWMGzcOXbt2RW5uLiIiIlBQUIDg4GBprj9el6ipyAF8UeVxq9TCuhfK5XJ88cUX0mMiVaicKKWlpUlvuKpCQ0MRHR2tjpgkCxcuRHFxMWbOnIm8vDx4enri4MGDMDExUetxiIiIAODKlSuYNGkSrl27BnNzcwwaNAjHjh2T7s/ldYmakg6ACZoOoo3R0dHBhAmsVWoYlRMlc3NzpKSkwMnJSaE8JSUFFhYWjQrm6NGjCs9lMhnCw8MRHh7eqP0SERHVx44dO+pcz+sSEdHDQ+VEadq0aXjxxRdx6dIleHl5QSaT4ZdffsHq1auxYMGCpoiRiIiIqM0rB3Ds/uNBALQ1GEtbUV5ejmPH7tXqoEGDoK3NWqX6UzlReuONN2BiYoK1a9diyZIlAAAbGxuEh4djzpw5ag+QiIiI6GFQAmDI/ceFAIw0GMsDGRvX/LiFKSkpwZAh92q1sLAQRkYtulaphVE5UZLJZJg3bx7mzZuHW7duAQD7ZhMRERE1kgxA9yqPqfFkMhm6d+8uPSZShcqJUlVMkIiIiIjUwxDAeU0H0cYYGhri/HnWKjVMvRKl/v3748cff0T79u3h7u5eZ0aenJystuCIiIiIqAZsHSFqcvVKlPz9/aWx5/39/dl0SUREREREbVq9EqVly5ZJjzkkKhEREZH6lQB46v7jnQD0NRhLW1FSUoKnnrpXqzt37oS+PmuV6k9L1Rc4Ojri+vXr1cpv3rwJR0dHtQRFRERE9LApB7Dv/lKu4VjaivLycuzbtw/79u1DeTlrlVSj8mAOly9frvGNVlpaiitXrqglKCIiIqKHjR6A2CqPqfH09PQQGxsrPSZSRb0Tpd27d0uPDxw4ADMzM+l5eXk5fvzxRzg4OKg3OiIiIqKHhC6AEE0H0cbo6uoiJCRE02FQK1XvRGn8+PEA7o1BHxwcrLBOV1cX9vb2WLt2rVqDIyIiIiIi0oR6J0oVFRUAAAcHByQmJqJTp05NFhQRERHRw6YcQOr9x24AtDUYS1tRXl6O1NR7term5gZtbdYq1Z/K9yilp6c3RRxERERED7USAO73HxcCMNJgLG1FSUkJ3N3v1WphYSGMjFirVH8qJ0oAcPv2bcTHxyMzMxNlZWUK6+bMmaOWwIiIiIgeJjIANlUeU+PJZDLY2NhIj4lUoXKidPLkSYwdOxZFRUW4ffs2OnTogGvXrsHQ0BAWFhZMlIiIiIgawBDAVU0H0cYYGhri6lXWKjWMyvMozZs3D+PGjcONGzdgYGCAY8eOISMjAwMGDMA777zTFDESEREREf2PTFbzQqRGKrcopaSk4MMPP4S2tja0tbVRWloKR0dHrFmzBsHBwQgICGiKOIlaFfvFezUdAhERERE1gsotSrq6ulIfT0tLS2RmZgIAzMzMpMdEREREpJoSABPuLyUajqWtKCkpwYQJEzBhwgSUlLBWSTUqtyi5u7vjxIkTcHZ2xvDhw/Hmm2/i2rVr+OSTT+Dm5tYUMRIRERG1eeUAvrr/eKsG42hLysvL8dVX92p169atmg2GWh2VE6XIyEjcunULALBixQoEBwfjpZdeQvfu3REbG6v2AImIiIgeBnoA1ld5TI2np6eH9evXS4+JVKFyouTh4SE9Njc3x759+9QaEBEREdHDSBfALE0H0cbo6upi1izWKjWMyvcoERERERERtXX1alFyd3ev9yRdycnJjQqIiIiI6GFUAeDi/cfdwF+z1aGiogIXL96r1W7dukFLi7VK9VevRGn8+PFNHAYRERHRw60YgPP9x4UAjDQYS1tRXFwMZ+d7tVpYWAgjI9Yq1V+9EqVly5Y1dRxEREREDz0zTQfQBpmZsVapYdj+SEREVIuoqCjIZDKEhYVJZUIIhIeHw8bGBgYGBhg2bBhOnz6tuSCpzTACcPP+wnYP9TAyMsLNmzdx8+ZNtiaRylROlLS0tKCtrV3rQkRE1BYkJiZi06ZN6NOnj0L5mjVrsG7dOqxfvx6JiYmwsrKCj4+PNHUGEalIJqt90eS+6KGn8vDgu3btUnh+584dnDx5Etu2bcPy5cvVFhgREZGmFBYWIigoCJs3b0ZERIRULoRAdHQ0li5dioCAAADAtm3bYGlpibi4OEyfPl1TIRMRkZqpnCj5+/tXK3v66afh4uKCzz//HFOmTFFLYERERJoya9Ys+Pn5YeTIkQqJUnp6OnJycuDr6yuVyeVyeHt7IyEhgYkSNUopgMp30IcA5BqMpa1QqNPSUsjlrFWqP5UTpdp4enpi2rRp6todUatgv3ivpkN4qNVW/5dX+TVzJNSW7NixA8nJyUhMTKy2LicnBwBgaWmpUG5paYmMjIxa91laWorS0lLpeUFBgZqipbbkLoBt9x9vABMldVCo07t3mSiRStSSKBUXF+P9999Hly5d1LE7IiIijcjKysLcuXNx8OBB6Ovr17qd8tyCQog65xuMiopi93R6IF0Aa6o8psZTqFNd1iqpRuVEqX379goXAyEEbt26BUNDQ3z66adqDY6IiKg5JSUlITc3FwMGDJDKysvL8dNPP2H9+vU4e/YsgHstS9bW1tI2ubm51VqZqlqyZAnmz58vPS8oKICtrW0TnAG1ZnoAXtV0EG2MQp3q6WkwEmqNVE6UoqOjFZ5raWnB3Nwcnp6eaN++vbriIiIianYjRoxAamqqQtkLL7yAnj17YtGiRXB0dISVlRUOHToEd3d3AEBZWRni4+OxevXqWvcrl8vZ5YeIqJVROVEKDg5uijiIiIg0zsTEBK6urgplRkZG6Nixo1QeFhaGyMhIODk5wen/27vzuKjq9Q/gnxGZYUdxYUQQKBcSxTUVzV1RcysrNc20bPG6W93S9AraFdRMqTRNr6H1yyVTyjbUStHEFfGKgjuoFYiZghsg8vz+EOYyzAzOMAMzjJ/363VenDnrM8/MnHMezjnf06gRIiMj4eLighEjRlgjZLIjhQAyivrrgQ+7tAStnBYWolo1ZpWMV657lHJzc3Hs2DFkZWWhsLBQa9ygQYOMXs7y5cuxfPlypKenAwCCg4Mxe/Zs9OvXD8D9y/rmzJmDlStX4tq1a2jfvj2WLVuG4ODg8oRNRERktrfffht37tzB+PHjNfum7du3w93d3dqhURV3B0Dx3d43wYfOWoJWTu/c4UNnySQmF0pxcXEYNWoUrl69qjNOoVDg3r17Ri/L19cX8+fPR8OGDQHcfxbF4MGDkZSUhODgYM1D/dasWYPGjRvj3//+N3r37o1Tp05xh0RERJVi165dWq8VCgUiIiIQERFhlXjIvlmsOWLSYE6pvEw+/zhx4kQMHToUGRkZKCws1OpMKZIAYODAgXjyySfRuHFjNG7cGPPmzYObmxv279+v81C/Zs2aYe3atbh9+zbWrVtnathERERENs0VwN2ijuc9LEMrpzybRCYyuVDKysrCG2+8UWbrPuVx7949bNiwAbdu3UJoaOgDH+pnSF5eHnJycrQ6IiIiIiIiU5hcKD377LM6lyGYIzk5GW5ublCpVBg3bhxiY2PRtGnTMh/qVzxOn6ioKHh6emo6Nr9KRERERESmMvmyzaVLl+K5557Dnj170Lx5c52Hd02ePNmk5TVp0gRHjx7F9evXsXnzZowePRrx8fGa8aY+1I/PqiAiIqKqKA9A8RHMYgBsUN58WjnNy2Mz/WQSkwuldevWYdu2bXB2dsauXbu0ihaFQmFyoaRUKjWNObRt2xaHDh3Chx9+iHfeeQeA6Q/147MqiIiIqCoqAPBJUf9CsFCyBK2cFhTwGJFMYnKhNGvWLMydOxfTp0+vkLboRQR5eXkIDAws10P9iIiIiKoiRwDhJfrJfFo5dWRWyTQmF0r5+fkYNmyYRYqkd999F/369YOfnx9u3LiBDRs2YNeuXYiLi4NCoeBD/YiIiOihoQQQYe0g7IxWTpVK6wVCVZLJhdLo0aOxceNGvPvuu2av/PLlyxg1ahQyMjLg6emJkJAQxMXFoXfv3gD4UD8iIiIiIrIOkwule/fuYeHChdi2bRtCQkJ0TmMuXrzY6GWtXr26zPF8qB8RERE9LARAdlG/JwDDTVeRsbRy+oAGwYhKM7lQSk5O1twzdPz4ca1x/PIRERERlc9tADWL+m+CD521BK2c3r7Nh86SSUwulHbu3FkRcRAREREREdkMkwslIiIiIrI8FwD5Rf08QLMMrZy6uFgzFKqCjPodDhkyBGvWrIGHhweGDBlS5rRbtmyxSGBEREREDxMF2Cy4pWnllLeIkImMKpQ8PT019x95enpWaEBERERERETWZlShFBMTo7efiIiIiCwjH8DMov55uP8MIDKPVk7z86Hks5TIBCY/NfbOnTu4ffu25vWFCxcQHR2N7du3WzQwIiIioofJXQCLirq7Vo7FXmjl9C6zSqYx+V7BwYMHY8iQIRg3bhyuX7+Odu3aQalU4q+//sLixYvxj3/8oyLiJCIiIrJrjgDeKtFP5tPKqSOzSqYx+YzSkSNH0LlzZwDA119/DbVajQsXLuDzzz/HRx99ZPEAiYiIiB4GSgDvF3W8QMwytHLKy+7IRCYXSrdv34a7uzsAYPv27RgyZAiqVauGDh064MKFCxYPkIiIiIiIqLKZXCg1bNgQ33zzDS5duoRt27YhLCwMAJCVlQUPDw+LB0hERET0MBDcv6fmblE/4X6T3vo6I2nlVJhVMo3J9yjNnj0bI0aMwLRp09CzZ0+EhoYCuH92qVWrVhYPkIioMgRM/0Hv8PT5/Ss5EiJ6WN0G4FbUfxOAqxVjsRdaOb19G66uzCoZz+RC6dlnn8UTTzyBjIwMtGjRQjO8Z8+eePrppy0aHBERERERkTWYXCgBgFqthlqt1hrWrl07iwRERERE9DByAXCtRD+ZTyunLswqmaZchRIRERERWZYCQA1rB2FntHJqwr1NREA5GnMgIiIiIiKydyyUiMjuBEz/QW9H9CDLly9HSEgIPDw84OHhgdDQUPz000+a8SKCiIgI+Pj4wNnZGd26dcOJEyesGDHZk3wAEUVdvlUjsR9aOc1nVsk0RhVKrVu3xrVr96/wnDt3Lm7fvl2hQREREVmDr68v5s+fj8OHD+Pw4cPo0aMHBg8erCmGFi5ciMWLF2Pp0qU4dOgQ1Go1evfujRs3blg5crIHdwHMKeruWjkWe6GV07vMKpnGqEIpNTUVt27dAgDMmTMHN2/erNCgiIiIrGHgwIF48skn0bhxYzRu3Bjz5s2Dm5sb9u/fDxFBdHQ0Zs6ciSFDhqBZs2ZYu3Ytbt++jXXr1lk7dLID1QGML+p4E7llaOW0OrNKpjHqG9OyZUu89NJLeOKJJyAiWLRoEdzc3PROO3v2bIsGSEREZA337t3Dpk2bcOvWLYSGhiItLQ2ZmZmaB60DgEqlQteuXZGQkIDXX3/ditGSPVABWGbtIOyMVk5VKitGQlWRUYXSmjVrEB4eju+//x4KhQI//fST3qpcoVCwUCK7w3tbiB4uycnJCA0NRW5uLtzc3BAbG4umTZsiISEBAODt7a01vbe3Ny5cuFDmMvPy8pCXl6d5nZOTY/nAiYjIoowqlJo0aYINGzYAAKpVq4ZffvkFdevWrdDAiIiIrKFJkyY4evQorl+/js2bN2P06NGIj4/XjFeUamJYRHSGlRYVFYU5c+ZUSLxERFQxTG71rrCwkEUSERHZLaVSiYYNG6Jt27aIiopCixYt8OGHH2oetJ6Zmak1fVZWls5ZptJmzJiB7OxsTXfp0qUKi5+qrlsAHIu6W1aOxV5o5fQWs0qmKVfz4OfOncOkSZPQq1cv9O7dG5MnT8a5c+csHRsREZHViQjy8vIQGBgItVqNHTt2aMbl5+cjPj4eHTt2LHMZKpVK0+R4cUekT0FRR5bDnFJ5mdz8x7Zt2zBo0CC0bNkSnTp1goggISEBwcHB+O6779C7d++KiJOIiKjCvfvuu+jXrx/8/Pxw48YNbNiwAbt27UJcXBwUCgWmTp2KyMhINGrUCI0aNUJkZCRcXFwwYsQIa4dOdsAZwO8l+sl8Wjl1ZlbJNCYXStOnT8e0adMwf/58neHvvPMOCyUiIqqyLl++jFGjRiEjIwOenp4ICQlBXFycZt/29ttv486dOxg/fjyuXbuG9u3bY/v27XB3d7dy5GQPqgGob+0g7IxWTquV60IqeoiZXCilpqbiq6++0hn+8ssvIzo62hIxERERWcXq1avLHK9QKBAREYGIiIjKCYiIiKzG5NK6Tp06OHr0qM7wo0ePspEHIiIionLKB/B+UZdv5VjshVZO85lVMo3JZ5ReffVVvPbaazh//jw6duwIhUKB3377DQsWLMCbb75ZETESERER2b27AN4u6h8PQGnFWOyFVk7v3oVSyayS8UwulP71r3/B3d0dH3zwAWbMmAEA8PHxQUREBCZPnmzxAImIiIgeBtUBjC7RT+bTyml1ZpVMY/I3RqFQYNq0aZg2bRpu3LgBALyJlYiIiMhMKgBrrB2EndHKqUplvUCoSjKrtGaBRERERERVmkJheJxI5cVBNoftJBIREREREZXCQomIiIjIBtwCUKOou2XVSOyHVk5vMatkGqve1RYVFYUtW7bg5MmTcHZ2RseOHbFgwQI0adJEM42IYM6cOVi5cqXm4X7Lli1DcHCwFSMnexQw/Qdrh0BERA+5bGsHYIeYUyovq55Rio+Px4QJE7B//37s2LEDBQUFCAsL06r4Fy5ciMWLF2Pp0qU4dOgQ1Go1evfurWlIgoiIiMgeOAM4XdQ5WzkWe6GVUze3+/cjle6IDChXoTRx4kT8/fffZq88Li4OY8aMQXBwMFq0aIGYmBhcvHgRiYmJAO6fTYqOjsbMmTMxZMgQNGvWDGvXrsXt27exbt06s9dPREREZCuqAWhU1PHeCMtgTskcRn9nfv/9d03/unXrcPPmTQBA8+bNcenSJYsEk519/+Sol5cXACAtLQ2ZmZkICwvTTKNSqdC1a1ckJCToXUZeXh5ycnK0OiIiIiIiIlMYfY9SUFAQatWqhU6dOiE3NxeXLl1CgwYNkJ6ejrt375odiIjgjTfewBNPPIFmzZoBADIzMwEA3t7eWtN6e3vjwoULepcTFRWFOXPmmB0PEdkf3odGRLbsLoCVRf2vAXC0Yiz2gjklcxh9Rik7OxubNm1CmzZtUFhYiCeffBKNGzdGXl4etm3bpilqymvixIk4duwY1q9frzNOUer6URHRGVZsxowZyM7O1nSWOttFREREVJHyAUws6vKtHIu9YE7JHEYXSnfv3kW7du3w5ptvwtnZGUlJSYiJiYGDgwM+++wzPProo1qt1Zli0qRJ2Lp1K3bu3AlfX1/NcLVaDQA6RVhWVpbOWaZiKpUKHh4eWh0RERGRrXMA8GxR52DlWOwFc0rmMPrSOw8PD7Rq1QqdOnVCfn4+bt++jU6dOqF69erYuHEjfH19cfDgQZNWLiKYNGkSYmNjsWvXLgQGBmqNDwwMhFqtxo4dO9CqVSsAQH5+PuLj47FgwQKT1kVERERky5wAbLJ2EHaGOSVzGF0o/fnnn9i3bx8SEhJQUFCAtm3b4vHHH0d+fj6OHDkCPz8/PPHEEyatfMKECVi3bh2+/fZbuLu7a84ceXp6wtnZGQqFAlOnTkVkZCQaNWqERo0aITIyEi4uLhgxYoRp75SIiIiIiMhIChERU2eqWbMmdu/ejdTUVLz44otQq9W4fPky2rVrh/j4eONXbuA+o5iYGIwZMwbA/x44++mnn2o9cLa4wYcHycnJgaenJ7Kzs3kZHpWJN/qTPunz+1s7hCqL21/DmJuHlB09s+cWALei/psAXK0YS4Uy/TCZbJwp21+jzyiV5unpiaFDh2Ls2LH49ddf4eLiYlKRBNwvgh5EoVAgIiICERER5YyUiIiIyPbdxv3n/QDAGQAuVozFXjCnZI5yFUrHjh1D/fr1AQD+/v5wdHSEWq3GsGHDLBocERER0cNCAPxZop/Mx5ySOcpVKPn5+Wn6jx8/brFgiIiIiB5WTgCSSvST+ZhTMke5L70jIiIiIstxANDS2kHYGeaUzGH0c5SIiIiIiIgeFjyjRERERGQD7gL4sqh/JABHK8ZiL5hTMgcLJSIiIiIbkA/gpaL+58CDektgTskcLJSIiIiIbIADgCdL9JP5mFMyB+9RIiIiKhIVFYXHH38c7u7uqFu3Lp566imcOnVKaxoRQUREBHx8fODs7Ixu3brhxIkTVoqY7IkTgB+KOrbQZhnMKZmDhRIREVGR+Ph4TJgwAfv378eOHTtQUFCAsLAw3Lp1SzPNwoULsXjxYixduhSHDh2CWq1G7969cePGDStGTpVOodDfEZHd4KV3REREReLi4rRex8TEoG7dukhMTESXLl0gIoiOjsbMmTMxZMgQAMDatWvh7e2NdevW4fXXX7dG2EREVAF4RomIiMiA7OxsAICXlxcAIC0tDZmZmQgLC9NMo1Kp0LVrVyQkJFglRrIftwE0KupuWzkWe8Gckjl4RomIiEgPEcEbb7yBJ554As2aNQMAZGZmAgC8vb21pvX29saFCxcMLisvLw95eXma1zk5ORUQMVV1AuBsiX4yH3NK5mChREREpMfEiRNx7Ngx/PbbbzrjFKXuRRERnWElRUVFYc6cORaPkeyLE4DfSvST+ZhTMgcvvSMiIipl0qRJ2Lp1K3bu3AlfX1/NcLVaDeB/Z5aKZWVl6ZxlKmnGjBnIzs7WdJcuXaqYwKlKcwDQqahjU9aWwZySOVgoERERFRERTJw4EVu2bMGvv/6KwMBArfGBgYFQq9XYsWOHZlh+fj7i4+PRsWNHg8tVqVTw8PDQ6oiIyLbx0jsiIqIiEyZMwLp16/Dtt9/C3d1dc+bI09MTzs7OUCgUmDp1KiIjI9GoUSM0atQIkZGRcHFxwYgRI6wcPVV1BQBii/qfBg/SLIE5JXPw+0JERFRk+fLlAIBu3bppDY+JicGYMWMAAG+//Tbu3LmD8ePH49q1a2jfvj22b98Od3f3So6W7E0egKFF/TfBgzRLYE7JHPy+EBERFRF5cLtYCoUCERERiIiIqPiA6KFSDUDXEv1kPuaUzMFCiYiIiMgGOAPYZe0g7AxzSuZgcU1ERERERFQKzygREZUhYPoPBselz+9fiZEQERFRZeIZJSIiIiIbcAdAy6LujlUjsR/MKZmDZ5SIiIiILEWhKPeshQD+W6KfzMeckjlYKBERERHZACcA20v0k/mYUzIHCyUiIiIiG+AAoLe1g7AzzCmZg/coERERERERlcIzSkREREQ2oADAtqL+PuBBmiUwp2QOfl+IiIiIbEAegAFF/TfBgzRLYE7JHPy+EBEREdmAagDalugn8zGnZA4WSkREFmboIbV8QC0RlcUZwCFrB2FnmFMyBwslIiIiIiJ9DD0XS6Ry4yCr4FlIIiIiIiKiUlgoEREREdmAOwA6FXV3rByLvWBOyRy89I6IiIjIBhQCSCjRT+arsJwauiSvLLxcr8qxaqG0e/duvP/++0hMTERGRgZiY2Px1FNPacaLCObMmYOVK1fi2rVraN++PZYtW4bg4GDrBU1VmqGb7ImIiKxNBSC2RD+Zjzklc1j10rtbt26hRYsWWLp0qd7xCxcuxOLFi7F06VIcOnQIarUavXv3xo0bNyo5UiIiIqKKVR3AU0UdL/mxDOaUzGHV70y/fv3Qr18/veNEBNHR0Zg5cyaGDBkCAFi7di28vb2xbt06vP7665UZKhERERERPURstjGHtLQ0ZGZmIiwsTDNMpVKha9euSEhIKGNOIiIioqrnHoBdRd09q0ZiP5hTMofNnoXMzMwEAHh7e2sN9/b2xoULFwzOl5eXh7y8PM3rnJycigmQiIiIyIJyAXQv6r8JwNWKsdgL5pTMYbOFUjFFqVZFRERnWElRUVGYM2dORYdFNsJQ4wzp8/tXciRERETmUQBoWqKfzMeckjls9tI7tVoN4H9nloplZWXpnGUqacaMGcjOztZ0ly5dqtA4iYiIiCzBBcCJos7FyrHYC+aUzGGzhVJgYCDUajV27NihGZafn4/4+Hh07NjR4HwqlQoeHh5aHRERERERkSmseundzZs3cfbsWc3rtLQ0HD16FF5eXmjQoAGmTp2KyMhINGrUCI0aNUJkZCRcXFwwYsQIK0ZNRERERET2zqqF0uHDh9G9e3fN6zfeeAMAMHr0aKxZswZvv/027ty5g/Hjx2seOLt9+3a4u7tbK2QiIg0+wNg+8WHoZC13AAwq6t8KwNmKsdgL5pTMYdVL77p16wYR0enWrFkD4H5DDhEREcjIyEBubi7i4+PRrFkza4ZMRER2jg9DJ2spBPBzUVdo5VjshU3lVKHQ35HNsvlW74iIiCoTH4ZO1qIC8H8l+sl8zCmZw2YbcyAiIrI1fBg6VaTqAEYWdfxPtmUwp2QOfmeIiIiMxIehExE9PFgoERFVkrIaf+BDkqsWPgzdztjIfSL3ABwp6m8NwMGKsdiLKp9TQ99NkcqN4yHFS++IiIiMxIehU0XKBdCuqMu1ciz2gjklc7BQIiIiMhIfhk4VSQHAv6izjXNcVR9zSubgpXdEREQl8GHoZC0uANKtHYSdYU7JHCyUiIhsgKH7l3jvUuXjw9CJiAhgoURERKSl+GHohhQ/DD0iIqLygiIiokrHe5SIiIiIbEAugKeKOjY8YBnMKZmDZ5SIiIiIbMA9AN+W6CfzVYmc2kjz9KSLhRIRERGRDVACWFmin8zHnJI5WCiRzSvrIZ1ERET2whHAq9YOws4wp2QO3qNERERERERUCs8oEREREdmAQgCpRf2Pgf/NtgTmlMzBQomIiIjIBtwB0Kyo/yYAVyvGYi+YUzIHCyWyGbwXiUhXWb8LPoyWyP7UtnYAdog5pfJioURERERkA1wBXLF2EHbGbnNqqEnxMh6WXa55HnK8VJOIiIiIiKgUFkpERERERESlsFAiIiIisgG5AEYWdblWjsVeMKdkDoWIfV+YmJOTA09PT2RnZ8PDw8Pa4VRJhm4mL8+N5Gywgaji2UojD9z+GsbcWImhezRsxC0AbkX9tt5CW1WJtarEaTG8R+mBTNn+sjEHIiIiIhugBLCkRD+Zjzklc7BQIiIiIrIBjgCmWjsIO8OckjlYKBERERERPazKuiT1IbssrzQWSlRuvN+IiIjIcgoBXCzqbwC2uGUJzCmZg4USERERkQ24AyCwqP+haHigEjCnZA4WSkREREQ2wsXaAdgh5pTKi4USERERkQ1wxf3mrMlymFMyBy/VJCIiIiIiKoVnlIiIHhJlNcBiKw+pJSIishU8o0RERERkA/IAvFrU5Vk5FnvBnJI5eEaJiIiI7EdZz4SxcQUA/lPUHw1AZb1Q7MZDl1Nrf//t7JlMLJSIiIiIbIAjgH+X6CfzMadkjipRKH3yySd4//33kZGRgeDgYERHR6Nz586Vtn5D1/Xb2zX9fIAs0cPrYdnOWZK1901kf5QAZlo7CDvDnJI5bP4epY0bN2Lq1KmYOXMmkpKS0LlzZ/Tr1w8XL1588MxEREQVwCb2TQqF/s6eGHqPZXVEVPHK8/srz+/Zyr9zmy+UFi9ejLFjx+KVV17BY489hujoaPj5+WH58uXWDo2IiB5S3DdRRRAAV4q6qnc3h21iTskcNl0o5efnIzExEWFhYVrDw8LCkJCQYKWoiIjoYcZ9E1WU2wDqFnW3rRyLvWBOyRw2fY/SX3/9hXv37sHb21truLe3NzIzM/XOk5eXh7y8/zUAmZ2dDQDIyckpdxyFefp/WuYs0xYZep9EVLUY2jaV5zduznaueF6pgi0dlcVW9k0G2dm+6WFyq0R/DoB71grECFUl1qoSp82y1e1JJe2bbLpQKqYodS2iiOgMKxYVFYU5c+boDPfz87N4XJ7RFl8kEZHZLLltssSybty4AU9PT/MXZGNsdd8EO8z1w8jH2gGYoKrEWlXitCm2uj2xQFzG7JtsulCqXbs2HBwcdP5Dl5WVpfOfvGIzZszAG2+8oXldWFiIv//+G7Vq1TK4A6sIOTk58PPzw6VLl+Dh4VFp6y0vxluxGG/FYrwVq7zxighu3LgBHx/7OjypSvumqvZdq0qY24rD3Fashz2/puybbLpQUiqVaNOmDXbs2IGnn35aM3zHjh0YPHiw3nlUKhVUKu3HidWoUaMiwyyTh4dHlfoSMt6KxXgrFuOtWOWJ1x7PJFXFfVNV+65VJcxtxWFuK9bDnF9j9002XSgBwBtvvIFRo0ahbdu2CA0NxcqVK3Hx4kWMGzfO2qEREdFDivsmIiL7Z/OF0rBhw3D16lXMnTsXGRkZaNasGX788Uf4+/tbOzQiInpIcd9ERGT/bL5QAoDx48dj/Pjx1g7DJCqVCuHh4TqXWtgqxluxGG/FYrwVq6rFW1mqwr6Jn13FYW4rDnNbsZhf4ynE3tptJSIiIiIiMpNNP3CWiIiIiIjIGlgoERERERERlcJCiYiIiIiIqBQWSkRERERERKWwUCqna9euYdSoUfD09ISnpydGjRqF69evlzmPiCAiIgI+Pj5wdnZGt27dcOLECc34v//+G5MmTUKTJk3g4uKCBg0aYPLkycjOzrbJeAFg5cqV6NatGzw8PKBQKB64TEM++eQTBAYGwsnJCW3atMGePXvKnD4+Ph5t2rSBk5MTHnnkEaxYsUJnms2bN6Np06ZQqVRo2rQpYmNjyxVbZcR74sQJPPPMMwgICIBCoUB0dLTFYq2omFetWoXOnTujZs2aqFmzJnr16oWDBw/abLxbtmxB27ZtUaNGDbi6uqJly5b44osvbDbekjZs2ACFQoGnnnrKZuNds2YNFAqFTpebm2uxmMmw4m1HyW769Ola01y8eBEDBw6Eq6srateujcmTJyM/P19rmuTkZHTt2hXOzs6oX78+5s6dC7b5pMvU3w8BEREROt9RtVqtGW/MMUdeXh4mTZqE2rVrw9XVFYMGDcLvv/9e2W/FJuzevRsDBw6Ej48PFAoFvvnmG63xlspneY4f7YpQufTt21eaNWsmCQkJkpCQIM2aNZMBAwaUOc/8+fPF3d1dNm/eLMnJyTJs2DCpV6+e5OTkiIhIcnKyDBkyRLZu3Spnz56VX375RRo1aiTPPPOMTcYrIrJkyRKJioqSqKgoASDXrl0zObYNGzaIo6OjrFq1SlJSUmTKlCni6uoqFy5c0Dv9+fPnxcXFRaZMmSIpKSmyatUqcXR0lK+//lozTUJCgjg4OEhkZKSkpqZKZGSkVK9eXfbv329yfJUR78GDB+Wtt96S9evXi1qtliVLlpgdZ0XHPGLECFm2bJkkJSVJamqqvPTSS+Lp6Sm///67Tca7c+dO2bJli6SkpMjZs2clOjpaHBwcJC4uzibjLZaeni7169eXzp07y+DBg82OtaLijYmJEQ8PD8nIyNDqqHL4+/vL3LlztXJ/48YNzfiCggJp1qyZdO/eXY4cOSI7duwQHx8fmThxomaa7Oxs8fb2luHDh0tycrJs3rxZ3N3dZdGiRdZ4SzbL1N8P3RceHi7BwcFa39GsrCzNeGOOOcaNGyf169eXHTt2yJEjR6R79+7SokULKSgosMZbsqoff/xRZs6cKZs3bxYAEhsbqzXeUvksz/GjPWGhVA4pKSkCQOuge9++fQJATp48qXeewsJCUavVMn/+fM2w3Nxc8fT0lBUrVhhc11dffSVKpVLu3r1r0/Hu3Lmz3IVSu3btZNy4cVrDgoKCZPr06Xqnf/vttyUoKEhr2Ouvvy4dOnTQvB46dKj07dtXa5o+ffrI8OHDTY6vMuItyd/f3+KFUkXHLHL/QMzd3V3Wrl1bJeIVEWnVqpXMmjXLvGCl4uItKCiQTp06yX/+8x8ZPXq0xQqliog3JiZGPD09LRIfme5B240ff/xRqlWrJn/88Ydm2Pr160WlUkl2draIiHzyySfi6ekpubm5mmmioqLEx8dHCgsLKyz2qsbU3w/dFx4eLi1atNA7zphjjuvXr4ujo6Ns2LBBM80ff/wh1apVs8g/vKqy0oWSpfJZnuNHe8NL78ph37598PT0RPv27TXDOnToAE9PTyQkJOidJy0tDZmZmQgLC9MMU6lU6Nq1q8F5ACA7OxseHh6oXr38zwauzHhNlZ+fj8TERK31AEBYWJjB9ezbt09n+j59+uDw4cO4e/dumdOYG3tFxVuRKivm27dv4+7du/Dy8rL5eEUEv/zyC06dOoUuXbrYbLxz585FnTp1MHbsWLNirKx4b968CX9/f/j6+mLAgAFISkqyWNz0YAsWLECtWrXQsmVLzJs3T+uyun379qFZs2bw8fHRDOvTpw/y8vKQmJiomaZr165aD6Hs06cP/vzzT6Snp1fa+7Bl5fn90P+cOXMGPj4+CAwMxPDhw3H+/HkAxh1zJCYm4u7du1rT+Pj4oFmzZsx9KZbKZ3mOH+0NC6VyyMzMRN26dXWG161bF5mZmQbnAQBvb2+t4d7e3gbnuXr1Kt577z28/vrrVSLe8vjrr79w7949k9aTmZmpd/qCggL89ddfZU5jbuwVFW9FqqyYp0+fjvr166NXr142G292djbc3NygVCrRv39/fPzxx+jdu7dNxrt3716sXr0aq1atMiu+yoo3KCgIa9aswdatW7F+/Xo4OTmhU6dOOHPmjEXjJ/2mTJmCDRs2YOfOnZg4cSKio6Mxfvx4zXh9n2HNmjWhVCo1n7uhz7l4HJXv90P3tW/fHp9//jm2bduGVatWITMzEx07dsTVq1eNOubIzMyEUqlEzZo1DU5D91kqn+U5frQ3LJRK0HejYenu8OHDAACFQqEzv4joHV5S6fGG5snJyUH//v3RtGlThIeH23y85jJ1PfqmLz28ImOviHgrWkXGvHDhQqxfvx5btmyBk5OTBaKtmHjd3d1x9OhRHDp0CPPmzcMbb7yBXbt22Vy8N27cwAsvvIBVq1ahdu3aFonPmPWbk98OHTrghRdeQIsWLdC5c2d89dVXaNy4MT7++GMLR/7wMGUbP23aNHTt2hUhISF45ZVXsGLFCqxevRpXr17VLM+Y/YAtbKuqgsraN9qTfv364ZlnnkHz5s3Rq1cv/PDDDwCAtWvXaqYpT16Ze8Mskc/yHj/ai/Jfz2WHJk6ciOHDh5c5TUBAAI4dO4bLly/rjLty5YpO9V6suGWXzMxM1KtXTzM8KytLZ54bN26gb9++cHNzQ2xsLBwdHW06XnPUrl0bDg4OOv+ZKGs9arVa7/TVq1dHrVq1ypzG3NgrKt6KVNExL1q0CJGRkfj5558REhJi0/FWq1YNDRs2BAC0bNkSqampiIqKQrdu3Wwq3hMnTiA9PR0DBw7UjC8sLAQAVK9eHadOncKjjz5qM/HqU61aNTz++OM8o2QGY7fx+nTo0AEAcPbsWdSqVQtqtRoHDhzQmubatWu4e/eu5nM39DkDuv+ZfliV5/dD+rm6uqJ58+Y4c+aMpkXPso451Go18vPzce3aNa2zIFlZWejYsWOlxm7rjDmGMyafarXa5ONHe8MzSiXUrl0bQUFBZXZOTk4IDQ1Fdna2VlPIBw4cQHZ2tsEfa2BgINRqNXbs2KEZlp+fj/j4eK15cnJyEBYWBqVSia1bt5b533lbiNdcSqUSbdq00VoPAOzYscPgekJDQ3Wm3759O9q2baspKg1NY27sFRVvRarImN9//3289957iIuLQ9u2bW0+3tJEBHl5eTYXb1BQEJKTk3H06FFNN2jQIHTv3h1Hjx6Fn5+fTcWrj4jg6NGjWjtpMo2x23h9iu8PK85/aGgojh8/joyMDM0027dvh0qlQps2bTTT7N69W+vepu3bt8PHx8dgQfawKc/vh/TLy8tDamoq6tWrZ9QxR5s2beDo6Kg1TUZGBo4fP87cl2KpfJbn+NHuVE6bEfanb9++EhISIvv27ZN9+/ZJ8+bNdZpLbNKkiWzZskXzev78+eLp6SlbtmyR5ORkef7557WaaszJyZH27dtL8+bN5ezZs1pNaJrb9GVFxCsikpGRIUlJSbJq1SoBILt375akpCS5evWq0bEVN7W6evVqSUlJkalTp4qrq6ukp6eLiMj06dNl1KhRmumLmyqeNm2apKSkyOrVq3WaKt67d684ODjI/PnzJTU1VebPn2/x5sEtGW9eXp4kJSVJUlKS1KtXT9566y1JSkqSM2fOmB1vRcW8YMECUSqV8vXXXxtsktiW4o2MjJTt27fLuXPnJDU1VT744AOpXr26rFq1yibjLc2Srd5VRLwRERESFxcn586dk6SkJHnppZekevXqcuDAAYvETIYlJCTI4sWLJSkpSc6fPy8bN24UHx8fGTRokGaa4ubBe/bsKUeOHJGff/5ZfH19tZoHv379unh7e8vzzz8vycnJsmXLFvHw8GDz4KU86PdD+r355puya9cuOX/+vOzfv18GDBgg7u7umrwZc8wxbtw48fX1lZ9//lmOHDkiPXr0eGibB79x44bmuAGAZhtQ3Ey9pfJpzPGjPWOhVE5Xr16VkSNHiru7u7i7u8vIkSN1msYGIDExMZrXhYWFEh4eLmq1WlQqlXTp0kWSk5M144ub2NbXpaWl2Vy8Iveb+9QXb8nlGGPZsmXi7+8vSqVSWrduLfHx8Zpxo0ePlq5du2pNv2vXLmnVqpUolUoJCAiQ5cuX6yxz06ZN0qRJE3F0dJSgoCDZvHmzSTFVZrxpaWl681h6ObYUs7+/v96Yw8PDbTLemTNnSsOGDcXJyUlq1qwpoaGhWs2i2lq8pVmyUKqIeKdOnSoNGjQQpVIpderUkbCwMElISLBYvGRYYmKitG/fXjw9PcXJyUmaNGki4eHhcuvWLa3pLly4IP379xdnZ2fx8vKSiRMnajUFLiJy7Ngx6dy5s6hUKlGr1RIREcGmwfUo6/dD+hU/x8fR0VF8fHxkyJAhcuLECc14Y4457ty5IxMnThQvLy9xdnaWAQMGyMWLFyv7rdgEQ8eMo0ePFhHL5dOY40d7phDhI7eJiIiIiIhK4j1KREREREREpbBQIiIiIiIiKoWFEhERERERUSkslIiIiIiIiEphoURERERERFQKCyUiIiIiIqJSWCgRERERERGVwkKJ7NauXbugUChw/fp1g9OsWbMGNWrUKHM5ERERaNmypUVjs6YxY8bgqaeeqpBl5+fno2HDhti7d2+FLL+ivfXWW5g8ebK1wyCq8rp164apU6dadJkKhQLffPONRZdp7XVXtf1LQEAAoqOjTZonPT0dCoUCR48erfB1P+hzqojvJWDc8UZ5WGp//aC8GPMZWfI9dunSBevWrTN7OZbw7LPPYvHixQbHs1Aio40ZMwYKhQLjxo3TGTd+/HgoFAqMGTNGa3hmZiYmTZqERx55BCqVCn5+fhg4cCB++eUXg+uJiIiAQqHQdJ6enujcuTPi4+Mt/ZYqTXHuFAoFHB0d4e3tjd69e+Ozzz5DYWFhpcby4YcfYs2aNZrXltxxrFy5Ev7+/ujUqZPJ8164cAEqlQo5OTkWiaW03377DZ06dUKtWrXg7OyMoKAgLFmyRGuat99+GzExMUhLS6uQGOjhZuz2MCEhAU8++SRq1qwJJycnNG/eHB988AHu3bunmSY9PR1jx45FYGAgnJ2d8eijjyI8PBz5+fmV/bb02rJlC9577z1rh/FAxh74Z2RkoF+/fmaty5qFXkWpau/JEt/Liiq2Hhbff/89MjMzMXz4cGuHAgCYPXs25s2bZ/DYg4USmcTPzw8bNmzAnTt3NMNyc3Oxfv16NGjQQGva9PR0tGnTBr/++isWLlyI5ORkxMXFoXv37pgwYUKZ6wkODkZGRgYyMjKwb98+NGrUCAMGDEB2dnaFvK/K0LdvX2RkZCA9PR0//fQTunfvjilTpmDAgAEoKCiotDg8PT0feBatvD7++GO88sor5Zr322+/Rbdu3eDh4WHhqO5zdXXFxIkTsXv3bqSmpmLWrFmYNWsWVq5cqZmmbt26CAsLw4oVKyokBnp4Gbs9jI2NRdeuXeHr64udO3fi5MmTmDJlCubNm4fhw4dDRAAAJ0+eRGFhIT799FOcOHECS5YswYoVK/Duu+9a6y1q8fLygru7u7XDsBi1Wg2VSmXtMMhM9va9rIo++ugjvPTSS6hWzTZKkJCQEAQEBODLL7/UP4EQGWn06NEyePBgad68ufzf//2fZviXX34pzZs3l8GDB8vo0aM1w/v16yf169eXmzdv6izr2rVrBtcTHh4uLVq00Bp28eJFASAHDx4UEZG0tDQBIElJSVrLBCA7d+4UEZGdO3cKAPn+++8lJCREVCqVtGvXTo4dO6aZJyYmRjw9PSU2NlYaNWokKpVKevXqJRcvXiwzns8++0yCgoJEpVJJkyZNZNmyZQbfj8j/clfaL7/8IgBk1apVmmHXr1+XV199VerUqSPu7u7SvXt3OXr0qE48n3/+ufj7+4uHh4cMGzZMcnJyNNNs2rRJmjVrJk5OTuLl5SU9e/bUfA4lYxk9erQA0OrOnz8vjz76qLz//vtasSYnJ4tCoZCzZ8/qfY+JiYlSrVo1yc7O1hq+d+9eadGihahUKmnTpo3ExsbqfHYiIj169JClS5dqXq9evVqaNm0qSqVS1Gq1TJgwQTMOgKxYsUL69+8vzs7OEhQUJAkJCXLmzBnp2rWruLi4SIcOHQzGWuzpp5+WF154QWvYmjVrxM/Pr8z5iExlzPbw5s2bUqtWLRkyZIjONFu3bhUAsmHDBoPrWLhwoQQGBpYZR15envzzn/8UHx8fcXFxkXbt2mm2mcViYmLEz89PnJ2d5amnnpJFixaJp6enZry+7dmUKVOka9eumtddu3aVKVOmiIjI9OnTpX379jqxNG/eXGbPni0iIgcPHpRevXpJrVq1xMPDQ7p06SKJiYla0wOQ2NhYzevff/9dhg4dKjVq1BAvLy8ZNGiQpKWl6cT5/vvvi1qtFi8vLxk/frzk5+drYiy9/TOk5LqL9z+bN2+Wbt26ibOzs4SEhEhCQoLB+f39/bXW4+/vLyLGbc8LCwtlwYIFEhgYKE5OThISEiKbNm0yuK7i9b333nsyatQocXV1lQYNGsg333wjWVlZMmjQIHF1dZVmzZrJoUOHtObbu3evdO7cWZycnMTX11cmTZqk9Z319/eXJUuWlPmeSjM2X6asW0Tk9OnT0rlzZ1GpVPLYY4/J9u3bdb4jpZX8XhYvc968efLSSy+Jm5ub+Pn5yaeffmpwfn37zLS0NM3xxs8//yxt2rQRZ2dnCQ0NlZMnT2rNv3XrVmndurWoVCoJDAyUiIgIuXv3bpnrGzx4sERERGiOCV577TXJy8szmBcRkRYtWkh4eLjmNQD55JNPpG/fvuLk5CQBAQHy1VdfacYXf0br16+X0NBQUalU0rRpU61tQ/F7LHn89qDPrLQrV66IQqGQ48ePaw23ZHxxcXHSsmVLcXJyku7du8vly5flxx9/lKCgIHF3d5fhw4fLrVu3tNYfEREhnTt31hszCyUyWvEPdvHixdKzZ0/N8J49e8qSJUu0CqWrV6+KQqGQyMhIk9dTujDJzc2VuXPnSo0aNTQH4aYUSsUb0GPHjsmAAQMkICBAs6OMiYkRR0dHadu2rSQkJMjhw4elXbt20rFjR4PxrFy5UurVqyebN2+W8+fPy+bNm8XLy0vWrFnzwNzp06JFC+nXr5+I3N8hdurUSQYOHCiHDh2S06dPy5tvvim1atWSq1evauJxc3OTIUOGSHJysuzevVvUarW8++67IiLy559/SvXq1WXx4sWSlpYmx44dk2XLlsmNGzd0Yrl+/bqEhobKq6++KhkZGZKRkSEFBQUyb948adq0qVac06ZNky5duhh8j0uWLJGgoCCtYTk5OeLl5SUvvPCCnDhxQn788Udp3Lix3s/O0dFRU6B+8skn4uTkJNHR0XLq1Ck5ePCg1o4AgNSvX182btwop06dkqeeekoCAgKkR48eEhcXJykpKdKhQwfp27evwXiPHDki3t7eWkWqiEhKSooAkPT0dIPzEpnC2O3hli1bBIDBA+7GjRsb3I6IiMycOVPatGlT5jpGjBghHTt2lN27d8vZs2fl/fffF5VKJadPnxYRkf3794tCoZCoqCg5deqUfPjhh1KjRg2zCqXk5GQBoPWPi+PHjwsAOXXqlIjc/6fRF198ISkpKZKSkiJjx44Vb29vrYKh5EHwrVu3pFGjRvLyyy/LsWPHJCUlRUaMGCFNmjTRHESOHj1aPDw8ZNy4cZKamirfffeduLi4yMqVK0Xk/ufi6+src+fO1Wz/DNFXKAUFBcn3338vp06dkmeffVb8/f0NHvRmZWUJAImJiZGMjAzJysoSkQdvz0VE3n33XQkKCpK4uDg5d+6cxMTEiEqlkl27dhmM19/fX7y8vGTFihVy+vRp+cc//iHu7u7St29f+eqrrzTbzccee0wKCwtFROTYsWPi5uYmS5YskdOnT8vevXulVatWMmbMGK3lFm+LDb2n0ozJl6nrvnfvnjRr1ky6desmSUlJEh8fL61atSpXoeTl5SXLli2TM2fOSFRUlFSrVk1SU1P1zm9on1l8vNG+fXvZtWuXnDhxQjp37qx1LBEXFyceHh6yZs0aOXfunGzfvl0CAgIkIiLCYLyjR48WNzc3GTZsmBw/fly+//57qVOnjtb3w9hCqVatWrJq1So5deqUzJo1SxwcHCQlJUXrM/L19ZWvv/5aUlJS5JVXXhF3d3f566+/RES3UDLmMystNjZWXF1d5d69e1rDLRlfhw4d5LfffpMjR45Iw4YNpWvXrhIWFiZHjhyR3bt3S61atWT+/Pla6//xxx9FpVJJbm6uTswslMhoxTvHK1euiEqlkrS0NElPTxcnJye5cuWKVqF04MABASBbtmwxeT3h4eFSrVo1cXV1FVdXV1EoFOLh4SE//fSTZhpTCqWS/4G9evWqODs7y8aNG0XkfqEEQPbv36+ZJjU1VQDIgQMHNPGULJT8/Pxk3bp1WjG/9957EhoaavA9lVUoDRs2TB577DERuX+w4OHhofNjffTRRzX/5QoPDxcXFxetA4h//vOfmv/YJiYmlnmgXzqW0jsOkfvFloODgyYH+fn5UqdOnTKLwSlTpkiPHj20hi1fvlxq1aold+7c0QxbtWqVzmf35ZdfSuvWrTWvfXx8ZObMmQbXBUBmzZqleb1v3z4BIKtXr9YMW79+vTg5OenMW79+fVEqlVKtWjWZO3euzvjs7GwBUOZBCJEpjN0ezp8/X+c/tiUNGjRIs60o7ezZs+Lh4aFT+JeeRqFQyB9//KE1vGfPnjJjxgwREXn++ed1/sEwbNgwswolEZGQkBCt39uMGTPk8ccfNxhrQUGBuLu7y3fffacZVvIgePXq1dKkSRPNQb7I/bNlzs7Osm3bNk2c/v7+UlBQoJnmueeek2HDhmle6zvI1EdfofSf//xHM/7EiRMCwOABdullFHvQ9vzmzZvi5OSkUzyPHTtWnn/+eYPr8vf31zpbnpGRIQDkX//6l2ZY8XazuEAcNWqUvPbaa1rL2bNnj1SrVk2zDS+drwcVJiLG5cvUdW/btk0cHBzk0qVLmul/+umnchVKJfNUWFgodevWleXLlxu9DBHROqNU7IcffhAAmvg7d+6s88+SL774QurVq2dwXaNHjxYvLy+tMyDLly8XNzc3TbFhbKE0btw4rWnat28v//jHP0Tkf59RyQLi7t274uvrKwsWLNB6j8XbJ2M+s9KWLFkijzzyiM5wS8ZX8jOIiooSAHLu3DnNsNdff1369Omjta7//ve/Bo+bquu/II/IsNq1a6N///5Yu3YtRAT9+/dH7dq1taaRouvoFQpFudbRpEkTbN26FQBw48YNbNy4Ec899xx27tyJtm3bmrSs0NBQTb+XlxeaNGmC1NRUzbDq1atrLTMoKAg1atRAamoq2rVrp7WsK1eu4NKlSxg7dixeffVVzfCCggJ4enqaFFcxEdHkKTExETdv3kStWrW0prlz5w7OnTuneR0QEKB1nXW9evWQlZUFAGjRogV69uyJ5s2bo0+fPggLC8Ozzz6LmjVrGh1TvXr10L9/f3z22Wdo164dvv/+e+Tm5uK5554zOM+dO3fg5OSkNezUqVMICQnRGl46p8D9+5MGDRoEAMjKysKff/6Jnj17lhljSEiIpt/b2xsA0Lx5c61hubm5yMnJ0brvac+ePbh58yb279+P6dOno2HDhnj++ec1452dnQEAt2/fLnP9RMYydXtYPL2+4fqW8eeff6Jv37547rnnyrxH8MiRIxARNG7cWGt4Xl6eZpuTmpqKp59+Wmt8aGgo4uLijIrdkJEjR+Kzzz7Dv/71L4gI1q9fr3VDfFZWFmbPno1ff/0Vly9fxr1793D79m1cvHhR7/ISExNx9uxZnftNcnNztbaVwcHBcHBw0LyuV68ekpOTzXovxUpug+rVq6d5H0FBQSYtp6zteUpKCnJzc9G7d2+tefLz89GqVSuj4zO0jSyOWa1Wa3Ja8l4NEUFhYSHS0tLw2GOPmfS+yoqndL5MXXdqaioaNGgAX19fzbCS+/ryxqVQKKBWqzX5N2dZJd9jgwYNkJiYiEOHDmHevHmaae7du4fc3Fzcvn0bLi4uepfZokULrXGhoaG4efMmLl26BH9/f6NjK52f0NBQnVbuSk5TfGxU8nippPJ8X/QdJ1g6vtLfexcXFzzyyCNaww4ePKg1T1n7fRZKVC4vv/wyJk6cCABYtmyZzvhGjRpBoVAgNTW1XE1bKpVKNGzYUPO6VatW+OabbxAdHY3/+7//09wEWPKA4u7du0Yvv/TBhr6DD33DiluoW7VqFdq3b681ruTO2BSpqakIDAzULL9evXrYtWuXznQlG2BwdHTUibU4NgcHB+zYsQMJCQnYvn07Pv74Y8ycORMHDhzQrMcYr7zyCkaNGoUlS5YgJiYGw4YNM7ghB+4X0KUPQPQd2JU+CLx79y7i4uIwY8YMAP/bYD1IyRwUr0PfsNKtChbnoHnz5rh8+TIiIiK0CqW///4bAFCnTh2j4iB6EGO3h8UFTGpqKjp27Kgz/uTJk2jatKnWsD///BPdu3dHaGioVsMk+hQWFsLBwQGJiYk62ys3NzcAhou0kqpVq6b3d1yWESNGYPr06Thy5Aju3LmDS5cuabV6NWbMGFy5cgXR0dHw9/eHSqVCaGiowVb8CgsL0aZNG703YJf87Za1rTSXMdsbU5dTvKzi5RT//eGHH1C/fn2t6R7UuISp28jCwkK8/vrreh+RULqxpvKw5Lr1fU/L+49ZS35HHvQe58yZgyFDhujMZ6h4KEvx8svzeyy9jPJMU57vS+3atXHt2jWjYitvfKU/A2M+37L2+7bR5ARVOX379kV+fj7y8/PRp08fnfFeXl7o06cPli1bhlu3bumML087/A4ODprW9oq/zBkZGZrxhtr/379/v6b/2rVrOH36tNZ//AoKCnD48GHN61OnTuH69et6/yvo7e2N+vXr4/z582jYsKFWZ0oRUuzXX39FcnIynnnmGQBA69atkZmZierVq+ssv/RZu7IoFAp06tQJc+bMQVJSEpRKJWJjY/VOq1QqtZodLvbkk0/C1dUVy5cvx08//YSXX365zHW2atUKJ0+e1NpgBwUF4dixY8jLy9MMK5lrANi5cydq1KiheZaIu7s7AgICymxC3lJERCs2ADh+/DgcHR0RHBxc4eunh4Ox28OwsDB4eXnhgw8+0Jlm69atOHPmjFZR/8cff6Bbt25o3bo1YmJiHtiKVKtWrXDv3j1kZWXpbF/UajUAoGnTplrbTAA6r+vUqaO17QUMb3+L+fr6okuXLvjyyy/x5ZdfolevXpozGsD9M72TJ0/Gk08+ieDgYKhUKvz1118Gl9e6dWucOXMGdevW1XkvppzdN7T9qwiOjo4mr6tp06ZQqVS4ePGizvv08/OzaHytW7fGiRMndNbTsGFDKJVKvfOU5z1ZYt1NmzbFxYsX8eeff2qG7du3z+w4jFHe70zr1q1x6tQpve+xrN/uf//7X62Whvfv3w83NzfN2bTSv8ecnBy9j7jQ97sufZxTcpqCggIkJiYaPENanu9Lq1atkJmZqbdYsnR8pjh+/Dh8fX31HmexUKJycXBwQGpqKlJTUw2eSfnkk09w7949tGvXDps3b8aZM2eQmpqKjz766IGnyAsKCpCZmYnMzEycOXMG//73v5GSkoLBgwcDuH/WoUOHDpg/fz5SUlKwe/duzJo1S++y5s6di19++QXHjx/HmDFjULt2ba3/6jo6OmLSpEk4cOAAjhw5gpdeegkdOnTQe4kYcP85T1FRUfjwww9x+vRpJCcnIyYmpswHlgH3L2/JzMzEH3/8gSNHjiAyMhKDBw/GgAED8OKLLwIAevXqhdDQUDz11FPYtm0b0tPTkZCQgFmzZukUGIYcOHAAkZGROHz4MC5evIgtW7bgypUrBi+bCAgIwIEDB5Ceno6//vpL68zUmDFjMGPGDDRs2PCBn1n37t1x69YtnDhxQjNsxIgRKCwsxGuvvYbU1FRs27YNixYtAvC//wJt3bpVc9ldsYiICHzwwQf46KOPcObMGRw5cgQff/yxUe/fkGXLluG7777DmTNncObMGcTExGDRokV44YUXtKbbs2cPOnfubPSZLSJjGLM9dHV1xaeffopvv/0Wr732Go4dO4b09HSsXr0aY8aMwbPPPouhQ4cCuH8mqVu3bvDz88OiRYtw5coVzTbTkMaNG2PkyJF48cUXsWXLFqSlpeHQoUNYsGABfvzxRwDA5MmTERcXh4ULF+L06dNYunSpzmV3PXr0wOHDh/H555/jzJkzCA8Px/Hjxx+Yg5EjR2LDhg3YtGmTzu+uYcOG+OKLL5CamooDBw5g5MiRZf4GR44cidq1a2Pw4MHYs2cP0tLSEB8fjylTpuD3339/YCzFAgICsHv3bvzxxx9lFmaWUPwPIEMHivq4u7vjrbfewrRp07B27VqcO3cOSUlJWLZsGdauXWvR+N555x3s27cPEyZMwNGjR3HmzBls3boVkyZNMjhPed6TJdbdq1cvNGnSBC+++CL++9//Ys+ePZg5c2a5128KQ/vMB5k9ezY+//xzRERE4MSJE0hNTcXGjRsNHrsUy8/Px9ixY5GSkoKffvoJ4eHhmDhxoqa46tGjB7744gvs2bMHx48fx+jRo/Uel23atAmfffYZTp8+jfDwcBw8eFBzZVCxZcuWITY2FidPnsSECRNw7do1g/8kLc/3pVWrVqhTp47eh9JbOj5T7NmzB2FhYfpH6r3bikiPshokEBGd5sFF7jcKMGHCBPH39xelUin169eXQYMG6TRHW1J4eLhW05suLi7SvHlznZsri1s2c3Z2lpYtW2qaBi3dmMN3330nwcHBolQq5fHHH9dqaru4efDNmzfLI488IkqlUnr06KF1Q5++5sG//PJLadmypSiVSqlZs6Z06dKlzBu1SzYpWr16dalTp4706tVLPvvsM53WX3JycmTSpEni4+Mjjo6O4ufnJyNHjtS0CKcvniVLlmiaZk1JSZE+ffpInTp1RKVSSePGjeXjjz/WiqXk53jq1ClNHlHU1Gmxc+fOCQBZuHChwfdW0vDhw2X69Olaw/bu3SshISGiVCqlTZs2sm7dOgGgaTbVz89PduzYobOsFStWSJMmTcTR0VHq1asnkyZN0oxDqRt29TXuUfrG048++kiCg4PFxcVFPDw8pFWrVvLJJ5/o5L9x48ayfv16o94vkSmM3R7u3r1b+vbtK56enqJUKqVp06ayaNEirUYJihui0deVJT8/X2bPni0BAQHi6OgoarVann76aa3HJqxevVp8fX3F2dlZBg4cqNM8uIjI7NmzxdvbWzw9PWXatGkyceLEMhtzELnf4I5KpRIXFxdNK5zFjhw5Im3bthWVSiWNGjWSTZs2PbDhgIyMDHnxxReldu3aolKp5JFHHpFXX31V0zqqMY1O7Nu3T/P4iLJyV3LdxjQmpM/WrVulYcOGUr16dZ3mwUsquT0Xud/AwIcffqjZHtapU0f69Okj8fHxBtel7wZ/Y7abBw8elN69e4ubm5u4urpKSEiIzJs3z+By9b2n0ozNl6nrPnXqlDzxxBOiVCqlcePGEhcXV67GHB7UEEJp+vaZ+prOTkpK0tmnxsXFSceOHcXZ2Vk8PDykXbt2mlYY9Sn+Ds+ePVtq1aolbm5u8sorr2g1+JSdnS1Dhw4VDw8P8fPzkzVr1uhtzGHZsmXSu3dvUalU4u/vr7WfK/6M1q1bJ+3btxelUimPPfaY/PLLL5pp9L3HB31m+kyfPl2GDx+uNayi4is+xiup9G/uzp074uHhIfv27dMbr6IoQCIiHXv37kW3bt3w+++/a10mY0hycjJ69eql9ybrYl9++SVeeuklZGdnIzU1FT169MCVK1d0riO2hh9++AH//Oc/cezYMVSvzls4iQBgzZo1mDp1arkumSYiKuny5csIDg5GYmKipjEKhUKB2NhYg/dwpqenIzAwEElJSZrL9C1l2bJl+Pbbb7F9+3a943npHRHpyMvLw9mzZ/Gvf/0LQ4cONapIAu43kLBw4UKkp6drhn3++ef47bffkJaWhm+++QbvvPMOhg4dCmdnZxQUFODjjz+2iSIJAG7duoWYmBgWSURERBXA29sbq1evNtiiZWVzdHQs89J+Hg0QkY7169dj7NixaNmyJb744guT5h09erTW68zMTMyePRuZmZmoV68ennvuOU3zqO3atTN4L5g1FN//QURERBWj+H5zW/Daa6+VOZ6X3hEREREREZXCS++IiIiIiIhKYaFERERERERUCgslIiIiIiKiUlgoERERERERlcJCiYiIiIiIqBQWSkRERERERKWwUCIiIiIiIiqFhRIREREREVEpLJSIiIiIiIhK+X+upI3YqhjzjQAAAABJRU5ErkJggg==",
"text/plain": [
"
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"## Lets plot some of these outputs to check they look how we expect\n",
"fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2, figsize=(10,8))\n",
"ax1.hist(test_dist['vol_perc_bub_with_noise'], bins=50);\n",
"ax1.set_xlabel('MC bubble volume (vol%)')\n",
"ax1.set_ylabel('# of simulations')\n",
"\n",
"ax2.hist(test_dist['melt_dens_kgm3_with_noise'], bins=50);\n",
"ax2.set_xlabel('MC Melt Density (kg/cm3)')\n",
"\n",
"ax3.hist(test_dist['CO2_bub_dens_gcm3_with_noise'], bins=50);\n",
"ax3.set_xlabel('MC Bubble Density (g/cm3)')\n",
"ax3.set_ylabel('# of simulations')\n",
"\n",
"ax4.hist(test_dist['CO2_eq_melt_ppm_MC'], bins=50, color='red');\n",
"ax4.set_xlabel('CO2 equivalent in the melt held in the bubble (ppm)')\n",
"# Plotting preferred value - no Monte Carlo (as no negs can skew)\n",
"ax4.plot([test_dist['CO2_eq_melt_ppm_noMC'].iloc[0],\n",
" test_dist['CO2_eq_melt_ppm_noMC'].iloc[0]], [0, N_dup/15], '-k', label='Preferred value');\n",
"\n",
"# Plot standard deviation of simulation\n",
"ax4.plot([test_dist['CO2_eq_melt_ppm_noMC'].iloc[0]+np.std(test_dist['CO2_eq_melt_ppm_MC']), \n",
" test_dist['CO2_eq_melt_ppm_noMC'].iloc[0]+np.std(test_dist['CO2_eq_melt_ppm_MC'])], [0, N_dup/15], ':k', label='Preferred+value+1s MC');\n",
"ax4.plot([test_dist['CO2_eq_melt_ppm_noMC'].iloc[0]-np.std(test_dist['CO2_eq_melt_ppm_MC']), \n",
" test_dist['CO2_eq_melt_ppm_noMC'].iloc[0]-np.std(test_dist['CO2_eq_melt_ppm_MC'])], [0, N_dup/15], ':k', label='Preferred-value+1s MC');\n",
"ax4.legend()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Now lets load in some real data\n",
"- This data has the values for errors as columns for each melt inclusion (a row)\n",
"- The function outputs 2 things, av is just the mean, and std dev of the simulations. test_dist is all the simulations so you can plot them up!"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"tags": []
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
sample
\n",
"
PEC_amount
\n",
"
Na2O_PEC
\n",
"
Al2O3_PEC
\n",
"
P2O5_PEC
\n",
"
CaO_PEC
\n",
"
K2O_PEC
\n",
"
TiO2_PEC
\n",
"
SiO2_PEC
\n",
"
MgO_PEC
\n",
"
FeOt_PEC
\n",
"
MnO_PEC
\n",
"
H2O_Liq_meas
\n",
"
CO2_Liq_meas
\n",
"
Melt_dens
\n",
"
Melt_dens_err
\n",
"
Vol_%
\n",
"
CO2_dens_gcm3
\n",
"
CO2_dens_gcm3_std_Dev
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
LL8_613b
\n",
"
16.60
\n",
"
2.469
\n",
"
12.900
\n",
"
0.229
\n",
"
10.702
\n",
"
0.349
\n",
"
2.394
\n",
"
49.770
\n",
"
9.328
\n",
"
11.336
\n",
"
0.142
\n",
"
0.240274
\n",
"
28.979265
\n",
"
2.728376
\n",
"
0.081851
\n",
"
2.723415
\n",
"
0.021977
\n",
"
0.000662
\n",
"
\n",
"
\n",
"
1
\n",
"
LL8_615
\n",
"
30.59
\n",
"
2.131
\n",
"
10.928
\n",
"
0.229
\n",
"
9.435
\n",
"
0.334
\n",
"
1.815
\n",
"
49.676
\n",
"
13.612
\n",
"
11.336
\n",
"
0.151
\n",
"
0.238325
\n",
"
37.495154
\n",
"
2.705747
\n",
"
0.081172
\n",
"
4.254140
\n",
"
0.022912
\n",
"
0.006003
\n",
"
\n",
"
\n",
"
2
\n",
"
LL8_617_a
\n",
"
30.02
\n",
"
2.092
\n",
"
11.323
\n",
"
0.291
\n",
"
9.757
\n",
"
0.324
\n",
"
2.009
\n",
"
49.028
\n",
"
13.349
\n",
"
11.338
\n",
"
0.135
\n",
"
0.235590
\n",
"
41.302324
\n",
"
2.716938
\n",
"
0.081508
\n",
"
3.996225
\n",
"
0.029050
\n",
"
0.000521
\n",
"
\n",
"
\n",
"
3
\n",
"
LL8_623_b
\n",
"
26.68
\n",
"
2.103
\n",
"
11.895
\n",
"
0.299
\n",
"
10.022
\n",
"
0.449
\n",
"
2.448
\n",
"
48.418
\n",
"
12.514
\n",
"
11.331
\n",
"
0.177
\n",
"
0.216237
\n",
"
23.837194
\n",
"
2.728426
\n",
"
0.081853
\n",
"
5.110120
\n",
"
0.052225
\n",
"
0.009579
\n",
"
\n",
"
\n",
"
4
\n",
"
LL8_626
\n",
"
27.81
\n",
"
2.181
\n",
"
11.612
\n",
"
0.209
\n",
"
9.789
\n",
"
0.330
\n",
"
2.027
\n",
"
49.215
\n",
"
12.783
\n",
"
11.331
\n",
"
0.172
\n",
"
0.228748
\n",
"
5.660589
\n",
"
2.714561
\n",
"
0.081437
\n",
"
5.645210
\n",
"
0.029996
\n",
"
0.008963
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" sample PEC_amount Na2O_PEC Al2O3_PEC P2O5_PEC CaO_PEC K2O_PEC \\\n",
"0 LL8_613b 16.60 2.469 12.900 0.229 10.702 0.349 \n",
"1 LL8_615 30.59 2.131 10.928 0.229 9.435 0.334 \n",
"2 LL8_617_a 30.02 2.092 11.323 0.291 9.757 0.324 \n",
"3 LL8_623_b 26.68 2.103 11.895 0.299 10.022 0.449 \n",
"4 LL8_626 27.81 2.181 11.612 0.209 9.789 0.330 \n",
"\n",
" TiO2_PEC SiO2_PEC MgO_PEC FeOt_PEC MnO_PEC H2O_Liq_meas CO2_Liq_meas \\\n",
"0 2.394 49.770 9.328 11.336 0.142 0.240274 28.979265 \n",
"1 1.815 49.676 13.612 11.336 0.151 0.238325 37.495154 \n",
"2 2.009 49.028 13.349 11.338 0.135 0.235590 41.302324 \n",
"3 2.448 48.418 12.514 11.331 0.177 0.216237 23.837194 \n",
"4 2.027 49.215 12.783 11.331 0.172 0.228748 5.660589 \n",
"\n",
" Melt_dens Melt_dens_err Vol_% CO2_dens_gcm3 CO2_dens_gcm3_std_Dev \n",
"0 2.728376 0.081851 2.723415 0.021977 0.000662 \n",
"1 2.705747 0.081172 4.254140 0.022912 0.006003 \n",
"2 2.716938 0.081508 3.996225 0.029050 0.000521 \n",
"3 2.728426 0.081853 5.110120 0.052225 0.009579 \n",
"4 2.714561 0.081437 5.645210 0.029996 0.008963 "
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Download here - https://github.com/PennyWieser/DiadFit/blob/main/docs/Examples/CO2_in_Melt_Inclusion_Vapour_Bubbles/Wieser_2021_Kilauea.xlsx\n",
"df=pd.read_excel('Wieser_2021_Kilauea.xlsx', sheet_name='Sheet2')\n",
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"working on sample number 0\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"working on sample number 20\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"working on sample number 40\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n",
"didnt get inside else loop\n",
"using error on the bubble volume percent, not the entered dimensions, as error_vol_perc_bub was not None\n"
]
},
{
"data": {
"text/html": [
"