%cd ..
%load_ext autoreload
%autoreload 2
/home/runner/work/numpyro-doing-bayesian/numpyro-doing-bayesian
from __future__ import annotations

import arviz as az
import jax.numpy as jnp
import jax.random as random
import matplotlib.pyplot as plt
import numpy as np
import numpyro
import numpyro.distributions as dist
import numpyro_glm.utils.dist as dist_utils
from numpyro.infer import MCMC, NUTS
import pandas as pd
import seaborn as sns

numpyro.set_host_device_count(4)

Chapter 9: Hierarchical Models

Multiple Coins from a Single Mint

Example: Therapeutic Touch

therapeutic_df: pd.DataFrame = pd.read_csv(
    'datasets/TherapeuticTouchData.csv', dtype=dict(s='category'))
therapeutic_df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 280 entries, 0 to 279
Data columns (total 2 columns):
 #   Column  Non-Null Count  Dtype   
---  ------  --------------  -----   
 0   y       280 non-null    int64   
 1   s       280 non-null    category
dtypes: category(1), int64(1)
memory usage: 2.8 KB
def therapeutic_touch(y: jnp.ndarray, s: jnp.ndarray, nb_subjects: int):
    assert y.shape[0] == s.shape[0]

    nb_obs = y.shape[0]

    # Omega prior.
    omega = numpyro.sample('omega', dist.Beta(1, 1))

    # Kappa prior.
    kappa_minus_two = numpyro.sample(
        '_kappa-2', dist_utils.gamma_dist_from_mean_std(1, 10))
    kappa = numpyro.deterministic('kappa', kappa_minus_two + 2)

    # Each subject's ability.
    theta = numpyro.sample(
        'theta', dist_utils.beta_dist_from_omega_kappa(omega, kappa).expand([nb_subjects]))

    # Observations.
    with numpyro.plate('obs', nb_obs) as idx:
        numpyro.sample('y', dist.Bernoulli(theta[s[idx]]), obs=y[idx])
kernel = NUTS(therapeutic_touch)
mcmc = MCMC(kernel, num_warmup=1000, num_samples=20000, num_chains=4)
mcmc.run(
    random.PRNGKey(0),
    y=jnp.array(therapeutic_df['y'].values),
    s=jnp.array(therapeutic_df['s'].cat.codes.values),
    nb_subjects=therapeutic_df['s'].cat.categories.size,
)
mcmc.print_summary()
No GPU/TPU found, falling back to CPU. (Set TF_CPP_MIN_LOG_LEVEL=0 and rerun for more info.)
                mean       std    median      5.0%     95.0%     n_eff     r_hat
  _kappa-2     52.27     54.08     34.23      2.44    115.37   6184.39      1.00
     omega      0.44      0.04      0.44      0.38      0.50  23893.57      1.00
  theta[0]      0.36      0.09      0.37      0.21      0.50  18904.88      1.00
  theta[1]      0.38      0.08      0.39      0.24      0.52  30114.62      1.00
  theta[2]      0.41      0.08      0.41      0.27      0.54  46226.55      1.00
  theta[3]      0.41      0.08      0.41      0.27      0.54  45499.61      1.00
  theta[4]      0.41      0.08      0.41      0.27      0.54  46494.40      1.00
  theta[5]      0.41      0.08      0.41      0.27      0.54  42432.25      1.00
  theta[6]      0.41      0.08      0.41      0.27      0.54  45258.14      1.00
  theta[7]      0.41      0.08      0.41      0.27      0.54  45470.53      1.00
  theta[8]      0.41      0.08      0.41      0.27      0.54  47448.79      1.00
  theta[9]      0.41      0.08      0.41      0.27      0.54  46878.63      1.00
 theta[10]      0.43      0.08      0.43      0.30      0.56  64261.93      1.00
 theta[11]      0.43      0.08      0.43      0.30      0.56  66379.93      1.00
 theta[12]      0.43      0.08      0.43      0.30      0.56  68492.70      1.00
 theta[13]      0.43      0.08      0.43      0.29      0.56  66274.18      1.00
 theta[14]      0.43      0.08      0.43      0.30      0.56  66327.81      1.00
 theta[15]      0.45      0.08      0.45      0.32      0.59  67374.73      1.00
 theta[16]      0.45      0.08      0.45      0.32      0.59  65154.49      1.00
 theta[17]      0.45      0.08      0.45      0.32      0.59  66197.82      1.00
 theta[18]      0.45      0.08      0.45      0.32      0.59  68719.59      1.00
 theta[19]      0.45      0.08      0.45      0.32      0.59  65325.22      1.00
 theta[20]      0.45      0.08      0.45      0.32      0.59  64843.14      1.00
 theta[21]      0.46      0.08      0.45      0.32      0.59  65936.57      1.00
 theta[22]      0.48      0.08      0.47      0.35      0.62  40462.35      1.00
 theta[23]      0.48      0.08      0.47      0.34      0.61  44270.58      1.00
 theta[24]      0.50      0.09      0.49      0.36      0.65  29223.00      1.00
 theta[25]      0.50      0.09      0.49      0.36      0.65  27814.74      1.00
 theta[26]      0.50      0.09      0.49      0.36      0.64  28160.10      1.00
 theta[27]      0.53      0.09      0.52      0.38      0.68  19642.28      1.00

Number of divergences: 5
idata = az.from_numpyro(
    mcmc,
    coords=dict(subject=therapeutic_df['s'].cat.categories),
    dims=dict(theta=['subject']))
az.plot_trace(idata)
plt.tight_layout()
fig, axes = plt.subplots(ncols=2, figsize=(8, 4))

ax = axes[0]
az.plot_posterior(idata, var_names='kappa',
                  point_estimate='mode', hdi_prob=.95, ax=ax)
ax.set_xlabel('$\\kappa$')

ax = axes[1]
az.plot_posterior(idata, var_names='omega',
                  point_estimate='mode', hdi_prob=.95, ref_val=0.5, ax=ax)
ax.set_title('Group Mode')
ax.set_xlabel('$\\omega$')

fig.tight_layout()
fig, axes = plt.subplots(nrows=3, ncols=3, figsize=(12, 12))
theta_to_plot = ['S01', 'S14', 'S28']

for r, c in np.ndindex(axes.shape):
    ax = axes[r, c]
    r_theta = theta_to_plot[r]
    c_theta = theta_to_plot[c]

    if r == c:
        az.plot_posterior(
            idata, 'theta',
            coords=dict(subject=r_theta),
            hdi_prob=.95,
            point_estimate='mode',
            ref_val=.5,
            ax=ax)
        ax.set_title(f'theta[{r_theta}]')
    elif r < c:
        diff = (idata['posterior']['theta'].sel(subject=r_theta).values
                - idata['posterior']['theta'].sel(subject=c_theta).values)
        az.plot_posterior(
            diff, hdi_prob=.95, point_estimate='mode', ref_val=0, ax=ax)
        ax.set_title(f'theta[{r_theta}] - theta[{c_theta}]')
        ax.set_xlabel('Diff')
    else:
        y = idata['posterior']['theta'].sel(subject=r_theta).values.flatten()
        x = idata['posterior']['theta'].sel(subject=c_theta).values.flatten()

        sns.scatterplot(x=x, y=y, ax=ax)

        xx = np.linspace(*ax.get_xlim(), 1000)
        sns.lineplot(x=xx, y=xx, ax=ax, color='k', linestyle='dashed')

        ax.set_xlabel(f'theta[{c_theta}]')
        ax.set_ylabel(f'theta[{r_theta}]')

fig.tight_layout()

Extending the Hierarchy: Subjects within Categories

Example: Baseball Batting Abilities by Position

baseball_df: pd.DataFrame = pd.read_csv(
    'datasets/BattingAverage.csv',
    dtype=dict(PriPos='category', Player='category'))
baseball_df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 948 entries, 0 to 947
Data columns (total 6 columns):
 #   Column        Non-Null Count  Dtype   
---  ------        --------------  -----   
 0   Player        948 non-null    category
 1   PriPos        948 non-null    category
 2   Hits          948 non-null    int64   
 3   AtBats        948 non-null    int64   
 4   PlayerNumber  948 non-null    int64   
 5   PriPosNumber  948 non-null    int64   
dtypes: category(2), int64(4)
memory usage: 72.6 KB
def baseball_batting_model(y: jnp.ndarray, pos: jnp.ndarray, at_bats: jnp.ndarray, nb_pos: int):
    assert y.shape[0] == pos.shape[0] == at_bats.shape[0]
    nb_obs = y.shape[0]

    # All positions' overall ability.
    omega = numpyro.sample('omega', dist.Beta(1, 1))
    kappa_minus_two = numpyro.sample(
        '_kappa-2', dist_utils.gamma_dist_from_mean_std(1, 10))
    kappa = numpyro.deterministic('kappa', kappa_minus_two + 2)

    # Each position's ability.
    omega_pos = numpyro.sample(
        'omega_pos', dist_utils.beta_dist_from_omega_kappa(omega, kappa).expand([nb_pos]))
    kappa_pos_minus_two = numpyro.sample(
        '_kappa_pos-2', dist_utils.gamma_dist_from_mean_std(1, 10).expand([nb_pos]))
    kappa_pos = numpyro.deterministic('kappa_pos', kappa_pos_minus_two + 2)

    # Each player's ability.
    with numpyro.plate('obs', nb_obs) as idx:
        ability = numpyro.sample(
            'ability', dist_utils.beta_dist_from_omega_kappa(omega_pos[pos[idx]], kappa_pos[pos[idx]]))
        numpyro.sample('y', dist.Binomial(at_bats[idx], ability), obs=y[idx])


kernel = NUTS(baseball_batting_model)
mcmc = MCMC(kernel, num_warmup=1000, num_samples=20000, num_chains=4)
mcmc.run(
    random.PRNGKey(0),
    y=jnp.array(baseball_df['Hits'].values),
    pos=jnp.array(baseball_df['PriPos'].cat.codes.values),
    at_bats=jnp.array(baseball_df['AtBats'].values),
    nb_pos=baseball_df['PriPos'].cat.categories.size,
)
mcmc.print_summary()
                     mean       std    median      5.0%     95.0%     n_eff     r_hat
       _kappa-2     59.63     31.96     54.08     11.59    106.68  65465.62      1.00
