ANN Model creation and testing

Contents

  1. Training data generation

  2. ANN model training and testing

  3. Implementation of the model in GWSNR

[1]:
# # If you have not installed the following packages, please uncomment and run the following command:
# !pip install ler

1. Training data generation

  • The training data is generated using ler package.

  • Data needs to be trained for each detector separately.

  • I will choose ‘L1’ detector for this notebook with the following specified parameters:

    • Sampling frequency : 2048 Hz

    • waveform approximant : IMRPhenomXPHM

    • minimum frequency : 20.0

    • psd : aLIGO_O4_high_asd.txt from pycbc package

[1]:
import numpy as np
import matplotlib.pyplot as plt
from ler.utils import TrainingDataGenerator
[2]:
tdg = TrainingDataGenerator(
    npool=6,  # number of processes
    verbose=False, # set it to True if you are running the code for the first time
    # GWSNR parameters
    sampling_frequency=2048.,
    waveform_approximant='IMRPhenomXPHM',  # spin-precessing waveform model
    minimum_frequency=20.,
    psds={'L1':'aLIGO_O4_high_asd.txt'}, # chosen interferometer is 'L1'. If multiple interferometers are chosen, optimal network SNR will be considered.
    spin_zero=False,
    spin_precessing=True,
    snr_method='inner_product',  # 'interpolation' or 'inner_product'
)
  • ler package, by default, generates astrophysical signals that most likely will not be detected by the detector, i.e. low SNR signals.

  • But you want your ANN model to be sensitive to the signals that near the detection threshold.

  • So, I will generate most of the training data with SNR near the detection threshold.

Note: Increase sample size of the training data to get better accuracy in the ANN model.

[5]:
# rerun if hanged
ler = tdg.gw_parameters_generator(
    size=100000,  # number of samples to generate
    batch_size=400000,  # reduce this number if you have memory issues
    snr_recalculation=True,  # pick SNR generated with 'interpolation'; recalculate SNR using 'inner product'
    trim_to_size=False, verbose=True,
    data_distribution_range = [0., 4., 6., 8., 10., 12., 14., 16., 100.],  # equal data samples will be distributed in these ranges
    replace=False,  # set to True if you want to replace the existing data
    output_jsonfile="IMRPhenomXPHM_O4_high_asd_L1_1.json",
)

Initializing GWSNR class...

Intel processor has trouble allocating memory when the data is huge. So, by default for IMRPhenomXPHM, duration_max = 64.0. Otherwise, set to some max value like duration_max = 600.0 (10 mins)

Chosen GWSNR initialization parameters:

npool:  6
snr type:  inner_product
waveform approximant:  IMRPhenomXPHM
sampling frequency:  2048.0
minimum frequency (fmin):  20.0
reference frequency (f_ref):  20.0
mtot=mass1+mass2
min(mtot):  9.96
max(mtot) (with the given fmin=20.0): 235.0
detectors:  ['L1']
psds:  [[array([  10.21659,   10.23975,   10.26296, ..., 4972.81   ,
       4984.081  , 4995.378  ], shape=(2736,)), array([4.43925574e-41, 4.22777986e-41, 4.02102594e-41, ...,
       6.51153524e-46, 6.43165104e-46, 6.55252996e-46],
      shape=(2736,)), <scipy.interpolate._interpolate.interp1d object at 0x178821300>]]


total event to collect: 100000

100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 179.73it/s]
Collected number of events: 248
100%|████████████████████████████████████████████████████████████| 272/272 [00:01<00:00, 193.84it/s]
Collected number of events: 456
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 240.41it/s]
Collected number of events: 752
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 243.17it/s]
Collected number of events: 1008
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 217.01it/s]
Collected number of events: 1208
100%|████████████████████████████████████████████████████████████| 416/416 [00:01<00:00, 276.17it/s]
Collected number of events: 1560
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 216.88it/s]
Collected number of events: 1816
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 212.72it/s]
Collected number of events: 2072
100%|████████████████████████████████████████████████████████████| 424/424 [00:01<00:00, 279.92it/s]
Collected number of events: 2392
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 223.64it/s]
Collected number of events: 2608
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 271.18it/s]
Collected number of events: 2952
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 230.49it/s]
Collected number of events: 3200
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 225.43it/s]
Collected number of events: 3440
100%|████████████████████████████████████████████████████████████| 256/256 [00:01<00:00, 186.45it/s]
Collected number of events: 3640
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 254.42it/s]
Collected number of events: 3952
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 270.12it/s]
Collected number of events: 4272
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 224.58it/s]
Collected number of events: 4536
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 263.56it/s]
Collected number of events: 4824
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 259.14it/s]
Collected number of events: 5128
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 265.12it/s]
Collected number of events: 5440
100%|████████████████████████████████████████████████████████████| 416/416 [00:01<00:00, 283.26it/s]
Collected number of events: 5784
100%|████████████████████████████████████████████████████████████| 264/264 [00:01<00:00, 199.99it/s]
Collected number of events: 6000
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 227.76it/s]
Collected number of events: 6248
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 256.40it/s]
Collected number of events: 6536
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 218.63it/s]
Collected number of events: 6792
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 256.52it/s]
Collected number of events: 7104
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 225.32it/s]
Collected number of events: 7344
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 244.72it/s]
Collected number of events: 7624
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 172.90it/s]
Collected number of events: 7864
100%|████████████████████████████████████████████████████████████| 448/448 [00:01<00:00, 289.87it/s]
Collected number of events: 8256
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 258.18it/s]
Collected number of events: 8536
100%|████████████████████████████████████████████████████████████| 256/256 [00:01<00:00, 198.67it/s]
Collected number of events: 8720
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 231.34it/s]
Collected number of events: 8976
100%|████████████████████████████████████████████████████████████| 272/272 [00:01<00:00, 208.66it/s]
Collected number of events: 9216
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 184.16it/s]
Collected number of events: 9480
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 218.93it/s]
Collected number of events: 9744
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 263.31it/s]
Collected number of events: 10080
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 263.35it/s]
Collected number of events: 10368
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 268.31it/s]
Collected number of events: 10648
100%|████████████████████████████████████████████████████████████| 480/480 [00:01<00:00, 305.86it/s]
Collected number of events: 11064
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 254.83it/s]
Collected number of events: 11368
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 221.21it/s]
Collected number of events: 11576
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 237.51it/s]
Collected number of events: 11848
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 243.69it/s]
Collected number of events: 12176
100%|████████████████████████████████████████████████████████████| 440/440 [00:01<00:00, 281.26it/s]
Collected number of events: 12560
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 250.31it/s]
Collected number of events: 12832
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 244.42it/s]
Collected number of events: 13096
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 265.69it/s]
Collected number of events: 13368
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 221.49it/s]
Collected number of events: 13640
100%|████████████████████████████████████████████████████████████| 408/408 [00:01<00:00, 273.48it/s]
Collected number of events: 13976
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 243.25it/s]
Collected number of events: 14272
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 274.96it/s]
Collected number of events: 14592
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 229.41it/s]
Collected number of events: 14848
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 248.21it/s]
Collected number of events: 15136
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 239.68it/s]
Collected number of events: 15440
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 259.15it/s]
Collected number of events: 15696
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 225.67it/s]
Collected number of events: 15952
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 266.53it/s]
Collected number of events: 16312
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 231.57it/s]
Collected number of events: 16544
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 265.69it/s]
Collected number of events: 16856
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 223.33it/s]
Collected number of events: 17072
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 274.77it/s]
Collected number of events: 17416
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 254.24it/s]
Collected number of events: 17752
100%|████████████████████████████████████████████████████████████| 424/424 [00:01<00:00, 284.79it/s]
Collected number of events: 18056
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 261.03it/s]
Collected number of events: 18352
100%|████████████████████████████████████████████████████████████| 256/256 [00:01<00:00, 193.80it/s]
Collected number of events: 18560
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 257.97it/s]
Collected number of events: 18880
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 257.94it/s]
Collected number of events: 19224
100%|████████████████████████████████████████████████████████████| 440/440 [00:01<00:00, 292.21it/s]
Collected number of events: 19584
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 262.30it/s]
Collected number of events: 19904
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 240.47it/s]
Collected number of events: 20152
100%|████████████████████████████████████████████████████████████| 464/464 [00:01<00:00, 297.01it/s]
Collected number of events: 20528
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 222.38it/s]
Collected number of events: 20784
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 250.28it/s]
Collected number of events: 21096
100%|████████████████████████████████████████████████████████████| 464/464 [00:01<00:00, 295.82it/s]
Collected number of events: 21440
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 247.52it/s]
Collected number of events: 21696
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 226.03it/s]
Collected number of events: 21976
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 263.51it/s]
Collected number of events: 22304
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 249.20it/s]
Collected number of events: 22600
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 237.01it/s]
Collected number of events: 22880
100%|████████████████████████████████████████████████████████████| 448/448 [00:01<00:00, 298.07it/s]
Collected number of events: 23232
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 252.87it/s]
Collected number of events: 23488
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 232.37it/s]
Collected number of events: 23776
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 218.91it/s]
Collected number of events: 23992
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 256.94it/s]
Collected number of events: 24312
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 254.52it/s]
Collected number of events: 24584
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 222.50it/s]
Collected number of events: 24808
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 223.83it/s]
Collected number of events: 25016
100%|████████████████████████████████████████████████████████████| 432/432 [00:01<00:00, 276.40it/s]
Collected number of events: 25352
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 216.52it/s]
Collected number of events: 25616
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 246.62it/s]
Collected number of events: 25920
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 229.69it/s]
Collected number of events: 26160
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 251.47it/s]
Collected number of events: 26496
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 266.18it/s]
Collected number of events: 26824
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 240.01it/s]
Collected number of events: 27072
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 251.32it/s]
Collected number of events: 27360
100%|████████████████████████████████████████████████████████████| 464/464 [00:01<00:00, 294.92it/s]
Collected number of events: 27728
100%|████████████████████████████████████████████████████████████| 272/272 [00:01<00:00, 196.96it/s]
Collected number of events: 27960
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 251.75it/s]
Collected number of events: 28248
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 247.83it/s]
Collected number of events: 28520
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 239.51it/s]
Collected number of events: 28832
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 259.25it/s]
Collected number of events: 29112
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 256.73it/s]
Collected number of events: 29416
100%|████████████████████████████████████████████████████████████| 416/416 [00:01<00:00, 278.92it/s]
Collected number of events: 29768
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 237.42it/s]
Collected number of events: 30056
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 216.22it/s]
Collected number of events: 30320
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 207.59it/s]
Collected number of events: 30568
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 225.56it/s]
Collected number of events: 30800
100%|████████████████████████████████████████████████████████████| 416/416 [00:01<00:00, 277.24it/s]
Collected number of events: 31120
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 264.18it/s]
Collected number of events: 31408
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 261.13it/s]
Collected number of events: 31744
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 212.60it/s]
Collected number of events: 32000
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 247.23it/s]
Collected number of events: 32264
100%|████████████████████████████████████████████████████████████| 408/408 [00:01<00:00, 273.58it/s]
Collected number of events: 32648
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 205.70it/s]
Collected number of events: 32872
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 245.65it/s]
Collected number of events: 33216
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 239.07it/s]
Collected number of events: 33520
100%|████████████████████████████████████████████████████████████| 424/424 [00:01<00:00, 282.73it/s]
Collected number of events: 33816
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 236.22it/s]
Collected number of events: 34104
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 215.44it/s]
Collected number of events: 34344
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 255.38it/s]
Collected number of events: 34624
100%|████████████████████████████████████████████████████████████| 416/416 [00:01<00:00, 276.22it/s]
Collected number of events: 34984
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 236.93it/s]
Collected number of events: 35264
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 222.19it/s]
Collected number of events: 35528
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 226.37it/s]
Collected number of events: 35792
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 239.15it/s]
Collected number of events: 36104
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 234.94it/s]
Collected number of events: 36368
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 267.82it/s]
Collected number of events: 36680
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 219.30it/s]
Collected number of events: 36936
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 239.65it/s]
Collected number of events: 37224
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 268.59it/s]
Collected number of events: 37576
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 225.08it/s]
Collected number of events: 37824
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 235.45it/s]
Collected number of events: 38096
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 212.03it/s]
Collected number of events: 38336
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 263.43it/s]
Collected number of events: 38640
100%|████████████████████████████████████████████████████████████| 408/408 [00:01<00:00, 277.71it/s]
Collected number of events: 38944
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 240.54it/s]
Collected number of events: 39232
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 213.17it/s]
Collected number of events: 39472
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 268.38it/s]
Collected number of events: 39752
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 259.12it/s]
Collected number of events: 40064
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 263.25it/s]
Collected number of events: 40376
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 215.21it/s]
Collected number of events: 40600
100%|████████████████████████████████████████████████████████████| 496/496 [00:01<00:00, 306.83it/s]
Collected number of events: 40976
100%|████████████████████████████████████████████████████████████| 232/232 [00:01<00:00, 176.12it/s]
Collected number of events: 41152
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 237.20it/s]
Collected number of events: 41416
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 246.67it/s]
Collected number of events: 41696
100%|████████████████████████████████████████████████████████████| 440/440 [00:01<00:00, 284.64it/s]
Collected number of events: 42056
100%|████████████████████████████████████████████████████████████| 224/224 [00:01<00:00, 174.86it/s]
Collected number of events: 42256
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 242.49it/s]
Collected number of events: 42552
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 212.41it/s]
Collected number of events: 42816
100%|████████████████████████████████████████████████████████████| 424/424 [00:01<00:00, 286.81it/s]
Collected number of events: 43184
 68%|████████████████████████████████████████▋                   | 239/352 [00:01<00:00, 322.36it/s](fCut = 19.3327 Hz) <= f_min = 20
f_max <= f_min
XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): (fCut = 19.3327 Hz) <= f_min = 20

XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): Input domain error
XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): IMRPhenomXPHM_hplushcross failed to generate IMRPhenomXHM waveform.

XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): Internal function call failed: Input domain error
XLAL Error - XLALSimInspiralChooseFDWaveform_legacy (LALSimInspiralGeneratorLegacy.c:2577): Internal function call failed: Input domain error
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 246.35it/s]
[gwsnr] Waveform generation failed (likely fCut <= f_min for high-mass systems). Returning SNR=0 for those samples. If this happens often, try again with input argument: mtot_cut=True (and/or lower mtot_max).
Collected number of events: 43432
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 229.31it/s]
Collected number of events: 43752
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 258.52it/s]
Collected number of events: 44072
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 216.44it/s]
Collected number of events: 44304
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 225.50it/s]
Collected number of events: 44552
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 232.55it/s]
Collected number of events: 44816
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 240.91it/s]
Collected number of events: 45096
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 222.88it/s]
Collected number of events: 45312
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 217.51it/s]
Collected number of events: 45576
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 254.27it/s]
Collected number of events: 45888
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 264.97it/s]
Collected number of events: 46232
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 237.11it/s]
Collected number of events: 46536
100%|████████████████████████████████████████████████████████████| 440/440 [00:01<00:00, 288.26it/s]
Collected number of events: 46912
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 266.57it/s]
Collected number of events: 47232
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 212.79it/s]
Collected number of events: 47480
100%|████████████████████████████████████████████████████████████| 248/248 [00:01<00:00, 188.31it/s]
Collected number of events: 47672
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 254.11it/s]
Collected number of events: 47984
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 238.43it/s]
Collected number of events: 48256
100%|████████████████████████████████████████████████████████████| 264/264 [00:01<00:00, 197.59it/s]
Collected number of events: 48464
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 208.76it/s]
Collected number of events: 48680
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 242.19it/s]
Collected number of events: 48984
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 212.48it/s]
Collected number of events: 49192
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 235.28it/s]
Collected number of events: 49480
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 222.74it/s]
Collected number of events: 49688
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 240.62it/s]
Collected number of events: 49936
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 246.88it/s]
Collected number of events: 50200
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 216.89it/s]
Collected number of events: 50416
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 252.39it/s]
Collected number of events: 50720
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 242.21it/s]
Collected number of events: 50944
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 268.54it/s]
Collected number of events: 51288
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 246.55it/s]
Collected number of events: 51616
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 266.75it/s]
Collected number of events: 51880
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 233.90it/s]
Collected number of events: 52184
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 246.02it/s]
Collected number of events: 52472
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 232.10it/s]
Collected number of events: 52744
100%|████████████████████████████████████████████████████████████| 424/424 [00:01<00:00, 274.92it/s]
Collected number of events: 53096
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 229.78it/s]
Collected number of events: 53352
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 258.13it/s]
Collected number of events: 53664
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 243.12it/s]
Collected number of events: 53936
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 240.13it/s]
Collected number of events: 54248
100%|████████████████████████████████████████████████████████████| 280/280 [00:01<00:00, 202.08it/s]
Collected number of events: 54480
100%|████████████████████████████████████████████████████████████| 456/456 [00:01<00:00, 297.28it/s]
Collected number of events: 54872
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 243.56it/s]
Collected number of events: 55144
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 251.39it/s]
Collected number of events: 55448
100%|████████████████████████████████████████████████████████████| 408/408 [00:01<00:00, 267.70it/s]
Collected number of events: 55768
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 239.83it/s]
Collected number of events: 56056
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 253.64it/s]
Collected number of events: 56344
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 229.06it/s]
Collected number of events: 56616
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 234.55it/s]
Collected number of events: 56856
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 267.90it/s]
Collected number of events: 57224
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 263.97it/s]
Collected number of events: 57528
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 263.66it/s]
Collected number of events: 57856
100%|████████████████████████████████████████████████████████████| 280/280 [00:01<00:00, 204.35it/s]
Collected number of events: 58104
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 229.82it/s]
Collected number of events: 58392
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 233.78it/s]
Collected number of events: 58640
 66%|███████████████████████████████████████▊                    | 207/312 [00:01<00:00, 299.92it/s](fCut = 18.9902 Hz) <= f_min = 20
