Continuous and analytical diffusion signal modelling with MAP-MRI

We show how to model the diffusion signal as a linear combination of continuous functions from the MAP-MRI basis [Ozarslan2013]. This continuous representation allows for the computation of many properties of both the signal and diffusion propagator.

We show how to estimate the analytical orientation distribution function (ODF) and a variety of scalar indices. These include rotationally invariant quantities such as the mean squared displacement (MSD), Q-space inverse variance (QIV), teturn-to-origin probability (RTOP) and non-Gaussianity (NG). Interestingly, the MAP-MRI basis also allows for the computation of directional indices, such as the return-to-axis probability (RTAP), the return-to-plane probability (RTPP), and the parallel and perpendicular non-Gaussianity.

The estimation of these properties from noisy and sparse DWIs requires that the fitting of the MAP-MRI basis is constrained and/or regularized. This can be done by constraining the diffusion propagator to positive values [Ozarslan2013] [DelaHaije2020], and through analytic Laplacian regularization (MAPL) [Fick2016a].

First import the necessary modules:

from dipy.reconst import mapmri
from dipy.viz import window, actor
from dipy.data import get_fnames, get_sphere
from dipy.core.gradients import gradient_table
from dipy.io.image import load_nifti
from dipy.io.gradients import read_bvals_bvecs
from dipy.viz.plotting import compare_maps

Download and read the data for this tutorial.

MAP-MRI requires multi-shell data, to properly fit the radial part of the basis. The total size of the downloaded data is 187.66 MBytes, however you only need to fetch it once.

fraw, fbval, fbvec, t1_fname = get_fnames('cfin_multib')

data contains the voxel data and gtab contains a GradientTable object (gradient information e.g. b-values). For example, to show the b-values it is possible to write:

print(gtab.bvals)

For the values of the q-space indices to make sense it is necessary to explicitly state the big_delta and small_delta parameters in the gradient table.

data, affine = load_nifti(fraw)
bvals, bvecs = read_bvals_bvecs(fbval, fbvec)
gtab = gradient_table(bvals, bvecs)

big_delta = 0.0365  # seconds
small_delta = 0.0157  # seconds
gtab = gradient_table(bvals=gtab.bvals, bvecs=gtab.bvecs,
                      big_delta=big_delta,
                      small_delta=small_delta)

data_small = data[40:65, 50:51]

print('data.shape (%d, %d, %d, %d)' % data.shape)
data.shape (96, 96, 19, 496)

The MAP-MRI Model can now be instantiated. The radial_order determines the expansion order of the basis, i.e., how many basis functions are used to approximate the signal.

First, we must decide to use the anisotropic or isotropic MAP-MRI basis. As was shown in [Fick2016a], the isotropic basis is best used for tractography purposes, as the anisotropic basis has a bias towards smaller crossing angles in the ODF. For signal fitting and estimation of scalar quantities the anisotropic basis is suggested. The choice can be made by setting anisotropic_scaling=True or anisotropic_scaling=False.

First, we must select the method of regularization and/or constraining the basis fitting.

  • laplacian_regularization=True makes it use Laplacian regularization [Fick2016a]. This method essentially reduces spurious oscillations in the reconstruction by minimizing the Laplacian of the fitted signal. Several options can be given to select the regularization weight:

    • regularization_weighting=GCV uses generalized cross-validation [Craven1978] to find an optimal weight.

    • regularization_weighting=0.2 for example would omit the GCV and just set it to 0.2 (found to be reasonable in HCP data [Fick2016a]).

    • regularization_weighting=np.array(weights) would make the GCV use a custom range to find an optimal weight.

  • positivity_constraint=True makes it use a positivity constraint on the diffusion propagator. This method constrains the final solution of the diffusion propagator to be positive either globally [DelaHaije2020] or at a set of discrete points [Ozarslan2013], since negative values should not exist.

    • Setting global_constraints=True enforces positivity everywhere. With the setting global_constraints=False positivity is enforced on a grid determined by pos_grid and pos_radius.

Both methods do a good job of producing viable solutions to the signal fitting in practice. The difference is that the Laplacian regularization imposes smoothness over the entire signal, including the extrapolation beyond the measured signal. In practice this may result in, but does not guarantee, positive solutions of the diffusion propagator. The positivity constraint guarantees a positive solution which in general results in smooth solutions, but does not guarantee it.

A suggested strategy is to use a low Laplacian weight together with a positivity constraint. In this way both desired properties are guaranteed in final solution. Higher Laplacian weights are recommended when the data is very noisy.