_kappa_pos-2[0]    236.85     68.41    227.24    129.16    338.50  27904.33      1.00
_kappa_pos-2[1]    256.56     82.26    243.72    129.97    379.38  22910.72      1.00
_kappa_pos-2[2]    210.31     66.90    199.83    106.59    308.68  26424.82      1.00
_kappa_pos-2[3]    169.92     46.90    163.59     96.13    240.58  22032.33      1.00
_kappa_pos-2[4]    238.26     76.65    226.74    120.00    351.27  26791.14      1.00
_kappa_pos-2[5]    213.86     62.64    204.61    118.42    307.88  19460.95      1.00
_kappa_pos-2[6]    105.29     45.28     95.29     43.99    167.09   1917.60      1.00
_kappa_pos-2[7]    399.44    133.92    378.99    194.27    599.66  25841.01      1.00
_kappa_pos-2[8]    241.54     83.77    227.91    114.09    365.46  24202.34      1.00
     ability[0]      0.13      0.03      0.13      0.08      0.18 138052.48      1.00
     ability[1]      0.25      0.02      0.25      0.21      0.28 143485.63      1.00
     ability[2]      0.25      0.02      0.25      0.21      0.29 139196.63      1.00
     ability[3]      0.23      0.01      0.23      0.21      0.26 133346.63      1.00
     ability[4]      0.25      0.02      0.25      0.21      0.29 144905.04      1.00
     ability[5]      0.13      0.03      0.13      0.07      0.18 129111.83      1.00
     ability[6]      0.13      0.03      0.13      0.07      0.18 121993.64      1.00
     ability[7]      0.24      0.03      0.24      0.19      0.29 129587.06      1.00
     ability[8]      0.27      0.02      0.27      0.24      0.29 152620.17      1.00
     ability[9]      0.28      0.02      0.28      0.25      0.30 134166.72      1.00
    ability[10]      0.13      0.03      0.13      0.07      0.19 127177.50      1.00
    ability[11]      0.25      0.02      0.25      0.22      0.27 145060.31      1.00
    ability[12]      0.25      0.02      0.24      0.21      0.28 138379.29      1.00
    ability[13]      0.24      0.03      0.24      0.19      0.29 143689.38      1.00
    ability[14]      0.25      0.03      0.25      0.20      0.29 130235.61      1.00
    ability[15]      0.23      0.02      0.23      0.20      0.25 124926.87      1.00
    ability[16]      0.28      0.02      0.28      0.25      0.30 133596.44      1.00
    ability[17]      0.25      0.02      0.25      0.21      0.28 129161.55      1.00
    ability[18]      0.28      0.02      0.28      0.25      0.30 130116.41      1.00
    ability[19]      0.13      0.03      0.12      0.07      0.18 124587.03      1.00
    ability[20]      0.24      0.02      0.24      0.20      0.27 152998.22      1.00
    ability[21]      0.27      0.02      0.26      0.23      0.30 150121.04      1.00
    ability[22]      0.13      0.03      0.12      0.07      0.18 130012.66      1.00
    ability[23]      0.14      0.03      0.13      0.09      0.18 140943.68      1.00
    ability[24]      0.24      0.02      0.24      0.20      0.28 134607.86      1.00
    ability[25]      0.24      0.02      0.24      0.21      0.27 158015.49      1.00
    ability[26]      0.14      0.04      0.13      0.08      0.19 122026.33      1.00
    ability[27]      0.25      0.02      0.25      0.22      0.28 151739.15      1.00
    ability[28]      0.13      0.03      0.13      0.07      0.18 133152.41      1.00
    ability[29]      0.28      0.02      0.28      0.25      0.30 129216.55      1.00
    ability[30]      0.13      0.03      0.13      0.07      0.18 126171.85      1.00
    ability[31]      0.12      0.03      0.12      0.08      0.16 137351.46      1.00
    ability[32]      0.25      0.02      0.25      0.22      0.28 135282.01      1.00
    ability[33]      0.24      0.02      0.24      0.20      0.28 146232.94      1.00
    ability[34]      0.13      0.03      0.13      0.07      0.18 132190.92      1.00
    ability[35]      0.22      0.02      0.22      0.19      0.25 132336.65      1.00
    ability[36]      0.13      0.03      0.13      0.07      0.18 125779.12      1.00
    ability[37]      0.24      0.02      0.24      0.21      0.26 136347.99      1.00
    ability[38]      0.24      0.02      0.24      0.20      0.28 117747.54      1.00
    ability[39]      0.25      0.02      0.25      0.23      0.28 157790.12      1.00
    ability[40]      0.22      0.03      0.22      0.18      0.26  89333.34      1.00
    ability[41]      0.24      0.02      0.24      0.20      0.27 129392.43      1.00
    ability[42]      0.13      0.03      0.13      0.08      0.18 137225.34      1.00
    ability[43]      0.12      0.03      0.12      0.07      0.17  96456.34      1.00
    ability[44]      0.12      0.03      0.12      0.07      0.18 124375.93      1.00
    ability[45]      0.25      0.02      0.25      0.22      0.28 131120.20      1.00
    ability[46]      0.26      0.02      0.26      0.23      0.29 140250.81      1.00
    ability[47]      0.21      0.02      0.21      0.17      0.24  88352.29      1.00
    ability[48]      0.14      0.03      0.14      0.09      0.19 108687.22      1.00
    ability[49]      0.13      0.03      0.13      0.07      0.18 123777.14      1.00
    ability[50]      0.12      0.03      0.11      0.07      0.16  64446.13      1.00
    ability[51]      0.24      0.02      0.24      0.21      0.26 138468.41      1.00
    ability[52]      0.12      0.03      0.12      0.08      0.17 119862.75      1.00
    ability[53]      0.13      0.03      0.12      0.07      0.18 119248.15      1.00
    ability[54]      0.24      0.03      0.24      0.20      0.29 119441.53      1.00
    ability[55]      0.13      0.03      0.13      0.07      0.18 126315.79      1.00
    ability[56]      0.27      0.02      0.27      0.24      0.30 155376.13      1.00
    ability[57]      0.27      0.01      0.27      0.24      0.29 146184.86      1.00
    ability[58]      0.30      0.02      0.30      0.28      0.33 132846.31      1.00
    ability[59]      0.13      0.03      0.13      0.07      0.18 132044.08      1.00
    ability[60]      0.12      0.03      0.12      0.07      0.18 106755.95      1.00
    ability[61]      0.26      0.02      0.25      0.21      0.30 137610.94      1.00
    ability[62]      0.27      0.02      0.27      0.24      0.31 142859.93      1.00
    ability[63]      0.26      0.02      0.25      0.22      0.29 148933.59      1.00
    ability[64]      0.24      0.02      0.24      0.21      0.27 133930.07      1.00
    ability[65]      0.26      0.02      0.26      0.23      0.29 159985.38      1.00
    ability[66]      0.23      0.03      0.23      0.19      0.28 114213.47      1.00
    ability[67]      0.15      0.03      0.15      0.10      0.20  72331.22      1.00
    ability[68]      0.25      0.02      0.25      0.21      0.28 106837.05      1.00
    ability[69]      0.13      0.03      0.13      0.07      0.18 125068.24      1.00
    ability[70]      0.13      0.03      0.12      0.07      0.18 134361.36      1.00
    ability[71]      0.27      0.02      0.27      0.23      0.30 135810.92      1.00
    ability[72]      0.25      0.02      0.25      0.23      0.28 135222.77      1.00
    ability[73]      0.23      0.03      0.23      0.18      0.27 132458.00      1.00
    ability[74]      0.25      0.03      0.25      0.20      0.30 142744.76      1.00
    ability[75]      0.11      0.03      0.11      0.07      0.15  43725.20      1.00
    ability[76]      0.28      0.02      0.28      0.25      0.31 131187.68      1.00
    ability[77]      0.24      0.03      0.24      0.20      0.29 125638.71      1.00
    ability[78]      0.25      0.02      0.25      0.23      0.27 120145.01      1.00
    ability[79]      0.23      0.02      0.23      0.21      0.26  99095.16      1.00
    ability[80]      0.26      0.02      0.26      0.23      0.29 140758.50      1.00
    ability[81]      0.24      0.03      0.24      0.19      0.29 136075.38      1.00
    ability[82]      0.26      0.03      0.26      0.22      0.30 141283.39      1.00
    ability[83]      0.24      0.02      0.24      0.21      0.28 126322.65      1.00
    ability[84]      0.27      0.02      0.27      0.24      0.29 150673.44      1.00
    ability[85]      0.13      0.03      0.13      0.07      0.18 121660.68      1.00
    ability[86]      0.13      0.03      0.13      0.07      0.18 130833.00      1.00
    ability[87]      0.28      0.02      0.28      0.25      0.31 139592.52      1.00
    ability[88]      0.26      0.03      0.26      0.21      0.30 132778.25      1.00
    ability[89]      0.30      0.02      0.30      0.27      0.33 123007.11      1.00
    ability[90]      0.13      0.03      0.12      0.07      0.18 130778.18      1.00
    ability[91]      0.24      0.03      0.24      0.19      0.28 115603.25      1.00
    ability[92]      0.13      0.03      0.13      0.07      0.18 128211.41      1.00
    ability[93]      0.25      0.02      0.25      0.22      0.29 125716.87      1.00
    ability[94]      0.25      0.03      0.25      0.20      0.29 133167.70      1.00
    ability[95]      0.25      0.02      0.25      0.22      0.28 139721.75      1.00
    ability[96]      0.13      0.03      0.13      0.07      0.18 131764.09      1.00
    ability[97]      0.26      0.01      0.26      0.23      0.28 138769.23      1.00
    ability[98]      0.13      0.03      0.13      0.07      0.18 119543.66      1.00
    ability[99]      0.21      0.02      0.21      0.18      0.24 131532.73      1.00
   ability[100]      0.24      0.03      0.24      0.20      0.28 131540.72      1.00
   ability[101]      0.10      0.02      0.09      0.06      0.13  17755.24      1.00
   ability[102]      0.14      0.03      0.14      0.10      0.19 104946.68      1.00
   ability[103]      0.10      0.02      0.10      0.06      0.14  30098.99      1.00
   ability[104]      0.13      0.03      0.13      0.07      0.18 124528.09      1.00
   ability[105]      0.24      0.02      0.24      0.20      0.27 127016.50      1.00
   ability[106]      0.25      0.03      0.25      0.20      0.30 123238.79      1.00
   ability[107]      0.22      0.03      0.22      0.18      0.27 123901.33      1.00
   ability[108]      0.30      0.02      0.30      0.27      0.32 132956.21      1.00
   ability[109]      0.24      0.02      0.24      0.20      0.28 125369.92      1.00
   ability[110]      0.26      0.02      0.26      0.24      0.29 145464.58      1.00
   ability[111]      0.13      0.03      0.13      0.07      0.18 136955.02      1.00
   ability[112]      0.25      0.02      0.25      0.22      0.28 159668.31      1.00
   ability[113]      0.32      0.02      0.32      0.28      0.35  98238.68      1.00
   ability[114]      0.31      0.02      0.31      0.28      0.34 123834.43      1.00
   ability[115]      0.13      0.03      0.12      0.08      0.17 148924.73      1.00
   ability[116]      0.26      0.02      0.26      0.23      0.30 143166.71      1.00
   ability[117]      0.15      0.03      0.15      0.10      0.19  79021.34      1.00
   ability[118]      0.23      0.02      0.23      0.19      0.26 117254.91      1.00
   ability[119]      0.26      0.02      0.25      0.22      0.29 121085.96      1.00
   ability[120]      0.25      0.02      0.25      0.23      0.28 145120.58      1.00
   ability[121]      0.26      0.02      0.26      0.22      0.30 144400.47      1.00
   ability[122]      0.29      0.02      0.29      0.27      0.32 112389.70      1.00
   ability[123]      0.26      0.03      0.26      0.21      0.30 142348.06      1.00
   ability[124]      0.12      0.03      0.12      0.07      0.16  77084.37      1.00
   ability[125]      0.24      0.03      0.24      0.20      0.28 118643.45      1.00
   ability[126]      0.24      0.03      0.24      0.19      0.29 140536.93      1.00
   ability[127]      0.23      0.02      0.23      0.20      0.27 124749.51      1.00
   ability[128]      0.13      0.03      0.13      0.08      0.19 133959.00      1.00
   ability[129]      0.14      0.04      0.14      0.08      0.19 118711.41      1.00
   ability[130]      0.28      0.02      0.28      0.24      0.31 140341.82      1.00
   ability[131]      0.13      0.03      0.13      0.07      0.18 127594.44      1.00
   ability[132]      0.26      0.02      0.26      0.22      0.30 148172.71      1.00
   ability[133]      0.26      0.03      0.26      0.21      0.30 131456.84      1.00
   ability[134]      0.26      0.02      0.26      0.23      0.29 150830.86      1.00
   ability[135]      0.25      0.03      0.25      0.20      0.29 135238.48      1.00
   ability[136]      0.25      0.02      0.25      0.21      0.28 148123.95      1.00
   ability[137]      0.13      0.03      0.13      0.08      0.19 141686.27      1.00
   ability[138]      0.25      0.02      0.24      0.21      0.28 144344.29      1.00
   ability[139]      0.14      0.04      0.13      0.08      0.19 125188.24      1.00
   ability[140]      0.24      0.03      0.24      0.20      0.29 136578.88      1.00
   ability[141]      0.25      0.02      0.25      0.21      0.29 147545.98      1.00
   ability[142]      0.25      0.02      0.25      0.22      0.28 142457.04      1.00
   ability[143]      0.27      0.02      0.27      0.25      0.30 139592.16      1.00
   ability[144]      0.13      0.03      0.13      0.07      0.18 124220.28      1.00
   ability[145]      0.25      0.02      0.25      0.22      0.29 142490.11      1.00
   ability[146]      0.13      0.03      0.13      0.07      0.18 123741.02      1.00
   ability[147]      0.24      0.03      0.24      0.18      0.30 137432.04      1.00
   ability[148]      0.28      0.02      0.28      0.25      0.31 143512.24      1.00
   ability[149]      0.16      0.04      0.16      0.11      0.22  30010.29      1.00
   ability[150]      0.25      0.03      0.25      0.21      0.29 134250.42      1.00
   ability[151]      0.15      0.03      0.14      0.09      0.20  73075.55      1.00
   ability[152]      0.23      0.02      0.23      0.19      0.27 123132.06      1.00
   ability[153]      0.27      0.02      0.27      0.24      0.30 149392.28      1.00
   ability[154]      0.13      0.03      0.13      0.07      0.18 124825.24      1.00
   ability[155]      0.13      0.03      0.13      0.08      0.19 130798.11      1.00
   ability[156]      0.13      0.03      0.12      0.07      0.18 129903.15      1.00
   ability[157]      0.26      0.02      0.26      0.22      0.30 147574.67      1.00
   ability[158]      0.27      0.01      0.27      0.25      0.30 143472.06      1.00
   ability[159]      0.22      0.03      0.22      0.18      0.27  98587.05      1.00
   ability[160]      0.13      0.03      0.13      0.07      0.18 126826.44      1.00
   ability[161]      0.28      0.02      0.28      0.24      0.31 133390.72      1.00
   ability[162]      0.13      0.03      0.13      0.07      0.18 132893.47      1.00
   ability[163]      0.24      0.03      0.24      0.20      0.29 129291.86      1.00
   ability[164]      0.13      0.03      0.13      0.07      0.18 130726.76      1.00
   ability[165]      0.22      0.02      0.22      0.18      0.26 135735.99      1.00
   ability[166]      0.13      0.03      0.12      0.07      0.18 120180.68      1.00
   ability[167]      0.22      0.03      0.22      0.17      0.26  91246.46      1.00
   ability[168]      0.14      0.04      0.13      0.08      0.19 125792.04      1.00
   ability[169]      0.13      0.03      0.13      0.07      0.18 139567.71      1.00
   ability[170]      0.12      0.03      0.12      0.07      0.17  86232.29      1.00
   ability[171]      0.12      0.03      0.12      0.07      0.18 118618.81      1.00
   ability[172]      0.13      0.03      0.13      0.07      0.18 130045.21      1.00
   ability[173]      0.28      0.02      0.28      0.25      0.30 134715.37      1.00
   ability[174]      0.23      0.03      0.23      0.18      0.29 138043.07      1.00
   ability[175]      0.22      0.03      0.22      0.17      0.26  90241.72      1.00
   ability[176]      0.25      0.03      0.25      0.21      0.29 145934.39      1.00
   ability[177]      0.27      0.02      0.27      0.23      0.31 143867.11      1.00
   ability[178]      0.13      0.03      0.12      0.08      0.17 126729.43      1.00
   ability[179]      0.13      0.03      0.13      0.07      0.19 126331.18      1.00
   ability[180]      0.25      0.03      0.25      0.20      0.30 149020.59      1.00
   ability[181]      0.12      0.03      0.12      0.08      0.17 120091.47      1.00
   ability[182]      0.24      0.03      0.24      0.19      0.28 124531.48      1.00
   ability[183]      0.23      0.02      0.23      0.19      0.27 108513.02      1.00
   ability[184]      0.26      0.02      0.26      0.22      0.30 143261.39      1.00
   ability[185]      0.25      0.02      0.25      0.22      0.27 143577.03      1.00
   ability[186]      0.29      0.02      0.29      0.26      0.32 133934.67      1.00
   ability[187]      0.25      0.02      0.25      0.22      0.28 146561.95      1.00
   ability[188]      0.26      0.02      0.26      0.22      0.30 150031.62      1.00
   ability[189]      0.26      0.02      0.26      0.23      0.29 151974.62      1.00
   ability[190]      0.28      0.02      0.28      0.25      0.31 140864.40      1.00
   ability[191]      0.26      0.01      0.26      0.24      0.28 151525.96      1.00
   ability[192]      0.13      0.03      0.13      0.07      0.18 129556.86      1.00
   ability[193]      0.25      0.03      0.25      0.20      0.29 140267.79      1.00
   ability[194]      0.26      0.02      0.26      0.23      0.29 144245.58      1.00
   ability[195]      0.11      0.03      0.11      0.07      0.15  65454.66      1.00
   ability[196]      0.24      0.03      0.24      0.20      0.28 126559.28      1.00
   ability[197]      0.23      0.02      0.23      0.19      0.27 110545.28      1.00
   ability[198]      0.24      0.03      0.24      0.20      0.29 124320.77      1.00
   ability[199]      0.24      0.02      0.24      0.20      0.27 135986.58      1.00
   ability[200]      0.13      0.03      0.12      0.07      0.18 126863.64      1.00
   ability[201]      0.24      0.03      0.24      0.20      0.29 140968.90      1.00
   ability[202]      0.25      0.03      0.25      0.20      0.30 133589.03      1.00
   ability[203]      0.14      0.04      0.13      0.08      0.19 123149.80      1.00
   ability[204]      0.26      0.02      0.26      0.24      0.29 150323.58      1.00
   ability[205]      0.24      0.02      0.24      0.21      0.26 136741.35      1.00
   ability[206]      0.26      0.02      0.26      0.23      0.28 148337.60      1.00
   ability[207]      0.14      0.04      0.14      0.08      0.20 111663.87      1.00
   ability[208]      0.27      0.02      0.27      0.25      0.30 148753.80      1.00
   ability[209]      0.25      0.03      0.25      0.20      0.29 129046.08      1.00
   ability[210]      0.14      0.04      0.14      0.09      0.20  85346.00      1.00
   ability[211]      0.26      0.01      0.26      0.24      0.29 145221.69      1.00
   ability[212]      0.15      0.03      0.15      0.10      0.21  56533.73      1.00
   ability[213]      0.12      0.03      0.12      0.07      0.17 106371.98      1.00
   ability[214]      0.28      0.02      0.28      0.25      0.30 125657.58      1.00
   ability[215]      0.24      0.03      0.24      0.19      0.28 117605.49      1.00
   ability[216]      0.24      0.02      0.24      0.21      0.27 140325.98      1.00
   ability[217]      0.28      0.02      0.28      0.25      0.31 131389.21      1.00
   ability[218]      0.10      0.03      0.10      0.06      0.15  27323.23      1.00
   ability[219]      0.24      0.03      0.24      0.19      0.28 112109.17      1.00
   ability[220]      0.13      0.03      0.13      0.08      0.19 125038.58      1.00
   ability[221]      0.25      0.03      0.25      0.20      0.30 132258.60      1.00
   ability[222]      0.24      0.02      0.24      0.20      0.28 129312.39      1.00
   ability[223]      0.25      0.03      0.25      0.20      0.30 137228.13      1.00
   ability[224]      0.14      0.03      0.14      0.10      0.18 125407.54      1.00
   ability[225]      0.14      0.04      0.13      0.08      0.20 114953.52      1.00
   ability[226]      0.29      0.02      0.29      0.26      0.33 115228.93      1.00
   ability[227]      0.27      0.02      0.27      0.24      0.31 147536.09      1.00
   ability[228]      0.27      0.03      0.27      0.22      0.31 143518.94      1.00
   ability[229]      0.24      0.02      0.24      0.20      0.28 120532.75      1.00
   ability[230]      0.25      0.02      0.25      0.21      0.28 136581.90      1.00
   ability[231]      0.13      0.03      0.13      0.07      0.18 131473.94      1.00
   ability[232]      0.27      0.02      0.27      0.24      0.29 142742.86      1.00
   ability[233]      0.23      0.02      0.23      0.20      0.27 131258.03      1.00
   ability[234]      0.24      0.02      0.24      0.21      0.27 143325.70      1.00
   ability[235]      0.13      0.03      0.13      0.07      0.18 129172.86      1.00
   ability[236]      0.23      0.02      0.23      0.20      0.27 139766.69      1.00
   ability[237]      0.25      0.02      0.25      0.22      0.28 134103.67      1.00
   ability[238]      0.13      0.03      0.13      0.07      0.19 128645.17      1.00
   ability[239]      0.13      0.03      0.13      0.07      0.18 124605.80      1.00
   ability[240]      0.23      0.02      0.23      0.19      0.26 119678.54      1.00
   ability[241]      0.22      0.02      0.22      0.19      0.24 117915.97      1.00
   ability[242]      0.13      0.04      0.13      0.07      0.19 137765.33      1.00
   ability[243]      0.26      0.02      0.26      0.23      0.29 147941.62      1.00
   ability[244]      0.26      0.03      0.26      0.22      0.30 139525.91      1.00
   ability[245]      0.13      0.03      0.13      0.07      0.18 126932.23      1.00
   ability[246]      0.26      0.02      0.26      0.23      0.29 147420.84      1.00
   ability[247]      0.26      0.02      0.25      0.23      0.28 138154.80      1.00
   ability[248]      0.27      0.02      0.27      0.23      0.30 148350.66      1.00
   ability[249]      0.24      0.03      0.24      0.19      0.28 119232.93      1.00
   ability[250]      0.27      0.02      0.27      0.25      0.30 146897.25      1.00
   ability[251]      0.12      0.03      0.12      0.07      0.17 103720.79      1.00
   ability[252]      0.28      0.02      0.28      0.25      0.31 140412.94      1.00
   ability[253]      0.24      0.02      0.24      0.20      0.28 127612.48      1.00
   ability[254]      0.25      0.02      0.25      0.23      0.28 155610.01      1.00
   ability[255]      0.25      0.01      0.25      0.22      0.27 150603.72      1.00
   ability[256]      0.12      0.03      0.12      0.08      0.17 112236.17      1.00
   ability[257]      0.27      0.01      0.27      0.25      0.30 138577.86      1.00
   ability[258]      0.22      0.03      0.22      0.17      0.27 119404.36      1.00
   ability[259]      0.27      0.03      0.27      0.23      0.31 121623.82      1.00
   ability[260]      0.13      0.03      0.13      0.07      0.18 127537.14      1.00
   ability[261]      0.25      0.03      0.25      0.20      0.29 129758.98      1.00
   ability[262]      0.24      0.03      0.24      0.19      0.30 134903.47      1.00
   ability[263]      0.14      0.04      0.13      0.08      0.19 129321.66      1.00
   ability[264]      0.13      0.03      0.13      0.07      0.18 124295.83      1.00
   ability[265]      0.25      0.03      0.25      0.20      0.30 133169.05      1.00
   ability[266]      0.30      0.02      0.30      0.27      0.32 130277.23      1.00
   ability[267]      0.12      0.03      0.12      0.07      0.17 111249.70      1.00
   ability[268]      0.14      0.04      0.14      0.08      0.20 105730.37      1.00
   ability[269]      0.22      0.02      0.22      0.18      0.26 102144.97      1.00
   ability[270]      0.13      0.03      0.13      0.07      0.18 123106.67      1.00
   ability[271]      0.24      0.02      0.24      0.20      0.27 128702.86      1.00
   ability[272]      0.22      0.02      0.22      0.19      0.26 139658.09      1.00
   ability[273]      0.24      0.02      0.24      0.20      0.28 130123.81      1.00
   ability[274]      0.23      0.02      0.23      0.19      0.27 142874.45      1.00
   ability[275]      0.13      0.03      0.13      0.07      0.18 123274.19      1.00
   ability[276]      0.26      0.02      0.26      0.22      0.30 139632.33      1.00
   ability[277]      0.23      0.03      0.23      0.19      0.28 120464.11      1.00
   ability[278]      0.26      0.02      0.26      0.23      0.29 147994.48      1.00
   ability[279]      0.29      0.02      0.29      0.26      0.31 134687.36      1.00
   ability[280]      0.11      0.03      0.11      0.07      0.16  60405.99      1.00
   ability[281]      0.25      0.02      0.25      0.22      0.28 135775.24      1.00
   ability[282]      0.25      0.02      0.25      0.21      0.28 138940.88      1.00
   ability[283]      0.25      0.01      0.25      0.22      0.27 126709.27      1.00
   ability[284]      0.30      0.02      0.30      0.26      0.34 121401.63      1.00
   ability[285]      0.27      0.02      0.27      0.24      0.30 155725.39      1.00
   ability[286]      0.26      0.02      0.26      0.23      0.28 146804.42      1.00
   ability[287]      0.28      0.02      0.28      0.25      0.31 139690.90      1.00
   ability[288]      0.12      0.03      0.12      0.07      0.17  84292.00      1.00
   ability[289]      0.25      0.03      0.25      0.20      0.30 129886.47      1.00
   ability[290]      0.24      0.03      0.24      0.19      0.28 123141.97      1.00
   ability[291]      0.26      0.02      0.26      0.23      0.29 129641.66      1.00
   ability[292]      0.26      0.02      0.26      0.23      0.29 149051.21      1.00
   ability[293]      0.12      0.03      0.12      0.07      0.17  79715.35      1.00
   ability[294]      0.14      0.03      0.14      0.10      0.19 105877.72      1.00
   ability[295]      0.24      0.02      0.24      0.21      0.27 134107.19      1.00
   ability[296]      0.25      0.03      0.25      0.21      0.29 131219.53      1.00
   ability[297]      0.27      0.02      0.27      0.23      0.30 128875.41      1.00
   ability[298]      0.13      0.03      0.13      0.07      0.18 124971.37      1.00
   ability[299]      0.17      0.03      0.16      0.11      0.22  27809.99      1.00
   ability[300]      0.26      0.03      0.26      0.21      0.31 140813.85      1.00
   ability[301]      0.12      0.03      0.11      0.07      0.16  59833.14      1.00
   ability[302]      0.12      0.03      0.12      0.07      0.17  83826.24      1.00
   ability[303]      0.13      0.03      0.13      0.08      0.18 132338.74      1.00
   ability[304]      0.28      0.02      0.28      0.25      0.32 139106.93      1.00
   ability[305]      0.12      0.03      0.12      0.07      0.17  80575.77      1.00
   ability[306]      0.26      0.02      0.26      0.23      0.30 147492.96      1.00
   ability[307]      0.25      0.02      0.25      0.21      0.29 134357.95      1.00
   ability[308]      0.25      0.02      0.24      0.21      0.28 134343.02      1.00
   ability[309]      0.25      0.03      0.25      0.20      0.30 132855.34      1.00
   ability[310]      0.25      0.03      0.25      0.20      0.29 144591.28      1.00
   ability[311]      0.25      0.03      0.25      0.20      0.31 135615.13      1.00
   ability[312]      0.28      0.02      0.28      0.25      0.30 143186.94      1.00
   ability[313]      0.13      0.03      0.13      0.07      0.18 128579.91      1.00
   ability[314]      0.26      0.02      0.26      0.22      0.29 147481.55      1.00
   ability[315]      0.24      0.02      0.24      0.20      0.28 127070.96      1.00
   ability[316]      0.26      0.02      0.26      0.23      0.29 145156.25      1.00
   ability[317]      0.14      0.04      0.13      0.08      0.19 137937.54      1.00
   ability[318]      0.26      0.02      0.26      0.22      0.30 137849.90      1.00
   ability[319]      0.29      0.02      0.29      0.26      0.31 137998.74      1.00
   ability[320]      0.25      0.03      0.25      0.20      0.29 131549.42      1.00
   ability[321]      0.25      0.03      0.25      0.21      0.29 148361.86      1.00
   ability[322]      0.29      0.02      0.29      0.26      0.32 134412.92      1.00
   ability[323]      0.13      0.03      0.13      0.07      0.18 131777.94      1.00
   ability[324]      0.12      0.03      0.11      0.07      0.16  74279.15      1.00
   ability[325]      0.24      0.02      0.24      0.21      0.28 141143.67      1.00
   ability[326]      0.28      0.02      0.28      0.26      0.31 142026.68      1.00
   ability[327]      0.24      0.02      0.24      0.21      0.27 132596.48      1.00
   ability[328]      0.14      0.04      0.14      0.08      0.20 106503.57      1.00
   ability[329]      0.25      0.02      0.25      0.22      0.28 127395.95      1.00
   ability[330]      0.26      0.03      0.26      0.21      0.30 134428.53      1.00
   ability[331]      0.27      0.02      0.27      0.23      0.31 140224.19      1.00
   ability[332]      0.24      0.02      0.24      0.21      0.26 139098.47      1.00
   ability[333]      0.25      0.03      0.25      0.20      0.30 123546.93      1.00
   ability[334]      0.23      0.02      0.23      0.19      0.27 118922.08      1.00
   ability[335]      0.24      0.02      0.24      0.21      0.27 132114.74      1.00
   ability[336]      0.13      0.03      0.13      0.07      0.18 127194.69      1.00
   ability[337]      0.25      0.03      0.25      0.21      0.30 134546.54      1.00
   ability[338]      0.15      0.03      0.15      0.10      0.20  56364.36      1.00
   ability[339]      0.12      0.03      0.12      0.07      0.17  94918.89      1.00
   ability[340]      0.26      0.02      0.26      0.22      0.30 143270.23      1.00
   ability[341]      0.25      0.03      0.25      0.20      0.30 126956.58      1.00
   ability[342]      0.25      0.02      0.25      0.22      0.28 147375.00      1.00
   ability[343]      0.24      0.02      0.24      0.21      0.28 136461.17      1.00
   ability[344]      0.13      0.03      0.12      0.07      0.18 118628.13      1.00
   ability[345]      0.25      0.03      0.25      0.21      0.29 139171.49      1.00
   ability[346]      0.27      0.02      0.27      0.23      0.30 148208.95      1.00
   ability[347]      0.26      0.02      0.26      0.23      0.29 147760.57      1.00
   ability[348]      0.25      0.03      0.25      0.20      0.30 135969.86      1.00
   ability[349]      0.14      0.03      0.14      0.10      0.19  96376.66      1.00
   ability[350]      0.17      0.03      0.16      0.12      0.21  30621.01      1.00
   ability[351]      0.28      0.02      0.28      0.25      0.30 152686.14      1.00
   ability[352]      0.12      0.03      0.12      0.07      0.18 109621.75      1.00
   ability[353]      0.13      0.03      0.13      0.07      0.18 132843.84      1.00
   ability[354]      0.13      0.03      0.13      0.07      0.18 130109.94      1.00
   ability[355]      0.26      0.02      0.26      0.23      0.30 143923.51      1.00
   ability[356]      0.25      0.02      0.25      0.22      0.28 148071.70      1.00
   ability[357]      0.09      0.03      0.09      0.05      0.13  15157.99      1.00
   ability[358]      0.12      0.03      0.12      0.07      0.17  96815.31      1.00
   ability[359]      0.11      0.03      0.11      0.07      0.15  42792.15      1.00
   ability[360]      0.24      0.01      0.24      0.22      0.27 149956.38      1.00
   ability[361]      0.12      0.03      0.12      0.07      0.18 124643.18      1.00
   ability[362]      0.27      0.02      0.27      0.24      0.29 146287.43      1.00
   ability[363]      0.14      0.03      0.14      0.09      0.18 128906.36      1.00
   ability[364]      0.23      0.03      0.23      0.19      0.27 104396.49      1.00
   ability[365]      0.24      0.02      0.24      0.21      0.27 141438.34      1.00
   ability[366]      0.12      0.03      0.12      0.07      0.18 110911.49      1.00
   ability[367]      0.27      0.02      0.27      0.24      0.29 140003.12      1.00
   ability[368]      0.16      0.04      0.16      0.10      0.22  28246.84      1.00
   ability[369]      0.13      0.03      0.13      0.07      0.18 129478.87      1.00
   ability[370]      0.22      0.03      0.22      0.18      0.27 142100.77      1.00
   ability[371]      0.28      0.02      0.28      0.25      0.30 151388.74      1.00
   ability[372]      0.26      0.02      0.26      0.22      0.30 149275.25      1.00
   ability[373]      0.12      0.03      0.12      0.07      0.17 123553.77      1.00
   ability[374]      0.26      0.02      0.26      0.23      0.29 151163.15      1.00
   ability[375]      0.13      0.03      0.13      0.07      0.18 123209.51      1.00
   ability[376]      0.25      0.02      0.25      0.21      0.28 150607.93      1.00
   ability[377]      0.13      0.03      0.13      0.07      0.18 125910.52      1.00
   ability[378]      0.13      0.03      0.13      0.07      0.18 127540.78      1.00
   ability[379]      0.26      0.02      0.26      0.22      0.30 128041.54      1.00
   ability[380]      0.14      0.04      0.14      0.08      0.20 104784.81      1.00
   ability[381]      0.14      0.04      0.13      0.08      0.19 130737.29      1.00
   ability[382]      0.23      0.02      0.23      0.20      0.27 110266.77      1.00
   ability[383]      0.12      0.03      0.12      0.07      0.18 106861.84      1.00
   ability[384]      0.26      0.03      0.25      0.20      0.31 135386.73      1.00
   ability[385]      0.23      0.02      0.23      0.19      0.27 135051.59      1.00
   ability[386]      0.13      0.03      0.13      0.07      0.18 126896.63      1.00
   ability[387]      0.25      0.02      0.25      0.22      0.29 147991.34      1.00
   ability[388]      0.26      0.02      0.26      0.22      0.29 143745.09      1.00
   ability[389]      0.22      0.03      0.22      0.17      0.27 114287.84      1.00
   ability[390]      0.23      0.03      0.23      0.19      0.27 142479.96      1.00
   ability[391]      0.27      0.01      0.27      0.24      0.29 151133.29      1.00
   ability[392]      0.23      0.03      0.23      0.19      0.28 115059.82      1.00
   ability[393]      0.29      0.02      0.29      0.26      0.31 126915.49      1.00
   ability[394]      0.23      0.03      0.23      0.18      0.28 121414.51      1.00
   ability[395]      0.25      0.03      0.25      0.20      0.30 147716.10      1.00
   ability[396]      0.13      0.03      0.13      0.07      0.19 130051.59      1.00
   ability[397]      0.23      0.02      0.23      0.20      0.27 125376.81      1.00
   ability[398]      0.13      0.03      0.13      0.08      0.19 126604.12      1.00
   ability[399]      0.25      0.03      0.25      0.20      0.30 138843.04      1.00
   ability[400]      0.24      0.03      0.24      0.19      0.29 144529.96      1.00
   ability[401]      0.13      0.03      0.13      0.07      0.18 133484.40      1.00
   ability[402]      0.28      0.02      0.28      0.26      0.31 136150.00      1.00
   ability[403]      0.26      0.03      0.26      0.22      0.30 143808.94      1.00
   ability[404]      0.24      0.02      0.24      0.21      0.26 148748.95      1.00
   ability[405]      0.24      0.02      0.24      0.20      0.27 135750.07      1.00
   ability[406]      0.13      0.03      0.13      0.08      0.19 133771.87      1.00
   ability[407]      0.23      0.02      0.23      0.20      0.26 114260.63      1.00
   ability[408]      0.16      0.03      0.16      0.11      0.21  36852.67      1.00
   ability[409]      0.24      0.02      0.24      0.20      0.28 125374.47      1.00
   ability[410]      0.13      0.03      0.13      0.07      0.18 125051.68      1.00
   ability[411]      0.24      0.03      0.24      0.20      0.29 123803.36      1.00
   ability[412]      0.13      0.03      0.13      0.07      0.18 126591.97      1.00
   ability[413]      0.13      0.03      0.13      0.08      0.19 124271.97      1.00
   ability[414]      0.19      0.02      0.19      0.16      0.23  97994.22      1.00
   ability[415]      0.13      0.03      0.13      0.07      0.18 118001.97      1.00
   ability[416]      0.29      0.02      0.29      0.27      0.32 112965.26      1.00
   ability[417]      0.13      0.03      0.13      0.07      0.18 127257.12      1.00
   ability[418]      0.24      0.02      0.24      0.20      0.27 144349.12      1.00
   ability[419]      0.24      0.02      0.24      0.21      0.27 149836.16      1.00
   ability[420]      0.22      0.03      0.22      0.18      0.26  83509.07      1.00
   ability[421]      0.27      0.02      0.27      0.24      0.29 147070.21      1.00
   ability[422]      0.23      0.02      0.23      0.20      0.27 126061.97      1.00
   ability[423]      0.25      0.02      0.25      0.22      0.29 143206.90      1.00
   ability[424]      0.25      0.02      0.25      0.21      0.28 145697.01      1.00
   ability[425]      0.26      0.02      0.26      0.22      0.29 150048.48      1.00
   ability[426]      0.29      0.02      0.29      0.26      0.32 136656.52      1.00
   ability[427]      0.23      0.02      0.23      0.19      0.27 107636.56      1.00
   ability[428]      0.17      0.03      0.16      0.11      0.22  28738.85      1.00
   ability[429]      0.24      0.03      0.24      0.20      0.29 123325.74      1.00
   ability[430]      0.25      0.03      0.25      0.20      0.30 139602.67      1.00
   ability[431]      0.22      0.02      0.22      0.19      0.26 103916.64      1.00
   ability[432]      0.26      0.02      0.26      0.23      0.30 141938.39      1.00
   ability[433]      0.29      0.02      0.29      0.26      0.32 127438.18      1.00
   ability[434]      0.13      0.03      0.13      0.07      0.18 127898.05      1.00
   ability[435]      0.25      0.02      0.25      0.22      0.27 153218.52      1.00
   ability[436]      0.30      0.02      0.30      0.27      0.32 117245.04      1.00
   ability[437]      0.12      0.03      0.12      0.07      0.18 106078.66      1.00
   ability[438]      0.27      0.02      0.27      0.25      0.30 141353.91      1.00
   ability[439]      0.26      0.03      0.26      0.22      0.31 138339.84      1.00
   ability[440]      0.25      0.02      0.25      0.21      0.28 137631.53      1.00
   ability[441]      0.12      0.03      0.12      0.07      0.16  80336.79      1.00
   ability[442]      0.23      0.02      0.23      0.21      0.26 134949.42      1.00
   ability[443]      0.24      0.02      0.24      0.20      0.28 137367.39      1.00
   ability[444]      0.27      0.02      0.27      0.24      0.31 143304.21      1.00
   ability[445]      0.24      0.03      0.24      0.19      0.29 147869.39      1.00
   ability[446]      0.28      0.02      0.28      0.25      0.30 136988.50      1.00
   ability[447]      0.22      0.02      0.22      0.19      0.26 108850.09      1.00
   ability[448]      0.28      0.02      0.28      0.25      0.31 158609.79      1.00
   ability[449]      0.27      0.02      0.27      0.24      0.29 143986.17      1.00
   ability[450]      0.25      0.02      0.25      0.22      0.28 133959.14      1.00
   ability[451]      0.12      0.03      0.12      0.07      0.18 119655.10      1.00
   ability[452]      0.25      0.02      0.25      0.21      0.28 144874.39      1.00
   ability[453]      0.25      0.02      0.25      0.21      0.29 124237.98      1.00
   ability[454]      0.13      0.03      0.12      0.08      0.17 118911.03      1.00
   ability[455]      0.23      0.02      0.23      0.19      0.27 115928.10      1.00
   ability[456]      0.25      0.02      0.25      0.21      0.29 143373.26      1.00
   ability[457]      0.14      0.03      0.13      0.08      0.19 127662.51      1.00
   ability[458]      0.24      0.02      0.24      0.21      0.28 108530.29      1.00
   ability[459]      0.14      0.03      0.13      0.09      0.18 145653.71      1.00
   ability[460]      0.29      0.02      0.29      0.26      0.32 142229.06      1.00
   ability[461]      0.28      0.02      0.28      0.25      0.30 133453.13      1.00
   ability[462]      0.13      0.03      0.13      0.08      0.18 137103.25      1.00
   ability[463]      0.26      0.02      0.26      0.22      0.30 148749.03      1.00
   ability[464]      0.11      0.03      0.11      0.07      0.15  53373.10      1.00
   ability[465]      0.30      0.02      0.30      0.27      0.33 122543.36      1.00
   ability[466]      0.16      0.03      0.16      0.11      0.21  39515.17      1.00
   ability[467]      0.13      0.03      0.12      0.07      0.17 124735.24      1.00
   ability[468]      0.25      0.01      0.25      0.23      0.28 145533.93      1.00
   ability[469]      0.26      0.02      0.26      0.23      0.28 140491.14      1.00
   ability[470]      0.13      0.03      0.13      0.07      0.18 131843.76      1.00
   ability[471]      0.25      0.02      0.25      0.22      0.29 132443.24      1.00
   ability[472]      0.28      0.02      0.28      0.26      0.31 147410.63      1.00
   ability[473]      0.13      0.03      0.13      0.07      0.18 122624.93      1.00
   ability[474]      0.24      0.02      0.24      0.21      0.26 138644.60      1.00
   ability[475]      0.25      0.02      0.25      0.22      0.29 144897.27      1.00
   ability[476]      0.23      0.02      0.22      0.19      0.26 132310.22      1.00
   ability[477]      0.27      0.03      0.27      0.23      0.31 133206.24      1.00
   ability[478]      0.24      0.02      0.24      0.20      0.28 143127.62      1.00
   ability[479]      0.25      0.02      0.25      0.23      0.28 140058.09      1.00
   ability[480]      0.13      0.03      0.13      0.07      0.18 132251.24      1.00
   ability[481]      0.13      0.04      0.13      0.07      0.18 125799.13      1.00
   ability[482]      0.26      0.02      0.26      0.23      0.29 158222.65      1.00
   ability[483]      0.26      0.03      0.26      0.21      0.30 140701.76      1.00
   ability[484]      0.26      0.02      0.26      0.22      0.30 145379.10      1.00
   ability[485]      0.23      0.03      0.23      0.18      0.29 133489.33      1.00
   ability[486]      0.25      0.03      0.25      0.20      0.30 133623.16      1.00
   ability[487]      0.13      0.03      0.13      0.07      0.18 128477.51      1.00
   ability[488]      0.25      0.03      0.25      0.21      0.29 142677.56      1.00
   ability[489]      0.27      0.02      0.27      0.24      0.29 153067.60      1.00
   ability[490]      0.15      0.03      0.15      0.10      0.20  57466.45      1.00
   ability[491]      0.20      0.02      0.20      0.16      0.24 101760.54      1.00
   ability[492]      0.27      0.02      0.27      0.24      0.30 146405.01      1.00
   ability[493]      0.19      0.03      0.19      0.14      0.25  12634.07      1.00
   ability[494]      0.12      0.03      0.12      0.07      0.18 125870.49      1.00
   ability[495]      0.13      0.03      0.13      0.07      0.19 131064.82      1.00
   ability[496]      0.26      0.02      0.26      0.23      0.29 155033.43      1.00
   ability[497]      0.14      0.03      0.14      0.09      0.18 127172.28      1.00
   ability[498]      0.27      0.02      0.27      0.24      0.31 119238.40      1.00
   ability[499]      0.24      0.03      0.24      0.19      0.30 143460.69      1.00
   ability[500]      0.13      0.03      0.13      0.07      0.18 128281.07      1.00
   ability[501]      0.24      0.03      0.24      0.18      0.29 137316.29      1.00
   ability[502]      0.12      0.03      0.12      0.07      0.18 107310.05      1.00
   ability[503]      0.15      0.04      0.14      0.09      0.20  79974.92      1.00
   ability[504]      0.24      0.03      0.24      0.19      0.29 128118.69      1.00
   ability[505]      0.25      0.02      0.25      0.21      0.29 134351.00      1.00
   ability[506]      0.23      0.02      0.23      0.19      0.26 120051.57      1.00
   ability[507]      0.12      0.03      0.12      0.07      0.17  90025.12      1.00
   ability[508]      0.26      0.02      0.26      0.22      0.30 128570.74      1.00
   ability[509]      0.12      0.03      0.12      0.07      0.16  70543.09      1.00
   ability[510]      0.14      0.03      0.13      0.08      0.19 117487.85      1.00
   ability[511]      0.25      0.02      0.25      0.22      0.28 155411.46      1.00
   ability[512]      0.13      0.03      0.12      0.07      0.18 124667.57      1.00
   ability[513]      0.23      0.02      0.23      0.19      0.27 140543.38      1.00
   ability[514]      0.13      0.03      0.12      0.07      0.18 120491.18      1.00
   ability[515]      0.12      0.03      0.11      0.07      0.16  81080.37      1.00
   ability[516]      0.26      0.02      0.26      0.24      0.29 144903.81      1.00
   ability[517]      0.25      0.02      0.25      0.22      0.28 153890.07      1.00
   ability[518]      0.28      0.02      0.28      0.24      0.31 141399.24      1.00
   ability[519]      0.25      0.02      0.25      0.22      0.29 142051.90      1.00
   ability[520]      0.25      0.03      0.25      0.21      0.30 128465.82      1.00
   ability[521]      0.13      0.03      0.13      0.07      0.19 135245.03      1.00
   ability[522]      0.13      0.03      0.13      0.07      0.18 124105.94      1.00
   ability[523]      0.15      0.04      0.14      0.08      0.20  80880.06      1.00
   ability[524]      0.25      0.02      0.25      0.22      0.28 141644.44      1.00
   ability[525]      0.29      0.02      0.29      0.26      0.33 119453.03      1.00
   ability[526]      0.27      0.02      0.27      0.24      0.30 152769.31      1.00
   ability[527]      0.12      0.03      0.12      0.06      0.17  64683.26      1.00
   ability[528]      0.25      0.03      0.25      0.21      0.29 135751.65      1.00
   ability[529]      0.25      0.03      0.25      0.20      0.29 126511.92      1.00
   ability[530]      0.14      0.03      0.14      0.09      0.19 129978.50      1.00
   ability[531]      0.11      0.03      0.11      0.06      0.15  34635.33      1.00
   ability[532]      0.26      0.02      0.26      0.22      0.30 148238.12      1.00
   ability[533]      0.10      0.02      0.10      0.06      0.14  28502.01      1.00
   ability[534]      0.25      0.03      0.25      0.20      0.30 134306.22      1.00
   ability[535]      0.24      0.03      0.24      0.20      0.28 116533.48      1.00
   ability[536]      0.13      0.03      0.13      0.07      0.18 127920.20      1.00
   ability[537]      0.23      0.03      0.23      0.17      0.28 124979.82      1.00
   ability[538]      0.26      0.02      0.26      0.22      0.29 146044.85      1.00
   ability[539]      0.12      0.03      0.12      0.08      0.17 120543.74      1.00
   ability[540]      0.28      0.02      0.28      0.25      0.31 132694.36      1.00
   ability[541]      0.17      0.04      0.16      0.11      0.22  23628.00      1.00
   ability[542]      0.23      0.02      0.23      0.20      0.27 138523.39      1.00
   ability[543]      0.13      0.04      0.13      0.07      0.18 133994.02      1.00
   ability[544]      0.25      0.02      0.25      0.22      0.29 141321.01      1.00
   ability[545]      0.24      0.03      0.24      0.20      0.29 119542.09      1.00
   ability[546]      0.22      0.02      0.22      0.19      0.25 142300.20      1.00
   ability[547]      0.13      0.03      0.12      0.07      0.18 119749.39      1.00
   ability[548]      0.25      0.02      0.25      0.21      0.28 137638.65      1.00
   ability[549]      0.24      0.02      0.24      0.22      0.27 147022.25      1.00
   ability[550]      0.23      0.03      0.23      0.18      0.28 124293.16      1.00
   ability[551]      0.23      0.02      0.23      0.19      0.26 101182.66      1.00
   ability[552]      0.13      0.03      0.13      0.07      0.18 121318.83      1.00
   ability[553]      0.26      0.02      0.26      0.23      0.29 132193.40      1.00
   ability[554]      0.23      0.02      0.23      0.20      0.27 118650.75      1.00
   ability[555]      0.23      0.02      0.23      0.19      0.26 143931.54      1.00
   ability[556]      0.22      0.02      0.22      0.18      0.26  95041.96      1.00
   ability[557]      0.13      0.03      0.13      0.07      0.18 126217.24      1.00
   ability[558]      0.13      0.03      0.13      0.07      0.18 130953.36      1.00
   ability[559]      0.24      0.03      0.24      0.19      0.29 130999.72      1.00
   ability[560]      0.14      0.03      0.13      0.08      0.19 128470.18      1.00
   ability[561]      0.30      0.02      0.30      0.27      0.33 123183.20      1.00
   ability[562]      0.24      0.02      0.24      0.21      0.27 132364.81      1.00
   ability[563]      0.25      0.02      0.25      0.22      0.27 142877.74      1.00
   ability[564]      0.25      0.02      0.25      0.22      0.27 145162.49      1.00
   ability[565]      0.25      0.03      0.25      0.21      0.29 140470.61      1.00
   ability[566]      0.15      0.04      0.14      0.09      0.20  75033.81      1.00
   ability[567]      0.25      0.02      0.25      0.22      0.29 116094.02      1.00
   ability[568]      0.23      0.02      0.23      0.20      0.26 148244.89      1.00
   ability[569]      0.13      0.03      0.13      0.07      0.18 121406.34      1.00
   ability[570]      0.13      0.03      0.13      0.07      0.18 123922.50      1.00
   ability[571]      0.24      0.03      0.24      0.20      0.28 124942.60      1.00
   ability[572]      0.31      0.02      0.31      0.28      0.33 117803.76      1.00
   ability[573]      0.24      0.03      0.24      0.20      0.28 127436.02      1.00
   ability[574]      0.13      0.03      0.13      0.09      0.18 142911.11      1.00
   ability[575]      0.25      0.02      0.25      0.21      0.28 144090.13      1.00
   ability[576]      0.23      0.02      0.23      0.20      0.26 129063.06      1.00
   ability[577]      0.12      0.03      0.12      0.07      0.18 114716.30      1.00
   ability[578]      0.24      0.02      0.24      0.20      0.27 147691.36      1.00
   ability[579]      0.25      0.02      0.25      0.21      0.28 142423.98      1.00
   ability[580]      0.12      0.03      0.12      0.07      0.18 102138.21      1.00
   ability[581]      0.13      0.03      0.13      0.08      0.17 139530.19      1.00
   ability[582]      0.13      0.03      0.12      0.07      0.18 119685.17      1.00
   ability[583]      0.13      0.03      0.13      0.07      0.18 117546.95      1.00
   ability[584]      0.24      0.03      0.24      0.20      0.28 125791.97      1.00
   ability[585]      0.26      0.03      0.26      0.21      0.31 134695.73      1.00
   ability[586]      0.23      0.02      0.23      0.19      0.26 140694.33      1.00
   ability[587]      0.28      0.02      0.27      0.24      0.31 146652.63      1.00
   ability[588]      0.13      0.03      0.13      0.07      0.18 126504.41      1.00
   ability[589]      0.13      0.03      0.12      0.07      0.18 121534.05      1.00
   ability[590]      0.15      0.03      0.14      0.10      0.19  96400.78      1.00
   ability[591]      0.15      0.04      0.14      0.09      0.20  75099.17      1.00
   ability[592]      0.12      0.03      0.12      0.07      0.18 115967.18      1.00
   ability[593]      0.13      0.03      0.13      0.08      0.19 137806.51      1.00
   ability[594]      0.11      0.03      0.11      0.07      0.15  43572.31      1.00
   ability[595]      0.23      0.02      0.23      0.20      0.26 147406.55      1.00
   ability[596]      0.30      0.02      0.30      0.27      0.32 127973.19      1.00
   ability[597]      0.26      0.02      0.25      0.23      0.28 149864.62      1.00
   ability[598]      0.27      0.02      0.27      0.24      0.30 139509.34      1.00
   ability[599]      0.24      0.03      0.24      0.18      0.29 132432.49      1.00
   ability[600]      0.13      0.03      0.12      0.07      0.18 118647.57      1.00
   ability[601]      0.26      0.02      0.26      0.22      0.29 154484.56      1.00
   ability[602]      0.26      0.02      0.26      0.22      0.29 149388.27      1.00
   ability[603]      0.14      0.04      0.14      0.08      0.19 117162.88      1.00
   ability[604]      0.27      0.02      0.27      0.24      0.29 155508.88      1.00
   ability[605]      0.23      0.02      0.23      0.19      0.27 104713.72      1.00
   ability[606]      0.27      0.02      0.27      0.24      0.30 145231.98      1.00
   ability[607]      0.25      0.02      0.25      0.22      0.28 148991.47      1.00
   ability[608]      0.26      0.02      0.26      0.24      0.29 148269.37      1.00
   ability[609]      0.24      0.02      0.24      0.21      0.27 143817.39      1.00
   ability[610]      0.28      0.02      0.28      0.25      0.31 141881.61      1.00
   ability[611]      0.13      0.03      0.13      0.07      0.18 129012.54      1.00
   ability[612]      0.11      0.03      0.11      0.06      0.16  55876.93      1.00
   ability[613]      0.14      0.03      0.13      0.08      0.19 130617.69      1.00
   ability[614]      0.13      0.03      0.13      0.07      0.18 128892.90      1.00
   ability[615]      0.27      0.02      0.27      0.24      0.31 143701.86      1.00
   ability[616]      0.25      0.02      0.25      0.22      0.27 148369.15      1.00
   ability[617]      0.13      0.03      0.13      0.08      0.19 130009.79      1.00
   ability[618]      0.28      0.02      0.28      0.25      0.30 133723.79      1.00
   ability[619]      0.29      0.02      0.29      0.26      0.32 126236.44      1.00
   ability[620]      0.24      0.02      0.24      0.20      0.28 117191.78      1.00
   ability[621]      0.22      0.02      0.22      0.19      0.26 105114.84      1.00
   ability[622]      0.23      0.02      0.23      0.20      0.26 134729.84      1.00
   ability[623]      0.13      0.03      0.12      0.07      0.18 126733.44      1.00
   ability[624]      0.25      0.02      0.25      0.21      0.28 139576.48      1.00
   ability[625]      0.26      0.03      0.25      0.21      0.30 143944.53      1.00
   ability[626]      0.23      0.03      0.23      0.19      0.28 109237.22      1.00
   ability[627]      0.25      0.03      0.25      0.20      0.29 127315.65      1.00
   ability[628]      0.26      0.03      0.26      0.21      0.31 129883.65      1.00
   ability[629]      0.29      0.02      0.28      0.25      0.32 134691.04      1.00
   ability[630]      0.13      0.03      0.13      0.08      0.18 128978.61      1.00
   ability[631]      0.21      0.03      0.21      0.17      0.26 119171.00      1.00
   ability[632]      0.16      0.03      0.16      0.11      0.21  34305.98      1.00
   ability[633]      0.25      0.02      0.25      0.22      0.29 152113.17      1.00
   ability[634]      0.26      0.03      0.26      0.21      0.31 145717.47      1.00
   ability[635]      0.24      0.03      0.24      0.19      0.28 109983.41      1.00
   ability[636]      0.25      0.02      0.25      0.21      0.29 130336.49      1.00
   ability[637]      0.25      0.02      0.25      0.21      0.29 144860.64      1.00
   ability[638]      0.15      0.04      0.14      0.09      0.20  79535.31      1.00
   ability[639]      0.14      0.03      0.14      0.09      0.19 122695.10      1.00
   ability[640]      0.12      0.03      0.12      0.08      0.16  94929.00      1.00
   ability[641]      0.22      0.02      0.22      0.18      0.25 131919.25      1.00
   ability[642]      0.13      0.03      0.13      0.08      0.18 130775.50      1.00
   ability[643]      0.26      0.03      0.26      0.22      0.30 129482.73      1.00
   ability[644]      0.14      0.04      0.14      0.08      0.19 110624.17      1.00
   ability[645]      0.12      0.03      0.12      0.07      0.17  91274.83      1.00
   ability[646]      0.23      0.02      0.23      0.20      0.26 142418.20      1.00
   ability[647]      0.26      0.03      0.25      0.21      0.30 139136.95      1.00
   ability[648]      0.24      0.03      0.24      0.20      0.28 125170.26      1.00
   ability[649]      0.26      0.03      0.26      0.22      0.30 135714.61      1.00
   ability[650]      0.26      0.03      0.26      0.22      0.31 129148.27      1.00
   ability[651]      0.29      0.02      0.29      0.26      0.32 131991.37      1.00
   ability[652]      0.13      0.03      0.13      0.07      0.18 130370.83      1.00
   ability[653]      0.13      0.03      0.13      0.07      0.18 132922.45      1.00
   ability[654]      0.12      0.03      0.12      0.07      0.18 121870.57      1.00
   ability[655]      0.26      0.02      0.25      0.22      0.29 147249.08      1.00
   ability[656]      0.13      0.03      0.13      0.07      0.18 125615.73      1.00
   ability[657]      0.29      0.02      0.29      0.27      0.32 140036.93      1.00
   ability[658]      0.13      0.03      0.13      0.07      0.19 131589.90      1.00
   ability[659]      0.28      0.02      0.28      0.25      0.30 141692.91      1.00
   ability[660]      0.25      0.02      0.25      0.21      0.28 108448.98      1.00
   ability[661]      0.12      0.03      0.12      0.07      0.17 105810.14      1.00
   ability[662]      0.24      0.02      0.24      0.21      0.28 140042.89      1.00
   ability[663]      0.27      0.02      0.27      0.24      0.30 143745.99      1.00
   ability[664]      0.13      0.03      0.13      0.07      0.18 120652.10      1.00
   ability[665]      0.23      0.02      0.23      0.20      0.27 119019.20      1.00
   ability[666]      0.25      0.02      0.25      0.21      0.28 147436.81      1.00
   ability[667]      0.27      0.03      0.27      0.23      0.31 138500.45      1.00
   ability[668]      0.24      0.03      0.24      0.20      0.29 143600.20      1.00
   ability[669]      0.13      0.03      0.12      0.07      0.18 131156.10      1.00
   ability[670]      0.25      0.02      0.25      0.21      0.28 131948.59      1.00
   ability[671]      0.12      0.03      0.12      0.07      0.18 102612.95      1.00
   ability[672]      0.28      0.02      0.28      0.25      0.30 135407.15      1.00
   ability[673]      0.25      0.02      0.25      0.21      0.29 112147.72      1.00
   ability[674]      0.25      0.03      0.25      0.20      0.30 131359.40      1.00
   ability[675]      0.13      0.03      0.13      0.08      0.19 133472.24      1.00
   ability[676]      0.24      0.02      0.24      0.20      0.27 149364.00      1.00
   ability[677]      0.22      0.02      0.22      0.19      0.24 117020.47      1.00
   ability[678]      0.25      0.03      0.25      0.20      0.30 131442.00      1.00
   ability[679]      0.26      0.01      0.26      0.23      0.28 140144.52      1.00
   ability[680]      0.23      0.02      0.23      0.20      0.26 124377.85      1.00
   ability[681]      0.13      0.03      0.13      0.07      0.18 133366.91      1.00
   ability[682]      0.24      0.02      0.24      0.22      0.27 142078.70      1.00
   ability[683]      0.13      0.03      0.12      0.07      0.18 125675.86      1.00
   ability[684]      0.26      0.03      0.26      0.21      0.31 138742.09      1.00
   ability[685]      0.25      0.03      0.25      0.21      0.30 133882.40      1.00
   ability[686]      0.13      0.03      0.13      0.07      0.18 123212.90      1.00
   ability[687]      0.28      0.02      0.28      0.24      0.31 134774.00      1.00
   ability[688]      0.22      0.02      0.22      0.19      0.25 104529.82      1.00
   ability[689]      0.13      0.03      0.13      0.07      0.18 133979.61      1.00
   ability[690]      0.14      0.04      0.13      0.08      0.19 132437.71      1.00
   ability[691]      0.25      0.03      0.25      0.20      0.29 125367.71      1.00
   ability[692]      0.27      0.02      0.27      0.25      0.30 135636.73      1.00
   ability[693]      0.26      0.03      0.26      0.21      0.31 128439.06      1.00
   ability[694]      0.29      0.02      0.29      0.26      0.32 132978.94      1.00
   ability[695]      0.27      0.02      0.27      0.24      0.30 142706.84      1.00
   ability[696]      0.24      0.02      0.24      0.20      0.28 130992.08      1.00
   ability[697]      0.24      0.03      0.24      0.18      0.29 134690.58      1.00
   ability[698]      0.24      0.02      0.24      0.21      0.27 140753.75      1.00
   ability[699]      0.28      0.02      0.28      0.24      0.31 137643.19      1.00
   ability[700]      0.26      0.02      0.26      0.23      0.29 149177.46      1.00
   ability[701]      0.26      0.03      0.26      0.21      0.30 138773.53      1.00
   ability[702]      0.15      0.03      0.15      0.10      0.20  58317.27      1.00
   ability[703]      0.13      0.03      0.13      0.07      0.18 125788.25      1.00
   ability[704]      0.31      0.02      0.31      0.28      0.34 113025.03      1.00
   ability[705]      0.29      0.02      0.29      0.26      0.32 132907.49      1.00
   ability[706]      0.24      0.02      0.24      0.21      0.27 150570.32      1.00
   ability[707]      0.12      0.03      0.12      0.07      0.18 121679.47      1.00
   ability[708]      0.26      0.03      0.26      0.21      0.31 123798.23      1.00
   ability[709]      0.25      0.03      0.25      0.20      0.29 132034.63      1.00
   ability[710]      0.28      0.02      0.28      0.25      0.30 146653.81      1.00
   ability[711]      0.24      0.02      0.24      0.20      0.28 133858.25      1.00
   ability[712]      0.26      0.02      0.26      0.22      0.29 143793.35      1.00
   ability[713]      0.13      0.03      0.12      0.07      0.18 122474.28      1.00
   ability[714]      0.25      0.02      0.25      0.21      0.28 140549.36      1.00
   ability[715]      0.24      0.02      0.24      0.20      0.28 140451.17      1.00
   ability[716]      0.24      0.03      0.24      0.18      0.29 130537.92      1.00
   ability[717]      0.21      0.02      0.21      0.18      0.25  95635.58      1.00
   ability[718]      0.14      0.03      0.13      0.08      0.19 130193.95      1.00
   ability[719]      0.26      0.02      0.26      0.24      0.29 143491.71      1.00
   ability[720]      0.29      0.02      0.29      0.26      0.32 141601.01      1.00
   ability[721]      0.13      0.03      0.13      0.07      0.18 127591.76      1.00
   ability[722]      0.13      0.03      0.12      0.07      0.18 127090.51      1.00
   ability[723]      0.26      0.02      0.26      0.23      0.28 138793.89      1.00
   ability[724]      0.13      0.03      0.13      0.07      0.18 130623.94      1.00
   ability[725]      0.25      0.03      0.25      0.20      0.29 150000.76      1.00
   ability[726]      0.23      0.02      0.23      0.20      0.27 127919.03      1.00
   ability[727]      0.23      0.02      0.23      0.21      0.26 126373.39      1.00
   ability[728]      0.22      0.03      0.22      0.17      0.26 115996.37      1.00
   ability[729]      0.25      0.01      0.25      0.23      0.27 138441.12      1.00
   ability[730]      0.13      0.03      0.13      0.07      0.18 129999.30      1.00
   ability[731]      0.27      0.03      0.27      0.22      0.31 142928.34      1.00
   ability[732]      0.25      0.03      0.25      0.20      0.30 128056.95      1.00
   ability[733]      0.13      0.03      0.12      0.07      0.18 126124.10      1.00
   ability[734]      0.28      0.02      0.28      0.25      0.30 129609.92      1.00
   ability[735]      0.28      0.02      0.28      0.25      0.30 139491.71      1.00
   ability[736]      0.23      0.02      0.23      0.21      0.26 139803.10      1.00
   ability[737]      0.13      0.03      0.12      0.07      0.18 125670.50      1.00
   ability[738]      0.24      0.02      0.24      0.21      0.28 137377.02      1.00
   ability[739]      0.11      0.02      0.11      0.07      0.15  58663.36      1.00
   ability[740]      0.13      0.03      0.13      0.07      0.18 127479.76      1.00
   ability[741]      0.29      0.01      0.29      0.26      0.31 124740.45      1.00
   ability[742]      0.25      0.02      0.25      0.22      0.28 141205.71      1.00
   ability[743]      0.27      0.02      0.27      0.24      0.30 149013.67      1.00
   ability[744]      0.24      0.02      0.24      0.20      0.28 119151.11      1.00
   ability[745]      0.24      0.02      0.24      0.21      0.27 146676.06      1.00
   ability[746]      0.26      0.02      0.26      0.22      0.29 146228.88      1.00
   ability[747]      0.24      0.02      0.24      0.20      0.28 135814.50      1.00
   ability[748]      0.27      0.02      0.27      0.24      0.30 151696.92      1.00
   ability[749]      0.14      0.04      0.14      0.08      0.20 114066.73      1.00
   ability[750]      0.24      0.03      0.24      0.19      0.29 140498.71      1.00
   ability[751]      0.13      0.03      0.12      0.07      0.18 130149.07      1.00
   ability[752]      0.23      0.02      0.23      0.20      0.26 118928.96      1.00
   ability[753]      0.11      0.02      0.10      0.06      0.15  32618.93      1.00
   ability[754]      0.12      0.03      0.12      0.07      0.18 110604.63      1.00
   ability[755]      0.14      0.04      0.13      0.08      0.19 130866.57      1.00
   ability[756]      0.14      0.03      0.14      0.09      0.19 109334.15      1.00
   ability[757]      0.25      0.02      0.25      0.22      0.28 146718.37      1.00
   ability[758]      0.25      0.01      0.25      0.23      0.27 142486.97      1.00
   ability[759]      0.13      0.03      0.13      0.08      0.19 131822.92      1.00
   ability[760]      0.26      0.03      0.26      0.21      0.31 125732.21      1.00
   ability[761]      0.24      0.02      0.24      0.20      0.28 136049.19      1.00
   ability[762]      0.26      0.02      0.26      0.23      0.29 141207.00      1.00
   ability[763]      0.14      0.04      0.13      0.08      0.19 123243.40      1.00
   ability[764]      0.26      0.02      0.26      0.24      0.29 151109.73      1.00
   ability[765]      0.25      0.02      0.25      0.21      0.29 142506.23      1.00
   ability[766]      0.13      0.03      0.13      0.07      0.18 128572.27      1.00
   ability[767]      0.13      0.03      0.13      0.07      0.18 117401.73      1.00
   ability[768]      0.23      0.03      0.23      0.18      0.27 106447.60      1.00
   ability[769]      0.26      0.03      0.26      0.22      0.31 136314.67      1.00
   ability[770]      0.29      0.02      0.29      0.26      0.32 134951.99      1.00
   ability[771]      0.30      0.02      0.30      0.26      0.33 114074.60      1.00
   ability[772]      0.13      0.03      0.13      0.08      0.19 134329.18      1.00
   ability[773]      0.13      0.03      0.13      0.07      0.18 123860.69      1.00
   ability[774]      0.26      0.02      0.26      0.23      0.30 141832.98      1.00
   ability[775]      0.21      0.02      0.21      0.19      0.24 107208.97      1.00
   ability[776]      0.12      0.03      0.12      0.07      0.18 111844.54      1.00
   ability[777]      0.13      0.03      0.13      0.07      0.18 129712.40      1.00
   ability[778]      0.13      0.03      0.13      0.07      0.18 129102.60      1.00
   ability[779]      0.23      0.02      0.23      0.20      0.26 149407.38      1.00
   ability[780]      0.12      0.03      0.12      0.08      0.16  98305.43      1.00
   ability[781]      0.13      0.03      0.13      0.07      0.18 127173.98      1.00
   ability[782]      0.12      0.03      0.12      0.07      0.17 119169.16      1.00
   ability[783]      0.23      0.02      0.23      0.20      0.26 130465.54      1.00
   ability[784]      0.26      0.02      0.26      0.22      0.30 150115.69      1.00
   ability[785]      0.12      0.03      0.12      0.07      0.18 111328.81      1.00
   ability[786]      0.27      0.02      0.27      0.24      0.30 147752.50      1.00
   ability[787]      0.24      0.03      0.24      0.20      0.29 128705.94      1.00
   ability[788]      0.25      0.02      0.25      0.22      0.28 149435.63      1.00
   ability[789]      0.13      0.03      0.12      0.07      0.18 116019.00      1.00
   ability[790]      0.12      0.03      0.12      0.07      0.17  77217.22      1.00
   ability[791]      0.23      0.02      0.23      0.20      0.26 125597.33      1.00
   ability[792]      0.23      0.03      0.23      0.18      0.29 136042.51      1.00
   ability[793]      0.26      0.02      0.26      0.23      0.30 140043.49      1.00
   ability[794]      0.12      0.03      0.12      0.07      0.17  81750.88      1.00
   ability[795]      0.25      0.02      0.25      0.22      0.28 134952.99      1.00
   ability[796]      0.13      0.03      0.13      0.07      0.18 123134.86      1.00
   ability[797]      0.13      0.03      0.13      0.07      0.18 132096.43      1.00
   ability[798]      0.23      0.02      0.23      0.20      0.26 119855.80      1.00
   ability[799]      0.26      0.03      0.26      0.22      0.31 129413.99      1.00
   ability[800]      0.13      0.03      0.13      0.07      0.18 127406.40      1.00
   ability[801]      0.26      0.02      0.26      0.23      0.29 140542.59      1.00
   ability[802]      0.23      0.03      0.23      0.18      0.29 133037.99      1.00
   ability[803]      0.23      0.03      0.23      0.19      0.28 147436.87      1.00
   ability[804]      0.26      0.02      0.26      0.23      0.30 144930.21      1.00
   ability[805]      0.14      0.03      0.13      0.08      0.19 128417.64      1.00
   ability[806]      0.24      0.02      0.24      0.21      0.27 139882.52      1.00
   ability[807]      0.29      0.02      0.29      0.26      0.32 123214.49      1.00
   ability[808]      0.26      0.02      0.26      0.23      0.28 152001.16      1.00
   ability[809]      0.25      0.02      0.25      0.22      0.29 143504.27      1.00
   ability[810]      0.24      0.03      0.24      0.20      0.29 132162.41      1.00
   ability[811]      0.11      0.03      0.11      0.06      0.16  51570.34      1.00
   ability[812]      0.13      0.03      0.13      0.08      0.19 137258.55      1.00
   ability[813]      0.24      0.02      0.24      0.20      0.27 145381.99      1.00
   ability[814]      0.25      0.02      0.25      0.22      0.28 126061.03      1.00
   ability[815]      0.27      0.02      0.27      0.23      0.30 136940.31      1.00
   ability[816]      0.12      0.03      0.12      0.07      0.18 120907.50      1.00
   ability[817]      0.12      0.03      0.12      0.07      0.17  96377.02      1.00
   ability[818]      0.24      0.02      0.24      0.21      0.27 146758.37      1.00
   ability[819]      0.23      0.02      0.23      0.20      0.26 133686.93      1.00
   ability[820]      0.13      0.03      0.13      0.07      0.18 128812.89      1.00
   ability[821]      0.26      0.02      0.26      0.23      0.29 131768.57      1.00
   ability[822]      0.26      0.03      0.26      0.22      0.30 146473.75      1.00
   ability[823]      0.20      0.02      0.20      0.17      0.24 115240.02      1.00
   ability[824]      0.22      0.02      0.22      0.18      0.26 102471.20      1.00
   ability[825]      0.27      0.02      0.27      0.24      0.31 133997.70      1.00
   ability[826]      0.25      0.03      0.25      0.20      0.30 142261.62      1.00
   ability[827]      0.23      0.03      0.23      0.18      0.29 136420.13      1.00
   ability[828]      0.26      0.02      0.26      0.23      0.28 148892.18      1.00
   ability[829]      0.21      0.02      0.21      0.18      0.24 127815.44      1.00
   ability[830]      0.28      0.02      0.28      0.25      0.30 144664.91      1.00
   ability[831]      0.25      0.03      0.25      0.20      0.30 129515.38      1.00
   ability[832]      0.12      0.03      0.12      0.07      0.17  97284.24      1.00
   ability[833]      0.28      0.02      0.28      0.25      0.30 140418.43      1.00
   ability[834]      0.13      0.03      0.13      0.07      0.18 130346.21      1.00
   ability[835]      0.24      0.02      0.24      0.20      0.28 152536.64      1.00
   ability[836]      0.23      0.02      0.23      0.20      0.27 119189.63      1.00
   ability[837]      0.13      0.03      0.13      0.07      0.18 125703.77      1.00
   ability[838]      0.18      0.03      0.18      0.12      0.23  17839.97      1.00
   ability[839]      0.23      0.02      0.23      0.20      0.25 120349.37      1.00
   ability[840]      0.16      0.03      0.15      0.10      0.21  37183.52      1.00
   ability[841]      0.13      0.03      0.13      0.07      0.18 126055.56      1.00
   ability[842]      0.25      0.02      0.25      0.21      0.29 150670.52      1.00
   ability[843]      0.27      0.01      0.27      0.25      0.30 150130.85      1.00
   ability[844]      0.24      0.02      0.24      0.21      0.27 153233.84      1.00
   ability[845]      0.13      0.03      0.13      0.07      0.18 124061.13      1.00
   ability[846]      0.26      0.02      0.26      0.23      0.29 132535.36      1.00
   ability[847]      0.27      0.01      0.27      0.24      0.29 144343.61      1.00
   ability[848]      0.25      0.02      0.25      0.23      0.28 135055.90      1.00
   ability[849]      0.25      0.02      0.25      0.22      0.29 120002.69      1.00
   ability[850]      0.22      0.03      0.22      0.17      0.27 121471.31      1.00
   ability[851]      0.13      0.03      0.13      0.07      0.19 127305.12      1.00
   ability[852]      0.25      0.02      0.25      0.22      0.28 151254.43      1.00
   ability[853]      0.28      0.02      0.28      0.25      0.30 132852.78      1.00
   ability[854]      0.24      0.03      0.24      0.19      0.29 131270.38      1.00
   ability[855]      0.24      0.02      0.24      0.21      0.27 140099.83      1.00
   ability[856]      0.26      0.02      0.26      0.23      0.29 149755.12      1.00
   ability[857]      0.24      0.02      0.24      0.20      0.27 149305.67      1.00
   ability[858]      0.25      0.02      0.25      0.22      0.29 119587.87      1.00
   ability[859]      0.25      0.02      0.25      0.22      0.29 152030.59      1.00
   ability[860]      0.13      0.03      0.13      0.08      0.19 133660.00      1.00
   ability[861]      0.24      0.03      0.24      0.19      0.28 119024.79      1.00
   ability[862]      0.14      0.04      0.14      0.09      0.20  90908.84      1.00
   ability[863]      0.23      0.02      0.23      0.20      0.27 145321.28      1.00
   ability[864]      0.24      0.02      0.24      0.21      0.27 133702.77      1.00
   ability[865]      0.14      0.03      0.14      0.08      0.19 126654.43      1.00
   ability[866]      0.26      0.02      0.26      0.22      0.30 143088.78      1.00
   ability[867]      0.22      0.03      0.21      0.17      0.26 118382.35      1.00
   ability[868]      0.25      0.03      0.25      0.20      0.29 138566.79      1.00
   ability[869]      0.31      0.02      0.31      0.28      0.33 122760.41      1.00
   ability[870]      0.26      0.02      0.26      0.24      0.29 153618.04      1.00
   ability[871]      0.27      0.02      0.27      0.23      0.30 138884.90      1.00
   ability[872]      0.11      0.03      0.11      0.06      0.16  52243.01      1.00
   ability[873]      0.26      0.02      0.26      0.22      0.29 150207.03      1.00
   ability[874]      0.23      0.02      0.23      0.20      0.26 129931.78      1.00
   ability[875]      0.25      0.02      0.25      0.22      0.28 139895.19      1.00
   ability[876]      0.27      0.01      0.27      0.25      0.30 138176.09      1.00
   ability[877]      0.23      0.02      0.23      0.19      0.27 107415.05      1.00
   ability[878]      0.25      0.02      0.25      0.22      0.28 149315.38      1.00
   ability[879]      0.24      0.02      0.24      0.20      0.27 121308.22      1.00
   ability[880]      0.25      0.02      0.25      0.21      0.28 143504.11      1.00
   ability[881]      0.23      0.02      0.23      0.19      0.26 114454.21      1.00
   ability[882]      0.23      0.02      0.23      0.19      0.27 112941.55      1.00
   ability[883]      0.25      0.02      0.25      0.21      0.28 107730.37      1.00
   ability[884]      0.14      0.04      0.14      0.09      0.20  82568.78      1.00
   ability[885]      0.25      0.03      0.25      0.21      0.30 133129.59      1.00
   ability[886]      0.26      0.02      0.26      0.24      0.29 148398.28      1.00
   ability[887]      0.12      0.03      0.12      0.07      0.18 120685.82      1.00
   ability[888]      0.25      0.02      0.25      0.23      0.28 150773.92      1.00
   ability[889]      0.26      0.02      0.26      0.23      0.28 152535.88      1.00
   ability[890]      0.14      0.04      0.14      0.08      0.20 120343.84      1.00
   ability[891]      0.13      0.03      0.13      0.07      0.18 127370.88      1.00
   ability[892]      0.21      0.03      0.21      0.17      0.26  83810.04      1.00
   ability[893]      0.24      0.02      0.24      0.21      0.28 135735.22      1.00
   ability[894]      0.12      0.03      0.12      0.07      0.16  80547.14      1.00
   ability[895]      0.21      0.03      0.21      0.16      0.26 102266.33      1.00
   ability[896]      0.11      0.03      0.11      0.07      0.15  42285.89      1.00
   ability[897]      0.14      0.03      0.14      0.09      0.19 113453.10      1.00
   ability[898]      0.31      0.02      0.30      0.27      0.34 112262.68      1.00
   ability[899]      0.13      0.03      0.13      0.08      0.17 143254.82      1.00
   ability[900]      0.27      0.02      0.27      0.24      0.30 143443.46      1.00
   ability[901]      0.25      0.02      0.25      0.22      0.29 156253.11      1.00
   ability[902]      0.13      0.03      0.13      0.08      0.19 123173.70      1.00
   ability[903]      0.13      0.03      0.13      0.07      0.18 132395.73      1.00
   ability[904]      0.14      0.04      0.13      0.08      0.19 119868.00      1.00
   ability[905]      0.13      0.03      0.13      0.07      0.19 126257.04      1.00
   ability[906]      0.23      0.02      0.23      0.20      0.26 133395.19      1.00
   ability[907]      0.24      0.01      0.24      0.21      0.26 140279.16      1.00
   ability[908]      0.12      0.03      0.12      0.07      0.18 111928.01      1.00
   ability[909]      0.24      0.02      0.24      0.21      0.27 144183.21      1.00
   ability[910]      0.12      0.03      0.12      0.07      0.18 122807.32      1.00
   ability[911]      0.14      0.03      0.13      0.08      0.19 127678.32      1.00
   ability[912]      0.24      0.02      0.24      0.21      0.27 135887.23      1.00
   ability[913]      0.12      0.03      0.12      0.07      0.18 128148.90      1.00
   ability[914]      0.28      0.02      0.28      0.25      0.31 123078.79      1.00
   ability[915]      0.13      0.03      0.13      0.08      0.17 137037.93      1.00
   ability[916]      0.25      0.03      0.25      0.21      0.29 138258.16      1.00
   ability[917]      0.14      0.03      0.14      0.09      0.19 111282.16      1.00
   ability[918]      0.23      0.03      0.23      0.18      0.28 132423.89      1.00
   ability[919]      0.14      0.03      0.14      0.08      0.20 113445.25      1.00
   ability[920]      0.25      0.02      0.25      0.22      0.27 154043.87      1.00
   ability[921]      0.24      0.02      0.24      0.21      0.27 143709.86      1.00
   ability[922]      0.14      0.03      0.13      0.08      0.19 127827.83      1.00
   ability[923]      0.26      0.02      0.26      0.23      0.28 155536.22      1.00
   ability[924]      0.23      0.02      0.22      0.19      0.26 138870.01      1.00
   ability[925]      0.12      0.03      0.12      0.07      0.18 105812.53      1.00
   ability[926]      0.23      0.03      0.23      0.19      0.27 114299.35      1.00
   ability[927]      0.26      0.02      0.25      0.22      0.29 145910.85      1.00
   ability[928]      0.14      0.03      0.13      0.09      0.18 132075.34      1.00
   ability[929]      0.13      0.03      0.13      0.07      0.18 129835.35      1.00
   ability[930]      0.15      0.03      0.15      0.10      0.20  70216.75      1.00
   ability[931]      0.12      0.03      0.12      0.07      0.16  73596.81      1.00
   ability[932]      0.24      0.02      0.24      0.20      0.28 127605.15      1.00
   ability[933]      0.29      0.02      0.29      0.27      0.32 140638.50      1.00
   ability[934]      0.13      0.03      0.13      0.07      0.18 129903.80      1.00
   ability[935]      0.13      0.03      0.13      0.07      0.18 124876.53      1.00
   ability[936]      0.24      0.02      0.24      0.21      0.27 140204.34      1.00
   ability[937]      0.24      0.02      0.24      0.21      0.27 138895.15      1.00
   ability[938]      0.26      0.02      0.26      0.24      0.29 139025.22      1.00
   ability[939]      0.28      0.02      0.28      0.25      0.32 129946.28      1.00
   ability[940]      0.24      0.03      0.24      0.20      0.29 126034.34      1.00
   ability[941]      0.27      0.02      0.27      0.24      0.30 154881.21      1.00
   ability[942]      0.14      0.03      0.14      0.09      0.19 107733.72      1.00
   ability[943]      0.14      0.03      0.13      0.08      0.19 128531.13      1.00
   ability[944]      0.28      0.02      0.28      0.25      0.30 145815.53      1.00
   ability[945]      0.15      0.03      0.15      0.10      0.20  55152.19      1.00
   ability[946]      0.11      0.03      0.11      0.07      0.15  46186.20      1.00
   ability[947]      0.27      0.01      0.27      0.24      0.29 150441.70      1.00
          omega      0.23      0.02      0.23      0.19      0.26  43556.86      1.00
   omega_pos[0]      0.25      0.00      0.25      0.24      0.26  60885.94      1.00
   omega_pos[1]      0.25      0.01      0.25      0.24      0.26  56513.95      1.00
   omega_pos[2]      0.26      0.01      0.26      0.25      0.26  55782.19      1.00
   omega_pos[3]      0.24      0.01      0.24      0.23      0.25  51745.81      1.00
   omega_pos[4]      0.26      0.01      0.26      0.25      0.27  60454.74      1.00
   omega_pos[5]      0.25      0.00      0.25      0.24      0.26  46729.11      1.00
   omega_pos[6]      0.12      0.01      0.12      0.11      0.13   6066.97      1.00
   omega_pos[7]      0.26      0.00      0.26      0.25      0.27  57952.43      1.00
   omega_pos[8]      0.25      0.01      0.25      0.24      0.26  54229.68      1.00

