Functional AstroPhot interface

Functional AstroPhot interface#

AstroPhot is an object oriented code, meaning that it is build on python objects that behave in intuitively meaningful ways. For example it is possible to add two model images together to get a new model image, even if one of them only fills a subwindow of pixels, this is because the model images are aware of what part of the scene they represent and can behave accordingly. This is all very nice so long as you are building the kinds of models that AstroPhot is designed for, and when you are not trying to squeeze out every last bit of performance. For most cases, AstroPhot objects can handle complex configurations and perform very quickly. Still, you may need to push things with highly specific customization. Let’s consider a case where some specialization can give a big performance boost, a supernova light curve.

%matplotlib inline
%load_ext autoreload
%autoreload 2

import astrophot as ap
import numpy as np
import jax
import jax.numpy as jnp
import matplotlib.pyplot as plt
from corner import corner

ap.backend.backend = "jax"

Hide code cell content

def CD_rot(theta):
    return np.array([[np.cos(theta), -np.sin(theta)], [np.sin(theta), np.cos(theta)]])


def sn_flux(t):
    return 5 * np.exp(-0.5 * ((t - 10) / 5) ** 2)

Generate Mock data#

Here we will use the usual AstroPhot object oriented interface to generate some mock SN data. There is a fixed host Sersic galaxy, and a Gaussian point source with variable flux as the SN. Every observation is a new pointing of the telescope, so the images are not all aligned and are rotated randomly. The AstroPhot object oriented framework handles this by having target images aware of the WCS that connects the pixels to their location on the sky. We will see in the functional version that everything has to be more explicit, but is more or less the same.

Hide code cell source

np.random.seed(42)
psf = jnp.array(ap.utils.initialize.gaussian_psf(0.1, 21, 0.1))
target = ap.TargetImageList(
    list(
        ap.TargetImage(
            name=f"epoch_{i}",
            data=np.zeros((32, 32)),
            crpix=(16, 16),
            crtan=0.1 * np.random.normal(size=(2,)),
            CD=0.1 * CD_rot(2 * np.pi * np.random.normal()),
            psf=psf,
        )
        for i in range(10)
    )
)
T = np.linspace(-10, 30, 10)
dataset = {
    "image": jnp.zeros((10, 32, 32)),
    "variance": jnp.zeros((10, 32, 32)),
    "crpix": jnp.zeros((10, 2)),
    "crtan": jnp.zeros((10, 2)),
    "CD": jnp.zeros((10, 2, 2)),
}
models = []
for i, img in enumerate(target.images):
    host = ap.Model(
        name=f"host_{i}",
        target=img,
        model_type="sersic galaxy model",
        center=(0.0, 0.0),
        q=0.7,
        PA=np.pi / 4,
        n=2,
        Re=1,
        Ie=1,
        psf_convolve=True,
    )
    host.initialize()
    models.append(host)
    sn = ap.Model(
        name=f"supernova_{i}",
        target=img,
        model_type="point model",
        psf=ap.PSFImage(data=psf),
        center=(0.4, 0.0),
        flux=sn_flux(T[i]),
    )
    sn.initialize()
    models.append(sn)
    sky = ap.Model(name=f"sky_{i}", target=img, model_type="flat sky model", I0=0.1 / 0.1**2)
    sky.initialize()
    models.append(sky)
    img.data = np.array(host().data + sn().data + sky().data)
    img.variance = 0.0001 * np.array(img.data)
    img.data = img.data + np.random.normal(scale=0.01 * np.sqrt(np.array(img.data)))
    dataset["image"] = dataset["image"].at[i].set(img.data)
    dataset["variance"] = dataset["variance"].at[i].set(img.variance)
    dataset["crpix"] = dataset["crpix"].at[i].set(jnp.array(img.crpix))
    dataset["crtan"] = dataset["crtan"].at[i].set(img.crtan.value)
    dataset["CD"] = dataset["CD"].at[i].set(img.CD.value)
apmodel = ap.Model(name="AstroPhotModel", model_type="group model", target=target, models=models)
fig, axarr = plt.subplots(2, 5, figsize=(15, 6))
for ax, img in zip(axarr.flatten(), target.images):
    ap.plots.target_image(fig, ax, img)
    ax.set_title(img.name)
plt.show()
INFO:2026-04-02 21:11:14,098:jax._src.xla_bridge:830: Unable to initialize backend 'tpu': INTERNAL: Failed to open libtpu.so: libtpu.so: cannot open shared object file: No such file or directory
Unable to initialize backend 'tpu': INTERNAL: Failed to open libtpu.so: libtpu.so: cannot open shared object file: No such file or directory
../_images/6704442bb10b714d14df4007517a331018a7f2c15721240e5729a74cd694952a.png

Build the functional model#

Below we build a functional version of the AstroPhot model which generated the data. The end result is an identical sampling algorithm which strips away all the object oriented layers of the AstroPhot model to give a pure function to compute pixel values. This is a very insightful exercise to learn exactly what AstroPhot does under the hood. As you can see, there are a number of subtle effects to account for which AstroPhot does automatically, but at a high level it is all very straightforward.

def model_img(
    sersic_x,
    sersic_y,
    sersic_q,
    sersic_PA,
    sersic_n,
    sersic_Re,
    sersic_Ie,
    psf,
    sn_x,
    sn_y,
    sn_flux,
    sky,
    crpix,
    crtan,
    CD,
):
    # Sample sersic
    pixel_area = 0.1 * 0.1
    # Pad by 20 pixels (10 on each side) to avoid edge effects from convolution
    i, j, w = ap.image.func.pixel_quad_meshgrid(
        (0, 32, 0, 32), 10, 1, ap.config.DTYPE, ap.config.DEVICE, order=3
    )
    #
    x, y = ap.image.func.pixel_to_plane_linear(j, i, *crpix, CD, *crtan)
    sx, sy = x - sersic_x, y - sersic_y
    sx, sy = ap.models.func.rotate(-sersic_PA + np.pi / 2, sx, sy)
    sy = sy / sersic_q
    sr = jnp.sqrt(sx**2 + sy**2)
    z = ap.models.func.sersic(sr, n=sersic_n, Re=sersic_Re, Ie=sersic_Ie)
    sample = ap.models.func.pixel_quad_integrator(z, w)
    sample = ap.models.func.convolve(sample, psf)
    sample = sample[10:-10, 10:-10] * pixel_area

    # Sample point source (empirical PSF)
    i, j, w = ap.image.func.pixel_quad_meshgrid(
        (0, 32, 0, 32), 0, 1, ap.config.DTYPE, ap.config.DEVICE, order=3
    )
    gj, gi = ap.image.func.plane_to_pixel_linear(sn_x, sn_y, *crpix, CD, *crtan)
    z = ap.utils.interpolate.interp2d(
        psf, j - gj + (psf.shape[1] // 2), i - gi + (psf.shape[0] // 2)
    )
    sample = sample + sn_flux * ap.models.func.pixel_quad_integrator(z, w)

    # add sky level
    return sample + sky


# fixed: sersic_x, sersic_y, psf, crpix, CD
# global: sersic_q, sersic_PA, sersic_n, sersic_Re, sersic_Ie, sn_x, sn_y
# per image: sky, sn_sigma, sn_flux, crtan


@jax.jit
def full_model(
    sersic_x,
    sersic_y,
    sersic_q,
    sersic_PA,
    sersic_n,
    sersic_Re,
    sersic_Ie,
    psf,
    sn_x,
    sn_y,
    sn_flux,
    sky,
    crpix,
    crtan,
    CD,
):
    return jax.vmap(
        model_img,
        in_axes=(None, None, None, None, None, None, None, None, None, None, 0, 0, 0, 0, 0),
    )(
        sersic_x,
        sersic_y,
        sersic_q,
        sersic_PA,
        sersic_n,
        sersic_Re,
        sersic_Ie,
        psf,
        sn_x,
        sn_y,
        sn_flux,
        sky,
        crpix,
        crtan,
        CD,
    )


def model(params, sersic_x, sersic_y, psf, crpix, CD):
    return full_model(
        sersic_x,
        sersic_y,
        params[0],
        params[1],
        params[2],
        params[3],
        params[4],
        psf,
        params[5],
        params[6],
        params[7:17],
        params[17:27],
        crpix,
        params[27:47].reshape(10, 2),
        CD,
    )

And to see the model in action we can sample it using the true parameter values. As expected, this produces a perfect set of residuals which look like pure random noise.

params_true = jnp.array(
    np.concatenate(
        [
            [0.7],  # sersic_q
            [np.pi / 4],  # sersic_PA
            [2.0],  # sersic_n
            [1.0],  # sersic_Re
            [1.0],  # sersic_Ie
            [0.4],  # sn_x
            [0.0],  # sn_y
            sn_flux(T),  # sn_flux
            np.array([0.1] * 10),  # sky
            np.array(dataset["crtan"].flatten()),  # crtan
        ]
    )
)
extra = (jnp.array(0.0), jnp.array(0.0), psf, dataset["crpix"], dataset["CD"])
sample = model(params_true, *extra)
residuals = (dataset["image"] - sample) / jnp.sqrt(dataset["variance"])
fig, axarr = plt.subplots(3, 10, figsize=(18, 6))
for i, (img, samp, resid) in enumerate(zip(dataset["image"], sample, residuals)):
    axarr[0, i].imshow(img.T, origin="lower", cmap="viridis")
    axarr[0, i].set_title(f"obs {i}")
    axarr[1, i].imshow(samp.T, origin="lower", cmap="viridis")
    axarr[1, i].set_title(f"model {i}")
    axarr[2, i].imshow(resid.T, origin="lower", cmap="seismic", vmin=-5, vmax=5)
    axarr[2, i].set_title(f"residual {i}")
for ax in axarr.flatten():
    ax.axis("off")
plt.show()
../_images/cdef02cbd525db0708adecc2066a3d861277e56aae792282d4ae0c46e856cd91.png
fig, axarr = plt.subplots(3, 10, figsize=(18, 6))
ap.plots.target_image(fig, axarr[0], apmodel.target)
ap.plots.model_image(fig, axarr[1], apmodel, showcbar=False)
ap.plots.residual_image(
    fig, axarr[2], apmodel, scaling="clip", normalize_residuals=True, showcbar=False
)
for ax in axarr.flatten():
    ax.axis("off")
plt.show()
../_images/4fb8a03246fc7981fc99e48b42a4d6200f025ec4266f8ef32528fc18d39af3df.png
# Let's compare how fast the two code are
print("Functional interface timings:")
%timeit jax.block_until_ready(model(params_true, *extra))
print("AstroPhot model timings:")
%timeit jax.block_until_ready(apmodel())
Functional interface timings:
18.5 ms ± 248 μs per loop (mean ± std. dev. of 7 runs, 100 loops each)
AstroPhot model timings:
695 ms ± 5.03 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)

This is quite a striking result, the functional implementation is ~100x faster than the AstroPhot model! However, it is important to put this speed comparison in context. The AstroPhot model is much easier, less error prone, and more intuitive to put together. If we are only going to run the model a few times then we will save much more than 500ms by getting the code written faster. The cutout size of 32x32 is very small, while AstroPhot is built to scale to very large images. For larger images, the Python overhead is negligible and the two codes will have near identical runtime. In fact, if the images get a lot larger the functional version as written will run out of memory while the AstroPhot model could carry on easily because of how it chunks the data. Also, note that the plots are quite different, AstroPhot plots all the images properly oriented in the sky, while for the functional version we don’t have that capability. AstroPhot has a more complete understanding of the data and can perform a lot more operations on the results. AstroPhot could also combine in data at different resolutions and sizes, while our functional version is predicated on the idea that all the images will be 32x32 pixels, we would need to completely rewrite it to change that. If we wanted to change the model to fix some parameter or to turn one of the fixed parameters into a free parameter, we would have to trace it through the whole functional implementation and make updates accordingly. This goes for any change really, what if we needed to add in a mask, a second sersic model, or start modelling the PSF (rather than taking it as fixed); all of these would require painful changes to the functional version while they would be trivial additions to the AstroPhot model.

For these reasons and more, it is highly recommended to work with the object oriented AstroPhot models before ever considering the functional interface. And if you really need speed, jax.jit can get you 99.9% of the way there. Take a look at the timing comparison below, the AstroPhot model is now basically identical in speed to the laborious functional model:

jmodel = jax.jit(model)
_ = jax.block_until_ready(jmodel(params_true, *extra))
_ = jax.block_until_ready(jmodel(params_true, *extra))
print("JIT-compiled functional interface timings:")
%timeit jax.block_until_ready(jmodel(params_true, *extra))
japmodel = jax.jit(lambda: apmodel()._data)
_ = jax.block_until_ready(japmodel())
_ = jax.block_until_ready(japmodel())
print("JIT-compiled AstroPhot model timings:")
%timeit jax.block_until_ready(japmodel())
JIT-compiled functional interface timings:
16.5 ms ± 48.9 μs per loop (mean ± std. dev. of 7 runs, 100 loops each)
JIT-compiled AstroPhot model timings:
7.27 ms ± 1.76 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
# Make 8 chains, starting at the true parameters
params = np.stack(list(np.array(params_true) for _ in range(4)))

# Compute a mass matrix using the Fisher information matrix
J = jax.jacfwd(model, argnums=0)(params_true, *extra).reshape(-1, params_true.shape[-1])
V = dataset["variance"].reshape(-1)
H = J.T @ (J / V[:, None])
M = jnp.linalg.inv(H)