f_max <= f_min
XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): (fCut = 18.9902 Hz) <= f_min = 20

XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): Input domain error
XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): IMRPhenomXPHM_hplushcross failed to generate IMRPhenomXHM waveform.

XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): Internal function call failed: Input domain error
XLAL Error - XLALSimInspiralChooseFDWaveform_legacy (LALSimInspiralGeneratorLegacy.c:2577): Internal function call failed: Input domain error
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 230.57it/s]
[gwsnr] Waveform generation failed (likely fCut <= f_min for high-mass systems). Returning SNR=0 for those samples. If this happens often, try again with input argument: mtot_cut=True (and/or lower mtot_max).
Collected number of events: 58904
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 228.98it/s]
Collected number of events: 59160
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 224.54it/s]
Collected number of events: 59424
 77%|██████████████████████████████████████████████▏             | 302/392 [00:01<00:00, 423.26it/s](fCut = 19.2553 Hz) <= f_min = 20
f_max <= f_min
XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): (fCut = 19.2553 Hz) <= f_min = 20

XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): Input domain error
XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): IMRPhenomXPHM_hplushcross failed to generate IMRPhenomXHM waveform.

XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): Internal function call failed: Input domain error
XLAL Error - XLALSimInspiralChooseFDWaveform_legacy (LALSimInspiralGeneratorLegacy.c:2577): Internal function call failed: Input domain error
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 265.17it/s]
[gwsnr] Waveform generation failed (likely fCut <= f_min for high-mass systems). Returning SNR=0 for those samples. If this happens often, try again with input argument: mtot_cut=True (and/or lower mtot_max).
Collected number of events: 59704
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 262.02it/s]
Collected number of events: 60032
100%|████████████████████████████████████████████████████████████| 256/256 [00:01<00:00, 190.05it/s]
Collected number of events: 60232
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 227.66it/s]
Collected number of events: 60480
100%|████████████████████████████████████████████████████████████| 256/256 [00:01<00:00, 190.17it/s]
Collected number of events: 60696
100%|████████████████████████████████████████████████████████████| 424/424 [00:01<00:00, 279.21it/s]
Collected number of events: 61064
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 249.68it/s]
Collected number of events: 61360
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 238.26it/s]
Collected number of events: 61608
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 214.65it/s]
Collected number of events: 61856
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 213.42it/s]
Collected number of events: 62056
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 258.93it/s]
Collected number of events: 62416
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 247.63it/s]
Collected number of events: 62672
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 227.27it/s]
Collected number of events: 62952
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 209.30it/s]
Collected number of events: 63152
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 248.21it/s]
Collected number of events: 63440
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 232.17it/s]
Collected number of events: 63680
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 238.59it/s]
Collected number of events: 63968
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 245.02it/s]
Collected number of events: 64240
100%|████████████████████████████████████████████████████████████| 280/280 [00:02<00:00, 132.38it/s]
Collected number of events: 64488
100%|████████████████████████████████████████████████████████████| 432/432 [00:01<00:00, 242.53it/s]
Collected number of events: 64840
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 224.11it/s]
Collected number of events: 65088
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 266.73it/s]
Collected number of events: 65416
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 248.74it/s]
Collected number of events: 65704
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 261.26it/s]
Collected number of events: 66008
100%|████████████████████████████████████████████████████████████| 240/240 [00:01<00:00, 184.23it/s]
Collected number of events: 66208
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 223.06it/s]
Collected number of events: 66456
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 230.30it/s]
Collected number of events: 66736
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 239.99it/s]
Collected number of events: 67000
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 260.27it/s]
Collected number of events: 67296
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 268.80it/s]
Collected number of events: 67568
100%|████████████████████████████████████████████████████████████| 408/408 [00:01<00:00, 276.57it/s]
Collected number of events: 67872
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 250.69it/s]
Collected number of events: 68144
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 243.92it/s]
Collected number of events: 68424
100%|████████████████████████████████████████████████████████████| 440/440 [00:01<00:00, 284.54it/s]
Collected number of events: 68808
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 211.46it/s]
Collected number of events: 69056
100%|████████████████████████████████████████████████████████████| 424/424 [00:01<00:00, 284.02it/s]
Collected number of events: 69392
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 252.95it/s]
Collected number of events: 69712
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 248.19it/s]
Collected number of events: 69960
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 240.38it/s]
Collected number of events: 70248
100%|████████████████████████████████████████████████████████████| 432/432 [00:01<00:00, 284.97it/s]
Collected number of events: 70592
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 230.26it/s]
Collected number of events: 70848
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 241.02it/s]
Collected number of events: 71160
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 268.41it/s]
Collected number of events: 71504
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 253.55it/s]
Collected number of events: 71808
100%|████████████████████████████████████████████████████████████| 272/272 [00:01<00:00, 202.64it/s]
Collected number of events: 72040
100%|████████████████████████████████████████████████████████████| 440/440 [00:01<00:00, 289.79it/s]
Collected number of events: 72408
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 246.68it/s]
Collected number of events: 72696
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 223.48it/s]
Collected number of events: 72912
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 237.47it/s]
Collected number of events: 73168
100%|████████████████████████████████████████████████████████████| 416/416 [00:01<00:00, 283.00it/s]
Collected number of events: 73504
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 263.89it/s]
Collected number of events: 73840
100%|████████████████████████████████████████████████████████████| 440/440 [00:01<00:00, 297.73it/s]
Collected number of events: 74200
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 213.46it/s]
Collected number of events: 74448
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 218.59it/s]
Collected number of events: 74696
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 249.76it/s]
Collected number of events: 74968
100%|████████████████████████████████████████████████████████████| 464/464 [00:01<00:00, 305.88it/s]
Collected number of events: 75352
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 253.16it/s]
Collected number of events: 75656
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 256.80it/s]
Collected number of events: 75976
100%|████████████████████████████████████████████████████████████| 416/416 [00:01<00:00, 286.50it/s]
Collected number of events: 76336
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 230.66it/s]
Collected number of events: 76568
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 229.14it/s]
Collected number of events: 76848
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 218.42it/s]
Collected number of events: 77072
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 247.43it/s]
Collected number of events: 77328
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 244.93it/s]
Collected number of events: 77608
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 274.76it/s]
Collected number of events: 77936
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 265.57it/s]
Collected number of events: 78248
100%|████████████████████████████████████████████████████████████| 408/408 [00:01<00:00, 275.28it/s]
Collected number of events: 78520
100%|████████████████████████████████████████████████████████████| 280/280 [00:01<00:00, 208.61it/s]
Collected number of events: 78744
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 250.72it/s]
Collected number of events: 79040
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 270.03it/s]
Collected number of events: 79368
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 242.39it/s]
Collected number of events: 79648
100%|████████████████████████████████████████████████████████████| 272/272 [00:01<00:00, 203.06it/s]
Collected number of events: 79856
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 252.51it/s]
Collected number of events: 80160
100%|████████████████████████████████████████████████████████████| 424/424 [00:01<00:00, 285.93it/s]
Collected number of events: 80504
100%|████████████████████████████████████████████████████████████| 248/248 [00:01<00:00, 191.48it/s]
Collected number of events: 80688
100%|████████████████████████████████████████████████████████████| 424/424 [00:01<00:00, 277.43it/s]
Collected number of events: 81024
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 262.02it/s]
Collected number of events: 81320
100%|████████████████████████████████████████████████████████████| 472/472 [00:01<00:00, 304.19it/s]
Collected number of events: 81728
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 262.06it/s]
Collected number of events: 81952
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 244.75it/s]
Collected number of events: 82208
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 228.34it/s]
Collected number of events: 82480
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 259.27it/s]
Collected number of events: 82752
100%|████████████████████████████████████████████████████████████| 408/408 [00:01<00:00, 274.57it/s]
Collected number of events: 83104
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 255.21it/s]
Collected number of events: 83424
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 253.60it/s]
Collected number of events: 83752
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 254.00it/s]
Collected number of events: 84016
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 270.06it/s]
Collected number of events: 84280
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 214.30it/s]
Collected number of events: 84496
100%|████████████████████████████████████████████████████████████| 224/224 [00:01<00:00, 177.54it/s]
Collected number of events: 84648
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 255.97it/s]
Collected number of events: 84912
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 234.46it/s]
Collected number of events: 85176
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 220.88it/s]
Collected number of events: 85400
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 267.77it/s]
Collected number of events: 85744
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 208.20it/s]
Collected number of events: 85968
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 263.09it/s]
Collected number of events: 86272
100%|████████████████████████████████████████████████████████████| 416/416 [00:01<00:00, 285.59it/s]
Collected number of events: 86616
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 233.83it/s]
Collected number of events: 86896
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 219.23it/s]
Collected number of events: 87160
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 221.36it/s]
Collected number of events: 87424
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 271.79it/s]
Collected number of events: 87752
100%|████████████████████████████████████████████████████████████| 448/448 [00:01<00:00, 304.78it/s]
Collected number of events: 88096
100%|████████████████████████████████████████████████████████████| 280/280 [00:01<00:00, 210.24it/s]
Collected number of events: 88328
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 242.73it/s]
Collected number of events: 88616
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 237.00it/s]
Collected number of events: 88904
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 212.43it/s]
Collected number of events: 89152
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 267.50it/s]
Collected number of events: 89440
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 212.19it/s]
Collected number of events: 89696
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 262.63it/s]
Collected number of events: 90032
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 244.69it/s]
Collected number of events: 90312
 33%|████████████████████▏                                        | 98/296 [00:01<00:01, 142.02it/s](fCut = 19.5905 Hz) <= f_min = 20
f_max <= f_min
XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): (fCut = 19.5905 Hz) <= f_min = 20

XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): Input domain error
XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): IMRPhenomXPHM_hplushcross failed to generate IMRPhenomXHM waveform.

XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): Internal function call failed: Input domain error
XLAL Error - XLALSimInspiralChooseFDWaveform_legacy (LALSimInspiralGeneratorLegacy.c:2577): Internal function call failed: Input domain error
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 219.18it/s]
[gwsnr] Waveform generation failed (likely fCut <= f_min for high-mass systems). Returning SNR=0 for those samples. If this happens often, try again with input argument: mtot_cut=True (and/or lower mtot_max).
Collected number of events: 90520
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 263.25it/s]
Collected number of events: 90848
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 249.84it/s]
Collected number of events: 91160
100%|████████████████████████████████████████████████████████████| 456/456 [00:01<00:00, 296.97it/s]
Collected number of events: 91512
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 264.49it/s]
Collected number of events: 91848
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 256.26it/s]
Collected number of events: 92160
100%|████████████████████████████████████████████████████████████| 440/440 [00:01<00:00, 284.37it/s]
Collected number of events: 92504
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 255.59it/s]
Collected number of events: 92808
100%|████████████████████████████████████████████████████████████| 416/416 [00:01<00:00, 283.14it/s]
Collected number of events: 93144
100%|████████████████████████████████████████████████████████████| 400/400 [00:01<00:00, 260.90it/s]
Collected number of events: 93472
100%|████████████████████████████████████████████████████████████| 512/512 [00:01<00:00, 325.63it/s]
Collected number of events: 93848
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 232.52it/s]
Collected number of events: 94088
100%|████████████████████████████████████████████████████████████| 312/312 [00:01<00:00, 230.86it/s]
Collected number of events: 94352
100%|████████████████████████████████████████████████████████████| 376/376 [00:01<00:00, 260.30it/s]
Collected number of events: 94680
100%|████████████████████████████████████████████████████████████| 280/280 [00:01<00:00, 210.04it/s]
Collected number of events: 94888
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 238.92it/s]
Collected number of events: 95112
100%|████████████████████████████████████████████████████████████| 336/336 [00:01<00:00, 239.56it/s]
Collected number of events: 95392
100%|████████████████████████████████████████████████████████████| 272/272 [00:01<00:00, 201.41it/s]
Collected number of events: 95616
100%|████████████████████████████████████████████████████████████| 368/368 [00:01<00:00, 258.70it/s]
Collected number of events: 95912
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 218.68it/s]
Collected number of events: 96136
 88%|████████████████████████████████████████████████████▌       | 315/360 [00:01<00:00, 454.63it/s](fCut = 19.1049 Hz) <= f_min = 20
f_max <= f_min
XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): (fCut = 19.1049 Hz) <= f_min = 20

XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): Input domain error
XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): IMRPhenomXPHM_hplushcross failed to generate IMRPhenomXHM waveform.

XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): Internal function call failed: Input domain error
XLAL Error - XLALSimInspiralChooseFDWaveform_legacy (LALSimInspiralGeneratorLegacy.c:2577): Internal function call failed: Input domain error
100%|████████████████████████████████████████████████████████████| 360/360 [00:01<00:00, 255.05it/s]
[gwsnr] Waveform generation failed (likely fCut <= f_min for high-mass systems). Returning SNR=0 for those samples. If this happens often, try again with input argument: mtot_cut=True (and/or lower mtot_max).
Collected number of events: 96432
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 220.33it/s]
Collected number of events: 96672
100%|████████████████████████████████████████████████████████████| 352/352 [00:01<00:00, 249.30it/s]
Collected number of events: 96960
100%|████████████████████████████████████████████████████████████| 416/416 [00:01<00:00, 281.58it/s]
Collected number of events: 97328
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 273.22it/s]
Collected number of events: 97680
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 233.59it/s]
Collected number of events: 97936
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 265.35it/s]
Collected number of events: 98272
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 234.55it/s]
Collected number of events: 98560
100%|████████████████████████████████████████████████████████████| 392/392 [00:01<00:00, 254.81it/s]
Collected number of events: 98904
100%|████████████████████████████████████████████████████████████| 328/328 [00:01<00:00, 236.79it/s]
Collected number of events: 99192
100%|████████████████████████████████████████████████████████████| 384/384 [00:01<00:00, 261.67it/s]
Collected number of events: 99480
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 236.95it/s]
Collected number of events: 99744
100%|████████████████████████████████████████████████████████████| 344/344 [00:01<00:00, 245.65it/s]
Collected number of events: 100032
final size: 100032

json file saved at: ./ler_data/IMRPhenomXPHM_O4_high_asd_L1_1.json

[ ]:

[6]:
# might take 2mins~3mins
# 10 mins 0.7 s, 10000 samples with 8 processes and batch_size=200000
tdg.gw_parameters_generator(
    size=50000,
    batch_size=200000,
    snr_recalculation=True,
    trim_to_size=False, verbose=True,
    data_distribution_range = [5., 10., 15.], # equal data samples will be distributed in these ranges
    replace=False,
    output_jsonfile="IMRPhenomXPHM_O4_high_asd_L1_2.json",
)

Initializing GWSNR class...

Intel processor has trouble allocating memory when the data is huge. So, by default for IMRPhenomXPHM, duration_max = 64.0. Otherwise, set to some max value like duration_max = 600.0 (10 mins)

Chosen GWSNR initialization parameters:

npool:  6
snr type:  inner_product
waveform approximant:  IMRPhenomXPHM
sampling frequency:  2048.0
minimum frequency (fmin):  20.0
reference frequency (f_ref):  20.0
mtot=mass1+mass2
min(mtot):  9.96
max(mtot) (with the given fmin=20.0): 235.0
detectors:  ['L1']
psds:  [[array([  10.21659,   10.23975,   10.26296, ..., 4972.81   ,
       4984.081  , 4995.378  ], shape=(2736,)), array([4.43925574e-41, 4.22777986e-41, 4.02102594e-41, ...,
       6.51153524e-46, 6.43165104e-46, 6.55252996e-46],
      shape=(2736,)), <scipy.interpolate._interpolate.interp1d object at 0x17aaa9bc0>]]


total event to collect: 50000

100%|████████████████████████████████████████████████████████████| 258/258 [00:01<00:00, 193.77it/s]
Collected number of events: 224
100%|████████████████████████████████████████████████████████████| 284/284 [00:01<00:00, 214.66it/s]
Collected number of events: 476
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 208.46it/s]
Collected number of events: 704
100%|████████████████████████████████████████████████████████████| 262/262 [00:01<00:00, 199.57it/s]
Collected number of events: 940
100%|████████████████████████████████████████████████████████████| 306/306 [00:01<00:00, 224.93it/s]
Collected number of events: 1198
100%|████████████████████████████████████████████████████████████| 264/264 [00:01<00:00, 198.92it/s]
Collected number of events: 1424
100%|████████████████████████████████████████████████████████████| 238/238 [00:01<00:00, 180.91it/s]
Collected number of events: 1606
100%|████████████████████████████████████████████████████████████| 274/274 [00:01<00:00, 203.88it/s]
Collected number of events: 1840
100%|████████████████████████████████████████████████████████████| 248/248 [00:01<00:00, 192.89it/s]
Collected number of events: 2056
100%|████████████████████████████████████████████████████████████| 252/252 [00:01<00:00, 193.58it/s]
Collected number of events: 2284
100%|████████████████████████████████████████████████████████████| 268/268 [00:01<00:00, 206.27it/s]
Collected number of events: 2514
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 207.98it/s]
Collected number of events: 2758
100%|████████████████████████████████████████████████████████████| 260/260 [00:01<00:00, 199.07it/s]
Collected number of events: 2984
100%|████████████████████████████████████████████████████████████| 242/242 [00:01<00:00, 188.30it/s]
Collected number of events: 3194
100%|████████████████████████████████████████████████████████████| 254/254 [00:01<00:00, 195.62it/s]
Collected number of events: 3412
100%|████████████████████████████████████████████████████████████| 274/274 [00:01<00:00, 204.53it/s]
Collected number of events: 3644
100%|████████████████████████████████████████████████████████████| 258/258 [00:01<00:00, 198.53it/s]
Collected number of events: 3858
100%|████████████████████████████████████████████████████████████| 272/272 [00:01<00:00, 206.31it/s]
Collected number of events: 4094
100%|████████████████████████████████████████████████████████████| 286/286 [00:01<00:00, 218.44it/s]
Collected number of events: 4340
100%|████████████████████████████████████████████████████████████| 256/256 [00:01<00:00, 199.01it/s]
Collected number of events: 4564
100%|████████████████████████████████████████████████████████████| 280/280 [00:01<00:00, 214.05it/s]
Collected number of events: 4822
100%|████████████████████████████████████████████████████████████| 274/274 [00:01<00:00, 207.46it/s]
Collected number of events: 5050
100%|████████████████████████████████████████████████████████████| 270/270 [00:01<00:00, 207.44it/s]
Collected number of events: 5286
100%|████████████████████████████████████████████████████████████| 252/252 [00:01<00:00, 191.65it/s]
Collected number of events: 5492
100%|████████████████████████████████████████████████████████████| 252/252 [00:01<00:00, 198.33it/s]
Collected number of events: 5706
100%|████████████████████████████████████████████████████████████| 294/294 [00:01<00:00, 219.32it/s]
Collected number of events: 5970
100%|████████████████████████████████████████████████████████████| 260/260 [00:01<00:00, 200.14it/s]
Collected number of events: 6194
100%|████████████████████████████████████████████████████████████| 246/246 [00:01<00:00, 192.02it/s]
Collected number of events: 6404
100%|████████████████████████████████████████████████████████████| 272/272 [00:01<00:00, 208.05it/s]
Collected number of events: 6630
100%|████████████████████████████████████████████████████████████| 286/286 [00:01<00:00, 216.14it/s]
Collected number of events: 6876
100%|████████████████████████████████████████████████████████████| 286/286 [00:01<00:00, 212.96it/s]
Collected number of events: 7138
100%|████████████████████████████████████████████████████████████| 242/242 [00:01<00:00, 186.49it/s]
Collected number of events: 7348
100%|████████████████████████████████████████████████████████████| 274/274 [00:01<00:00, 211.71it/s]
Collected number of events: 7582
100%|████████████████████████████████████████████████████████████| 286/286 [00:01<00:00, 213.97it/s]
Collected number of events: 7832
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 206.28it/s]
Collected number of events: 8078
100%|████████████████████████████████████████████████████████████| 266/266 [00:01<00:00, 202.73it/s]
Collected number of events: 8328
100%|████████████████████████████████████████████████████████████| 248/248 [00:01<00:00, 188.11it/s]
Collected number of events: 8556
100%|████████████████████████████████████████████████████████████| 252/252 [00:01<00:00, 195.88it/s]
Collected number of events: 8766
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 211.16it/s]
Collected number of events: 9000
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 210.34it/s]
Collected number of events: 9232
100%|████████████████████████████████████████████████████████████| 266/266 [00:01<00:00, 200.13it/s]
Collected number of events: 9460
100%|████████████████████████████████████████████████████████████| 234/234 [00:01<00:00, 182.53it/s]
Collected number of events: 9664
100%|████████████████████████████████████████████████████████████| 270/270 [00:01<00:00, 207.04it/s]
Collected number of events: 9902
100%|████████████████████████████████████████████████████████████| 232/232 [00:01<00:00, 182.23it/s]
Collected number of events: 10114
100%|████████████████████████████████████████████████████████████| 258/258 [00:01<00:00, 199.79it/s]
Collected number of events: 10332
100%|████████████████████████████████████████████████████████████| 280/280 [00:01<00:00, 208.22it/s]
Collected number of events: 10578
100%|████████████████████████████████████████████████████████████| 256/256 [00:01<00:00, 195.16it/s]
Collected number of events: 10798
100%|████████████████████████████████████████████████████████████| 210/210 [00:01<00:00, 167.79it/s]
Collected number of events: 10974
100%|████████████████████████████████████████████████████████████| 284/284 [00:01<00:00, 210.55it/s]
Collected number of events: 11210
100%|████████████████████████████████████████████████████████████| 286/286 [00:01<00:00, 211.15it/s]
Collected number of events: 11452
100%|████████████████████████████████████████████████████████████| 268/268 [00:01<00:00, 203.55it/s]
Collected number of events: 11688
100%|████████████████████████████████████████████████████████████| 266/266 [00:01<00:00, 199.94it/s]
Collected number of events: 11922
100%|████████████████████████████████████████████████████████████| 256/256 [00:01<00:00, 197.65it/s]
Collected number of events: 12148
100%|████████████████████████████████████████████████████████████| 246/246 [00:01<00:00, 186.07it/s]
Collected number of events: 12362
100%|████████████████████████████████████████████████████████████| 264/264 [00:01<00:00, 197.76it/s]
Collected number of events: 12604
100%|████████████████████████████████████████████████████████████| 284/284 [00:01<00:00, 211.74it/s]
Collected number of events: 12860
100%|████████████████████████████████████████████████████████████| 236/236 [00:01<00:00, 181.19it/s]
Collected number of events: 13056
100%|████████████████████████████████████████████████████████████| 258/258 [00:01<00:00, 199.40it/s]
Collected number of events: 13270
100%|████████████████████████████████████████████████████████████| 294/294 [00:01<00:00, 219.77it/s]
Collected number of events: 13536
100%|████████████████████████████████████████████████████████████| 218/218 [00:01<00:00, 174.04it/s]
Collected number of events: 13726
100%|████████████████████████████████████████████████████████████| 248/248 [00:01<00:00, 188.75it/s]
Collected number of events: 13950
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 209.71it/s]
Collected number of events: 14180
100%|████████████████████████████████████████████████████████████| 274/274 [00:01<00:00, 201.46it/s]
Collected number of events: 14424
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 223.46it/s]
Collected number of events: 14676
100%|████████████████████████████████████████████████████████████| 260/260 [00:01<00:00, 203.01it/s]
Collected number of events: 14904
100%|████████████████████████████████████████████████████████████| 254/254 [00:01<00:00, 193.99it/s]
Collected number of events: 15122
 38%|██████████████████████▌                                     | 102/272 [00:01<00:01, 146.66it/s](fCut = 19.5908 Hz) <= f_min = 20
f_max <= f_min
XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): (fCut = 19.5908 Hz) <= f_min = 20

XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): Input domain error
XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): IMRPhenomXPHM_hplushcross failed to generate IMRPhenomXHM waveform.

XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): Internal function call failed: Input domain error
XLAL Error - XLALSimInspiralChooseFDWaveform_legacy (LALSimInspiralGeneratorLegacy.c:2577): Internal function call failed: Input domain error
100%|████████████████████████████████████████████████████████████| 272/272 [00:01<00:00, 201.33it/s]
[gwsnr] Waveform generation failed (likely fCut <= f_min for high-mass systems). Returning SNR=0 for those samples. If this happens often, try again with input argument: mtot_cut=True (and/or lower mtot_max).
Collected number of events: 15356
100%|████████████████████████████████████████████████████████████| 230/230 [00:01<00:00, 179.21it/s]
Collected number of events: 15550
100%|████████████████████████████████████████████████████████████| 310/310 [00:01<00:00, 231.02it/s]
Collected number of events: 15834
100%|████████████████████████████████████████████████████████████| 246/246 [00:01<00:00, 188.62it/s]
Collected number of events: 16040
100%|████████████████████████████████████████████████████████████| 302/302 [00:01<00:00, 224.22it/s]
Collected number of events: 16306
100%|████████████████████████████████████████████████████████████| 244/244 [00:01<00:00, 191.93it/s]
Collected number of events: 16514
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 208.51it/s]
Collected number of events: 16762
100%|████████████████████████████████████████████████████████████| 274/274 [00:01<00:00, 205.29it/s]
Collected number of events: 16990
100%|████████████████████████████████████████████████████████████| 292/292 [00:01<00:00, 216.69it/s]
Collected number of events: 17250
100%|████████████████████████████████████████████████████████████| 272/272 [00:01<00:00, 205.23it/s]
Collected number of events: 17498
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 205.59it/s]
Collected number of events: 17740
100%|████████████████████████████████████████████████████████████| 258/258 [00:01<00:00, 202.00it/s]
Collected number of events: 17944
100%|████████████████████████████████████████████████████████████| 294/294 [00:01<00:00, 213.49it/s]
Collected number of events: 18212
100%|████████████████████████████████████████████████████████████| 282/282 [00:01<00:00, 214.23it/s]
Collected number of events: 18456
100%|████████████████████████████████████████████████████████████| 266/266 [00:01<00:00, 202.08it/s]
Collected number of events: 18674
100%|████████████████████████████████████████████████████████████| 224/224 [00:01<00:00, 177.89it/s]
Collected number of events: 18864
100%|████████████████████████████████████████████████████████████| 290/290 [00:01<00:00, 217.43it/s]
Collected number of events: 19124
100%|████████████████████████████████████████████████████████████| 248/248 [00:01<00:00, 196.37it/s]
Collected number of events: 19342
100%|████████████████████████████████████████████████████████████| 280/280 [00:01<00:00, 212.27it/s]
Collected number of events: 19574
100%|████████████████████████████████████████████████████████████| 262/262 [00:01<00:00, 200.33it/s]
Collected number of events: 19808
100%|████████████████████████████████████████████████████████████| 246/246 [00:01<00:00, 197.79it/s]
Collected number of events: 20014
100%|████████████████████████████████████████████████████████████| 220/220 [00:01<00:00, 177.83it/s]
Collected number of events: 20202
100%|████████████████████████████████████████████████████████████| 240/240 [00:01<00:00, 188.47it/s]
Collected number of events: 20404
100%|████████████████████████████████████████████████████████████| 240/240 [00:01<00:00, 190.16it/s]
Collected number of events: 20600
100%|████████████████████████████████████████████████████████████| 264/264 [00:01<00:00, 200.48it/s]
Collected number of events: 20830
100%|████████████████████████████████████████████████████████████| 218/218 [00:01<00:00, 174.80it/s]
Collected number of events: 21016
100%|████████████████████████████████████████████████████████████| 248/248 [00:01<00:00, 191.24it/s]
Collected number of events: 21226
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 216.56it/s]
Collected number of events: 21470
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 209.62it/s]
Collected number of events: 21722
100%|████████████████████████████████████████████████████████████| 276/276 [00:01<00:00, 208.42it/s]
Collected number of events: 21970
100%|████████████████████████████████████████████████████████████| 228/228 [00:01<00:00, 180.57it/s]
Collected number of events: 22166
100%|████████████████████████████████████████████████████████████| 276/276 [00:01<00:00, 207.37it/s]
Collected number of events: 22422
100%|████████████████████████████████████████████████████████████| 256/256 [00:01<00:00, 198.78it/s]
Collected number of events: 22638
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 223.94it/s]
Collected number of events: 22902
100%|████████████████████████████████████████████████████████████| 290/290 [00:01<00:00, 211.43it/s]
Collected number of events: 23162
100%|████████████████████████████████████████████████████████████| 230/230 [00:01<00:00, 177.14it/s]
Collected number of events: 23362
100%|████████████████████████████████████████████████████████████| 250/250 [00:01<00:00, 192.17it/s]
Collected number of events: 23574
100%|████████████████████████████████████████████████████████████| 250/250 [00:01<00:00, 191.80it/s]
Collected number of events: 23788
100%|████████████████████████████████████████████████████████████| 256/256 [00:01<00:00, 197.15it/s]
Collected number of events: 24014
100%|████████████████████████████████████████████████████████████| 298/298 [00:01<00:00, 219.96it/s]
Collected number of events: 24276
100%|████████████████████████████████████████████████████████████| 254/254 [00:01<00:00, 199.28it/s]
Collected number of events: 24504
100%|████████████████████████████████████████████████████████████| 268/268 [00:01<00:00, 191.27it/s]
Collected number of events: 24744
100%|████████████████████████████████████████████████████████████| 246/246 [00:01<00:00, 190.72it/s]
Collected number of events: 24954
100%|████████████████████████████████████████████████████████████| 276/276 [00:01<00:00, 204.45it/s]
Collected number of events: 25196
100%|████████████████████████████████████████████████████████████| 248/248 [00:01<00:00, 191.24it/s]
Collected number of events: 25398
100%|████████████████████████████████████████████████████████████| 324/324 [00:01<00:00, 225.84it/s]
Collected number of events: 25668
100%|████████████████████████████████████████████████████████████| 272/272 [00:01<00:00, 207.06it/s]
Collected number of events: 25896
100%|████████████████████████████████████████████████████████████| 266/266 [00:01<00:00, 202.44it/s]
Collected number of events: 26140
100%|████████████████████████████████████████████████████████████| 244/244 [00:01<00:00, 195.66it/s]
Collected number of events: 26338
100%|████████████████████████████████████████████████████████████| 264/264 [00:01<00:00, 201.62it/s]
Collected number of events: 26572
100%|████████████████████████████████████████████████████████████| 250/250 [00:01<00:00, 194.64it/s]
Collected number of events: 26798
100%|████████████████████████████████████████████████████████████| 236/236 [00:01<00:00, 183.08it/s]
Collected number of events: 27000
100%|████████████████████████████████████████████████████████████| 298/298 [00:01<00:00, 224.21it/s]
Collected number of events: 27254
100%|████████████████████████████████████████████████████████████| 238/238 [00:01<00:00, 185.90it/s]
Collected number of events: 27440
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 211.96it/s]
Collected number of events: 27670
100%|████████████████████████████████████████████████████████████| 272/272 [00:01<00:00, 205.96it/s]
Collected number of events: 27902
100%|████████████████████████████████████████████████████████████| 266/266 [00:01<00:00, 202.69it/s]
Collected number of events: 28126
100%|████████████████████████████████████████████████████████████| 266/266 [00:01<00:00, 206.60it/s]
Collected number of events: 28350
100%|████████████████████████████████████████████████████████████| 254/254 [00:01<00:00, 200.70it/s]
Collected number of events: 28542
100%|████████████████████████████████████████████████████████████| 282/282 [00:01<00:00, 209.73it/s]
Collected number of events: 28786
100%|████████████████████████████████████████████████████████████| 264/264 [00:01<00:00, 205.32it/s]
Collected number of events: 29012
100%|████████████████████████████████████████████████████████████| 302/302 [00:01<00:00, 216.34it/s]
Collected number of events: 29270
100%|████████████████████████████████████████████████████████████| 234/234 [00:01<00:00, 184.02it/s]
Collected number of events: 29468
100%|████████████████████████████████████████████████████████████| 302/302 [00:01<00:00, 207.53it/s]
Collected number of events: 29742
100%|████████████████████████████████████████████████████████████| 294/294 [00:01<00:00, 220.76it/s]
Collected number of events: 30000
100%|████████████████████████████████████████████████████████████| 256/256 [00:01<00:00, 195.59it/s]
Collected number of events: 30212
100%|████████████████████████████████████████████████████████████| 246/246 [00:01<00:00, 190.70it/s]
Collected number of events: 30424
100%|████████████████████████████████████████████████████████████| 262/262 [00:01<00:00, 203.98it/s]
Collected number of events: 30660
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 209.33it/s]
Collected number of events: 30908
100%|████████████████████████████████████████████████████████████| 268/268 [00:01<00:00, 204.27it/s]
Collected number of events: 31138
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 233.85it/s]
Collected number of events: 31424
100%|████████████████████████████████████████████████████████████| 232/232 [00:01<00:00, 167.58it/s]
Collected number of events: 31620
100%|████████████████████████████████████████████████████████████| 250/250 [00:01<00:00, 189.47it/s]
Collected number of events: 31842
100%|████████████████████████████████████████████████████████████| 266/266 [00:01<00:00, 198.08it/s]
Collected number of events: 32074
100%|████████████████████████████████████████████████████████████| 262/262 [00:01<00:00, 202.54it/s]
Collected number of events: 32298
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 220.76it/s]
Collected number of events: 32560
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 212.10it/s]
Collected number of events: 32800
100%|████████████████████████████████████████████████████████████| 256/256 [00:01<00:00, 197.10it/s]
Collected number of events: 33018
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 214.47it/s]
Collected number of events: 33284
100%|████████████████████████████████████████████████████████████| 294/294 [00:01<00:00, 217.54it/s]
Collected number of events: 33542
100%|████████████████████████████████████████████████████████████| 322/322 [00:01<00:00, 229.17it/s]
Collected number of events: 33802
100%|████████████████████████████████████████████████████████████| 254/254 [00:01<00:00, 197.92it/s]
Collected number of events: 34020
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 224.83it/s]
Collected number of events: 34282
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 210.17it/s]
Collected number of events: 34518
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 209.66it/s]
Collected number of events: 34750
100%|████████████████████████████████████████████████████████████| 236/236 [00:01<00:00, 181.87it/s]
Collected number of events: 34968
100%|████████████████████████████████████████████████████████████| 284/284 [00:01<00:00, 210.37it/s]
Collected number of events: 35220
100%|████████████████████████████████████████████████████████████| 284/284 [00:01<00:00, 213.65it/s]
Collected number of events: 35462
100%|████████████████████████████████████████████████████████████| 256/256 [00:01<00:00, 196.48it/s]
Collected number of events: 35692
100%|████████████████████████████████████████████████████████████| 308/308 [00:01<00:00, 226.52it/s]
Collected number of events: 35962
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 221.01it/s]
Collected number of events: 36230
100%|████████████████████████████████████████████████████████████| 242/242 [00:01<00:00, 179.34it/s]
Collected number of events: 36450
100%|████████████████████████████████████████████████████████████| 252/252 [00:01<00:00, 194.00it/s]
Collected number of events: 36668
100%|████████████████████████████████████████████████████████████| 276/276 [00:01<00:00, 210.73it/s]
Collected number of events: 36892
100%|████████████████████████████████████████████████████████████| 294/294 [00:01<00:00, 220.21it/s]
Collected number of events: 37142
100%|████████████████████████████████████████████████████████████| 314/314 [00:01<00:00, 232.94it/s]
Collected number of events: 37410
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 223.45it/s]
Collected number of events: 37666
100%|████████████████████████████████████████████████████████████| 236/236 [00:01<00:00, 183.11it/s]
Collected number of events: 37868
100%|████████████████████████████████████████████████████████████| 264/264 [00:01<00:00, 200.63it/s]
Collected number of events: 38098
100%|████████████████████████████████████████████████████████████| 292/292 [00:01<00:00, 215.12it/s]
Collected number of events: 38344
100%|████████████████████████████████████████████████████████████| 222/222 [00:01<00:00, 173.25it/s]
Collected number of events: 38538
100%|████████████████████████████████████████████████████████████| 238/238 [00:01<00:00, 185.23it/s]
Collected number of events: 38724
100%|████████████████████████████████████████████████████████████| 320/320 [00:01<00:00, 233.44it/s]
Collected number of events: 39002
100%|████████████████████████████████████████████████████████████| 262/262 [00:01<00:00, 195.71it/s]
Collected number of events: 39228
100%|████████████████████████████████████████████████████████████| 268/268 [00:01<00:00, 204.69it/s]
Collected number of events: 39464
100%|████████████████████████████████████████████████████████████| 248/248 [00:01<00:00, 185.52it/s]
Collected number of events: 39688
100%|████████████████████████████████████████████████████████████| 280/280 [00:01<00:00, 209.68it/s]
Collected number of events: 39932
100%|████████████████████████████████████████████████████████████| 250/250 [00:01<00:00, 192.30it/s]
Collected number of events: 40154
100%|████████████████████████████████████████████████████████████| 264/264 [00:01<00:00, 199.01it/s]
Collected number of events: 40394
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 212.49it/s]
Collected number of events: 40636
100%|████████████████████████████████████████████████████████████| 264/264 [00:01<00:00, 197.44it/s]
Collected number of events: 40872
100%|████████████████████████████████████████████████████████████| 292/292 [00:01<00:00, 214.77it/s]
Collected number of events: 41108
100%|████████████████████████████████████████████████████████████| 242/242 [00:01<00:00, 186.41it/s]
Collected number of events: 41316
100%|████████████████████████████████████████████████████████████| 274/274 [00:01<00:00, 210.09it/s]
Collected number of events: 41560
100%|████████████████████████████████████████████████████████████| 258/258 [00:01<00:00, 197.25it/s]
Collected number of events: 41786
100%|████████████████████████████████████████████████████████████| 230/230 [00:01<00:00, 181.93it/s]
Collected number of events: 42000
100%|████████████████████████████████████████████████████████████| 216/216 [00:01<00:00, 173.33it/s]
Collected number of events: 42182
100%|████████████████████████████████████████████████████████████| 264/264 [00:01<00:00, 203.59it/s]
Collected number of events: 42416
100%|████████████████████████████████████████████████████████████| 234/234 [00:01<00:00, 180.86it/s]
Collected number of events: 42610
100%|████████████████████████████████████████████████████████████| 266/266 [00:01<00:00, 200.65it/s]
Collected number of events: 42842
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 210.05it/s]
Collected number of events: 43098
100%|████████████████████████████████████████████████████████████| 250/250 [00:01<00:00, 194.01it/s]
Collected number of events: 43308
100%|████████████████████████████████████████████████████████████| 242/242 [00:01<00:00, 185.04it/s]
Collected number of events: 43522
100%|████████████████████████████████████████████████████████████| 300/300 [00:01<00:00, 219.29it/s]
Collected number of events: 43780
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 207.10it/s]
Collected number of events: 44024
100%|████████████████████████████████████████████████████████████| 234/234 [00:01<00:00, 182.00it/s]
Collected number of events: 44228
100%|████████████████████████████████████████████████████████████| 258/258 [00:01<00:00, 195.50it/s]
Collected number of events: 44462
100%|████████████████████████████████████████████████████████████| 316/316 [00:01<00:00, 228.95it/s]
Collected number of events: 44738
100%|████████████████████████████████████████████████████████████| 250/250 [00:01<00:00, 194.57it/s]
Collected number of events: 44954
100%|████████████████████████████████████████████████████████████| 304/304 [00:01<00:00, 221.43it/s]
Collected number of events: 45216
100%|████████████████████████████████████████████████████████████| 274/274 [00:01<00:00, 210.74it/s]
Collected number of events: 45460
100%|████████████████████████████████████████████████████████████| 294/294 [00:01<00:00, 216.76it/s]
Collected number of events: 45718
100%|████████████████████████████████████████████████████████████| 242/242 [00:01<00:00, 184.94it/s]
Collected number of events: 45928
100%|████████████████████████████████████████████████████████████| 264/264 [00:01<00:00, 196.41it/s]
Collected number of events: 46162
100%|████████████████████████████████████████████████████████████| 260/260 [00:01<00:00, 199.62it/s]
Collected number of events: 46384
100%|████████████████████████████████████████████████████████████| 276/276 [00:01<00:00, 199.19it/s]
Collected number of events: 46622
100%|████████████████████████████████████████████████████████████| 296/296 [00:01<00:00, 221.09it/s]
Collected number of events: 46872
100%|████████████████████████████████████████████████████████████| 224/224 [00:01<00:00, 174.70it/s]
Collected number of events: 47054
100%|████████████████████████████████████████████████████████████| 274/274 [00:01<00:00, 204.17it/s]
Collected number of events: 47294
100%|████████████████████████████████████████████████████████████| 310/310 [00:01<00:00, 226.77it/s]
Collected number of events: 47568
100%|████████████████████████████████████████████████████████████| 238/238 [00:01<00:00, 184.36it/s]
Collected number of events: 47776
100%|████████████████████████████████████████████████████████████| 290/290 [00:01<00:00, 214.55it/s]
Collected number of events: 48042
100%|████████████████████████████████████████████████████████████| 278/278 [00:01<00:00, 205.91it/s]
Collected number of events: 48288
100%|████████████████████████████████████████████████████████████| 270/270 [00:01<00:00, 191.79it/s]
Collected number of events: 48528
100%|████████████████████████████████████████████████████████████| 292/292 [00:01<00:00, 218.41it/s]
Collected number of events: 48778
100%|████████████████████████████████████████████████████████████| 266/266 [00:01<00:00, 204.86it/s]
Collected number of events: 49010
100%|████████████████████████████████████████████████████████████| 288/288 [00:01<00:00, 211.33it/s]
Collected number of events: 49254
100%|████████████████████████████████████████████████████████████| 252/252 [00:01<00:00, 194.73it/s]
Collected number of events: 49476
100%|████████████████████████████████████████████████████████████| 270/270 [00:01<00:00, 201.09it/s]
Collected number of events: 49716
100%|████████████████████████████████████████████████████████████| 240/240 [00:01<00:00, 187.45it/s]
Collected number of events: 49932
100%|████████████████████████████████████████████████████████████| 274/274 [00:01<00:00, 205.33it/s]
Collected number of events: 50170
final size: 50170

json file saved at: ./ler_data/IMRPhenomXPHM_O4_high_asd_L1_2.json

[7]:
tdg.gw_parameters_generator(
    size=50000,
    batch_size=50000,
    snr_recalculation=True,
    trim_to_size=False,
    verbose=False,
    data_distribution_range = None,
    replace=True,
    output_jsonfile="IMRPhenomXPHM_O4_high_asd_L1_3.json",
)

Initializing GWSNR class...

Intel processor has trouble allocating memory when the data is huge. So, by default for IMRPhenomXPHM, duration_max = 64.0. Otherwise, set to some max value like duration_max = 600.0 (10 mins)

Chosen GWSNR initialization parameters:

npool:  6
snr type:  inner_product
waveform approximant:  IMRPhenomXPHM
sampling frequency:  2048.0
minimum frequency (fmin):  20.0
reference frequency (f_ref):  20.0
mtot=mass1+mass2
min(mtot):  9.96
max(mtot) (with the given fmin=20.0): 235.0
detectors:  ['L1']
psds:  [[array([  10.21659,   10.23975,   10.26296, ..., 4972.81   ,
       4984.081  , 4995.378  ], shape=(2736,)), array([4.43925574e-41, 4.22777986e-41, 4.02102594e-41, ...,
       6.51153524e-46, 6.43165104e-46, 6.55252996e-46],
      shape=(2736,)), <scipy.interpolate._interpolate.interp1d object at 0x17ad263e0>]]


total event to collect: 50000