Number of divergences: 0
idata = az.from_numpyro(
    mcmc,
    coords=dict(
        position=baseball_df['PriPos'].cat.categories,
        player=baseball_df['Player'],
    ),
    dims=dict(
        omega_pos=['position'],
        kappa_pos=['position'],
        ability=['player'],
    ),
)
az.plot_trace(idata, var_names='~ability')
plt.tight_layout()
def plot_position_ability(idata: az.InferenceData, positions: list[str]):
    nb_pos = len(positions)
    fig, axes = plt.subplots(nrows=nb_pos, ncols=nb_pos, figsize=(6, 6))

    omega = idata['posterior']['omega_pos']

    for r, c in np.ndindex(axes.shape):
        ax = axes[r, c]
        r_pos = positions[r]
        c_pos = positions[c]

        if r == c:
            az.plot_posterior(
                idata, var_names='omega_pos', coords=dict(position=r_pos),
                hdi_prob=.95, point_estimate='mode', ax=ax)
            ax.set_title(f'{r_pos}')
            ax.set_xlabel('$\\omega$')
        elif r < c:
            diff = (omega.sel(position=r_pos).values
                    - omega.sel(position=c_pos).values)
            az.plot_posterior(
                diff, hdi_prob=.95, point_estimate='mode', ref_val=0, ax=ax)
            ax.set_title(f'{r_pos} - {c_pos}')
            ax.set_xlabel('Diff. of $\\omega$')
        else:
            x = omega.sel(position=c_pos).values.flatten()
            y = omega.sel(position=r_pos).values.flatten()

            sns.scatterplot(x=x, y=y, ax=ax)
            ax.set_xlabel(f'{c_pos}')
            ax.set_ylabel(f'{r_pos}')

    fig.tight_layout()