def log_likelihood(params, sersic_x, sersic_y, psf, crpix, CD):
    model_sample = model(params, sersic_x, sersic_y, psf, crpix, CD)
    residuals = (dataset["image"] - model_sample) ** 2 / dataset["variance"]
    return -0.5 * jnp.sum(residuals)


# Vectorized log likelihood and gradient functions
vmodel = jax.jit(jax.vmap(log_likelihood, in_axes=(0, None, None, None, None, None)))
vgmodel = jax.jit(
    jax.vmap(jax.grad(log_likelihood, argnums=0), in_axes=(0, None, None, None, None, None))
)

# Run MALA sampling
chain, logp = ap.fit.func.mala(
    params,
    lambda p: np.array(vmodel(jnp.array(p), *extra)),
    lambda p: np.array(vgmodel(jnp.array(p), *extra)),
    num_samples=400,
    epsilon=5e-1,
    mass_matrix=np.array(M),
)

Hide code cell output

MALA:   0%|          | 0/400 [00:00<?, ?it/s]
MALA:   0%|          | 0/400 [00:00<?, ?it/s, acc_rate=1.00]
MALA:   0%|          | 1/400 [00:00<01:52,  3.55it/s, acc_rate=1.00]
MALA:   0%|          | 1/400 [00:00<01:52,  3.55it/s, acc_rate=0.88]
MALA:   0%|          | 2/400 [00:00<01:52,  3.53it/s, acc_rate=0.88]
MALA:   0%|          | 2/400 [00:00<01:52,  3.53it/s, acc_rate=0.92]
MALA:   1%|          | 3/400 [00:00<01:52,  3.53it/s, acc_rate=0.92]
MALA:   1%|          | 3/400 [00:01<01:52,  3.53it/s, acc_rate=0.88]
MALA:   1%|          | 4/400 [00:01<01:51,  3.54it/s, acc_rate=0.88]
MALA:   1%|          | 4/400 [00:01<01:51,  3.54it/s, acc_rate=0.85]
MALA:   1%|▏         | 5/400 [00:01<01:51,  3.55it/s, acc_rate=0.85]
MALA:   1%|▏         | 5/400 [00:01<01:51,  3.55it/s, acc_rate=0.83]
MALA:   2%|▏         | 6/400 [00:01<01:51,  3.53it/s, acc_rate=0.83]
MALA:   2%|▏         | 6/400 [00:01<01:51,  3.53it/s, acc_rate=0.86]
MALA:   2%|▏         | 7/400 [00:01<01:51,  3.52it/s, acc_rate=0.86]
MALA:   2%|▏         | 7/400 [00:02<01:51,  3.52it/s, acc_rate=0.88]
MALA:   2%|▏         | 8/400 [00:02<01:52,  3.48it/s, acc_rate=0.88]
MALA:   2%|▏         | 8/400 [00:02<01:52,  3.48it/s, acc_rate=0.83]
MALA:   2%|▏         | 9/400 [00:02<01:51,  3.49it/s, acc_rate=0.83]
MALA:   2%|▏         | 9/400 [00:02<01:51,  3.49it/s, acc_rate=0.85]
MALA:   2%|▎         | 10/400 [00:02<01:51,  3.49it/s, acc_rate=0.85]
MALA:   2%|▎         | 10/400 [00:03<01:51,  3.49it/s, acc_rate=0.86]
MALA:   3%|▎         | 11/400 [00:03<01:50,  3.51it/s, acc_rate=0.86]
MALA:   3%|▎         | 11/400 [00:03<01:50,  3.51it/s, acc_rate=0.83]
MALA:   3%|▎         | 12/400 [00:03<01:50,  3.52it/s, acc_rate=0.83]
MALA:   3%|▎         | 12/400 [00:03<01:50,  3.52it/s, acc_rate=0.85]
MALA:   3%|▎         | 13/400 [00:03<01:50,  3.50it/s, acc_rate=0.85]
MALA:   3%|▎         | 13/400 [00:03<01:50,  3.50it/s, acc_rate=0.86]
MALA:   4%|▎         | 14/400 [00:03<01:50,  3.49it/s, acc_rate=0.86]
MALA:   4%|▎         | 14/400 [00:04<01:50,  3.49it/s, acc_rate=0.85]
MALA:   4%|▍         | 15/400 [00:04<01:50,  3.48it/s, acc_rate=0.85]
MALA:   4%|▍         | 15/400 [00:04<01:50,  3.48it/s, acc_rate=0.84]
MALA:   4%|▍         | 16/400 [00:04<01:49,  3.49it/s, acc_rate=0.84]
MALA:   4%|▍         | 16/400 [00:04<01:49,  3.49it/s, acc_rate=0.82]
MALA:   4%|▍         | 17/400 [00:04<01:49,  3.48it/s, acc_rate=0.82]
MALA:   4%|▍         | 17/400 [00:05<01:49,  3.48it/s, acc_rate=0.79]
MALA:   4%|▍         | 18/400 [00:05<01:49,  3.49it/s, acc_rate=0.79]
MALA:   4%|▍         | 18/400 [00:05<01:49,  3.49it/s, acc_rate=0.78]
MALA:   5%|▍         | 19/400 [00:05<01:49,  3.48it/s, acc_rate=0.78]
MALA:   5%|▍         | 19/400 [00:05<01:49,  3.48it/s, acc_rate=0.76]
MALA:   5%|▌         | 20/400 [00:05<01:49,  3.48it/s, acc_rate=0.76]
MALA:   5%|▌         | 20/400 [00:05<01:49,  3.48it/s, acc_rate=0.75]
MALA:   5%|▌         | 21/400 [00:06<01:49,  3.46it/s, acc_rate=0.75]
MALA:   5%|▌         | 21/400 [00:06<01:49,  3.46it/s, acc_rate=0.76]
MALA:   6%|▌         | 22/400 [00:06<01:48,  3.47it/s, acc_rate=0.76]
MALA:   6%|▌         | 22/400 [00:06<01:48,  3.47it/s, acc_rate=0.76]
MALA:   6%|▌         | 23/400 [00:06<01:48,  3.46it/s, acc_rate=0.76]
MALA:   6%|▌         | 23/400 [00:06<01:48,  3.46it/s, acc_rate=0.77]
MALA:   6%|▌         | 24/400 [00:06<01:48,  3.48it/s, acc_rate=0.77]
MALA:   6%|▌         | 24/400 [00:07<01:48,  3.48it/s, acc_rate=0.77]
MALA:   6%|▋         | 25/400 [00:07<01:47,  3.48it/s, acc_rate=0.77]
MALA:   6%|▋         | 25/400 [00:07<01:47,  3.48it/s, acc_rate=0.77]
MALA:   6%|▋         | 26/400 [00:07<01:47,  3.49it/s, acc_rate=0.77]
MALA:   6%|▋         | 26/400 [00:07<01:47,  3.49it/s, acc_rate=0.78]
MALA:   7%|▋         | 27/400 [00:07<01:47,  3.48it/s, acc_rate=0.78]
MALA:   7%|▋         | 27/400 [00:08<01:47,  3.48it/s, acc_rate=0.78]
MALA:   7%|▋         | 28/400 [00:08<01:46,  3.50it/s, acc_rate=0.78]
MALA:   7%|▋         | 28/400 [00:08<01:46,  3.50it/s, acc_rate=0.78]
MALA:   7%|▋         | 29/400 [00:08<01:46,  3.50it/s, acc_rate=0.78]
MALA:   7%|▋         | 29/400 [00:08<01:46,  3.50it/s, acc_rate=0.78]
MALA:   8%|▊         | 30/400 [00:08<01:46,  3.49it/s, acc_rate=0.78]
MALA:   8%|▊         | 30/400 [00:08<01:46,  3.49it/s, acc_rate=0.77]
MALA:   8%|▊         | 31/400 [00:08<01:45,  3.50it/s, acc_rate=0.77]
MALA:   8%|▊         | 31/400 [00:09<01:45,  3.50it/s, acc_rate=0.77]
MALA:   8%|▊         | 32/400 [00:09<01:45,  3.48it/s, acc_rate=0.77]
MALA:   8%|▊         | 32/400 [00:09<01:45,  3.48it/s, acc_rate=0.76]
MALA:   8%|▊         | 33/400 [00:09<01:45,  3.48it/s, acc_rate=0.76]
MALA:   8%|▊         | 33/400 [00:09<01:45,  3.48it/s, acc_rate=0.75]
MALA:   8%|▊         | 34/400 [00:09<01:45,  3.46it/s, acc_rate=0.75]
MALA:   8%|▊         | 34/400 [00:10<01:45,  3.46it/s, acc_rate=0.74]
MALA:   9%|▉         | 35/400 [00:10<01:44,  3.49it/s, acc_rate=0.74]
MALA:   9%|▉         | 35/400 [00:10<01:44,  3.49it/s, acc_rate=0.73]
MALA:   9%|▉         | 36/400 [00:10<01:44,  3.48it/s, acc_rate=0.73]
MALA:   9%|▉         | 36/400 [00:10<01:44,  3.48it/s, acc_rate=0.74]
MALA:   9%|▉         | 37/400 [00:10<01:44,  3.48it/s, acc_rate=0.74]
MALA:   9%|▉         | 37/400 [00:10<01:44,  3.48it/s, acc_rate=0.74]
MALA:  10%|▉         | 38/400 [00:10<01:43,  3.48it/s, acc_rate=0.74]
MALA:  10%|▉         | 38/400 [00:11<01:43,  3.48it/s, acc_rate=0.75]
MALA:  10%|▉         | 39/400 [00:11<01:43,  3.48it/s, acc_rate=0.75]
MALA:  10%|▉         | 39/400 [00:11<01:43,  3.48it/s, acc_rate=0.75]
MALA:  10%|█         | 40/400 [00:11<01:43,  3.49it/s, acc_rate=0.75]
MALA:  10%|█         | 40/400 [00:11<01:43,  3.49it/s, acc_rate=0.76]
MALA:  10%|█         | 41/400 [00:11<01:43,  3.47it/s, acc_rate=0.76]
MALA:  10%|█         | 41/400 [00:12<01:43,  3.47it/s, acc_rate=0.76]
MALA:  10%|█         | 42/400 [00:12<01:42,  3.48it/s, acc_rate=0.76]
MALA:  10%|█         | 42/400 [00:12<01:42,  3.48it/s, acc_rate=0.76]
MALA:  11%|█         | 43/400 [00:12<01:42,  3.48it/s, acc_rate=0.76]
MALA:  11%|█         | 43/400 [00:12<01:42,  3.48it/s, acc_rate=0.77]
MALA:  11%|█         | 44/400 [00:12<01:42,  3.47it/s, acc_rate=0.77]
MALA:  11%|█         | 44/400 [00:12<01:42,  3.47it/s, acc_rate=0.76]
MALA:  11%|█▏        | 45/400 [00:12<01:41,  3.49it/s, acc_rate=0.76]
MALA:  11%|█▏        | 45/400 [00:13<01:41,  3.49it/s, acc_rate=0.75]
MALA:  12%|█▏        | 46/400 [00:13<01:41,  3.48it/s, acc_rate=0.75]
MALA:  12%|█▏        | 46/400 [00:13<01:41,  3.48it/s, acc_rate=0.74]
MALA:  12%|█▏        | 47/400 [00:13<01:41,  3.49it/s, acc_rate=0.74]
MALA:  12%|█▏        | 47/400 [00:13<01:41,  3.49it/s, acc_rate=0.74]
MALA:  12%|█▏        | 48/400 [00:13<01:41,  3.47it/s, acc_rate=0.74]
MALA:  12%|█▏        | 48/400 [00:14<01:41,  3.47it/s, acc_rate=0.73]
MALA:  12%|█▏        | 49/400 [00:14<01:40,  3.48it/s, acc_rate=0.73]
MALA:  12%|█▏        | 49/400 [00:14<01:40,  3.48it/s, acc_rate=0.72]
MALA:  12%|█▎        | 50/400 [00:14<01:40,  3.48it/s, acc_rate=0.72]
MALA:  12%|█▎        | 50/400 [00:14<01:40,  3.48it/s, acc_rate=0.71]
MALA:  13%|█▎        | 51/400 [00:14<01:40,  3.47it/s, acc_rate=0.71]
MALA:  13%|█▎        | 51/400 [00:14<01:40,  3.47it/s, acc_rate=0.71]
MALA:  13%|█▎        | 52/400 [00:14<01:38,  3.54it/s, acc_rate=0.71]
MALA:  13%|█▎        | 52/400 [00:15<01:38,  3.54it/s, acc_rate=0.70]
MALA:  13%|█▎        | 53/400 [00:15<01:38,  3.53it/s, acc_rate=0.70]
MALA:  13%|█▎        | 53/400 [00:15<01:38,  3.53it/s, acc_rate=0.70]
MALA:  14%|█▎        | 54/400 [00:15<01:38,  3.52it/s, acc_rate=0.70]
MALA:  14%|█▎        | 54/400 [00:15<01:38,  3.52it/s, acc_rate=0.70]
MALA:  14%|█▍        | 55/400 [00:15<01:39,  3.48it/s, acc_rate=0.70]
MALA:  14%|█▍        | 55/400 [00:16<01:39,  3.48it/s, acc_rate=0.70]
MALA:  14%|█▍        | 56/400 [00:16<01:38,  3.49it/s, acc_rate=0.70]
MALA:  14%|█▍        | 56/400 [00:16<01:38,  3.49it/s, acc_rate=0.70]
MALA:  14%|█▍        | 57/400 [00:16<01:38,  3.49it/s, acc_rate=0.70]
MALA:  14%|█▍        | 57/400 [00:16<01:38,  3.49it/s, acc_rate=0.70]
MALA:  14%|█▍        | 58/400 [00:16<01:38,  3.48it/s, acc_rate=0.70]
MALA:  14%|█▍        | 58/400 [00:16<01:38,  3.48it/s, acc_rate=0.70]
MALA:  15%|█▍        | 59/400 [00:16<01:37,  3.48it/s, acc_rate=0.70]
MALA:  15%|█▍        | 59/400 [00:17<01:37,  3.48it/s, acc_rate=0.71]
MALA:  15%|█▌        | 60/400 [00:17<01:36,  3.52it/s, acc_rate=0.71]
MALA:  15%|█▌        | 60/400 [00:17<01:36,  3.52it/s, acc_rate=0.71]
MALA:  15%|█▌        | 61/400 [00:17<01:36,  3.50it/s, acc_rate=0.71]
MALA:  15%|█▌        | 61/400 [00:17<01:36,  3.50it/s, acc_rate=0.72]
MALA:  16%|█▌        | 62/400 [00:17<01:36,  3.50it/s, acc_rate=0.72]
MALA:  16%|█▌        | 62/400 [00:18<01:36,  3.50it/s, acc_rate=0.72]
MALA:  16%|█▌        | 63/400 [00:18<01:36,  3.49it/s, acc_rate=0.72]
MALA:  16%|█▌        | 63/400 [00:18<01:36,  3.49it/s, acc_rate=0.71]
MALA:  16%|█▌        | 64/400 [00:18<01:36,  3.49it/s, acc_rate=0.71]
MALA:  16%|█▌        | 64/400 [00:18<01:36,  3.49it/s, acc_rate=0.71]
MALA:  16%|█▋        | 65/400 [00:18<01:36,  3.49it/s, acc_rate=0.71]
MALA:  16%|█▋        | 65/400 [00:18<01:36,  3.49it/s, acc_rate=0.71]
MALA:  16%|█▋        | 66/400 [00:18<01:35,  3.50it/s, acc_rate=0.71]
MALA:  16%|█▋        | 66/400 [00:19<01:35,  3.50it/s, acc_rate=0.71]
MALA:  17%|█▋        | 67/400 [00:19<01:35,  3.49it/s, acc_rate=0.71]
MALA:  17%|█▋        | 67/400 [00:19<01:35,  3.49it/s, acc_rate=0.71]
MALA:  17%|█▋        | 68/400 [00:19<01:34,  3.50it/s, acc_rate=0.71]
MALA:  17%|█▋        | 68/400 [00:19<01:34,  3.50it/s, acc_rate=0.71]
MALA:  17%|█▋        | 69/400 [00:19<01:35,  3.48it/s, acc_rate=0.71]
MALA:  17%|█▋        | 69/400 [00:20<01:35,  3.48it/s, acc_rate=0.71]
MALA:  18%|█▊        | 70/400 [00:20<01:34,  3.48it/s, acc_rate=0.71]
MALA:  18%|█▊        | 70/400 [00:20<01:34,  3.48it/s, acc_rate=0.70]
MALA:  18%|█▊        | 71/400 [00:20<01:34,  3.47it/s, acc_rate=0.70]
MALA:  18%|█▊        | 71/400 [00:20<01:34,  3.47it/s, acc_rate=0.71]
MALA:  18%|█▊        | 72/400 [00:20<01:34,  3.49it/s, acc_rate=0.71]
MALA:  18%|█▊        | 72/400 [00:20<01:34,  3.49it/s, acc_rate=0.71]
MALA:  18%|█▊        | 73/400 [00:20<01:34,  3.47it/s, acc_rate=0.71]
MALA:  18%|█▊        | 73/400 [00:21<01:34,  3.47it/s, acc_rate=0.70]
MALA:  18%|█▊        | 74/400 [00:21<01:33,  3.48it/s, acc_rate=0.70]
MALA:  18%|█▊        | 74/400 [00:21<01:33,  3.48it/s, acc_rate=0.70]
MALA:  19%|█▉        | 75/400 [00:21<01:33,  3.47it/s, acc_rate=0.70]
MALA:  19%|█▉        | 75/400 [00:21<01:33,  3.47it/s, acc_rate=0.71]
MALA:  19%|█▉        | 76/400 [00:21<01:32,  3.49it/s, acc_rate=0.71]
MALA:  19%|█▉        | 76/400 [00:22<01:32,  3.49it/s, acc_rate=0.70]
MALA:  19%|█▉        | 77/400 [00:22<01:32,  3.47it/s, acc_rate=0.70]
MALA:  19%|█▉        | 77/400 [00:22<01:32,  3.47it/s, acc_rate=0.70]
MALA:  20%|█▉        | 78/400 [00:22<01:32,  3.47it/s, acc_rate=0.70]
MALA:  20%|█▉        | 78/400 [00:22<01:32,  3.47it/s, acc_rate=0.70]
MALA:  20%|█▉        | 79/400 [00:22<01:32,  3.48it/s, acc_rate=0.70]
MALA:  20%|█▉        | 79/400 [00:22<01:32,  3.48it/s, acc_rate=0.70]
MALA:  20%|██        | 80/400 [00:22<01:31,  3.48it/s, acc_rate=0.70]
MALA:  20%|██        | 80/400 [00:23<01:31,  3.48it/s, acc_rate=0.69]
MALA:  20%|██        | 81/400 [00:23<01:31,  3.47it/s, acc_rate=0.69]
MALA:  20%|██        | 81/400 [00:23<01:31,  3.47it/s, acc_rate=0.69]
MALA:  20%|██        | 82/400 [00:23<01:31,  3.48it/s, acc_rate=0.69]
MALA:  20%|██        | 82/400 [00:23<01:31,  3.48it/s, acc_rate=0.69]
MALA:  21%|██        | 83/400 [00:23<01:31,  3.47it/s, acc_rate=0.69]
MALA:  21%|██        | 83/400 [00:24<01:31,  3.47it/s, acc_rate=0.70]
MALA:  21%|██        | 84/400 [00:24<01:30,  3.48it/s, acc_rate=0.70]
MALA:  21%|██        | 84/400 [00:24<01:30,  3.48it/s, acc_rate=0.70]
MALA:  21%|██▏       | 85/400 [00:24<01:30,  3.47it/s, acc_rate=0.70]
MALA:  21%|██▏       | 85/400 [00:24<01:30,  3.47it/s, acc_rate=0.70]
MALA:  22%|██▏       | 86/400 [00:24<01:30,  3.48it/s, acc_rate=0.70]
MALA:  22%|██▏       | 86/400 [00:24<01:30,  3.48it/s, acc_rate=0.70]
MALA:  22%|██▏       | 87/400 [00:24<01:30,  3.47it/s, acc_rate=0.70]
MALA:  22%|██▏       | 87/400 [00:25<01:30,  3.47it/s, acc_rate=0.70]
MALA:  22%|██▏       | 88/400 [00:25<01:29,  3.48it/s, acc_rate=0.70]
MALA:  22%|██▏       | 88/400 [00:25<01:29,  3.48it/s, acc_rate=0.71]
MALA:  22%|██▏       | 89/400 [00:25<01:29,  3.47it/s, acc_rate=0.71]
MALA:  22%|██▏       | 89/400 [00:25<01:29,  3.47it/s, acc_rate=0.71]
MALA:  22%|██▎       | 90/400 [00:25<01:29,  3.48it/s, acc_rate=0.71]
MALA:  22%|██▎       | 90/400 [00:26<01:29,  3.48it/s, acc_rate=0.71]
MALA:  23%|██▎       | 91/400 [00:26<01:28,  3.48it/s, acc_rate=0.71]
MALA:  23%|██▎       | 91/400 [00:26<01:28,  3.48it/s, acc_rate=0.71]
MALA:  23%|██▎       | 92/400 [00:26<01:28,  3.47it/s, acc_rate=0.71]
MALA:  23%|██▎       | 92/400 [00:26<01:28,  3.47it/s, acc_rate=0.72]
MALA:  23%|██▎       | 93/400 [00:26<01:28,  3.46it/s, acc_rate=0.72]
MALA:  23%|██▎       | 93/400 [00:26<01:28,  3.46it/s, acc_rate=0.72]
MALA:  24%|██▎       | 94/400 [00:26<01:27,  3.48it/s, acc_rate=0.72]
MALA:  24%|██▎       | 94/400 [00:27<01:27,  3.48it/s, acc_rate=0.72]
MALA:  24%|██▍       | 95/400 [00:27<01:26,  3.52it/s, acc_rate=0.72]
MALA:  24%|██▍       | 95/400 [00:27<01:26,  3.52it/s, acc_rate=0.72]
MALA:  24%|██▍       | 96/400 [00:27<01:26,  3.50it/s, acc_rate=0.72]
MALA:  24%|██▍       | 96/400 [00:27<01:26,  3.50it/s, acc_rate=0.72]
MALA:  24%|██▍       | 97/400 [00:27<01:26,  3.49it/s, acc_rate=0.72]
MALA:  24%|██▍       | 97/400 [00:28<01:26,  3.49it/s, acc_rate=0.72]
MALA:  24%|██▍       | 98/400 [00:28<01:26,  3.48it/s, acc_rate=0.72]
MALA:  24%|██▍       | 98/400 [00:28<01:26,  3.48it/s, acc_rate=0.72]
MALA:  25%|██▍       | 99/400 [00:28<01:26,  3.49it/s, acc_rate=0.72]
MALA:  25%|██▍       | 99/400 [00:28<01:26,  3.49it/s, acc_rate=0.72]
MALA:  25%|██▌       | 100/400 [00:28<01:26,  3.46it/s, acc_rate=0.72]
MALA:  25%|██▌       | 100/400 [00:28<01:26,  3.46it/s, acc_rate=0.72]
MALA:  25%|██▌       | 101/400 [00:28<01:23,  3.58it/s, acc_rate=0.72]
MALA:  25%|██▌       | 101/400 [00:29<01:23,  3.58it/s, acc_rate=0.73]
MALA:  26%|██▌       | 102/400 [00:29<01:23,  3.56it/s, acc_rate=0.73]
MALA:  26%|██▌       | 102/400 [00:29<01:23,  3.56it/s, acc_rate=0.73]
MALA:  26%|██▌       | 103/400 [00:29<01:24,  3.51it/s, acc_rate=0.73]
MALA:  26%|██▌       | 103/400 [00:29<01:24,  3.51it/s, acc_rate=0.73]
MALA:  26%|██▌       | 104/400 [00:29<01:23,  3.55it/s, acc_rate=0.73]
MALA:  26%|██▌       | 104/400 [00:30<01:23,  3.55it/s, acc_rate=0.73]
MALA:  26%|██▋       | 105/400 [00:30<01:23,  3.55it/s, acc_rate=0.73]
MALA:  26%|██▋       | 105/400 [00:30<01:23,  3.55it/s, acc_rate=0.72]
MALA:  26%|██▋       | 106/400 [00:30<01:23,  3.54it/s, acc_rate=0.72]
MALA:  26%|██▋       | 106/400 [00:30<01:23,  3.54it/s, acc_rate=0.73]
MALA:  27%|██▋       | 107/400 [00:30<01:23,  3.53it/s, acc_rate=0.73]
MALA:  27%|██▋       | 107/400 [00:30<01:23,  3.53it/s, acc_rate=0.73]
MALA:  27%|██▋       | 108/400 [00:30<01:22,  3.53it/s, acc_rate=0.73]
MALA:  27%|██▋       | 108/400 [00:31<01:22,  3.53it/s, acc_rate=0.73]
MALA:  27%|██▋       | 109/400 [00:31<01:23,  3.51it/s, acc_rate=0.73]
MALA:  27%|██▋       | 109/400 [00:31<01:23,  3.51it/s, acc_rate=0.73]
MALA:  28%|██▊       | 110/400 [00:31<01:22,  3.51it/s, acc_rate=0.73]
MALA:  28%|██▊       | 110/400 [00:31<01:22,  3.51it/s, acc_rate=0.73]
MALA:  28%|██▊       | 111/400 [00:31<01:22,  3.49it/s, acc_rate=0.73]
MALA:  28%|██▊       | 111/400 [00:32<01:22,  3.49it/s, acc_rate=0.74]
MALA:  28%|██▊       | 112/400 [00:32<01:22,  3.49it/s, acc_rate=0.74]
MALA:  28%|██▊       | 112/400 [00:32<01:22,  3.49it/s, acc_rate=0.74]
MALA:  28%|██▊       | 113/400 [00:32<01:22,  3.50it/s, acc_rate=0.74]
MALA:  28%|██▊       | 113/400 [00:32<01:22,  3.50it/s, acc_rate=0.73]
MALA:  28%|██▊       | 114/400 [00:32<01:21,  3.50it/s, acc_rate=0.73]
MALA:  28%|██▊       | 114/400 [00:32<01:21,  3.50it/s, acc_rate=0.73]
MALA:  29%|██▉       | 115/400 [00:32<01:21,  3.50it/s, acc_rate=0.73]
MALA:  29%|██▉       | 115/400 [00:33<01:21,  3.50it/s, acc_rate=0.74]
MALA:  29%|██▉       | 116/400 [00:33<01:20,  3.51it/s, acc_rate=0.74]
MALA:  29%|██▉       | 116/400 [00:33<01:20,  3.51it/s, acc_rate=0.74]
MALA:  29%|██▉       | 117/400 [00:33<01:20,  3.50it/s, acc_rate=0.74]
MALA:  29%|██▉       | 117/400 [00:33<01:20,  3.50it/s, acc_rate=0.74]
MALA:  30%|██▉       | 118/400 [00:33<01:21,  3.46it/s, acc_rate=0.74]
MALA:  30%|██▉       | 118/400 [00:34<01:21,  3.46it/s, acc_rate=0.74]
MALA:  30%|██▉       | 119/400 [00:34<01:20,  3.47it/s, acc_rate=0.74]
MALA:  30%|██▉       | 119/400 [00:34<01:20,  3.47it/s, acc_rate=0.74]
MALA:  30%|███       | 120/400 [00:34<01:20,  3.47it/s, acc_rate=0.74]
MALA:  30%|███       | 120/400 [00:34<01:20,  3.47it/s, acc_rate=0.74]
MALA:  30%|███       | 121/400 [00:34<01:20,  3.46it/s, acc_rate=0.74]
MALA:  30%|███       | 121/400 [00:34<01:20,  3.46it/s, acc_rate=0.74]
MALA:  30%|███       | 122/400 [00:34<01:20,  3.47it/s, acc_rate=0.74]
MALA:  30%|███       | 122/400 [00:35<01:20,  3.47it/s, acc_rate=0.74]
MALA:  31%|███       | 123/400 [00:35<01:19,  3.47it/s, acc_rate=0.74]
MALA:  31%|███       | 123/400 [00:35<01:19,  3.47it/s, acc_rate=0.75]
MALA:  31%|███       | 124/400 [00:35<01:19,  3.47it/s, acc_rate=0.75]
MALA:  31%|███       | 124/400 [00:35<01:19,  3.47it/s, acc_rate=0.75]
MALA:  31%|███▏      | 125/400 [00:35<01:17,  3.55it/s, acc_rate=0.75]
MALA:  31%|███▏      | 125/400 [00:36<01:17,  3.55it/s, acc_rate=0.75]
MALA:  32%|███▏      | 126/400 [00:36<01:17,  3.53it/s, acc_rate=0.75]
MALA:  32%|███▏      | 126/400 [00:36<01:17,  3.53it/s, acc_rate=0.75]
MALA:  32%|███▏      | 127/400 [00:36<01:18,  3.50it/s, acc_rate=0.75]
MALA:  32%|███▏      | 127/400 [00:36<01:18,  3.50it/s, acc_rate=0.75]
MALA:  32%|███▏      | 128/400 [00:36<01:18,  3.49it/s, acc_rate=0.75]
MALA:  32%|███▏      | 128/400 [00:36<01:18,  3.49it/s, acc_rate=0.75]
MALA:  32%|███▏      | 129/400 [00:36<01:16,  3.52it/s, acc_rate=0.75]
MALA:  32%|███▏      | 129/400 [00:37<01:16,  3.52it/s, acc_rate=0.75]
MALA:  32%|███▎      | 130/400 [00:37<01:16,  3.51it/s, acc_rate=0.75]
MALA:  32%|███▎      | 130/400 [00:37<01:16,  3.51it/s, acc_rate=0.75]
MALA:  33%|███▎      | 131/400 [00:37<01:16,  3.50it/s, acc_rate=0.75]
MALA:  33%|███▎      | 131/400 [00:37<01:16,  3.50it/s, acc_rate=0.75]
MALA:  33%|███▎      | 132/400 [00:37<01:16,  3.50it/s, acc_rate=0.75]
MALA:  33%|███▎      | 132/400 [00:38<01:16,  3.50it/s, acc_rate=0.75]
MALA:  33%|███▎      | 133/400 [00:38<01:16,  3.49it/s, acc_rate=0.75]
MALA:  33%|███▎      | 133/400 [00:38<01:16,  3.49it/s, acc_rate=0.75]
MALA:  34%|███▎      | 134/400 [00:38<01:16,  3.49it/s, acc_rate=0.75]
MALA:  34%|███▎      | 134/400 [00:38<01:16,  3.49it/s, acc_rate=0.75]
MALA:  34%|███▍      | 135/400 [00:38<01:15,  3.49it/s, acc_rate=0.75]
MALA:  34%|███▍      | 135/400 [00:38<01:15,  3.49it/s, acc_rate=0.75]
MALA:  34%|███▍      | 136/400 [00:38<01:15,  3.48it/s, acc_rate=0.75]
MALA:  34%|███▍      | 136/400 [00:39<01:15,  3.48it/s, acc_rate=0.75]
MALA:  34%|███▍      | 137/400 [00:39<01:15,  3.48it/s, acc_rate=0.75]
MALA:  34%|███▍      | 137/400 [00:39<01:15,  3.48it/s, acc_rate=0.76]
MALA:  34%|███▍      | 138/400 [00:39<01:15,  3.46it/s, acc_rate=0.76]
MALA:  34%|███▍      | 138/400 [00:39<01:15,  3.46it/s, acc_rate=0.76]
MALA:  35%|███▍      | 139/400 [00:39<01:15,  3.45it/s, acc_rate=0.76]
MALA:  35%|███▍      | 139/400 [00:40<01:15,  3.45it/s, acc_rate=0.76]
MALA:  35%|███▌      | 140/400 [00:40<01:15,  3.46it/s, acc_rate=0.76]
MALA:  35%|███▌      | 140/400 [00:40<01:15,  3.46it/s, acc_rate=0.76]
MALA:  35%|███▌      | 141/400 [00:40<01:15,  3.45it/s, acc_rate=0.76]
MALA:  35%|███▌      | 141/400 [00:40<01:15,  3.45it/s, acc_rate=0.75]
MALA:  36%|███▌      | 142/400 [00:40<01:14,  3.45it/s, acc_rate=0.75]
MALA:  36%|███▌      | 142/400 [00:40<01:14,  3.45it/s, acc_rate=0.76]
MALA:  36%|███▌      | 143/400 [00:40<01:13,  3.51it/s, acc_rate=0.76]
MALA:  36%|███▌      | 143/400 [00:41<01:13,  3.51it/s, acc_rate=0.76]
MALA:  36%|███▌      | 144/400 [00:41<01:12,  3.52it/s, acc_rate=0.76]
MALA:  36%|███▌      | 144/400 [00:41<01:12,  3.52it/s, acc_rate=0.76]
MALA:  36%|███▋      | 145/400 [00:41<01:12,  3.50it/s, acc_rate=0.76]
MALA:  36%|███▋      | 145/400 [00:41<01:12,  3.50it/s, acc_rate=0.76]
MALA:  36%|███▋      | 146/400 [00:41<01:12,  3.50it/s, acc_rate=0.76]
MALA:  36%|███▋      | 146/400 [00:42<01:12,  3.50it/s, acc_rate=0.76]
MALA:  37%|███▋      | 147/400 [00:42<01:12,  3.48it/s, acc_rate=0.76]
MALA:  37%|███▋      | 147/400 [00:42<01:12,  3.48it/s, acc_rate=0.75]
MALA:  37%|███▋      | 148/400 [00:42<01:12,  3.47it/s, acc_rate=0.75]
MALA:  37%|███▋      | 148/400 [00:42<01:12,  3.47it/s, acc_rate=0.75]
MALA:  37%|███▋      | 149/400 [00:42<01:12,  3.47it/s, acc_rate=0.75]
MALA:  37%|███▋      | 149/400 [00:42<01:12,  3.47it/s, acc_rate=0.75]
MALA:  38%|███▊      | 150/400 [00:42<01:11,  3.47it/s, acc_rate=0.75]
MALA:  38%|███▊      | 150/400 [00:43<01:11,  3.47it/s, acc_rate=0.75]
MALA:  38%|███▊      | 151/400 [00:43<01:11,  3.49it/s, acc_rate=0.75]
MALA:  38%|███▊      | 151/400 [00:43<01:11,  3.49it/s, acc_rate=0.75]
MALA:  38%|███▊      | 152/400 [00:43<01:11,  3.48it/s, acc_rate=0.75]
MALA:  38%|███▊      | 152/400 [00:43<01:11,  3.48it/s, acc_rate=0.75]
MALA:  38%|███▊      | 153/400 [00:43<01:12,  3.39it/s, acc_rate=0.75]
MALA:  38%|███▊      | 153/400 [00:44<01:12,  3.39it/s, acc_rate=0.75]
MALA:  38%|███▊      | 154/400 [00:44<01:12,  3.41it/s, acc_rate=0.75]
MALA:  38%|███▊      | 154/400 [00:44<01:12,  3.41it/s, acc_rate=0.76]
MALA:  39%|███▉      | 155/400 [00:44<01:11,  3.42it/s, acc_rate=0.76]
MALA:  39%|███▉      | 155/400 [00:44<01:11,  3.42it/s, acc_rate=0.76]
MALA:  39%|███▉      | 156/400 [00:44<01:11,  3.42it/s, acc_rate=0.76]
MALA:  39%|███▉      | 156/400 [00:44<01:11,  3.42it/s, acc_rate=0.76]
MALA:  39%|███▉      | 157/400 [00:44<01:08,  3.53it/s, acc_rate=0.76]
MALA:  39%|███▉      | 157/400 [00:45<01:08,  3.53it/s, acc_rate=0.76]
MALA:  40%|███▉      | 158/400 [00:45<01:09,  3.50it/s, acc_rate=0.76]
MALA:  40%|███▉      | 158/400 [00:45<01:09,  3.50it/s, acc_rate=0.76]
MALA:  40%|███▉      | 159/400 [00:45<01:08,  3.49it/s, acc_rate=0.76]
MALA:  40%|███▉      | 159/400 [00:45<01:08,  3.49it/s, acc_rate=0.76]
MALA:  40%|████      | 160/400 [00:45<01:08,  3.51it/s, acc_rate=0.76]
MALA:  40%|████      | 160/400 [00:46<01:08,  3.51it/s, acc_rate=0.76]
MALA:  40%|████      | 161/400 [00:46<01:08,  3.50it/s, acc_rate=0.76]
MALA:  40%|████      | 161/400 [00:46<01:08,  3.50it/s, acc_rate=0.76]
MALA:  40%|████      | 162/400 [00:46<01:08,  3.50it/s, acc_rate=0.76]
MALA:  40%|████      | 162/400 [00:46<01:08,  3.50it/s, acc_rate=0.76]
MALA:  41%|████      | 163/400 [00:46<01:08,  3.47it/s, acc_rate=0.76]
MALA:  41%|████      | 163/400 [00:46<01:08,  3.47it/s, acc_rate=0.75]
MALA:  41%|████      | 164/400 [00:46<01:06,  3.53it/s, acc_rate=0.75]
MALA:  41%|████      | 164/400 [00:47<01:06,  3.53it/s, acc_rate=0.75]
MALA:  41%|████▏     | 165/400 [00:47<01:07,  3.50it/s, acc_rate=0.75]
MALA:  41%|████▏     | 165/400 [00:47<01:07,  3.50it/s, acc_rate=0.76]
MALA:  42%|████▏     | 166/400 [00:47<01:07,  3.48it/s, acc_rate=0.76]
MALA:  42%|████▏     | 166/400 [00:47<01:07,  3.48it/s, acc_rate=0.76]
MALA:  42%|████▏     | 167/400 [00:47<01:07,  3.47it/s, acc_rate=0.76]
MALA:  42%|████▏     | 167/400 [00:48<01:07,  3.47it/s, acc_rate=0.76]
MALA:  42%|████▏     | 168/400 [00:48<01:06,  3.47it/s, acc_rate=0.76]
MALA:  42%|████▏     | 168/400 [00:48<01:06,  3.47it/s, acc_rate=0.76]
MALA:  42%|████▏     | 169/400 [00:48<01:06,  3.47it/s, acc_rate=0.76]
MALA:  42%|████▏     | 169/400 [00:48<01:06,  3.47it/s, acc_rate=0.75]
MALA:  42%|████▎     | 170/400 [00:48<01:06,  3.46it/s, acc_rate=0.75]
MALA:  42%|████▎     | 170/400 [00:49<01:06,  3.46it/s, acc_rate=0.75]
MALA:  43%|████▎     | 171/400 [00:49<01:06,  3.45it/s, acc_rate=0.75]
MALA:  43%|████▎     | 171/400 [00:49<01:06,  3.45it/s, acc_rate=0.75]
MALA:  43%|████▎     | 172/400 [00:49<01:05,  3.47it/s, acc_rate=0.75]
MALA:  43%|████▎     | 172/400 [00:49<01:05,  3.47it/s, acc_rate=0.75]
MALA:  43%|████▎     | 173/400 [00:49<01:05,  3.46it/s, acc_rate=0.75]
MALA:  43%|████▎     | 173/400 [00:49<01:05,  3.46it/s, acc_rate=0.75]
MALA:  44%|████▎     | 174/400 [00:49<01:05,  3.45it/s, acc_rate=0.75]
MALA:  44%|████▎     | 174/400 [00:50<01:05,  3.45it/s, acc_rate=0.75]
MALA:  44%|████▍     | 175/400 [00:50<01:05,  3.46it/s, acc_rate=0.75]
MALA:  44%|████▍     | 175/400 [00:50<01:05,  3.46it/s, acc_rate=0.75]
MALA:  44%|████▍     | 176/400 [00:50<01:04,  3.45it/s, acc_rate=0.75]
MALA:  44%|████▍     | 176/400 [00:50<01:04,  3.45it/s, acc_rate=0.75]
MALA:  44%|████▍     | 177/400 [00:50<01:04,  3.44it/s, acc_rate=0.75]
MALA:  44%|████▍     | 177/400 [00:51<01:04,  3.44it/s, acc_rate=0.76]
MALA:  44%|████▍     | 178/400 [00:51<01:02,  3.54it/s, acc_rate=0.76]
MALA:  44%|████▍     | 178/400 [00:51<01:02,  3.54it/s, acc_rate=0.75]
MALA:  45%|████▍     | 179/400 [00:51<01:02,  3.55it/s, acc_rate=0.75]
MALA:  45%|████▍     | 179/400 [00:51<01:02,  3.55it/s, acc_rate=0.75]
MALA:  45%|████▌     | 180/400 [00:51<01:02,  3.53it/s, acc_rate=0.75]
MALA:  45%|████▌     | 180/400 [00:51<01:02,  3.53it/s, acc_rate=0.75]
MALA:  45%|████▌     | 181/400 [00:51<01:02,  3.51it/s, acc_rate=0.75]
MALA:  45%|████▌     | 181/400 [00:52<01:02,  3.51it/s, acc_rate=0.75]
MALA:  46%|████▌     | 182/400 [00:52<01:02,  3.48it/s, acc_rate=0.75]
MALA:  46%|████▌     | 182/400 [00:52<01:02,  3.48it/s, acc_rate=0.75]
MALA:  46%|████▌     | 183/400 [00:52<01:02,  3.49it/s, acc_rate=0.75]
MALA:  46%|████▌     | 183/400 [00:52<01:02,  3.49it/s, acc_rate=0.75]
MALA:  46%|████▌     | 184/400 [00:52<01:02,  3.48it/s, acc_rate=0.75]
MALA:  46%|████▌     | 184/400 [00:53<01:02,  3.48it/s, acc_rate=0.75]
MALA:  46%|████▋     | 185/400 [00:53<00:59,  3.59it/s, acc_rate=0.75]
MALA:  46%|████▋     | 185/400 [00:53<00:59,  3.59it/s, acc_rate=0.75]
MALA:  46%|████▋     | 186/400 [00:53<00:59,  3.58it/s, acc_rate=0.75]
MALA:  46%|████▋     | 186/400 [00:53<00:59,  3.58it/s, acc_rate=0.76]
MALA:  47%|████▋     | 187/400 [00:53<01:00,  3.53it/s, acc_rate=0.76]
MALA:  47%|████▋     | 187/400 [00:53<01:00,  3.53it/s, acc_rate=0.76]
MALA:  47%|████▋     | 188/400 [00:53<01:00,  3.51it/s, acc_rate=0.76]
MALA:  47%|████▋     | 188/400 [00:54<01:00,  3.51it/s, acc_rate=0.76]
MALA:  47%|████▋     | 189/400 [00:54<01:00,  3.50it/s, acc_rate=0.76]
MALA:  47%|████▋     | 189/400 [00:54<01:00,  3.50it/s, acc_rate=0.76]
MALA:  48%|████▊     | 190/400 [00:54<00:59,  3.50it/s, acc_rate=0.76]
MALA:  48%|████▊     | 190/400 [00:54<00:59,  3.50it/s, acc_rate=0.76]
MALA:  48%|████▊     | 191/400 [00:54<00:59,  3.49it/s, acc_rate=0.76]
MALA:  48%|████▊     | 191/400 [00:55<00:59,  3.49it/s, acc_rate=0.76]
MALA:  48%|████▊     | 192/400 [00:55<00:59,  3.50it/s, acc_rate=0.76]
MALA:  48%|████▊     | 192/400 [00:55<00:59,  3.50it/s, acc_rate=0.76]
MALA:  48%|████▊     | 193/400 [00:55<00:59,  3.48it/s, acc_rate=0.76]
MALA:  48%|████▊     | 193/400 [00:55<00:59,  3.48it/s, acc_rate=0.76]
MALA:  48%|████▊     | 194/400 [00:55<00:59,  3.49it/s, acc_rate=0.76]
MALA:  48%|████▊     | 194/400 [00:55<00:59,  3.49it/s, acc_rate=0.76]
MALA:  49%|████▉     | 195/400 [00:55<00:59,  3.47it/s, acc_rate=0.76]
MALA:  49%|████▉     | 195/400 [00:56<00:59,  3.47it/s, acc_rate=0.76]
MALA:  49%|████▉     | 196/400 [00:56<00:58,  3.46it/s, acc_rate=0.76]
MALA:  49%|████▉     | 196/400 [00:56<00:58,  3.46it/s, acc_rate=0.76]
MALA:  49%|████▉     | 197/400 [00:56<00:58,  3.45it/s, acc_rate=0.76]
MALA:  49%|████▉     | 197/400 [00:56<00:58,  3.45it/s, acc_rate=0.76]
MALA:  50%|████▉     | 198/400 [00:56<00:58,  3.47it/s, acc_rate=0.76]
MALA:  50%|████▉     | 198/400 [00:57<00:58,  3.47it/s, acc_rate=0.76]
MALA:  50%|████▉     | 199/400 [00:57<00:57,  3.49it/s, acc_rate=0.76]
MALA:  50%|████▉     | 199/400 [00:57<00:57,  3.49it/s, acc_rate=0.76]
MALA:  50%|█████     | 200/400 [00:57<00:57,  3.49it/s, acc_rate=0.76]
MALA:  50%|█████     | 200/400 [00:57<00:57,  3.49it/s, acc_rate=0.76]
MALA:  50%|█████     | 201/400 [00:57<00:57,  3.47it/s, acc_rate=0.76]
MALA:  50%|█████     | 201/400 [00:57<00:57,  3.47it/s, acc_rate=0.75]
MALA:  50%|█████     | 202/400 [00:57<00:56,  3.49it/s, acc_rate=0.75]
MALA:  50%|█████     | 202/400 [00:58<00:56,  3.49it/s, acc_rate=0.75]
MALA:  51%|█████     | 203/400 [00:58<00:56,  3.46it/s, acc_rate=0.75]
MALA:  51%|█████     | 203/400 [00:58<00:56,  3.46it/s, acc_rate=0.75]
MALA:  51%|█████     | 204/400 [00:58<00:56,  3.46it/s, acc_rate=0.75]
MALA:  51%|█████     | 204/400 [00:58<00:56,  3.46it/s, acc_rate=0.75]
MALA:  51%|█████▏    | 205/400 [00:58<00:57,  3.39it/s, acc_rate=0.75]
MALA:  51%|█████▏    | 205/400 [00:59<00:57,  3.39it/s, acc_rate=0.75]
MALA:  52%|█████▏    | 206/400 [00:59<00:56,  3.42it/s, acc_rate=0.75]
MALA:  52%|█████▏    | 206/400 [00:59<00:56,  3.42it/s, acc_rate=0.75]
MALA:  52%|█████▏    | 207/400 [00:59<00:56,  3.44it/s, acc_rate=0.75]
MALA:  52%|█████▏    | 207/400 [00:59<00:56,  3.44it/s, acc_rate=0.75]
MALA:  52%|█████▏    | 208/400 [00:59<00:55,  3.45it/s, acc_rate=0.75]
MALA:  52%|█████▏    | 208/400 [00:59<00:55,  3.45it/s, acc_rate=0.75]
MALA:  52%|█████▏    | 209/400 [00:59<00:55,  3.45it/s, acc_rate=0.75]
MALA:  52%|█████▏    | 209/400 [01:00<00:55,  3.45it/s, acc_rate=0.75]
MALA:  52%|█████▎    | 210/400 [01:00<00:54,  3.46it/s, acc_rate=0.75]
MALA:  52%|█████▎    | 210/400 [01:00<00:54,  3.46it/s, acc_rate=0.75]
MALA:  53%|█████▎    | 211/400 [01:00<00:54,  3.45it/s, acc_rate=0.75]
MALA:  53%|█████▎    | 211/400 [01:00<00:54,  3.45it/s, acc_rate=0.75]
MALA:  53%|█████▎    | 212/400 [01:00<00:54,  3.46it/s, acc_rate=0.75]
MALA:  53%|█████▎    | 212/400 [01:01<00:54,  3.46it/s, acc_rate=0.75]
MALA:  53%|█████▎    | 213/400 [01:01<00:53,  3.49it/s, acc_rate=0.75]
MALA:  53%|█████▎    | 213/400 [01:01<00:53,  3.49it/s, acc_rate=0.76]
MALA:  54%|█████▎    | 214/400 [01:01<00:53,  3.48it/s, acc_rate=0.76]
MALA:  54%|█████▎    | 214/400 [01:01<00:53,  3.48it/s, acc_rate=0.76]
MALA:  54%|█████▍    | 215/400 [01:01<00:53,  3.47it/s, acc_rate=0.76]
MALA:  54%|█████▍    | 215/400 [01:01<00:53,  3.47it/s, acc_rate=0.76]
MALA:  54%|█████▍    | 216/400 [01:01<00:53,  3.46it/s, acc_rate=0.76]
MALA:  54%|█████▍    | 216/400 [01:02<00:53,  3.46it/s, acc_rate=0.76]
MALA:  54%|█████▍    | 217/400 [01:02<00:52,  3.47it/s, acc_rate=0.76]
MALA:  54%|█████▍    | 217/400 [01:02<00:52,  3.47it/s, acc_rate=0.76]
MALA:  55%|█████▍    | 218/400 [01:02<00:52,  3.47it/s, acc_rate=0.76]
MALA:  55%|█████▍    | 218/400 [01:02<00:52,  3.47it/s, acc_rate=0.76]
MALA:  55%|█████▍    | 219/400 [01:02<00:52,  3.46it/s, acc_rate=0.76]
MALA:  55%|█████▍    | 219/400 [01:03<00:52,  3.46it/s, acc_rate=0.76]
MALA:  55%|█████▌    | 220/400 [01:03<00:51,  3.50it/s, acc_rate=0.76]
MALA:  55%|█████▌    | 220/400 [01:03<00:51,  3.50it/s, acc_rate=0.76]
MALA:  55%|█████▌    | 221/400 [01:03<00:51,  3.49it/s, acc_rate=0.76]
MALA:  55%|█████▌    | 221/400 [01:03<00:51,  3.49it/s, acc_rate=0.76]
MALA:  56%|█████▌    | 222/400 [01:03<00:51,  3.46it/s, acc_rate=0.76]
MALA:  56%|█████▌    | 222/400 [01:03<00:51,  3.46it/s, acc_rate=0.76]
MALA:  56%|█████▌    | 223/400 [01:03<00:50,  3.49it/s, acc_rate=0.76]
MALA:  56%|█████▌    | 223/400 [01:04<00:50,  3.49it/s, acc_rate=0.76]
MALA:  56%|█████▌    | 224/400 [01:04<00:50,  3.50it/s, acc_rate=0.76]
MALA:  56%|█████▌    | 224/400 [01:04<00:50,  3.50it/s, acc_rate=0.76]
MALA:  56%|█████▋    | 225/400 [01:04<00:49,  3.51it/s, acc_rate=0.76]
MALA:  56%|█████▋    | 225/400 [01:04<00:49,  3.51it/s, acc_rate=0.76]
MALA:  56%|█████▋    | 226/400 [01:04<00:49,  3.50it/s, acc_rate=0.76]
MALA:  56%|█████▋    | 226/400 [01:05<00:49,  3.50it/s, acc_rate=0.76]
MALA:  57%|█████▋    | 227/400 [01:05<00:48,  3.57it/s, acc_rate=0.76]
MALA:  57%|█████▋    | 227/400 [01:05<00:48,  3.57it/s, acc_rate=0.76]
MALA:  57%|█████▋    | 228/400 [01:05<00:48,  3.52it/s, acc_rate=0.76]
MALA:  57%|█████▋    | 228/400 [01:05<00:48,  3.52it/s, acc_rate=0.76]
MALA:  57%|█████▋    | 229/400 [01:05<00:48,  3.52it/s, acc_rate=0.76]
MALA:  57%|█████▋    | 229/400 [01:05<00:48,  3.52it/s, acc_rate=0.76]
MALA:  57%|█████▊    | 230/400 [01:05<00:48,  3.49it/s, acc_rate=0.76]
MALA:  57%|█████▊    | 230/400 [01:06<00:48,  3.49it/s, acc_rate=0.76]
MALA:  58%|█████▊    | 231/400 [01:06<00:48,  3.49it/s, acc_rate=0.76]
MALA:  58%|█████▊    | 231/400 [01:06<00:48,  3.49it/s, acc_rate=0.76]
MALA:  58%|█████▊    | 232/400 [01:06<00:48,  3.47it/s, acc_rate=0.76]
MALA:  58%|█████▊    | 232/400 [01:06<00:48,  3.47it/s, acc_rate=0.76]
MALA:  58%|█████▊    | 233/400 [01:06<00:48,  3.47it/s, acc_rate=0.76]
MALA:  58%|█████▊    | 233/400 [01:07<00:48,  3.47it/s, acc_rate=0.76]
MALA:  58%|█████▊    | 234/400 [01:07<00:46,  3.55it/s, acc_rate=0.76]
MALA:  58%|█████▊    | 234/400 [01:07<00:46,  3.55it/s, acc_rate=0.76]
MALA:  59%|█████▉    | 235/400 [01:07<00:46,  3.56it/s, acc_rate=0.76]
MALA:  59%|█████▉    | 235/400 [01:07<00:46,  3.56it/s, acc_rate=0.76]
MALA:  59%|█████▉    | 236/400 [01:07<00:46,  3.53it/s, acc_rate=0.76]
MALA:  59%|█████▉    | 236/400 [01:07<00:46,  3.53it/s, acc_rate=0.76]
MALA:  59%|█████▉    | 237/400 [01:07<00:46,  3.52it/s, acc_rate=0.76]
MALA:  59%|█████▉    | 237/400 [01:08<00:46,  3.52it/s, acc_rate=0.76]
MALA:  60%|█████▉    | 238/400 [01:08<00:46,  3.51it/s, acc_rate=0.76]
MALA:  60%|█████▉    | 238/400 [01:08<00:46,  3.51it/s, acc_rate=0.76]
MALA:  60%|█████▉    | 239/400 [01:08<00:46,  3.49it/s, acc_rate=0.76]
MALA:  60%|█████▉    | 239/400 [01:08<00:46,  3.49it/s, acc_rate=0.76]
MALA:  60%|██████    | 240/400 [01:08<00:45,  3.48it/s, acc_rate=0.76]
MALA:  60%|██████    | 240/400 [01:09<00:45,  3.48it/s, acc_rate=0.76]
MALA:  60%|██████    | 241/400 [01:09<00:45,  3.51it/s, acc_rate=0.76]
MALA:  60%|██████    | 241/400 [01:09<00:45,  3.51it/s, acc_rate=0.76]
MALA:  60%|██████    | 242/400 [01:09<00:45,  3.49it/s, acc_rate=0.76]
MALA:  60%|██████    | 242/400 [01:09<00:45,  3.49it/s, acc_rate=0.76]
MALA:  61%|██████    | 243/400 [01:09<00:45,  3.49it/s, acc_rate=0.76]
MALA:  61%|██████    | 243/400 [01:09<00:45,  3.49it/s, acc_rate=0.75]
MALA:  61%|██████    | 244/400 [01:09<00:44,  3.47it/s, acc_rate=0.75]
MALA:  61%|██████    | 244/400 [01:10<00:44,  3.47it/s, acc_rate=0.75]
MALA:  61%|██████▏   | 245/400 [01:10<00:44,  3.47it/s, acc_rate=0.75]
MALA:  61%|██████▏   | 245/400 [01:10<00:44,  3.47it/s, acc_rate=0.75]
MALA:  62%|██████▏   | 246/400 [01:10<00:44,  3.47it/s, acc_rate=0.75]
MALA:  62%|██████▏   | 246/400 [01:10<00:44,  3.47it/s, acc_rate=0.75]
MALA:  62%|██████▏   | 247/400 [01:10<00:44,  3.48it/s, acc_rate=0.75]
MALA:  62%|██████▏   | 247/400 [01:11<00:44,  3.48it/s, acc_rate=0.75]
MALA:  62%|██████▏   | 248/400 [01:11<00:42,  3.54it/s, acc_rate=0.75]
MALA:  62%|██████▏   | 248/400 [01:11<00:42,  3.54it/s, acc_rate=0.75]
MALA:  62%|██████▏   | 249/400 [01:11<00:42,  3.54it/s, acc_rate=0.75]
MALA:  62%|██████▏   | 249/400 [01:11<00:42,  3.54it/s, acc_rate=0.75]
MALA:  62%|██████▎   | 250/400 [01:11<00:42,  3.53it/s, acc_rate=0.75]
MALA:  62%|██████▎   | 250/400 [01:11<00:42,  3.53it/s, acc_rate=0.75]
MALA:  63%|██████▎   | 251/400 [01:11<00:42,  3.54it/s, acc_rate=0.75]
MALA:  63%|██████▎   | 251/400 [01:12<00:42,  3.54it/s, acc_rate=0.75]
MALA:  63%|██████▎   | 252/400 [01:12<00:42,  3.52it/s, acc_rate=0.75]
MALA:  63%|██████▎   | 252/400 [01:12<00:42,  3.52it/s, acc_rate=0.74]
MALA:  63%|██████▎   | 253/400 [01:12<00:41,  3.51it/s, acc_rate=0.74]
MALA:  63%|██████▎   | 253/400 [01:12<00:41,  3.51it/s, acc_rate=0.74]
MALA:  64%|██████▎   | 254/400 [01:12<00:41,  3.49it/s, acc_rate=0.74]
MALA:  64%|██████▎   | 254/400 [01:13<00:41,  3.49it/s, acc_rate=0.74]
MALA:  64%|██████▍   | 255/400 [01:13<00:41,  3.53it/s, acc_rate=0.74]
MALA:  64%|██████▍   | 255/400 [01:13<00:41,  3.53it/s, acc_rate=0.74]
MALA:  64%|██████▍   | 256/400 [01:13<00:41,  3.51it/s, acc_rate=0.74]
MALA:  64%|██████▍   | 256/400 [01:13<00:41,  3.51it/s, acc_rate=0.74]
MALA:  64%|██████▍   | 257/400 [01:13<00:41,  3.49it/s, acc_rate=0.74]
MALA:  64%|██████▍   | 257/400 [01:13<00:41,  3.49it/s, acc_rate=0.74]
MALA:  64%|██████▍   | 258/400 [01:13<00:41,  3.45it/s, acc_rate=0.74]
MALA:  64%|██████▍   | 258/400 [01:14<00:41,  3.45it/s, acc_rate=0.74]
MALA:  65%|██████▍   | 259/400 [01:14<00:40,  3.47it/s, acc_rate=0.74]
MALA:  65%|██████▍   | 259/400 [01:14<00:40,  3.47it/s, acc_rate=0.74]
MALA:  65%|██████▌   | 260/400 [01:14<00:40,  3.46it/s, acc_rate=0.74]
MALA:  65%|██████▌   | 260/400 [01:14<00:40,  3.46it/s, acc_rate=0.74]
MALA:  65%|██████▌   | 261/400 [01:14<00:40,  3.47it/s, acc_rate=0.74]
MALA:  65%|██████▌   | 261/400 [01:15<00:40,  3.47it/s, acc_rate=0.74]
MALA:  66%|██████▌   | 262/400 [01:15<00:39,  3.49it/s, acc_rate=0.74]
MALA:  66%|██████▌   | 262/400 [01:15<00:39,  3.49it/s, acc_rate=0.73]
MALA:  66%|██████▌   | 263/400 [01:15<00:39,  3.48it/s, acc_rate=0.73]
MALA:  66%|██████▌   | 263/400 [01:15<00:39,  3.48it/s, acc_rate=0.74]
MALA:  66%|██████▌   | 264/400 [01:15<00:39,  3.47it/s, acc_rate=0.74]
MALA:  66%|██████▌   | 264/400 [01:15<00:39,  3.47it/s, acc_rate=0.73]
MALA:  66%|██████▋   | 265/400 [01:15<00:38,  3.47it/s, acc_rate=0.73]
MALA:  66%|██████▋   | 265/400 [01:16<00:38,  3.47it/s, acc_rate=0.73]
MALA:  66%|██████▋   | 266/400 [01:16<00:38,  3.46it/s, acc_rate=0.73]
MALA:  66%|██████▋   | 266/400 [01:16<00:38,  3.46it/s, acc_rate=0.73]
MALA:  67%|██████▋   | 267/400 [01:16<00:38,  3.45it/s, acc_rate=0.73]
MALA:  67%|██████▋   | 267/400 [01:16<00:38,  3.45it/s, acc_rate=0.73]
MALA:  67%|██████▋   | 268/400 [01:16<00:38,  3.46it/s, acc_rate=0.73]
MALA:  67%|██████▋   | 268/400 [01:17<00:38,  3.46it/s, acc_rate=0.73]
MALA:  67%|██████▋   | 269/400 [01:17<00:37,  3.49it/s, acc_rate=0.73]
MALA:  67%|██████▋   | 269/400 [01:17<00:37,  3.49it/s, acc_rate=0.73]
MALA:  68%|██████▊   | 270/400 [01:17<00:37,  3.47it/s, acc_rate=0.73]
MALA:  68%|██████▊   | 270/400 [01:17<00:37,  3.47it/s, acc_rate=0.73]
MALA:  68%|██████▊   | 271/400 [01:17<00:37,  3.46it/s, acc_rate=0.73]
MALA:  68%|██████▊   | 271/400 [01:17<00:37,  3.46it/s, acc_rate=0.73]
MALA:  68%|██████▊   | 272/400 [01:17<00:37,  3.46it/s, acc_rate=0.73]
MALA:  68%|██████▊   | 272/400 [01:18<00:37,  3.46it/s, acc_rate=0.73]
MALA:  68%|██████▊   | 273/400 [01:18<00:36,  3.44it/s, acc_rate=0.73]
MALA:  68%|██████▊   | 273/400 [01:18<00:36,  3.44it/s, acc_rate=0.73]
MALA:  68%|██████▊   | 274/400 [01:18<00:36,  3.43it/s, acc_rate=0.73]
MALA:  68%|██████▊   | 274/400 [01:18<00:36,  3.43it/s, acc_rate=0.73]
MALA:  69%|██████▉   | 275/400 [01:18<00:36,  3.43it/s, acc_rate=0.73]
MALA:  69%|██████▉   | 275/400 [01:19<00:36,  3.43it/s, acc_rate=0.73]
MALA:  69%|██████▉   | 276/400 [01:19<00:36,  3.43it/s, acc_rate=0.73]
MALA:  69%|██████▉   | 276/400 [01:19<00:36,  3.43it/s, acc_rate=0.73]
MALA:  69%|██████▉   | 277/400 [01:19<00:35,  3.45it/s, acc_rate=0.73]
MALA:  69%|██████▉   | 277/400 [01:19<00:35,  3.45it/s, acc_rate=0.73]
MALA:  70%|██████▉   | 278/400 [01:19<00:35,  3.45it/s, acc_rate=0.73]
MALA:  70%|██████▉   | 278/400 [01:20<00:35,  3.45it/s, acc_rate=0.73]
MALA:  70%|██████▉   | 279/400 [01:20<00:34,  3.46it/s, acc_rate=0.73]
MALA:  70%|██████▉   | 279/400 [01:20<00:34,  3.46it/s, acc_rate=0.73]
MALA:  70%|███████   | 280/400 [01:20<00:34,  3.45it/s, acc_rate=0.73]
MALA:  70%|███████   | 280/400 [01:20<00:34,  3.45it/s, acc_rate=0.73]
MALA:  70%|███████   | 281/400 [01:20<00:34,  3.45it/s, acc_rate=0.73]
MALA:  70%|███████   | 281/400 [01:20<00:34,  3.45it/s, acc_rate=0.73]
MALA:  70%|███████   | 282/400 [01:20<00:34,  3.45it/s, acc_rate=0.73]
MALA:  70%|███████   | 282/400 [01:21<00:34,  3.45it/s, acc_rate=0.73]
MALA:  71%|███████   | 283/400 [01:21<00:33,  3.46it/s, acc_rate=0.73]
MALA:  71%|███████   | 283/400 [01:21<00:33,  3.46it/s, acc_rate=0.73]
MALA:  71%|███████   | 284/400 [01:21<00:33,  3.45it/s, acc_rate=0.73]
MALA:  71%|███████   | 284/400 [01:21<00:33,  3.45it/s, acc_rate=0.73]
MALA:  71%|███████▏  | 285/400 [01:21<00:33,  3.45it/s, acc_rate=0.73]
MALA:  71%|███████▏  | 285/400 [01:22<00:33,  3.45it/s, acc_rate=0.73]
MALA:  72%|███████▏  | 286/400 [01:22<00:33,  3.45it/s, acc_rate=0.73]
MALA:  72%|███████▏  | 286/400 [01:22<00:33,  3.45it/s, acc_rate=0.73]
MALA:  72%|███████▏  | 287/400 [01:22<00:32,  3.45it/s, acc_rate=0.73]
MALA:  72%|███████▏  | 287/400 [01:22<00:32,  3.45it/s, acc_rate=0.73]
MALA:  72%|███████▏  | 288/400 [01:22<00:32,  3.45it/s, acc_rate=0.73]
MALA:  72%|███████▏  | 288/400 [01:22<00:32,  3.45it/s, acc_rate=0.73]
MALA:  72%|███████▏  | 289/400 [01:22<00:31,  3.48it/s, acc_rate=0.73]
MALA:  72%|███████▏  | 289/400 [01:23<00:31,  3.48it/s, acc_rate=0.73]
MALA:  72%|███████▎  | 290/400 [01:23<00:31,  3.50it/s, acc_rate=0.73]
MALA:  72%|███████▎  | 290/400 [01:23<00:31,  3.50it/s, acc_rate=0.73]
MALA:  73%|███████▎  | 291/400 [01:23<00:31,  3.49it/s, acc_rate=0.73]
MALA:  73%|███████▎  | 291/400 [01:23<00:31,  3.49it/s, acc_rate=0.73]
MALA:  73%|███████▎  | 292/400 [01:23<00:31,  3.46it/s, acc_rate=0.73]
MALA:  73%|███████▎  | 292/400 [01:24<00:31,  3.46it/s, acc_rate=0.73]
MALA:  73%|███████▎  | 293/400 [01:24<00:30,  3.47it/s, acc_rate=0.73]
MALA:  73%|███████▎  | 293/400 [01:24<00:30,  3.47it/s, acc_rate=0.73]
MALA:  74%|███████▎  | 294/400 [01:24<00:30,  3.46it/s, acc_rate=0.73]
MALA:  74%|███████▎  | 294/400 [01:24<00:30,  3.46it/s, acc_rate=0.73]
MALA:  74%|███████▍  | 295/400 [01:24<00:30,  3.45it/s, acc_rate=0.73]
MALA:  74%|███████▍  | 295/400 [01:24<00:30,  3.45it/s, acc_rate=0.73]
MALA:  74%|███████▍  | 296/400 [01:24<00:30,  3.46it/s, acc_rate=0.73]
MALA:  74%|███████▍  | 296/400 [01:25<00:30,  3.46it/s, acc_rate=0.73]
MALA:  74%|███████▍  | 297/400 [01:25<00:29,  3.50it/s, acc_rate=0.73]
MALA:  74%|███████▍  | 297/400 [01:25<00:29,  3.50it/s, acc_rate=0.73]
MALA:  74%|███████▍  | 298/400 [01:25<00:29,  3.48it/s, acc_rate=0.73]
MALA:  74%|███████▍  | 298/400 [01:25<00:29,  3.48it/s, acc_rate=0.73]
MALA:  75%|███████▍  | 299/400 [01:25<00:29,  3.46it/s, acc_rate=0.73]
MALA:  75%|███████▍  | 299/400 [01:26<00:29,  3.46it/s, acc_rate=0.72]
MALA:  75%|███████▌  | 300/400 [01:26<00:28,  3.46it/s, acc_rate=0.72]
MALA:  75%|███████▌  | 300/400 [01:26<00:28,  3.46it/s, acc_rate=0.72]
MALA:  75%|███████▌  | 301/400 [01:26<00:28,  3.46it/s, acc_rate=0.72]
MALA:  75%|███████▌  | 301/400 [01:26<00:28,  3.46it/s, acc_rate=0.72]
MALA:  76%|███████▌  | 302/400 [01:26<00:28,  3.47it/s, acc_rate=0.72]
MALA:  76%|███████▌  | 302/400 [01:26<00:28,  3.47it/s, acc_rate=0.72]
MALA:  76%|███████▌  | 303/400 [01:26<00:27,  3.48it/s, acc_rate=0.72]
MALA:  76%|███████▌  | 303/400 [01:27<00:27,  3.48it/s, acc_rate=0.72]
MALA:  76%|███████▌  | 304/400 [01:27<00:27,  3.49it/s, acc_rate=0.72]
MALA:  76%|███████▌  | 304/400 [01:27<00:27,  3.49it/s, acc_rate=0.72]
MALA:  76%|███████▋  | 305/400 [01:27<00:27,  3.49it/s, acc_rate=0.72]
MALA:  76%|███████▋  | 305/400 [01:27<00:27,  3.49it/s, acc_rate=0.72]
MALA:  76%|███████▋  | 306/400 [01:27<00:27,  3.48it/s, acc_rate=0.72]
MALA:  76%|███████▋  | 306/400 [01:28<00:27,  3.48it/s, acc_rate=0.72]
MALA:  77%|███████▋  | 307/400 [01:28<00:26,  3.47it/s, acc_rate=0.72]
MALA:  77%|███████▋  | 307/400 [01:28<00:26,  3.47it/s, acc_rate=0.72]
MALA:  77%|███████▋  | 308/400 [01:28<00:26,  3.46it/s, acc_rate=0.72]
MALA:  77%|███████▋  | 308/400 [01:28<00:26,  3.46it/s, acc_rate=0.72]
MALA:  77%|███████▋  | 309/400 [01:28<00:26,  3.45it/s, acc_rate=0.72]
MALA:  77%|███████▋  | 309/400 [01:28<00:26,  3.45it/s, acc_rate=0.72]
MALA:  78%|███████▊  | 310/400 [01:28<00:25,  3.48it/s, acc_rate=0.72]
MALA:  78%|███████▊  | 310/400 [01:29<00:25,  3.48it/s, acc_rate=0.72]
MALA:  78%|███████▊  | 311/400 [01:29<00:25,  3.46it/s, acc_rate=0.72]
MALA:  78%|███████▊  | 311/400 [01:29<00:25,  3.46it/s, acc_rate=0.72]
MALA:  78%|███████▊  | 312/400 [01:29<00:25,  3.47it/s, acc_rate=0.72]
MALA:  78%|███████▊  | 312/400 [01:29<00:25,  3.47it/s, acc_rate=0.72]
MALA:  78%|███████▊  | 313/400 [01:29<00:25,  3.47it/s, acc_rate=0.72]
MALA:  78%|███████▊  | 313/400 [01:30<00:25,  3.47it/s, acc_rate=0.72]
MALA:  78%|███████▊  | 314/400 [01:30<00:24,  3.48it/s, acc_rate=0.72]
MALA:  78%|███████▊  | 314/400 [01:30<00:24,  3.48it/s, acc_rate=0.72]
MALA:  79%|███████▉  | 315/400 [01:30<00:24,  3.48it/s, acc_rate=0.72]
MALA:  79%|███████▉  | 315/400 [01:30<00:24,  3.48it/s, acc_rate=0.72]
MALA:  79%|███████▉  | 316/400 [01:30<00:24,  3.48it/s, acc_rate=0.72]
MALA:  79%|███████▉  | 316/400 [01:30<00:24,  3.48it/s, acc_rate=0.72]
MALA:  79%|███████▉  | 317/400 [01:30<00:23,  3.47it/s, acc_rate=0.72]
MALA:  79%|███████▉  | 317/400 [01:31<00:23,  3.47it/s, acc_rate=0.72]
MALA:  80%|███████▉  | 318/400 [01:31<00:23,  3.47it/s, acc_rate=0.72]
MALA:  80%|███████▉  | 318/400 [01:31<00:23,  3.47it/s, acc_rate=0.72]
MALA:  80%|███████▉  | 319/400 [01:31<00:23,  3.47it/s, acc_rate=0.72]
MALA:  80%|███████▉  | 319/400 [01:31<00:23,  3.47it/s, acc_rate=0.72]
MALA:  80%|████████  | 320/400 [01:31<00:22,  3.48it/s, acc_rate=0.72]
MALA:  80%|████████  | 320/400 [01:32<00:22,  3.48it/s, acc_rate=0.72]
MALA:  80%|████████  | 321/400 [01:32<00:22,  3.46it/s, acc_rate=0.72]
MALA:  80%|████████  | 321/400 [01:32<00:22,  3.46it/s, acc_rate=0.72]
MALA:  80%|████████  | 322/400 [01:32<00:22,  3.46it/s, acc_rate=0.72]
MALA:  80%|████████  | 322/400 [01:32<00:22,  3.46it/s, acc_rate=0.72]
MALA:  81%|████████  | 323/400 [01:32<00:22,  3.44it/s, acc_rate=0.72]
MALA:  81%|████████  | 323/400 [01:33<00:22,  3.44it/s, acc_rate=0.72]
MALA:  81%|████████  | 324/400 [01:33<00:22,  3.45it/s, acc_rate=0.72]
MALA:  81%|████████  | 324/400 [01:33<00:22,  3.45it/s, acc_rate=0.72]
MALA:  81%|████████▏ | 325/400 [01:33<00:21,  3.45it/s, acc_rate=0.72]
MALA:  81%|████████▏ | 325/400 [01:33<00:21,  3.45it/s, acc_rate=0.72]
MALA:  82%|████████▏ | 326/400 [01:33<00:21,  3.44it/s, acc_rate=0.72]
MALA:  82%|████████▏ | 326/400 [01:33<00:21,  3.44it/s, acc_rate=0.72]
MALA:  82%|████████▏ | 327/400 [01:33<00:21,  3.45it/s, acc_rate=0.72]
MALA:  82%|████████▏ | 327/400 [01:34<00:21,  3.45it/s, acc_rate=0.72]
MALA:  82%|████████▏ | 328/400 [01:34<00:20,  3.45it/s, acc_rate=0.72]
MALA:  82%|████████▏ | 328/400 [01:34<00:20,  3.45it/s, acc_rate=0.72]
MALA:  82%|████████▏ | 329/400 [01:34<00:20,  3.46it/s, acc_rate=0.72]
MALA:  82%|████████▏ | 329/400 [01:34<00:20,  3.46it/s, acc_rate=0.72]
MALA:  82%|████████▎ | 330/400 [01:34<00:20,  3.47it/s, acc_rate=0.72]
MALA:  82%|████████▎ | 330/400 [01:35<00:20,  3.47it/s, acc_rate=0.72]
MALA:  83%|████████▎ | 331/400 [01:35<00:20,  3.45it/s, acc_rate=0.72]
MALA:  83%|████████▎ | 331/400 [01:35<00:20,  3.45it/s, acc_rate=0.72]
MALA:  83%|████████▎ | 332/400 [01:35<00:19,  3.45it/s, acc_rate=0.72]
MALA:  83%|████████▎ | 332/400 [01:35<00:19,  3.45it/s, acc_rate=0.72]
MALA:  83%|████████▎ | 333/400 [01:35<00:19,  3.46it/s, acc_rate=0.72]
MALA:  83%|████████▎ | 333/400 [01:35<00:19,  3.46it/s, acc_rate=0.72]
MALA:  84%|████████▎ | 334/400 [01:35<00:18,  3.49it/s, acc_rate=0.72]
MALA:  84%|████████▎ | 334/400 [01:36<00:18,  3.49it/s, acc_rate=0.72]
MALA:  84%|████████▍ | 335/400 [01:36<00:18,  3.46it/s, acc_rate=0.72]
MALA:  84%|████████▍ | 335/400 [01:36<00:18,  3.46it/s, acc_rate=0.72]
MALA:  84%|████████▍ | 336/400 [01:36<00:18,  3.46it/s, acc_rate=0.72]
MALA:  84%|████████▍ | 336/400 [01:36<00:18,  3.46it/s, acc_rate=0.72]
MALA:  84%|████████▍ | 337/400 [01:36<00:18,  3.44it/s, acc_rate=0.72]
MALA:  84%|████████▍ | 337/400 [01:37<00:18,  3.44it/s, acc_rate=0.72]
MALA:  84%|████████▍ | 338/400 [01:37<00:17,  3.46it/s, acc_rate=0.72]
MALA:  84%|████████▍ | 338/400 [01:37<00:17,  3.46it/s, acc_rate=0.72]
MALA:  85%|████████▍ | 339/400 [01:37<00:17,  3.45it/s, acc_rate=0.72]
MALA:  85%|████████▍ | 339/400 [01:37<00:17,  3.45it/s, acc_rate=0.72]
MALA:  85%|████████▌ | 340/400 [01:37<00:17,  3.47it/s, acc_rate=0.72]
MALA:  85%|████████▌ | 340/400 [01:37<00:17,  3.47it/s, acc_rate=0.72]
MALA:  85%|████████▌ | 341/400 [01:37<00:17,  3.45it/s, acc_rate=0.72]
MALA:  85%|████████▌ | 341/400 [01:38<00:17,  3.45it/s, acc_rate=0.72]
MALA:  86%|████████▌ | 342/400 [01:38<00:16,  3.46it/s, acc_rate=0.72]
MALA:  86%|████████▌ | 342/400 [01:38<00:16,  3.46it/s, acc_rate=0.72]
MALA:  86%|████████▌ | 343/400 [01:38<00:16,  3.46it/s, acc_rate=0.72]
MALA:  86%|████████▌ | 343/400 [01:38<00:16,  3.46it/s, acc_rate=0.72]
MALA:  86%|████████▌ | 344/400 [01:38<00:16,  3.48it/s, acc_rate=0.72]
MALA:  86%|████████▌ | 344/400 [01:39<00:16,  3.48it/s, acc_rate=0.72]
MALA:  86%|████████▋ | 345/400 [01:39<00:15,  3.49it/s, acc_rate=0.72]
MALA:  86%|████████▋ | 345/400 [01:39<00:15,  3.49it/s, acc_rate=0.72]
MALA:  86%|████████▋ | 346/400 [01:39<00:15,  3.48it/s, acc_rate=0.72]
MALA:  86%|████████▋ | 346/400 [01:39<00:15,  3.48it/s, acc_rate=0.72]
MALA:  87%|████████▋ | 347/400 [01:39<00:15,  3.47it/s, acc_rate=0.72]
MALA:  87%|████████▋ | 347/400 [01:39<00:15,  3.47it/s, acc_rate=0.72]
MALA:  87%|████████▋ | 348/400 [01:39<00:14,  3.49it/s, acc_rate=0.72]
MALA:  87%|████████▋ | 348/400 [01:40<00:14,  3.49it/s, acc_rate=0.72]
MALA:  87%|████████▋ | 349/400 [01:40<00:14,  3.47it/s, acc_rate=0.72]
MALA:  87%|████████▋ | 349/400 [01:40<00:14,  3.47it/s, acc_rate=0.72]
MALA:  88%|████████▊ | 350/400 [01:40<00:14,  3.46it/s, acc_rate=0.72]
MALA:  88%|████████▊ | 350/400 [01:40<00:14,  3.46it/s, acc_rate=0.71]
MALA:  88%|████████▊ | 351/400 [01:40<00:14,  3.46it/s, acc_rate=0.71]
MALA:  88%|████████▊ | 351/400 [01:41<00:14,  3.46it/s, acc_rate=0.71]
MALA:  88%|████████▊ | 352/400 [01:41<00:13,  3.49it/s, acc_rate=0.71]
MALA:  88%|████████▊ | 352/400 [01:41<00:13,  3.49it/s, acc_rate=0.71]
MALA:  88%|████████▊ | 353/400 [01:41<00:13,  3.46it/s, acc_rate=0.71]
MALA:  88%|████████▊ | 353/400 [01:41<00:13,  3.46it/s, acc_rate=0.71]
MALA:  88%|████████▊ | 354/400 [01:41<00:13,  3.46it/s, acc_rate=0.71]
MALA:  88%|████████▊ | 354/400 [01:41<00:13,  3.46it/s, acc_rate=0.71]
MALA:  89%|████████▉ | 355/400 [01:41<00:12,  3.46it/s, acc_rate=0.71]
MALA:  89%|████████▉ | 355/400 [01:42<00:12,  3.46it/s, acc_rate=0.71]
MALA:  89%|████████▉ | 356/400 [01:42<00:12,  3.46it/s, acc_rate=0.71]
MALA:  89%|████████▉ | 356/400 [01:42<00:12,  3.46it/s, acc_rate=0.71]
MALA:  89%|████████▉ | 357/400 [01:42<00:12,  3.45it/s, acc_rate=0.71]
MALA:  89%|████████▉ | 357/400 [01:42<00:12,  3.45it/s, acc_rate=0.71]
MALA:  90%|████████▉ | 358/400 [01:42<00:12,  3.46it/s, acc_rate=0.71]
MALA:  90%|████████▉ | 358/400 [01:43<00:12,  3.46it/s, acc_rate=0.71]
MALA:  90%|████████▉ | 359/400 [01:43<00:11,  3.50it/s, acc_rate=0.71]
MALA:  90%|████████▉ | 359/400 [01:43<00:11,  3.50it/s, acc_rate=0.71]
MALA:  90%|█████████ | 360/400 [01:43<00:11,  3.48it/s, acc_rate=0.71]
MALA:  90%|█████████ | 360/400 [01:43<00:11,  3.48it/s, acc_rate=0.71]
MALA:  90%|█████████ | 361/400 [01:43<00:11,  3.47it/s, acc_rate=0.71]
MALA:  90%|█████████ | 361/400 [01:43<00:11,  3.47it/s, acc_rate=0.71]
MALA:  90%|█████████ | 362/400 [01:43<00:11,  3.44it/s, acc_rate=0.71]
MALA:  90%|█████████ | 362/400 [01:44<00:11,  3.44it/s, acc_rate=0.71]
MALA:  91%|█████████ | 363/400 [01:44<00:10,  3.44it/s, acc_rate=0.71]
MALA:  91%|█████████ | 363/400 [01:44<00:10,  3.44it/s, acc_rate=0.71]
MALA:  91%|█████████ | 364/400 [01:44<00:10,  3.44it/s, acc_rate=0.71]
MALA:  91%|█████████ | 364/400 [01:44<00:10,  3.44it/s, acc_rate=0.71]
MALA:  91%|█████████▏| 365/400 [01:44<00:10,  3.43it/s, acc_rate=0.71]
MALA:  91%|█████████▏| 365/400 [01:45<00:10,  3.43it/s, acc_rate=0.71]
MALA:  92%|█████████▏| 366/400 [01:45<00:09,  3.49it/s, acc_rate=0.71]
MALA:  92%|█████████▏| 366/400 [01:45<00:09,  3.49it/s, acc_rate=0.71]
MALA:  92%|█████████▏| 367/400 [01:45<00:09,  3.48it/s, acc_rate=0.71]
MALA:  92%|█████████▏| 367/400 [01:45<00:09,  3.48it/s, acc_rate=0.71]
MALA:  92%|█████████▏| 368/400 [01:45<00:09,  3.49it/s, acc_rate=0.71]
MALA:  92%|█████████▏| 368/400 [01:45<00:09,  3.49it/s, acc_rate=0.71]
MALA:  92%|█████████▏| 369/400 [01:45<00:08,  3.50it/s, acc_rate=0.71]
MALA:  92%|█████████▏| 369/400 [01:46<00:08,  3.50it/s, acc_rate=0.71]
MALA:  92%|█████████▎| 370/400 [01:46<00:08,  3.49it/s, acc_rate=0.71]
MALA:  92%|█████████▎| 370/400 [01:46<00:08,  3.49it/s, acc_rate=0.71]
MALA:  93%|█████████▎| 371/400 [01:46<00:08,  3.46it/s, acc_rate=0.71]
MALA:  93%|█████████▎| 371/400 [01:46<00:08,  3.46it/s, acc_rate=0.71]
MALA:  93%|█████████▎| 372/400 [01:46<00:08,  3.45it/s, acc_rate=0.71]
MALA:  93%|█████████▎| 372/400 [01:47<00:08,  3.45it/s, acc_rate=0.71]
MALA:  93%|█████████▎| 373/400 [01:47<00:07,  3.49it/s, acc_rate=0.71]
MALA:  93%|█████████▎| 373/400 [01:47<00:07,  3.49it/s, acc_rate=0.71]
MALA:  94%|█████████▎| 374/400 [01:47<00:07,  3.47it/s, acc_rate=0.71]
MALA:  94%|█████████▎| 374/400 [01:47<00:07,  3.47it/s, acc_rate=0.71]
MALA:  94%|█████████▍| 375/400 [01:47<00:07,  3.47it/s, acc_rate=0.71]
MALA:  94%|█████████▍| 375/400 [01:48<00:07,  3.47it/s, acc_rate=0.71]
MALA:  94%|█████████▍| 376/400 [01:48<00:06,  3.47it/s, acc_rate=0.71]
MALA:  94%|█████████▍| 376/400 [01:48<00:06,  3.47it/s, acc_rate=0.71]
MALA:  94%|█████████▍| 377/400 [01:48<00:06,  3.47it/s, acc_rate=0.71]
MALA:  94%|█████████▍| 377/400 [01:48<00:06,  3.47it/s, acc_rate=0.71]
MALA:  94%|█████████▍| 378/400 [01:48<00:06,  3.46it/s, acc_rate=0.71]
MALA:  94%|█████████▍| 378/400 [01:48<00:06,  3.46it/s, acc_rate=0.71]
MALA:  95%|█████████▍| 379/400 [01:48<00:06,  3.50it/s, acc_rate=0.71]
MALA:  95%|█████████▍| 379/400 [01:49<00:06,  3.50it/s, acc_rate=0.71]
MALA:  95%|█████████▌| 380/400 [01:49<00:05,  3.48it/s, acc_rate=0.71]
MALA:  95%|█████████▌| 380/400 [01:49<00:05,  3.48it/s, acc_rate=0.71]
MALA:  95%|█████████▌| 381/400 [01:49<00:05,  3.47it/s, acc_rate=0.71]
MALA:  95%|█████████▌| 381/400 [01:49<00:05,  3.47it/s, acc_rate=0.71]
MALA:  96%|█████████▌| 382/400 [01:49<00:05,  3.48it/s, acc_rate=0.71]
MALA:  96%|█████████▌| 382/400 [01:50<00:05,  3.48it/s, acc_rate=0.71]
MALA:  96%|█████████▌| 383/400 [01:50<00:04,  3.47it/s, acc_rate=0.71]
MALA:  96%|█████████▌| 383/400 [01:50<00:04,  3.47it/s, acc_rate=0.71]
MALA:  96%|█████████▌| 384/400 [01:50<00:04,  3.45it/s, acc_rate=0.71]
MALA:  96%|█████████▌| 384/400 [01:50<00:04,  3.45it/s, acc_rate=0.71]
MALA:  96%|█████████▋| 385/400 [01:50<00:04,  3.44it/s, acc_rate=0.71]
MALA:  96%|█████████▋| 385/400 [01:50<00:04,  3.44it/s, acc_rate=0.71]
MALA:  96%|█████████▋| 386/400 [01:50<00:04,  3.43it/s, acc_rate=0.71]
MALA:  96%|█████████▋| 386/400 [01:51<00:04,  3.43it/s, acc_rate=0.71]
MALA:  97%|█████████▋| 387/400 [01:51<00:03,  3.43it/s, acc_rate=0.71]
MALA:  97%|█████████▋| 387/400 [01:51<00:03,  3.43it/s, acc_rate=0.71]
MALA:  97%|█████████▋| 388/400 [01:51<00:03,  3.43it/s, acc_rate=0.71]
MALA:  97%|█████████▋| 388/400 [01:51<00:03,  3.43it/s, acc_rate=0.71]
MALA:  97%|█████████▋| 389/400 [01:51<00:03,  3.42it/s, acc_rate=0.71]
MALA:  97%|█████████▋| 389/400 [01:52<00:03,  3.42it/s, acc_rate=0.71]
MALA:  98%|█████████▊| 390/400 [01:52<00:02,  3.40it/s, acc_rate=0.71]
MALA:  98%|█████████▊| 390/400 [01:52<00:02,  3.40it/s, acc_rate=0.71]
MALA:  98%|█████████▊| 391/400 [01:52<00:02,  3.40it/s, acc_rate=0.71]
MALA:  98%|█████████▊| 391/400 [01:52<00:02,  3.40it/s, acc_rate=0.71]
MALA:  98%|█████████▊| 392/400 [01:52<00:02,  3.39it/s, acc_rate=0.71]
MALA:  98%|█████████▊| 392/400 [01:52<00:02,  3.39it/s, acc_rate=0.71]
MALA:  98%|█████████▊| 393/400 [01:52<00:02,  3.39it/s, acc_rate=0.71]
MALA:  98%|█████████▊| 393/400 [01:53<00:02,  3.39it/s, acc_rate=0.71]
MALA:  98%|█████████▊| 394/400 [01:53<00:01,  3.37it/s, acc_rate=0.71]
MALA:  98%|█████████▊| 394/400 [01:53<00:01,  3.37it/s, acc_rate=0.71]
MALA:  99%|█████████▉| 395/400 [01:53<00:01,  3.36it/s, acc_rate=0.71]
MALA:  99%|█████████▉| 395/400 [01:53<00:01,  3.36it/s, acc_rate=0.71]
MALA:  99%|█████████▉| 396/400 [01:53<00:01,  3.38it/s, acc_rate=0.71]
MALA:  99%|█████████▉| 396/400 [01:54<00:01,  3.38it/s, acc_rate=0.71]
MALA:  99%|█████████▉| 397/400 [01:54<00:00,  3.40it/s, acc_rate=0.71]
MALA:  99%|█████████▉| 397/400 [01:54<00:00,  3.40it/s, acc_rate=0.71]
MALA: 100%|█████████▉| 398/400 [01:54<00:00,  3.42it/s, acc_rate=0.71]
MALA: 100%|█████████▉| 398/400 [01:54<00:00,  3.42it/s, acc_rate=0.70]
MALA: 100%|█████████▉| 399/400 [01:54<00:00,  3.42it/s, acc_rate=0.70]
MALA: 100%|█████████▉| 399/400 [01:55<00:00,  3.42it/s, acc_rate=0.70]
MALA: 100%|██████████| 400/400 [01:55<00:00,  3.49it/s, acc_rate=0.70]
MALA: 100%|██████████| 400/400 [01:55<00:00,  3.48it/s, acc_rate=0.70]