100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 45.68it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.47it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 69.80it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.68it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.40it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.06it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.79it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.90it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.65it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.25it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.94it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.65it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.80it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.36it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 56.07it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.81it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.90it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.84it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.58it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.58it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.92it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.76it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.52it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.85it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.94it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.68it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.46it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.10it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.95it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.18it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.80it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.61it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.72it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.87it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 56.20it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.93it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.77it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.56it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.94it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.98it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.30it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.68it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 79.63it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.08it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.16it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.72it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.47it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.94it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.28it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.96it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.33it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.84it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 70.50it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 16.13it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.54it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.76it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.92it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.54it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.77it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 30.92it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.65it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.31it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.66it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.00it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.76it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.13it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.84it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.47it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.74it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.29it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.83it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.43it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.42it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 54.94it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.25it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.46it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.45it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.60it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.86it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.98it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 56.13it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.93it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.89it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.19it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.61it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.32it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 69.98it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.08it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.61it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.25it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.70it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.97it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.22it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.04it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.06it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.69it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.02it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.70it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.61it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.42it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 54.27it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.62it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.63it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.78it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.78it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 54.42it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.77it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.96it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.69it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.67it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.82it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.85it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.05it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.00it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 16.07it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.82it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.96it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.81it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 56.13it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.84it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.36it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  8.00it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.80it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.05it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.66it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.69it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.90it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.97it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.72it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.93it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 45.90it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.59it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.33it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.51it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 56.49it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.64it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.07it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.07it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 49.00it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.35it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 54.60it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.82it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.44it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.96it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.54it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.98it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.29it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.79it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.40it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.19it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 71.49it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.66it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.90it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.00it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.73it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 54.88it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.81it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.27it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.76it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 79.86it/s]
100%|███████████████████████████████████████████████████████████████| 99/99 [00:01<00:00, 88.61it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.88it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.83it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.69it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.29it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.73it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.07it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.10it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.93it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  8.05it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.97it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.28it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.95it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.90it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.02it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.97it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.21it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.98it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.12it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 62.19it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.99it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.98it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.73it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.83it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.89it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.56it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.89it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.82it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.28it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.81it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 72.64it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.76it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.92it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.53it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.97it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 67.86it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.42it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.00it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.87it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.53it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.76it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.93it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.49it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.69it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 71.71it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.92it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.78it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.09it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.73it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.69it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.26it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 45.97it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.02it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.97it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.71it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.77it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.47it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.90it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.82it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.95it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 56.33it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.12it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.65it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.72it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 71.91it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.69it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.96it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.94it/s]
100%|█████████████████████████████████████████████████████████████| 108/108 [00:01<00:00, 95.22it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.60it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.89it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.09it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.82it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.05it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.74it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.96it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.98it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.14it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.49it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.81it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.61it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.91it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.73it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.10it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.64it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.50it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.84it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.94it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.64it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.64it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.22it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.18it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.55it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.70it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.94it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.65it/s]
100%|███████████████████████████████████████████████████████████████| 99/99 [00:01<00:00, 86.76it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.88it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.96it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.99it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.18it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 72.44it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.04it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.30it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.15it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.10it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.02it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.71it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.70it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.00it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.11it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.84it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.10it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.69it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 38.74it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.07it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.81it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.40it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.22it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.07it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.86it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.02it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.76it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.46it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 56.41it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.82it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.36it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.72it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.79it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.63it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.01it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.45it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.55it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.79it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.83it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.83it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.86it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.66it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.74it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.69it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.50it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.35it/s]
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.93it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.13it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.62it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.94it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 71.42it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.73it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.10it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.94it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.56it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.73it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.93it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.95it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.65it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.61it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 54.39it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 79.22it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.60it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.93it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.67it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.07it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.59it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.97it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.67it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 79.79it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.57it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.73it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.41it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.60it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 61.94it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.72it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.13it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.00it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.10it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.29it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 62.59it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.82it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.01it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.69it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 78.35it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.99it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.72it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 71.07it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.05it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.27it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 38.75it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.46it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.89it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.76it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.96it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.92it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.11it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.51it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.72it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.53it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.46it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.83it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.95it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 56.20it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.97it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.48it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.57it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.40it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.25it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 38.24it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.42it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.89it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.92it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.09it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.63it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.87it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.66it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.55it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 37.70it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.34it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.22it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.23it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.52it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 30.97it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.78it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.85it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.85it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.08it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.02it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.68it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 16.02it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.82it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.71it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.90it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.95it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.96it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.51it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 54.34it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.79it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 54.95it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.30it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.92it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.74it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.19it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 62.14it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 71.20it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.31it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.88it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.32it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.68it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.13it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.84it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.85it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.89it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.56it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.75it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.67it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.04it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.84it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.44it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.88it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.22it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.78it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.98it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.48it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.92it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.70it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.89it/s]
No data in one of the given range
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.22it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.15it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.53it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.94it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.10it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.84it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.27it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.70it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 16.05it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.51it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.68it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.87it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.86it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.76it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.29it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 37.36it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.63it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.73it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.88it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.58it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.75it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.67it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.73it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.14it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 68.83it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.66it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.78it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.61it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 80.24it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.45it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.98it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 16.05it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.36it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.02it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 54.61it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.52it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.75it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 60.74it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  8.04it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.02it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.28it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.37it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.08it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.80it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.04it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.79it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.92it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 70.71it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.89it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.32it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.92it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.15it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.41it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.30it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.71it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 79.02it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.34it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.82it/s]
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.78it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.24it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.65it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.95it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 16.06it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.16it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.20it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.21it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.91it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.46it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.32it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.32it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.81it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.84it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.60it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.64it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.33it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.73it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.23it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.76it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.72it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 56.39it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.48it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 71.37it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.69it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.34it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.74it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.86it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.66it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 60.41it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.89it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.73it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 71.79it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.01it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 16.04it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.03it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 16.15it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.89it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.75it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.18it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 54.04it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.20it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 51.96it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.11it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.46it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.40it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.99it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.63it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.89it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.88it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 71.10it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.08it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.48it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 62.83it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.35it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.54it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.08it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 24.02it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.43it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.10it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.20it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 56.02it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.76it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.53it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.14it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.61it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 79.71it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.72it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 62.02it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.17it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.38it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.35it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.78it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.98it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 56.06it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.24it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.42it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.85it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.61it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.71it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.23it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.60it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.83it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.63it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 56.10it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.35it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.57it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.78it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.41it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.86it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 72.07it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 80.22it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.59it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.84it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.93it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.72it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.18it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.92it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 71.76it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.27it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.56it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.96it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.94it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.77it/s]
100%|███████████████████████████████████████████████████████████████| 99/99 [00:01<00:00, 87.17it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.73it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.73it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.59it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.96it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.65it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.95it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 79.25it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.58it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 48.06it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 71.87it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.63it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.86it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.69it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.55it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.86it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.53it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.70it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.38it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.61it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.95it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.76it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.99it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.99it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 54.21it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.73it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.95it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.96it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.36it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.80it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.81it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.73it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.06it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.89it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 40.13it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 32.04it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.93it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.12it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 63.49it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.63it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.52it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.81it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.88it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.56it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.80it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.14it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.65it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 64.08it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.65it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 47.74it/s]
100%|███████████████████████████████████████████████████████████████| 99/99 [00:01<00:00, 86.55it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.92it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.59it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 55.88it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 71.76it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  7.91it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 46.76it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 54.26it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 39.33it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 31.71it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 23.95it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 15.52it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 48.79it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.60it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.62it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.61it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.16it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.87it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.48it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.97it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.81it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.95it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.02it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 22.85it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.75it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.86it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.72it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.50it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.73it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 39.71it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.68it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.57it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.74it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.08it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.82it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.64it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.73it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.83it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.58it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.95it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.18it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.48it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.66it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.87it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.79it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.71it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.98it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 36.22it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.81it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.95it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.86it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.01it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.94it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.49it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.82it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.94it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.34it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.87it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 30.13it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.89it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.56it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 57.96it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.78it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.82it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.76it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.73it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.40it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.97it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.41it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.72it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.79it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.90it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.88it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.03it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.70it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.95it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.73it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.94it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.15it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 24.01it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.68it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.74it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.06it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.76it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.52it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.87it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.22it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 57.78it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.76it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.88it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.97it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 36.00it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.26it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.59it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.41it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.74it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.80it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.77it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.83it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.88it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.87it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.66it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.53it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.93it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.79it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.81it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.78it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.91it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.71it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.36it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.91it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.85it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.15it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 30.03it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.69it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.82it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.74it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.85it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 18.01it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.31it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.89it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.27it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.84it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.16it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.96it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 18.05it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.35it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.77it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.74it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.84it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.64it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.70it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.94it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 59.21it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.89it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 59.65it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.63it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.56it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.60it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.90it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.45it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.37it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.61it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.48it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.96it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.85it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.85it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.74it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.70it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.95it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.93it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.01it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.36it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.78it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.53it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 58.83it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.56it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.90it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.89it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.52it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.67it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.49it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.97it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 12.00it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.82it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.73it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.19it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.88it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.77it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.44it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.71it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.40it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.90it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.58it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.75it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.58it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.97it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 22.53it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.71it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.50it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.83it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.88it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.39it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.92it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.18it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.18it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.68it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.43it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.70it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.97it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.99it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.69it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.88it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.96it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.78it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.75it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.12it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.85it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.91it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.62it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.44it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 58.16it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.68it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.97it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.75it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.95it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.16it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.51it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.82it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.80it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.39it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.88it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.78it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.85it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.57it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 30.07it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.87it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.95it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.61it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.66it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.61it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.71it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 12.11it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.30it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.51it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.56it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.87it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.45it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.36it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.86it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.64it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.95it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.46it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 18.06it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.48it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.40it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.52it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.91it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.04it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.83it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.17it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.88it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.81it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 54.01it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  6.01it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 30.11it/s]
100%|███████████████████████████████████████████████████████████████| 99/99 [00:01<00:00, 63.19it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.66it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.79it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.78it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.48it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 36.16it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.04it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.43it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.18it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.04it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.67it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.62it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.72it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.67it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.31it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.33it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.91it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.71it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.96it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.80it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.72it/s]
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.82it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.87it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.65it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.95it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.99it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.53it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.81it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.82it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.83it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.19it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.74it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.69it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.84it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.82it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.10it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.37it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 18.01it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.39it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.68it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 22.99it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.82it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.83it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.49it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.26it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.69it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.64it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.99it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.62it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.03it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.86it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.89it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.25it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.73it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.39it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.83it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.97it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.90it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.79it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 12.00it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.73it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.81it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.90it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.70it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.76it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.13it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.80it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.65it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 54.14it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.04it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.90it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.90it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.77it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.80it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.48it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.15it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.03it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 18.06it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.51it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.18it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.94it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 36.10it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.83it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.90it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.66it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.64it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.31it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 24.00it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 42.28it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.64it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.60it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.97it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.58it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.87it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.61it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.92it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.23it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.55it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.11it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.89it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 36.01it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.73it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.64it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.65it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.97it/s]
100%|███████████████████████████████████████████████████████████████| 99/99 [00:01<00:00, 64.34it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.89it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 24.11it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.76it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.61it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.85it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.67it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.75it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.91it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.90it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.87it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.81it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.85it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.82it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.08it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.94it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 18.03it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.29it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.82it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.01it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.75it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.02it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.11it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.89it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.78it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.78it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.89it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.52it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.56it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.70it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.64it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.62it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.86it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 30.11it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.86it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.61it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.28it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.96it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.35it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.59it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.76it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.81it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 48.23it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.23it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.37it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.84it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.43it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.88it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.85it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.01it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.62it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.82it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.69it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.88it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.70it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.63it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.07it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.82it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.95it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.89it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.37it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.80it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.87it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.48it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.72it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 30.03it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 12.02it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.56it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.87it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.68it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.39it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.45it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.41it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.71it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.47it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 54.24it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.00it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.94it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.85it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.67it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.09it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.73it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.57it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 22.52it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.80it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.82it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.34it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.86it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.69it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.81it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 52.27it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.39it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.92it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.66it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.90it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.01it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.93it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.66it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 36.05it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.87it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.81it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.95it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 52.94it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.61it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.71it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.64it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.16it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.96it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.76it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 32.91it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.92it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.97it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.77it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.85it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.90it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.78it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.92it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.47it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 48.16it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.85it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.86it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.35it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 22.96it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.77it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.56it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.96it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.84it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.75it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.66it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.96it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.68it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.91it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.13it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.09it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.81it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 57.37it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.77it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.72it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.69it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.81it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.61it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.80it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 30.06it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.57it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.82it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 36.00it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.59it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 59.64it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.12it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.83it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.64it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.70it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.59it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.69it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.91it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 12.03it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.13it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.53it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.30it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.28it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.98it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.61it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.59it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.66it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.84it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.73it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.87it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.84it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.43it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.58it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 24.05it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.63it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.98it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.78it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.80it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.27it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.51it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.74it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.34it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.49it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.75it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.80it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.21it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.81it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.27it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 54.14it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.63it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.67it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.31it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.90it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.79it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.89it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 58.90it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.67it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.82it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.73it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.21it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.88it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.84it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.88it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.87it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.71it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.54it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.57it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.18it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 12.01it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 58.27it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.31it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.25it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 48.17it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.07it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.80it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.83it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 39.03it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.76it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.59it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.66it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.39it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 22.80it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.65it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.46it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.17it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.74it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.98it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.67it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.53it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.10it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.76it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.41it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.94it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.53it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.25it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.65it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.82it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.21it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.37it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.58it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.21it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.40it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.74it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 52.32it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.47it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.16it/s]
100%|███████████████████████████████████████████████████████████████| 99/99 [00:01<00:00, 61.91it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 27.95it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.68it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 39.77it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.54it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.29it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.21it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.37it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.68it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.18it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.50it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.28it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.17it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.07it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.57it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.65it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.30it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.95it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.75it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 22.97it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.99it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 27.77it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.36it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.85it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.23it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.63it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.30it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.68it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.91it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.21it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.50it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.10it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.59it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.25it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.80it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.79it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.41it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.31it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.43it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.36it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.81it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 45.58it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.99it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.47it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.66it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.76it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.73it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.10it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.44it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.88it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.03it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.88it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.54it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 54.02it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.58it/s]
100%|█████████████████████████████████████████████████████████████| 108/108 [00:01<00:00, 68.13it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.15it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.81it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.71it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.12it/s]
100%|███████████████████████████████████████████████████████████████| 99/99 [00:01<00:00, 64.53it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.75it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.78it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 57.81it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.55it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.55it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.66it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.82it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.45it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.91it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.21it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.81it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.91it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 36.05it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.74it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.41it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.63it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.07it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.48it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.81it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.91it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.17it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.12it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.73it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.99it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.38it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.81it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.33it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.88it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.52it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.04it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.23it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.87it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.41it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.77it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.78it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 24.11it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.90it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.24it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.64it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.85it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.75it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.36it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.98it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.68it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.53it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.92it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.90it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.80it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.77it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.54it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.12it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.54it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.54it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 58.23it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.31it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.68it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.03it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.60it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.68it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.34it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.40it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.56it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 33.90it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.17it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.83it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.97it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.74it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 36.01it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.33it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 22.96it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.44it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.62it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 12.00it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.79it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 18.20it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 22.79it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.60it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.80it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 59.46it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.63it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.46it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.89it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.58it/s]
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.81it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.91it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.95it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.66it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.84it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 30.01it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.67it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.54it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.10it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.79it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.41it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.80it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.30it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.52it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.41it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.93it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.24it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.50it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.63it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.80it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.72it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.64it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.82it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.91it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.77it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.88it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.38it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.88it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 58.39it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.86it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.75it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.83it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.76it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.97it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.20it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.25it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.32it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.88it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.90it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.26it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.98it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.32it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.96it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.87it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 22.96it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.71it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.08it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.46it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.85it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 12.01it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 51.44it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.81it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.56it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.99it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.79it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.58it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.06it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.59it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.40it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.85it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.92it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.70it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.57it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 36.04it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.88it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.88it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.97it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.32it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.61it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.67it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.37it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.98it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.56it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.50it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.94it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.83it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.11it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.58it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.99it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.64it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.70it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.00it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.87it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.91it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.10it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.64it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.98it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.42it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.84it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.03it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.59it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.59it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.81it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 30.07it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.42it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.90it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.84it/s]
100%|█████████████████████████████████████████████████████████████| 108/108 [00:01<00:00, 67.81it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 22.68it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.94it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.86it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.94it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.56it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.83it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.78it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.44it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.59it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.53it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.41it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.67it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.21it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.19it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.81it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.75it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.48it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 30.17it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.37it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.58it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.80it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.73it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.70it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 58.93it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.36it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.19it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.76it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.28it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.50it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.31it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.44it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 39.97it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.58it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.03it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.22it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.37it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.59it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.80it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.65it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.43it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.10it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 52.77it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 36.00it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.51it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 33.25it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.36it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.67it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.54it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.74it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.57it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.61it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.59it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.95it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.84it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.82it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.90it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.41it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 21.89it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.89it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.49it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 16.92it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 59.37it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.20it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.72it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.59it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.52it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.78it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.88it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.96it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.27it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.67it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.73it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.78it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 33.90it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.74it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.13it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.78it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.78it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.56it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.56it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.47it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.81it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.31it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.72it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.56it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.96it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.52it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.26it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 12.01it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.75it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.61it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.56it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 59.02it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.83it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.73it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.93it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.61it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.97it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.68it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.65it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.97it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.82it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.72it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.03it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.87it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.24it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.66it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.57it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.31it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.78it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.75it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.73it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.98it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.73it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.52it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 52.74it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.48it/s]
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.76it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 30.17it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.49it/s]
No data in one of the given range
No data in one of the given range
 49%|██████████████████████████████▋                                | 35/72 [00:01<00:01, 34.52it/s](fCut = 18.7976 Hz) <= f_min = 20
f_max <= f_min
XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): (fCut = 18.7976 Hz) <= f_min = 20

XLAL Error - IMRPhenomXPHM_hplushcross (./LALSimIMRPhenomXPHM.c:752): Input domain error
XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): IMRPhenomXPHM_hplushcross failed to generate IMRPhenomXHM waveform.