plot_position_ability(idata, ['Pitcher', 'Catcher'])
plot_position_ability(idata, ['Catcher', '1st Base'])
def plot_player_ability(idata: az.InferenceData, players: list[str]):
    nb_players = len(players)
    fig, axes = plt.subplots(
        nrows=nb_players, ncols=nb_players, figsize=(6, 6))

    ability = idata['posterior']['ability']

    for r, c in np.ndindex(axes.shape):
        ax = axes[r, c]
        r_player = players[r]
        c_player = players[c]

        if r == c:
            az.plot_posterior(
                idata, var_names='ability', coords=dict(player=r_player),
                hdi_prob=.95, point_estimate='mode', ax=ax)
            ax.set_title(f'{r_player}')
            ax.set_xlabel('$\\omega$')
        elif r < c:
            diff = (ability.sel(player=r_player).values
                    - ability.sel(player=c_player).values)
            az.plot_posterior(
                diff, hdi_prob=.95, point_estimate='mode', ref_val=0, ax=ax)
            ax.set_title(f'{r_player} - {c_player}')
            ax.set_xlabel('Diff. of $\\omega$')
        else:
            x = ability.sel(player=c_player).values.flatten()
            y = ability.sel(player=r_player).values.flatten()

            sns.scatterplot(x=x, y=y, ax=ax)
            ax.set_xlabel(f'{c_player}')
            ax.set_ylabel(f'{r_player}')

    fig.tight_layout()


plot_player_ability(idata, ['Kyle Blanks', 'Bruce Chen'])
plot_player_ability(idata, ['ShinSoo Choo', 'Ichiro Suzuki'])
plot_player_ability(idata, ['Mike Leake', 'Wandy Rodriguez'])
plot_player_ability(idata, ['Andrew McCutchen', 'Brett Jackson'])
az.plot_posterior(idata, 'omega', hdi_prob=.95, point_estimate='mode')
<Axes: title={'center': 'omega'}>
fig, axes = plt.subplots(nrows=3, ncols=3, figsize=(9, 9))

for ax, position in zip(axes.flatten(), baseball_df['PriPos'].cat.categories):
    az.plot_posterior(
        idata,
        var_names='omega_pos',
        coords=dict(position=position),
        hdi_prob=.95,
        point_estimate='mode',
        ax=ax)
    ax.set_title(position)

fig.tight_layout()