Now lets plot the likelihood distributions for the flux parameters compared to their true value. As you can see, the distributions do a good job of covering the ground truth! This means we have accurately extracted the light curve for the supernova data.

Hide code cell source

figure = corner(
    chain.reshape(-1, chain.shape[-1])[:, 7:17],
    labels=list(f"flux at epoch {i}" for i in range(10)),
    truths=params_true[7:17],
)
figure.suptitle("Likelihood distributions for supernova fluxes at each epoch", fontsize=20)
plt.show()
../_images/b18a7ebb618a92b7c22569558fb39ce8875f01e9561ca325492171db5fe2d8b3.png

Below we show the likelihood distribution for the sersic host parameters. We can see that there is some non-linearity and certainly lots of correlation in these parameters. This makes the sampling a bit trickier, but MALA is up to the task.

Hide code cell source

figure = corner(
    chain.reshape(-1, chain.shape[-1])[:, :5],
    labels=["sersic_q", "sersic_PA", "sersic_n", "sersic_Re", "sersic_Ie"],
    truths=params_true[:5],
)
figure.suptitle("Likelihood distributions for host parameters", fontsize=20)
plt.show()
../_images/644955f7ec3b58f993640edddc4aed6d218fca0ea9e49bdc7d24aa9f151c0a60.png