XLAL Error - XLALSimIMRPhenomXPHM (./LALSimIMRPhenomXPHM.c:328): Internal function call failed: Input domain error
XLAL Error - XLALSimInspiralChooseFDWaveform_legacy (LALSimInspiralGeneratorLegacy.c:2577): Internal function call failed: Input domain error
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.91it/s]
[gwsnr] Waveform generation failed (likely fCut <= f_min for high-mass systems). Returning SNR=0 for those samples. If this happens often, try again with input argument: mtot_cut=True (and/or lower mtot_max).
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.19it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.46it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.98it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.87it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.78it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.30it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.45it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.01it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.13it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.61it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.12it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.35it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.22it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.85it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.42it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.89it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.87it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.27it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.03it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.66it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.71it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 16.71it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.30it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.80it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.85it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.46it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.69it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.74it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.39it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.50it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.59it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.68it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.64it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.89it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.80it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.90it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.65it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.67it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.94it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.46it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.48it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.17it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.77it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.65it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.17it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 53.38it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.71it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.95it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.78it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.72it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 18.08it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.31it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.38it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.89it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.97it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.33it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 46.75it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 58.63it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.56it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.87it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 16.86it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.63it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.85it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 24.02it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.14it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.73it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.68it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.94it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.43it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 42.22it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.30it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.79it/s]
100%|███████████████████████████████████████████████████████████████| 81/81 [00:01<00:00, 51.85it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.56it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.61it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.81it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.85it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.42it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.44it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.85it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.84it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.57it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.11it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.03it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.36it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.41it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.58it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.68it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.78it/s]
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 33.96it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.14it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.72it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.60it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.72it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.99it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.80it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 47.73it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.53it/s]
100%|███████████████████████████████████████████████████████████████| 72/72 [00:01<00:00, 48.00it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.51it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.96it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.05it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 24.01it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.49it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.83it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 28.81it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.50it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.63it/s]
100%|███████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 57.08it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.95it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.18it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.45it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.52it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.87it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.91it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 41.00it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.57it/s]
100%|███████████████████████████████████████████████████████████████| 18/18 [00:01<00:00, 11.45it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.59it/s]
100%|███████████████████████████████████████████████████████████████| 45/45 [00:01<00:00, 29.85it/s]
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.51it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.93it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 34.52it/s]
100%|███████████████████████████████████████████████████████████████| 54/54 [00:01<00:00, 35.86it/s]
100%|███████████████████████████████████████████████████████████████| 27/27 [00:01<00:00, 17.40it/s]
100%|█████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00,  5.99it/s]
No data in one of the given range
No data in one of the given range
100%|███████████████████████████████████████████████████████████████| 63/63 [00:01<00:00, 40.81it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 24.22it/s]
100%|███████████████████████████████████████████████████████████████| 36/36 [00:01<00:00, 23.82it/s]
final size: 50013

json file saved at: ./ler_data/IMRPhenomXPHM_O4_high_asd_L1_3.json

Additional random samples

[8]:
from gwsnr import GWSNR
import numpy as np

gwsnr = GWSNR(
    npool=6,  # number of processes
    # GWSNR parameters
    sampling_frequency=2048.,
    waveform_approximant='IMRPhenomXPHM',  # spin-precessing waveform model
    minimum_frequency=20.,
    psds={'L1':'aLIGO_O4_high_asd.txt'}, # chosen interferometer is 'L1'. If multiple network SNR will be considered.
    snr_method='inner_product',  # 'interpolation' or 'inner_product'
)

Initializing GWSNR class...

Intel processor has trouble allocating memory when the data is huge. So, by default for IMRPhenomXPHM, duration_max = 64.0. Otherwise, set to some max value like duration_max = 600.0 (10 mins)

Chosen GWSNR initialization parameters:

npool:  6
snr type:  inner_product
waveform approximant:  IMRPhenomXPHM
sampling frequency:  2048.0
minimum frequency (fmin):  20.0
reference frequency (f_ref):  20.0
mtot=mass1+mass2
min(mtot):  9.96
max(mtot) (with the given fmin=20.0): 235.0
detectors:  ['L1']
psds:  [[array([  10.21659,   10.23975,   10.26296, ..., 4972.81   ,
       4984.081  , 4995.378  ], shape=(2736,)), array([4.43925574e-41, 4.22777986e-41, 4.02102594e-41, ...,
       6.51153524e-46, 6.43165104e-46, 6.55252996e-46],
      shape=(2736,)), <scipy.interpolate._interpolate.interp1d object at 0x14bced620>]]


[9]:
# gerneral case, random parameters
np.random.seed(64)
nsamples = 50000
mtot = np.random.uniform(2*4.98, 2*112.5,nsamples)
mass_ratio = np.random.uniform(0.2,1,size=nsamples)
param_dict = dict(
    # convert to component masses
    mass_1 = mtot / (1 + mass_ratio),
    mass_2 = mtot * mass_ratio / (1 + mass_ratio),
    # Fix luminosity distance
    luminosity_distance = np.random.uniform(40, 10000, size=nsamples),  # Random luminosity distance between 40 and 10000 Mpc
    # Randomly sample everything else:
    theta_jn = np.random.uniform(0,2*np.pi, size=nsamples),
    ra = np.random.uniform(0,2*np.pi, size=nsamples),
    dec = np.random.uniform(-np.pi/2,np.pi/2, size=nsamples),
    psi = np.random.uniform(0,2*np.pi, size=nsamples),
    phase = np.random.uniform(0,2*np.pi, size=nsamples),
    geocent_time = 1246527224.169434*np.ones(nsamples),
    # spin zero
    a_1 = np.random.uniform(0.0,0.8, size=nsamples),
    a_2 = np.random.uniform(0.0,0.8, size=nsamples),
    tilt_1 = np.random.uniform(0, np.pi, size=nsamples),  # tilt angle of the primary black hole in radians
    tilt_2 = np.random.uniform(0, np.pi, size=nsamples),
    phi_12 = np.random.uniform(0, 2*np.pi, size=nsamples),  # Relative angle between the primary and secondary spin of the binary in radians
    phi_jl = np.random.uniform(0, 2*np.pi, size=nsamples),  # Angle between the total angular momentum and the orbital angular momentum in radians
)

snrs_ = gwsnr.optimal_snr(gw_param_dict=param_dict)
# time: 0.2 s for 50000 samples with 8 processes
100%|████████████████████████████████████████████████████████| 50000/50000 [01:00<00:00, 820.66it/s]
[10]:
param_dict.update(snrs_)
from gwsnr.utils import append_json
append_json(
    file_name="ler_data/IMRPhenomXPHM_O4_high_asd_L1_4.json",
    new_dictionary =param_dict,
    replace=True,  # set to True if you want to replace the existing data
);
[ ]:

[ ]:

Combine all the data files into one

L1 detector

[1]:
import numpy as np
import matplotlib.pyplot as plt
from ler.utils import TrainingDataGenerator

tdg = TrainingDataGenerator()
tdg.combine_dicts(
    file_name_list=["IMRPhenomXPHM_O4_high_asd_L1_1.json", "IMRPhenomXPHM_O4_high_asd_L1_2.json", "IMRPhenomXPHM_O4_high_asd_L1_3.json", "IMRPhenomXPHM_O4_high_asd_L1_4.json"],
    detector='L1',
    output_jsonfile="IMRPhenomXPHM_O4_high_asd_L1.json",
)
json file saved at: ./ler_data/IMRPhenomXPHM_O4_high_asd_L1.json

[2]:
# from gwsnr.utils import get_param_from_json
# test1 = get_param_from_json("./ler_data/IMRPhenomXPHM_O4_high_asd_L1.json")

# snr = np.array(test1['L1'])
# print(f"Number of samples: {len(snr)}")

# plt.figure(figsize=[4,4])
# plt.hist(snr, bins=100, density=True, alpha=0.5, color='b', histtype='step', label='L1')
# plt.xlim([0, 40])
# plt.xlabel('Optimal SNR')
# plt.ylabel('Density')
# plt.legend()
# plt.show()

ANN model training and testing

[1]:
import numpy as np
import matplotlib.pyplot as plt
from gwsnr.ann import ANNModelGenerator
[2]:
amg = ANNModelGenerator(
    directory='./ann_data',
    npool=6,
    gwsnr_verbose=False,
    snr_th=10.0,
    waveform_approximant="IMRPhenomXPHM",
    psds={'L1': 'aLIGO_O4_high_asd.txt'},
)

Initializing GWSNR class...

Intel processor has trouble allocating memory when the data is huge. So, by default for IMRPhenomXPHM, duration_max = 64.0. Otherwise, set to some max value like duration_max = 600.0 (10 mins)
Interpolator will be loaded for L1 detector from ./interpolator_json/L1/partialSNR_dict_2.json


[3]:
# amg.ann_model_training(
#     gw_param_dict='ler_data/IMRPhenomXPHM_O4_high_asd_L1.json', # you can also get the dict from a json file first
#     randomize=True,
#     test_size=0.1,
#     random_state=42,
#     num_nodes_list = [5, 32, 32, 1],
#     activation_fn_list = ['relu', 'relu', 'sigmoid', 'linear'],
#     optimizer='adam',
#     loss='mean_squared_error',
#     metrics=['accuracy'],
#     batch_size=32,
#     epochs=100,
#     error_adjustment_snr_range=[2,14],
#     ann_file_name = 'ann_model_L1.h5',
#     scaler_file_name = 'scaler_L1.pkl',
#     error_adjustment_file_name='error_adjustment_L1.json',
#     ann_path_dict_file_name='ann_path_dict.json',
# )

# Uncomment the following, if you have already trained the model
# load the trained model
amg.load_model_scaler_error(
    ann_file_name='ann_model_L1.h5',
    scaler_file_name='scaler_L1.pkl',
    error_adjustment_file_name='error_adjustment_L1.json',
)
[3]:
(<Sequential name=sequential, built=True>,
 StandardScaler(),
 {'slope': array(0.0143835), 'intercept': array(-0.2047848)})
[4]:
amg.pdet_error(
    gw_param_dict='ler_data/IMRPhenomXPHM_O4_high_asd_L1.json',
)

7820/7820 ━━━━━━━━━━━━━━━━━━━━ 2s 310us/step
Error: 2.95%
[4]:
(np.float64(2.9494634614231763),
 array([15.85704517, 10.32171462, 11.41500321, ...,  1.63904096,
        13.03172198, 16.87122697], shape=(250215,)),
 array([15.9059577 , 10.31416001, 11.13792754, ...,  1.81094903,
        13.15259668, 16.67977463], shape=(250215,)))
[5]:
amg.pdet_confusion_matrix(
    gw_param_dict='ler_data/IMRPhenomXPHM_O4_high_asd_L1.json',
)

7820/7820 ━━━━━━━━━━━━━━━━━━━━ 2s 308us/step
[[138658   3710]
 [  3670 104177]]
Accuracy: 97.051%
[5]:
(array([[138658,   3710],
        [  3670, 104177]]),
 97.05053653857682,
 array([ True,  True, False, ..., False,  True, False],
       shape=(250215,)),
 array([ True,  True, False, ..., False,  True, False],
       shape=(250215,)))
[6]:
# predicted snr
pred_snr= amg.predict_snr(gw_param_dict='ler_data/IMRPhenomXPHM_O4_high_asd_L1.json')
# true snr
true_snr = amg._get_parameters(gw_param_dict='ler_data/IMRPhenomXPHM_O4_high_asd_L1.json')['optimal_snr_L1']
# select only snr between 4 and 12
snr_min = 4
snr_max = 12
mask = (true_snr >= snr_min) & (true_snr <= snr_max)
true_snr = true_snr[mask]
pred_snr = pred_snr[mask]

# plot the predicted snr vs true snr
plt.figure(figsize=[4,4])
plt.scatter(true_snr, pred_snr, s=1)
snr_lim = [np.min([true_snr, true_snr]), np.max([true_snr, true_snr])]
plt.plot(snr_lim, snr_lim, 'r--')
plt.xlabel('True SNR')
plt.ylabel('Predicted SNR')
plt.xlim([snr_min, snr_max])
# plt.ylim([snr_min, snr_max])
plt.show()
7820/7820 ━━━━━━━━━━━━━━━━━━━━ 2s 301us/step
../_images/examples_model_generation_26_1.png
[9]:
# use the following function to predict the pdet
pred_pdet = amg.predict_pdet(gw_param_dict='ler_data/IMRPhenomXPHM_O4_high_asd_L1.json', snr_threshold=10.0)

true_snr = amg._get_parameters(gw_param_dict='ler_data/IMRPhenomXPHM_O4_high_asd_L1.json')['optimal_snr_L1']
# true pdet
true_pdet = np.array([1 if snr >= 10.0 else 0 for snr in true_snr])

from sklearn.metrics import confusion_matrix, accuracy_score
cm = confusion_matrix(true_pdet, pred_pdet)
print(cm)

acc = accuracy_score(true_pdet, pred_pdet)
print(acc)

7820/7820 ━━━━━━━━━━━━━━━━━━━━ 2s 307us/step
[[138658   3710]
 [  3670 104177]]
0.9705053653857683
[ ]:

3. Implementation of the ANN model in GWSNR

Astrophysical data

Generate new astrophysical data and test the model on it using GWSNR class.

[1]:
from ler import GWRATES

ler = GWRATES(
    npool=6,  # number of processes
    waveform_approximant="IMRPhenomXPHM",
    # psds={'L1': 'aLIGO_O4_high_asd.txt'},
    snr_method='inner_product',
    mtot_cut=False,
    pdet_kwargs=dict(
        snr_th=10.0,
        snr_th_net=10.0,
        pdet_type="boolean",
        distribution_type="fixed_snr",
        include_optimal_snr=True,
        include_observed_snr=False,
    ),
)

Initializing GWRATES class...


Initializing CBCSourceRedshiftDistribution class...

luminosity_distance interpolator will be loaded from ./interpolator_json/luminosity_distance/luminosity_distance_0.json
differential_comoving_volume interpolator will be loaded from ./interpolator_json/differential_comoving_volume/differential_comoving_volume_0.json
using ler available merger rate density model: merger_rate_density_madau_dickinson_belczynski_ng
merger_rate_density_madau_dickinson_belczynski_ng interpolator will be loaded from ./interpolator_json/merger_rate_density/merger_rate_density_madau_dickinson_belczynski_ng_0.json
merger_rate_density_madau_dickinson_belczynski_ng_detector_frame interpolator will be loaded from ./interpolator_json/merger_rate_density/merger_rate_density_madau_dickinson_belczynski_ng_detector_frame_1.json
merger_rate_density_based_source_redshift interpolator will be loaded from ./interpolator_json/merger_rate_density_based_source_redshift/merger_rate_density_based_source_redshift_0.json

Initializing CBCSourceParameterDistribution class...

using ler available zs function : merger_rate_density_based_source_redshift
using ler available mass_1_source function : broken_powerlaw_plus_2peaks
broken_powerlaw_plus_2peaks interpolator will be loaded from ./interpolator_json/mass_1_source/broken_powerlaw_plus_2peaks_0.json
using ler available mass_ratio function : powerlaw_with_smoothing
powerlaw_with_smoothing interpolator will be loaded from ./interpolator_json/mass_ratio/powerlaw_with_smoothing_0.json
No mass_2_source prior provided. mass_2_source = mass_1_source * mass_ratio
using ler available geocent_time function : uniform
using ler available ra function : uniform
using ler available dec function : sampler_cosine
using ler available phase function : uniform
using ler available psi function : uniform
using ler available theta_jn function : sampler_sine
using ler available a_1 function : uniform
using ler available a_2 function : uniform
No tilt_1 prior provided. tilt_1 prior will be set to None
No tilt_2 prior provided. tilt_2 prior will be set to None
No phi_12 prior provided. phi_12 prior will be set to None
No phi_jl prior provided. phi_jl prior will be set to None
Initializing GW parameter samplers...


Initializing GWSNR class...