We use the package CVXPY (https://www.cvxpy.org/) to solve convex optimization problems when positivity_constraint=True, so we need to first install CVXPY. When using global_constraints=True to ensure global positivity, it is recommended to use the MOSEK solver (https://www.mosek.com/) together with CVXPY by setting cvxpy_solver='MOSEK'. Different solvers can differ greatly in terms of runtime and solution accuracy, and in some cases solvers may show warnings about convergence or recommended option settings.

For now we will generate the anisotropic models for different combinations.

radial_order = 6

map_model_laplacian_aniso = mapmri.MapmriModel(gtab, radial_order=radial_order,
                                               laplacian_regularization=True,
                                               laplacian_weighting=.2)

map_model_positivity_aniso = mapmri.MapmriModel(gtab,
                                                radial_order=radial_order,
                                                laplacian_regularization=False,
                                                positivity_constraint=True)

map_model_both_aniso = mapmri.MapmriModel(gtab, radial_order=radial_order,
                                          laplacian_regularization=True,
                                          laplacian_weighting=.05,
                                          positivity_constraint=True)

map_model_plus_aniso = mapmri.MapmriModel(gtab,
                                          radial_order=radial_order,
                                          laplacian_regularization=False,
                                          positivity_constraint=True,
                                          global_constraints=True)

Note that when we use only Laplacian regularization, the GCV option may select very low regularization weights in very anisotropic white matter such as the corpus callosum, resulting in corrupted scalar indices. In this example we therefore choose a preset value of 0.2, which was shown to be quite robust and also faster in practice [Fick2016a].

We can then fit the MAP-MRI model to the data:

mapfit_laplacian_aniso = map_model_laplacian_aniso.fit(data_small)
mapfit_positivity_aniso = map_model_positivity_aniso.fit(data_small)
mapfit_both_aniso = map_model_both_aniso.fit(data_small)
mapfit_plus_aniso = map_model_plus_aniso.fit(data_small)

fits = [mapfit_laplacian_aniso, mapfit_positivity_aniso, mapfit_both_aniso,
        mapfit_plus_aniso]
fit_labels = ['MAPL', 'CMAP', 'CMAPL', 'MAP+']
  0%|          | 0/475 [00:00<?, ?it/s]
  1%|1         | 7/475 [00:00<00:10, 44.39it/s]
  4%|3         | 18/475 [00:00<00:06, 72.41it/s]
  6%|6         | 29/475 [00:00<00:05, 87.20it/s]
  8%|8         | 40/475 [00:00<00:04, 94.99it/s]
 11%|#         | 51/475 [00:00<00:04, 98.03it/s]
 13%|#3        | 63/475 [00:00<00:04, 102.69it/s]
 16%|#5        | 75/475 [00:00<00:03, 105.52it/s]
 18%|#8        | 86/475 [00:00<00:03, 106.76it/s]
 20%|##        | 97/475 [00:00<00:03, 107.35it/s]
 23%|##2       | 109/475 [00:01<00:03, 108.65it/s]
 25%|##5       | 120/475 [00:01<00:03, 103.09it/s]
 28%|##7       | 131/475 [00:01<00:03, 104.51it/s]
 30%|##9       | 142/475 [00:01<00:03, 104.30it/s]
 32%|###2      | 153/475 [00:01<00:03, 103.52it/s]
 35%|###4      | 164/475 [00:01<00:02, 104.38it/s]
 37%|###6      | 175/475 [00:01<00:02, 104.15it/s]
 39%|###9      | 187/475 [00:01<00:02, 106.80it/s]
 42%|####1     | 198/475 [00:01<00:02, 104.73it/s]
 44%|####4     | 210/475 [00:02<00:02, 107.59it/s]
 47%|####6     | 221/475 [00:02<00:02, 105.99it/s]
 49%|####9     | 233/475 [00:02<00:02, 107.80it/s]
 51%|#####1    | 244/475 [00:02<00:02, 108.33it/s]
 54%|#####3    | 255/475 [00:02<00:02, 108.78it/s]
 56%|#####6    | 266/475 [00:02<00:01, 108.69it/s]
 59%|#####8    | 278/475 [00:02<00:01, 110.30it/s]
 61%|######1   | 290/475 [00:02<00:01, 109.72it/s]
 63%|######3   | 301/475 [00:02<00:01, 108.93it/s]
 66%|######5   | 313/475 [00:03<00:01, 110.15it/s]
 68%|######8   | 325/475 [00:03<00:01, 111.46it/s]
 71%|#######   | 337/475 [00:03<00:01, 110.30it/s]
 73%|#######3  | 349/475 [00:03<00:01, 111.20it/s]
 76%|#######6  | 361/475 [00:03<00:01, 110.27it/s]
 79%|#######8  | 373/475 [00:03<00:00, 110.34it/s]
 81%|########1 | 385/475 [00:03<00:00, 110.92it/s]
 84%|########3 | 397/475 [00:03<00:00, 112.24it/s]
 86%|########6 | 410/475 [00:03<00:00, 114.77it/s]
 89%|########8 | 422/475 [00:03<00:00, 113.60it/s]
 91%|#########1| 434/475 [00:04<00:00, 110.27it/s]
 94%|#########3| 446/475 [00:04<00:00, 112.77it/s]
 96%|#########6| 458/475 [00:04<00:00, 112.09it/s]
 99%|#########8| 470/475 [00:04<00:00, 111.26it/s]
100%|##########| 475/475 [00:04<00:00, 106.65it/s]

  0%|          | 0/475 [00:00<?, ?it/s]
  0%|          | 1/475 [00:00<03:04,  2.57it/s]
  0%|          | 2/475 [00:00<01:49,  4.34it/s]
  1%|          | 3/475 [00:00<01:49,  4.30it/s]
  1%|          | 4/475 [00:01<02:11,  3.58it/s]
  1%|1         | 5/475 [00:01<02:02,  3.83it/s]
  1%|1         | 6/475 [00:01<02:46,  2.82it/s]
  1%|1         | 7/475 [00:02<02:22,  3.29it/s]
  2%|1         | 8/475 [00:02<02:57,  2.63it/s]
  2%|1         | 9/475 [00:03<03:05,  2.51it/s]
  2%|2         | 10/475 [00:03<03:19,  2.33it/s]
  2%|2         | 11/475 [00:03<03:10,  2.44it/s]
  3%|2         | 12/475 [00:04<02:58,  2.60it/s]
  3%|2         | 13/475 [00:04<02:52,  2.67it/s]
  3%|2         | 14/475 [00:04<02:50,  2.70it/s]
  3%|3         | 15/475 [00:05<02:56,  2.60it/s]
  3%|3         | 16/475 [00:05<02:50,  2.70it/s]
  4%|3         | 17/475 [00:06<02:45,  2.77it/s]
  4%|3         | 18/475 [00:06<03:06,  2.45it/s]
  4%|4         | 19/475 [00:07<03:31,  2.15it/s]
  4%|4         | 20/475 [00:07<02:47,  2.72it/s]
  4%|4         | 21/475 [00:07<02:33,  2.96it/s]
  5%|4         | 22/475 [00:07<02:13,  3.38it/s]
  5%|4         | 23/475 [00:08<03:14,  2.32it/s]
  5%|5         | 24/475 [00:08<02:52,  2.62it/s]
  5%|5         | 25/475 [00:09<03:31,  2.13it/s]
  5%|5         | 26/475 [00:09<03:23,  2.20it/s]
  6%|5         | 27/475 [00:10<03:12,  2.33it/s]
  6%|5         | 28/475 [00:10<03:35,  2.08it/s]
  6%|6         | 29/475 [00:11<03:25,  2.17it/s]
  6%|6         | 30/475 [00:11<03:23,  2.19it/s]
  7%|6         | 31/475 [00:12<03:08,  2.35it/s]
  7%|6         | 32/475 [00:12<03:23,  2.18it/s]
  7%|6         | 33/475 [00:13<03:25,  2.15it/s]
  7%|7         | 34/475 [00:13<03:01,  2.43it/s]
  7%|7         | 35/475 [00:13<02:58,  2.47it/s]
  8%|7         | 36/475 [00:14<02:44,  2.68it/s]
  8%|7         | 37/475 [00:14<03:03,  2.38it/s]
  8%|8         | 38/475 [00:14<02:57,  2.47it/s]
  8%|8         | 39/475 [00:15<03:02,  2.39it/s]
  8%|8         | 40/475 [00:15<02:38,  2.74it/s]
  9%|8         | 41/475 [00:15<02:15,  3.21it/s]
  9%|8         | 42/475 [00:16<02:19,  3.09it/s]
  9%|9         | 43/475 [00:16<02:05,  3.46it/s]
  9%|9         | 44/475 [00:16<02:15,  3.17it/s]
  9%|9         | 45/475 [00:17<02:25,  2.96it/s]
 10%|9         | 46/475 [00:17<02:31,  2.83it/s]
 10%|9         | 47/475 [00:18<03:05,  2.31it/s]
 10%|#         | 48/475 [00:18<02:58,  2.39it/s]
 10%|#         | 49/475 [00:19<03:08,  2.26it/s]
 11%|#         | 50/475 [00:19<03:12,  2.20it/s]
 11%|#         | 51/475 [00:19<03:00,  2.35it/s]
 11%|#         | 52/475 [00:20<02:58,  2.37it/s]
 11%|#1        | 53/475 [00:20<02:46,  2.53it/s]
 11%|#1        | 54/475 [00:21<02:56,  2.39it/s]
 12%|#1        | 55/475 [00:21<02:24,  2.90it/s]
 12%|#1        | 56/475 [00:21<02:52,  2.42it/s]
 12%|#2        | 57/475 [00:22<02:49,  2.46it/s]
 12%|#2        | 58/475 [00:23<03:37,  1.92it/s]
 13%|#2        | 60/475 [00:23<02:36,  2.65it/s]
 13%|#2        | 61/475 [00:23<02:47,  2.48it/s]
 13%|#3        | 62/475 [00:24<02:57,  2.33it/s]
 13%|#3        | 63/475 [00:24<02:39,  2.59it/s]
 13%|#3        | 64/475 [00:25<02:36,  2.63it/s]
 14%|#3        | 65/475 [00:25<02:51,  2.40it/s]
 14%|#3        | 66/475 [00:25<02:43,  2.50it/s]
 14%|#4        | 67/475 [00:26<02:39,  2.56it/s]
 14%|#4        | 68/475 [00:26<02:52,  2.36it/s]
 15%|#4        | 69/475 [00:27<02:41,  2.51it/s]
 15%|#4        | 70/475 [00:27<02:32,  2.65it/s]
 15%|#4        | 71/475 [00:27<02:45,  2.44it/s]
 15%|#5        | 72/475 [00:28<02:14,  3.01it/s]
 15%|#5        | 73/475 [00:28<02:20,  2.86it/s]
 16%|#5        | 74/475 [00:28<01:58,  3.40it/s]
 16%|#5        | 75/475 [00:28<01:58,  3.38it/s]
 16%|#6        | 76/475 [00:29<02:04,  3.19it/s]
 16%|#6        | 77/475 [00:29<02:23,  2.78it/s]
 17%|#6        | 79/475 [00:30<01:54,  3.45it/s]
 17%|#6        | 80/475 [00:30<01:59,  3.30it/s]
 17%|#7        | 81/475 [00:30<02:13,  2.94it/s]
 17%|#7        | 82/475 [00:31<02:29,  2.63it/s]
 17%|#7        | 83/475 [00:31<02:28,  2.64it/s]
 18%|#7        | 84/475 [00:32<02:24,  2.71it/s]
 18%|#7        | 85/475 [00:32<02:24,  2.69it/s]
 18%|#8        | 86/475 [00:33<02:42,  2.40it/s]
 18%|#8        | 87/475 [00:33<02:28,  2.61it/s]
 19%|#8        | 88/475 [00:33<02:26,  2.65it/s]
 19%|#8        | 89/475 [00:34<02:12,  2.91it/s]
 19%|#8        | 90/475 [00:34<02:05,  3.07it/s]
 19%|#9        | 91/475 [00:34<02:01,  3.15it/s]
 19%|#9        | 92/475 [00:34<01:52,  3.41it/s]
 20%|#9        | 94/475 [00:35<01:41,  3.75it/s]
 20%|##        | 95/475 [00:35<01:53,  3.34it/s]
 20%|##        | 96/475 [00:35<01:36,  3.93it/s]
 20%|##        | 97/475 [00:36<01:34,  4.00it/s]
 21%|##        | 98/475 [00:36<01:46,  3.53it/s]
 21%|##        | 99/475 [00:36<01:55,  3.26it/s]
 21%|##1       | 100/475 [00:37<01:59,  3.14it/s]
 21%|##1       | 101/475 [00:37<02:08,  2.91it/s]
 21%|##1       | 102/475 [00:37<02:06,  2.94it/s]
 22%|##1       | 103/475 [00:38<02:09,  2.86it/s]
 22%|##1       | 104/475 [00:38<02:09,  2.87it/s]
 22%|##2       | 105/475 [00:39<02:18,  2.68it/s]
 22%|##2       | 106/475 [00:39<01:50,  3.34it/s]
 23%|##2       | 107/475 [00:39<01:39,  3.71it/s]
 23%|##2       | 108/475 [00:39<01:37,  3.76it/s]
 23%|##2       | 109/475 [00:39<01:38,  3.71it/s]
 23%|##3       | 110/475 [00:40<01:33,  3.89it/s]
 23%|##3       | 111/475 [00:40<01:48,  3.35it/s]
 24%|##3       | 112/475 [00:40<01:33,  3.87it/s]
 24%|##3       | 113/475 [00:41<01:57,  3.09it/s]
 24%|##4       | 114/475 [00:41<02:00,  2.99it/s]
 24%|##4       | 115/475 [00:42<02:19,  2.59it/s]
 24%|##4       | 116/475 [00:42<02:26,  2.46it/s]
 25%|##4       | 117/475 [00:42<02:26,  2.45it/s]
 25%|##4       | 118/475 [00:43<02:43,  2.19it/s]
 25%|##5       | 119/475 [00:43<02:45,  2.15it/s]
 25%|##5       | 120/475 [00:44<02:32,  2.32it/s]
 25%|##5       | 121/475 [00:44<02:41,  2.20it/s]
 26%|##5       | 122/475 [00:44<02:06,  2.79it/s]
 26%|##5       | 123/475 [00:45<01:47,  3.28it/s]
 26%|##6       | 124/475 [00:45<01:29,  3.92it/s]
 26%|##6       | 125/475 [00:45<01:15,  4.61it/s]
 27%|##6       | 126/475 [00:45<01:16,  4.58it/s]
 27%|##6       | 127/475 [00:45<01:16,  4.56it/s]
 27%|##6       | 128/475 [00:46<01:37,  3.55it/s]
 27%|##7       | 129/475 [00:46<01:36,  3.57it/s]
 27%|##7       | 130/475 [00:46<01:25,  4.05it/s]
 28%|##7       | 131/475 [00:47<01:37,  3.52it/s]
 28%|##7       | 132/475 [00:47<01:47,  3.19it/s]
 28%|##8       | 133/475 [00:47<01:47,  3.18it/s]
 28%|##8       | 134/475 [00:47<01:32,  3.67it/s]
 28%|##8       | 135/475 [00:48<01:44,  3.25it/s]
 29%|##8       | 136/475 [00:48<01:29,  3.80it/s]
 29%|##8       | 137/475 [00:48<01:30,  3.75it/s]
 29%|##9       | 138/475 [00:49<01:45,  3.20it/s]
 29%|##9       | 139/475 [00:49<01:59,  2.80it/s]
 29%|##9       | 140/475 [00:50<01:56,  2.87it/s]
 30%|##9       | 141/475 [00:50<01:47,  3.10it/s]
 30%|##9       | 142/475 [00:50<01:38,  3.39it/s]
 30%|###       | 143/475 [00:50<01:20,  4.12it/s]
 31%|###       | 145/475 [00:50<01:06,  4.94it/s]
 31%|###       | 146/475 [00:51<01:09,  4.70it/s]
 31%|###       | 147/475 [00:51<01:06,  4.92it/s]
 31%|###1      | 148/475 [00:51<01:06,  4.91it/s]
 31%|###1      | 149/475 [00:51<01:08,  4.77it/s]
 32%|###1      | 150/475 [00:52<01:19,  4.09it/s]
 32%|###1      | 151/475 [00:52<01:50,  2.92it/s]
 32%|###2      | 152/475 [00:53<01:47,  2.99it/s]
 32%|###2      | 153/475 [00:53<01:30,  3.55it/s]
 32%|###2      | 154/475 [00:53<01:14,  4.30it/s]
 33%|###2      | 155/475 [00:53<01:02,  5.15it/s]
 33%|###3      | 157/475 [00:53<01:01,  5.15it/s]
 33%|###3      | 158/475 [00:54<01:04,  4.90it/s]
 33%|###3      | 159/475 [00:54<01:17,  4.09it/s]
 34%|###3      | 160/475 [00:54<01:07,  4.64it/s]
 34%|###3      | 161/475 [00:54<00:59,  5.29it/s]
 34%|###4      | 162/475 [00:54<00:59,  5.24it/s]
 34%|###4      | 163/475 [00:55<01:57,  2.65it/s]
 35%|###4      | 164/475 [00:55<01:43,  2.99it/s]
 35%|###4      | 165/475 [00:56<01:36,  3.22it/s]
 35%|###4      | 166/475 [00:56<01:34,  3.28it/s]
 35%|###5      | 167/475 [00:56<01:24,  3.63it/s]
 35%|###5      | 168/475 [00:56<01:16,  4.00it/s]
 36%|###5      | 169/475 [00:57<01:30,  3.37it/s]
 36%|###5      | 170/475 [00:57<01:35,  3.19it/s]
 36%|###6      | 171/475 [00:57<01:25,  3.55it/s]
 36%|###6      | 172/475 [00:58<01:27,  3.48it/s]
 36%|###6      | 173/475 [00:58<01:13,  4.10it/s]
 37%|###6      | 174/475 [00:58<01:30,  3.33it/s]
 37%|###6      | 175/475 [00:59<01:40,  2.98it/s]
 37%|###7      | 176/475 [00:59<01:32,  3.23it/s]
 37%|###7      | 177/475 [00:59<01:36,  3.09it/s]
 37%|###7      | 178/475 [00:59<01:23,  3.57it/s]
 38%|###7      | 179/475 [01:00<01:18,  3.78it/s]
 38%|###7      | 180/475 [01:00<01:04,  4.57it/s]
 38%|###8      | 181/475 [01:00<01:03,  4.63it/s]
 38%|###8      | 182/475 [01:00<00:57,  5.08it/s]
 39%|###8      | 183/475 [01:00<01:00,  4.80it/s]
 39%|###8      | 184/475 [01:01<01:09,  4.22it/s]
 39%|###8      | 185/475 [01:01<01:03,  4.58it/s]
 39%|###9      | 186/475 [01:01<00:58,  4.96it/s]
 39%|###9      | 187/475 [01:01<00:52,  5.51it/s]
 40%|###9      | 188/475 [01:01<01:03,  4.51it/s]
 40%|###9      | 189/475 [01:02<01:19,  3.60it/s]
 40%|####      | 190/475 [01:02<01:25,  3.32it/s]
 40%|####      | 191/475 [01:02<01:22,  3.43it/s]
 40%|####      | 192/475 [01:03<01:14,  3.81it/s]
 41%|####      | 193/475 [01:03<01:25,  3.31it/s]
 41%|####      | 194/475 [01:03<01:32,  3.03it/s]
 41%|####1     | 195/475 [01:04<01:53,  2.46it/s]
 41%|####1     | 196/475 [01:04<01:51,  2.50it/s]
 41%|####1     | 197/475 [01:05<01:55,  2.41it/s]
 42%|####1     | 198/475 [01:05<01:34,  2.94it/s]
 42%|####1     | 199/475 [01:05<01:20,  3.42it/s]
 42%|####2     | 200/475 [01:05<01:10,  3.88it/s]
 42%|####2     | 201/475 [01:05<01:01,  4.48it/s]
 43%|####2     | 202/475 [01:06<01:05,  4.18it/s]
 43%|####2     | 203/475 [01:06<01:15,  3.61it/s]
 43%|####2     | 204/475 [01:06<01:12,  3.72it/s]
 43%|####3     | 205/475 [01:07<01:27,  3.10it/s]
 43%|####3     | 206/475 [01:07<01:15,  3.57it/s]
 44%|####3     | 207/475 [01:07<01:18,  3.42it/s]
 44%|####3     | 208/475 [01:08<01:32,  2.89it/s]
 44%|####4     | 209/475 [01:08<01:27,  3.02it/s]
 44%|####4     | 210/475 [01:08<01:24,  3.12it/s]
 44%|####4     | 211/475 [01:09<01:43,  2.54it/s]
 45%|####4     | 212/475 [01:09<01:45,  2.50it/s]
 45%|####4     | 213/475 [01:10<01:33,  2.82it/s]
 45%|####5     | 214/475 [01:10<01:29,  2.90it/s]
 45%|####5     | 215/475 [01:10<01:35,  2.73it/s]
 45%|####5     | 216/475 [01:11<01:36,  2.69it/s]
 46%|####5     | 217/475 [01:11<01:36,  2.67it/s]
 46%|####5     | 218/475 [01:12<01:41,  2.52it/s]
 46%|####6     | 219/475 [01:12<01:34,  2.71it/s]
 46%|####6     | 220/475 [01:12<01:33,  2.74it/s]
 47%|####6     | 221/475 [01:12<01:13,  3.45it/s]
 47%|####6     | 222/475 [01:13<01:07,  3.77it/s]
 47%|####6     | 223/475 [01:13<01:01,  4.10it/s]
 47%|####7     | 224/475 [01:13<00:57,  4.40it/s]
 47%|####7     | 225/475 [01:13<00:51,  4.88it/s]
 48%|####7     | 226/475 [01:13<01:04,  3.89it/s]
 48%|####7     | 227/475 [01:14<01:30,  2.74it/s]
 48%|####8     | 228/475 [01:15<01:46,  2.33it/s]
 48%|####8     | 229/475 [01:15<01:26,  2.86it/s]
 48%|####8     | 230/475 [01:15<01:10,  3.49it/s]
 49%|####8     | 231/475 [01:15<01:25,  2.85it/s]
 49%|####8     | 232/475 [01:16<01:29,  2.71it/s]
 49%|####9     | 233/475 [01:16<01:30,  2.66it/s]
 49%|####9     | 234/475 [01:17<01:51,  2.17it/s]
 49%|####9     | 235/475 [01:17<01:42,  2.34it/s]
 50%|####9     | 236/475 [01:18<01:37,  2.44it/s]
 50%|####9     | 237/475 [01:18<01:26,  2.74it/s]
 50%|#####     | 238/475 [01:18<01:27,  2.70it/s]
 50%|#####     | 239/475 [01:19<01:26,  2.74it/s]
 51%|#####     | 240/475 [01:19<01:29,  2.63it/s]
 51%|#####     | 241/475 [01:19<01:19,  2.93it/s]
 51%|#####     | 242/475 [01:20<01:10,  3.31it/s]
 51%|#####1    | 243/475 [01:20<01:02,  3.69it/s]
 51%|#####1    | 244/475 [01:20<01:07,  3.43it/s]
 52%|#####1    | 245/475 [01:20<01:04,  3.59it/s]
 52%|#####1    | 246/475 [01:21<01:38,  2.32it/s]
 52%|#####2    | 247/475 [01:22<01:57,  1.94it/s]
 52%|#####2    | 248/475 [01:22<01:31,  2.49it/s]
 52%|#####2    | 249/475 [01:22<01:10,  3.20it/s]
 53%|#####2    | 250/475 [01:23<01:38,  2.28it/s]
 53%|#####2    | 251/475 [01:23<01:34,  2.38it/s]
 53%|#####3    | 252/475 [01:24<01:27,  2.54it/s]
 53%|#####3    | 253/475 [01:24<01:17,  2.88it/s]
 53%|#####3    | 254/475 [01:24<01:17,  2.85it/s]
 54%|#####3    | 255/475 [01:25<01:21,  2.70it/s]
 54%|#####3    | 256/475 [01:25<01:20,  2.73it/s]
 54%|#####4    | 257/475 [01:25<01:18,  2.77it/s]
 54%|#####4    | 258/475 [01:26<01:22,  2.63it/s]
 55%|#####4    | 259/475 [01:26<01:28,  2.45it/s]
 55%|#####4    | 260/475 [01:26<01:22,  2.60it/s]
 55%|#####4    | 261/475 [01:27<01:34,  2.25it/s]
 55%|#####5    | 262/475 [01:27<01:29,  2.39it/s]
 55%|#####5    | 263/475 [01:27<01:08,  3.08it/s]
 56%|#####5    | 264/475 [01:28<01:05,  3.22it/s]
 56%|#####5    | 265/475 [01:28<01:04,  3.24it/s]
 56%|#####6    | 266/475 [01:28<01:11,  2.92it/s]
 56%|#####6    | 267/475 [01:29<00:59,  3.53it/s]
 57%|#####6    | 269/475 [01:29<00:52,  3.89it/s]
 57%|#####6    | 270/475 [01:30<01:14,  2.77it/s]
 57%|#####7    | 271/475 [01:30<01:15,  2.71it/s]
 57%|#####7    | 272/475 [01:31<01:13,  2.77it/s]
 57%|#####7    | 273/475 [01:31<01:23,  2.43it/s]
 58%|#####7    | 274/475 [01:31<01:23,  2.40it/s]
 58%|#####7    | 275/475 [01:32<01:53,  1.76it/s]
 58%|#####8    | 276/475 [01:33<01:45,  1.90it/s]
 58%|#####8    | 277/475 [01:33<01:44,  1.90it/s]
 59%|#####8    | 278/475 [01:34<01:42,  1.93it/s]
 59%|#####8    | 279/475 [01:34<01:28,  2.22it/s]
 59%|#####8    | 280/475 [01:34<01:15,  2.57it/s]
 59%|#####9    | 281/475 [01:35<01:30,  2.14it/s]
 59%|#####9    | 282/475 [01:35<01:21,  2.37it/s]
 60%|#####9    | 283/475 [01:36<01:15,  2.54it/s]
 60%|#####9    | 284/475 [01:36<01:28,  2.15it/s]
 60%|######    | 285/475 [01:37<01:22,  2.31it/s]
 60%|######    | 286/475 [01:37<01:14,  2.54it/s]
 60%|######    | 287/475 [01:37<00:58,  3.22it/s]
 61%|######    | 288/475 [01:37<00:51,  3.64it/s]
 61%|######    | 289/475 [01:38<00:54,  3.42it/s]
 61%|######1   | 290/475 [01:38<00:53,  3.46it/s]
 61%|######1   | 291/475 [01:38<00:52,  3.51it/s]
 61%|######1   | 292/475 [01:39<01:19,  2.29it/s]
 62%|######1   | 293/475 [01:39<01:18,  2.33it/s]
 62%|######1   | 294/475 [01:40<01:06,  2.70it/s]
 62%|######2   | 295/475 [01:40<01:05,  2.75it/s]
 62%|######2   | 296/475 [01:40<01:08,  2.63it/s]
 63%|######2   | 297/475 [01:41<01:12,  2.45it/s]
 63%|######2   | 298/475 [01:41<01:13,  2.42it/s]
 63%|######2   | 299/475 [01:42<01:33,  1.89it/s]
 63%|######3   | 300/475 [01:42<01:25,  2.05it/s]
 63%|######3   | 301/475 [01:43<01:21,  2.15it/s]
 64%|######3   | 302/475 [01:43<01:14,  2.31it/s]
 64%|######3   | 303/475 [01:44<01:30,  1.89it/s]
 64%|######4   | 304/475 [01:44<01:22,  2.08it/s]
 64%|######4   | 305/475 [01:45<01:04,  2.62it/s]
 64%|######4   | 306/475 [01:45<00:53,  3.16it/s]
 65%|######4   | 308/475 [01:45<00:45,  3.68it/s]
 65%|######5   | 309/475 [01:45<00:49,  3.39it/s]
 65%|######5   | 310/475 [01:46<00:45,  3.61it/s]
 65%|######5   | 311/475 [01:46<00:56,  2.92it/s]
 66%|######5   | 312/475 [01:47<01:02,  2.60it/s]
 66%|######5   | 313/475 [01:47<00:51,  3.13it/s]
 66%|######6   | 314/475 [01:47<00:55,  2.92it/s]
 66%|######6   | 315/475 [01:48<01:01,  2.60it/s]
 67%|######6   | 316/475 [01:48<01:01,  2.60it/s]
 67%|######6   | 317/475 [01:49<01:01,  2.57it/s]
 67%|######6   | 318/475 [01:49<01:01,  2.57it/s]
 67%|######7   | 319/475 [01:49<01:03,  2.44it/s]
 67%|######7   | 320/475 [01:50<01:03,  2.44it/s]
 68%|######7   | 321/475 [01:50<00:56,  2.71it/s]
 68%|######7   | 322/475 [01:51<01:10,  2.18it/s]
 68%|######8   | 323/475 [01:51<01:15,  2.01it/s]
 68%|######8   | 324/475 [01:52<01:09,  2.16it/s]
 68%|######8   | 325/475 [01:52<00:54,  2.76it/s]
 69%|######8   | 326/475 [01:52<00:44,  3.38it/s]
 69%|######8   | 327/475 [01:52<00:46,  3.15it/s]
 69%|######9   | 328/475 [01:53<00:51,  2.83it/s]
 69%|######9   | 329/475 [01:53<00:52,  2.76it/s]
 69%|######9   | 330/475 [01:53<00:49,  2.95it/s]
 70%|######9   | 331/475 [01:54<00:40,  3.55it/s]
 70%|######9   | 332/475 [01:54<00:41,  3.48it/s]
 70%|#######   | 333/475 [01:54<00:41,  3.45it/s]
 70%|#######   | 334/475 [01:55<00:45,  3.13it/s]
 71%|#######   | 335/475 [01:55<00:46,  3.02it/s]
 71%|#######   | 336/475 [01:55<00:50,  2.75it/s]
 71%|#######   | 337/475 [01:56<00:51,  2.70it/s]
 71%|#######1  | 338/475 [01:56<00:57,  2.38it/s]
 71%|#######1  | 339/475 [01:57<00:57,  2.35it/s]
 72%|#######1  | 340/475 [01:57<00:58,  2.32it/s]
 72%|#######1  | 341/475 [01:58<00:55,  2.40it/s]
 72%|#######2  | 342/475 [01:58<00:55,  2.38it/s]
 72%|#######2  | 343/475 [01:59<01:10,  1.87it/s]
 72%|#######2  | 344/475 [01:59<01:00,  2.15it/s]
 73%|#######2  | 345/475 [01:59<00:51,  2.52it/s]
 73%|#######2  | 346/475 [02:00<00:47,  2.74it/s]
 73%|#######3  | 347/475 [02:00<00:47,  2.72it/s]
 73%|#######3  | 348/475 [02:00<00:43,  2.91it/s]
 73%|#######3  | 349/475 [02:01<00:45,  2.76it/s]
 74%|#######3  | 350/475 [02:01<00:48,  2.56it/s]
 74%|#######3  | 351/475 [02:02<00:47,  2.62it/s]
 74%|#######4  | 352/475 [02:02<00:50,  2.45it/s]
 74%|#######4  | 353/475 [02:02<00:48,  2.52it/s]
 75%|#######4  | 354/475 [02:03<00:51,  2.36it/s]
 75%|#######4  | 355/475 [02:03<00:56,  2.11it/s]
 75%|#######4  | 356/475 [02:04<00:53,  2.22it/s]
 75%|#######5  | 357/475 [02:04<00:54,  2.15it/s]
 75%|#######5  | 358/475 [02:05<00:52,  2.24it/s]
 76%|#######5  | 359/475 [02:05<00:49,  2.36it/s]
 76%|#######5  | 360/475 [02:06<01:07,  1.71it/s]
 76%|#######6  | 361/475 [02:06<00:59,  1.92it/s]
 76%|#######6  | 362/475 [02:07<00:59,  1.90it/s]
 76%|#######6  | 363/475 [02:07<00:50,  2.22it/s]
 77%|#######6  | 364/475 [02:08<00:47,  2.34it/s]
 77%|#######6  | 365/475 [02:08<00:45,  2.42it/s]
 77%|#######7  | 366/475 [02:08<00:42,  2.54it/s]
 77%|#######7  | 367/475 [02:09<00:45,  2.39it/s]
 77%|#######7  | 368/475 [02:09<00:44,  2.42it/s]
 78%|#######7  | 369/475 [02:10<00:40,  2.61it/s]
 78%|#######7  | 370/475 [02:10<00:38,  2.76it/s]
 78%|#######8  | 371/475 [02:11<00:50,  2.05it/s]
 78%|#######8  | 372/475 [02:11<00:48,  2.12it/s]
 79%|#######8  | 373/475 [02:12<00:49,  2.05it/s]
 79%|#######8  | 374/475 [02:12<00:52,  1.93it/s]
 79%|#######8  | 375/475 [02:13<00:50,  1.99it/s]
 79%|#######9  | 376/475 [02:13<00:45,  2.20it/s]
 79%|#######9  | 377/475 [02:13<00:43,  2.24it/s]
 80%|#######9  | 378/475 [02:14<00:42,  2.29it/s]
 80%|#######9  | 379/475 [02:15<00:50,  1.91it/s]
 80%|########  | 380/475 [02:15<00:44,  2.12it/s]
 80%|########  | 381/475 [02:16<00:48,  1.93it/s]
 80%|########  | 382/475 [02:16<00:43,  2.14it/s]
 81%|########  | 383/475 [02:16<00:40,  2.29it/s]
 81%|########  | 384/475 [02:17<00:38,  2.35it/s]
 81%|########1 | 385/475 [02:17<00:30,  2.93it/s]
 81%|########1 | 386/475 [02:17<00:28,  3.11it/s]
 81%|########1 | 387/475 [02:17<00:31,  2.84it/s]
 82%|########1 | 388/475 [02:18<00:40,  2.17it/s]
 82%|########1 | 389/475 [02:19<00:43,  1.98it/s]
 82%|########2 | 390/475 [02:19<00:39,  2.17it/s]
 82%|########2 | 391/475 [02:20<00:37,  2.25it/s]
 83%|########2 | 392/475 [02:20<00:35,  2.31it/s]
 83%|########2 | 393/475 [02:20<00:32,  2.54it/s]
 83%|########2 | 394/475 [02:21<00:31,  2.59it/s]
 83%|########3 | 395/475 [02:21<00:31,  2.57it/s]
 83%|########3 | 396/475 [02:21<00:30,  2.59it/s]
 84%|########3 | 397/475 [02:22<00:34,  2.28it/s]
 84%|########3 | 398/475 [02:22<00:33,  2.28it/s]
 84%|########4 | 399/475 [02:23<00:32,  2.36it/s]
 84%|########4 | 400/475 [02:23<00:36,  2.05it/s]
 84%|########4 | 401/475 [02:24<00:33,  2.19it/s]
 85%|########4 | 402/475 [02:24<00:30,  2.36it/s]
 85%|########4 | 403/475 [02:25<00:30,  2.39it/s]
 85%|########5 | 404/475 [02:25<00:30,  2.37it/s]
 85%|########5 | 405/475 [02:25<00:26,  2.68it/s]
 85%|########5 | 406/475 [02:26<00:27,  2.54it/s]
 86%|########5 | 407/475 [02:26<00:27,  2.46it/s]
 86%|########5 | 408/475 [02:27<00:27,  2.42it/s]
 86%|########6 | 409/475 [02:27<00:25,  2.59it/s]
 86%|########6 | 410/475 [02:27<00:24,  2.70it/s]
 87%|########6 | 411/475 [02:28<00:23,  2.75it/s]
 87%|########6 | 412/475 [02:28<00:21,  2.87it/s]
 87%|########6 | 413/475 [02:28<00:21,  2.84it/s]
 87%|########7 | 414/475 [02:29<00:24,  2.52it/s]
 87%|########7 | 415/475 [02:29<00:26,  2.30it/s]
 88%|########7 | 416/475 [02:30<00:25,  2.29it/s]
 88%|########7 | 417/475 [02:30<00:26,  2.18it/s]
 88%|########8 | 418/475 [02:31<00:27,  2.10it/s]
 88%|########8 | 419/475 [02:31<00:24,  2.32it/s]
 88%|########8 | 420/475 [02:31<00:22,  2.43it/s]
 89%|########8 | 421/475 [02:32<00:20,  2.62it/s]
 89%|########8 | 422/475 [02:32<00:18,  2.83it/s]
 89%|########9 | 423/475 [02:32<00:16,  3.15it/s]
 89%|########9 | 424/475 [02:33<00:16,  3.18it/s]
 89%|########9 | 425/475 [02:33<00:19,  2.61it/s]
 90%|########9 | 426/475 [02:34<00:23,  2.11it/s]
 90%|########9 | 427/475 [02:34<00:23,  2.05it/s]
 90%|######### | 428/475 [02:35<00:28,  1.64it/s]
 90%|######### | 429/475 [02:36<00:29,  1.55it/s]
 91%|######### | 430/475 [02:36<00:25,  1.77it/s]
 91%|######### | 431/475 [02:37<00:22,  2.00it/s]
 91%|######### | 432/475 [02:37<00:18,  2.33it/s]
 91%|#########1| 433/475 [02:37<00:17,  2.47it/s]
 91%|#########1| 434/475 [02:38<00:16,  2.51it/s]
 92%|#########1| 435/475 [02:38<00:16,  2.39it/s]
 92%|#########1| 436/475 [02:39<00:17,  2.22it/s]
 92%|#########2| 437/475 [02:39<00:16,  2.26it/s]
 92%|#########2| 438/475 [02:40<00:17,  2.14it/s]
 92%|#########2| 439/475 [02:40<00:18,  1.95it/s]
 93%|#########2| 440/475 [02:41<00:16,  2.09it/s]
 93%|#########2| 441/475 [02:41<00:16,  2.00it/s]
 93%|#########3| 442/475 [02:42<00:16,  1.96it/s]
 93%|#########3| 443/475 [02:42<00:18,  1.70it/s]
 93%|#########3| 444/475 [02:43<00:16,  1.93it/s]
 94%|#########3| 445/475 [02:43<00:15,  1.98it/s]
 94%|#########3| 446/475 [02:44<00:14,  1.97it/s]
 94%|#########4| 447/475 [02:45<00:16,  1.66it/s]
 94%|#########4| 448/475 [02:46<00:18,  1.46it/s]
 95%|#########4| 449/475 [02:46<00:17,  1.47it/s]
 95%|#########4| 450/475 [02:47<00:17,  1.44it/s]
 95%|#########4| 451/475 [02:47<00:15,  1.55it/s]
 95%|#########5| 452/475 [02:48<00:13,  1.76it/s]
 95%|#########5| 453/475 [02:48<00:11,  1.99it/s]
 96%|#########5| 454/475 [02:49<00:10,  2.07it/s]
 96%|#########5| 455/475 [02:49<00:09,  2.19it/s]
 96%|#########6| 456/475 [02:49<00:08,  2.30it/s]
 96%|#########6| 457/475 [02:50<00:08,  2.23it/s]
 96%|#########6| 458/475 [02:50<00:07,  2.22it/s]
 97%|#########6| 459/475 [02:50<00:05,  2.83it/s]
 97%|#########6| 460/475 [02:51<00:04,  3.54it/s]
 97%|#########7| 461/475 [02:51<00:03,  4.08it/s]
 97%|#########7| 462/475 [02:51<00:03,  3.42it/s]
 97%|#########7| 463/475 [02:52<00:05,  2.17it/s]
 98%|#########7| 464/475 [02:53<00:05,  1.92it/s]
 98%|#########7| 465/475 [02:53<00:05,  1.73it/s]
 98%|#########8| 466/475 [02:54<00:05,  1.70it/s]
 98%|#########8| 467/475 [02:54<00:03,  2.11it/s]
 99%|#########8| 468/475 [02:55<00:03,  2.12it/s]
 99%|#########8| 469/475 [02:55<00:02,  2.14it/s]
 99%|#########8| 470/475 [02:55<00:02,  2.32it/s]
 99%|#########9| 471/475 [02:56<00:01,  2.50it/s]
 99%|#########9| 472/475 [02:56<00:01,  2.07it/s]
100%|#########9| 473/475 [02:57<00:00,  2.16it/s]
100%|#########9| 474/475 [02:57<00:00,  2.34it/s]
100%|##########| 475/475 [02:58<00:00,  2.42it/s]
100%|##########| 475/475 [02:58<00:00,  2.67it/s]

  0%|          | 0/475 [00:00<?, ?it/s]
  0%|          | 1/475 [00:00<01:48,  4.38it/s]
  0%|          | 2/475 [00:00<01:22,  5.72it/s]
  1%|          | 3/475 [00:00<01:28,  5.36it/s]
  1%|          | 4/475 [00:00<01:30,  5.20it/s]
  1%|1         | 5/475 [00:00<01:34,  4.97it/s]
  1%|1         | 6/475 [00:01<02:42,  2.89it/s]
  1%|1         | 7/475 [00:01<02:28,  3.14it/s]
  2%|1         | 8/475 [00:02<02:56,  2.65it/s]
  2%|1         | 9/475 [00:02<02:43,  2.84it/s]
  2%|2         | 10/475 [00:03<02:55,  2.65it/s]
  2%|2         | 11/475 [00:03<02:31,  3.06it/s]
  3%|2         | 12/475 [00:03<02:16,  3.40it/s]
  3%|2         | 13/475 [00:03<02:09,  3.57it/s]
  3%|2         | 14/475 [00:04<02:14,  3.42it/s]
  3%|3         | 15/475 [00:04<02:12,  3.48it/s]
  3%|3         | 16/475 [00:04<02:41,  2.85it/s]
  4%|3         | 17/475 [00:05<02:26,  3.13it/s]
  4%|3         | 18/475 [00:05<02:25,  3.14it/s]
  4%|4         | 19/475 [00:05<02:13,  3.41it/s]
  4%|4         | 20/475 [00:05<01:53,  4.02it/s]
  4%|4         | 21/475 [00:06<01:50,  4.11it/s]
  5%|4         | 22/475 [00:06<01:45,  4.30it/s]
  5%|4         | 23/475 [00:06<01:46,  4.23it/s]
  5%|5         | 24/475 [00:06<01:53,  3.96it/s]
  5%|5         | 25/475 [00:07<01:58,  3.79it/s]
  5%|5         | 26/475 [00:07<02:10,  3.45it/s]
  6%|5         | 27/475 [00:07<02:00,  3.72it/s]
  6%|5         | 28/475 [00:07<01:57,  3.79it/s]
  6%|6         | 29/475 [00:08<02:14,  3.32it/s]
  6%|6         | 30/475 [00:08<02:15,  3.28it/s]
  7%|6         | 31/475 [00:08<02:09,  3.42it/s]
  7%|6         | 32/475 [00:09<02:00,  3.68it/s]
  7%|6         | 33/475 [00:09<01:53,  3.91it/s]
  7%|7         | 34/475 [00:09<01:52,  3.93it/s]
  7%|7         | 35/475 [00:09<01:46,  4.14it/s]
  8%|7         | 36/475 [00:09<01:37,  4.49it/s]
  8%|7         | 37/475 [00:10<01:37,  4.48it/s]
  8%|8         | 38/475 [00:10<01:59,  3.66it/s]
  8%|8         | 39/475 [00:11<02:31,  2.88it/s]
  8%|8         | 40/475 [00:11<02:22,  3.05it/s]
  9%|8         | 41/475 [00:11<01:59,  3.63it/s]
  9%|8         | 42/475 [00:11<02:07,  3.40it/s]
  9%|9         | 43/475 [00:12<01:58,  3.66it/s]
  9%|9         | 44/475 [00:12<02:12,  3.25it/s]
  9%|9         | 45/475 [00:12<02:34,  2.79it/s]
 10%|9         | 46/475 [00:13<02:18,  3.10it/s]
 10%|9         | 47/475 [00:13<02:27,  2.90it/s]
 10%|#         | 48/475 [00:13<02:13,  3.19it/s]
 10%|#         | 49/475 [00:14<02:09,  3.29it/s]
 11%|#         | 50/475 [00:14<02:15,  3.13it/s]
 11%|#         | 51/475 [00:14<02:01,  3.49it/s]
 11%|#         | 52/475 [00:14<01:55,  3.65it/s]
 11%|#1        | 53/475 [00:15<02:00,  3.49it/s]
 11%|#1        | 54/475 [00:15<01:45,  3.98it/s]
 12%|#1        | 55/475 [00:15<01:27,  4.80it/s]
 12%|#1        | 56/475 [00:15<01:31,  4.59it/s]
 12%|#2        | 57/475 [00:15<01:33,  4.45it/s]
 12%|#2        | 58/475 [00:16<02:22,  2.92it/s]
 13%|#2        | 60/475 [00:16<01:52,  3.69it/s]
 13%|#2        | 61/475 [00:17<02:00,  3.44it/s]
 13%|#3        | 62/475 [00:17<02:11,  3.15it/s]
 13%|#3        | 63/475 [00:17<01:57,  3.51it/s]
 13%|#3        | 64/475 [00:18<01:59,  3.44it/s]
 14%|#3        | 65/475 [00:18<02:00,  3.39it/s]
 14%|#3        | 66/475 [00:18<01:54,  3.57it/s]
 14%|#4        | 67/475 [00:19<01:51,  3.65it/s]
 14%|#4        | 68/475 [00:19<02:15,  3.00it/s]
 15%|#4        | 69/475 [00:19<02:05,  3.23it/s]
 15%|#4        | 70/475 [00:19<01:54,  3.53it/s]
 15%|#4        | 71/475 [00:20<01:44,  3.86it/s]
 15%|#5        | 72/475 [00:20<01:32,  4.37it/s]
 15%|#5        | 73/475 [00:20<01:18,  5.14it/s]
 16%|#5        | 74/475 [00:20<01:07,  5.94it/s]
 16%|#5        | 75/475 [00:20<01:09,  5.76it/s]
 16%|#6        | 76/475 [00:20<01:14,  5.37it/s]
 16%|#6        | 77/475 [00:21<01:05,  6.04it/s]
 17%|#6        | 79/475 [00:21<01:01,  6.44it/s]
 17%|#6        | 80/475 [00:21<01:05,  6.05it/s]
 17%|#7        | 81/475 [00:21<01:14,  5.26it/s]
 17%|#7        | 82/475 [00:22<01:25,  4.58it/s]
 17%|#7        | 83/475 [00:22<01:32,  4.23it/s]
 18%|#7        | 84/475 [00:22<01:29,  4.35it/s]
 18%|#7        | 85/475 [00:22<01:29,  4.37it/s]
 18%|#8        | 86/475 [00:23<01:31,  4.24it/s]
 18%|#8        | 87/475 [00:23<01:29,  4.35it/s]
 19%|#8        | 88/475 [00:23<01:26,  4.50it/s]
 19%|#8        | 89/475 [00:23<01:13,  5.22it/s]
 19%|#8        | 90/475 [00:23<01:05,  5.89it/s]
 19%|#9        | 91/475 [00:23<00:59,  6.45it/s]
 19%|#9        | 92/475 [00:24<00:55,  6.94it/s]
 20%|#9        | 93/475 [00:24<00:50,  7.63it/s]
 20%|#9        | 94/475 [00:24<00:54,  7.00it/s]
 20%|##        | 95/475 [00:24<01:05,  5.77it/s]
 20%|##        | 96/475 [00:24<01:01,  6.21it/s]
 20%|##        | 97/475 [00:24<00:59,  6.31it/s]
 21%|##        | 98/475 [00:24<01:01,  6.10it/s]
 21%|##        | 99/475 [00:25<01:10,  5.34it/s]
 21%|##1       | 100/475 [00:25<01:18,  4.79it/s]
 21%|##1       | 101/475 [00:25<01:19,  4.69it/s]
 21%|##1       | 102/475 [00:25<01:23,  4.49it/s]
 22%|##1       | 103/475 [00:26<01:23,  4.45it/s]
 22%|##1       | 104/475 [00:26<01:38,  3.76it/s]
 22%|##2       | 105/475 [00:26<01:38,  3.74it/s]
 22%|##2       | 106/475 [00:26<01:23,  4.41it/s]
 23%|##2       | 107/475 [00:27<01:16,  4.83it/s]
 23%|##2       | 108/475 [00:27<01:05,  5.60it/s]
 23%|##2       | 109/475 [00:27<00:58,  6.29it/s]
 23%|##3       | 110/475 [00:27<00:51,  7.05it/s]
 23%|##3       | 111/475 [00:27<00:49,  7.39it/s]
 24%|##3       | 112/475 [00:27<00:53,  6.76it/s]
 24%|##3       | 113/475 [00:27<00:56,  6.40it/s]
 24%|##4       | 114/475 [00:28<01:04,  5.59it/s]
 24%|##4       | 115/475 [00:28<01:12,  5.00it/s]
 24%|##4       | 116/475 [00:28<01:10,  5.10it/s]
 25%|##4       | 117/475 [00:28<01:06,  5.39it/s]
 25%|##4       | 118/475 [00:28<01:11,  5.02it/s]
 25%|##5       | 119/475 [00:29<01:15,  4.69it/s]
 25%|##5       | 120/475 [00:29<01:48,  3.27it/s]
 25%|##5       | 121/475 [00:29<01:40,  3.52it/s]
 26%|##5       | 122/475 [00:30<01:26,  4.08it/s]
 26%|##5       | 123/475 [00:30<01:26,  4.09it/s]
 26%|##6       | 124/475 [00:30<01:16,  4.61it/s]
 26%|##6       | 125/475 [00:30<01:08,  5.08it/s]
 27%|##6       | 126/475 [00:30<00:59,  5.86it/s]
 27%|##6       | 127/475 [00:30<00:52,  6.60it/s]
 27%|##6       | 128/475 [00:30<00:48,  7.13it/s]
 27%|##7       | 129/475 [00:31<00:46,  7.46it/s]
 27%|##7       | 130/475 [00:31<00:44,  7.84it/s]
 28%|##7       | 131/475 [00:31<00:52,  6.60it/s]
 28%|##7       | 132/475 [00:31<01:22,  4.16it/s]
 28%|##8       | 133/475 [00:32<01:37,  3.51it/s]
 28%|##8       | 134/475 [00:32<01:22,  4.12it/s]
 28%|##8       | 135/475 [00:32<01:18,  4.34it/s]
 29%|##8       | 136/475 [00:32<01:14,  4.55it/s]
 29%|##8       | 137/475 [00:33<01:11,  4.75it/s]
 29%|##9       | 138/475 [00:33<01:10,  4.78it/s]
 29%|##9       | 139/475 [00:33<01:14,  4.53it/s]
 29%|##9       | 140/475 [00:33<01:14,  4.48it/s]
 30%|##9       | 141/475 [00:33<01:12,  4.59it/s]
 30%|##9       | 142/475 [00:34<01:06,  5.03it/s]
 30%|###       | 143/475 [00:34<00:58,  5.69it/s]
 31%|###       | 145/475 [00:34<00:46,  7.11it/s]
 31%|###       | 146/475 [00:34<00:44,  7.41it/s]
 31%|###       | 147/475 [00:34<00:41,  7.82it/s]
 31%|###1      | 148/475 [00:34<00:40,  8.00it/s]
 31%|###1      | 149/475 [00:34<00:38,  8.38it/s]
 32%|###1      | 150/475 [00:34<00:43,  7.43it/s]
 32%|###1      | 151/475 [00:35<00:50,  6.36it/s]
 32%|###2      | 152/475 [00:35<00:57,  5.62it/s]
 32%|###2      | 153/475 [00:35<00:53,  6.01it/s]
 32%|###2      | 154/475 [00:35<00:47,  6.75it/s]
 33%|###2      | 155/475 [00:35<00:43,  7.40it/s]
 33%|###2      | 156/475 [00:35<00:43,  7.33it/s]
 33%|###3      | 157/475 [00:36<00:44,  7.13it/s]
 33%|###3      | 158/475 [00:36<00:50,  6.31it/s]
 33%|###3      | 159/475 [00:36<01:06,  4.74it/s]
 34%|###3      | 160/475 [00:36<01:09,  4.55it/s]
 34%|###3      | 161/475 [00:36<00:58,  5.36it/s]
 34%|###4      | 162/475 [00:37<01:10,  4.44it/s]
 34%|###4      | 163/475 [00:37<01:10,  4.44it/s]
 35%|###4      | 164/475 [00:37<01:02,  4.96it/s]
 35%|###4      | 165/475 [00:37<00:55,  5.62it/s]
 35%|###4      | 166/475 [00:37<00:49,  6.23it/s]
 35%|###5      | 167/475 [00:37<00:44,  6.99it/s]
 35%|###5      | 168/475 [00:38<00:44,  6.84it/s]
 36%|###5      | 169/475 [00:38<00:53,  5.68it/s]
 36%|###5      | 170/475 [00:38<00:54,  5.60it/s]
 36%|###6      | 171/475 [00:38<01:06,  4.54it/s]
 36%|###6      | 172/475 [00:39<01:00,  5.03it/s]
 36%|###6      | 173/475 [00:39<00:58,  5.19it/s]
 37%|###6      | 174/475 [00:39<00:58,  5.18it/s]
 37%|###6      | 175/475 [00:39<00:58,  5.11it/s]
 37%|###7      | 176/475 [00:39<00:56,  5.28it/s]
 37%|###7      | 177/475 [00:40<01:07,  4.44it/s]
 37%|###7      | 178/475 [00:40<01:07,  4.42it/s]
 38%|###7      | 179/475 [00:40<01:06,  4.44it/s]
 38%|###7      | 180/475 [00:40<00:56,  5.23it/s]
 38%|###8      | 181/475 [00:40<00:52,  5.59it/s]
 38%|###8      | 182/475 [00:40<00:49,  5.98it/s]
 39%|###8      | 183/475 [00:41<00:48,  5.98it/s]
 39%|###8      | 184/475 [00:41<00:43,  6.73it/s]
 39%|###8      | 185/475 [00:41<00:39,  7.34it/s]
 39%|###9      | 186/475 [00:41<00:36,  7.82it/s]
 39%|###9      | 187/475 [00:41<00:38,  7.49it/s]
 40%|###9      | 188/475 [00:41<00:45,  6.24it/s]
 40%|###9      | 189/475 [00:42<01:09,  4.09it/s]
 40%|####      | 190/475 [00:42<01:07,  4.21it/s]
 40%|####      | 191/475 [00:42<01:06,  4.28it/s]
 40%|####      | 192/475 [00:42<01:02,  4.50it/s]
 41%|####      | 193/475 [00:43<01:01,  4.61it/s]
 41%|####      | 194/475 [00:43<01:02,  4.48it/s]
 41%|####1     | 195/475 [00:43<01:03,  4.41it/s]
 41%|####1     | 196/475 [00:43<01:05,  4.26it/s]
 41%|####1     | 197/475 [00:44<01:05,  4.26it/s]
 42%|####1     | 198/475 [00:44<00:59,  4.69it/s]
 42%|####1     | 199/475 [00:44<01:04,  4.25it/s]
 42%|####2     | 200/475 [00:44<01:03,  4.33it/s]
 42%|####2     | 201/475 [00:44<00:55,  4.93it/s]
 43%|####2     | 202/475 [00:44<00:48,  5.62it/s]
 43%|####2     | 203/475 [00:45<00:44,  6.18it/s]
 43%|####2     | 204/475 [00:45<00:40,  6.69it/s]
 43%|####3     | 205/475 [00:45<00:37,  7.24it/s]
 43%|####3     | 206/475 [00:45<00:34,  7.88it/s]
 44%|####3     | 207/475 [00:45<01:01,  4.34it/s]
 44%|####3     | 208/475 [00:46<00:57,  4.61it/s]
 44%|####4     | 209/475 [00:46<01:03,  4.17it/s]
 44%|####4     | 210/475 [00:46<00:55,  4.75it/s]
 44%|####4     | 211/475 [00:46<00:54,  4.89it/s]
 45%|####4     | 212/475 [00:46<00:55,  4.72it/s]
 45%|####4     | 213/475 [00:47<00:58,  4.50it/s]
 45%|####5     | 214/475 [00:47<00:57,  4.56it/s]
 45%|####5     | 215/475 [00:47<01:02,  4.16it/s]
 45%|####5     | 216/475 [00:47<01:04,  4.00it/s]
 46%|####5     | 217/475 [00:48<01:01,  4.18it/s]
 46%|####5     | 218/475 [00:48<01:06,  3.89it/s]
 46%|####6     | 219/475 [00:48<01:02,  4.08it/s]
 46%|####6     | 220/475 [00:48<01:02,  4.11it/s]
 47%|####6     | 221/475 [00:49<00:55,  4.54it/s]
 47%|####6     | 222/475 [00:49<00:47,  5.31it/s]
 47%|####6     | 223/475 [00:49<00:41,  6.04it/s]
 47%|####7     | 224/475 [00:49<00:37,  6.77it/s]
 47%|####7     | 225/475 [00:49<00:34,  7.35it/s]
 48%|####7     | 226/475 [00:49<00:36,  6.77it/s]
 48%|####7     | 227/475 [00:49<00:39,  6.36it/s]
 48%|####8     | 228/475 [00:50<00:51,  4.75it/s]
 48%|####8     | 229/475 [00:50<00:48,  5.12it/s]
 48%|####8     | 230/475 [00:50<00:51,  4.79it/s]
 49%|####8     | 231/475 [00:50<00:51,  4.72it/s]
 49%|####8     | 232/475 [00:51<00:55,  4.42it/s]
 49%|####9     | 233/475 [00:51<01:00,  3.99it/s]
 49%|####9     | 234/475 [00:52<01:42,  2.36it/s]
 49%|####9     | 235/475 [00:52<01:31,  2.63it/s]
 50%|####9     | 236/475 [00:52<01:20,  2.95it/s]
 50%|####9     | 237/475 [00:53<01:18,  3.05it/s]
 50%|#####     | 238/475 [00:53<01:10,  3.37it/s]
 50%|#####     | 239/475 [00:53<01:06,  3.55it/s]
 51%|#####     | 240/475 [00:53<01:01,  3.80it/s]
 51%|#####     | 241/475 [00:53<00:55,  4.18it/s]
 51%|#####     | 242/475 [00:54<00:47,  4.91it/s]
 51%|#####1    | 243/475 [00:54<00:41,  5.62it/s]
 51%|#####1    | 244/475 [00:54<00:37,  6.21it/s]
 52%|#####1    | 245/475 [00:54<00:33,  6.88it/s]
 52%|#####1    | 246/475 [00:54<00:38,  5.88it/s]
 52%|#####2    | 247/475 [00:54<00:44,  5.10it/s]
 52%|#####2    | 248/475 [00:55<00:40,  5.64it/s]
 52%|#####2    | 249/475 [00:55<00:35,  6.31it/s]
 53%|#####2    | 250/475 [00:55<00:40,  5.55it/s]
 53%|#####2    | 251/475 [00:55<00:49,  4.51it/s]
 53%|#####3    | 252/475 [00:55<00:53,  4.18it/s]
 53%|#####3    | 253/475 [00:56<01:00,  3.67it/s]
 53%|#####3    | 254/475 [00:56<01:17,  2.86it/s]
 54%|#####3    | 255/475 [00:57<01:09,  3.18it/s]
 54%|#####3    | 256/475 [00:57<01:02,  3.50it/s]
 54%|#####4    | 257/475 [00:57<00:58,  3.72it/s]
 54%|#####4    | 258/475 [00:57<01:01,  3.51it/s]
 55%|#####4    | 259/475 [00:58<01:01,  3.49it/s]
 55%|#####4    | 260/475 [00:58<01:01,  3.52it/s]
 55%|#####4    | 261/475 [00:58<00:59,  3.62it/s]
 55%|#####5    | 262/475 [00:58<00:57,  3.70it/s]
 55%|#####5    | 263/475 [00:59<00:46,  4.53it/s]
 56%|#####5    | 264/475 [00:59<00:40,  5.26it/s]
 56%|#####5    | 265/475 [00:59<00:37,  5.63it/s]
 56%|#####6    | 266/475 [00:59<00:37,  5.58it/s]
 56%|#####6    | 267/475 [00:59<00:35,  5.90it/s]
 57%|#####6    | 269/475 [00:59<00:33,  6.13it/s]
 57%|#####6    | 270/475 [01:00<00:45,  4.52it/s]
 57%|#####7    | 271/475 [01:00<00:56,  3.63it/s]
 57%|#####7    | 272/475 [01:01<00:59,  3.42it/s]
 57%|#####7    | 273/475 [01:01<01:07,  3.00it/s]
 58%|#####7    | 274/475 [01:01<01:11,  2.81it/s]
 58%|#####7    | 275/475 [01:02<01:04,  3.12it/s]
 58%|#####8    | 276/475 [01:02<00:59,  3.34it/s]
 58%|#####8    | 277/475 [01:02<00:59,  3.33it/s]
 59%|#####8    | 278/475 [01:03<00:59,  3.34it/s]
 59%|#####8    | 279/475 [01:03<00:59,  3.31it/s]
 59%|#####8    | 280/475 [01:03<00:56,  3.45it/s]
 59%|#####9    | 281/475 [01:03<00:54,  3.55it/s]
 59%|#####9    | 282/475 [01:04<00:56,  3.40it/s]
 60%|#####9    | 283/475 [01:04<00:46,  4.09it/s]
 60%|#####9    | 284/475 [01:04<00:41,  4.55it/s]
 60%|######    | 285/475 [01:04<00:42,  4.50it/s]
 60%|######    | 286/475 [01:05<00:47,  3.98it/s]
 60%|######    | 287/475 [01:05<00:40,  4.65it/s]
 61%|######    | 288/475 [01:05<00:37,  5.05it/s]
 61%|######    | 289/475 [01:05<00:41,  4.53it/s]
 61%|######1   | 290/475 [01:05<00:45,  4.10it/s]
 61%|######1   | 291/475 [01:06<00:48,  3.80it/s]
 61%|######1   | 292/475 [01:06<00:52,  3.49it/s]
 62%|######1   | 293/475 [01:07<01:05,  2.77it/s]
 62%|######1   | 294/475 [01:07<01:02,  2.89it/s]
 62%|######2   | 295/475 [01:07<01:09,  2.60it/s]
 62%|######2   | 296/475 [01:08<00:59,  3.01it/s]
 63%|######2   | 297/475 [01:08<00:59,  2.99it/s]
 63%|######2   | 298/475 [01:08<00:54,  3.25it/s]
 63%|######2   | 299/475 [01:08<00:50,  3.49it/s]
 63%|######3   | 300/475 [01:09<00:47,  3.71it/s]
 63%|######3   | 301/475 [01:09<00:45,  3.84it/s]
 64%|######3   | 302/475 [01:09<00:41,  4.20it/s]
 64%|######3   | 303/475 [01:09<00:40,  4.22it/s]
 64%|######4   | 304/475 [01:10<00:41,  4.12it/s]
 64%|######4   | 305/475 [01:10<00:36,  4.63it/s]
 64%|######4   | 306/475 [01:10<00:32,  5.25it/s]
 65%|######4   | 307/475 [01:10<00:28,  5.98it/s]
 65%|######4   | 308/475 [01:10<00:33,  4.92it/s]
 65%|######5   | 309/475 [01:11<01:00,  2.75it/s]
 65%|######5   | 310/475 [01:11<00:54,  3.02it/s]
 65%|######5   | 311/475 [01:12<01:00,  2.70it/s]
 66%|######5   | 312/475 [01:12<01:06,  2.44it/s]
 66%|######5   | 313/475 [01:12<00:56,  2.86it/s]
 66%|######6   | 314/475 [01:13<00:48,  3.31it/s]
 66%|######6   | 315/475 [01:13<00:48,  3.28it/s]
 67%|######6   | 316/475 [01:13<00:48,  3.29it/s]
 67%|######6   | 317/475 [01:13<00:44,  3.58it/s]
 67%|######6   | 318/475 [01:14<00:40,  3.86it/s]
 67%|######7   | 319/475 [01:14<00:39,  3.96it/s]
 67%|######7   | 320/475 [01:14<00:41,  3.69it/s]
 68%|######7   | 321/475 [01:15<00:45,  3.37it/s]
 68%|######7   | 322/475 [01:15<00:45,  3.37it/s]
 68%|######8   | 323/475 [01:15<00:45,  3.34it/s]
 68%|######8   | 324/475 [01:15<00:41,  3.68it/s]
 68%|######8   | 325/475 [01:15<00:35,  4.28it/s]
 69%|######8   | 326/475 [01:16<00:30,  4.85it/s]
 69%|######8   | 327/475 [01:16<00:31,  4.67it/s]
 69%|######9   | 328/475 [01:16<00:30,  4.77it/s]
 69%|######9   | 329/475 [01:16<00:39,  3.69it/s]
 69%|######9   | 330/475 [01:17<00:43,  3.35it/s]
 70%|######9   | 331/475 [01:17<00:36,  3.94it/s]
 70%|######9   | 332/475 [01:17<00:39,  3.64it/s]
 70%|#######   | 333/475 [01:18<00:39,  3.61it/s]
 70%|#######   | 334/475 [01:18<00:37,  3.75it/s]
 71%|#######   | 335/475 [01:18<00:34,  4.02it/s]
 71%|#######   | 336/475 [01:18<00:32,  4.27it/s]
 71%|#######   | 337/475 [01:19<00:34,  3.97it/s]
 71%|#######1  | 338/475 [01:19<00:33,  4.04it/s]
 71%|#######1  | 339/475 [01:19<00:35,  3.87it/s]
 72%|#######1  | 340/475 [01:19<00:36,  3.68it/s]
 72%|#######1  | 341/475 [01:20<00:35,  3.73it/s]
 72%|#######2  | 342/475 [01:20<00:35,  3.76it/s]
 72%|#######2  | 343/475 [01:20<00:33,  3.98it/s]
 72%|#######2  | 344/475 [01:20<00:30,  4.23it/s]
 73%|#######2  | 345/475 [01:20<00:27,  4.72it/s]
 73%|#######2  | 346/475 [01:21<00:28,  4.52it/s]
 73%|#######3  | 347/475 [01:21<00:29,  4.31it/s]
 73%|#######3  | 348/475 [01:21<00:30,  4.17it/s]
 73%|#######3  | 349/475 [01:21<00:30,  4.09it/s]
 74%|#######3  | 350/475 [01:22<00:31,  4.03it/s]
 74%|#######3  | 351/475 [01:22<00:32,  3.82it/s]
 74%|#######4  | 352/475 [01:22<00:30,  4.02it/s]
 74%|#######4  | 353/475 [01:22<00:30,  4.06it/s]
 75%|#######4  | 354/475 [01:23<00:30,  3.91it/s]
 75%|#######4  | 355/475 [01:23<00:30,  3.96it/s]
 75%|#######4  | 356/475 [01:23<00:28,  4.15it/s]
 75%|#######5  | 357/475 [01:24<00:33,  3.55it/s]
 75%|#######5  | 358/475 [01:24<00:31,  3.74it/s]
 76%|#######5  | 359/475 [01:24<00:29,  3.88it/s]
 76%|#######5  | 360/475 [01:25<00:50,  2.27it/s]
 76%|#######6  | 361/475 [01:25<00:43,  2.60it/s]
 76%|#######6  | 362/475 [01:25<00:38,  2.96it/s]
 76%|#######6  | 363/475 [01:26<00:33,  3.35it/s]
 77%|#######6  | 364/475 [01:26<00:30,  3.61it/s]
 77%|#######6  | 365/475 [01:26<00:29,  3.69it/s]
 77%|#######7  | 366/475 [01:26<00:26,  4.08it/s]
 77%|#######7  | 367/475 [01:27<00:27,  3.99it/s]
 77%|#######7  | 368/475 [01:27<00:32,  3.27it/s]
 78%|#######7  | 369/475 [01:27<00:29,  3.57it/s]
 78%|#######7  | 370/475 [01:27<00:27,  3.77it/s]
 78%|#######8  | 371/475 [01:28<00:28,  3.71it/s]
 78%|#######8  | 372/475 [01:28<00:28,  3.68it/s]
 79%|#######8  | 373/475 [01:28<00:26,  3.91it/s]
 79%|#######8  | 374/475 [01:28<00:24,  4.06it/s]
 79%|#######8  | 375/475 [01:29<00:24,  4.04it/s]
 79%|#######9  | 376/475 [01:29<00:25,  3.92it/s]
 79%|#######9  | 377/475 [01:29<00:25,  3.90it/s]
 80%|#######9  | 378/475 [01:29<00:25,  3.84it/s]
 80%|#######9  | 379/475 [01:30<00:30,  3.15it/s]
 80%|########  | 380/475 [01:30<00:26,  3.52it/s]
 80%|########  | 381/475 [01:30<00:24,  3.84it/s]
 80%|########  | 382/475 [01:31<00:23,  3.96it/s]
 81%|########  | 383/475 [01:31<00:23,  3.98it/s]
 81%|########  | 384/475 [01:31<00:21,  4.17it/s]
 81%|########1 | 385/475 [01:31<00:18,  4.76it/s]
 81%|########1 | 386/475 [01:31<00:18,  4.80it/s]
 81%|########1 | 387/475 [01:32<00:18,  4.73it/s]
 82%|########1 | 388/475 [01:32<00:19,  4.44it/s]
 82%|########1 | 389/475 [01:32<00:20,  4.29it/s]
 82%|########2 | 390/475 [01:32<00:19,  4.34it/s]
 82%|########2 | 391/475 [01:33<00:19,  4.29it/s]
 83%|########2 | 392/475 [01:33<00:18,  4.39it/s]
 83%|########2 | 393/475 [01:33<00:22,  3.68it/s]
 83%|########2 | 394/475 [01:33<00:20,  3.91it/s]
 83%|########3 | 395/475 [01:34<00:27,  2.89it/s]
 83%|########3 | 396/475 [01:34<00:25,  3.08it/s]
 84%|########3 | 397/475 [01:35<00:25,  3.07it/s]
 84%|########3 | 398/475 [01:35<00:23,  3.24it/s]
 84%|########4 | 399/475 [01:35<00:22,  3.42it/s]
 84%|########4 | 400/475 [01:35<00:20,  3.66it/s]
 84%|########4 | 401/475 [01:36<00:21,  3.50it/s]
 85%|########4 | 402/475 [01:36<00:20,  3.60it/s]
 85%|########4 | 403/475 [01:36<00:19,  3.66it/s]
 85%|########5 | 404/475 [01:36<00:17,  3.97it/s]
 85%|########5 | 405/475 [01:37<00:16,  4.19it/s]
 85%|########5 | 406/475 [01:37<00:16,  4.24it/s]
 86%|########5 | 407/475 [01:37<00:16,  4.22it/s]
 86%|########5 | 408/475 [01:37<00:15,  4.24it/s]
 86%|########6 | 409/475 [01:37<00:15,  4.32it/s]
 86%|########6 | 410/475 [01:38<00:15,  4.23it/s]
 87%|########6 | 411/475 [01:38<00:14,  4.46it/s]
 87%|########6 | 412/475 [01:38<00:14,  4.37it/s]
 87%|########6 | 413/475 [01:38<00:13,  4.53it/s]
 87%|########7 | 414/475 [01:39<00:13,  4.52it/s]
 87%|########7 | 415/475 [01:39<00:14,  4.05it/s]
 88%|########7 | 416/475 [01:39<00:15,  3.77it/s]
 88%|########7 | 417/475 [01:40<00:16,  3.50it/s]
 88%|########8 | 418/475 [01:40<00:16,  3.35it/s]
 88%|########8 | 419/475 [01:40<00:15,  3.66it/s]
 88%|########8 | 420/475 [01:40<00:14,  3.79it/s]
 89%|########8 | 421/475 [01:41<00:13,  3.91it/s]
 89%|########8 | 422/475 [01:41<00:15,  3.33it/s]
 89%|########9 | 423/475 [01:41<00:14,  3.51it/s]
 89%|########9 | 424/475 [01:41<00:13,  3.84it/s]
 89%|########9 | 425/475 [01:42<00:11,  4.21it/s]
 90%|########9 | 426/475 [01:42<00:11,  4.27it/s]
 90%|########9 | 427/475 [01:42<00:11,  4.30it/s]
 90%|######### | 428/475 [01:42<00:10,  4.43it/s]
 90%|######### | 429/475 [01:43<00:10,  4.34it/s]
 91%|######### | 430/475 [01:43<00:11,  3.92it/s]
 91%|######### | 431/475 [01:43<00:10,  4.18it/s]
 91%|######### | 432/475 [01:43<00:10,  4.06it/s]
 91%|#########1| 433/475 [01:44<00:14,  2.82it/s]
 91%|#########1| 434/475 [01:44<00:13,  2.94it/s]
 92%|#########1| 435/475 [01:44<00:12,  3.09it/s]
 92%|#########1| 436/475 [01:45<00:12,  3.08it/s]
 92%|#########2| 437/475 [01:45<00:11,  3.21it/s]
 92%|#########2| 438/475 [01:45<00:10,  3.59it/s]
 92%|#########2| 439/475 [01:46<00:09,  3.70it/s]
 93%|#########2| 440/475 [01:46<00:08,  4.03it/s]
 93%|#########2| 441/475 [01:46<00:08,  4.17it/s]
 93%|#########3| 442/475 [01:46<00:07,  4.26it/s]
 93%|#########3| 443/475 [01:46<00:07,  4.32it/s]
 93%|#########3| 444/475 [01:47<00:07,  4.24it/s]
 94%|#########3| 445/475 [01:47<00:06,  4.54it/s]
 94%|#########3| 446/475 [01:47<00:06,  4.66it/s]
 94%|#########4| 447/475 [01:47<00:06,  4.64it/s]
 94%|#########4| 448/475 [01:48<00:06,  4.35it/s]
 95%|#########4| 449/475 [01:48<00:06,  4.10it/s]
 95%|#########4| 450/475 [01:48<00:06,  4.15it/s]
 95%|#########4| 451/475 [01:48<00:06,  3.92it/s]
 95%|#########5| 452/475 [01:49<00:05,  4.07it/s]
 95%|#########5| 453/475 [01:49<00:05,  3.89it/s]
 96%|#########5| 454/475 [01:49<00:05,  3.66it/s]
 96%|#########5| 455/475 [01:49<00:05,  3.65it/s]
 96%|#########6| 456/475 [01:50<00:05,  3.74it/s]
 96%|#########6| 457/475 [01:50<00:04,  4.07it/s]
 96%|#########6| 458/475 [01:50<00:04,  4.16it/s]
 97%|#########6| 459/475 [01:50<00:03,  4.89it/s]
 97%|#########6| 460/475 [01:50<00:02,  5.63it/s]
 97%|#########7| 461/475 [01:51<00:02,  5.48it/s]
 97%|#########7| 462/475 [01:51<00:02,  5.28it/s]
 97%|#########7| 463/475 [01:51<00:02,  5.01it/s]
 98%|#########7| 464/475 [01:51<00:02,  4.75it/s]
 98%|#########7| 465/475 [01:51<00:02,  4.55it/s]
 98%|#########8| 466/475 [01:52<00:01,  4.52it/s]
 98%|#########8| 467/475 [01:52<00:01,  4.56it/s]
 99%|#########8| 468/475 [01:52<00:01,  4.70it/s]
 99%|#########8| 469/475 [01:52<00:01,  4.66it/s]
 99%|#########8| 470/475 [01:53<00:01,  4.42it/s]
 99%|#########9| 471/475 [01:53<00:00,  4.50it/s]
 99%|#########9| 472/475 [01:53<00:00,  4.23it/s]
100%|#########9| 473/475 [01:53<00:00,  4.25it/s]
100%|#########9| 474/475 [01:53<00:00,  4.16it/s]
100%|##########| 475/475 [01:54<00:00,  4.08it/s]
100%|##########| 475/475 [01:54<00:00,  4.16it/s]

  0%|          | 0/475 [00:00<?, ?it/s]
  0%|          | 1/475 [00:06<51:32,  6.52s/it]
  0%|          | 2/475 [00:20<1:25:52, 10.89s/it]
  1%|          | 3/475 [00:25<1:04:37,  8.22s/it]
  1%|          | 4/475 [00:29<50:58,  6.49s/it]
  1%|1         | 5/475 [00:33<43:45,  5.59s/it]
  1%|1         | 6/475 [00:40<47:50,  6.12s/it]
  1%|1         | 7/475 [00:50<57:58,  7.43s/it]
  2%|1         | 8/475 [00:55<52:06,  6.69s/it]
  2%|1         | 9/475 [01:01<49:18,  6.35s/it]
  2%|2         | 10/475 [01:05<43:36,  5.63s/it]
  2%|2         | 11/475 [01:09<40:51,  5.28s/it]
  3%|2         | 12/475 [01:17<45:35,  5.91s/it]
  3%|2         | 13/475 [01:22<44:06,  5.73s/it]
  3%|2         | 14/475 [01:25<38:09,  4.97s/it]
  3%|3         | 15/475 [01:30<38:02,  4.96s/it]
  3%|3         | 16/475 [01:36<39:04,  5.11s/it]
  4%|3         | 17/475 [01:38<31:56,  4.18s/it]
  4%|3         | 18/475 [01:44<35:48,  4.70s/it]
  4%|4         | 19/475 [01:45<29:24,  3.87s/it]
  4%|4         | 20/475 [01:56<44:39,  5.89s/it]
  4%|4         | 21/475 [01:58<34:51,  4.61s/it]
  5%|4         | 22/475 [02:06<44:05,  5.84s/it]
  5%|4         | 23/475 [02:15<50:48,  6.74s/it]
  5%|5         | 24/475 [02:20<47:01,  6.26s/it]
  5%|5         | 25/475 [02:23<38:23,  5.12s/it]
  5%|5         | 26/475 [02:29<40:12,  5.37s/it]
  6%|5         | 27/475 [02:35<42:21,  5.67s/it]
  6%|5         | 28/475 [02:42<44:48,  6.01s/it]
  6%|6         | 29/475 [02:47<41:59,  5.65s/it]
  6%|6         | 30/475 [02:53<43:17,  5.84s/it]
  7%|6         | 31/475 [02:56<36:21,  4.91s/it]
  7%|6         | 32/475 [03:06<47:52,  6.48s/it]
  7%|6         | 33/475 [03:12<45:49,  6.22s/it]
  7%|7         | 34/475 [03:15<40:26,  5.50s/it]
  7%|7         | 35/475 [03:28<56:31,  7.71s/it]
  8%|7         | 36/475 [03:31<45:05,  6.16s/it]
  8%|7         | 37/475 [03:37<45:46,  6.27s/it]
  8%|8         | 38/475 [03:42<42:54,  5.89s/it]
  8%|8         | 39/475 [03:45<36:11,  4.98s/it]
  8%|8         | 40/475 [03:50<35:14,  4.86s/it]
  9%|8         | 41/475 [03:56<37:07,  5.13s/it]
  9%|8         | 42/475 [04:02<40:57,  5.67s/it]
  9%|9         | 43/475 [04:08<39:42,  5.52s/it]
  9%|9         | 44/475 [04:10<33:30,  4.67s/it]
  9%|9         | 45/475 [04:23<51:43,  7.22s/it]
 10%|9         | 46/475 [04:34<58:06,  8.13s/it]
 10%|9         | 47/475 [04:38<48:51,  6.85s/it]
 10%|#         | 48/475 [04:52<1:05:06,  9.15s/it]
 10%|#         | 49/475 [05:04<1:11:36, 10.09s/it]
 11%|#         | 50/475 [05:10<1:01:36,  8.70s/it]
 11%|#         | 51/475 [05:16<55:04,  7.79s/it]
 11%|#         | 52/475 [05:20<47:07,  6.68s/it]
 11%|#1        | 53/475 [05:30<55:18,  7.86s/it]
 11%|#1        | 54/475 [05:35<48:40,  6.94s/it]
 12%|#1        | 55/475 [05:36<36:02,  5.15s/it]
 12%|#1        | 56/475 [05:40<33:56,  4.86s/it]
 12%|#2        | 57/475 [05:51<45:28,  6.53s/it]
 12%|#2        | 58/475 [05:54<38:37,  5.56s/it]
 12%|#2        | 59/475 [05:58<35:09,  5.07s/it]
 13%|#2        | 60/475 [06:02<34:06,  4.93s/it]
 13%|#2        | 61/475 [06:07<33:50,  4.90s/it]
 13%|#3        | 62/475 [06:17<44:42,  6.49s/it]
 13%|#3        | 63/475 [06:21<37:40,  5.49s/it]
 13%|#3        | 64/475 [06:25<34:29,  5.04s/it]
 14%|#3        | 65/475 [06:30<35:34,  5.21s/it]
 14%|#3        | 66/475 [06:38<40:52,  6.00s/it]
 14%|#4        | 67/475 [06:42<35:46,  5.26s/it]
 14%|#4        | 68/475 [06:51<45:05,  6.65s/it]
 15%|#4        | 69/475 [06:54<36:09,  5.34s/it]
 15%|#4        | 70/475 [06:57<32:18,  4.79s/it]
 15%|#4        | 71/475 [07:09<46:37,  6.92s/it]
 15%|#5        | 72/475 [07:19<52:35,  7.83s/it]
 15%|#5        | 73/475 [07:20<38:20,  5.72s/it]
 16%|#5        | 74/475 [07:21<28:42,  4.30s/it]
 16%|#5        | 75/475 [07:25<27:22,  4.11s/it]
 16%|#6        | 76/475 [07:35<39:25,  5.93s/it]
 16%|#6        | 77/475 [07:36<29:19,  4.42s/it]
 16%|#6        | 78/475 [07:47<43:20,  6.55s/it]
 17%|#6        | 79/475 [07:52<40:48,  6.18s/it]
 17%|#6        | 80/475 [07:58<40:04,  6.09s/it]
 17%|#7        | 81/475 [08:04<39:44,  6.05s/it]
 17%|#7        | 82/475 [08:16<50:52,  7.77s/it]
 17%|#7        | 83/475 [08:20<42:18,  6.47s/it]
 18%|#7        | 84/475 [08:25<39:27,  6.06s/it]
 18%|#7        | 85/475 [08:29<36:29,  5.61s/it]
 18%|#8        | 86/475 [08:37<41:23,  6.38s/it]
 18%|#8        | 87/475 [08:40<34:42,  5.37s/it]
 19%|#8        | 88/475 [08:44<30:21,  4.71s/it]
 19%|#8        | 89/475 [08:45<23:53,  3.71s/it]
 19%|#8        | 90/475 [08:46<17:49,  2.78s/it]
 19%|#9        | 91/475 [08:46<13:56,  2.18s/it]
 19%|#9        | 92/475 [08:47<11:26,  1.79s/it]
 20%|#9        | 93/475 [09:05<42:48,  6.72s/it]
 20%|#9        | 94/475 [09:11<39:58,  6.29s/it]
 20%|##        | 95/475 [09:14<34:36,  5.46s/it]
 20%|##        | 96/475 [09:25<44:10,  6.99s/it]
 20%|##        | 97/475 [09:37<53:04,  8.42s/it]
 21%|##        | 98/475 [09:41<46:12,  7.35s/it]
 21%|##        | 99/475 [09:46<40:20,  6.44s/it]
 21%|##1       | 100/475 [09:49<34:54,  5.59s/it]
 21%|##1       | 101/475 [09:57<38:23,  6.16s/it]
 21%|##1       | 102/475 [10:09<48:41,  7.83s/it]
 22%|##1       | 103/475 [10:15<45:51,  7.40s/it]
 22%|##1       | 104/475 [10:22<44:48,  7.25s/it]
 22%|##2       | 105/475 [10:26<39:10,  6.35s/it]
 22%|##2       | 106/475 [10:32<37:27,  6.09s/it]
 23%|##2       | 107/475 [10:36<34:59,  5.70s/it]
 23%|##2       | 108/475 [10:37<26:24,  4.32s/it]
 23%|##2       | 109/475 [10:38<19:47,  3.24s/it]
 23%|##3       | 110/475 [10:39<14:53,  2.45s/it]
 23%|##3       | 111/475 [10:39<11:29,  1.90s/it]
 24%|##3       | 112/475 [10:43<13:40,  2.26s/it]
 24%|##3       | 113/475 [10:44<12:52,  2.13s/it]
 24%|##4       | 114/475 [10:49<17:52,  2.97s/it]
 24%|##4       | 115/475 [10:52<17:32,  2.92s/it]
 24%|##4       | 116/475 [11:03<30:57,  5.17s/it]
 25%|##4       | 117/475 [11:23<59:04,  9.90s/it]
 25%|##4       | 118/475 [11:29<51:15,  8.62s/it]
 25%|##5       | 119/475 [11:43<59:55, 10.10s/it]
 25%|##5       | 120/475 [11:49<53:06,  8.98s/it]
 25%|##5       | 121/475 [11:56<49:51,  8.45s/it]
 26%|##5       | 122/475 [12:05<50:05,  8.51s/it]
 26%|##5       | 123/475 [12:10<43:13,  7.37s/it]
 26%|##6       | 124/475 [12:15<40:17,  6.89s/it]
 26%|##6       | 125/475 [12:24<42:39,  7.31s/it]
 27%|##6       | 126/475 [12:25<31:45,  5.46s/it]
 27%|##6       | 127/475 [12:25<23:18,  4.02s/it]
 27%|##6       | 128/475 [12:26<17:51,  3.09s/it]
 27%|##7       | 129/475 [12:27<13:55,  2.41s/it]
 27%|##7       | 130/475 [12:28<11:11,  1.95s/it]
 28%|##7       | 131/475 [12:39<26:02,  4.54s/it]
 28%|##7       | 132/475 [12:46<30:46,  5.38s/it]
 28%|##8       | 133/475 [13:06<54:59,  9.65s/it]
 28%|##8       | 134/475 [13:20<1:03:42, 11.21s/it]
 28%|##8       | 135/475 [13:25<51:57,  9.17s/it]
 29%|##8       | 136/475 [13:48<1:15:04, 13.29s/it]
 29%|##8       | 137/475 [13:51<58:16, 10.34s/it]
 29%|##9       | 138/475 [14:10<1:11:47, 12.78s/it]
 29%|##9       | 139/475 [14:15<58:57, 10.53s/it]
 29%|##9       | 140/475 [14:17<44:15,  7.93s/it]
 30%|##9       | 141/475 [14:20<35:47,  6.43s/it]
 30%|##9       | 142/475 [14:22<29:28,  5.31s/it]
 30%|###       | 143/475 [14:23<22:06,  3.99s/it]
 30%|###       | 144/475 [14:28<23:27,  4.25s/it]
 31%|###       | 145/475 [14:29<17:40,  3.21s/it]
 31%|###       | 146/475 [14:30<13:14,  2.42s/it]
 31%|###       | 147/475 [14:30<10:18,  1.88s/it]
 31%|###1      | 148/475 [14:31<08:33,  1.57s/it]
 31%|###1      | 149/475 [14:33<09:47,  1.80s/it]
 32%|###1      | 150/475 [14:41<18:45,  3.46s/it]
 32%|###1      | 151/475 [14:48<24:31,  4.54s/it]
 32%|###2      | 152/475 [14:52<24:09,  4.49s/it]
 32%|###2      | 153/475 [15:04<36:27,  6.79s/it]
 32%|###2      | 154/475 [15:09<33:33,  6.27s/it]
 33%|###2      | 155/475 [15:30<55:54, 10.48s/it]
 33%|###2      | 156/475 [15:32<43:11,  8.12s/it]
 33%|###3      | 157/475 [15:40<41:39,  7.86s/it]
 33%|###3      | 158/475 [15:48<42:18,  8.01s/it]
 33%|###3      | 159/475 [15:52<35:45,  6.79s/it]
 34%|###3      | 160/475 [15:55<29:54,  5.70s/it]
 34%|###3      | 161/475 [16:01<29:37,  5.66s/it]
 34%|###4      | 162/475 [16:06<28:57,  5.55s/it]
 34%|###4      | 163/475 [16:09<25:46,  4.96s/it]
 35%|###4      | 164/475 [16:15<26:10,  5.05s/it]
 35%|###4      | 165/475 [16:16<20:53,  4.04s/it]
 35%|###4      | 166/475 [16:17<15:38,  3.04s/it]
 35%|###5      | 167/475 [16:18<12:33,  2.45s/it]
 35%|###5      | 168/475 [16:29<25:14,  4.93s/it]
 36%|###5      | 169/475 [16:38<31:54,  6.26s/it]
 36%|###5      | 170/475 [16:48<37:24,  7.36s/it]
 36%|###6      | 171/475 [16:51<30:13,  5.96s/it]
 36%|###6      | 172/475 [17:00<34:50,  6.90s/it]
 36%|###6      | 173/475 [17:04<31:01,  6.16s/it]
 37%|###6      | 174/475 [17:16<39:22,  7.85s/it]
 37%|###6      | 175/475 [17:22<35:59,  7.20s/it]
 37%|###7      | 176/475 [17:29<35:44,  7.17s/it]
 37%|###7      | 177/475 [17:32<29:47,  6.00s/it]
 37%|###7      | 178/475 [17:38<29:19,  5.93s/it]
 38%|###7      | 179/475 [17:40<24:01,  4.87s/it]
 38%|###7      | 180/475 [17:44<22:33,  4.59s/it]
 38%|###8      | 181/475 [17:54<30:01,  6.13s/it]
 38%|###8      | 182/475 [18:03<33:34,  6.87s/it]
 39%|###8      | 183/475 [18:04<25:56,  5.33s/it]
 39%|###8      | 184/475 [18:06<19:46,  4.08s/it]
 39%|###8      | 185/475 [18:07<15:15,  3.16s/it]
 39%|###9      | 186/475 [18:08<12:39,  2.63s/it]
 39%|###9      | 187/475 [18:13<16:14,  3.38s/it]
 40%|###9      | 188/475 [18:27<31:54,  6.67s/it]
 40%|###9      | 189/475 [18:33<30:28,  6.39s/it]
 40%|####      | 190/475 [18:35<23:34,  4.96s/it]
 40%|####      | 191/475 [18:40<24:01,  5.08s/it]
 40%|####      | 192/475 [18:50<30:40,  6.50s/it]
 41%|####      | 193/475 [18:55<28:37,  6.09s/it]
 41%|####      | 194/475 [18:59<25:22,  5.42s/it]
 41%|####1     | 195/475 [19:12<35:48,  7.67s/it]
 41%|####1     | 196/475 [19:19<34:28,  7.41s/it]
 41%|####1     | 197/475 [19:26<34:07,  7.36s/it]
 42%|####1     | 198/475 [19:33<33:49,  7.33s/it]
 42%|####1     | 199/475 [19:37<28:33,  6.21s/it]
 42%|####2     | 200/475 [19:38<21:50,  4.76s/it]
 42%|####2     | 201/475 [19:39<16:35,  3.63s/it]
 43%|####2     | 202/475 [19:40<12:41,  2.79s/it]
 43%|####2     | 203/475 [19:41<09:49,  2.17s/it]
 43%|####2     | 204/475 [19:41<07:40,  1.70s/it]
 43%|####3     | 205/475 [19:42<06:36,  1.47s/it]
 43%|####3     | 206/475 [19:44<06:27,  1.44s/it]
 44%|####3     | 207/475 [19:48<10:17,  2.30s/it]
 44%|####3     | 208/475 [19:56<18:30,  4.16s/it]
 44%|####4     | 209/475 [20:03<21:01,  4.74s/it]
 44%|####4     | 210/475 [20:15<31:35,  7.15s/it]
 44%|####4     | 211/475 [20:28<38:21,  8.72s/it]
 45%|####4     | 212/475 [20:36<37:06,  8.46s/it]
 45%|####4     | 213/475 [20:42<33:55,  7.77s/it]
 45%|####5     | 214/475 [20:45<28:21,  6.52s/it]
 45%|####5     | 215/475 [20:51<27:48,  6.42s/it]
 45%|####5     | 216/475 [20:59<28:38,  6.63s/it]
 46%|####5     | 217/475 [21:03<26:02,  6.06s/it]
 46%|####5     | 218/475 [21:07<23:25,  5.47s/it]
 46%|####6     | 219/475 [21:09<18:53,  4.43s/it]
 46%|####6     | 220/475 [21:17<23:09,  5.45s/it]
 47%|####6     | 221/475 [21:21<21:16,  5.03s/it]
 47%|####6     | 222/475 [21:22<15:47,  3.75s/it]
 47%|####6     | 223/475 [21:23<12:14,  2.91s/it]
 47%|####7     | 224/475 [21:24<09:27,  2.26s/it]
 47%|####7     | 225/475 [21:24<07:07,  1.71s/it]
 48%|####7     | 226/475 [21:33<15:53,  3.83s/it]
 48%|####7     | 227/475 [21:37<15:45,  3.81s/it]
 48%|####8     | 228/475 [21:41<16:38,  4.04s/it]
 48%|####8     | 229/475 [21:53<25:41,  6.26s/it]
 48%|####8     | 230/475 [22:01<27:34,  6.75s/it]
 49%|####8     | 231/475 [22:11<32:08,  7.90s/it]
 49%|####8     | 232/475 [22:16<28:13,  6.97s/it]
 49%|####9     | 233/475 [22:25<30:56,  7.67s/it]
 49%|####9     | 234/475 [22:29<25:22,  6.32s/it]
 49%|####9     | 235/475 [22:34<24:51,  6.21s/it]
 50%|####9     | 236/475 [22:45<29:17,  7.36s/it]
 50%|####9     | 237/475 [22:49<25:43,  6.48s/it]
 50%|#####     | 238/475 [22:55<24:43,  6.26s/it]
 50%|#####     | 239/475 [22:58<20:51,  5.30s/it]
 51%|#####     | 240/475 [23:02<19:47,  5.05s/it]
 51%|#####     | 241/475 [23:07<19:50,  5.09s/it]
 51%|#####     | 242/475 [23:13<20:14,  5.21s/it]
 51%|#####1    | 243/475 [23:14<15:12,  3.93s/it]
 51%|#####1    | 244/475 [23:15<11:23,  2.96s/it]
 52%|#####1    | 245/475 [23:20<13:56,  3.64s/it]
 52%|#####1    | 246/475 [23:21<11:40,  3.06s/it]
 52%|#####2    | 247/475 [23:32<20:38,  5.43s/it]
 52%|#####2    | 248/475 [23:41<24:21,  6.44s/it]
 52%|#####2    | 249/475 [24:01<39:40, 10.53s/it]
 53%|#####2    | 250/475 [24:12<39:11, 10.45s/it]
 53%|#####2    | 251/475 [24:30<47:27, 12.71s/it]
 53%|#####3    | 252/475 [24:32<35:19,  9.50s/it]
 53%|#####3    | 253/475 [24:38<32:08,  8.69s/it]
 53%|#####3    | 254/475 [24:43<27:23,  7.44s/it]
 54%|#####3    | 255/475 [24:45<20:55,  5.71s/it]
 54%|#####3    | 256/475 [24:55<26:24,  7.24s/it]
 54%|#####4    | 257/475 [25:00<23:01,  6.34s/it]
 54%|#####4    | 258/475 [25:06<22:56,  6.34s/it]
 55%|#####4    | 259/475 [25:09<18:46,  5.21s/it]
 55%|#####4    | 260/475 [25:14<18:46,  5.24s/it]
 55%|#####4    | 261/475 [25:20<19:32,  5.48s/it]
 55%|#####5    | 262/475 [25:26<20:10,  5.68s/it]
 55%|#####5    | 263/475 [25:28<16:31,  4.68s/it]
 56%|#####5    | 264/475 [25:29<12:16,  3.49s/it]
 56%|#####5    | 265/475 [25:32<11:44,  3.35s/it]
 56%|#####6    | 266/475 [25:36<12:01,  3.45s/it]
 56%|#####6    | 267/475 [25:43<15:30,  4.47s/it]
 56%|#####6    | 268/475 [25:50<18:49,  5.46s/it]
 57%|#####6    | 269/475 [26:05<28:10,  8.21s/it]
 57%|#####6    | 270/475 [26:10<24:36,  7.20s/it]
 57%|#####7    | 271/475 [26:11<18:20,  5.40s/it]
 57%|#####7    | 272/475 [26:24<26:21,  7.79s/it]
 57%|#####7    | 273/475 [26:29<22:46,  6.76s/it]
 58%|#####7    | 274/475 [26:33<19:59,  5.97s/it]
 58%|#####7    | 275/475 [26:36<17:13,  5.17s/it]
 58%|#####8    | 276/475 [26:46<21:23,  6.45s/it]
 58%|#####8    | 277/475 [26:47<16:39,  5.05s/it]
 59%|#####8    | 278/475 [26:49<13:30,  4.11s/it]
 59%|#####8    | 279/475 [26:52<11:32,  3.53s/it]
 59%|#####8    | 280/475 [26:56<12:14,  3.77s/it]
 59%|#####9    | 281/475 [27:03<15:17,  4.73s/it]
 59%|#####9    | 282/475 [27:13<20:35,  6.40s/it]
 60%|#####9    | 283/475 [27:16<17:28,  5.46s/it]
 60%|#####9    | 284/475 [27:21<16:13,  5.10s/it]
 60%|######    | 285/475 [27:23<13:42,  4.33s/it]
 60%|######    | 286/475 [27:39<24:25,  7.76s/it]
 60%|######    | 287/475 [27:43<20:52,  6.66s/it]
 61%|######    | 288/475 [27:49<19:49,  6.36s/it]
 61%|######    | 289/475 [27:54<18:44,  6.04s/it]
 61%|######1   | 290/475 [27:57<15:40,  5.08s/it]
 61%|######1   | 291/475 [28:06<19:01,  6.20s/it]
 61%|######1   | 292/475 [28:12<18:45,  6.15s/it]
 62%|######1   | 293/475 [28:16<16:58,  5.60s/it]
 62%|######1   | 294/475 [28:19<14:41,  4.87s/it]
 62%|######2   | 295/475 [28:27<17:28,  5.83s/it]
 62%|######2   | 296/475 [28:33<17:12,  5.77s/it]
 63%|######2   | 297/475 [28:38<16:47,  5.66s/it]
 63%|######2   | 298/475 [28:42<14:59,  5.08s/it]
 63%|######2   | 299/475 [28:49<16:58,  5.79s/it]
 63%|######3   | 300/475 [28:54<15:41,  5.38s/it]
 63%|######3   | 301/475 [29:00<16:21,  5.64s/it]
 64%|######3   | 302/475 [29:05<15:17,  5.30s/it]
 64%|######3   | 303/475 [29:08<13:26,  4.69s/it]
 64%|######4   | 304/475 [29:09<10:32,  3.70s/it]
 64%|######4   | 305/475 [29:15<12:20,  4.36s/it]
 64%|######4   | 306/475 [29:20<12:24,  4.40s/it]
 65%|######4   | 307/475 [29:24<12:23,  4.42s/it]
 65%|######4   | 308/475 [29:30<13:48,  4.96s/it]
 65%|######5   | 309/475 [29:34<12:49,  4.63s/it]
 65%|######5   | 310/475 [29:42<15:34,  5.66s/it]
 65%|######5   | 311/475 [29:46<14:12,  5.20s/it]
 66%|######5   | 312/475 [29:52<14:24,  5.30s/it]
 66%|######5   | 313/475 [29:57<14:01,  5.19s/it]
 66%|######6   | 314/475 [30:01<12:50,  4.79s/it]
 66%|######6   | 315/475 [30:08<15:00,  5.63s/it]
 67%|######6   | 316/475 [30:13<13:56,  5.26s/it]
 67%|######6   | 317/475 [30:21<16:26,  6.24s/it]
 67%|######6   | 318/475 [30:25<14:15,  5.45s/it]
 67%|######7   | 319/475 [30:30<14:00,  5.39s/it]
 67%|######7   | 320/475 [30:31<10:47,  4.18s/it]
 68%|######7   | 321/475 [30:33<08:29,  3.31s/it]
 68%|######7   | 322/475 [30:37<08:59,  3.53s/it]
 68%|######8   | 323/475 [30:38<07:29,  2.96s/it]
 68%|######8   | 324/475 [30:44<09:22,  3.72s/it]
 68%|######8   | 325/475 [30:47<08:50,  3.54s/it]
 69%|######8   | 326/475 [30:54<11:14,  4.53s/it]
 69%|######8   | 327/475 [30:59<11:44,  4.76s/it]
 69%|######9   | 328/475 [31:04<12:01,  4.91s/it]
 69%|######9   | 329/475 [31:07<10:21,  4.26s/it]
 69%|######9   | 330/475 [31:11<09:45,  4.04s/it]
 70%|######9   | 331/475 [31:16<10:52,  4.53s/it]
 70%|######9   | 332/475 [31:27<15:19,  6.43s/it]
 70%|#######   | 333/475 [31:36<17:03,  7.21s/it]
 70%|#######   | 334/475 [31:41<15:02,  6.40s/it]
 71%|#######   | 335/475 [31:51<17:58,  7.70s/it]
 71%|#######   | 336/475 [31:54<14:06,  6.09s/it]
 71%|#######   | 337/475 [31:59<13:41,  5.95s/it]
 71%|#######1  | 338/475 [32:02<10:59,  4.81s/it]
 71%|#######1  | 339/475 [32:05<09:42,  4.28s/it]
 72%|#######1  | 340/475 [32:10<10:13,  4.54s/it]
 72%|#######1  | 341/475 [32:19<13:16,  5.95s/it]
 72%|#######2  | 342/475 [32:27<14:33,  6.57s/it]
 72%|#######2  | 343/475 [32:31<12:44,  5.79s/it]
 72%|#######2  | 344/475 [32:43<16:56,  7.76s/it]
 73%|#######2  | 345/475 [32:54<18:58,  8.76s/it]
 73%|#######2  | 346/475 [32:57<15:06,  7.02s/it]
 73%|#######3  | 347/475 [33:04<14:58,  7.02s/it]
 73%|#######3  | 348/475 [33:10<13:57,  6.60s/it]
 73%|#######3  | 349/475 [33:16<13:20,  6.35s/it]
 74%|#######3  | 350/475 [33:27<16:21,  7.85s/it]
 74%|#######3  | 351/475 [33:35<16:11,  7.83s/it]
 74%|#######4  | 352/475 [33:40<14:11,  6.92s/it]
 74%|#######4  | 353/475 [33:44<12:38,  6.21s/it]
 75%|#######4  | 354/475 [33:49<11:25,  5.67s/it]
 75%|#######4  | 355/475 [34:11<21:34, 10.79s/it]
 75%|#######4  | 356/475 [34:19<19:10,  9.67s/it]
 75%|#######5  | 357/475 [34:22<15:14,  7.75s/it]
 75%|#######5  | 358/475 [34:23<11:29,  5.89s/it]
 76%|#######5  | 359/475 [34:29<11:19,  5.86s/it]
 76%|#######5  | 360/475 [34:31<09:12,  4.80s/it]
 76%|#######6  | 361/475 [34:35<08:14,  4.33s/it]
 76%|#######6  | 362/475 [34:41<09:10,  4.87s/it]
 76%|#######6  | 363/475 [34:44<08:12,  4.40s/it]
 77%|#######6  | 364/475 [34:50<09:04,  4.90s/it]
 77%|#######6  | 365/475 [34:54<08:09,  4.45s/it]
 77%|#######7  | 366/475 [34:57<07:40,  4.22s/it]
 77%|#######7  | 367/475 [35:09<11:39,  6.48s/it]
 77%|#######7  | 368/475 [35:12<09:41,  5.44s/it]
 78%|#######7  | 369/475 [35:18<10:06,  5.72s/it]
 78%|#######7  | 370/475 [35:23<09:16,  5.30s/it]
 78%|#######8  | 371/475 [35:27<08:34,  4.95s/it]
 78%|#######8  | 372/475 [35:32<08:30,  4.95s/it]
 79%|#######8  | 373/475 [35:35<07:27,  4.38s/it]
 79%|#######8  | 374/475 [35:39<07:18,  4.34s/it]
 79%|#######8  | 375/475 [35:47<08:53,  5.34s/it]
 79%|#######9  | 376/475 [35:56<10:43,  6.50s/it]
 79%|#######9  | 377/475 [35:59<08:57,  5.49s/it]
 80%|#######9  | 378/475 [36:04<08:42,  5.38s/it]
 80%|#######9  | 379/475 [36:09<08:09,  5.10s/it]
 80%|########  | 380/475 [36:12<07:21,  4.65s/it]
 80%|########  | 381/475 [36:16<06:39,  4.25s/it]
 80%|########  | 382/475 [36:21<06:53,  4.45s/it]
 81%|########  | 383/475 [36:22<05:36,  3.66s/it]
 81%|########  | 384/475 [36:26<05:18,  3.50s/it]
 81%|########1 | 385/475 [36:33<07:14,  4.83s/it]
 81%|########1 | 386/475 [36:38<06:52,  4.64s/it]
 81%|########1 | 387/475 [36:49<09:40,  6.60s/it]
 82%|########1 | 388/475 [36:55<09:32,  6.58s/it]
 82%|########1 | 389/475 [37:04<10:16,  7.17s/it]
 82%|########2 | 390/475 [37:10<09:35,  6.78s/it]
 82%|########2 | 391/475 [37:17<09:32,  6.81s/it]
 83%|########2 | 392/475 [37:27<10:50,  7.84s/it]
 83%|########2 | 393/475 [37:31<09:14,  6.76s/it]
 83%|########2 | 394/475 [37:35<08:04,  5.98s/it]
 83%|########3 | 395/475 [37:40<07:26,  5.58s/it]
 83%|########3 | 396/475 [37:49<08:50,  6.71s/it]
 84%|########3 | 397/475 [37:54<08:00,  6.16s/it]
 84%|########3 | 398/475 [38:04<09:17,  7.23s/it]
 84%|########4 | 399/475 [38:17<11:23,  8.99s/it]
 84%|########4 | 400/475 [38:24<10:28,  8.37s/it]
 84%|########4 | 401/475 [38:34<10:54,  8.85s/it]
 85%|########4 | 402/475 [38:38<08:52,  7.29s/it]
 85%|########4 | 403/475 [38:45<08:41,  7.25s/it]
 85%|########5 | 404/475 [38:50<07:49,  6.62s/it]
 85%|########5 | 405/475 [38:53<06:37,  5.68s/it]
 85%|########5 | 406/475 [39:00<06:56,  6.04s/it]
 86%|########5 | 407/475 [39:06<06:38,  5.86s/it]
 86%|########5 | 408/475 [39:08<05:14,  4.69s/it]
 86%|########6 | 409/475 [39:15<06:01,  5.48s/it]
 86%|########6 | 410/475 [39:19<05:28,  5.05s/it]
 87%|########6 | 411/475 [39:26<06:05,  5.71s/it]
 87%|########6 | 412/475 [39:34<06:45,  6.43s/it]
 87%|########6 | 413/475 [39:40<06:29,  6.29s/it]
 87%|########7 | 414/475 [39:47<06:25,  6.32s/it]
 87%|########7 | 415/475 [39:54<06:40,  6.67s/it]
 88%|########7 | 416/475 [40:00<06:23,  6.51s/it]
 88%|########7 | 417/475 [40:08<06:41,  6.92s/it]
 88%|########8 | 418/475 [40:18<07:29,  7.89s/it]
 88%|########8 | 419/475 [40:21<05:55,  6.34s/it]
 88%|########8 | 420/475 [40:29<06:08,  6.69s/it]
 89%|########8 | 421/475 [40:30<04:33,  5.07s/it]
 89%|########8 | 422/475 [40:33<03:52,  4.38s/it]
 89%|########9 | 423/475 [40:37<03:51,  4.46s/it]
 89%|########9 | 424/475 [40:40<03:28,  4.08s/it]
 89%|########9 | 425/475 [40:44<03:13,  3.88s/it]
 90%|########9 | 426/475 [40:48<03:15,  3.98s/it]
 90%|########9 | 427/475 [40:50<02:39,  3.33s/it]
 90%|######### | 428/475 [41:06<05:33,  7.09s/it]
 90%|######### | 429/475 [41:10<04:50,  6.31s/it]
 91%|######### | 430/475 [41:17<04:55,  6.57s/it]
 91%|######### | 431/475 [41:25<05:03,  6.89s/it]
 91%|######### | 432/475 [41:55<09:47, 13.66s/it]
 91%|#########1| 433/475 [42:00<07:52, 11.26s/it]
 91%|#########1| 434/475 [42:20<09:28, 13.86s/it]
 92%|#########1| 435/475 [42:28<08:06, 12.17s/it]
 92%|#########1| 436/475 [42:31<06:06,  9.40s/it]
 92%|#########2| 437/475 [42:37<05:10,  8.16s/it]
 92%|#########2| 438/475 [42:41<04:15,  6.91s/it]
 92%|#########2| 439/475 [42:45<03:45,  6.26s/it]
 93%|#########2| 440/475 [42:57<04:33,  7.81s/it]
 93%|#########2| 441/475 [43:04<04:22,  7.72s/it]
 93%|#########3| 442/475 [43:09<03:47,  6.91s/it]
 93%|#########3| 443/475 [43:19<04:09,  7.81s/it]
 93%|#########3| 444/475 [43:28<04:10,  8.09s/it]
 94%|#########3| 445/475 [43:34<03:48,  7.63s/it]
 94%|#########3| 446/475 [43:39<03:14,  6.69s/it]
 94%|#########4| 447/475 [43:44<02:57,  6.34s/it]
 94%|#########4| 448/475 [43:48<02:26,  5.43s/it]
 95%|#########4| 449/475 [43:56<02:45,  6.36s/it]
 95%|#########4| 450/475 [44:03<02:38,  6.32s/it]
 95%|#########4| 451/475 [44:19<03:43,  9.29s/it]
 95%|#########5| 452/475 [44:27<03:28,  9.08s/it]
 95%|#########5| 453/475 [44:36<03:16,  8.94s/it]
 96%|#########5| 454/475 [44:43<02:55,  8.36s/it]
 96%|#########5| 455/475 [45:00<03:37, 10.90s/it]
 96%|#########6| 456/475 [45:06<02:58,  9.41s/it]
 96%|#########6| 457/475 [45:10<02:19,  7.73s/it]
 96%|#########6| 458/475 [45:15<01:58,  6.95s/it]
 97%|#########6| 459/475 [45:23<01:55,  7.24s/it]
 97%|#########6| 460/475 [45:37<02:22,  9.49s/it]
 97%|#########7| 461/475 [45:58<03:01, 12.97s/it]
 97%|#########7| 462/475 [46:10<02:44, 12.65s/it]
 97%|#########7| 463/475 [46:18<02:13, 11.11s/it]
 98%|#########7| 464/475 [46:20<01:33,  8.52s/it]
 98%|#########7| 465/475 [46:35<01:43, 10.35s/it]
 98%|#########8| 466/475 [46:54<01:57, 13.07s/it]
 98%|#########8| 467/475 [47:04<01:36, 12.05s/it]
 99%|#########8| 468/475 [47:09<01:09,  9.88s/it]
 99%|#########8| 469/475 [47:17<00:56,  9.44s/it]
 99%|#########8| 470/475 [47:23<00:41,  8.33s/it]
 99%|#########9| 471/475 [47:27<00:27,  6.90s/it]
 99%|#########9| 472/475 [47:33<00:20,  6.71s/it]
100%|#########9| 473/475 [47:41<00:14,  7.09s/it]
100%|#########9| 474/475 [47:47<00:06,  6.81s/it]
100%|##########| 475/475 [47:53<00:00,  6.55s/it]
100%|##########| 475/475 [47:53<00:00,  6.05s/it]

From the fitted models we will first illustrate the estimation of q-space indices. We will compare the estimation using only Laplacian regularization (MAPL), using only the global positivity constraint (MAP+), using only positivity in discrete points (CMAP), or using both Laplacian regularization and positivity in discrete points (CMAPL). We first show the RTOP [Ozarslan2013].

compare_maps(fits, maps=['rtop'], fit_labels=fit_labels, map_labels=['RTOP'],
             filename='MAPMRI_rtop.png')
reconst mapmri
examples_built/07_reconstruction/MAPMRI_rtop.png

It can be seen that all maps appear quite smooth and similar, although it is clear that the global positivity constraints provide smoother maps than the discrete constraints. Higher Laplacian weights also produce smoother maps, but tend to suppress the estimated RTOP values. The similarity and differences in reconstruction can be further illustrated by visualizing the analytic norm of the Laplacian of the fitted signal.

compare_maps(fits, maps=['norm_of_laplacian_signal'], fit_labels=fit_labels,
             map_labels=['Norm of Laplacian'],
             map_kwargs={'vmin': 0, 'vmax': 3},
             filename='MAPMRI_norm_laplacian.png')
reconst mapmri
examples_built/07_reconstruction/MAPMRI_norm_laplacian.png

A high Laplacian norm indicates that the gradient in the three-dimensional signal reconstruction changes a lot – something that may indicate spurious oscillations. In the Laplacian reconstruction (left) we see that there are some isolated voxels that have a higher norm than the rest. In the positivity constrained reconstruction the norm is already smoother. When both methods are used together the overall norm gets smoother still, since both smoothness of the signal and positivity of the propagator are imposed.

From now on we will just use the combined approach and the globally constrained approach, show all maps we can generate, and explain their significance.

fits = fits[2:]
fit_labels = fit_labels[2:]

compare_maps(fits, maps=['msd', 'qiv', 'rtop', 'rtap', 'rtpp'],
             fit_labels=fit_labels,
             map_labels=['MSD', 'QIV', 'RTOP', 'RTAP', 'RTPP'],
             filename='MAPMRI_maps.png')
reconst mapmri
examples_built/07_reconstruction/MAPMRI_maps.png

From left to right:

  • Mean squared displacement (MSD) is a measure for how far protons are able to diffuse. a decrease in MSD indicates protons are hindered/restricted more, as can be seen by the high MSD in the CSF, but low in the white matter.

  • Q-space Inverse Variance (QIV) is a measure of variance in the signal, which is said to have higher contrast to white matter than the MSD [Hosseinbor2013]. QIV has also been shown to have high sensitivity to tissue composition change in a simulation study [Fick2016b].

  • Return-to-origin probability (RTOP) quantifies the probability that a proton will be at the same position at the first and second diffusion gradient pulse. A higher RTOP indicates that the volume a spin is inside of is smaller, meaning more overall restriction. This is illustrated by the low values in CSF and high values in white matter.

  • Return-to-axis probability (RTAP) is a directional index that quantifies the probability that a proton will be along the axis of the main eigenvector of a diffusion tensor during both diffusion gradient pulses. RTAP has been related to the apparent axon diameter [Ozarslan2013] [Fick2016a] under several strong assumptions on the tissue composition and acquisition protocol.

  • Return-to-plane probability (RTPP) is a directional index that quantifies the probability that a proton will be on the plane perpendicular to the main eigenvector of a diffusion tensor during both gradient pulses. RTPP is related to the length of a pore [Ozarslan2013] but in practice should be similar to that of Gaussian diffusion.

It is also possible to estimate the amount of non-Gaussian diffusion in every voxel [Ozarslan2013]. This quantity is estimated through the ratio between Gaussian volume (MAP-MRI’s first basis function) and the non-Gaussian volume (all other basis functions) of the fitted signal. For this value to be physically meaningful we must use a b-value threshold in the MAP-MRI model. This threshold makes the scale estimation in MAP-MRI use only samples that realistically describe Gaussian diffusion, i.e., at low b-values.

map_model_both_ng = mapmri.MapmriModel(gtab, radial_order=radial_order,
                                       laplacian_regularization=True,
                                       laplacian_weighting=.05,
                                       positivity_constraint=True,
                                       bval_threshold=2000)

map_model_plus_ng = mapmri.MapmriModel(gtab, radial_order=radial_order,
                                       positivity_constraint=True,
                                       global_constraints=True,
                                       bval_threshold=2000)

mapfit_both_ng = map_model_both_ng.fit(data_small)
mapfit_plus_ng = map_model_plus_ng.fit(data_small)

fits = [mapfit_both_ng, mapfit_plus_ng]
fit_labels = ['CMAPL', 'MAP+']

compare_maps(fits, maps=['ng', 'ng_perpendicular', 'ng_parallel'],
             fit_labels=fit_labels,
             map_labels=['NG', 'NG perpendicular', 'NG parallel'],
             filename='MAPMRI_ng.png')
reconst mapmri
  0%|          | 0/475 [00:00<?, ?it/s]
  0%|          | 1/475 [00:00<01:22,  5.72it/s]
  0%|          | 2/475 [00:00<01:08,  6.94it/s]
  1%|          | 3/475 [00:00<01:23,  5.68it/s]
  1%|          | 4/475 [00:00<01:25,  5.53it/s]
  1%|1         | 5/475 [00:00<01:20,  5.82it/s]
  1%|1         | 6/475 [00:01<01:41,  4.63it/s]
  1%|1         | 7/475 [00:01<01:37,  4.78it/s]
  2%|1         | 8/475 [00:01<02:24,  3.23it/s]
  2%|1         | 9/475 [00:02<03:02,  2.55it/s]
  2%|2         | 10/475 [00:02<02:57,  2.62it/s]
  2%|2         | 11/475 [00:03<02:30,  3.09it/s]
  3%|2         | 12/475 [00:03<02:08,  3.61it/s]
  3%|2         | 13/475 [00:03<02:00,  3.82it/s]
  3%|2         | 14/475 [00:03<01:56,  3.94it/s]
  3%|3         | 15/475 [00:03<01:56,  3.96it/s]
  3%|3         | 16/475 [00:04<01:51,  4.12it/s]
  4%|3         | 17/475 [00:04<01:44,  4.37it/s]
  4%|3         | 18/475 [00:04<01:52,  4.06it/s]
  4%|4         | 19/475 [00:04<01:47,  4.24it/s]
  4%|4         | 20/475 [00:04<01:33,  4.85it/s]
  4%|4         | 21/475 [00:05<01:21,  5.54it/s]
  5%|4         | 22/475 [00:05<01:46,  4.25it/s]
  5%|4         | 23/475 [00:05<01:54,  3.96it/s]
  5%|5         | 24/475 [00:05<01:50,  4.07it/s]
  5%|5         | 25/475 [00:06<02:15,  3.33it/s]
  5%|5         | 26/475 [00:06<02:16,  3.29it/s]
  6%|5         | 27/475 [00:06<02:03,  3.62it/s]
  6%|5         | 28/475 [00:07<02:24,  3.10it/s]
  6%|6         | 29/475 [00:07<02:38,  2.81it/s]
  6%|6         | 30/475 [00:07<02:17,  3.23it/s]
  7%|6         | 31/475 [00:08<02:06,  3.51it/s]
  7%|6         | 32/475 [00:08<02:07,  3.48it/s]
  7%|6         | 33/475 [00:08<01:55,  3.84it/s]
  7%|7         | 34/475 [00:08<02:02,  3.61it/s]
  7%|7         | 35/475 [00:09<01:52,  3.92it/s]
  8%|7         | 36/475 [00:09<01:41,  4.33it/s]
  8%|7         | 37/475 [00:09<01:37,  4.51it/s]
  8%|8         | 38/475 [00:09<01:47,  4.05it/s]
  8%|8         | 39/475 [00:10<01:41,  4.31it/s]
  9%|8         | 41/475 [00:10<01:19,  5.49it/s]
  9%|8         | 42/475 [00:10<01:13,  5.86it/s]
  9%|9         | 43/475 [00:10<01:16,  5.67it/s]
  9%|9         | 44/475 [00:10<01:28,  4.87it/s]
  9%|9         | 45/475 [00:11<02:04,  3.46it/s]
 10%|9         | 46/475 [00:11<01:59,  3.58it/s]
 10%|9         | 47/475 [00:11<02:01,  3.52it/s]
 10%|#         | 48/475 [00:12<01:55,  3.71it/s]
 10%|#         | 49/475 [00:12<01:55,  3.70it/s]
 11%|#         | 50/475 [00:12<02:04,  3.43it/s]
 11%|#         | 51/475 [00:13<01:54,  3.72it/s]
 11%|#         | 52/475 [00:13<01:56,  3.62it/s]
 11%|#1        | 53/475 [00:13<01:54,  3.68it/s]
 11%|#1        | 54/475 [00:13<01:40,  4.21it/s]
 12%|#1        | 55/475 [00:13<01:22,  5.07it/s]
 12%|#1        | 56/475 [00:14<01:23,  5.03it/s]
 12%|#2        | 57/475 [00:14<01:38,  4.25it/s]
 12%|#2        | 58/475 [00:14<01:40,  4.16it/s]
 13%|#2        | 60/475 [00:14<01:21,  5.11it/s]
 13%|#2        | 61/475 [00:15<01:30,  4.60it/s]
 13%|#3        | 62/475 [00:15<01:55,  3.59it/s]
 13%|#3        | 63/475 [00:15<01:47,  3.82it/s]
 13%|#3        | 64/475 [00:16<02:17,  2.98it/s]
 14%|#3        | 65/475 [00:16<02:34,  2.65it/s]
 14%|#3        | 66/475 [00:17<02:20,  2.92it/s]
 14%|#4        | 67/475 [00:17<02:11,  3.10it/s]
 14%|#4        | 68/475 [00:17<02:01,  3.34it/s]
 15%|#4        | 69/475 [00:17<01:52,  3.61it/s]
 15%|#4        | 70/475 [00:18<01:43,  3.92it/s]
 15%|#4        | 71/475 [00:18<01:35,  4.21it/s]
 15%|#5        | 72/475 [00:18<01:23,  4.83it/s]
 15%|#5        | 73/475 [00:18<01:10,  5.70it/s]
 16%|#5        | 75/475 [00:18<01:03,  6.26it/s]
 16%|#6        | 76/475 [00:18<01:06,  6.02it/s]
 16%|#6        | 77/475 [00:19<01:00,  6.53it/s]
 16%|#6        | 78/475 [00:19<00:57,  6.93it/s]
 17%|#6        | 79/475 [00:19<01:01,  6.39it/s]
 17%|#6        | 80/475 [00:19<01:05,  6.07it/s]
 17%|#7        | 81/475 [00:19<01:17,  5.09it/s]
 17%|#7        | 82/475 [00:20<01:29,  4.41it/s]
 17%|#7        | 83/475 [00:20<01:30,  4.32it/s]
 18%|#7        | 84/475 [00:20<01:29,  4.38it/s]
 18%|#7        | 85/475 [00:20<01:22,  4.75it/s]
 18%|#8        | 86/475 [00:21<01:22,  4.74it/s]
 18%|#8        | 87/475 [00:21<01:23,  4.62it/s]
 19%|#8        | 88/475 [00:21<01:19,  4.88it/s]
 19%|#8        | 89/475 [00:21<01:08,  5.61it/s]
 19%|#8        | 90/475 [00:21<01:00,  6.40it/s]
 19%|#9        | 91/475 [00:21<00:55,  6.98it/s]
 19%|#9        | 92/475 [00:21<00:51,  7.49it/s]
 20%|#9        | 93/475 [00:21<00:48,  7.93it/s]
 20%|#9        | 94/475 [00:22<00:52,  7.28it/s]
 20%|##        | 95/475 [00:22<00:56,  6.75it/s]
 20%|##        | 96/475 [00:22<00:53,  7.04it/s]
 20%|##        | 97/475 [00:22<00:50,  7.44it/s]
 21%|##        | 98/475 [00:22<00:56,  6.71it/s]
 21%|##        | 99/475 [00:22<01:00,  6.20it/s]
 21%|##1       | 100/475 [00:23<01:03,  5.91it/s]
 21%|##1       | 101/475 [00:23<01:09,  5.39it/s]
 21%|##1       | 102/475 [00:23<01:15,  4.97it/s]
 22%|##1       | 103/475 [00:23<01:17,  4.80it/s]
 22%|##1       | 104/475 [00:24<01:18,  4.73it/s]
 22%|##2       | 105/475 [00:24<01:17,  4.79it/s]
 22%|##2       | 106/475 [00:24<01:06,  5.52it/s]
 23%|##2       | 107/475 [00:24<00:58,  6.26it/s]
 23%|##2       | 108/475 [00:24<00:52,  6.93it/s]
 23%|##2       | 109/475 [00:24<00:49,  7.46it/s]
 23%|##3       | 110/475 [00:24<00:46,  7.83it/s]
 23%|##3       | 111/475 [00:24<00:44,  8.18it/s]
 24%|##3       | 112/475 [00:25<00:42,  8.47it/s]
 24%|##3       | 113/475 [00:25<00:51,  7.04it/s]
 24%|##4       | 114/475 [00:25<00:59,  6.09it/s]
 24%|##4       | 115/475 [00:25<01:21,  4.41it/s]
 24%|##4       | 116/475 [00:25<01:14,  4.85it/s]
 25%|##4       | 117/475 [00:26<01:07,  5.28it/s]
 25%|##4       | 118/475 [00:26<01:07,  5.29it/s]
 25%|##5       | 119/475 [00:26<01:07,  5.29it/s]
 25%|##5       | 120/475 [00:26<01:31,  3.90it/s]
 25%|##5       | 121/475 [00:27<01:27,  4.06it/s]
 26%|##5       | 122/475 [00:27<01:14,  4.73it/s]
 26%|##5       | 123/475 [00:27<01:08,  5.15it/s]
 26%|##6       | 124/475 [00:27<01:00,  5.84it/s]
 26%|##6       | 125/475 [00:27<00:54,  6.40it/s]
 27%|##6       | 126/475 [00:27<00:49,  7.05it/s]
 27%|##6       | 127/475 [00:27<00:45,  7.61it/s]
 27%|##6       | 128/475 [00:27<00:44,  7.85it/s]
 27%|##7       | 129/475 [00:28<00:43,  8.04it/s]
 27%|##7       | 130/475 [00:28<00:41,  8.29it/s]
 28%|##7       | 131/475 [00:28<00:49,  6.93it/s]
 28%|##7       | 132/475 [00:28<01:19,  4.30it/s]
 28%|##8       | 133/475 [00:29<01:19,  4.30it/s]
 28%|##8       | 134/475 [00:29<01:12,  4.68it/s]
 28%|##8       | 135/475 [00:29<01:18,  4.32it/s]
 29%|##8       | 136/475 [00:29<01:12,  4.66it/s]
 29%|##8       | 137/475 [00:29<01:07,  5.03it/s]
 29%|##9       | 138/475 [00:30<01:09,  4.88it/s]
 29%|##9       | 139/475 [00:30<01:11,  4.68it/s]
 29%|##9       | 140/475 [00:30<01:15,  4.45it/s]
 30%|##9       | 141/475 [00:30<01:08,  4.90it/s]
 30%|##9       | 142/475 [00:30<01:00,  5.50it/s]
 30%|###       | 143/475 [00:30<00:52,  6.29it/s]
 30%|###       | 144/475 [00:31<00:47,  6.96it/s]
 31%|###       | 145/475 [00:31<00:43,  7.53it/s]
 31%|###       | 146/475 [00:31<00:40,  8.07it/s]
 31%|###       | 147/475 [00:31<00:39,  8.30it/s]
 31%|###1      | 148/475 [00:31<00:38,  8.41it/s]
 31%|###1      | 149/475 [00:31<00:37,  8.77it/s]
 32%|###1      | 150/475 [00:31<00:44,  7.25it/s]
 32%|###1      | 151/475 [00:31<00:50,  6.40it/s]
 32%|###2      | 152/475 [00:32<00:56,  5.70it/s]
 32%|###2      | 153/475 [00:32<00:51,  6.30it/s]
 32%|###2      | 154/475 [00:32<00:47,  6.69it/s]
 33%|###2      | 155/475 [00:32<00:44,  7.23it/s]
 33%|###2      | 156/475 [00:32<00:41,  7.60it/s]
 33%|###3      | 157/475 [00:32<00:41,  7.64it/s]
 33%|###3      | 158/475 [00:32<00:43,  7.35it/s]
 33%|###3      | 159/475 [00:33<00:48,  6.49it/s]
 34%|###3      | 160/475 [00:33<00:46,  6.73it/s]
 34%|###3      | 161/475 [00:33<00:48,  6.54it/s]
 34%|###4      | 162/475 [00:33<00:51,  6.06it/s]
 34%|###4      | 163/475 [00:33<00:54,  5.74it/s]
 35%|###4      | 164/475 [00:33<00:48,  6.35it/s]
 35%|###4      | 165/475 [00:34<00:43,  7.11it/s]
 35%|###4      | 166/475 [00:34<00:40,  7.63it/s]
 35%|###5      | 167/475 [00:34<00:37,  8.18it/s]
 35%|###5      | 168/475 [00:34<00:38,  7.97it/s]
 36%|###5      | 169/475 [00:34<00:47,  6.43it/s]
 36%|###5      | 170/475 [00:34<00:54,  5.59it/s]
 36%|###6      | 171/475 [00:34<00:48,  6.25it/s]
 36%|###6      | 172/475 [00:35<00:46,  6.53it/s]
 36%|###6      | 173/475 [00:35<00:45,  6.60it/s]
 37%|###6      | 174/475 [00:35<00:46,  6.46it/s]
 37%|###6      | 175/475 [00:35<00:46,  6.41it/s]
 37%|###7      | 176/475 [00:35<00:46,  6.39it/s]
 37%|###7      | 177/475 [00:36<01:08,  4.38it/s]
 37%|###7      | 178/475 [00:36<00:58,  5.08it/s]
 38%|###7      | 179/475 [00:36<00:55,  5.38it/s]
 38%|###7      | 180/475 [00:36<00:48,  6.07it/s]
 38%|###8      | 181/475 [00:36<00:56,  5.23it/s]
 38%|###8      | 182/475 [00:36<00:55,  5.31it/s]
 39%|###8      | 183/475 [00:37<00:51,  5.65it/s]
 39%|###8      | 184/475 [00:37<00:44,  6.50it/s]
 39%|###9      | 186/475 [00:37<00:37,  7.74it/s]
 39%|###9      | 187/475 [00:37<00:39,  7.22it/s]
 40%|###9      | 188/475 [00:37<00:43,  6.60it/s]
 40%|###9      | 189/475 [00:38<00:48,  5.94it/s]
 40%|####      | 190/475 [00:38<00:50,  5.65it/s]
 40%|####      | 191/475 [00:38<00:53,  5.35it/s]
 40%|####      | 192/475 [00:38<00:55,  5.08it/s]
 41%|####      | 193/475 [00:38<00:53,  5.31it/s]
 41%|####      | 194/475 [00:39<00:55,  5.10it/s]
 41%|####1     | 195/475 [00:39<00:55,  5.03it/s]
 41%|####1     | 196/475 [00:39<00:59,  4.67it/s]
 41%|####1     | 197/475 [00:39<01:02,  4.45it/s]
 42%|####1     | 198/475 [00:39<00:55,  5.02it/s]
 42%|####1     | 199/475 [00:40<00:58,  4.70it/s]
 42%|####2     | 200/475 [00:40<00:53,  5.14it/s]
 42%|####2     | 201/475 [00:40<00:48,  5.62it/s]
 43%|####2     | 202/475 [00:40<00:43,  6.25it/s]
 43%|####2     | 203/475 [00:40<00:40,  6.74it/s]
 43%|####2     | 204/475 [00:40<00:37,  7.31it/s]
 43%|####3     | 205/475 [00:40<00:34,  7.81it/s]
 44%|####3     | 207/475 [00:41<00:37,  7.16it/s]
 44%|####3     | 208/475 [00:41<00:39,  6.78it/s]
 44%|####4     | 209/475 [00:41<00:44,  6.01it/s]
 44%|####4     | 210/475 [00:41<00:40,  6.51it/s]
 44%|####4     | 211/475 [00:41<00:42,  6.20it/s]
 45%|####4     | 212/475 [00:42<00:46,  5.70it/s]
 45%|####4     | 213/475 [00:42<00:49,  5.31it/s]
 45%|####5     | 214/475 [00:42<00:51,  5.09it/s]
 45%|####5     | 215/475 [00:42<00:56,  4.64it/s]
 45%|####5     | 216/475 [00:43<00:58,  4.42it/s]
 46%|####5     | 217/475 [00:43<00:58,  4.42it/s]
 46%|####5     | 218/475 [00:43<00:57,  4.45it/s]
 46%|####6     | 219/475 [00:43<01:09,  3.66it/s]
 46%|####6     | 220/475 [00:44<01:03,  3.99it/s]
 47%|####6     | 221/475 [00:44<00:53,  4.76it/s]
 47%|####6     | 222/475 [00:44<00:45,  5.60it/s]
 47%|####6     | 223/475 [00:44<00:39,  6.38it/s]
 47%|####7     | 224/475 [00:44<00:35,  7.13it/s]
 47%|####7     | 225/475 [00:44<00:32,  7.80it/s]
 48%|####7     | 226/475 [00:44<00:37,  6.70it/s]
 48%|####7     | 227/475 [00:44<00:37,  6.53it/s]
 48%|####8     | 228/475 [00:45<00:45,  5.47it/s]
 48%|####8     | 229/475 [00:45<00:43,  5.70it/s]
 48%|####8     | 230/475 [00:45<00:41,  5.91it/s]
 49%|####8     | 231/475 [00:45<00:45,  5.34it/s]
 49%|####8     | 232/475 [00:45<00:50,  4.85it/s]
 49%|####9     | 233/475 [00:46<00:57,  4.20it/s]
 49%|####9     | 234/475 [00:46<01:02,  3.85it/s]
 49%|####9     | 235/475 [00:46<01:00,  3.98it/s]
 50%|####9     | 236/475 [00:47<00:59,  4.04it/s]
 50%|####9     | 237/475 [00:47<00:53,  4.46it/s]
 50%|#####     | 238/475 [00:47<00:50,  4.72it/s]
 50%|#####     | 239/475 [00:47<00:51,  4.60it/s]
 51%|#####     | 240/475 [00:47<00:50,  4.66it/s]
 51%|#####     | 241/475 [00:48<00:45,  5.15it/s]
 51%|#####     | 242/475 [00:48<00:38,  6.01it/s]
 51%|#####1    | 243/475 [00:48<00:34,  6.71it/s]
 51%|#####1    | 244/475 [00:48<00:32,  7.20it/s]
 52%|#####1    | 245/475 [00:48<00:30,  7.53it/s]
 52%|#####1    | 246/475 [00:48<00:36,  6.19it/s]
 52%|#####2    | 247/475 [00:48<00:42,  5.35it/s]
 52%|#####2    | 248/475 [00:49<00:39,  5.73it/s]
 52%|#####2    | 249/475 [00:49<00:36,  6.25it/s]
 53%|#####2    | 250/475 [00:49<00:41,  5.47it/s]
 53%|#####2    | 251/475 [00:49<00:44,  5.04it/s]
 53%|#####3    | 252/475 [00:50<01:02,  3.55it/s]
 53%|#####3    | 253/475 [00:50<00:59,  3.70it/s]
 53%|#####3    | 254/475 [00:50<01:07,  3.28it/s]
 54%|#####3    | 255/475 [00:51<01:03,  3.44it/s]
 54%|#####3    | 256/475 [00:51<00:58,  3.74it/s]
 54%|#####4    | 257/475 [00:51<00:57,  3.79it/s]
 54%|#####4    | 258/475 [00:51<00:58,  3.71it/s]
 55%|#####4    | 259/475 [00:52<01:02,  3.48it/s]
 55%|#####4    | 260/475 [00:52<00:58,  3.69it/s]
 55%|#####4    | 261/475 [00:52<00:54,  3.93it/s]
 55%|#####5    | 262/475 [00:52<00:49,  4.34it/s]
 55%|#####5    | 263/475 [00:52<00:40,  5.20it/s]
 56%|#####5    | 264/475 [00:52<00:35,  5.95it/s]
 56%|#####5    | 265/475 [00:53<00:35,  5.96it/s]
 56%|#####6    | 266/475 [00:53<00:36,  5.70it/s]
 56%|#####6    | 267/475 [00:53<00:40,  5.11it/s]
 56%|#####6    | 268/475 [00:53<00:34,  5.98it/s]
 57%|#####6    | 269/475 [00:53<00:37,  5.56it/s]
 57%|#####6    | 270/475 [00:54<00:52,  3.94it/s]
 57%|#####7    | 271/475 [00:54<01:05,  3.10it/s]
 57%|#####7    | 272/475 [00:55<01:02,  3.23it/s]
 57%|#####7    | 273/475 [00:55<01:09,  2.90it/s]
 58%|#####7    | 274/475 [00:55<01:18,  2.58it/s]
 58%|#####7    | 275/475 [00:56<01:23,  2.40it/s]
 58%|#####8    | 276/475 [00:56<01:16,  2.62it/s]
 58%|#####8    | 277/475 [00:56<01:06,  2.96it/s]
 59%|#####8    | 278/475 [00:57<01:02,  3.17it/s]
 59%|#####8    | 279/475 [00:57<00:54,  3.58it/s]
 59%|#####8    | 280/475 [00:57<00:53,  3.62it/s]
 59%|#####9    | 281/475 [00:57<00:51,  3.76it/s]
 59%|#####9    | 282/475 [00:58<00:47,  4.09it/s]
 60%|#####9    | 283/475 [00:58<00:39,  4.90it/s]
 60%|#####9    | 284/475 [00:58<00:36,  5.27it/s]
 60%|######    | 285/475 [00:58<00:38,  4.92it/s]
 60%|######    | 286/475 [00:58<00:36,  5.22it/s]
 60%|######    | 287/475 [00:58<00:31,  6.05it/s]
 61%|######    | 288/475 [00:59<00:31,  6.03it/s]
 61%|######    | 289/475 [00:59<00:40,  4.63it/s]
 61%|######1   | 290/475 [00:59<00:42,  4.37it/s]
 61%|######1   | 291/475 [00:59<00:38,  4.78it/s]
 61%|######1   | 292/475 [01:00<00:39,  4.64it/s]
 62%|######1   | 293/475 [01:00<00:38,  4.70it/s]
 62%|######1   | 294/475 [01:00<00:40,  4.49it/s]
 62%|######2   | 295/475 [01:00<00:43,  4.18it/s]
 62%|######2   | 296/475 [01:01<00:42,  4.18it/s]
 63%|######2   | 297/475 [01:01<00:44,  4.00it/s]
 63%|######2   | 298/475 [01:01<00:44,  4.02it/s]
 63%|######2   | 299/475 [01:01<00:43,  4.08it/s]
 63%|######3   | 300/475 [01:02<00:43,  4.04it/s]
 63%|######3   | 301/475 [01:02<00:41,  4.17it/s]
 64%|######3   | 302/475 [01:02<00:38,  4.53it/s]
 64%|######3   | 303/475 [01:02<00:35,  4.82it/s]
 64%|######4   | 304/475 [01:02<00:35,  4.85it/s]
 64%|######4   | 305/475 [01:02<00:31,  5.34it/s]
 64%|######4   | 306/475 [01:03<00:27,  6.11it/s]
 65%|######4   | 307/475 [01:03<00:25,  6.51it/s]
 65%|######4   | 308/475 [01:03<00:28,  5.78it/s]
 65%|######5   | 309/475 [01:03<00:28,  5.77it/s]
 65%|######5   | 310/475 [01:03<00:31,  5.32it/s]
 65%|######5   | 311/475 [01:04<00:38,  4.24it/s]
 66%|######5   | 312/475 [01:04<00:43,  3.75it/s]
 66%|######5   | 313/475 [01:04<00:36,  4.44it/s]
 66%|######6   | 314/475 [01:04<00:34,  4.72it/s]
 66%|######6   | 315/475 [01:05<00:38,  4.15it/s]
 67%|######6   | 316/475 [01:05<00:38,  4.16it/s]
 67%|######6   | 317/475 [01:05<00:35,  4.40it/s]
 67%|######6   | 318/475 [01:05<00:34,  4.51it/s]
 67%|######7   | 319/475 [01:06<00:35,  4.35it/s]
 67%|######7   | 320/475 [01:06<00:36,  4.26it/s]
 68%|######7   | 321/475 [01:06<00:37,  4.14it/s]
 68%|######7   | 322/475 [01:06<00:39,  3.87it/s]
 68%|######8   | 323/475 [01:07<00:39,  3.89it/s]
 68%|######8   | 324/475 [01:07<00:36,  4.11it/s]
 68%|######8   | 325/475 [01:07<00:30,  4.85it/s]
 69%|######8   | 326/475 [01:07<00:27,  5.50it/s]
 69%|######8   | 327/475 [01:07<00:34,  4.34it/s]
 69%|######9   | 328/475 [01:08<00:44,  3.33it/s]
 69%|######9   | 329/475 [01:08<00:38,  3.84it/s]
 69%|######9   | 330/475 [01:08<00:36,  3.99it/s]
 70%|######9   | 331/475 [01:08<00:31,  4.51it/s]
 70%|######9   | 332/475 [01:09<00:30,  4.72it/s]
 70%|#######   | 333/475 [01:09<00:31,  4.52it/s]
 70%|#######   | 334/475 [01:09<00:33,  4.26it/s]
 71%|#######   | 335/475 [01:09<00:30,  4.53it/s]
 71%|#######   | 336/475 [01:09<00:30,  4.62it/s]
 71%|#######   | 337/475 [01:10<00:30,  4.55it/s]
 71%|#######1  | 338/475 [01:10<00:30,  4.54it/s]
 71%|#######1  | 339/475 [01:10<00:31,  4.37it/s]
 72%|#######1  | 340/475 [01:10<00:30,  4.40it/s]
 72%|#######1  | 341/475 [01:11<00:29,  4.51it/s]
 72%|#######2  | 342/475 [01:11<00:29,  4.52it/s]
 72%|#######2  | 343/475 [01:11<00:30,  4.28it/s]
 72%|#######2  | 344/475 [01:11<00:29,  4.41it/s]
 73%|#######2  | 345/475 [01:11<00:27,  4.71it/s]
 73%|#######2  | 346/475 [01:12<00:26,  4.94it/s]
 73%|#######3  | 347/475 [01:12<00:25,  5.00it/s]
 73%|#######3  | 348/475 [01:12<00:25,  4.90it/s]
 73%|#######3  | 349/475 [01:12<00:26,  4.81it/s]
 74%|#######3  | 350/475 [01:13<00:27,  4.60it/s]
 74%|#######3  | 351/475 [01:13<00:28,  4.40it/s]
 74%|#######4  | 352/475 [01:13<00:29,  4.16it/s]
 74%|#######4  | 353/475 [01:13<00:29,  4.18it/s]
 75%|#######4  | 354/475 [01:14<00:29,  4.07it/s]
 75%|#######4  | 355/475 [01:14<00:28,  4.14it/s]
 75%|#######4  | 356/475 [01:14<00:29,  4.10it/s]
 75%|#######5  | 357/475 [01:14<00:28,  4.09it/s]
 75%|#######5  | 358/475 [01:15<00:28,  4.18it/s]
 76%|#######5  | 359/475 [01:15<00:27,  4.27it/s]
 76%|#######5  | 360/475 [01:15<00:27,  4.20it/s]
 76%|#######6  | 361/475 [01:15<00:25,  4.46it/s]
 76%|#######6  | 362/475 [01:15<00:25,  4.50it/s]
 76%|#######6  | 363/475 [01:16<00:24,  4.59it/s]
 77%|#######6  | 364/475 [01:16<00:25,  4.41it/s]
 77%|#######6  | 365/475 [01:16<00:24,  4.43it/s]
 77%|#######7  | 366/475 [01:16<00:22,  4.94it/s]
 77%|#######7  | 367/475 [01:16<00:22,  4.74it/s]
 77%|#######7  | 368/475 [01:17<00:23,  4.59it/s]
 78%|#######7  | 369/475 [01:17<00:24,  4.36it/s]
 78%|#######7  | 370/475 [01:17<00:23,  4.42it/s]
 78%|#######8  | 371/475 [01:17<00:24,  4.22it/s]
 78%|#######8  | 372/475 [01:18<00:24,  4.15it/s]
 79%|#######8  | 373/475 [01:18<00:24,  4.20it/s]
 79%|#######8  | 374/475 [01:18<00:29,  3.38it/s]
 79%|#######8  | 375/475 [01:19<00:27,  3.67it/s]
 79%|#######9  | 376/475 [01:19<00:25,  3.87it/s]
 79%|#######9  | 377/475 [01:19<00:24,  4.00it/s]
 80%|#######9  | 378/475 [01:19<00:23,  4.09it/s]
 80%|#######9  | 379/475 [01:20<00:26,  3.59it/s]
 80%|########  | 380/475 [01:20<00:24,  3.88it/s]
 80%|########  | 381/475 [01:20<00:23,  3.95it/s]
 80%|########  | 382/475 [01:20<00:22,  4.20it/s]
 81%|########  | 383/475 [01:20<00:21,  4.35it/s]
 81%|########  | 384/475 [01:21<00:20,  4.48it/s]
 81%|########1 | 385/475 [01:21<00:19,  4.56it/s]
 81%|########1 | 386/475 [01:21<00:19,  4.67it/s]
 81%|########1 | 387/475 [01:21<00:18,  4.69it/s]
 82%|########1 | 388/475 [01:22<00:20,  4.31it/s]
 82%|########1 | 389/475 [01:22<00:20,  4.26it/s]
 82%|########2 | 390/475 [01:22<00:19,  4.39it/s]
 82%|########2 | 391/475 [01:22<00:17,  4.72it/s]
 83%|########2 | 392/475 [01:23<00:22,  3.69it/s]
 83%|########2 | 393/475 [01:23<00:26,  3.10it/s]
 83%|########2 | 394/475 [01:23<00:23,  3.47it/s]
 83%|########3 | 395/475 [01:24<00:27,  2.96it/s]
 83%|########3 | 396/475 [01:24<00:24,  3.24it/s]
 84%|########3 | 397/475 [01:24<00:22,  3.44it/s]
 84%|########3 | 398/475 [01:24<00:21,  3.60it/s]
 84%|########4 | 399/475 [01:25<00:20,  3.67it/s]
 84%|########4 | 400/475 [01:25<00:18,  4.08it/s]
 84%|########4 | 401/475 [01:25<00:21,  3.49it/s]
 85%|########4 | 402/475 [01:26<00:22,  3.25it/s]
 85%|########4 | 403/475 [01:26<00:19,  3.69it/s]
 85%|########5 | 404/475 [01:26<00:17,  4.07it/s]
 85%|########5 | 405/475 [01:26<00:16,  4.27it/s]
 85%|########5 | 406/475 [01:26<00:15,  4.42it/s]
 86%|########5 | 407/475 [01:27<00:16,  4.21it/s]
 86%|########5 | 408/475 [01:27<00:16,  4.04it/s]
 86%|########6 | 409/475 [01:27<00:15,  4.16it/s]
 86%|########6 | 410/475 [01:27<00:15,  4.29it/s]
 87%|########6 | 411/475 [01:28<00:14,  4.43it/s]
 87%|########6 | 412/475 [01:28<00:14,  4.45it/s]
 87%|########6 | 413/475 [01:28<00:14,  4.36it/s]
 87%|########7 | 414/475 [01:28<00:14,  4.17it/s]
 87%|########7 | 415/475 [01:29<00:14,  4.28it/s]
 88%|########7 | 416/475 [01:29<00:13,  4.40it/s]
 88%|########7 | 417/475 [01:29<00:14,  3.96it/s]
 88%|########8 | 418/475 [01:29<00:14,  3.96it/s]
 88%|########8 | 419/475 [01:30<00:13,  4.28it/s]
 88%|########8 | 420/475 [01:30<00:12,  4.49it/s]
 89%|########8 | 421/475 [01:30<00:11,  4.77it/s]
 89%|########8 | 422/475 [01:30<00:12,  4.19it/s]
 89%|########9 | 423/475 [01:30<00:11,  4.64it/s]
 89%|########9 | 424/475 [01:31<00:10,  4.86it/s]
 89%|########9 | 425/475 [01:31<00:10,  4.86it/s]
 90%|########9 | 426/475 [01:31<00:10,  4.85it/s]
 90%|########9 | 427/475 [01:31<00:10,  4.63it/s]
 90%|######### | 428/475 [01:31<00:09,  4.77it/s]
 90%|######### | 429/475 [01:32<00:09,  4.87it/s]
 91%|######### | 430/475 [01:32<00:10,  4.34it/s]
 91%|######### | 431/475 [01:32<00:10,  4.38it/s]
 91%|######### | 432/475 [01:32<00:09,  4.38it/s]
 91%|#########1| 433/475 [01:33<00:11,  3.62it/s]
 91%|#########1| 434/475 [01:33<00:11,  3.60it/s]
 92%|#########1| 435/475 [01:33<00:10,  3.79it/s]
 92%|#########1| 436/475 [01:33<00:10,  3.89it/s]
 92%|#########2| 437/475 [01:34<00:10,  3.76it/s]
 92%|#########2| 438/475 [01:34<00:09,  3.97it/s]
 92%|#########2| 439/475 [01:34<00:08,  4.19it/s]
 93%|#########2| 440/475 [01:34<00:07,  4.42it/s]
 93%|#########2| 441/475 [01:35<00:07,  4.48it/s]
 93%|#########3| 442/475 [01:35<00:07,  4.55it/s]
 93%|#########3| 443/475 [01:35<00:07,  4.33it/s]
 93%|#########3| 444/475 [01:35<00:07,  4.07it/s]
 94%|#########3| 445/475 [01:36<00:06,  4.33it/s]
 94%|#########3| 446/475 [01:36<00:06,  4.63it/s]
 94%|#########4| 447/475 [01:36<00:06,  4.62it/s]
 94%|#########4| 448/475 [01:36<00:06,  4.41it/s]
 95%|#########4| 449/475 [01:36<00:05,  4.47it/s]
 95%|#########4| 450/475 [01:37<00:05,  4.43it/s]
 95%|#########4| 451/475 [01:37<00:05,  4.18it/s]
 95%|#########5| 452/475 [01:37<00:05,  4.49it/s]
 95%|#########5| 453/475 [01:37<00:04,  4.40it/s]
 96%|#########5| 454/475 [01:38<00:04,  4.51it/s]
 96%|#########5| 455/475 [01:38<00:04,  4.54it/s]
 96%|#########6| 456/475 [01:38<00:04,  4.61it/s]
 96%|#########6| 457/475 [01:38<00:03,  4.73it/s]
 96%|#########6| 458/475 [01:38<00:03,  4.78it/s]
 97%|#########6| 459/475 [01:38<00:02,  5.46it/s]
 97%|#########6| 460/475 [01:39<00:02,  6.05it/s]
 97%|#########7| 461/475 [01:39<00:02,  5.92it/s]
 97%|#########7| 462/475 [01:39<00:02,  5.79it/s]
 97%|#########7| 463/475 [01:39<00:02,  5.11it/s]
 98%|#########7| 464/475 [01:39<00:02,  4.78it/s]
 98%|#########7| 465/475 [01:40<00:02,  4.70it/s]
 98%|#########8| 466/475 [01:40<00:01,  4.74it/s]
 98%|#########8| 467/475 [01:40<00:01,  4.69it/s]
 99%|#########8| 468/475 [01:40<00:01,  4.74it/s]
 99%|#########8| 469/475 [01:41<00:01,  4.73it/s]
 99%|#########8| 470/475 [01:41<00:01,  4.68it/s]
 99%|#########9| 471/475 [01:41<00:00,  4.56it/s]
 99%|#########9| 472/475 [01:41<00:00,  4.41it/s]
100%|#########9| 473/475 [01:41<00:00,  4.52it/s]
100%|#########9| 474/475 [01:42<00:00,  4.40it/s]
100%|##########| 475/475 [01:42<00:00,  4.69it/s]
100%|##########| 475/475 [01:42<00:00,  4.64it/s]

  0%|          | 0/475 [00:00<?, ?it/s]
  0%|          | 1/475 [00:06<49:50,  6.31s/it]
  0%|          | 2/475 [00:25<1:48:14, 13.73s/it]
  1%|          | 3/475 [00:32<1:23:35, 10.63s/it]
  1%|          | 4/475 [00:35<1:01:29,  7.83s/it]
  1%|1         | 5/475 [00:43<1:01:28,  7.85s/it]
  1%|1         | 6/475 [00:48<54:03,  6.92s/it]
  1%|1         | 7/475 [01:02<1:12:06,  9.24s/it]
  2%|1         | 8/475 [01:07<1:01:04,  7.85s/it]
  2%|1         | 9/475 [01:14<58:06,  7.48s/it]
  2%|2         | 10/475 [01:17<46:57,  6.06s/it]
  2%|2         | 11/475 [01:21<41:44,  5.40s/it]
  3%|2         | 12/475 [01:28<46:56,  6.08s/it]
  3%|2         | 13/475 [01:32<40:45,  5.29s/it]
  3%|2         | 14/475 [01:36<37:40,  4.90s/it]
  3%|3         | 15/475 [01:40<35:17,  4.60s/it]
  3%|3         | 16/475 [01:46<40:23,  5.28s/it]
  4%|3         | 17/475 [01:49<33:46,  4.42s/it]
  4%|3         | 18/475 [01:57<41:22,  5.43s/it]
  4%|4         | 19/475 [02:03<43:52,  5.77s/it]
  4%|4         | 20/475 [02:13<52:49,  6.97s/it]
  4%|4         | 21/475 [02:17<45:30,  6.01s/it]
  5%|4         | 22/475 [02:25<49:28,  6.55s/it]
  5%|4         | 23/475 [02:36<1:00:26,  8.02s/it]
  5%|5         | 24/475 [02:48<1:10:06,  9.33s/it]
  5%|5         | 25/475 [02:57<1:08:54,  9.19s/it]
  5%|5         | 26/475 [03:00<55:01,  7.35s/it]
  6%|5         | 27/475 [03:05<49:09,  6.58s/it]
  6%|5         | 28/475 [03:12<50:26,  6.77s/it]
  6%|6         | 29/475 [03:19<50:46,  6.83s/it]
  6%|6         | 30/475 [03:28<54:32,  7.35s/it]
  7%|6         | 31/475 [03:31<44:40,  6.04s/it]
  7%|6         | 32/475 [03:34<38:42,  5.24s/it]
  7%|6         | 33/475 [03:40<40:12,  5.46s/it]
  7%|7         | 34/475 [03:43<33:26,  4.55s/it]
  7%|7         | 35/475 [03:55<51:38,  7.04s/it]
  8%|7         | 36/475 [03:58<41:57,  5.73s/it]
  8%|7         | 37/475 [04:12<1:00:06,  8.23s/it]
  8%|8         | 38/475 [04:17<52:44,  7.24s/it]
  8%|8         | 39/475 [04:25<54:26,  7.49s/it]
  8%|8         | 40/475 [04:27<42:44,  5.89s/it]
  9%|8         | 41/475 [04:32<39:25,  5.45s/it]
  9%|8         | 42/475 [04:39<44:04,  6.11s/it]
  9%|9         | 43/475 [04:44<40:46,  5.66s/it]
  9%|9         | 44/475 [04:46<32:53,  4.58s/it]
  9%|9         | 45/475 [04:55<42:09,  5.88s/it]
 10%|9         | 46/475 [05:01<43:06,  6.03s/it]
 10%|9         | 47/475 [05:06<39:32,  5.54s/it]
 10%|#         | 48/475 [05:17<51:44,  7.27s/it]
 10%|#         | 49/475 [05:23<48:01,  6.76s/it]
 11%|#         | 50/475 [05:25<38:17,  5.41s/it]
 11%|#         | 51/475 [05:32<40:41,  5.76s/it]
 11%|#         | 52/475 [05:35<36:42,  5.21s/it]
 11%|#1        | 53/475 [05:49<54:20,  7.73s/it]
 11%|#1        | 54/475 [05:55<50:28,  7.19s/it]
 12%|#1        | 55/475 [05:56<37:17,  5.33s/it]
 12%|#1        | 56/475 [05:59<32:08,  4.60s/it]
 12%|#2        | 57/475 [06:02<28:29,  4.09s/it]
 12%|#2        | 58/475 [06:07<30:31,  4.39s/it]
 12%|#2        | 59/475 [06:14<35:54,  5.18s/it]
 13%|#2        | 60/475 [06:20<37:04,  5.36s/it]
 13%|#2        | 61/475 [06:22<31:30,  4.57s/it]
 13%|#3        | 62/475 [06:35<48:24,  7.03s/it]
 13%|#3        | 63/475 [06:38<39:35,  5.77s/it]
 13%|#3        | 64/475 [06:42<35:11,  5.14s/it]
 14%|#3        | 65/475 [06:51<43:55,  6.43s/it]
 14%|#3        | 66/475 [07:04<56:19,  8.26s/it]
 14%|#4        | 67/475 [07:07<46:09,  6.79s/it]
 14%|#4        | 68/475 [07:18<54:31,  8.04s/it]
 15%|#4        | 69/475 [07:21<43:46,  6.47s/it]
 15%|#4        | 70/475 [07:24<36:50,  5.46s/it]
 15%|#4        | 71/475 [07:34<46:33,  6.91s/it]
 15%|#5        | 72/475 [07:37<37:41,  5.61s/it]
 15%|#5        | 73/475 [07:37<27:35,  4.12s/it]
 16%|#5        | 74/475 [07:38<20:30,  3.07s/it]
 16%|#5        | 75/475 [07:40<19:10,  2.88s/it]
 16%|#6        | 76/475 [07:46<24:41,  3.71s/it]
 16%|#6        | 77/475 [07:47<18:40,  2.82s/it]
 16%|#6        | 78/475 [07:49<17:50,  2.70s/it]
 17%|#6        | 79/475 [07:56<26:42,  4.05s/it]
 17%|#6        | 80/475 [08:01<27:52,  4.24s/it]
 17%|#7        | 81/475 [08:08<33:30,  5.10s/it]
 17%|#7        | 82/475 [08:17<41:10,  6.29s/it]
 17%|#7        | 83/475 [08:23<40:33,  6.21s/it]
 18%|#7        | 84/475 [08:26<34:01,  5.22s/it]
 18%|#7        | 85/475 [08:35<41:16,  6.35s/it]
 18%|#8        | 86/475 [08:42<42:28,  6.55s/it]
 18%|#8        | 87/475 [08:45<34:16,  5.30s/it]
 19%|#8        | 88/475 [08:47<28:17,  4.39s/it]
 19%|#8        | 89/475 [08:48<22:02,  3.43s/it]
 19%|#8        | 90/475 [08:49<16:42,  2.60s/it]
 19%|#9        | 91/475 [08:49<12:35,  1.97s/it]
 19%|#9        | 92/475 [08:50<09:51,  1.54s/it]
 20%|#9        | 93/475 [08:57<20:29,  3.22s/it]
 20%|#9        | 94/475 [09:00<20:25,  3.22s/it]
 20%|##        | 95/475 [09:07<27:16,  4.31s/it]
 20%|##        | 96/475 [09:18<39:28,  6.25s/it]
 20%|##        | 97/475 [09:22<36:17,  5.76s/it]
 21%|##        | 98/475 [09:29<37:26,  5.96s/it]
 21%|##        | 99/475 [09:33<33:17,  5.31s/it]
 21%|##1       | 100/475 [09:39<35:20,  5.66s/it]
 21%|##1       | 101/475 [09:45<36:15,  5.82s/it]
 21%|##1       | 102/475 [09:49<32:42,  5.26s/it]
 22%|##1       | 103/475 [09:56<35:29,  5.73s/it]
 22%|##1       | 104/475 [10:04<38:43,  6.26s/it]
 22%|##2       | 105/475 [10:12<42:54,  6.96s/it]
 22%|##2       | 106/475 [10:16<37:14,  6.06s/it]
 23%|##2       | 107/475 [10:17<27:28,  4.48s/it]
 23%|##2       | 108/475 [10:18<20:32,  3.36s/it]
 23%|##2       | 109/475 [10:18<15:22,  2.52s/it]
 23%|##3       | 110/475 [10:19<11:34,  1.90s/it]
 23%|##3       | 111/475 [10:19<09:09,  1.51s/it]
 24%|##3       | 112/475 [10:25<16:26,  2.72s/it]
 24%|##3       | 113/475 [10:29<18:34,  3.08s/it]
 24%|##4       | 114/475 [10:38<29:27,  4.90s/it]
 24%|##4       | 115/475 [10:39<22:02,  3.67s/it]
 24%|##4       | 116/475 [10:52<38:36,  6.45s/it]
 25%|##4       | 117/475 [10:58<37:54,  6.35s/it]
 25%|##4       | 118/475 [11:03<36:27,  6.13s/it]
 25%|##5       | 119/475 [11:10<37:42,  6.36s/it]
 25%|##5       | 120/475 [11:22<47:01,  7.95s/it]
 25%|##5       | 121/475 [11:27<42:38,  7.23s/it]
 26%|##5       | 122/475 [11:38<48:11,  8.19s/it]
 26%|##5       | 123/475 [11:47<49:50,  8.50s/it]
 26%|##6       | 124/475 [11:49<37:55,  6.48s/it]
 26%|##6       | 125/475 [11:53<33:30,  5.74s/it]
 27%|##6       | 126/475 [11:54<24:36,  4.23s/it]
 27%|##6       | 127/475 [11:54<18:05,  3.12s/it]
 27%|##6       | 128/475 [11:55<13:32,  2.34s/it]
 27%|##7       | 129/475 [11:55<10:16,  1.78s/it]
 27%|##7       | 130/475 [11:56<08:03,  1.40s/it]
 28%|##7       | 131/475 [12:01<14:58,  2.61s/it]
 28%|##7       | 132/475 [12:06<18:25,  3.22s/it]
 28%|##8       | 133/475 [12:13<25:56,  4.55s/it]
 28%|##8       | 134/475 [12:30<46:56,  8.26s/it]
 28%|##8       | 135/475 [12:36<43:18,  7.64s/it]
 29%|##8       | 136/475 [12:45<44:21,  7.85s/it]
 29%|##8       | 137/475 [12:49<37:30,  6.66s/it]
 29%|##9       | 138/475 [12:55<37:32,  6.68s/it]
 29%|##9       | 139/475 [13:00<33:22,  5.96s/it]
 29%|##9       | 140/475 [13:02<26:33,  4.76s/it]
 30%|##9       | 141/475 [13:07<27:00,  4.85s/it]
 30%|##9       | 142/475 [13:08<21:09,  3.81s/it]
 30%|###       | 143/475 [13:09<15:52,  2.87s/it]
 30%|###       | 144/475 [13:13<18:14,  3.31s/it]
 31%|###       | 145/475 [13:14<14:08,  2.57s/it]
 31%|###       | 146/475 [13:14<10:43,  1.96s/it]
 31%|###       | 147/475 [13:15<08:30,  1.56s/it]
 31%|###1      | 148/475 [13:15<06:39,  1.22s/it]
 31%|###1      | 149/475 [13:17<06:37,  1.22s/it]
 32%|###1      | 150/475 [13:26<19:46,  3.65s/it]
 32%|###1      | 151/475 [13:32<22:47,  4.22s/it]
 32%|###2      | 152/475 [13:38<26:00,  4.83s/it]
 32%|###2      | 153/475 [13:44<28:46,  5.36s/it]
 32%|###2      | 154/475 [13:54<35:30,  6.64s/it]
 33%|###2      | 155/475 [13:59<33:14,  6.23s/it]
 33%|###2      | 156/475 [14:02<27:15,  5.13s/it]
 33%|###3      | 157/475 [14:04<22:40,  4.28s/it]
 33%|###3      | 158/475 [14:10<25:19,  4.79s/it]
 33%|###3      | 159/475 [14:21<34:31,  6.56s/it]
 34%|###3      | 160/475 [14:30<38:18,  7.30s/it]
 34%|###3      | 161/475 [14:33<32:21,  6.18s/it]
 34%|###4      | 162/475 [14:39<31:42,  6.08s/it]
 34%|###4      | 163/475 [14:43<28:16,  5.44s/it]
 35%|###4      | 164/475 [14:49<29:11,  5.63s/it]
 35%|###4      | 165/475 [14:50<21:35,  4.18s/it]
 35%|###4      | 166/475 [14:51<16:04,  3.12s/it]
 35%|###5      | 167/475 [14:51<12:06,  2.36s/it]
 35%|###5      | 168/475 [14:57<16:49,  3.29s/it]
 36%|###5      | 169/475 [15:11<32:49,  6.44s/it]
 36%|###5      | 170/475 [15:17<33:08,  6.52s/it]
 36%|###6      | 171/475 [15:23<32:28,  6.41s/it]
 36%|###6      | 172/475 [15:28<29:05,  5.76s/it]
 36%|###6      | 173/475 [15:39<37:11,  7.39s/it]
 37%|###6      | 174/475 [15:55<50:51, 10.14s/it]
 37%|###6      | 175/475 [16:04<48:04,  9.62s/it]
 37%|###7      | 176/475 [16:25<1:05:24, 13.13s/it]
 37%|###7      | 177/475 [16:30<53:33, 10.78s/it]
 37%|###7      | 178/475 [16:38<48:01,  9.70s/it]
 38%|###7      | 179/475 [16:44<42:24,  8.60s/it]
 38%|###7      | 180/475 [16:45<32:02,  6.52s/it]
 38%|###8      | 181/475 [16:53<33:47,  6.90s/it]
 38%|###8      | 182/475 [16:56<27:42,  5.67s/it]
 39%|###8      | 183/475 [16:57<21:12,  4.36s/it]
 39%|###8      | 184/475 [16:58<16:21,  3.37s/it]
 39%|###8      | 185/475 [16:59<12:23,  2.56s/it]
 39%|###9      | 186/475 [17:00<09:32,  1.98s/it]
 39%|###9      | 187/475 [17:04<12:42,  2.65s/it]
 40%|###9      | 188/475 [17:11<19:32,  4.08s/it]
 40%|###9      | 189/475 [17:21<27:10,  5.70s/it]
 40%|####      | 190/475 [17:23<22:37,  4.76s/it]
 40%|####      | 191/475 [17:29<23:23,  4.94s/it]
 40%|####      | 192/475 [17:37<28:00,  5.94s/it]
 41%|####      | 193/475 [17:44<29:07,  6.20s/it]
 41%|####      | 194/475 [17:53<33:44,  7.20s/it]
 41%|####1     | 195/475 [18:07<42:25,  9.09s/it]
 41%|####1     | 196/475 [18:10<33:48,  7.27s/it]
 41%|####1     | 197/475 [18:16<32:53,  7.10s/it]
 42%|####1     | 198/475 [18:25<34:12,  7.41s/it]
 42%|####1     | 199/475 [18:28<28:13,  6.14s/it]
 42%|####2     | 200/475 [18:30<22:26,  4.89s/it]
 42%|####2     | 201/475 [18:31<16:52,  3.70s/it]
 43%|####2     | 202/475 [18:31<12:49,  2.82s/it]
 43%|####2     | 203/475 [18:32<09:45,  2.15s/it]
 43%|####2     | 204/475 [18:33<07:44,  1.71s/it]
 43%|####3     | 205/475 [18:35<08:01,  1.78s/it]
 43%|####3     | 206/475 [18:36<07:40,  1.71s/it]
 44%|####3     | 207/475 [18:41<11:34,  2.59s/it]
 44%|####3     | 208/475 [18:56<27:39,  6.22s/it]
 44%|####4     | 209/475 [19:02<28:27,  6.42s/it]
 44%|####4     | 210/475 [19:11<30:55,  7.00s/it]
 44%|####4     | 211/475 [19:22<36:17,  8.25s/it]
 45%|####4     | 212/475 [19:28<32:53,  7.50s/it]
 45%|####4     | 213/475 [19:33<29:36,  6.78s/it]
 45%|####5     | 214/475 [19:37<26:15,  6.04s/it]
 45%|####5     | 215/475 [19:41<23:59,  5.54s/it]
 45%|####5     | 216/475 [19:49<26:35,  6.16s/it]
 46%|####5     | 217/475 [19:51<21:18,  4.96s/it]
 46%|####5     | 218/475 [19:56<21:01,  4.91s/it]
 46%|####6     | 219/475 [19:58<16:57,  3.97s/it]
 46%|####6     | 220/475 [20:03<17:53,  4.21s/it]
 47%|####6     | 221/475 [20:04<14:34,  3.44s/it]
 47%|####6     | 222/475 [20:05<11:17,  2.68s/it]
 47%|####6     | 223/475 [20:06<08:36,  2.05s/it]
 47%|####7     | 224/475 [20:06<06:59,  1.67s/it]
 47%|####7     | 225/475 [20:08<06:09,  1.48s/it]
 48%|####7     | 226/475 [20:17<16:33,  3.99s/it]
 48%|####7     | 227/475 [20:22<16:46,  4.06s/it]
 48%|####8     | 228/475 [20:36<29:25,  7.15s/it]
 48%|####8     | 229/475 [20:47<33:54,  8.27s/it]
 48%|####8     | 230/475 [20:52<29:21,  7.19s/it]
 49%|####8     | 231/475 [21:03<34:48,  8.56s/it]
 49%|####8     | 232/475 [21:08<30:00,  7.41s/it]
 49%|####9     | 233/475 [21:20<35:14,  8.74s/it]
 49%|####9     | 234/475 [21:29<35:51,  8.93s/it]
 49%|####9     | 235/475 [21:41<38:34,  9.64s/it]
 50%|####9     | 236/475 [21:53<41:18, 10.37s/it]
 50%|####9     | 237/475 [22:01<38:46,  9.77s/it]
 50%|#####     | 238/475 [22:03<29:38,  7.50s/it]
 50%|#####     | 239/475 [22:07<24:40,  6.27s/it]
 51%|#####     | 240/475 [22:09<19:40,  5.02s/it]
 51%|#####     | 241/475 [22:11<16:48,  4.31s/it]
 51%|#####     | 242/475 [22:12<12:43,  3.28s/it]
 51%|#####1    | 243/475 [22:13<10:01,  2.59s/it]
 51%|#####1    | 244/475 [22:14<07:37,  1.98s/it]
 52%|#####1    | 245/475 [22:16<08:01,  2.10s/it]
 52%|#####1    | 246/475 [22:21<11:11,  2.93s/it]
 52%|#####2    | 247/475 [22:30<17:32,  4.62s/it]
 52%|#####2    | 248/475 [22:50<35:53,  9.49s/it]
 52%|#####2    | 249/475 [23:05<41:32, 11.03s/it]
 53%|#####2    | 250/475 [23:11<36:08,  9.64s/it]
 53%|#####2    | 251/475 [23:30<45:46, 12.26s/it]
 53%|#####3    | 252/475 [23:36<38:58, 10.49s/it]
 53%|#####3    | 253/475 [23:45<37:11, 10.05s/it]
 53%|#####3    | 254/475 [23:49<29:46,  8.08s/it]
 54%|#####3    | 255/475 [23:54<26:28,  7.22s/it]
 54%|#####3    | 256/475 [24:09<34:41,  9.50s/it]
 54%|#####4    | 257/475 [24:14<30:21,  8.35s/it]
 54%|#####4    | 258/475 [24:19<26:11,  7.24s/it]
 55%|#####4    | 259/475 [24:21<20:45,  5.77s/it]
 55%|#####4    | 260/475 [24:24<17:38,  4.92s/it]
 55%|#####4    | 261/475 [24:36<25:16,  7.09s/it]
 55%|#####5    | 262/475 [24:44<26:03,  7.34s/it]
 55%|#####5    | 263/475 [24:46<19:59,  5.66s/it]
 56%|#####5    | 264/475 [24:47<14:48,  4.21s/it]
 56%|#####5    | 265/475 [24:51<14:14,  4.07s/it]
 56%|#####6    | 266/475 [24:53<12:30,  3.59s/it]
 56%|#####6    | 267/475 [25:01<16:47,  4.84s/it]
 56%|#####6    | 268/475 [25:16<26:50,  7.78s/it]
 57%|#####6    | 269/475 [25:21<24:11,  7.05s/it]
 57%|#####6    | 270/475 [25:24<20:19,  5.95s/it]
 57%|#####7    | 271/475 [25:26<15:38,  4.60s/it]
 57%|#####7    | 272/475 [25:30<15:14,  4.51s/it]
 57%|#####7    | 273/475 [25:35<16:07,  4.79s/it]
 58%|#####7    | 274/475 [25:39<14:56,  4.46s/it]
 58%|#####7    | 275/475 [25:44<15:17,  4.59s/it]
 58%|#####8    | 276/475 [25:50<16:17,  4.91s/it]
 58%|#####8    | 277/475 [25:54<15:15,  4.62s/it]
 59%|#####8    | 278/475 [25:56<12:30,  3.81s/it]
 59%|#####8    | 279/475 [26:11<23:55,  7.32s/it]
 59%|#####8    | 280/475 [26:15<20:16,  6.24s/it]
 59%|#####9    | 281/475 [26:22<21:26,  6.63s/it]
 59%|#####9    | 282/475 [26:28<20:00,  6.22s/it]
 60%|#####9    | 283/475 [26:29<15:10,  4.74s/it]
 60%|#####9    | 284/475 [26:34<15:01,  4.72s/it]
 60%|######    | 285/475 [26:39<15:16,  4.82s/it]
 60%|######    | 286/475 [26:47<18:23,  5.84s/it]
 60%|######    | 287/475 [26:51<16:32,  5.28s/it]
 61%|######    | 288/475 [26:56<15:57,  5.12s/it]
 61%|######    | 289/475 [27:04<18:59,  6.13s/it]
 61%|######1   | 290/475 [27:09<17:30,  5.68s/it]
 61%|######1   | 291/475 [27:21<23:21,  7.62s/it]
 61%|######1   | 292/475 [27:29<24:07,  7.91s/it]
 62%|######1   | 293/475 [27:34<20:39,  6.81s/it]
 62%|######1   | 294/475 [27:38<18:38,  6.18s/it]
 62%|######2   | 295/475 [27:43<17:29,  5.83s/it]
 62%|######2   | 296/475 [27:50<18:17,  6.13s/it]
 63%|######2   | 297/475 [27:55<17:24,  5.87s/it]
 63%|######2   | 298/475 [28:01<16:40,  5.65s/it]
 63%|######2   | 299/475 [28:09<19:17,  6.57s/it]
 63%|######3   | 300/475 [28:13<16:16,  5.58s/it]
 63%|######3   | 301/475 [28:19<17:10,  5.92s/it]
 64%|######3   | 302/475 [28:25<16:32,  5.74s/it]
 64%|######3   | 303/475 [28:29<15:24,  5.37s/it]
 64%|######4   | 304/475 [28:32<13:10,  4.62s/it]
 64%|######4   | 305/475 [28:42<17:58,  6.34s/it]
 64%|######4   | 306/475 [28:50<19:08,  6.80s/it]
 65%|######4   | 307/475 [28:55<17:25,  6.22s/it]
 65%|######4   | 308/475 [29:01<16:49,  6.05s/it]
 65%|######5   | 309/475 [29:06<15:46,  5.70s/it]
 65%|######5   | 310/475 [29:15<18:51,  6.86s/it]
 65%|######5   | 311/475 [29:21<17:55,  6.56s/it]
 66%|######5   | 312/475 [29:26<16:36,  6.11s/it]
 66%|######5   | 313/475 [29:31<15:25,  5.71s/it]
 66%|######6   | 314/475 [29:34<13:05,  4.88s/it]
 66%|######6   | 315/475 [29:39<12:54,  4.84s/it]
 67%|######6   | 316/475 [29:44<13:30,  5.10s/it]
 67%|######6   | 317/475 [29:50<14:09,  5.37s/it]
 67%|######6   | 318/475 [29:54<12:52,  4.92s/it]
 67%|######7   | 319/475 [29:59<12:37,  4.85s/it]
 67%|######7   | 320/475 [30:04<12:36,  4.88s/it]
 68%|######7   | 321/475 [30:09<12:55,  5.04s/it]
 68%|######7   | 322/475 [30:13<12:08,  4.76s/it]
 68%|######8   | 323/475 [30:19<13:01,  5.14s/it]
 68%|######8   | 324/475 [30:23<12:05,  4.80s/it]
 68%|######8   | 325/475 [30:30<13:17,  5.31s/it]
 69%|######8   | 326/475 [30:34<11:55,  4.80s/it]
 69%|######8   | 327/475 [30:38<11:19,  4.59s/it]
 69%|######9   | 328/475 [30:45<12:57,  5.29s/it]
 69%|######9   | 329/475 [30:48<11:22,  4.67s/it]
 69%|######9   | 330/475 [30:53<11:40,  4.83s/it]
 70%|######9   | 331/475 [30:58<11:40,  4.86s/it]
 70%|######9   | 332/475 [31:05<13:13,  5.55s/it]
 70%|#######   | 333/475 [31:08<11:27,  4.84s/it]
 70%|#######   | 334/475 [31:14<11:53,  5.06s/it]
 71%|#######   | 335/475 [31:22<14:04,  6.03s/it]
 71%|#######   | 336/475 [31:26<12:36,  5.44s/it]
 71%|#######   | 337/475 [31:33<13:45,  5.98s/it]
 71%|#######1  | 338/475 [31:36<11:24,  4.99s/it]
 71%|#######1  | 339/475 [31:42<11:47,  5.20s/it]
 72%|#######1  | 340/475 [31:50<13:41,  6.09s/it]
 72%|#######1  | 341/475 [31:59<15:52,  7.11s/it]
 72%|#######2  | 342/475 [32:06<15:18,  6.91s/it]
 72%|#######2  | 343/475 [32:11<13:46,  6.26s/it]
 72%|#######2  | 344/475 [32:21<16:13,  7.43s/it]
 73%|#######2  | 345/475 [32:33<19:01,  8.78s/it]
 73%|#######2  | 346/475 [32:37<15:53,  7.39s/it]
 73%|#######3  | 347/475 [32:43<14:54,  6.98s/it]
 73%|#######3  | 348/475 [32:46<12:20,  5.83s/it]
 73%|#######3  | 349/475 [32:50<11:02,  5.26s/it]
 74%|#######3  | 350/475 [32:58<12:43,  6.11s/it]
 74%|#######3  | 351/475 [33:05<13:01,  6.30s/it]
 74%|#######4  | 352/475 [33:13<14:17,  6.97s/it]
 74%|#######4  | 353/475 [33:17<12:19,  6.06s/it]
 75%|#######4  | 354/475 [33:20<10:26,  5.18s/it]
 75%|#######4  | 355/475 [33:30<13:14,  6.62s/it]
 75%|#######4  | 356/475 [33:37<13:25,  6.77s/it]
 75%|#######5  | 357/475 [33:45<13:54,  7.07s/it]
 75%|#######5  | 358/475 [33:49<11:35,  5.94s/it]
 76%|#######5  | 359/475 [33:54<11:21,  5.87s/it]
 76%|#######5  | 360/475 [33:58<09:50,  5.13s/it]
 76%|#######6  | 361/475 [34:06<11:22,  5.99s/it]
 76%|#######6  | 362/475 [34:12<11:25,  6.07s/it]
 76%|#######6  | 363/475 [34:18<11:11,  5.99s/it]
 77%|#######6  | 364/475 [34:27<12:42,  6.87s/it]
 77%|#######6  | 365/475 [34:32<11:30,  6.27s/it]
 77%|#######7  | 366/475 [34:35<10:01,  5.52s/it]
 77%|#######7  | 367/475 [34:40<09:32,  5.30s/it]
 77%|#######7  | 368/475 [34:46<09:37,  5.40s/it]
 78%|#######7  | 369/475 [34:52<09:49,  5.57s/it]
 78%|#######7  | 370/475 [34:55<08:38,  4.94s/it]
 78%|#######8  | 371/475 [35:02<09:27,  5.46s/it]
 78%|#######8  | 372/475 [35:07<09:00,  5.25s/it]
 79%|#######8  | 373/475 [35:10<07:54,  4.65s/it]
 79%|#######8  | 374/475 [35:13<07:08,  4.24s/it]
 79%|#######8  | 375/475 [35:22<09:22,  5.62s/it]
 79%|#######9  | 376/475 [35:33<12:09,  7.37s/it]
 79%|#######9  | 377/475 [35:36<09:44,  5.97s/it]
 80%|#######9  | 378/475 [35:48<12:26,  7.69s/it]
 80%|#######9  | 379/475 [35:55<11:53,  7.44s/it]
 80%|########  | 380/475 [35:59<10:15,  6.48s/it]
 80%|########  | 381/475 [36:03<09:05,  5.80s/it]
 80%|########  | 382/475 [36:11<09:56,  6.41s/it]
 81%|########  | 383/475 [36:14<08:21,  5.45s/it]
 81%|########  | 384/475 [36:18<07:24,  4.89s/it]
 81%|########1 | 385/475 [36:23<07:33,  5.04s/it]
 81%|########1 | 386/475 [36:27<06:46,  4.57s/it]
 81%|########1 | 387/475 [36:41<11:10,  7.62s/it]
 82%|########1 | 388/475 [36:47<10:22,  7.15s/it]
 82%|########1 | 389/475 [36:56<10:40,  7.45s/it]
 82%|########2 | 390/475 [37:01<09:37,  6.79s/it]
 82%|########2 | 391/475 [37:05<08:28,  6.05s/it]
 83%|########2 | 392/475 [37:16<10:09,  7.35s/it]
 83%|########2 | 393/475 [37:22<09:42,  7.11s/it]
 83%|########2 | 394/475 [37:26<08:20,  6.18s/it]
 83%|########3 | 395/475 [37:30<07:14,  5.43s/it]
 83%|########3 | 396/475 [37:44<10:31,  7.99s/it]
 84%|########3 | 397/475 [37:50<09:46,  7.52s/it]
 84%|########3 | 398/475 [37:53<07:55,  6.18s/it]
 84%|########4 | 399/475 [38:10<11:53,  9.39s/it]
 84%|########4 | 400/475 [38:16<10:16,  8.22s/it]
 84%|########4 | 401/475 [38:26<10:48,  8.76s/it]
 85%|########4 | 402/475 [38:31<09:16,  7.62s/it]
 85%|########4 | 403/475 [38:34<07:32,  6.29s/it]
 85%|########5 | 404/475 [38:39<07:07,  6.02s/it]
 85%|########5 | 405/475 [38:46<07:25,  6.36s/it]
 85%|########5 | 406/475 [38:54<07:43,  6.72s/it]
 86%|########5 | 407/475 [39:04<08:43,  7.70s/it]
 86%|########5 | 408/475 [39:08<07:33,  6.77s/it]
 86%|########6 | 409/475 [39:12<06:18,  5.74s/it]
 86%|########6 | 410/475 [39:22<07:35,  7.01s/it]
 87%|########6 | 411/475 [39:29<07:24,  6.94s/it]
 87%|########6 | 412/475 [39:36<07:21,  7.01s/it]
 87%|########6 | 413/475 [39:40<06:18,  6.11s/it]
 87%|########7 | 414/475 [39:43<05:28,  5.38s/it]
 87%|########7 | 415/475 [39:51<05:54,  5.90s/it]
 88%|########7 | 416/475 [39:57<06:05,  6.19s/it]
 88%|########7 | 417/475 [40:07<06:50,  7.08s/it]
 88%|########8 | 418/475 [40:16<07:21,  7.74s/it]
 88%|########8 | 419/475 [40:19<05:59,  6.42s/it]
 88%|########8 | 420/475 [40:23<05:08,  5.62s/it]
 89%|########8 | 421/475 [40:27<04:44,  5.26s/it]
 89%|########8 | 422/475 [40:34<05:00,  5.68s/it]
 89%|########9 | 423/475 [40:38<04:36,  5.32s/it]
 89%|########9 | 424/475 [40:43<04:21,  5.13s/it]
 89%|########9 | 425/475 [40:47<03:53,  4.67s/it]
 90%|########9 | 426/475 [40:50<03:20,  4.10s/it]
 90%|########9 | 427/475 [40:52<02:58,  3.71s/it]
 90%|######### | 428/475 [41:07<05:32,  7.08s/it]
 90%|######### | 429/475 [41:12<04:58,  6.50s/it]
 91%|######### | 430/475 [41:16<04:17,  5.73s/it]
 91%|######### | 431/475 [41:21<04:01,  5.48s/it]
 91%|######### | 432/475 [41:46<07:58, 11.13s/it]
 91%|#########1| 433/475 [41:54<07:16, 10.39s/it]
 91%|#########1| 434/475 [42:20<10:12, 14.94s/it]
 92%|#########1| 435/475 [42:26<08:09, 12.23s/it]
 92%|#########1| 436/475 [42:31<06:30, 10.01s/it]
 92%|#########2| 437/475 [42:40<06:19,  9.99s/it]
 92%|#########2| 438/475 [42:46<05:22,  8.73s/it]
 92%|#########2| 439/475 [42:50<04:23,  7.31s/it]
 93%|#########2| 440/475 [43:04<05:23,  9.24s/it]
 93%|#########2| 441/475 [43:11<04:49,  8.52s/it]
 93%|#########3| 442/475 [43:17<04:16,  7.77s/it]
 93%|#########3| 443/475 [43:29<04:54,  9.20s/it]
 93%|#########3| 444/475 [43:41<05:08,  9.94s/it]
 94%|#########3| 445/475 [43:47<04:25,  8.83s/it]
 94%|#########3| 446/475 [43:52<03:40,  7.61s/it]
 94%|#########4| 447/475 [43:59<03:30,  7.53s/it]
 94%|#########4| 448/475 [44:17<04:48, 10.68s/it]
 95%|#########4| 449/475 [44:25<04:15,  9.81s/it]
 95%|#########4| 450/475 [44:30<03:26,  8.25s/it]
 95%|#########4| 451/475 [44:44<04:02, 10.12s/it]
 95%|#########5| 452/475 [44:48<03:09,  8.24s/it]
 95%|#########5| 453/475 [45:10<04:31, 12.33s/it]
 96%|#########5| 454/475 [45:20<04:03, 11.60s/it]
 96%|#########5| 455/475 [45:25<03:15,  9.76s/it]
 96%|#########6| 456/475 [45:31<02:43,  8.61s/it]
 96%|#########6| 457/475 [45:37<02:18,  7.70s/it]
 96%|#########6| 458/475 [45:42<01:55,  6.80s/it]
 97%|#########6| 459/475 [45:50<01:57,  7.34s/it]
 97%|#########6| 460/475 [45:53<01:31,  6.08s/it]
 97%|#########7| 461/475 [46:04<01:45,  7.55s/it]
 97%|#########7| 462/475 [46:09<01:28,  6.81s/it]
 97%|#########7| 463/475 [46:21<01:38,  8.17s/it]
 98%|#########7| 464/475 [46:27<01:23,  7.58s/it]
 98%|#########7| 465/475 [46:40<01:33,  9.35s/it]
 98%|#########8| 466/475 [46:52<01:31, 10.16s/it]
 98%|#########8| 467/475 [46:58<01:11,  8.91s/it]
 99%|#########8| 468/475 [47:03<00:54,  7.72s/it]
 99%|#########8| 469/475 [47:11<00:45,  7.56s/it]
 99%|#########8| 470/475 [47:19<00:39,  7.96s/it]
 99%|#########9| 471/475 [47:21<00:24,  6.17s/it]
 99%|#########9| 472/475 [47:43<00:32, 10.67s/it]
100%|#########9| 473/475 [47:51<00:19,  9.93s/it]
100%|#########9| 474/475 [47:58<00:08,  8.98s/it]
100%|##########| 475/475 [48:01<00:00,  7.17s/it]
100%|##########| 475/475 [48:01<00:00,  6.07s/it]
examples_built/07_reconstruction/MAPMRI_ng.png

On the left we see the overall NG and on the right the directional perpendicular NG and parallel NG. The NG ranges from 1 (completely non-Gaussian) to 0 (completely Gaussian). The overall NG of a voxel is always higher or equal than each of its components. It can be seen that NG has low values in the CSF and higher in the white matter.

Increases or decreases in these values do not point to a specific microstructural change, but can indicate clues as to what is happening, similar to fractional anisotropy. An initial simulation study that quantifies the added value of q-space indices over DTI indices is given in [Fick2016b].

The MAP-MRI framework also allows for the estimation of orientation distribution functions (ODFs). We recommend to use the isotropic implementation for this purpose, as the anisotropic implementation has a bias towards smaller crossing angles.

For the isotropic basis we recommend to use a radial_order of 8, as the basis needs more generic and needs more basis functions to approximate the signal.

radial_order = 8
map_model_both_iso = mapmri.MapmriModel(gtab, radial_order=radial_order,
                                        laplacian_regularization=True,
                                        laplacian_weighting=.1,
                                        positivity_constraint=True,
                                        anisotropic_scaling=False)

mapfit_both_iso = map_model_both_iso.fit(data_small)
  0%|          | 0/475 [00:00<?, ?it/s]
  0%|          | 1/475 [00:00<02:45,  2.86it/s]
  0%|          | 2/475 [00:00<02:58,  2.65it/s]
  1%|          | 3/475 [00:01<03:55,  2.00it/s]
  1%|          | 4/475 [00:01<04:13,  1.86it/s]
  1%|1         | 5/475 [00:02<04:38,  1.69it/s]
  1%|1         | 6/475 [00:03<05:12,  1.50it/s]
  1%|1         | 7/475 [00:04<05:02,  1.54it/s]
  2%|1         | 8/475 [00:04<04:54,  1.58it/s]
  2%|1         | 9/475 [00:05<05:03,  1.54it/s]
  2%|2         | 10/475 [00:06<05:07,  1.51it/s]
  2%|2         | 11/475 [00:06<04:35,  1.69it/s]
  3%|2         | 12/475 [00:06<04:13,  1.83it/s]
  3%|2         | 13/475 [00:07<04:10,  1.84it/s]
  3%|2         | 14/475 [00:08<04:13,  1.82it/s]
  3%|3         | 15/475 [00:08<04:20,  1.76it/s]
  3%|3         | 16/475 [00:09<04:08,  1.84it/s]
  4%|3         | 17/475 [00:09<03:38,  2.10it/s]
  4%|3         | 18/475 [00:10<03:47,  2.01it/s]
  4%|4         | 19/475 [00:10<03:47,  2.00it/s]
  4%|4         | 20/475 [00:10<03:37,  2.09it/s]
  4%|4         | 21/475 [00:11<03:52,  1.95it/s]
  5%|4         | 22/475 [00:12<04:04,  1.85it/s]
  5%|4         | 23/475 [00:12<03:40,  2.05it/s]
  5%|5         | 24/475 [00:12<03:27,  2.17it/s]
  5%|5         | 25/475 [00:13<04:24,  1.70it/s]
  5%|5         | 26/475 [00:14<04:33,  1.64it/s]
  6%|5         | 27/475 [00:15<04:28,  1.67it/s]
  6%|5         | 28/475 [00:15<04:48,  1.55it/s]
  6%|6         | 29/475 [00:17<07:35,  1.02s/it]
  6%|6         | 30/475 [00:18<06:53,  1.08it/s]
  7%|6         | 31/475 [00:18<06:09,  1.20it/s]
  7%|6         | 32/475 [00:20<07:12,  1.02it/s]
  7%|6         | 33/475 [00:20<05:38,  1.31it/s]
  7%|7         | 34/475 [00:21<05:29,  1.34it/s]
  7%|7         | 35/475 [00:21<04:48,  1.52it/s]
  8%|7         | 36/475 [00:22<04:06,  1.78it/s]
  8%|7         | 37/475 [00:22<04:04,  1.79it/s]
  8%|8         | 38/475 [00:22<03:27,  2.10it/s]
  8%|8         | 39/475 [00:23<02:52,  2.53it/s]
  8%|8         | 40/475 [00:23<03:15,  2.23it/s]
  9%|8         | 41/475 [00:24<03:17,  2.20it/s]
  9%|8         | 42/475 [00:24<03:25,  2.11it/s]
  9%|9         | 43/475 [00:25<03:25,  2.11it/s]
  9%|9         | 44/475 [00:26<04:35,  1.56it/s]
  9%|9         | 45/475 [00:27<05:02,  1.42it/s]
 10%|9         | 46/475 [00:27<05:06,  1.40it/s]
 10%|9         | 47/475 [00:28<04:39,  1.53it/s]
 10%|#         | 48/475 [00:28<04:03,  1.76it/s]
 10%|#         | 49/475 [00:29<03:57,  1.80it/s]
 11%|#         | 50/475 [00:29<04:02,  1.76it/s]
 11%|#         | 51/475 [00:29<03:15,  2.17it/s]
 11%|#         | 52/475 [00:30<03:24,  2.07it/s]
 11%|#1        | 53/475 [00:31<03:45,  1.87it/s]
 11%|#1        | 54/475 [00:31<03:25,  2.05it/s]
 12%|#1        | 55/475 [00:31<02:43,  2.57it/s]
 12%|#1        | 56/475 [00:31<02:20,  2.99it/s]
 12%|#2        | 57/475 [00:32<03:05,  2.25it/s]
 12%|#2        | 58/475 [00:33<02:58,  2.34it/s]
 12%|#2        | 59/475 [00:33<02:25,  2.86it/s]
 13%|#2        | 60/475 [00:33<02:09,  3.21it/s]
 13%|#2        | 61/475 [00:34<03:18,  2.08it/s]
 13%|#3        | 62/475 [00:34<03:13,  2.14it/s]
 13%|#3        | 63/475 [00:35<03:52,  1.77it/s]
 13%|#3        | 64/475 [00:35<03:38,  1.88it/s]
 14%|#3        | 65/475 [00:36<03:48,  1.79it/s]
 14%|#3        | 66/475 [00:36<03:30,  1.94it/s]
 14%|#4        | 67/475 [00:37<03:59,  1.70it/s]
 14%|#4        | 68/475 [00:38<03:36,  1.88it/s]
 15%|#4        | 69/475 [00:38<03:14,  2.09it/s]
 15%|#4        | 70/475 [00:38<02:44,  2.47it/s]
 15%|#4        | 71/475 [00:39<02:43,  2.47it/s]
 15%|#5        | 72/475 [00:39<02:35,  2.59it/s]
 15%|#5        | 73/475 [00:39<02:06,  3.19it/s]
 16%|#5        | 74/475 [00:39<01:47,  3.75it/s]
 16%|#5        | 75/475 [00:40<02:17,  2.90it/s]
 16%|#6        | 76/475 [00:40<02:32,  2.62it/s]
 16%|#6        | 77/475 [00:40<02:07,  3.12it/s]
 16%|#6        | 78/475 [00:41<01:58,  3.36it/s]
 17%|#6        | 79/475 [00:41<01:49,  3.61it/s]
 17%|#6        | 80/475 [00:41<01:54,  3.46it/s]
 17%|#7        | 81/475 [00:42<02:48,  2.33it/s]
 17%|#7        | 82/475 [00:42<02:52,  2.28it/s]
 17%|#7        | 83/475 [00:43<03:22,  1.93it/s]
 18%|#7        | 84/475 [00:44<03:46,  1.73it/s]
 18%|#7        | 85/475 [00:44<03:18,  1.97it/s]
 18%|#8        | 86/475 [00:45<02:58,  2.17it/s]
 18%|#8        | 87/475 [00:45<02:38,  2.44it/s]
 19%|#8        | 88/475 [00:45<02:17,  2.81it/s]
 19%|#8        | 89/475 [00:45<01:54,  3.38it/s]
 19%|#8        | 90/475 [00:45<01:39,  3.88it/s]
 19%|#9        | 91/475 [00:46<01:27,  4.41it/s]
 19%|#9        | 92/475 [00:46<01:17,  4.96it/s]
 20%|#9        | 93/475 [00:46<01:43,  3.69it/s]
 20%|#9        | 94/475 [00:46<01:45,  3.61it/s]
 20%|##        | 95/475 [00:47<02:14,  2.83it/s]
 20%|##        | 96/475 [00:47<02:12,  2.86it/s]
 20%|##        | 97/475 [00:48<02:07,  2.96it/s]
 21%|##        | 98/475 [00:48<02:34,  2.45it/s]
 21%|##        | 99/475 [00:49<02:33,  2.44it/s]
 21%|##1       | 100/475 [00:49<02:58,  2.10it/s]
 21%|##1       | 101/475 [00:50<02:40,  2.33it/s]
 21%|##1       | 102/475 [00:50<02:28,  2.51it/s]
 22%|##1       | 103/475 [00:50<02:24,  2.57it/s]
 22%|##1       | 104/475 [00:51<02:22,  2.61it/s]
 22%|##2       | 105/475 [00:51<02:59,  2.06it/s]
 22%|##2       | 106/475 [00:52<03:01,  2.03it/s]
 23%|##2       | 107/475 [00:52<02:28,  2.47it/s]
 23%|##2       | 108/475 [00:52<01:58,  3.09it/s]
 23%|##2       | 109/475 [00:52<01:37,  3.75it/s]
 23%|##3       | 110/475 [00:53<01:26,  4.21it/s]
 23%|##3       | 111/475 [00:53<01:18,  4.64it/s]
 24%|##3       | 112/475 [00:53<01:42,  3.53it/s]
 24%|##3       | 113/475 [00:53<01:44,  3.46it/s]
 24%|##4       | 114/475 [00:54<02:30,  2.39it/s]
 24%|##4       | 115/475 [00:54<02:14,  2.68it/s]
 24%|##4       | 116/475 [00:55<02:02,  2.94it/s]
 25%|##4       | 117/475 [00:55<01:50,  3.23it/s]
 25%|##4       | 118/475 [00:55<01:56,  3.05it/s]
 25%|##5       | 119/475 [00:56<02:06,  2.82it/s]
 25%|##5       | 120/475 [00:56<02:06,  2.80it/s]
 25%|##5       | 121/475 [00:57<02:47,  2.11it/s]
 26%|##5       | 122/475 [00:57<03:05,  1.90it/s]
 26%|##5       | 123/475 [00:58<02:33,  2.30it/s]
 26%|##6       | 124/475 [00:58<02:12,  2.64it/s]
 26%|##6       | 125/475 [00:58<01:59,  2.94it/s]
 27%|##6       | 126/475 [00:58<01:37,  3.58it/s]
 27%|##6       | 127/475 [00:58<01:20,  4.32it/s]
 27%|##6       | 128/475 [00:59<01:12,  4.81it/s]
 27%|##7       | 129/475 [00:59<01:07,  5.14it/s]
 27%|##7       | 130/475 [00:59<01:04,  5.31it/s]
 28%|##7       | 131/475 [00:59<01:14,  4.64it/s]
 28%|##7       | 132/475 [01:00<01:42,  3.35it/s]
 28%|##8       | 133/475 [01:00<01:56,  2.93it/s]
 28%|##8       | 134/475 [01:01<02:07,  2.67it/s]
 28%|##8       | 135/475 [01:01<02:06,  2.69it/s]
 29%|##8       | 136/475 [01:01<02:11,  2.57it/s]
 29%|##8       | 137/475 [01:02<02:24,  2.33it/s]
 29%|##9       | 138/475 [01:02<02:21,  2.39it/s]
 29%|##9       | 139/475 [01:03<03:11,  1.76it/s]
 29%|##9       | 140/475 [01:04<02:53,  1.93it/s]
 30%|##9       | 141/475 [01:04<02:34,  2.16it/s]
 30%|##9       | 142/475 [01:04<02:11,  2.53it/s]
 30%|###       | 143/475 [01:04<01:47,  3.08it/s]
 30%|###       | 144/475 [01:05<01:35,  3.48it/s]
 31%|###       | 145/475 [01:05<01:20,  4.10it/s]
 31%|###       | 146/475 [01:05<01:12,  4.55it/s]
 31%|###       | 147/475 [01:05<01:06,  4.93it/s]
 31%|###1      | 148/475 [01:05<00:59,  5.49it/s]
 31%|###1      | 149/475 [01:05<00:56,  5.76it/s]
 32%|###1      | 150/475 [01:06<01:06,  4.92it/s]
 32%|###1      | 151/475 [01:06<01:23,  3.88it/s]
 32%|###2      | 152/475 [01:06<01:33,  3.45it/s]
 32%|###2      | 153/475 [01:06<01:21,  3.95it/s]
 32%|###2      | 154/475 [01:07<01:11,  4.50it/s]
 33%|###2      | 155/475 [01:07<01:05,  4.86it/s]
 33%|###2      | 156/475 [01:07<01:07,  4.75it/s]
 33%|###3      | 157/475 [01:07<01:08,  4.65it/s]
 33%|###3      | 158/475 [01:08<01:47,  2.96it/s]
 33%|###3      | 159/475 [01:08<01:42,  3.09it/s]
 34%|###3      | 160/475 [01:09<01:47,  2.93it/s]
 34%|###3      | 161/475 [01:09<01:41,  3.08it/s]
 34%|###4      | 162/475 [01:09<01:39,  3.15it/s]
 34%|###4      | 163/475 [01:10<01:54,  2.74it/s]
 35%|###4      | 164/475 [01:10<01:43,  3.01it/s]
 35%|###4      | 165/475 [01:10<01:27,  3.54it/s]
 35%|###4      | 166/475 [01:10<01:14,  4.16it/s]
 35%|###5      | 167/475 [01:10<01:05,  4.68it/s]
 35%|###5      | 168/475 [01:11<01:07,  4.58it/s]
 36%|###5      | 169/475 [01:11<01:34,  3.25it/s]
 36%|###5      | 170/475 [01:12<01:51,  2.74it/s]
 36%|###6      | 171/475 [01:12<02:10,  2.34it/s]
 36%|###6      | 172/475 [01:12<01:58,  2.57it/s]
 36%|###6      | 173/475 [01:13<01:44,  2.89it/s]
 37%|###6      | 174/475 [01:13<01:44,  2.89it/s]
 37%|###6      | 175/475 [01:13<01:43,  2.89it/s]
 37%|###7      | 176/475 [01:14<02:13,  2.24it/s]
 37%|###7      | 177/475 [01:15<02:29,  2.00it/s]
 37%|###7      | 178/475 [01:15<02:45,  1.79it/s]
 38%|###7      | 179/475 [01:16<02:16,  2.16it/s]
 38%|###7      | 180/475 [01:16<02:02,  2.41it/s]
 38%|###8      | 181/475 [01:16<01:55,  2.55it/s]
 38%|###8      | 182/475 [01:17<01:46,  2.75it/s]
 39%|###8      | 183/475 [01:17<01:37,  2.99it/s]
 39%|###8      | 184/475 [01:17<01:22,  3.52it/s]
 39%|###8      | 185/475 [01:17<01:10,  4.10it/s]
 39%|###9      | 186/475 [01:17<01:00,  4.80it/s]
 39%|###9      | 187/475 [01:18<01:25,  3.37it/s]
 40%|###9      | 188/475 [01:18<01:34,  3.04it/s]
 40%|###9      | 189/475 [01:19<02:18,  2.06it/s]
 40%|####      | 190/475 [01:20<02:21,  2.02it/s]
 40%|####      | 191/475 [01:20<02:31,  1.87it/s]
 40%|####      | 192/475 [01:21<02:15,  2.09it/s]
 41%|####      | 193/475 [01:21<02:11,  2.14it/s]
 41%|####      | 194/475 [01:22<02:26,  1.91it/s]
 41%|####1     | 195/475 [01:22<02:15,  2.06it/s]
 41%|####1     | 196/475 [01:22<02:03,  2.26it/s]
 41%|####1     | 197/475 [01:23<01:52,  2.47it/s]
 42%|####1     | 198/475 [01:23<02:16,  2.03it/s]
 42%|####1     | 199/475 [01:24<01:53,  2.43it/s]
 42%|####2     | 200/475 [01:24<01:39,  2.77it/s]
 42%|####2     | 201/475 [01:24<01:26,  3.16it/s]
 43%|####2     | 202/475 [01:24<01:16,  3.57it/s]
 43%|####2     | 203/475 [01:24<01:05,  4.16it/s]
 43%|####2     | 204/475 [01:25<01:01,  4.41it/s]
 43%|####3     | 205/475 [01:25<00:55,  4.87it/s]
 43%|####3     | 206/475 [01:25<00:49,  5.46it/s]
 44%|####3     | 207/475 [01:26<02:07,  2.10it/s]
 44%|####3     | 208/475 [01:26<01:56,  2.30it/s]
 44%|####4     | 209/475 [01:27<01:47,  2.48it/s]
 44%|####4     | 210/475 [01:27<01:37,  2.71it/s]
 44%|####4     | 211/475 [01:27<01:39,  2.66it/s]
 45%|####4     | 212/475 [01:28<01:42,  2.58it/s]
 45%|####4     | 213/475 [01:28<01:36,  2.71it/s]
 45%|####5     | 214/475 [01:29<01:39,  2.62it/s]
 45%|####5     | 215/475 [01:29<01:50,  2.36it/s]
 45%|####5     | 216/475 [01:29<01:47,  2.41it/s]
 46%|####5     | 217/475 [01:30<01:50,  2.33it/s]
 46%|####5     | 218/475 [01:30<01:40,  2.55it/s]
 46%|####6     | 219/475 [01:31<01:33,  2.73it/s]
 46%|####6     | 220/475 [01:31<01:58,  2.15it/s]
 47%|####6     | 221/475 [01:32<01:44,  2.43it/s]
 47%|####6     | 222/475 [01:32<01:27,  2.88it/s]
 47%|####6     | 223/475 [01:32<01:11,  3.50it/s]
 47%|####7     | 224/475 [01:32<01:02,  4.02it/s]
 47%|####7     | 225/475 [01:32<00:53,  4.69it/s]
 48%|####7     | 226/475 [01:33<01:09,  3.60it/s]
 48%|####7     | 227/475 [01:33<01:20,  3.10it/s]
 48%|####8     | 228/475 [01:34<01:43,  2.39it/s]
 48%|####8     | 229/475 [01:34<01:50,  2.23it/s]
 48%|####8     | 230/475 [01:35<01:50,  2.23it/s]
 49%|####8     | 231/475 [01:35<01:45,  2.32it/s]
 49%|####8     | 232/475 [01:35<01:39,  2.44it/s]
 49%|####9     | 233/475 [01:36<02:05,  1.93it/s]
 49%|####9     | 234/475 [01:37<02:02,  1.96it/s]
 49%|####9     | 235/475 [01:37<02:12,  1.82it/s]
 50%|####9     | 236/475 [01:38<02:10,  1.83it/s]
 50%|####9     | 237/475 [01:38<02:07,  1.86it/s]
 50%|#####     | 238/475 [01:39<01:57,  2.02it/s]
 50%|#####     | 239/475 [01:39<01:43,  2.28it/s]
 51%|#####     | 240/475 [01:40<01:57,  2.00it/s]
 51%|#####     | 241/475 [01:40<01:37,  2.41it/s]
 51%|#####     | 242/475 [01:40<01:17,  3.01it/s]
 51%|#####1    | 243/475 [01:40<01:04,  3.59it/s]
 51%|#####1    | 244/475 [01:40<00:55,  4.15it/s]
 52%|#####1    | 245/475 [01:40<00:48,  4.77it/s]
 52%|#####1    | 246/475 [01:41<01:23,  2.74it/s]
 52%|#####2    | 247/475 [01:42<01:25,  2.67it/s]
 52%|#####2    | 248/475 [01:42<01:19,  2.87it/s]
 52%|#####2    | 249/475 [01:42<01:13,  3.08it/s]
 53%|#####2    | 250/475 [01:43<01:53,  1.98it/s]
 53%|#####2    | 251/475 [01:44<02:23,  1.56it/s]
 53%|#####3    | 252/475 [01:45<02:12,  1.68it/s]
 53%|#####3    | 253/475 [01:45<02:21,  1.57it/s]
 53%|#####3    | 254/475 [01:46<02:27,  1.49it/s]
 54%|#####3    | 255/475 [01:47<02:24,  1.52it/s]
 54%|#####3    | 256/475 [01:47<02:06,  1.73it/s]
 54%|#####4    | 257/475 [01:48<02:08,  1.70it/s]
 54%|#####4    | 258/475 [01:48<01:57,  1.85it/s]
 55%|#####4    | 259/475 [01:48<01:47,  2.00it/s]
 55%|#####4    | 260/475 [01:49<01:43,  2.09it/s]
 55%|#####4    | 261/475 [01:49<01:35,  2.24it/s]
 55%|#####5    | 262/475 [01:50<01:31,  2.32it/s]
 55%|#####5    | 263/475 [01:50<01:19,  2.68it/s]
 56%|#####5    | 264/475 [01:50<01:03,  3.31it/s]
 56%|#####5    | 265/475 [01:50<01:04,  3.24it/s]
 56%|#####6    | 266/475 [01:51<01:08,  3.05it/s]
 56%|#####6    | 267/475 [01:51<01:04,  3.23it/s]
 56%|#####6    | 268/475 [01:51<00:55,  3.72it/s]
 57%|#####6    | 269/475 [01:52<01:23,  2.48it/s]
 57%|#####6    | 270/475 [01:52<01:26,  2.36it/s]
 57%|#####7    | 271/475 [01:53<01:37,  2.10it/s]
 57%|#####7    | 272/475 [01:54<02:00,  1.68it/s]
 57%|#####7    | 273/475 [01:54<02:04,  1.62it/s]
 58%|#####7    | 274/475 [01:55<02:05,  1.60it/s]
 58%|#####7    | 275/475 [01:56<01:57,  1.70it/s]
 58%|#####8    | 276/475 [01:56<02:02,  1.63it/s]
 58%|#####8    | 277/475 [01:57<02:16,  1.45it/s]
 59%|#####8    | 278/475 [01:58<02:30,  1.31it/s]
 59%|#####8    | 279/475 [01:59<02:17,  1.43it/s]
 59%|#####8    | 280/475 [01:59<01:56,  1.67it/s]
 59%|#####9    | 281/475 [01:59<01:48,  1.79it/s]
 59%|#####9    | 282/475 [02:00<01:38,  1.96it/s]
 60%|#####9    | 283/475 [02:00<01:18,  2.43it/s]
 60%|#####9    | 284/475 [02:00<01:11,  2.66it/s]
 60%|######    | 285/475 [02:01<01:07,  2.80it/s]
 60%|######    | 286/475 [02:01<01:02,  3.02it/s]
 60%|######    | 287/475 [02:01<01:05,  2.85it/s]
 61%|######    | 288/475 [02:02<01:03,  2.93it/s]
 61%|######    | 289/475 [02:02<01:01,  3.03it/s]
 61%|######1   | 290/475 [02:02<01:03,  2.89it/s]
 61%|######1   | 291/475 [02:03<01:30,  2.04it/s]
 61%|######1   | 292/475 [02:04<02:04,  1.47it/s]
 62%|######1   | 293/475 [02:05<01:50,  1.65it/s]
 62%|######1   | 294/475 [02:06<02:07,  1.41it/s]
 62%|######2   | 295/475 [02:06<01:57,  1.53it/s]
 62%|######2   | 296/475 [02:07<01:55,  1.55it/s]
 63%|######2   | 297/475 [02:08<01:59,  1.48it/s]
 63%|######2   | 298/475 [02:08<02:10,  1.36it/s]
 63%|######2   | 299/475 [02:09<02:09,  1.36it/s]
 63%|######3   | 300/475 [02:10<02:02,  1.43it/s]
 63%|######3   | 301/475 [02:10<01:43,  1.69it/s]
 64%|######3   | 302/475 [02:11<01:44,  1.65it/s]
 64%|######3   | 303/475 [02:11<01:38,  1.75it/s]
 64%|######4   | 304/475 [02:12<01:27,  1.95it/s]
 64%|######4   | 305/475 [02:12<01:19,  2.15it/s]
 64%|######4   | 306/475 [02:12<01:13,  2.29it/s]
 65%|######4   | 307/475 [02:13<01:01,  2.75it/s]
 65%|######4   | 308/475 [02:13<01:02,  2.67it/s]
 65%|######5   | 309/475 [02:13<00:57,  2.87it/s]
 65%|######5   | 310/475 [02:14<01:06,  2.47it/s]
 65%|######5   | 311/475 [02:15<01:22,  1.98it/s]
 66%|######5   | 312/475 [02:15<01:18,  2.08it/s]
 66%|######5   | 313/475 [02:16<01:21,  1.99it/s]
 66%|######6   | 314/475 [02:16<01:28,  1.81it/s]
 66%|######6   | 315/475 [02:16<01:13,  2.19it/s]
 67%|######6   | 316/475 [02:17<01:16,  2.09it/s]
 67%|######6   | 317/475 [02:17<01:11,  2.21it/s]
 67%|######6   | 318/475 [02:18<01:08,  2.30it/s]
 67%|######7   | 319/475 [02:18<01:16,  2.03it/s]
 67%|######7   | 320/475 [02:19<01:14,  2.09it/s]
 68%|######7   | 321/475 [02:19<01:09,  2.21it/s]
 68%|######7   | 322/475 [02:20<01:06,  2.31it/s]
 68%|######8   | 323/475 [02:20<01:01,  2.48it/s]
 68%|######8   | 324/475 [02:20<00:59,  2.54it/s]
 68%|######8   | 325/475 [02:21<01:01,  2.45it/s]
 69%|######8   | 326/475 [02:21<00:54,  2.72it/s]
 69%|######8   | 327/475 [02:22<01:01,  2.40it/s]
 69%|######9   | 328/475 [02:22<01:00,  2.43it/s]
 69%|######9   | 329/475 [02:23<01:12,  2.01it/s]
 69%|######9   | 330/475 [02:24<01:29,  1.62it/s]
 70%|######9   | 331/475 [02:24<01:25,  1.69it/s]
 70%|######9   | 332/475 [02:25<01:29,  1.59it/s]
 70%|#######   | 333/475 [02:25<01:23,  1.71it/s]
 70%|#######   | 334/475 [02:25<01:06,  2.13it/s]
 71%|#######   | 335/475 [02:26<01:21,  1.73it/s]
 71%|#######   | 336/475 [02:27<01:21,  1.71it/s]
 71%|#######   | 337/475 [02:27<01:20,  1.71it/s]
 71%|#######1  | 338/475 [02:28<01:09,  1.98it/s]
 71%|#######1  | 339/475 [02:28<01:04,  2.12it/s]
 72%|#######1  | 340/475 [02:28<00:56,  2.38it/s]
 72%|#######1  | 341/475 [02:29<00:52,  2.56it/s]
 72%|#######2  | 342/475 [02:29<00:46,  2.85it/s]
 72%|#######2  | 343/475 [02:30<00:49,  2.65it/s]
 72%|#######2  | 344/475 [02:30<00:49,  2.65it/s]
 73%|#######2  | 345/475 [02:30<00:43,  3.02it/s]
 73%|#######2  | 346/475 [02:31<00:45,  2.85it/s]
 73%|#######3  | 347/475 [02:31<00:49,  2.58it/s]
 73%|#######3  | 348/475 [02:32<01:03,  1.99it/s]
 73%|#######3  | 349/475 [02:32<01:01,  2.04it/s]
 74%|#######3  | 350/475 [02:33<01:15,  1.65it/s]
 74%|#######3  | 351/475 [02:34<01:19,  1.55it/s]
 74%|#######4  | 352/475 [02:34<01:14,  1.65it/s]
 74%|#######4  | 353/475 [02:35<01:00,  2.03it/s]
 75%|#######4  | 354/475 [02:35<00:58,  2.08it/s]
 75%|#######4  | 355/475 [02:35<00:51,  2.35it/s]
 75%|#######4  | 356/475 [02:36<00:46,  2.56it/s]
 75%|#######5  | 357/475 [02:37<01:19,  1.49it/s]
 75%|#######5  | 358/475 [02:37<01:07,  1.73it/s]
 76%|#######5  | 359/475 [02:38<00:56,  2.06it/s]
 76%|#######5  | 360/475 [02:38<01:02,  1.84it/s]
 76%|#######6  | 361/475 [02:39<00:53,  2.12it/s]
 76%|#######6  | 362/475 [02:39<00:49,  2.29it/s]
 76%|#######6  | 363/475 [02:39<00:46,  2.43it/s]
 77%|#######6  | 364/475 [02:40<00:40,  2.73it/s]
 77%|#######6  | 365/475 [02:40<00:35,  3.08it/s]
 77%|#######7  | 366/475 [02:40<00:34,  3.12it/s]
 77%|#######7  | 367/475 [02:40<00:35,  3.09it/s]
 77%|#######7  | 368/475 [02:41<00:35,  3.01it/s]
 78%|#######7  | 369/475 [02:41<00:35,  3.00it/s]
 78%|#######7  | 370/475 [02:42<00:50,  2.10it/s]
 78%|#######8  | 371/475 [02:42<00:41,  2.52it/s]
 78%|#######8  | 372/475 [02:43<00:43,  2.36it/s]
 79%|#######8  | 373/475 [02:43<00:41,  2.44it/s]
 79%|#######8  | 374/475 [02:43<00:39,  2.55it/s]
 79%|#######8  | 375/475 [02:44<00:36,  2.71it/s]
 79%|#######9  | 376/475 [02:44<00:33,  2.92it/s]
 79%|#######9  | 377/475 [02:44<00:33,  2.94it/s]
 80%|#######9  | 378/475 [02:45<00:34,  2.79it/s]
 80%|#######9  | 379/475 [02:46<00:50,  1.90it/s]
 80%|########  | 380/475 [02:46<00:43,  2.16it/s]
 80%|########  | 381/475 [02:46<00:36,  2.60it/s]
 80%|########  | 382/475 [02:46<00:33,  2.79it/s]
 81%|########  | 383/475 [02:47<00:40,  2.28it/s]
 81%|########  | 384/475 [02:48<00:43,  2.09it/s]
 81%|########1 | 385/475 [02:48<00:41,  2.16it/s]
 81%|########1 | 386/475 [02:48<00:39,  2.27it/s]
 81%|########1 | 387/475 [02:49<00:39,  2.24it/s]
 82%|########1 | 388/475 [02:49<00:38,  2.27it/s]
 82%|########1 | 389/475 [02:50<00:45,  1.91it/s]
 82%|########2 | 390/475 [02:50<00:39,  2.16it/s]
 82%|########2 | 391/475 [02:51<00:38,  2.16it/s]
 83%|########2 | 392/475 [02:51<00:40,  2.04it/s]
 83%|########2 | 393/475 [02:52<00:37,  2.20it/s]
 83%|########2 | 394/475 [02:52<00:32,  2.51it/s]
 83%|########3 | 395/475 [02:52<00:31,  2.56it/s]
 83%|########3 | 396/475 [02:53<00:29,  2.69it/s]
 84%|########3 | 397/475 [02:53<00:30,  2.54it/s]
 84%|########3 | 398/475 [02:54<00:31,  2.41it/s]
 84%|########4 | 399/475 [02:54<00:30,  2.47it/s]
 84%|########4 | 400/475 [02:55<00:33,  2.24it/s]
 84%|########4 | 401/475 [02:55<00:35,  2.11it/s]
 85%|########4 | 402/475 [02:56<00:37,  1.95it/s]
 85%|########4 | 403/475 [02:56<00:34,  2.10it/s]
 85%|########5 | 404/475 [02:56<00:32,  2.18it/s]
 85%|########5 | 405/475 [02:57<00:30,  2.27it/s]
 85%|########5 | 406/475 [02:57<00:29,  2.31it/s]
 86%|########5 | 407/475 [02:58<00:29,  2.32it/s]
 86%|########5 | 408/475 [02:58<00:28,  2.34it/s]
 86%|########6 | 409/475 [02:58<00:25,  2.57it/s]
 86%|########6 | 410/475 [02:59<00:25,  2.59it/s]
 87%|########6 | 411/475 [02:59<00:29,  2.16it/s]
 87%|########6 | 412/475 [03:00<00:24,  2.60it/s]
 87%|########6 | 413/475 [03:00<00:21,  2.87it/s]
 87%|########7 | 414/475 [03:00<00:23,  2.57it/s]
 87%|########7 | 415/475 [03:01<00:21,  2.75it/s]
 88%|########7 | 416/475 [03:01<00:27,  2.17it/s]
 88%|########7 | 417/475 [03:02<00:32,  1.78it/s]
 88%|########8 | 418/475 [03:03<00:31,  1.79it/s]
 88%|########8 | 419/475 [03:03<00:30,  1.81it/s]
 88%|########8 | 420/475 [03:04<00:29,  1.88it/s]
 89%|########8 | 421/475 [03:04<00:27,  1.99it/s]
 89%|########8 | 422/475 [03:05<00:28,  1.84it/s]
 89%|########9 | 423/475 [03:05<00:22,  2.26it/s]
 89%|########9 | 424/475 [03:05<00:19,  2.56it/s]
 89%|########9 | 425/475 [03:06<00:23,  2.17it/s]
 90%|########9 | 426/475 [03:07<00:24,  2.02it/s]
 90%|########9 | 427/475 [03:07<00:19,  2.42it/s]
 90%|######### | 428/475 [03:07<00:16,  2.77it/s]
 90%|######### | 429/475 [03:07<00:16,  2.76it/s]
 91%|######### | 430/475 [03:08<00:19,  2.28it/s]
 91%|######### | 431/475 [03:08<00:18,  2.34it/s]
 91%|######### | 432/475 [03:09<00:17,  2.51it/s]
 91%|#########1| 433/475 [03:09<00:18,  2.26it/s]
 91%|#########1| 434/475 [03:10<00:20,  2.00it/s]
 92%|#########1| 435/475 [03:10<00:19,  2.08it/s]
 92%|#########1| 436/475 [03:11<00:18,  2.08it/s]
 92%|#########2| 437/475 [03:11<00:19,  1.98it/s]
 92%|#########2| 438/475 [03:12<00:16,  2.30it/s]
 92%|#########2| 439/475 [03:12<00:15,  2.33it/s]
 93%|#########2| 440/475 [03:13<00:16,  2.08it/s]
 93%|#########2| 441/475 [03:13<00:16,  2.09it/s]
 93%|#########3| 442/475 [03:13<00:14,  2.23it/s]
 93%|#########3| 443/475 [03:14<00:12,  2.46it/s]
 93%|#########3| 444/475 [03:14<00:12,  2.47it/s]
 94%|#########3| 445/475 [03:15<00:13,  2.28it/s]
 94%|#########3| 446/475 [03:15<00:11,  2.53it/s]
 94%|#########4| 447/475 [03:15<00:10,  2.68it/s]
 94%|#########4| 448/475 [03:16<00:09,  2.98it/s]
 95%|#########4| 449/475 [03:16<00:09,  2.76it/s]
 95%|#########4| 450/475 [03:16<00:08,  2.78it/s]
 95%|#########4| 451/475 [03:17<00:08,  2.88it/s]
 95%|#########5| 452/475 [03:17<00:10,  2.23it/s]
 95%|#########5| 453/475 [03:18<00:12,  1.70it/s]
 96%|#########5| 454/475 [03:19<00:11,  1.86it/s]
 96%|#########5| 455/475 [03:19<00:09,  2.04it/s]
 96%|#########6| 456/475 [03:19<00:08,  2.32it/s]
 96%|#########6| 457/475 [03:20<00:07,  2.52it/s]
 96%|#########6| 458/475 [03:20<00:07,  2.38it/s]
 97%|#########6| 459/475 [03:21<00:06,  2.50it/s]
 97%|#########6| 460/475 [03:21<00:05,  2.63it/s]
 97%|#########7| 461/475 [03:21<00:05,  2.61it/s]
 97%|#########7| 462/475 [03:22<00:04,  2.63it/s]
 97%|#########7| 463/475 [03:22<00:04,  2.83it/s]
 98%|#########7| 464/475 [03:22<00:03,  2.83it/s]
 98%|#########7| 465/475 [03:23<00:03,  2.95it/s]
 98%|#########8| 466/475 [03:23<00:03,  2.80it/s]
 98%|#########8| 467/475 [03:23<00:02,  2.84it/s]
 99%|#########8| 468/475 [03:24<00:02,  2.88it/s]
 99%|#########8| 469/475 [03:24<00:02,  2.84it/s]
 99%|#########8| 470/475 [03:24<00:01,  2.90it/s]
 99%|#########9| 471/475 [03:25<00:01,  2.36it/s]
 99%|#########9| 472/475 [03:26<00:01,  1.81it/s]
100%|#########9| 473/475 [03:26<00:00,  2.10it/s]
100%|#########9| 474/475 [03:27<00:00,  1.95it/s]
100%|##########| 475/475 [03:27<00:00,  1.86it/s]
100%|##########| 475/475 [03:27<00:00,  2.29it/s]

Load an ODF reconstruction sphere.

sphere = get_sphere('repulsion724')

Compute the ODFs.

The radial order s can be increased to sharpen the results, but it might also make the ODFs noisier. Always check the results visually.

odf = mapfit_both_iso.odf(sphere, s=2)
print('odf.shape (%d, %d, %d, %d)' % odf.shape)
odf.shape (25, 1, 19, 724)

Display the ODFs.

# Enables/disables interactive visualization
interactive = False

scene = window.Scene()
sfu = actor.odf_slicer(odf, sphere=sphere, colormap='plasma', scale=0.5)
sfu.display(y=0)
sfu.RotateX(-90)
scene.add(sfu)
window.record(scene, out_path='odfs.png', size=(600, 600))
if interactive:
    window.show(scene)
reconst mapmri
examples_built/07_reconstruction/odfs.png

Orientation distribution functions (ODFs).

References

[Ozarslan2013] (1,2,3,4,5,6,7)

Ozarslan E. et al., “Mean apparent propagator (MAP) MRI: A novel diffusion imaging method for mapping tissue microstructure”, NeuroImage, 2013.

[Fick2016a] (1,2,3,4,5,6)

Fick, Rutger HJ, et al. “MAPL: Tissue microstructure estimation using Laplacian-regularized MAP-MRI and its application to HCP data.” NeuroImage (2016).

[Craven1978]

Craven et al. “Smoothing Noisy Data with Spline Functions.” NUMER MATH 31.4 (1978): 377-403.

[Hosseinbor2013]

Hosseinbor et al. “Bessel fourier orientation reconstruction (bfor): an analytical diffusion propagator reconstruction for hybrid diffusion imaging and computation of q-space indices. NeuroImage 64, 650-670.

[Fick2016b] (1,2)

Fick et al. “A sensitivity analysis of Q-space indices with respect to changes in axonal diameter, dispersion and tissue composition. ISBI 2016.

[DelaHaije2020]

Dela Haije et al. “Enforcing necessary non-negativity constraints for common diffusion MRI models using sum of squares programming”. NeuroImage 209, 2020, 116405.

Total running time of the script: ( 106 minutes 11.297 seconds)

Gallery generated by Sphinx-Gallery