psds not given. Choosing bilby's default psds
Intel processor has trouble allocating memory when the data is huge. So, by default for IMRPhenomXPHM, duration_max = 64.0. Otherwise, set to some max value like duration_max = 600.0 (10 mins)

Chosen GWSNR initialization parameters:

npool:  6
snr type:  inner_product
waveform approximant:  IMRPhenomXPHM
sampling frequency:  2048.0
minimum frequency (fmin):  20.0
reference frequency (f_ref):  20.0
mtot=mass1+mass2
min(mtot):  1.0
max(mtot) (with the given fmin=20.0): 500.0
detectors:  ['L1', 'H1', 'V1']
psds:  [[array([  10.21659,   10.23975,   10.26296, ..., 4972.81   ,
       4984.081  , 4995.378  ], shape=(2736,)), array([4.43925574e-41, 4.22777986e-41, 4.02102594e-41, ...,
       6.51153524e-46, 6.43165104e-46, 6.55252996e-46],
      shape=(2736,)), <scipy.interpolate._interpolate.interp1d object at 0x12d01db70>], [array([  10.21659,   10.23975,   10.26296, ..., 4972.81   ,
       4984.081  , 4995.378  ], shape=(2736,)), array([4.43925574e-41, 4.22777986e-41, 4.02102594e-41, ...,
       6.51153524e-46, 6.43165104e-46, 6.55252996e-46],
      shape=(2736,)), <scipy.interpolate._interpolate.interp1d object at 0x12dbe7100>], [array([   10.      ,    10.02306 ,    10.046173, ...,
        9954.0389  ,  9976.993   , 10000.      ], shape=(3000,)), array([1.22674387e-42, 1.20400299e-42, 1.18169466e-42, ...,
       1.51304203e-43, 1.52010157e-43, 1.52719372e-43],
      shape=(3000,)), <scipy.interpolate._interpolate.interp1d object at 0x12dbe71f0>]]


#----------------------------------------
# GWRATES initialization input arguments:
#----------------------------------------

    # GWRATES set up input arguments:
    npool = 6,
    z_min = 0.0,
    z_max = 10.0,
    event_type = 'BBH',
    cosmology = LambdaCDM(H0=70.0 km / (Mpc s), Om0=0.3, Ode0=0.7, Tcmb0=0.0 K, Neff=3.04, m_nu=None, Ob0=0.0),
    pdet_finder = <bound method GWSNR.pdet of <gwsnr.core.gwsnr.GWSNR object at 0x1289f6950>>,
    json_file_names = dict(
        gwrates_params = 'gwrates_params.json',
        gw_param = 'gw_param.json',
        gw_param_detectable = 'gw_param_detectable.json',
    ),
    interpolator_directory = './interpolator_json',
    ler_directory = './ler_data',

    # GWRATES also takes other CBCSourceParameterDistribution class input arguments as kwargs, as follows:
    gw_priors = dict(
        zs = 'merger_rate_density_based_source_redshift',
        mass_1_source = 'broken_powerlaw_plus_2peaks',
        mass_ratio = 'powerlaw_with_smoothing',
        mass_2_source = None,
        geocent_time = 'uniform',
        ra = 'uniform',
        dec = 'sampler_cosine',
        phase = 'uniform',
        psi = 'uniform',
        theta_jn = 'sampler_sine',
        a_1 = 'uniform',
        a_2 = 'uniform',
        tilt_1 = None,
        tilt_2 = None,
        phi_12 = None,
        phi_jl = None,
    ),
    gw_priors_params = dict(
        zs = None,
        mass_1_source = {'param_name': 'mass_1_source', 'sampler_type': 'broken_powerlaw_plus_2peaks', 'lam_0': 0.361, 'lam_1': 0.586, 'mpp_1': 9.764, 'sigpp_1': 0.649, 'mpp_2': 32.763, 'sigpp_2': 3.918, 'mlow_1': 5.059, 'delta_m_1': 4.321, 'break_mass': 35.622, 'alpha_1': 1.728, 'alpha_2': 4.512, 'mmax': 300.0, 'normalization_size': 500},
        mass_ratio = {'param_name': 'mass_ratio', 'sampler_type': 'powerlaw_with_smoothing', 'q_min': 0.01, 'q_max': 1.0, 'mlow_2': 3.551, 'mmax': 300.0, 'beta': 1.171, 'delta_m': 4.91, 'mmin': 3.551},
        mass_2_source = None,
        geocent_time = {'param_name': 'geocent_time', 'sampler_type': 'uniform', 'x_min': 1238166018, 'x_max': 1269702018},
        ra = {'param_name': 'ra', 'sampler_type': 'uniform', 'x_min': 0.0, 'x_max': 6.283185307179586},
        dec = {'param_name': 'dec', 'sampler_type': 'sampler_cosine', 'x_min': -1.5707963267948966, 'x_max': 1.5707963267948966},
        phase = {'param_name': 'phase', 'sampler_type': 'uniform', 'x_min': 0.0, 'x_max': 6.283185307179586},
        psi = {'param_name': 'psi', 'sampler_type': 'uniform', 'x_min': 0.0, 'x_max': 3.141592653589793},
        theta_jn = {'param_name': 'theta_jn', 'sampler_type': 'sampler_sine', 'x_min': 0.0, 'x_max': 3.141592653589793},
        a_1 = {'param_name': 'a_1', 'sampler_type': 'uniform', 'x_min': -1.0, 'x_max': 1.0},
        a_2 = {'param_name': 'a_2', 'sampler_type': 'uniform', 'x_min': -1.0, 'x_max': 1.0},
        tilt_1 = None,
        tilt_2 = None,
        phi_12 = None,
        phi_jl = None,
    ),
    spin_zero = False,
    spin_precession = False,

    # GWRATES also takes other gwsnr.GWSNR input arguments as kwargs, as follows:
    npool = 6,
    snr_method = 'inner_product',
    snr_type = 'optimal_snr',
    gwsnr_verbose = True,
    multiprocessing_verbose = True,
    pdet_kwargs = dict(
        snr_th = 10.0,
        snr_th_net = 10.0,
        pdet_type = 'boolean',
        distribution_type = 'fixed_snr',
        include_optimal_snr = True,
        include_observed_snr = False,
    ),
    mtot_min = 1.0,
    mtot_max = 500.0,
    ratio_min = 0.1,
    ratio_max = 1.0,
    spin_max = 0.99,
    mtot_resolution = 200,
    ratio_resolution = 20,
    spin_resolution = 10,
    batch_size_interpolation = 1000000,
    interpolator_dir = './interpolator_json',
    create_new_interpolator = False,
    sampling_frequency = 2048.0,
    waveform_approximant = 'IMRPhenomXPHM',
    frequency_domain_source_model = 'lal_binary_black_hole',
    minimum_frequency = 20.0,
    reference_frequency = None,
    duration_max = None,
    duration_min = None,
    fixed_duration = None,
    mtot_cut = False,
    psds = None,
    ifos = None,
    noise_realization = None,
    ann_path_dict = None,
    snr_recalculation = False,
    snr_recalculation_range = [6, 14],
    snr_recalculation_waveform_approximant = 'IMRPhenomXPHM',
    psds_list = [[array([  10.21659,   10.23975,   10.26296, ..., 4972.81   ,
       4984.081  , 4995.378  ], shape=(2736,)), array([4.43925574e-41, 4.22777986e-41, 4.02102594e-41, ...,
       6.51153524e-46, 6.43165104e-46, 6.55252996e-46],
      shape=(2736,)), <scipy.interpolate._interpolate.interp1d object at 0x12d01db70>], [array([  10.21659,   10.23975,   10.26296, ..., 4972.81   ,
       4984.081  , 4995.378  ], shape=(2736,)), array([4.43925574e-41, 4.22777986e-41, 4.02102594e-41, ...,
       6.51153524e-46, 6.43165104e-46, 6.55252996e-46],
      shape=(2736,)), <scipy.interpolate._interpolate.interp1d object at 0x12dbe7100>], [array([   10.      ,    10.02306 ,    10.046173, ...,
        9954.0389  ,  9976.993   , 10000.      ], shape=(3000,)), array([1.22674387e-42, 1.20400299e-42, 1.18169466e-42, ...,
       1.51304203e-43, 1.52010157e-43, 1.52719372e-43],
      shape=(3000,)), <scipy.interpolate._interpolate.interp1d object at 0x12dbe71f0>]],
[2]:
gw_params = ler.gw_cbc_statistics(size=100000, batch_size=50000, resume=True, output_jsonfile="IMRPhenomXPHM_O4_high_asd_L1_5.json")
Simulated GW params will be stored in ./ler_data/IMRPhenomXPHM_O4_high_asd_L1_5.json
resuming from ./ler_data/IMRPhenomXPHM_O4_high_asd_L1_5.json
gw parameters already sampled.
[4]:
gw_params.keys()
[4]:
dict_keys(['zs', 'mass_1_source', 'mass_ratio', 'mass_2_source', 'geocent_time', 'ra', 'dec', 'phase', 'psi', 'theta_jn', 'a_1', 'a_2', 'luminosity_distance', 'mass_1', 'mass_2', 'pdet_L1', 'optimal_snr_L1', 'pdet_H1', 'optimal_snr_H1', 'pdet_V1', 'optimal_snr_V1', 'pdet_net', 'optimal_snr_net'])
  • using GWSNR class, with the trained ANN model, you can generate SNR of the astrophysical GW signal parameters

[ ]:
import numpy as np
import matplotlib.pyplot as plt
from gwsnr import GWSNR

gwsnr = GWSNR(
    snr_method='ann',
    npool=6,  # number of processes
    waveform_approximant="IMRPhenomXPHM",
    # psds={'L1': 'aLIGO_O4_high_asd.txt'},
    ann_path_dict='./ann_data/ann_path_dict.json',
    mtot_cut=False,
    pdet_kwargs=dict(
        snr_th=10.0,
        snr_th_net=10.0,
        pdet_type="boolean",
        distribution_type="fixed_snr",
        include_optimal_snr=True,
        include_observed_snr=False,
    )
)

Initializing GWSNR class...

Intel processor has trouble allocating memory when the data is huge. So, by default for IMRPhenomXPHM, duration_max = 64.0. Otherwise, set to some max value like duration_max = 600.0 (10 mins)
ANN model and scaler path is given. Using the given path.
ANN model for L1 is loaded from ./ann_data/ann_model_L1.h5.
ANN scaler for L1 is loaded from ./ann_data/scaler_L1.pkl.
ANN error_adjustment for L1 is loaded from ./ann_data/error_adjustment_L1.json.
Interpolator will be loaded for L1 detector from ./interpolator_json/L1/partialSNR_dict_2.json

Chosen GWSNR initialization parameters:

npool:  6
snr type:  ann
waveform approximant:  IMRPhenomXPHM
sampling frequency:  2048.0
minimum frequency (fmin):  20.0
reference frequency (f_ref):  20.0
mtot=mass1+mass2
min(mtot):  9.96
max(mtot) (with the given fmin=20.0): 235.0
detectors:  ['L1']
psds:  [[array([  10.21659,   10.23975,   10.26296, ..., 4972.81   ,
       4984.081  , 4995.378  ], shape=(2736,)), array([4.43925574e-41, 4.22777986e-41, 4.02102594e-41, ...,
       6.51153524e-46, 6.43165104e-46, 6.55252996e-46],
      shape=(2736,)), <scipy.interpolate._interpolate.interp1d object at 0x10448de90>]]


[6]:
# predicted snr, using ANN model
from gwsnr.utils import load_json
gw_param_dict = load_json('ler_data/IMRPhenomXPHM_O4_high_asd_L1_5.json')
pred_snr = gwsnr.optimal_snr_with_ann(gw_param_dict=gw_param_dict)['optimal_snr_L1']
[7]:
from gwsnr.utils import get_param_from_json
true_snr = get_param_from_json('ler_data/IMRPhenomXPHM_O4_high_asd_L1_5.json')['optimal_snr_L1']#['snr_net']
[9]:
# select only snr between 4 and 12
# snr_min = 5
# snr_max = 15
# mask = (true_snr >= snr_min) & (true_snr <= snr_max)
# true_snr = true_snr[mask]
# pred_snr = pred_snr[mask]

# plot the predicted snr vs true snr
plt.figure(figsize=[4,4])
plt.scatter(true_snr, pred_snr, s=1)
snr_lim = [np.min([true_snr, true_snr]), np.max([true_snr, true_snr])]
plt.plot(snr_lim, snr_lim, 'r--')
plt.xlabel('True SNR')
plt.ylabel('Predicted SNR')
# plt.xlim([snr_min, snr_max])
# plt.ylim([snr_min, snr_max])
plt.show()
../_images/examples_model_generation_37_0.png
[11]:
# use the following function to predict the pdet
pred_pdet = gwsnr.pdet(gw_param_dict=gw_param_dict)['pdet_L1']
# true pdet
true_pdet = get_param_from_json('ler_data/IMRPhenomXPHM_O4_high_asd_L1_5.json')['pdet_L1']

from sklearn.metrics import confusion_matrix, accuracy_score
cm = confusion_matrix(true_pdet, pred_pdet)
print(cm)

acc = accuracy_score(true_pdet, pred_pdet)
print(acc)
[[99907    13]
 [    4    76]]
0.99983

Uniform random samples

[31]:
# gerneral case, random parameters
# add random seed for reproducibility
np.random.seed(42)
nsamples = 100000
mtot = np.random.uniform(2*4.98, 2*112.5,nsamples)
mass_ratio = np.random.uniform(0.2,1,size=nsamples)
param_dict = dict(
    # convert to component masses
    mass_1 = mtot / (1 + mass_ratio),
    mass_2 = mtot * mass_ratio / (1 + mass_ratio),
    # Fix luminosity distance
    luminosity_distance = np.random.uniform(100, 10000, size=nsamples),  # Random luminosity distance between 100 and 10000 Mpc
    # Randomly sample everything else:
    theta_jn = np.random.uniform(0,2*np.pi, size=nsamples),
    ra = np.random.uniform(0,2*np.pi, size=nsamples),
    dec = np.random.uniform(-np.pi/2,np.pi/2, size=nsamples),
    psi = np.random.uniform(0,2*np.pi, size=nsamples),
    phase = np.random.uniform(0,2*np.pi, size=nsamples),
    geocent_time = 1246527224.169434*np.ones(nsamples),
    # spin zero
    a_1 = np.random.uniform(0.0,0.8, size=nsamples),
    a_2 = np.random.uniform(0.0,0.8, size=nsamples),
    tilt_1 = np.random.uniform(0, np.pi, size=nsamples),  # tilt angle of the primary black hole in radians
    tilt_2 = np.random.uniform(0, np.pi, size=nsamples),
    phi_12 = np.random.uniform(0, 2*np.pi, size=nsamples),  # Relative angle between the primary and secondary spin of the binary in radians
    phi_jl = np.random.uniform(0, 2*np.pi, size=nsamples),  # Angle between the total angular momentum and the orbital angular momentum in radians
)
[13]:
# use the following function to predict the pdet
pred_pdet = gwsnr.pdet(gw_param_dict=param_dict)['pdet_L1']
[22]:
gwsnr_bilby = GWSNR(
    snr_method='inner_product',
    npool=6,  # number of processes
    waveform_approximant="IMRPhenomXPHM",
    # psds={'L1': 'aLIGO_O4_high_asd.txt'},
    ann_path_dict='./ann_data/ann_path_dict.json',
    mtot_cut=False,
    pdet_kwargs=dict(
        snr_th=10.0,
        snr_th_net=10.0,
        pdet_type="boolean",
        distribution_type="fixed_snr",
        include_optimal_snr=True,
        include_observed_snr=False,
    ),
    gwsnr_verbose=False,
)
true_pdet_all = gwsnr_bilby.pdet(gw_param_dict=param_dict)

Initializing GWSNR class...

psds not given. Choosing bilby's default psds
Intel processor has trouble allocating memory when the data is huge. So, by default for IMRPhenomXPHM, duration_max = 64.0. Otherwise, set to some max value like duration_max = 600.0 (10 mins)


100%|█████████████████████████████████████████████████████| 100000/100000 [01:33<00:00, 1074.71it/s]
[ ]:
# save the true pdet to a json file
from gwsnr.utils import save_json
true_pdet_all.update(param_dict)
save_json(
    "ler_data/IMRPhenomXPHM_O4_high_asd_L1_6.json",
    true_pdet_all,
)
[24]:
true_pdet = get_param_from_json('ler_data/IMRPhenomXPHM_O4_high_asd_L1_6.json')['pdet_L1']
[25]:
from sklearn.metrics import confusion_matrix, accuracy_score
cm = confusion_matrix(true_pdet, pred_pdet)
print(cm)

acc = accuracy_score(true_pdet, pred_pdet)
print(acc)
[[78557   849]
 [  721 19873]]
0.9843

with gwsnr default ANN model (L1+H1+V1)

Astrophysical data

[34]:
import numpy as np
import matplotlib.pyplot as plt
from gwsnr import GWSNR
from gwsnr.utils import get_param_from_json

gwsnr = GWSNR(
    snr_method='ann',
    npool=6,  # number of processes
    waveform_approximant="IMRPhenomXPHM",
    mtot_cut=False,
    pdet_kwargs=dict(
        snr_th=10.0,
        snr_th_net=10.0,
        pdet_type="boolean",
        distribution_type="fixed_snr",
        include_optimal_snr=True,
        include_observed_snr=False,
    ),
    gwsnr_verbose=False
)

Initializing GWSNR class...

psds not given. Choosing bilby's default psds
Intel processor has trouble allocating memory when the data is huge. So, by default for IMRPhenomXPHM, duration_max = 64.0. Otherwise, set to some max value like duration_max = 600.0 (10 mins)
ANN model and scaler path is not given. Using the default path.
ANN model for L1 is loaded from ./ann_data/ann_model_L1.h5.
ANN scaler for L1 is loaded from ./ann_data/scaler_L1.pkl.
ANN error_adjustment for L1 is loaded from ./ann_data/error_adjustment_L1.json.
ANN model for H1 is loaded from ./ann_data/ann_model_H1.h5.
ANN scaler for H1 is loaded from ./ann_data/scaler_H1.pkl.
ANN error_adjustment for H1 is loaded from ./ann_data/error_adjustment_H1.json.
ANN model for V1 is loaded from ./ann_data/ann_model_V1.h5.
ANN scaler for V1 is loaded from ./ann_data/scaler_V1.pkl.
ANN error_adjustment for V1 is loaded from ./ann_data/error_adjustment_V1.json.
Interpolator will be loaded for L1 detector from ./interpolator_json/L1/partialSNR_dict_2.json
Interpolator will be loaded for H1 detector from ./interpolator_json/H1/partialSNR_dict_2.json
Interpolator will be loaded for V1 detector from ./interpolator_json/V1/partialSNR_dict_2.json


[35]:
# use the following function to predict the pdet
pred_pdet = gwsnr.pdet(gw_param_dict=gw_param_dict)['pdet_net']
# true pdet
true_pdet = get_param_from_json('ler_data/IMRPhenomXPHM_O4_high_asd_L1_5.json')['pdet_net']

from sklearn.metrics import confusion_matrix, accuracy_score
cm = confusion_matrix(true_pdet, pred_pdet)
print(cm)

acc = accuracy_score(true_pdet, pred_pdet)
print(acc)
[[99600    70]
 [    9   321]]
0.99921

uniform random samples

[37]:
param_dict = get_param_from_json('ler_data/IMRPhenomXPHM_O4_high_asd_L1_6.json')
pred_pdet = gwsnr.pdet(gw_param_dict=param_dict)['pdet_net']
true_pdet = param_dict['pdet_net']

from sklearn.metrics import confusion_matrix, accuracy_score
cm = confusion_matrix(true_pdet, pred_pdet)
print(cm)

acc = accuracy_score(true_pdet, pred_pdet)
print(acc)
[[62148  1648]
 [ 1070 35134]]
0.97282

Hybrid approach: Use ANN model for SNR prediction and Bilby for pdet calculation

[39]:
import numpy as np
import matplotlib.pyplot as plt
from gwsnr import GWSNR
from gwsnr.utils import get_param_from_json

gwsnr = GWSNR(
    snr_method='ann',
    npool=6,  # number of processes
    waveform_approximant="IMRPhenomXPHM",
    mtot_cut=False,
    pdet_kwargs=dict(
        snr_th=10.0,
        snr_th_net=10.0,
        pdet_type="boolean",
        distribution_type="fixed_snr",
        include_optimal_snr=True,
        include_observed_snr=False,
    ),
    gwsnr_verbose=False,
    snr_recalculation=True,  # Enable recalculation of SNRs
    snr_recalculation_range=[5,15],  # Range of optimal SNR for recalculation
    snr_recalculation_waveform_approximant='IMRPhenomXPHM',  # Waveform
)

Initializing GWSNR class...

psds not given. Choosing bilby's default psds
Intel processor has trouble allocating memory when the data is huge. So, by default for IMRPhenomXPHM, duration_max = 64.0. Otherwise, set to some max value like duration_max = 600.0 (10 mins)
ANN model and scaler path is not given. Using the default path.
ANN model for L1 is loaded from ./ann_data/ann_model_L1.h5.
ANN scaler for L1 is loaded from ./ann_data/scaler_L1.pkl.
ANN error_adjustment for L1 is loaded from ./ann_data/error_adjustment_L1.json.
ANN model for H1 is loaded from ./ann_data/ann_model_H1.h5.
ANN scaler for H1 is loaded from ./ann_data/scaler_H1.pkl.
ANN error_adjustment for H1 is loaded from ./ann_data/error_adjustment_H1.json.
ANN model for V1 is loaded from ./ann_data/ann_model_V1.h5.
ANN scaler for V1 is loaded from ./ann_data/scaler_V1.pkl.
ANN error_adjustment for V1 is loaded from ./ann_data/error_adjustment_V1.json.
Interpolator will be loaded for L1 detector from ./interpolator_json/L1/partialSNR_dict_2.json
Interpolator will be loaded for H1 detector from ./interpolator_json/H1/partialSNR_dict_2.json
Interpolator will be loaded for V1 detector from ./interpolator_json/V1/partialSNR_dict_2.json


[40]:
# use the following function to predict the pdet
pred_pdet = gwsnr.pdet(gw_param_dict=gw_param_dict)['pdet_net']
# true pdet
true_pdet = get_param_from_json('ler_data/IMRPhenomXPHM_O4_high_asd_L1_5.json')['pdet_net']

from sklearn.metrics import confusion_matrix, accuracy_score
cm = confusion_matrix(true_pdet, pred_pdet)
print(cm)

acc = accuracy_score(true_pdet, pred_pdet)
print(acc)
Recalculating SNR for 3278 out of 100000 samples in the SNR range of 5 to 15
100%|██████████████████████████████████████████████████████████| 3278/3278 [00:03<00:00, 887.28it/s]
[[99668     2]
 [    0   330]]
0.99998
[41]:
param_dict = get_param_from_json('ler_data/IMRPhenomXPHM_O4_high_asd_L1_6.json')
pred_pdet = gwsnr.pdet(gw_param_dict=param_dict)['pdet_net']
true_pdet = param_dict['pdet_net']

from sklearn.metrics import confusion_matrix, accuracy_score
cm = confusion_matrix(true_pdet, pred_pdet)
print(cm)

acc = accuracy_score(true_pdet, pred_pdet)
print(acc)
Recalculating SNR for 40420 out of 100000 samples in the SNR range of 5 to 15
100%|███████████████████████████████████████████████████████| 40420/40420 [00:29<00:00, 1391.36it/s]
[[63778    18]
 [   22 36182]]
0.9996

With interpolation Hybrid approach

[42]:
import numpy as np
import matplotlib.pyplot as plt
from gwsnr import GWSNR
from gwsnr.utils import get_param_from_json

gwsnr = GWSNR(
    npool=6,  # number of processes
    waveform_approximant="IMRPhenomXPHM",
    mtot_cut=False,
    pdet_kwargs=dict(
        snr_th=10.0,
        snr_th_net=10.0,
        pdet_type="boolean",
        distribution_type="fixed_snr",
        include_optimal_snr=True,
        include_observed_snr=False,
    ),
    gwsnr_verbose=False,
    snr_recalculation=True,  # Enable recalculation of SNRs
    snr_recalculation_range=[5,15],  # Range of optimal SNR for recalculation
    snr_recalculation_waveform_approximant='IMRPhenomXPHM',  # Waveform
)

Initializing GWSNR class...

psds not given. Choosing bilby's default psds
Intel processor has trouble allocating memory when the data is huge. So, by default for IMRPhenomXPHM, duration_max = 64.0. Otherwise, set to some max value like duration_max = 600.0 (10 mins)
Interpolator will be loaded for L1 detector from ./interpolator_json/L1/partialSNR_dict_2.json
Interpolator will be loaded for H1 detector from ./interpolator_json/H1/partialSNR_dict_2.json
Interpolator will be loaded for V1 detector from ./interpolator_json/V1/partialSNR_dict_2.json


[43]:
# use the following function to predict the pdet
pred_pdet = gwsnr.pdet(gw_param_dict=gw_param_dict)['pdet_net']
# true pdet
true_pdet = get_param_from_json('ler_data/IMRPhenomXPHM_O4_high_asd_L1_5.json')['pdet_net']

from sklearn.metrics import confusion_matrix, accuracy_score
cm = confusion_matrix(true_pdet, pred_pdet)
print(cm)

acc = accuracy_score(true_pdet, pred_pdet)
print(acc)
Recalculating SNR for 2564 out of 100000 samples in the SNR range of 5 to 15
100%|██████████████████████████████████████████████████████████| 2564/2564 [00:03<00:00, 846.29it/s]
[[99670     0]
 [    0   330]]
1.0
[ ]:

[ ]:

[23]:
# """
# ANN architecture diagram for gwsnr.
# """
# import matplotlib.pyplot as plt
# from matplotlib.colors import to_rgb
# from matplotlib.lines import Line2D
# from pathlib import Path

# # Figure setup
# fig, ax = plt.subplots(figsize=(14.5, 8.2))
# ax.set_xlim(0.060, 0.980)
# ax.set_ylim(0, 1)
# ax.axis('off')

# # Column positions
# x_label = 0.165
# x_in = 0.220
# x_h1 = 0.430
# x_h2 = 0.660
# x_out = 0.865

# # Vertical positions
# input_y = [0.76, 0.62, 0.48, 0.34, 0.20]
# hidden_y = [0.82, 0.70, 0.58, 0.38, 0.26, 0.14]
# dots_y = [0.515, 0.475, 0.435]
# y_out = 0.48

# # Colors
# def lighten_color(color, amount=0.82):
#     rgb = to_rgb(color)
#     return tuple((1 - amount) * channel + amount for channel in rgb)

# input_color = 'C0'
# hidden1_color = 'C1'
# hidden2_color = 'C2'
# output_color = 'C3'
# input_fill = lighten_color(input_color)
# hidden1_fill = lighten_color(hidden1_color)
# hidden2_fill = lighten_color(hidden2_color)
# output_fill = lighten_color(output_color)

# # Helpers
# def node_radius_x(r):
#     bbox = ax.get_position()
#     x_span = ax.get_xlim()[1] - ax.get_xlim()[0]
#     y_span = ax.get_ylim()[1] - ax.get_ylim()[0]
#     return r * x_span * fig.get_figheight() * bbox.height / (y_span * fig.get_figwidth() * bbox.width)

# def add_node(x, y, r=0.028, edge='black', face='white', lw=1.8, z=4):
#     radius_pts = r * fig.get_figheight() * ax.get_position().height * 72
#     return ax.scatter(
#         [x], [y], s=(2 * radius_pts) ** 2, marker='o',
#         edgecolors=edge, facecolors=face, linewidths=lw, zorder=z
#     )

# def add_line(x1, y1, x2, y2, color='k', lw=0.7, alpha=0.45, z=1):
#     ax.add_line(Line2D([x1, x2], [y1, y2], color=color, linewidth=lw, alpha=alpha, zorder=z))

# r_in = 0.029
# r_hidden = 0.031
# r_out = 0.030
# dx_in = node_radius_x(r_in)
# dx_hidden = node_radius_x(r_hidden)
# dx_out = node_radius_x(r_out)

# # Layer headings
# header_y = 0.965
# sub_y = 0.923
# ax.text(x_in, header_y, r'Input layer $\in \mathbb{R}^{5}$', ha='center', va='top', fontsize=13.5, fontweight='bold')
# ax.text(x_in, sub_y, 'features', ha='center', va='top', fontsize=10.5)

# ax.text(x_h1, header_y, r'Hidden layer $\in \mathbb{R}^{32}$', ha='center', va='top', fontsize=13.5, fontweight='bold')
# ax.text(x_h1, sub_y, 'ReLU activation', ha='center', va='top', fontsize=10.5)

# ax.text(x_h2, header_y, r'Hidden layer $\in \mathbb{R}^{32}$', ha='center', va='top', fontsize=13.5, fontweight='bold')
# ax.text(x_h2, sub_y, 'Sigmoid activation', ha='center', va='top', fontsize=10.5)

# ax.text(x_out, header_y, r'Output layer $\in \mathbb{R}^{1}$', ha='center', va='top', fontsize=13.5, fontweight='bold')
# ax.text(x_out, sub_y, 'linear activation', ha='center', va='top', fontsize=10.5)

# # Input labels and nodes
# features = [
#     r'$\rho_{1/2}$',
#     r'$\frac{{\cal M}^{5/6}}{D_{\rm eff}}$',
#     r'$\eta$',
#     r'$\chi_{\rm eff}$',
#     r'$\theta_{\rm jn}$',
# ]
# for y, label in zip(input_y, features):
#     ax.text(x_label, y, label, ha='right', va='center', fontsize=17)
#     add_line(x_label + 0.010, y, x_in - dx_in, y, color='black', lw=1.1, alpha=1, z=2)
#     add_node(x_in, y, r=r_in, edge=input_color, face=input_fill, lw=1.8)

# # Hidden layer nodes and ellipsis
# for y in hidden_y:
#     add_node(x_h1, y, r=r_hidden, edge=hidden1_color, face=hidden1_fill, lw=1.8)
#     add_node(x_h2, y, r=r_hidden, edge=hidden2_color, face=hidden2_fill, lw=1.8)

# for y in dots_y:
#     add_node(x_h1, y, r=0.0065, edge=hidden1_color, face=hidden1_color, lw=0.0, z=5)
#     add_node(x_h2, y, r=0.0065, edge=hidden2_color, face=hidden2_color, lw=0.0, z=5)

# # Output node
# add_node(x_out, y_out, r=r_out, edge=output_color, face=output_fill, lw=1.8)
# add_line(x_out + dx_out, y_out, 0.912, y_out, color='black', lw=1.2, alpha=1, z=2)
# ax.text(0.920, y_out, r'$\rho_{\rm opt}$', ha='left', va='center', fontsize=18)

# # Connections, intentionally sparse enough to be readable but showing dense feedforward mapping
# for yi in input_y:
#     for yh in hidden_y:
#         add_line(x_in + dx_in, yi, x_h1 - dx_hidden, yh, color=hidden1_color, lw=0.72, alpha=0.40)

# for yh1 in hidden_y:
#     for yh2 in hidden_y:
#         add_line(x_h1 + dx_hidden, yh1, x_h2 - dx_hidden, yh2, color=hidden2_color, lw=0.65, alpha=0.35)

# for yh2 in hidden_y:
#     add_line(x_h2 + dx_hidden, yh2, x_out - dx_out, y_out, color=output_color, lw=0.85, alpha=0.65)

# # Small note about omitted hidden nodes
# ax.text(
#     (x_h1 + x_h2) / 2, 0.015,
#     '',
#     ha='center', va='bottom', fontsize=9
# )
# fig.savefig('gwsnr_ann_architecture.pdf', bbox_inches='tight', pad_inches=0.08)
# plt.show()
[ ]:

[ ]: