From 2f84e5548516cd754fb142ff93f37b4e37c82ab5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Fri, 25 Oct 2019 16:46:34 +0200 Subject: [PATCH 01/30] write wavs as 16bit int instead of 32bit float --- generate_audio.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generate_audio.sh b/generate_audio.sh index a745dc2..a7b2aa4 100644 --- a/generate_audio.sh +++ b/generate_audio.sh @@ -7,7 +7,7 @@ DIR=AUDIO for k in $(seq -f "%02g" 1 10 151); do mkdir $DIR/$k for i in $(seq 1 $NBFILES); do - sox -n -r 44100 $DIR/$k/$i.wav synth "0:$k" whitenoise vol 0.5 fade q 1 "0:$k" 1 + sox -n -r 44100 -b 16 $DIR/$k/$i.wav synth "0:$k" whitenoise vol 0.5 fade q 1 "0:$k" 1 ffmpeg -i $DIR/$k/$i.wav -strict -2 $DIR/$k/$i.mp4 ffmpeg -i $DIR/$k/$i.wav $DIR/$k/$i.mp3 ffmpeg -i $DIR/$k/$i.wav $DIR/$k/$i.flac From 5dc5131275edf96254ff76cc0c0d86910a2bf7e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Fri, 25 Oct 2019 16:46:54 +0200 Subject: [PATCH 02/30] update requirements for newer version --- Dockerfile | 5 +---- requirements.txt | 13 +++++++------ 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/Dockerfile b/Dockerfile index 3d80231..0efe8fa 100644 --- a/Dockerfile +++ b/Dockerfile @@ -47,7 +47,4 @@ WORKDIR /app # install requirements, starting with pycairo because it fails in a different order RUN pip install pycairo -RUN pip install --requirement /app/requirements.txt - -# install torchaudio from source -RUN git clone https://github.com/pytorch/audio.git pytorchaudio && cd pytorchaudio && python setup.py install +RUN pip install --requirement /app/requirements.txt \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index f55f72d..4ccc13f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,16 +1,17 @@ scipy==1.2.0 -tensorflow==1.13.1 -audioread==2.1.6 -librosa==0.6.2 +tensorflow==2.0.0 +audioread==2.1.8 +librosa==0.7.1 SoundFile==0.10.2 -torch==1.0.1 +torch==1.3.0 pydub==0.23.1 sox==1.3.7 PyGObject==3.30.4 +torchaudio==0.3.1 +aubio==0.4.9 seaborn pandas ipython torchvision pymad -cffi -aubio==0.4.9 \ No newline at end of file +cffi \ No newline at end of file From b2155e2eeeb05d51be71ee8f2ab57052be2724cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Fri, 25 Oct 2019 17:31:14 +0200 Subject: [PATCH 03/30] update to tf2 and librosa 0.7.1 --- AUDIO/.gitkeep | 0 benchmark_pytorch.py | 7 +++---- benchmark_tf.py | 30 ++++++++++++++---------------- loaders.py | 12 +++--------- requirements.txt | 7 ++++--- 5 files changed, 24 insertions(+), 32 deletions(-) delete mode 100644 AUDIO/.gitkeep diff --git a/AUDIO/.gitkeep b/AUDIO/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/benchmark_pytorch.py b/benchmark_pytorch.py index 23f8fd1..d71cb57 100644 --- a/benchmark_pytorch.py +++ b/benchmark_pytorch.py @@ -68,8 +68,8 @@ def __len__(self): 'ar_mad', 'aubio', 'pydub', - 'soundfile', - 'librosa', + 'soundfile', + 'librosa', 'scipy', 'scipy_mmap', ] @@ -85,7 +85,7 @@ def __len__(self): duration = int(audio_dir) data = torch.utils.data.DataLoader( AudioFolder( - os.path.join(root, audio_dir), + os.path.join(root, audio_dir), lib='load_' + lib, extension=args.ext ), @@ -108,5 +108,4 @@ def __len__(self): except: continue - store.df.to_pickle("results/benchmark_%s_%s.pickle" % ("pytorch", args.ext)) \ No newline at end of file diff --git a/benchmark_tf.py b/benchmark_tf.py index c942e2e..9c3195e 100644 --- a/benchmark_tf.py +++ b/benchmark_tf.py @@ -26,7 +26,7 @@ def get_files(dir, extension): def _make_py_loader_function(func): def _py_loader_function(fp): - return func(fp.decode()) + return func(fp.numpy().decode()) return _py_loader_function @@ -55,7 +55,7 @@ def _py_loader_function(fp): 'librosa', 'scipy', 'scipy_mmap', - 'tf_decode' + 'tf_decode_wav' ] for lib in libs: @@ -67,31 +67,30 @@ def _py_loader_function(fp): audio_files = get_files(dir=os.path.join(root, audio_dir), extension=args.ext) dataset = tf.data.Dataset.from_tensor_slices(audio_files) - if lib == "tf_decode": - dataset = dataset.map(lambda x: loaders.load_tf_decode(x, args.ext)) + if lib == "tf_decode_wav": + dataset = dataset.map( + lambda x: loaders.load_tf_decode_wav(x, args.ext), + num_parallel_calls=1 + ) else: loader_function = getattr(loaders, 'load_' + lib) dataset = dataset.map( - lambda filename: tf.py_func( + lambda filename: tf.py_function( _make_py_loader_function(loader_function), [filename], [tf.float32] - ) + ), + num_parallel_calls=1 ) dataset = dataset.batch(1) start = time.time() - iterator = dataset.make_one_shot_iterator() - next_audio = iterator.get_next() - with tf.Session() as sess: - for i in range(len(audio_files)): - try: - value = sess.run(tf.reduce_max(next_audio)) - except tf.errors.OutOfRangeError: - break + + for audio in dataset: + value = tf.reduce_max(audio) end = time.time() - + store.append( ext=args.ext, lib=lib, @@ -102,4 +101,3 @@ def _py_loader_function(fp): continue store.df.to_pickle("results/benchmark_%s_%s.pickle" % ("tf", args.ext)) - diff --git a/loaders.py b/loaders.py index cf54fb6..79e8e1d 100644 --- a/loaders.py +++ b/loaders.py @@ -19,15 +19,9 @@ """ -def load_tf_decode(fp, ext="wav", rate=44100): - audio_binary = tf.read_file(fp) - audio_decoded = tf.contrib.ffmpeg.decode_audio( - audio_binary, - file_format=ext, - samples_per_second=rate, - channel_count=1 - ) - return tf.cast(audio_decoded, tf.float32) +def load_tf_decode_wav(fp, ext="wav", rate=44100): + audio, rate = tf.audio.decode_wav(tf.io.read_file(fp)) + return tf.cast(audio, tf.float32) def load_aubio(fp): diff --git a/requirements.txt b/requirements.txt index 4ccc13f..b7c3ddf 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -scipy==1.2.0 +scipy==1.3.1 tensorflow==2.0.0 audioread==2.1.8 librosa==0.7.1 @@ -6,12 +6,13 @@ SoundFile==0.10.2 torch==1.3.0 pydub==0.23.1 sox==1.3.7 -PyGObject==3.30.4 torchaudio==0.3.1 aubio==0.4.9 +tensorflow_io==0.9.0 +PyGObject seaborn pandas ipython torchvision pymad -cffi \ No newline at end of file +cffi From e162cff607aa6d7b4aef988b14813dd4c3f5a286 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Mon, 28 Oct 2019 14:36:07 +0100 Subject: [PATCH 04/30] first draft for tfio --- README.md | 9 +++--- benchmark_tf.py | 85 +++++++++++++++++++++++++++---------------------- loaders.py | 7 +++- 3 files changed, 57 insertions(+), 44 deletions(-) diff --git a/README.md b/README.md index 84ba28b..2cc3274 100644 --- a/README.md +++ b/README.md @@ -10,21 +10,20 @@ This is relevant for machine learning models that today often process raw (time |-------------------------|---------|-----------------------|-------------------|-------------------| -----------------| | [scipy.io.wavfile](https://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.io.wavfile.read.html#scipy.io.wavfile.read) | 0.14.0 | [`scipy`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L55) | Numpy | PCM (only 16 bit) | ❌ | | [scipy.io.wavfile memmap](https://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.io.wavfile.read.html#scipy.io.wavfile.read) | 0.14.0 | [`scipy_mmap`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L61) | Numpy | PCM (only 16 bit) | ✅ | -| [soundfile](https://pysoundfile.readthedocs.io/en/0.9.0/) ([libsndfile](http://www.mega-nerd.com/libsndfile/)) | 0.9.0 | [`soundfile`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L50) | Numpy | PCM, Ogg, Flac | ✅ | +| [soundfile](https://pysoundfile.readthedocs.io/en/0.9.0/) ([libsndfile](http://www.mega-nerd.com/libsndfile/)) | 0.9.0 | [`soundfile`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L50) | Numpy | PCM, Ogg, Flac | ✅ | | [pydub](https://github.com/jiaaro/pydub) | 0.23.1 | [`pydub`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L97) | Python Array | PCM, MP3, OGG or other FFMPEG/libav supported codec | ❌ | | [aubio](https://github.com/aubio/aubio) | 0.4.9 | [`aubio`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L32) | Numpy Array | PCM, MP3, OGG or other avconv supported code | ✅ | | [audioread](https://github.com/beetbox/audioread) ([libmad](https://www.underbit.com/products/mad/)) | 2.1.6 | [`ar_mad`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L77) | Numpy Array | FFMPEG | ❌ | -| [audioread](https://github.com/beetbox/audioread) ([gstreamer](https://gstreamer.freedesktop.org/)) |2.1.6 | [`ar_gstreamer`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L67) |2.1.6 | Numpy Array | all of FFMPEG | ❌ | +| [audioread](https://github.com/beetbox/audioread) ([gstreamer](https://gstreamer.freedesktop.org/)) |2.1.6 | [`ar_gstreamer`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L67) | Numpy Array | all of FFMPEG | ❌ | | [audioread](https://github.com/beetbox/audioread) ([FFMPEG](https://www.ffmpeg.org/)) | 2.1.6 | [`ar_ffmpeg`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L87) | Numpy Array | all of FFMPEG | ❌ | | [librosa](https://librosa.github.io/) | 0.6.2 | [`librosa`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L104) | Numpy Array | relies on audioread | ✅ | -| [tensorflow 1.13 `contrib.ffmpeg`](https://www.tensorflow.org/api_docs/python/tf/contrib/ffmpeg/decode_audio) | 1.13 | [`tf_decode`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L21) | Tensorflow Tensor | All codecs supported by FFMPEG | ❌ | -| [torchaudio](https://github.com/pytorch/audio) | 0.3.0 | [`torchaudio`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L45) | PyTorch Tensor | all codecs supported by Sox | ✅ | +| [tensorflow `tf.io.audio.decode_wav`](https://www.tensorflow.org/api_docs/python/tf/contrib/ffmpeg/decode_audio) | 2.0 | [`tf_decode_wav`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L22) | Tensorflow Tensor | PCM (only 16 bit) | ❌ | +| [torchaudio](https://github.com/pytorch/audio) | 0.3.1 | [`torchaudio`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L45) | PyTorch Tensor | all codecs supported by Sox | ✅ | ### Not tested * __[audioread (coreaudio)](https://github.com/beetbox/audioread/blob/master/audioread/macca.py)__: only available on macOS. * __[madmom](https://github.com/CPJKU/madmom):__ same ffmpeg interface as `ar_ffmpeg`. -* __[tensorflow 2 `decode_wav`](https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/audio/decode_wav):__ Not released yet. * __[python builtin `wave`](https://docs.python.org/3.7/library/wave.html)__: TODO ## Results diff --git a/benchmark_tf.py b/benchmark_tf.py index 9c3195e..63b76f0 100644 --- a/benchmark_tf.py +++ b/benchmark_tf.py @@ -32,7 +32,9 @@ def _py_loader_function(fp): if __name__ == "__main__": - parser = argparse.ArgumentParser(description='Benchmark audio loading in tensorflow') + parser = argparse.ArgumentParser( + description='Benchmark audio loading in tensorflow' + ) parser.add_argument('--ext', type=str, default="wav") args = parser.parse_args() @@ -55,49 +57,56 @@ def _py_loader_function(fp): 'librosa', 'scipy', 'scipy_mmap', - 'tf_decode_wav' + 'tf_decode_wav', + 'tfio_fromaudio' ] for lib in libs: print("Testing: %s" % lib) for root, dirs, fnames in sorted(os.walk('AUDIO')): for audio_dir in dirs: - try: - duration = int(audio_dir) - audio_files = get_files(dir=os.path.join(root, audio_dir), extension=args.ext) - - dataset = tf.data.Dataset.from_tensor_slices(audio_files) - if lib == "tf_decode_wav": - dataset = dataset.map( - lambda x: loaders.load_tf_decode_wav(x, args.ext), - num_parallel_calls=1 - ) - else: - loader_function = getattr(loaders, 'load_' + lib) - dataset = dataset.map( - lambda filename: tf.py_function( - _make_py_loader_function(loader_function), - [filename], - [tf.float32] - ), - num_parallel_calls=1 - ) - - dataset = dataset.batch(1) - start = time.time() - - for audio in dataset: - value = tf.reduce_max(audio) - - end = time.time() - - store.append( - ext=args.ext, - lib=lib, - duration=duration, - time=float(end-start) / len(audio_files), + duration = int(audio_dir) + audio_files = get_files( + dir=os.path.join(root, audio_dir), + extension=args.ext + ) + + dataset = tf.data.Dataset.from_tensor_slices(audio_files) + if lib == "tf_decode_wav": + dataset = dataset.map( + lambda x: loaders.load_tf_decode_wav(x, args.ext), + num_parallel_calls=1 ) - except: - continue + elif lib == "tfio_fromaudio": + dataset = dataset.map( + lambda x: loaders.load_tfio_fromaudio(x), + num_parallel_calls=1 + ) + else: + loader_function = getattr(loaders, 'load_' + lib) + dataset = dataset.map( + lambda filename: tf.py_function( + _make_py_loader_function(loader_function), + [filename], + [tf.float32] + ), + num_parallel_calls=1 + ) + + dataset = dataset.batch(1) + start = time.time() + + for audio in dataset: + value = tf.reduce_max(audio) + tf.print(value) + + end = time.time() + + store.append( + ext=args.ext, + lib=lib, + duration=duration, + time=float(end-start) / len(audio_files), + ) store.df.to_pickle("results/benchmark_%s_%s.pickle" % ("tf", args.ext)) diff --git a/loaders.py b/loaders.py index 79e8e1d..bb0c2c0 100644 --- a/loaders.py +++ b/loaders.py @@ -1,6 +1,6 @@ from scipy.io import wavfile import audioread.rawread -import audioread.gstdec +# import audioread.gstdec import audioread.maddec import audioread.ffdec import matplotlib.pyplot as plt @@ -10,6 +10,7 @@ import torchaudio import numpy as np import tensorflow as tf +import tensorflow_io as tfio import librosa import sox @@ -19,6 +20,10 @@ """ +def load_tfio_fromaudio(fp): + return tfio.IOTensor.from_audio(fp) + + def load_tf_decode_wav(fp, ext="wav", rate=44100): audio, rate = tf.audio.decode_wav(tf.io.read_file(fp)) return tf.cast(audio, tf.float32) From fe4df4f76291d7215c828e9b0cdf8a01a1a4464b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Sun, 17 Nov 2019 22:47:59 +0100 Subject: [PATCH 05/30] add working tfio loader --- benchmark_tf.py | 7 +------ loaders.py | 4 +++- requirements.txt | 2 +- 3 files changed, 5 insertions(+), 8 deletions(-) diff --git a/benchmark_tf.py b/benchmark_tf.py index 63b76f0..6fd907a 100644 --- a/benchmark_tf.py +++ b/benchmark_tf.py @@ -72,16 +72,11 @@ def _py_loader_function(fp): ) dataset = tf.data.Dataset.from_tensor_slices(audio_files) - if lib == "tf_decode_wav": + if lib in ["tf_decode_wav", "tfio_fromaudio"]: dataset = dataset.map( lambda x: loaders.load_tf_decode_wav(x, args.ext), num_parallel_calls=1 ) - elif lib == "tfio_fromaudio": - dataset = dataset.map( - lambda x: loaders.load_tfio_fromaudio(x), - num_parallel_calls=1 - ) else: loader_function = getattr(loaders, 'load_' + lib) dataset = dataset.map( diff --git a/loaders.py b/loaders.py index bb0c2c0..bcf9d19 100644 --- a/loaders.py +++ b/loaders.py @@ -20,8 +20,10 @@ """ +@tf.function def load_tfio_fromaudio(fp): - return tfio.IOTensor.from_audio(fp) + audio = tfio.IOTensor.graph(tf.int16).from_audio(fp) + return tf.cast(audio.to_tensor(), tf.float32) / 32767.0 def load_tf_decode_wav(fp, ext="wav", rate=44100): diff --git a/requirements.txt b/requirements.txt index b7c3ddf..f89852b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -8,7 +8,7 @@ pydub==0.23.1 sox==1.3.7 torchaudio==0.3.1 aubio==0.4.9 -tensorflow_io==0.9.0 +tensorflow_io==0.10.0 PyGObject seaborn pandas From b74f46120615db1fd9fffd192832a5a691bedd33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Mon, 18 Nov 2019 16:21:30 +0100 Subject: [PATCH 06/30] add tfio nightly --- benchmark_tf.py | 1 + requirements.txt | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/benchmark_tf.py b/benchmark_tf.py index 6fd907a..bd5495d 100644 --- a/benchmark_tf.py +++ b/benchmark_tf.py @@ -88,6 +88,7 @@ def _py_loader_function(fp): num_parallel_calls=1 ) + dataset = dataset.apply(tf.data.experimental.ignore_errors()) dataset = dataset.batch(1) start = time.time() diff --git a/requirements.txt b/requirements.txt index f89852b..811a2ec 100644 --- a/requirements.txt +++ b/requirements.txt @@ -8,7 +8,7 @@ pydub==0.23.1 sox==1.3.7 torchaudio==0.3.1 aubio==0.4.9 -tensorflow_io==0.10.0 +tensorflow_io_nightly==0.10.0.dev2227 PyGObject seaborn pandas From b4be19c62d553ae69fb122e14837b57b9485b868 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Fri, 6 Dec 2019 17:28:49 +0100 Subject: [PATCH 07/30] update tensorflow benchmark to reflect 2.1/tfio --- benchmark_tf.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/benchmark_tf.py b/benchmark_tf.py index bd5495d..c009d41 100644 --- a/benchmark_tf.py +++ b/benchmark_tf.py @@ -72,9 +72,14 @@ def _py_loader_function(fp): ) dataset = tf.data.Dataset.from_tensor_slices(audio_files) - if lib in ["tf_decode_wav", "tfio_fromaudio"]: + if lib in ["tf_decode_wav"]: dataset = dataset.map( - lambda x: loaders.load_tf_decode_wav(x, args.ext), + lambda x: loaders.load_tf_decode_wav(x), + num_parallel_calls=1 + ) + elif lib in ["tfio_fromaudio"]: + dataset = dataset.map( + lambda x: loaders.load_tfio_fromaudio(x), num_parallel_calls=1 ) else: From 0c9a78a91c9542d1df238e1cde474126d888ec17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Wed, 15 Jan 2020 15:48:28 +0100 Subject: [PATCH 08/30] update to tf2.1 and tfio 0.11 --- requirements.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/requirements.txt b/requirements.txt index 811a2ec..98575d2 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,5 @@ -scipy==1.3.1 -tensorflow==2.0.0 +scipy==1.4.1 +tensorflow==2.1.0 audioread==2.1.8 librosa==0.7.1 SoundFile==0.10.2 @@ -8,7 +8,7 @@ pydub==0.23.1 sox==1.3.7 torchaudio==0.3.1 aubio==0.4.9 -tensorflow_io_nightly==0.10.0.dev2227 +tensorflow_io==0.11.0 PyGObject seaborn pandas From e94353544e3871b78135da5e0594d247553e16e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Wed, 15 Jan 2020 17:06:29 +0100 Subject: [PATCH 09/30] update loaders --- README.md | 8 +++++++- benchmark_metadata.py | 1 - benchmark_np.py | 16 +++++++--------- benchmark_pytorch.py | 1 - benchmark_tf.py | 12 ++++++++---- loaders.py | 12 +++++++++--- plot.py | 13 +++++++------ requirements.txt | 2 +- 8 files changed, 39 insertions(+), 26 deletions(-) diff --git a/README.md b/README.md index 2cc3274..b3fb047 100644 --- a/README.md +++ b/README.md @@ -72,7 +72,13 @@ Build the docker container using docker build -t audio_benchmark . ``` It installs all the package requirements for all audio libraries. -Afterwards, mount the data directory into the docker container. +Afterwards, mount the data directory into the docker container and run `run.sh` inside the +container, e.g.: + +```bash +docker run -v /home/user/repos/python_audio_loading_benchmark/:/app \ + -it audio_benchmark:latest /bin/bash run.sh +``` ### Setting up in a virtual environment diff --git a/benchmark_metadata.py b/benchmark_metadata.py index 7b43f6d..c42c1c7 100644 --- a/benchmark_metadata.py +++ b/benchmark_metadata.py @@ -61,7 +61,6 @@ def __len__(self): 'soundfile', 'sox', 'audioread', - # 'pydub', # too slow ] for lib in libs: diff --git a/benchmark_np.py b/benchmark_np.py index 53a2ff5..9b0a82e 100644 --- a/benchmark_np.py +++ b/benchmark_np.py @@ -43,7 +43,7 @@ def __len__(self): if __name__ == "__main__": - + parser = argparse.ArgumentParser(description='Process some integers.') parser.add_argument('--ext', type=str, default="wav") args = parser.parse_args() @@ -62,11 +62,10 @@ def __len__(self): libs = [ 'ar_gstreamer', 'ar_ffmpeg', - 'ar_mad', 'aubio', 'pydub', - 'soundfile', - 'librosa', + 'soundfile', + 'librosa', 'scipy', 'scipy_mmap' ] @@ -78,12 +77,11 @@ def __len__(self): try: duration = int(audio_dir) dataset = AudioFolder( - os.path.join(root, audio_dir), - lib='load_' + lib, - extension=args.ext + os.path.join(root, audio_dir), + lib='load_' + lib, + extension=args.ext ) - - + start = time.time() for fp in dataset.audio_files: diff --git a/benchmark_pytorch.py b/benchmark_pytorch.py index d71cb57..42052e0 100644 --- a/benchmark_pytorch.py +++ b/benchmark_pytorch.py @@ -65,7 +65,6 @@ def __len__(self): libs = [ 'ar_gstreamer', 'ar_ffmpeg', - 'ar_mad', 'aubio', 'pydub', 'soundfile', diff --git a/benchmark_tf.py b/benchmark_tf.py index c009d41..72d0f6c 100644 --- a/benchmark_tf.py +++ b/benchmark_tf.py @@ -50,7 +50,6 @@ def _py_loader_function(fp): libs = [ 'ar_gstreamer', 'ar_ffmpeg', - 'ar_mad', 'aubio', 'pydub', 'soundfile', @@ -58,7 +57,7 @@ def _py_loader_function(fp): 'scipy', 'scipy_mmap', 'tf_decode_wav', - 'tfio_fromaudio' + 'tfio_fromaudio', ] for lib in libs: @@ -82,6 +81,11 @@ def _py_loader_function(fp): lambda x: loaders.load_tfio_fromaudio(x), num_parallel_calls=1 ) + elif lib in ["tfio_fromffmpeg"]: + dataset = dataset.map( + lambda x: loaders.load_tfio_fromffmpeg(x), + num_parallel_calls=1 + ) else: loader_function = getattr(loaders, 'load_' + lib) dataset = dataset.map( @@ -90,11 +94,11 @@ def _py_loader_function(fp): [filename], [tf.float32] ), - num_parallel_calls=1 + num_parallel_calls=4 ) dataset = dataset.apply(tf.data.experimental.ignore_errors()) - dataset = dataset.batch(1) + # dataset = dataset.batch(4) start = time.time() for audio in dataset: diff --git a/loaders.py b/loaders.py index bcf9d19..9a9c269 100644 --- a/loaders.py +++ b/loaders.py @@ -1,6 +1,6 @@ from scipy.io import wavfile import audioread.rawread -# import audioread.gstdec +import audioread.gstdec import audioread.maddec import audioread.ffdec import matplotlib.pyplot as plt @@ -20,12 +20,20 @@ """ +@tf.function +def load_tfio_fromffmpeg(fp): + # not supported yet + audio = tfio.IOTensor.graph(tf.int16).from_ffmpeg(fp) + return tf.cast(audio.to_tensor(), tf.float32) / 32767.0 + + @tf.function def load_tfio_fromaudio(fp): audio = tfio.IOTensor.graph(tf.int16).from_audio(fp) return tf.cast(audio.to_tensor(), tf.float32) / 32767.0 +@tf.function def load_tf_decode_wav(fp, ext="wav", rate=44100): audio, rate = tf.audio.decode_wav(tf.io.read_file(fp)) return tf.cast(audio, tf.float32) @@ -104,8 +112,6 @@ def load_pydub(fp): def load_librosa(fp): - """Librosa audio loading is using - """ # loading with `sr=None` is disabling the internal resampling sig, rate = librosa.load(fp, sr=None) return sig diff --git a/plot.py b/plot.py index 02e1418..dcfe71b 100644 --- a/plot.py +++ b/plot.py @@ -6,7 +6,9 @@ for package in ['pytorch', 'tf', 'np', 'metadata']: dfs = [] for ext in ["wav", "mp3", "mp4", "ogg", "flac"]: - dfs.append(pd.read_pickle("results/benchmark_%s_%s.pickle" % (package, ext))) + dfs.append( + pd.read_pickle("results/benchmark_%s_%s.pickle" % (package, ext)) + ) df = pd.concat(dfs, ignore_index=True) @@ -19,17 +21,16 @@ fig = plt.figure() g = sns.catplot( - x="time", - y="lib", + x="time", + y="lib", kind='bar', - hue='ext', + hue='ext', order=ordered_libs, data=df, - height=6.6, + height=6.6, aspect=1, legend=False ) g.despine(left=True) plt.legend(loc='upper right') g.savefig("results/benchmark_%s.png" % package) - diff --git a/requirements.txt b/requirements.txt index 98575d2..84bbc4e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ scipy==1.4.1 tensorflow==2.1.0 audioread==2.1.8 -librosa==0.7.1 +librosa==0.7.2 SoundFile==0.10.2 torch==1.3.0 pydub==0.23.1 From 312116b221d9b8cf4157341c8b11acceeb0a45ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Wed, 15 Jan 2020 17:07:36 +0100 Subject: [PATCH 10/30] remove lib_mad since it is slow and only reads mp3 --- Dockerfile | 2 -- README.md | 1 - requirements.txt | 1 - 3 files changed, 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index 0efe8fa..81d39d1 100644 --- a/Dockerfile +++ b/Dockerfile @@ -34,8 +34,6 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ libavutil-dev \ libswresample-dev \ libfftw3-dev \ - libmad0 \ - libmad0-dev \ python-gst-1.0 \ python3-gst-1.0 \ libsndfile1 &&\ diff --git a/README.md b/README.md index b3fb047..a4aa518 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,6 @@ This is relevant for machine learning models that today often process raw (time | [soundfile](https://pysoundfile.readthedocs.io/en/0.9.0/) ([libsndfile](http://www.mega-nerd.com/libsndfile/)) | 0.9.0 | [`soundfile`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L50) | Numpy | PCM, Ogg, Flac | ✅ | | [pydub](https://github.com/jiaaro/pydub) | 0.23.1 | [`pydub`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L97) | Python Array | PCM, MP3, OGG or other FFMPEG/libav supported codec | ❌ | | [aubio](https://github.com/aubio/aubio) | 0.4.9 | [`aubio`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L32) | Numpy Array | PCM, MP3, OGG or other avconv supported code | ✅ | -| [audioread](https://github.com/beetbox/audioread) ([libmad](https://www.underbit.com/products/mad/)) | 2.1.6 | [`ar_mad`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L77) | Numpy Array | FFMPEG | ❌ | | [audioread](https://github.com/beetbox/audioread) ([gstreamer](https://gstreamer.freedesktop.org/)) |2.1.6 | [`ar_gstreamer`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L67) | Numpy Array | all of FFMPEG | ❌ | | [audioread](https://github.com/beetbox/audioread) ([FFMPEG](https://www.ffmpeg.org/)) | 2.1.6 | [`ar_ffmpeg`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L87) | Numpy Array | all of FFMPEG | ❌ | | [librosa](https://librosa.github.io/) | 0.6.2 | [`librosa`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L104) | Numpy Array | relies on audioread | ✅ | diff --git a/requirements.txt b/requirements.txt index 84bbc4e..22571ec 100644 --- a/requirements.txt +++ b/requirements.txt @@ -14,5 +14,4 @@ seaborn pandas ipython torchvision -pymad cffi From b39094ad18df56f66e00340b1fe83854b88980b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Wed, 15 Jan 2020 17:14:12 +0100 Subject: [PATCH 11/30] update torch requirements --- requirements.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index 22571ec..e21173c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,10 +3,10 @@ tensorflow==2.1.0 audioread==2.1.8 librosa==0.7.2 SoundFile==0.10.2 -torch==1.3.0 +torch==1.3.1 pydub==0.23.1 sox==1.3.7 -torchaudio==0.3.1 +torchaudio==0.3.2 aubio==0.4.9 tensorflow_io==0.11.0 PyGObject From 09b93e8c7ad6d40f8bc73542300fc9e9a17e58ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Wed, 15 Jan 2020 17:38:43 +0100 Subject: [PATCH 12/30] remove mad --- loaders.py | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/loaders.py b/loaders.py index 9a9c269..7ed73ca 100644 --- a/loaders.py +++ b/loaders.py @@ -1,7 +1,6 @@ from scipy.io import wavfile import audioread.rawread import audioread.gstdec -import audioread.maddec import audioread.ffdec import matplotlib.pyplot as plt import soundfile as sf @@ -84,16 +83,6 @@ def load_ar_gstreamer(fp): return sig -def load_ar_mad(fp): - with audioread.maddec.MadAudioFile(fp) as f: - total_frames = 0 - for buf in f: - sig = _convert_buffer_to_float(buf) - sig = sig.reshape(f.channels, -1) - total_frames += sig.shape[1] - return sig - - def load_ar_ffmpeg(fp): with audioread.ffdec.FFmpegAudioFile(fp) as f: total_frames = 0 From 14bce1d5781dea7a0b6e17c127626c6cca8cbab5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Wed, 15 Jan 2020 17:46:11 +0100 Subject: [PATCH 13/30] do not print --- benchmark_tf.py | 1 - 1 file changed, 1 deletion(-) diff --git a/benchmark_tf.py b/benchmark_tf.py index 72d0f6c..ffc1339 100644 --- a/benchmark_tf.py +++ b/benchmark_tf.py @@ -103,7 +103,6 @@ def _py_loader_function(fp): for audio in dataset: value = tf.reduce_max(audio) - tf.print(value) end = time.time() From ee348fff58444a0843d3ba505943402798f30f58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Wed, 15 Jan 2020 17:54:45 +0100 Subject: [PATCH 14/30] libraries not included --- README.md | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index a4aa518..37b34f1 100644 --- a/README.md +++ b/README.md @@ -8,22 +8,25 @@ This is relevant for machine learning models that today often process raw (time | Library | Version | Short-Name/Code | Out Type | Supported codecs | Excerpts/Seeking | |-------------------------|---------|-----------------------|-------------------|-------------------| -----------------| -| [scipy.io.wavfile](https://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.io.wavfile.read.html#scipy.io.wavfile.read) | 0.14.0 | [`scipy`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L55) | Numpy | PCM (only 16 bit) | ❌ | -| [scipy.io.wavfile memmap](https://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.io.wavfile.read.html#scipy.io.wavfile.read) | 0.14.0 | [`scipy_mmap`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L61) | Numpy | PCM (only 16 bit) | ✅ | +| [scipy.io.wavfile](https://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.io.wavfile.read.html#scipy.io.wavfile.read) | 1.4.1 | [`scipy`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L55) | Numpy | PCM (only 16 bit) | ❌ | +| [scipy.io.wavfile memmap](https://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.io.wavfile.read.html#scipy.io.wavfile.read) | 1.4.1 | [`scipy_mmap`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L61) | Numpy | PCM (only 16 bit) | ✅ | | [soundfile](https://pysoundfile.readthedocs.io/en/0.9.0/) ([libsndfile](http://www.mega-nerd.com/libsndfile/)) | 0.9.0 | [`soundfile`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L50) | Numpy | PCM, Ogg, Flac | ✅ | | [pydub](https://github.com/jiaaro/pydub) | 0.23.1 | [`pydub`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L97) | Python Array | PCM, MP3, OGG or other FFMPEG/libav supported codec | ❌ | | [aubio](https://github.com/aubio/aubio) | 0.4.9 | [`aubio`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L32) | Numpy Array | PCM, MP3, OGG or other avconv supported code | ✅ | -| [audioread](https://github.com/beetbox/audioread) ([gstreamer](https://gstreamer.freedesktop.org/)) |2.1.6 | [`ar_gstreamer`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L67) | Numpy Array | all of FFMPEG | ❌ | -| [audioread](https://github.com/beetbox/audioread) ([FFMPEG](https://www.ffmpeg.org/)) | 2.1.6 | [`ar_ffmpeg`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L87) | Numpy Array | all of FFMPEG | ❌ | -| [librosa](https://librosa.github.io/) | 0.6.2 | [`librosa`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L104) | Numpy Array | relies on audioread | ✅ | -| [tensorflow `tf.io.audio.decode_wav`](https://www.tensorflow.org/api_docs/python/tf/contrib/ffmpeg/decode_audio) | 2.0 | [`tf_decode_wav`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L22) | Tensorflow Tensor | PCM (only 16 bit) | ❌ | -| [torchaudio](https://github.com/pytorch/audio) | 0.3.1 | [`torchaudio`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L45) | PyTorch Tensor | all codecs supported by Sox | ✅ | +| [audioread](https://github.com/beetbox/audioread) ([gstreamer](https://gstreamer.freedesktop.org/)) | 2.1.8 | [`ar_gstreamer`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L67) | Numpy Array | all of FFMPEG | ❌ | +| [audioread](https://github.com/beetbox/audioread) ([FFMPEG](https://www.ffmpeg.org/)) | 2.1.8 | [`ar_ffmpeg`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L87) | Numpy Array | all of FFMPEG | ❌ | +| [librosa](https://librosa.github.io/) | 0.7.2 | [`librosa`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L104) | Numpy Array | relies on audioread | ✅ | +| [tensorflow `tf.io.audio.decode_wav`](https://www.tensorflow.org/api_docs/python/tf/contrib/ffmpeg/decode_audio) | 2.1 | [`tf_decode_wav`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L22) | Tensorflow Tensor | PCM (only 16 bit) | ❌ | +| [tensorflow-io `from_audio`](https://www.tensorflow.org/io/api_docs/python/tfio/v0/IOTensor#from_audio) | 0.11.0 | [`tfio_fromaudio`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L22) | Tensorflow Tensor | PCM, Ogg, Flac | ✅ | -### Not tested +| [torchaudio](https://github.com/pytorch/audio) | 0.3.2 | [`torchaudio`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L45) | PyTorch Tensor | all codecs supported by Sox | ✅ | + +### Not included * __[audioread (coreaudio)](https://github.com/beetbox/audioread/blob/master/audioread/macca.py)__: only available on macOS. -* __[madmom](https://github.com/CPJKU/madmom):__ same ffmpeg interface as `ar_ffmpeg`. -* __[python builtin `wave`](https://docs.python.org/3.7/library/wave.html)__: TODO +* __[madmom](https://github.com/CPJKU/madmom)__: same ffmpeg interface as `ar_ffmpeg`. +* __[pymad](https://github.com/jaqx0r/pymad)__: only support for MP3 +* __[python builtin `wave`](https://docs.python.org/3.7/library/wave.html)__: TODO (open for PR) ## Results From b5c083a7689f426f5b6d2de8691273144075d6f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Thu, 16 Jan 2020 15:39:40 +0100 Subject: [PATCH 15/30] update torchaudio to 0.4.0 --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index e21173c..d84e53f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,7 +6,7 @@ SoundFile==0.10.2 torch==1.3.1 pydub==0.23.1 sox==1.3.7 -torchaudio==0.3.2 +torchaudio==0.4.0 aubio==0.4.9 tensorflow_io==0.11.0 PyGObject From 92a728d8b913049b1440e243c93dc85c5854decf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Thu, 16 Jan 2020 16:08:33 +0100 Subject: [PATCH 16/30] also update torchaudio --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index d84e53f..bd8d00e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,7 +3,7 @@ tensorflow==2.1.0 audioread==2.1.8 librosa==0.7.2 SoundFile==0.10.2 -torch==1.3.1 +torch==1.4.0 pydub==0.23.1 sox==1.3.7 torchaudio==0.4.0 From 4942deab9f1d79c0601e292c42cf0fe505a7a403 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Tue, 21 Jan 2020 11:05:41 +0100 Subject: [PATCH 17/30] add remaining libs --- benchmark_pytorch.py | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/benchmark_pytorch.py b/benchmark_pytorch.py index 42052e0..f44ad3a 100644 --- a/benchmark_pytorch.py +++ b/benchmark_pytorch.py @@ -28,7 +28,6 @@ class AudioFolder(torch.utils.data.Dataset): def __init__( self, root, - download=True, extension='wav', lib="librosa", ): @@ -46,7 +45,7 @@ def __len__(self): if __name__ == "__main__": - + parser = argparse.ArgumentParser(description='Process some integers.') parser.add_argument('--ext', type=str, default="wav") args = parser.parse_args() @@ -74,10 +73,19 @@ def __len__(self): ] if args.ext != "mp4": - libs.append('torchaudio') + libs.append('torchaudio_sox') + libs.append('torchaudio_soundfile') for lib in libs: print("Testing: %s" % lib) + if "torchaudio" in lib: + backend = lib.split("torchaudio_")[-1] + import torchaudio + torchaudio.set_audio_backend(backend) + call_fun = "load_torchaudio" + else: + call_fun = 'load_' + lib + for root, dirs, fnames in sorted(os.walk('AUDIO')): for audio_dir in dirs: try: @@ -85,7 +93,7 @@ def __len__(self): data = torch.utils.data.DataLoader( AudioFolder( os.path.join(root, audio_dir), - lib='load_' + lib, + lib=call_fun, extension=args.ext ), batch_size=1, @@ -105,6 +113,7 @@ def __len__(self): time=float(end-start) / len(data), ) except: + "Error but continue" continue - store.df.to_pickle("results/benchmark_%s_%s.pickle" % ("pytorch", args.ext)) \ No newline at end of file + store.df.to_pickle("results/benchmark_%s_%s.pickle" % ("pytorch", args.ext)) From dcf79a79b49f0f1f5e73ac95c1b09c5d26de922b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Tue, 21 Jan 2020 11:06:25 +0100 Subject: [PATCH 18/30] make plot log scale --- plot.py | 1 + 1 file changed, 1 insertion(+) diff --git a/plot.py b/plot.py index dcfe71b..ecc24ef 100644 --- a/plot.py +++ b/plot.py @@ -31,6 +31,7 @@ aspect=1, legend=False ) + g.set(xscale="log") g.despine(left=True) plt.legend(loc='upper right') g.savefig("results/benchmark_%s.png" % package) From 5642f8aa9972a2387b3ed3686a3aa8922a7820db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Tue, 21 Jan 2020 20:42:49 +0100 Subject: [PATCH 19/30] update results --- results/benchmark_metadata.png | Bin 19708 -> 19328 bytes results/benchmark_metadata_flac.pickle | Bin 2093 -> 2087 bytes results/benchmark_metadata_mp3.pickle | Bin 1628 -> 1852 bytes results/benchmark_metadata_mp4.pickle | Bin 1162 -> 1389 bytes results/benchmark_metadata_ogg.pickle | Bin 2092 -> 1851 bytes results/benchmark_metadata_wav.pickle | Bin 2092 -> 2086 bytes results/benchmark_np.png | Bin 25930 -> 23842 bytes results/benchmark_np_flac.pickle | Bin 2323 -> 2323 bytes results/benchmark_np_mp3.pickle | Bin 2319 -> 2088 bytes results/benchmark_np_mp4.pickle | Bin 2088 -> 2088 bytes results/benchmark_np_ogg.pickle | Bin 2092 -> 2092 bytes results/benchmark_np_wav.pickle | Bin 2948 -> 2787 bytes results/benchmark_pytorch.png | Bin 28229 -> 29417 bytes results/benchmark_pytorch_flac.pickle | Bin 2558 -> 2807 bytes results/benchmark_pytorch_mp3.pickle | Bin 2554 -> 2327 bytes results/benchmark_pytorch_mp4.pickle | Bin 1986 -> 2088 bytes results/benchmark_pytorch_ogg.pickle | Bin 2327 -> 2337 bytes results/benchmark_pytorch_wav.pickle | Bin 3183 -> 3271 bytes results/benchmark_tf.png | Bin 25986 -> 31269 bytes results/benchmark_tf_flac.pickle | Bin 2089 -> 3265 bytes results/benchmark_tf_mp3.pickle | Bin 2553 -> 3264 bytes results/benchmark_tf_mp4.pickle | Bin 2322 -> 3264 bytes results/benchmark_tf_ogg.pickle | Bin 2092 -> 3264 bytes results/benchmark_tf_wav.pickle | Bin 2948 -> 3264 bytes 24 files changed, 0 insertions(+), 0 deletions(-) diff --git a/results/benchmark_metadata.png b/results/benchmark_metadata.png index 0be9d38710eccc7678239a06a443f8e0678c96cc..be192998375297631c4c26c7fb0408b1c9a4328b 100644 GIT binary patch literal 19328 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 SioPuigB6pxmU-poz5fGKC{kqr literal 19708 zcmc(H1yt7A+b!zY0tOZe7^svWDyXD|N(jg)g0#qM%sr zME+Z|3g5{zwSI!Xela;KEVBlGY}efS4PUP{x^&Hif`a-6`EOaIV1zcldCFAis;RW0 zhN;C3V|5Ds8>U8jhNgPjH}{yU8=Ghw8tgg7euVuP+a4`bQzIS@j(`3DyP>frhu`{` z5DJPt6vF4v$XLD{Xtq&uGkd$ZI8}CpC6d{H^wrDe?~d{NL=N^QNX5t|-R<{qii)Mn zul+0~oXl1cUVpGR$Lf8#PTjqfoGh~#GJcEzfe#(?seLSuQo{1 zETf>f{#)=Gd~uFO2>;&^%(R?>B7dXMCVcUL2^&UnXzl3ERqc*F}6 z`DHKDoW5qu?(UAidD3ueQO4XRp-NGj?b}N`jlJnYKHttzdYQGZEn9X&cU=2Pi>(D# zF(*GZyZp%;&3Mt_&D+*JEC_0EznP@=;j7UlS9aB0Hs5j$W1n3~jf1kTFUZQpx{Wi& z=ciixn=(u^E*L>fL5bbd$;rtrAb>+yr#4zPOy76u z|GMIU@NnK@t_Rz-VEx9_Vx9R4$Kj+3ftdGCcj*o_WrXkEf35TLe8ah-{3;x(6Ox}m< zdOn3qP*2~5r6&la=eO3X@aN~T{2n-9p7r+a+nSJz)PoHvqP@MneU%{(8MQl0+(m?i zD-G?(c7=t8G95mAnUj-~zBSl*IA^M)(^$Lzb6iPzdF@bh7J0KIs>_?Hld$SC{j;2%U?gF`|lCL0Z70s~L0y?^qYQT^7fp4_>i>b5s`4+x7#NS``&3J+#t7-P_! z+1HwvC-CF@IdU!b?%j(6Qk!6?kxeH7e&q~yS<2Efo&3O5Z9!xt6WvLp)A;qF(H%52 zp^Njai?SCkJfLC_i1k#l7LE}2V@b(5b9WV4=4{(tYOy>YrrRW8)EMnOOk3MCZ#vwf zeC^t`q2MpLd-w0(?;Y>0UPnpkKHi~g;7rFGo}PXZS5BwrQ&3-HS^~RLdRt-~?{Ky> z)=~9*|HY+bP}gC^6Ekt(3sr=4s<8l{tD9SBXegtLw!=)RDxbg!gQlyZp6oeaQ)A^~ z1Qvgc84u>MaE_BJ6FcgW+K`&(Z%EN1*-%=#1be<} zur<|D3wDxF7j+#dKU+IcX>~9HNik)oP~~HqfD*ZpscRZVcx{zCL7Mn$DP=m+#$*ns zC9IvA($v&s<>r>NXg2fYG3yIOU`pV=$lbnuJ4N$G&ra;p)on559rQn@<=oYRIfI}p{6M8V;{A{^j+k-(3dZFrx>=XBx#ga(OER@ z6<)Vy&6U%q9c>u&8obo z8{3teH-owLz62h;?9=0|>7UW{X|yurVv60Ix!G__P9|0H)8HQUmYMKhC;j4Lq=m#g zJ3E;;CLnAd*OL ze?p#l!ZCxUlM{WlqF=v$^*LeaFCHKe=OVc9MJ)^ePbVj_Fh9r2!XmQepjhP4xe!w3 znx1_BZZtK_?R)v@t`p|e`$eU&MU27`5&`BC{Z(O)=cbVTSQ#15*Vp?`-C$SAz8V!3 zrI4)kJk_8%+MQKiu6D1|mMJD{@2~pnCx&h?PrXjiqx2PZy>sUd4FiLr@lgtj>=!OB zntrdZve8$wZF|gE+-dBtn-!;!;>wt!-zZ1*@Ek|Zxa<2TJEi-4zeH~qsw_<&HPN~m zvAkX}RW2stvo9U0_KxY%QjS{G31O)-XMQy{Hm0GawJz^eX7>~k5&34yL+T4fi(YS4 z*yz-he0BKc6w8sDGjnq>hON1-p_hHRi;IdbVq2o6Bb<>kBZMAr>wUAD!L8XK;qyz9 z6R(8S`zp_gDC#%4F!JLv`S9DM&P|*w^*Ai;$79Agf6^`IX5l)zQ^x0AYp{%`J2=mV zTzDFtYAb&QCH3^vPGg>ETvhgnbK7+5ADY+UkaQYa7Z;|as^j@avQd$QrP2(V$LsPI zYK?sJespq7l&UVgF54NsS%QBB>R1e4SRD6ILip0DUUVyv z4Ib#sOIHZ~_sfa3`% z@sPVbTO_#fHL+r_F|8j5B!gEcW$woh+o|jvn<<^~o=PWYXE|);@tg0~*iF>R56u+0 zFv#QWU%!6cRQ)kPFo8sL-N>aX%>cXbx#2ujKVAztJ-t{I240s97tU4m*Coie=GtxD zv?+-Ev$nSOiQ5{>D8AEEMRdGhU)w(4`~i2gHbqyy+CcHxpwmq$DOZHt_*lTAQb&=C zCnLZf|3r?#+h5EkKYEuxsJCwX@jWr?X+Mn(qh34@mps2Spe&OOvwT$uL}bXYK}o0;x#;nMuL zJ7>E6ab|yfRY++{x=SsZ7LpGC{H$t~+B9Jjx|rf;oY%35;DSGsd<-6Zwr(y2V9 z&N=27V9d)ePfFs?Z2MylvEu6rl6qfW1)+fV)y710mE&4(<4}q9IIP%*Lvt;>DS7p( z*XZadIpPD1jOmY6k)jSt_z$#vCP)Ft)feI-Aa&`|Z;Z@)_T;NM6c!d*ce=~d?AXC1 zOeWQrqE#cq6GkrZze` z`FQ=HIsa6X3GGRvKn=WAx$lXXYe^bD-15S?!yp3fFAECeDoFdsT}5djF8 zkz`s#XJM%~_w+=|6)mku>&XFa1<6=R34R6v+pEaS?u9pRO8^7-0yPr=o)uv>@TF2M zCpMN1fV)b0^V8|s*-X)3MgpoxQgsk8>vIdg>>G|$9HW?KFf{Lf@^-M&46nt|0B0QP zd7bhhUS7rL&!5v*@7urM3=es9csm7!*C7-ar2Sb0VeF>;7qpNteU99?lW9H}T~i}N zvi^%h5}(6FJ)8R3uD&|`=+UEwS2ynZ9M=xk^tXE7;rD^peBcw#aALHyOXX{Iy3b(7);F~43bBeN@DNGH6=D1f=-LGC9u^TDePOq*902!^C zm#dJfXH`CU@8QFK+}1i2b(WV0_U}Ij$V&>n{lZv43~~pL&19^N{fmQ_8HEo?_?t>( z&A#zqotYYJ?B+at?ATc593>?sAl!v0Hema>PqzVs`?k{44=prnB#|eiFZfXI!}WsE z<#}1m#ofr3u?Q`7O-)hPaEXBUUstRqs9Tn9{(;zGCtwCi4UKST2Eq7anjf`*5M~$V zhPh0-#OM$f0k)%$NDqM=V#DV(D$Q>_eg&ELy$eHv0~X6;KHw!VH*kzBqwE?=c#3xQ zLGpXv-rm+!b;s=aqR#f$#cr82U!wmQB^%3|XFtNxk1 z#W_J#U=cbV(<``GZa|jnx3fo{dq{<#IoG+8V}ZQruof}L` zL9a_m&v*5hM%kxld(VvzBvrH+DT;cqk#v7h{AJ{_6|1zqzP(Q`&uVyUa-g1tiRsgR z7rx-)7l#NWL?xcMiVJv(bQj~57fH4v_mX}LcOmY8s7Ft=gkUY;`viio*CKDO*=(vY z%}|wOu^73yDzseWU$pTGCA1YG*5is_LK z**tqY62)k8YJI9}wi`UWcdrLmb;@fpDPVpeQ{M`C`$081@eGr0+K)C^)Iyec;3Q9f_lTlO08RFQSJ#vXSB_;ng`I`$YhSXr8cCa9|-O_z+>LC$9GV0FZTaMlo_f(Qwzh6uCgD!b^zN!xo;64W7??9sP<-D4;1NcDFRmECBebVSax49; zXFVs@>v^5v_`je>a>|&6S@RZE3La2OBY&gc(IBsOMO2a|r%c0FR#i1KG&`FQ$)5Gp zsrrFSScC^5T}TI!clr)T?Duyz_{kMi5dv|ls@(=zm(QFz0|9Y2Ul-=`78TKbIsNwAr^g(*kstkd zMO_8v$EC{y1XWQ*`+#ui?Zzb!96ZRv&##=;Z0^h0E8#HvqQ$!ZFp7dWdQxQeDn-K_ z(kS~{X>9;l1882kew!AsAwk(v($ZVeBDVhMI>BQx^pZ4pYquO+YC}~QMz`}XOm`?` zTP7CG+Dr~qmU869k_?7+mvl!9{do(ep&=vhwl1~hEG#TlHp4j)h{I@!00Gxf?_-*M z0gFE(NCyFw&kP(c9WM5q@&1DceIOO+g}%Eu{0On08j3?dDNHJD?sWTl{pQS+2AA%L z-&@;O`?)x$$B(z}+}Z1|k=9t7VWLUW%|++k}jhl3}ZWONIKi_iRleOKr5hy}fn& zqeBGKaOu=sic?Jc?6j5DbY@hYa_71AD-o0l-4=$%@>&nxBhZVyCi=sg@3~3{a62_-FAOdARKR@3%Ji!)(*Nqef&}g^j z92V1=A5l;kUTJoyh`#ACoIU1@g)urfI1JV&U1XJyulfG9fZyXw7=?I&VX zz1^k-mq-O!t-hKlAH1WP=gj=DgX(4Nl81F2xXS;P@EqTa>swtDB@INwNv;+J#~I1- z%~n=c4LLSxt}kAcJEMQh{^bvvRHYqEjQrG4GZ(s0^7BTeMj1*z0(P0!<2^yZXOq>e1= zpp6nHA|c^f+9`#Y=Q3>J!%dLuAKCGhe(9!O5)r9FZK-{&E^4 z6llb1tm{GPhMh;>&D(&Y0Bd>t)`yKG%u(IzKoW(lqNMGas8jW9Ht=M;fA5}*=)&tj z(#*>|$E`$4y#@|N27NNvTt?;-C*%=8vT|}B!NI{`al;93N+I)WaPU6VbmoHxFQD|h zfzdEFF(IuMx&UD*&=_LkR(4GxJqN^Jp1ffWTGGgUU_g)LM2_t5ckog)+qQ*QM@ZPP zZK0=+M{>-1takYv0t9JQ<07I(UK?o$y#uaHgj$hvFDdL*VWRvVJAwSc%5mLpKM#;C z0g_EbR8$&pMmUQ9Cx3N(v2j;T$^3Ecs`EJ8YH%Cz2=OSqiqBDXCx5%i`o)3jR#o7l zTHS=4@GoDkqJbjx4k~#}4ck_spEPoHFUyqZD?@XK&KV64TypK2NXelJp!G2?L8G?Q zl)F!UQfsJFbr>AU0F+nAFjk)_kX!MO&VK7vnTm z)K4&F6mHjkv>c#GBXN%8%-Ob?1PGXCD9s`*9geBhvG&*n31Ak~wCU(KVXV9sp;wi9 znJhXSuwdQVwUPz~22W>16u{5oIO+!{X;oeQ%>yL!5C+KaAD?zl$T4lqh@ z2X^2E>VzbZpP8SXAhS48u5Eif1O9|ycx^o_fg>3t&tX5@{ z85G($l^g|NlS=fqq^3?!TXuf?Ci8X^_Fra$(8!^oyhZzo;Z{{3Ii1$roUStO5ERN@ zU&CDHF>b(V3vd~T(A~%dGe$NyJ0wr@aw3Kng(gBJ2T{+S%QGNO)+J zY2I>TBZ6!f=eVsqX=qVQtS9R=Ye8rLb4CRQ=JV%axvrt;%rhf)Do?O7GgqSTZw^RG zN+SFle#%`T6*7WOW$^u@N00J_Yu>sQiEMqsP7JF+9?KR1%UA;mA!l)6j>mdD(tO}c z5b{b!_v%%vKpx2{yuS4a+!SGY(9lKKm?Ps7f}^ZVY_K&?l_PgLIMcLOO6SXr6CmPY z)m$Y8yYc6*laf+E+R*V?UfF-qIrg>MN>GWLoZ4kUtrLnTA$L|}#cHY==u||wnzGGm zjwiebmR@ipdz7y>iiH`5(Zw?%?)ub`mdVU_G@pE+=1p%+}}?)J&uvtW8pS#-X$irMi| zvGDc~%Y!kw+b^>img?j`8;b5R?u>|x|24Qr2)&N%*B}RPLUdZLC29Z9GX-^0pvX(tN9i|S266VH<0%WznqZe7Z|vwu&7Ahm?mFES0{=EytgiY3H6u%=V0adbI_QA`k% z_1cK)sLARGU%HScC8~#P+`dbF+%hO0_iAmvyYP^WdeUeB4RRip!u{>V{EAvj>lgapZz;!f zFRw^C2c=NJRXSetvH|e-`Rhq&TU%!?C|ipEAqi1obC&;MRIq*o9W=(^?t3DtLaEU- z-;L;BX{t_El`#@V>h$cz_sA!c5>V| z*RRuv=MS`BDZ2aQcXuESJ-LM!i29NNdCVq_Sttbg@HWRYJc|#b?J&HyE3CNXgb>CTF+D*=FOTN7U$h*Uvt-^PX!I&?&=!s z=tu$CNw?Vb!01TSrzqU@BbV$ge=1$Con^Z_HXbIp_d3I5EGrzSOfqwZ6rj-f_=$~cY$IRN_t;K%zgMf1nl>#UsHSEBF1HB)4 zhh=Wv3ccXGJL>LgYPkk0WYoyt)@>~$HUM;lVd2AQZSj^T=t?fx+voZ_ELibReo>nR z&E|$pv!9=ZD#(1`fDj=r-I%4(ULP!c_l`+GKn3kVXG2kEsb`8#Ez4mr+YYdKxcmCX z%#3wsbtiztgdpj2Ow;*uf@;E@JIe{bJT!yeidN7*8`N=Bh2WynE^a-hYWqWwY082v_}XLy1$)lH%{OF(w zHnAbgB7s!@B^D!G%sW^@VCFnDp~?h@`TnEb5J@A&)Y+ZZu3Z}z9;ce80+kCCC%Fla z4*93g+!BP$%}bbE5(DpFp@kH>c+o~I&vxc@E(|H_453uCX}D)F`Pfyw zEZ3+8JaB*hJc!WV3TXy@1X|R_$hR6P$4nG$nv7YmjJS*Hw4c58y6|R3)aI+(AbiQ7 z+Be$O9DGDB!qqXZvED=$#o!BZ*yfLw5w3n$JG|8@ZF>@n*0C z(LkjntVjojEfaBFzG4L|RIG=uy*>{fdzg^Z0Br8O1;B|Zwll^=DFLB}Y%^l%nz?T% zv!9)?RX9LAgDcVY0|F8%1m?tG1(Jp1#6V|`&}Zcgr8!+?^I&0i z!Z)sC`^1&b0G|RCQ##jm(rVwJ%eejpLZE%2W?li zmDH^8mxXPB2EHg*Fk~&Wu+9^u?a_U{->)40j{%B*-dwV2ZW!p-1*9oq-pS32uOsKMF;&9|CP})YN%Cr_>?3!*CZJ;=9#$qCQzFcE$ zMDlZ)Hw%w-%>YyFTMnj6gAo!ZcyZP$FkSpR{Ch+K46Bx5_{)C3Jxa4?O$4KU;x)7A zCmecd^t|Cb1rOYH8E~UTE?t6~iW-n@V_d_|9j~3 z^IfdhUVL;;Jff5|!TFB?eBQ~g&UG#AJWfvR`#xeBR8rFW{|*Op?ll{n;5{4H+26l} zO?4Og+X7d;Qel5KJYrhU9w2S+ zak;=e&XW-dhy}9ivSrH-9{Po%$qC$l4MlE|d9nQh?=^>XrtYw@lG0LX6%~Kj9^GHQ z)HCO!$Up4#lb=B(api|O(pN3+vYt$=ulbS6kSBM9iRseF$jHHn6%R7 zp7n+}?nAeX;z}V2%T80KuWv3TskLppfw~7{gKvv-Y45W_otS&)DIB9uBRIFkT#n#A z7(FeMS}*B%H1WiG*`$lzBzBGH5Fb*uEQ*D#n!h)6^ssdNIo9PXTOQc(ZCm~L&n{VZx%7tow?h~L6SAdx8HGLeI@*b`VZ>s=*H6E$c$qaC9XobG_!mbXB)$V+Fv^{;=t5vF9$1sI zxto$Ao8d2$h$IbbF4!&P%vE~jAC1IY*_d0I}6zN8RfUBpD3*W zH6_Kxw(=trNgzL zuQ)w=BnhCNwF3%w0l~E@mS0!GMWhAtme?A$u`4k_7%`zn@HIgMbZ>*_4m7A_p8fnd zR9!Jxy@$Em~zk+WTAg zMfC}g3m}EngrP)u%$4y~Y_T#gX0_v9a!d?aH z;dkEMOpJskPEhPmvtx={5fyQf?A*DNzEtBUPedOeAA2=Oz0{+)qCx^zgxH~JEIkaQ zV*ajM8X7uKM*zV*VRMNFA>?<;VCFcioGAl4u`Ai0(z-f%Fyn5FXd`sdR1ryw_^g`k=LQeb|KrtRE0T*> z(mq+ClcLjfys}J+AeXo_yk*aOJvJq_CuKi?+n#OyNVKBNnIm$-m%9UsB z9UbNCS5rI#A#&Yyi6U|h{Rs{3XMiCJTgu9RLlFH=q^P)b2>G19SbE~fr-2>$X6`iG zqNmGtx@g;<8HExx7=V+0?DwD0>6&k7d+<`+GgeMCs+axYxoy7XBq{5Xt&6D* z&dYfblw@@uTNhuvIJv4%kgv*!{=g;*9eStW?f;PCmUy9!Zt3=}=(U0&Zr%rVfI-jy9R~3eTkoGPjLeywj=Pnkw5PSB z_qDP>x4%b#di5*ieo9a3f0XfP)|+t`3FVdII-IEdTJ_{t&T?kv;VP?w&au%^Hz@1Zpn+oda9qRsxZ}#Kl~3Q z6nehp;XjS=f4;B&)|2}z?x)EajWw2mgFc;-VKlSaFW0Dk{uH3#mTF4|;ypM;Ct`V| zieO+F)}^xE#aaH9n}cPHzMpd~(ubcXp~h6?W+yJ= z^LFWamIZ;IAX@ZF1|ZPi%r;r}A?4Pr%MjwunY+Bgk7+hB_o|+zdLxgR>%UyOot6DY z1RvC_8@8=JJ@@f*ZLdS4>1->vAB!;yE*=~KkjmwajbGPq%Axv+B$in2l(*kg?^{p3 zGHq{nM{o15zHkk`gryvma+X!_;X!j2BZt&9y#zUlxD%Yur_}z&TD0^)5&k)sa#A@* zwP|kx^k5fU9DG@ta}yE_-3{`%U!_C$uHS1kwp$z|Lm3OT?(bjkIr{#^9JEuH+>QU!#?FOA;Q3Two9f=|(1Yb`O}%LkYCtl6cDM1l6q? zV%j*^8&SCLfyN|Z)j*|4fmi(L?o(2z2bqJZjf}z=BO&t<6BttJ(-fTZ4rO@g(`q|* z*^l2w4*n!?6~09R#BfLmAu=1nNJd|vNs!kW+nI7WtTCT9B+bYV{;HhO?5j9{FfnVAuG1qLBZ9n>O>jY(Lv zSVe@3`$dBb$sDtV=0ylN_y;B)tNu9a!Z&)!Jpf}NS2EbPvyIkw@9)1~Wie@|IVWDg zO_|k|`Ok(~_5xcPt%XZFta8Uu+3mi+S*?(y@f2eMn>TL;!Yoa;2YExFneDU@pd}$C zVY|v2;$dcHR>-kVAv_oicErViUInOgzwlr_w9~f?GJ7hJXf>PJglc=euBOl3Zij&@YVmW zmhy)aI?z@C_%U~3R@V+;I;73+DT??brhMSI$>G)n5FbQo1azh^s!r8cBmRib@8b+G%q*1yEHwb>OR5}`hII649pjBbd|7U6TS~FVOTe= zKyw(HTZmsc>J1J~r_@}1Q62M~t*i z1$LcLn4j*`5jP#vk&)zslh}FpsbJ{78Lc+yHd6*uKQO*?$yMB+FAAG4EEN@Fk1It8 z*`nmKvNGMFBmm;yHC!_2HZ}g_$rCC0S^H>6+_PZ&fjDlRT!bl%I0Q*A12S90H5sQW zWwp4lm}W8cMzVH_zDO`j^eEpspN;q394QapI(vjKl5*9msC8$T?Yv=7#3B?z_xQJ( z#GWTNg>6N`lQ$Jdayp6xhE;ElYb)q1w$v64Wm@)>dD%_l{a-F^zDR$z?Dbrh!^v-% z#@F`@)F)--sveuUYw~en+CGnQ;86EKeRJ;ooqotyYusODdWV7CBO`KTt|=xc=nM?$ zun?W;Ucl**?PisWy<%sVgG88&=y2p3O7EZ={E~PMu3Ra6AGD)QOWh$6DFcIeT$zc_ ziiT0~@#46w)p?8ahUI>|Q`s(A5RH>HE9fDh$ApJpn3$MofMEv)tOLTolhUvR)_nOw zB=BBH%G6goNW$yu@0UgFWoGgaMxcRtS6yI!p z&a;PWpK8bsIZa|)*(k7vz@Jw%au)m@RXSs|EO|7O+ zq8#s+WnbVF*%2VY?o!l?k*nWW-q_kt%-D^l@9)p>3EUy1<8OIZpORAC6LBxobL!S_ zRi13OGdEnk-FwO@nd^AZ`N3sNOOU)n9C;Mi9|aORPxKeU0AAg<)MafxL8gT+>3EE{ z(x>?-vkSXsB}yiyHGj?!gup%3Y!R@EnttHQ{h*?qYtc3@HJ_U*)K^#?R(04gXv(g}mKN870)q1@HkKVy9NmXI&g(;w%N&nkb+jL}7Z z+_|(2;kB*?V>7&qO>-9otGwJ<{aBec81(|cPzm z2kQ77Ieym{e(V^t`ptOu-C8R}#fpX&lMfqLN3Z2zS9@|hbBz*DUh4-8ASi=t+|+Gb z5%j+MMQO*{+d^OO9&?g>J7}&wmPtLKUcEL#bQ#5-o9~oAE1sCQ9lzFSClEkV9PEU4 z4r=?(a7NqKo1VQ$?a*n8m7TvY9U*>7`A$c=H?G;=uag`MZ%a$G3sqi3$Dn3jRH{v$ zqC?|+aAyY(4-XAGa$H2P3w8v7G>1K)BhUGp&K#9|&*P3o-JEJxzmsMQX&$;dI%I!g zu+xuZ&%XV0gH956Zg9hg&_}a9-xqrpl&_l>2K z4^{{m68x0zrpPu$d8sdA(c0+k(xXO4N4vSZAE=m`PQppy-2O|5{5;X0$MH_NLXvUl zb&I$skox(r8Dl@zU?(jaB7E%y8kU0eB;`o54`|Laj8fQLv^)9TNNpfB| z#a1AoTK)X)fQks8gamDN^O=G9zy!$7&9Dbu;0yl$qJ zpI_skN2%G@fb$(kHKkVV^Qh>SmX&p{R!7(!@x;Ek6q&p!+CmfJ$a%p&ua!LGX|Ika zBp&bl&As}wRo(O=dKs!tC<=4A_pys`q4Exo80O8V63ByZUJejY#u$Q1zP;KL;>W>& zD?yDA&!mx#pVFP&?`1M(oip1!Y#-5E9YI8HNU6k$?&IS#U{J8>&4T}2DuzUqh_x6~ zS$C9D#s<6^!MmE`b#=vAE3oWaeR) zf1R|lNU3aqYWK-NGEWBt!!umbR=8kuKKOb?TxjTdV5=Au&M+8AiSgdd%#7Q-ZR6cn zViSr?v>Q9n9OEij!Q8WG`JRV8Kez3q&&jLa>Vq{^U` z^11*`VYuZ9Cj?MVB$h5{(p-4sql1HkK>!19{2QUHmq9!&1G>?MU4smxsA*LA>qDX1 zT9SJ9t@CikF$@js!5Mx74yrO(^Yu&)1*sP`(bCeEan&iQ;SOCkGfUCd(mDbrj=$UI z`3L6=qFZ-8*ky3U-Q7JrF|m@^n8_l+fjx+hdzSvC9%KG>DEMB$rQR6A`#7rk{bt>h z^X6rP@mWJhAw?faNl6J04}TA-jb8&SSQjWaZi_7nzZ4!hZZoO(!qc;EMl+y76RQ$~ zY}q+N&G+4L26LG^U+IHX(?A>Yeuvr*`@9TjhGix0th`eUaEv^GgHW#_x%dIq%S{6r z*XjXJgfCy_dPvPcC0=>sZG8QFx8Nct1{hD^{kwqkT`~i;ikct*-lDhe*=w_oYKwUp zaF#Y1PH*!9{P7n2@s;{aY?IY?-Yi4jx{9{2*qzLX5sQ@MWG_seC4og1W#$?%>OECv zYHErKtpGN$zp2YSi@<02*^5RwWo2bcK7OS7;sO0LI+{gzX)F_;Vz4T6GvT5O-*3zPWH@G$`l*dW~(F+hJB}+o2O^D>8TsT9WH{Ofli=PV3@Dd z^wg$;;VDs9`_UHxTF`%8L%}u^lupn{d`1`T>X`M0u!bP7SFPvB4g`$VhSh*5MG#=~ zy&3bV(B1PGwK*ML|Jfd1_j6^2>=`6FVVVYtGA!4|c5H zu;Ww4VW6)zFYw~4lWdE=aHbu@GKtQNMACytdm5ee$dx~-5n}{+5!3mJI*XyH8Cya= zW9i9|yZ2aZvNkU}4BIO9R2shed`?_=;z_-8HOFMYOVP$Ai@-j3Djsb)B;raYVSRjP z;ece(xpPxqqx+rD*Y`v8V`F2ol9EASsrz6m%={n_BGST)+tQEX3xY$!KbuZBJb{(8|xTL40^$AfK zjLTv}YxImR$rqnO&|=v^nX@q4@23j!oqT=;Zs(xx!FyOTc~|t>=;BxHmR40wz-Kw^ zv1r@C+hq=yg;h>V(nl2=KKh+%cba}R$vnz?=<|jX<`Y^^Bq24V>eUAm8xvF(stXx6 zijwe&En(u@e?5&6+s_z^<$^w5`2M{Pj4jboQI*6{g1%D+9ex95=eiAxv6v-iDteQN z!A5zgDAi=PkT{YM?Zz2OJa)6m*k-i&`x5G6h${w(lz2-s%^o{%DShMbTi0Lv_WpWV z0BsDHM3PTSKyWK6`XWxgjacp;I%#=_KMQ^zcyPxSh3f4hDA zb}|=ARt(la23VTZ9>9L%*Uf=zC!5g8;+)ulmM`O|kG|IeL1K+LP%hY!)HO7Cnr?qr z8W;c+l2KHQ>FUxTyNnfsn9FWxXsF3^SX{4gj26L$!7|b&RPax|L@&=9z`#c@QNx!Y z(r!mnAbahaw>Rc(i$8ogLgw9(oBZYs^5)IQFfg`y_aeF$Z(oDV;#;?Fd0`gB8!_fM zk5bMzH;|+OB|-yZ99`S|iak%7Zx_)K*^G?D3Afs=8br{AfqKtSVt*L3V&hT2U~x1Oneoh z2ySdXjg6!^L$^<4G`QA2AtgJFx?532J&Fj@&Lz|kENV|;B z_pk=bb*_%l@zsSZzc{X`Ln-|Dj7b<7l!SAFO3w1sl+;uaSKP18v6{%zB$8Ks@Co4Tgv4hZY(>yKLU5oHv?o`0L)W->YLD#fPzh=?0( z2M>lHYg;J_ZxA50f}$cAs4s!>lzTFb>W)#|O9Wkn#3mnLH|dRkyt|n;A-#PaL6?Ln zgY;XAejF(|3OH`-)~%i@#~mZjVBts1>y#~uJ4Uns7;x3e#6P{8S%6j7&SvA%!({9i zetg2O_v14F$lUJT*8+|``G-gonZJ3d!Tr-N^Uu)m-v@cs;xd7=?1#>I=AOfAQwR%* LpN~I#{m%aaj$Klf diff --git a/results/benchmark_metadata_flac.pickle b/results/benchmark_metadata_flac.pickle index 75d36a8769e46bd632d00971a48c212cd521e0cc..778f777011d0c862454367775a85a815b6469e78 100644 GIT binary patch literal 2087 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 G5&0L4HO0aJ literal 1628 zcmcIkO-PhM7~cQ<3B$rr2t5?F_Vck~L5K1qmC7bpw8DOnZFYBbmUh2y`+iEJEkiVd zi4IPQ(J5^6)WMSnmyTWRP(+8oQy@f_0`U~oJ2UG~8cPt(!1vDk&h!2}^Ub`&fydn; zj~uKzi;X03~K!dZDccJN8L9_Nksc#elzc`QR5oP-VD$5|le3}pc*^rBNR zCO29A`hY3JA(nyDwwA#L9w3&@+1A#ynYh-ebS@Kw`yfN@?~X|_NNg>RZ78TBW{{h) z4g+l9K)12r%372bFhtc+7ElG$7;YvzqzGl)w3EV?g@+(-%pwWXupP@yI1q*fC6Kc% zZ~ziA&XH%7w|V3IKJVdS{d2jP*Gvlphh%=y3q(Cs1lv} z*Zooj>|wtC4HxLxh705o7pQgEs~)N6O|SlT9)_0CrR7tn{&W&XO;~RhW2sH*b-9ar zzZe~TO2&)$r55F9cSt#WJtpIw{eD5|wOGY_a#{J&BMSfMoV4Srywv&Uyv*0tnU}a% z9%a9}{6fb2@m}qZd{eSne<}USKICPbOT9|3eU?}G^=T>3FQ|C?b!DHPFUAWi{9WNqlxVW^swWd^JmSfKru#oZJ%MFW;WJDp01jt0%l pr`j0{-N0#A#AtB^-CHyVTYj}khw156s~-hctx=b_wjdGLegRAgWHA5$ diff --git a/results/benchmark_metadata_mp4.pickle b/results/benchmark_metadata_mp4.pickle index ca3a8c8845e3e7efe28a734e37098b9245f77e38..d0ebe1d6a2b6b60cac0b9775c47ad4c71df11b4c 100644 GIT binary patch literal 1389 zcmbtUOKTKC5T4nciFqOk2Hi`Hhr~?|gE4zBkhmHpJ{mU|!Gju>p55N`ka=w8VX|N# z5)uitr)`z^1H?m!XKw+))A|Fv=t-|x5f7rE)jbL3p%JkMrn;-@>#FK{ENG8RU6G5m zm$6&Kfl=^$Vw8OB5YCz|;t-F?eU1!7iR6e!yAl zsO=S|uf=CB@##sp;Mi_pk<5|6FmV9(n)5E1&0leW2LRf_^zFT{ti^^q-N-3dVn3b8 z4lV5axB~X_J}G!^5c*Le1US>BB4>vnE~!%GNLk_+RFgm86FiMnq%CpU$@F4aDH8!n zjGqA=q{i|jQ}6LyE_d|@Ecrv(kee$aiX@o}IZN7>$ysAD@^NT+E@xV3!NU>IVwx-7 zFc&R@E!xIXzYE*P?v#joLeL$t(*7LNgAn^6xWlv{^vWD{iw%K|D(@uV20cQLikN6> zJE8>YUgq>f?4wi8a60@yAJcJUS{|n(2YsvwM@0(?2NyX#d(bCdX1~+wFQ?IU)Q2kQ zAtdJs>O{9u3tB`39Y-Fzga*;b-{c1w=wgY|p8O8)$*&^vJF2LPG6<{M=Vza;!usw= z`t{CC_D!u;Tl+GTEr~TdofUdF76VB?*K8@Tt(T?zW0##3-LVm&^x=HFO8*e4< z<@uiYT>rKy@9TJ67j~*2R_fy3R7Y!F_%U|trlhZXGm@5Gtk<&~UP6{w8$Ar&N89(O zEdhlmD~dml7?Z5aN5ioOfhu= z4$T2xvxd9aj)Y{0H9Av%9)vKO8qLUp!QsMI4{WO-dLP<85jTD$!VT#tjp!WklDoK< jB{zw*EiQ=yh=XZ)7$Gn)#faJ-o_U9aSkA0T9+}2ZB*77Z literal 1162 zcmb7D-%Auh9KXHWGp#5kBtx=?BF=uSiau0SM;b;=UgWDB%k1swEZxptyR+qik`)@k z^yD|fp85lVUVGB(-Tsc=gM#S6zB8-%tAu7@=R4oupU=#9!G8P9&Y7jU8dUf+acWV_ zoavZ`3{=N$D(Se9m!bbT%tJ|axFM6&M*~zr*{*Ch&{3Z^gNm*(s=l2G10h)~XgzU4 zD(DQ06HrG->rw5|M0N&Kpj5>QJ-Y*aHp>#nqX{;2*cI%ldsm&)`c2>As zq+z3(0SVK(3}_tFCf0LfR*OU;y{+;zuJ0n#|IW3H|01jz{o|jR{Y5p)_vvGH{?eEEo&1sI`8C)wc|T0F z%7ASc=DYX_e44y_KPP#-4|4(h0>5Zb4{W`Hf5upwG5iwMJpV_)<(&a+9#q?)Gc@81 znVGgJju`M`s?F0Qnc!rXuxr)!gw|7SxvAR2nb<`m&TYGw1~^p$#bQzqYI-Da8uHmZ eq#EulALmUzhq}Tp?R}#y5PMV0(gbm&p7RF`z{l$V diff --git a/results/benchmark_metadata_ogg.pickle b/results/benchmark_metadata_ogg.pickle index 0651c5996412595558592c36a591d63e17e4c7a0..85009518ba5c865bd3e9895b3a1319ec48853bf1 100644 GIT binary patch literal 1851 zcmc&#U1(HC6yBe^F^Q2X7>o~Eg|;T4EdB&hFm6bLtr@$bk&3jk%S$(-Y|WZtDECPiHr_30iwkIR zD-X(M5+%ln`e83qkl6kmphKcs9v9I8nNFv>@590$lJaGCOl1*gWnYST(aK6u zYX&a$EytF^@GW>a23o?f)f=XRQSilAh_%m3+og6v<$X}mCAsp}v`Bb9b$tj&7@qI+ zO46YY3=UDW$si2Any*ng@wJN?#Yo4ffhB$u`pdvgOqRTrXnzC#rSV6V)0~)!G?}=}&ya{V?_Q#Kgq!f0mJkfAyz+nV+9u z_^q5$8k6mPsXVOF@5@N@vt^WD-=yV3O<`&qte!)m#{H}LD?c4V{>{T$es5zx+S_nh zP<$xTcYTVZ6`Zm_ogV@+U~U_I-u%{{Q0$`q}^UB;K!N zF6uZAoI^U$brI#>)e9)E3%@{nl{4d*PfIw5{GQKdk+%Iei~Om!ImC5a`d-gxP(FNH z>mB}Q4)qqKrrR&gpue$eTL03wTJNLj8MNcJ&Z1wpQ|q64PurjV;jY5%``{kZhFcP; z`0m%c%Kn`{rjUL!RzZGoYgglqNK^wuo!QbR>Vd1qdHm~Pmq7N~A6IGwm z3jmsz0@$DwHJg)L+LBvv#uyZ4g5>q0CaY$MC!y6r)S~7DEe1-mQ`D9UZU%%fXlk>8 z1!KU5W5O$1In~LbiN|ys4^+A*co*;E{lJSq#_dLKoEQ(eEbt%?VPs$+!1z-GXK@r} OO3bG?fsV=`n|uIMEXWf8 literal 2092 zcmd5-U2IfE6yBe^bz4M)SVN8c7);zM*#IR3taYUt3=CFwV~7UGI=ef&bMfxI_5R?l zNK?dC3Ihl`fYlcvrY#{c5`7@SY)wqmnCgqh7$uPi>5DN&@ezY(&d?vhY<$z1WM|Gd z-}&3Qb56f;{JwYyhnU|>?E>|ZdB5er z5u4g8&xWmn>Jf$xpw$k_y;U7=Ik0?_x-PAP->l2>j_vtwkoUoih#^sm+aN!r)FcTF z$j8Gu`MS)=1PK#kV1^be_|;yf6eCZs1ttk=R#b#vkv%;7Mm)4NgZS`Htv?B}GBdeO z>xEji{fVD$@VnAzKWYr1osZ@nLp$&P`6|j*#6$Vg_CDl&vg#n>;=*C{WAd7g=be|) z&zdWH5g%Ir2J)Ak-;em>hmPVp^5S9SKmW@vv~%spLCyQ^0Is`#IEnbZ)_(1GK^5`n zmDh0XTwO!^>#o*NzHsJkeSU7A_Ivjb>aD#d5$_l~g7*IS{5azA(>48noY47PO&mge z#pMyL?~kJ1uf{0i9~vVlAL-Nb$D78GcV@{L+WGW3&A;5Q*Uy%Z;`ySkQS|%GS6ct) z6C)^JH1+ysQTto8M)Nx>b@X%YU>$k(cUsObt?PWQ*U{gdNA>ykZ5n^?8I9jHq~%rL zkE5NoZ#BOBY#rkXzR>a=iE*^|?)~HF=Thf*O2U_jwQ(+=2h9UYDPM5w%ZxzL#45=j z;E7pvx{*%!h7ND1Gll(MDLgo>!1hSdv?953b#f&(Rf9qkl)ObWjd_-tR~-tPQ$)8X(X@+NfwJ*%pwg}I-Eb7uhrEw(m`0<-m_|1T eEbt%+VPv7_LBCg>b*lGg%gm?PYIn#Wm;4K#6AKjp diff --git a/results/benchmark_metadata_wav.pickle b/results/benchmark_metadata_wav.pickle index ce6ee710ca319a2fc8397ac7b50bcc95175736c6..3ec3adcffe5748bad88b9646e58db5c023ab579e 100644 GIT binary patch literal 2086 zcmd5-UuauZ7;loBns%*PSlP;0(mgo4Dq*8Vs%%Y~`DgC9tlb0|bA*%Rq$hZDZ@7Qj z#H~0Ptx=EvmZNTiZu%ljd=T_OL?lBLME4^4Fc_j127-`1I#B01-*=1MrU9Sy9Jt^4 zzVG+_yXVh$+<1LctP6%1s8Xv)-DJUbShD2M3X`JeLF&^kq!D@YFu!CD@M~Q4TiVXjo)5<|gyhRq=Xr7MssKYAKmA z;Oj(mb*&>C7>D zCoic}_a+%6hsio}f-sUGHhF}MkzN0_zEc5l5iZ?yF?QZ`F}n1{$Q%!Mb(Pe(^7O&f z#jn-)WfM|!I0etl_;BjXX*Fgxr^fVXCQ$!g0`(Jdq{eVc`ze(Yh+7HtcP7yOS{&sc z1oB4U=ibfWuXyMj;1<7o3;Z?SJq!55bIYJ#f9Vv^%L`{gUwdL1;(gj!23+%P#C>}Z z?M_@o{e8!l0srb($lv}4(j|&?axdb?%srU@7a6Q)U<&hnE#N29SjWaaC_kS@d?Stc zq20)T8OTpgA^%Dm@hbuSB+#D@{Qa1Qy0-k@0{_>ik^Wjoy24uEXS~{iI8?L%-+dnS zKX14I@}qB{-h3HpqlEO#L<{1_A4fkwWY8{i3i%iF7j)c1&1-G&8*a8Wf9bP(fPd_p zkJ}LcoezQUGd^!?f9_8+AiuJI^s3fxJ@*^P$KGEA`=MtZKz}c62P#fJiTw8x?LLZK z)$#iJFSk=tokVyW`}rNJZSa9xuVq-hnD9jMyZBZ(_@k@u^gr5!0vmoe)mQyr7>ukn zU<*=oZ%^(RPws$rYEaewB<~g7dEG8usa|!JwdkIsrmr>ki&$mW$tk7ksj<9YRvph$ z%cyIX3%Y5keig=!!AkpZpW$BoZ(H literal 2092 zcmd5-U2IfE6yATf*w}8d7Q?ockdRhzZBs&9sBZcL1}3aqOnj-ZncbasZrr_hbMIW} zCatM4pvKV`#`qJ;Pw>HnH;gfXE;ee65Ar~SHy+@@L|%+O_+pHDX3lM(pqu!lGs!)3 zzVn@P=G=Q{&Qk2Xt;vuXGF78?nR=O$&;0={TQJwA6)#hzHl1Uxr)29y#VNgV2z6x=^c{f=o7X#* z**x-T2_32 zv#CG%!(StO?`x1}$vb2S{=8l?Lmcux=_LK6PNvE0gpo(c^Z&KISpnN*WcGoBG4{a0 z2L*@k9PxJEsc3vdl1j{qTh>YCiKMC-=Y2;5liM;dO z7)SP?{!74L?MD4TU{7~roHx^$=hHptH?S9Z7e)~88pZenqiD|s`j;c9U)qcI)?xJX z_n^*4F#d15Q9d?`@#rx6-P(=(!C}My|%1+$c5BdV}EIA+1RHaU&eSX zXdkI%|37QA*eE3*K;KnppB!7zUFh729r}BUH2?suWC)G#&UpPE{zXMxTGBJ=D z+?5%`u1lc_D*mWU6m`?|pwafhu4UpFt@zsVoJ>~d+yWS(vnGqa1%1zkW!$S+CEc{3 iUq!HE`MTT%evmKnCBUNV(7ZvTBo?5|_n;2HnE4BgJPq&w diff --git a/results/benchmark_np.png b/results/benchmark_np.png index 6450e2d952a8c3e83871ef01ff0422ea3466dd56..c1642f911765b04e9ad7aba4df6b1287a468904f 100644 GIT binary patch literal 23842 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 O&fw|l=d#Wzp$P!*_}xPQ literal 25930 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¬c9;viZ!&QgQkM0d+(UO-B1O3*sS8PhEGgAze zhbG#_i7p-bPIEHrnxKNy>#jA&!dUsGYrgcBtmt+Lue6`yPg$N`d3ex| z@P*Xdf)$p@?-tNtF4)_xd?7j{BAkA1pGRoz8Z$W|cX`KU!wiOqn$S^r+1shzcAr1>5zcf9u@W!)+yzM96(IZyocoNC0b z1jtBio^@Rz%)=u`oDS$6nib@xTovLb4S1B4BN5bLb;+g;T0*vB%ICTtY5I2B3Dt&O z6cLM@jzR3kke8(xEIGy+h5<0Y(^K3t?V#bYm9x-rFp0HQ;8_iWcCe3 zj`x!Po+(6GQr7R#{f$A(j(s6m&Npw^d(Y#;J?|({xZpF)=aTKEVlgQ;6+j6{%v%_X zsk^vDVjc$f+XT!fsWBT3A*Xml>c$6wEgJgc)G2m_xJ9<hnbAj-XRFE8rI{}#^mRU2r&eW-WizAhMD)@J+}=fG<h%ousu$mMVHmtvJ_9@rSFcp@up!I*H|X^`;28ckDqv z413w-A5mATP_W_irYlWlRlU7r$t}$CYwh3gj;8Tf_+v-K?;WHFoCW>lKQ7=eu&9E|)Kx+Pc6xn2mM_lePTsVBK?#Cq@@|4ZhwE+wQYxJvAM# zckMmUrC=`!pj*TvRaJ^(fQ2yV%9ArS(712%{@zZ%$h5RWL}^_lT!5qYYiG-Yxl%GU zjk7EmQ`HDmIXXa^pTJ$1qeooj?gOL_ID(}7$mu)f!AF%yhaQZsgf}TJnQ>^i^=A2v zjKLaFF%>M)ldBmeSn|=FPmHbSH3HxHvZO#eG({tlCP+iWh)KAoV?n_5G^EG0ddyrP zh=(LTa@+{&4wA}6nQYNuN4`niPiUR#&MKNqLR(74F<}vk{k@3KJ11nbg0E#P^qouQ zREwC`&WjpT=cc>K#p^9P*)r%6^S7aAlx5);3+&{NEc5#LiI4c#uV2%H3-eZMkuKl_ zCCC4Op|l&TRg>}CBNvh=(B@VhV<7vOR|+bZKPw?P$oV1u*f{9fUJyM>vG;S0(Mon( zIMc3~=C7vw_nozwOI8AB1nBMEvnM_=@eB-Iq_c|Xno!x0_C*zuyIA*$iRs}-0lpV= zv`LelTuJ_s<@@7?Q=Oe(X`O&?{v`J&_URpnpBI`uTpMlxp%lM;8;cQ~F6Qxg2A*^u z2ZuE1r+{)Dj1ermsih^`4E#ew^$1jo&(F^vb`TeT#a8mMqCySnl`YODagg7a@>)xx zes#CZ2j{|Z&-y$a%VNHp3AJ0ef>xf~gb5P{_eqWr0-zp)@!b5&^K;(b-c@kR;RkZW zXGKnL;G8IeE{YaGuCc*3J)K-TKrSCUm?TPPnqZ^Hh!Hmr>{@6}t7Iz)#)((Jg+$9E z{-C8R*2D(SuUI#KW_QH!?O~R-R7St{2N@l0L6e4Dl>3+Bj9E~j?gR4$T3$s{^DzO; zQi>K9iNw2vfk2;Jn9TxgW@j-y;FcA@d13$#0`)7milNU)2PS-S@(giD1Lf=5e1z7l zK>Tn>L^y&W2AVe4kQ}KAf)z$Tz@?W=S_ymI@#Hmtvp9gFfTL*;2NbnjEMd}Rc>vWN zePC)04!`E^_`Pr()Rk)U2#ex(*)yhWlitD7w*Hv9jD`PXyAah&q?@`b7!`TYZHqZvixEfWc zez?Ee;S`npsTw(1)tK&T)V4d8eP&lZkpRni%%z1|Y!LXzJ9g|HK8ufXG)`pvD+sQ$ z)~s3)q!hz+7pYa);Y?+OS=R9~iNu;ER|SxqsHp~Xg9U$%R$t@b;9wQg$qo(B^cs5C zdGSvYz@3`UJCBA$D$OI3c`J@~2GxuDtH&*;c0{^cx8ytPoit&OtqJE~O8Zcx{f2>( z|C{vsI{`+A>^^4U%j_*BordtYBbJ>*ajGF*EL(2weBkIZc@a{C=3+lt;KH^i^q8I8DYAk-wxwDQ(678j+Wh^)LF8p60N` zKOa2<7?k_e>~nT2uJts|IIv^skPZgsuL#L8eS7yjuA5u?`nX!s`n=6$r+)$0r)xRXMC5X0x?bulnR>C7jG z9O;E~j`W>_7fow285~OF6&3wR`aleAVp=|_u=vqiM>EeVTr26nyHjfTbZMS->%f-M zva)J)5tF7v5FTRQa^z^WMb3t@7n&mV>NPOj_^ErmPMbYHSLUpo+isAAk*bD#~*epD))PPQ`9if3~vlFT=nC z#=?QyWuw(8l<`>eq8sXuiUooJb7*5^V${UKfKvMJE}`5!pm6a5gMeFd%RzY>VC}Hk zQSpG#W&>Q0vQB^U08HDI{O`8`FYQ0x+7P5VU=`cW_H53)@f*iI^J?}y1MP666r8vs zDzZm0NOw*D;4up2_2=QawHXOt59Jw5UIL;?7rLrki9`QF{l zH^x&;Z*WQ{Oa5{w$v$}&8`ZwM`13sNGRlrMY;{?@8NEmI3~Dr$M`WdE$5!VVD8I6& zcYm{JGslzZFN<}oU2CJ~5k+Fn`gbjfQ7!A`Wyp3ORyV72^dsLMDg{eb`;2W~p5e~- ziT58qC=_|jk-`%y7&*?27`LE85>*!Iw|U@Z?RT48Uh_9x;GQfT5tZXjsuS-RtqDHo zxMr5ZSZp?lRMdZ0p7RC`t$ACVyF&?vY3FsxR7PZ#7k1r>#Ps1utklGja`fm?_*N6h zacYn|l|!!O8<8NseP~XDMCE#IOcX3OzGt*6D9Ki%--HRU7K&eO5wK5%C6k z)-%rJ?Bjmqc*37QO<=?z4NG;<-2(34-zi0!&Hl*By~biQkGS*t4v~|sFcP&OjAC#~ zOj-BrcuFxj+6|<}yDe~B$3vknEu#tDjA@N+GNCsQgZVr_5AMrY;5qEr1Pgkec{M*- zK+_NVega>1<0OtCR)Pi}12+)W8iurPoPI}MiOBKp0BNK-7}+uk+|@pQe${smcL<-L z9Me&%%s4)+XcIyg8fTnUmXy8XqPUo4Saisni(^O>jPENdQf6~OaiB58tYJ8`-WwPt zKraiY5JG598lFT`-##2uM@}LfA8bp3^|KV7DWD%B*^bS$E$EVCst7(LhH1cezepIM ze!^x(GnBrRQX>(4U%^>2r{&-*$5BxYnR$09dEXDET!pJb#bhr33{capM5nF&x7W)> z#=jVlQ@PL__}#uu%Q8p8D*xAYQ5?mg5g0`*Qlwvf)JJdjIKV01zm_v4Kiu1UHO>t{ znV0|=2(B>DPy@cV`>fDO^oX4-(rRG?szqwvPwaKaU>3ATe?q1W=fq6+TX~YRPO`+~Y?DPBcjc3ucA@wobCC_3x85tj_DY|>K7 zYcDa6n1f?|+diR$`G;{?k3db4HyC^Hpw@KSF3;fPc9PG3b1N7AV^rKZ@FH?8cZ{rO z*RaL6cZ(#;lyOecF`ZMX{5?Ixp2!T8tJ#h^vP`of307C{fNr_1wl^W6Y~k9JBS1C9 z42%i+$P+H#)(3VR!7+qzai8i0mf@Basjux^ASFKaMZ&o-=NT+hev^4&>_M@Qxd?5& z!sy!njCG+{C@3gL4yPOU-@T+6ANo=8|LN@fx2D3Ma#7!OmnhHwU(T~SR-8`UJ^S8b~z`7H_knu$t?ju085T}LV9Si+2PueZnD z?cL)Z_s89zJj{Ig`h4G?_viI`y`NJQnu@}|@Kn9*{bXe?IPp-}6&&^MyZ4Jec=Uv6 zaKbxDynMm80i$1=Rhk#t&R|UCUppGb4pd!_lOGIdMP3C13bU`ibJiJR*BR5#Pc^MH zf0EfIroyM>mj;$Wow&s8{~a0^!_dvcFjOzHVCZM~4TUA4-4R#HpIB;JC3 zFp4{S3|wq!W5_Bn<5=r3P9Kx)IFusnT~^cAddD$g&$9*htfBm&cgL~cMKV1P`iqPB zH~B?4X9}qWKd>473vlWG5L`B|jOGesjn{RZZRXq@Y0K2&jl7NgbQUia(xG(GEhYl@ zzmE}HQ@dI~Ka72Y>vrc&HTUG%5*g{H5qZR}>NH87!lL`CZG@Jh}^lQGP=JDTPEcPl4O1`B49uNBTP1Mz)B#<@4OB1yY@ZsY z>n;(9EFiQK)dc(s*~BV!|2@OchF1$j1^boO6mj0@=;(&GDhhm2ZkWM}?S1NnLz%l~ zA_Fm3u;osz7&yktd~GU`4nGoTo~U~wH5r%+;-V7rpx;^pZh3RJ0!Of9sQf7~no|Y_ zg04YU64&yYlVGB>N?R3KyR?O|i_Og~$;St*_u4DugrsMfn?igGK-N8T{=7djo8n*o zdY}fA!#+$@q_*n$ttMAEAmU+i=yHWRT5G%^Ly`VZgY^lD`$-&`= zs+t-r_}mte6RHkLl2u@Mracsg8gzn^a~AzsyCg_(oyFjHG7=B-PdyZZ_#p(F!yhTG z09<5X=z3s1_IoGX2PaQY&zY`KO!kABp*Wj0fDdC<`y99iCzwy1XYb)ESpy2YUA7;p zur=~qf4nPZ#&LKS-AaRnliyk~=+t6$T;Avf>W2?FEbhhNXgseuztXmInRZno+aqBQ z&dn#d72$)mHr=@;&xwv=G!awQ+|!EajX0Z3+Adfy#& zl>ma)==9_A>(#}$`zdO*`cRK8KJusgXv7dz^vh8P@^$8Z zz7=XhD8}To{7xafPS5auIHrkj=8CY$OYw_`zG=BYodN99bixSTXumLSBXkzc1fRV` znG3%Xy@%7g+k>01P+dcO`)h4Fh)7D_ToVMDR3BX{fn2Y!u&@X?0z#_62fXbOx3ZpPTd)fz(X zZ1=YXB?iqx9-0I9XC){TV_1>deo9580t%i%e9qyY9a-hFeBJ?s|9{OEjBotrc~}P7 zOz118S^C@I(l^B2%>g$tR3xF#2n-AkAqLm01*u8rOin;F3(pqUuW=vf5b>Z0NgySKCb+Dhw#Uq7w&Qx?~v93WWc zjFMfG@l%9|YF?FZnf`~?20q-&V>}PwvZ^X8Ex=9uB4JOm-l`Epzg3kk?QAuAE=#Of zYlPpp_$&i@ue8gTQxsrDSf>qRmP3d5?Nn{COR$2f>+CM+|BSW22g`IXRX>=y`(P{k zLfnbvR?uq!FWmN41w}XoWiJK$ljVVaFG9=S@>a>PKbf|%AM`#ow6tuXqJ&p$8?}L~ zYx|4pdrrqRC{ABMwX*;bD0d#h)Gbzzd8p7IdY(7>;?s7e<{ytMT6WE@YDk@9Mtqs$M_EQ2fS3@@C&<@Jhau2IBE8i~>>n`F@a zPyUJ#^0V^#sxzOFJT|4ybc)@vc>rB%hD#K$5S-lt`LO*@jH6re2iw#@F*RGXcmViV<9R+TlzyByjBWE5(N$5F9ILEi+FE)5RWr^dGHmurom9P zdol4FXDp1RAs);~(9A8dcQGilug6W>Wg5&NyXj$IZ#Q0Cr$f~Z500WsgLBerPUL9J z^YB4uvV$qJfX9^%$e_#Z#pGvP8jZkI#hHAI!|AX1R0c}q5_l6(zgJ$XO&B5i=!lM< zrbsf%BT>mw)L#v*4PztNDND2~UwGaS}!TAR1V>&V{#W8*TX diff --git a/results/benchmark_np_flac.pickle b/results/benchmark_np_flac.pickle index 3a759d458910d2ea2dbc2eb66200de11219be55a..f0d086c7a0d73fda891bc7d3c645b84aff236951 100644 GIT binary patch delta 782 zcmXAnUr1A77{(_E1{RrJlviF<-gr?t%kB;lB|`s5iiJ?@W<^vv zv7*0*51vht9|$GLUyDXS|HE06m(_qhk6~y7L-pJCRRkStWpLwa!W62_jb(IWZ93R+ zzJS5R5e)v zOC?crUtG#JKg7*v$K6 zj>a8fq3e0ZrYl|c6|=5-Y+GKE%{SZhH;7T~6A!rmQi4KX*WY1u{LpC{OVw%QAA5!= z9IOd}<&+cNF+E4TH!t2eR6B+}yw!_O*KWUz;EpC5aMis)Fwz$l##iD9 zt-nu@58j^_g_eflpUN}vg+V9yt0@LvtPaEXpA%1|yT#}BIs@GQF*ON3vQ_z2t>#SC Ee@uE&f&c&j delta 782 zcmX9+Uq};i9N$)0AiYdb22xTgTCtbuL-ue_m6{V3A;hOhM#LZ_1u^l4nQ8TqD9J^Z zVr@QHI8SpmT03Vt**Uk{pYGP-ykak=#3n=RRyiN#5?R*@9@S7y~V|M@nuiJkhpecl+ z?9m;~_t%O7cJO_I=-8EI0s5hV5b|1Y#NfLpM1Z}2w1<>DjHvgt+UWj-Lgk4Qf-%{T z`M{+Wv$tEoN9^B$w&+W|d^_lYuBc)Ve7}#w!nyrkEO2mo68xyu2kfh6flH|T}UJ1O#635F6=F{LG zji%tw>?Ytp)3}LzbD0SLVT0DwRi2_~@{Oa!Swk3ZrzI?NeK8t0*$vU#UT6@&5+u2LiRtvSpF79?$9^_ zs#Xl6whgCH+cgL>U98QbPoFSK0{r!^5$qpyW-;i?NCH@}eHL|Y%Co9C4uiuvfQ_@u zk6^f}ji9z^KLFKXD|D3&A2DEKFtta}YPXGQ=44PA5sjYE#=Jj6HjD!2RAB@IXh7=yi@uahyPB{}|ytD)tlM zGy0k-^w~L&lL|hlPGF$Dz6tPSx4$57>3WKBlYc53N#hGD4$mOq%Bu;|I1mrd6Eq|e z-@&gnlOv;QpKV`+{)TK6czWY328tO{(Eqe8U?B7RIruc(I09Rf-@tb@=Hc_T=9Gjm l{~ZjzQPOl-3s=RR;aseQm9jLsvyO9uk!#^t!tz;F#Xs9jO?ChP delta 956 zcmaJ;eMl2=7{1%hEkQ~vQNu{n)Fi~XgwSxNAcjI>Q7ZJYrPqmtp$Q7gNd*?^vhE^g zfej@;iqs|vPGhCbuUYvur)}vHmq}JI=;M!~`#t{O9o%!z`#$gUKEJy*|65yqYLs`C zzTH0UG<{a=q@(1goqlph5hh+yKL(lZye1>%w-T%|476_rS00JB}(#i;!F6h5WS z=Tc=sxlR)IGoi8k;X3t&B3)@onO5Rc|96XMUwILrA&j9-;A46yU?gaNw zwqri{>I)zrH?JXk%=g|wm+c-VTwo*nZKU8y+cpJZMYRnERIMGt&ZRj7GpAaC8AbDcXmM}?>Rjt2~=LL@Ix$zc-@Q971 z@xD*7*f+)sV`&hJIFBw5y505T2r^GKL1!PZfFEHS!2bk|fdA}$g#ZV(w8AIy#1OcR z>jQ5wKhscx9N8Ms3*$MVZ^QUz2XNImh`N6uPDW8*PQl=`aRl{au0~+x1j~xfy9s(*F1yJB z&yKEXf>C>_K0>Eg;~!@=^|**(i1jxTJqxt#xZelO>Im*4mOIvpcrq%2J$ridT0IYdYCGmz@0oeoDr z8}&$Vxk33vtN8iNpCG)W%=SVPf1GX?y!aploD{afe|Ydju$B7_gE!lb=}DGlGff=$ zl#(0tSR`KX)3H|!AvCVib1bB-J4rCN81NHAa+>!VMb)cY@F}tdEPdEVP{WY0_p`Q# z0@?f(_`X6P4h|L{A=mRN;Az&4;?IH;@CGAuiiHn)2}SbGSuE<`*T5GaZeoGWX$RKi zZR4qzjDa7NE(5FUwFvx5u>)J0SCC_(SmBVVRp>pHChRq;7r^_Obt43)$V-UYz_|+n z(ZK*QCi{jjaoA4(33T`7CGlC>C&JTUmBjoj(;Zx;GeBgsW9u(V` zJp^l*zd7M$Yn+2Y+7To{h7H{-306ch-%wn`AI9Tu$qaaFy39{}S)Aw*x>9+8gX8xi nD45K6Cc4U(cuVj|Wd;5ntFG=Idh2(H=ps(t61HB%$fN%OdEy{O delta 657 zcmXAmT_{6g9L6^rZ6%i6Ozg_kC^xQF>Tn}z5{0JRX%}R>qS(bbHwwiCQzk^#IwBvP z$VW=~Zkx?!V`i+`=4%ND){_pSq{NE2&!75gorL=)xo;e@oayp%V6Ngk8 zzeK8QYQk#O|3)M5zVC60#}Z*K3T|d_3-$Z~KPBSV)ATCplbvC3^7sW&L-)%r$x(_F zf`8Pw!CSJ9p~kLL8lc+ZLEvbv3jsq09|0Iv?Z^H});@w-(){35g(pNgxAY7_!{Q@w zhi|xu&Rpolfy{3Xa69XQf0qk$7DB>7K6JDPphvPq23R$+DFpVq)-cFazlpkau@wXM zU$?-QZw#UCH!VYdsu=XO<*&mZXjY-x?J?+Q35WfaDi)gQoke~JowOlP(H_Kr&Hexy zVn^2mWNhg-#49y%;fsReTj52F!qXQNUy**D_U;@xJ=tOSkFP6mE=fS(-67=cjD_H9 zQbEk2quxtWu;<8PL=&v?7AJFz-V-1=seeN7(tLo_Q`MzOaC=SoYkOnkJpyax2u{>7 m&%_t0D;`jM;=K(=b(|Rx9#4MT&XiJ8Rr5S4dQ>1FfEGIDl delta 657 zcmX9+Nh||l7_Fra4ovhUBt$HUlXT+H1S6?~NKcjnJ)x$Yod|}6OVx64=vWd<^iU-j z5$Zrgs%T3$v`vdN8CqLN2tvaD%;nAd-uK@7GOd|1Q>*G^j%8V~-Rxl|d7jsN958>J z%~XU5iaoX0jML$8On7;sH*S>QfNS!17@DSqM!BCLy?nQZ`TTeU^ToDHM)LRMrd!Ee z_0bXpr+VGU56+$d7gA3-6qU){2$HCs5JHR(L5X8PdLXcm1GO?;^5UcBIQ zhgaBJEB6DRwL$C;4f=q^oe|_&(n8=#IRO-{ul(n^WC4=bpD}fTLqpuiB@A}mCW=&j zMii+U_EEs{Ht@{44(M$XJFwblfY0-2L4i=B$K3n%{}X=J?7?rDp2J-3vm&RiUx07= zbqPB6-L;CBcUhF6IJp%ehRSXF4p^A=fJ^B&e3`-%}HDraPI1hzDVP++j% lBQIYOgI_m;|Bzmq5yv4>N+h~*)D$KA$$XJj6oM(W3BMu`DmefE diff --git a/results/benchmark_np_wav.pickle b/results/benchmark_np_wav.pickle index 407a5b069ce4b1445d2c3e4d04503bfc17d00614..eed51eb0acd19bad5b5e99deedcf7e15518364b4 100644 GIT binary patch literal 2787 zcmd^Bdu&rx7;m?BY@?H)Aj}Y)F~E4FGD{4EL180hxVgMP=2S^C;2a%YeF(_jQaROU{W}2`>jR^@xW1`V>e}_dL+QfhLo@C$s zzVG+@9;avLekoUbf4&0`9i33LkYad)ab5L>btR@Unzu+Xl?uGKv8mhHHdajCa)=ul zop>)kqM53$DN(~4Q#7SU)eS~HWzl$W)AK@S;1^f(0ORi`hSYl1@CFov=gXHhwN9?o zxQ!FYNa`Mbw==s$;<1_)OC&{|F)M0D6kS)6JfEzq!MJ9ax)n4zow@;JbOi4UkTxbc zcCvD3fbC){S+V4lTss*VOWh$enNV#?*7DgLBRPdXn>rgb`X|E_Ia(Q53zSK9KPUdgm7 z>NZS8H+ebKWti~QQvL zhMx(Q{}?(W^D-@($HC!nETPsgGC$LzZp8{j;*9t+E$U7rLso#11(_DjGvbyO3P++U zBMUPvI)WcJJ#HwBlx14{=maB)BqQaS7R?7rj>VJ&Ba1RE`#e8<)SQ1EHED%3RZ2=N z{9o#IX{@wf8YwkNs`R83mljJtY2JU`pJ{_8(yZ_Uw@T>)w~E8QRmvPLaTVWq@rpmp zpXQq%`7ihO_R6>W{RcWa3TqF41--OkpREu0?tEj*j?KTE_4|Cj)2-##ZRtB#cO3R{ zGX@c-^44|mR$lCe-IFz7%fe*`uL7U9<1^p}&s+lT)`&hxb@CwW|J`^!&2uj@Po{*10yz&kQ{8qzV;D(uzoKzf>XqptTVPlEsB*TR0ZX+QLi z4aeX=@WD~wXYoAtKAYbkLcIEPE9BMBw*!CCxnIPW+F?(vTLD@6(kayCtKA4(va1ES z-sUy1mn)snCzQ9qKWBmt`R18dk$+7^6XGnGu?@K27H@~WYtLTr`+9WP$1Hgp^6-W( zk*{Dj$JbfFKW1)$ zoW8CV(l^Qg{<-lKxahHc!v5}D@K1KUCh~;?kVWf7KaPUcs3%#(z*|<57ImK81pVcw zn-TYdzY((HXG_#^b_?{O<^~b>!;Q$d>flc3{hl^qXU`zscTenv?D%~xczyn3=fu7& z^T??4&LcYnuUkT0Q;T-PZcJ%Gec>O%@K0Eq7WkXB!rz!c-1D1j{fyrP_^=m{QGDhh zqaVI@v-sy8-*+;JOvc4CZFtD|M~?F@hfGoItNdROiti<;+ZfH6=`ES%Ex|14Quyq~ zNIuO8*t4F&_(;O5ra84r)UrKuXl|@Vm${PtnGbG!OtlBY;gMC2siuNSv6@){@1LXdCXoOD literal 2948 zcmeHJYiv|S6y9xjOJBs0&_E4AP^k-v6^a@#z+y|$a!V0V5D8iC?%wU)xUbv?us~@M zTBw~$u>(zOQXT~qtUPQ8K2V5I5W5trH3)@J5r_fwhrt9erp|mrBM)6Q#(&;P_S|#M z_npV=?CdGCt&65v@Q{8HIpme~Y)@EIvVEEyR47TABpdQ%yw}p<%V`O95WCCEjFb$% z6YmchiWZUsdUj9_$;FDMQ<9z=2zy?gDs&3IV;&1I@NS}4S)}OMZdqsfQe7csp{pRo zY>c3$5qs}D&ukNkGeTxC5*2j@&4A&THBFAPd@fD#ghRTanI41Di5);n`mnwLsil&o zoaR~GbQPUJ9g!pczls{?pXYG!Xo2~t%BRfmci7s?B$I`02wnCT zw{3$-g72Q|Y1}>6lZ9VTxi8x+mWKNJ`kuWdThIX+C^-t=k27}zH=wc&dd0D$!2j&~2=?5e z2RXiF-}4=?pD&3)u5)y9{NN8$f;m+o-p+B?XbHw}PU6Jpt)vY{U*=$Mp ztCPP(e1B>i;(eF)74Z8%J%RqVwH}9kZcaP&vvfV;?mE3oCno8N<;)U^pZUDW`-=fw@+w_X+dGBfi{)HCRDf#03E8~*z1F982b!5;W6 z(hBHZTbrPF_cwscXl_P)$Ca&+WO+60mkzxHx#?UZXum)R|h- z1evve8>H{dNbshXZHK)1lrH*67xCtdaib0+N#JiC-w1!gIO|V-&-Xii>O@e&5QS=pyg@JF*7w4`1`#JFM7`qwv{wErt zSBx+buP0B`b8WWBQ@AFI`17wW6Zu=axGYO+JH_joGkDqs9w(ie7dgLW>IR&PtkS)g zpr2~|hR4t9eBxX1ZX7s;I315(1b_Uf3&^{xu?uyyEWE(|2W@A&xqf-p59i=-d*eKK zWlPF|^R?@cv!+x-?hMw7eL0y2xxZ%}@Do4qK^}Z%HR7~bW>X0(|%I+x+=e;MHHx2mV^lT9NlxFL>)GltZ_) zPlx{Wyh`A=9}wrrcPJ?QIhBIHY%y??OLf>MS{FMhyJ0YS^i>~VLz&v|{!2cA%_A5< z)M08CF0>K7Q_!DsthYJpV>18a_y+{Xodl(XlBAK@qn^wjg<;huv*D7esU*qGhf$rf znTb_Rk`~ATlY7RJkJ#$7$7Ncl>{~xs2L13T4A3@|WtBM3e!3C}<_6YIW93 z&&u|a{Qo$WSPEUy`uneuWUCfxiAmUzrW`;v()F=sJE4# zLfKA{l{|XRF1WAR@yI#r`GujbGRlohdprW&-PN~y+-RRu3cK)=!|clIp;OVZ1&5Q> z&D>)nenwhu<}2r`KDkymrF=|Dum3TJq32m6Z+pxSaBRdH;Pdm6ngI zPKD4l@j+hUq2Upsu91Tc{Wc=(-do|!%E;&Qz+ul|oK%4M{7bm&^G#*OH1-2J@V-JjO8 z@R*%l`sXXOL0|Rqb!ziEBqbw^mE395`0d8;N(Y?Yd(3cpsQtNubO0N>(#!gOn>B0K zCaT9u2ej96ZCT60!t&(gOC^&NY)VbvT4JiD1GclXn{Jno2<<5Hxz_WABV3+y^Iny> zvi)gIHv$4wUZ;d@|M9C~9TYabtrI43Axq%rfELZ+2PMJp8*6}?%+ z~X(w^X5HI z&ug+5*x8jV_DIUz)*Tt|&ne8&sY)da_ zzFowo?_%4#>xa!+f{Tk~=BMlOEZYlK8}l80o#VCVe zZp%YU4grC>?oHTel2&v7f!p@Pj;-Bs5& zNX$NPogWExT9}*Q(n#N!+;B3@w0W{S+=r>_q`Z7bUqiB0&zHgnM$`Kj_q(rBRif^R zRFlR#&8GSj1I;zjDn3DGxlcz&tuV3+X{M1Tjj08Ng+j_(j2elDccVn@^f>eh|l!#I*fL| z|LDbNKR?w)otqT;=j8b>;o;$V5gsmk>eQ8)@&3_)=Ag~H6%w3hY+{u6F$-I@72MlA zI@lVz>r`M>uCwEcb=%%Wg}RiawYu~QD&h$n5-u%$|Necj(6u`v1L^tcp3~HS&BSo2 zv#)`H!O0NOr{s#}-;Y&F0e39bvN>#~{$?3%+*Y+!NdW+VIV z-o5ulMSS~0G<_C>hrdBwpyPz}w;n86vR?TMG-#1_9HP<$-+mnAN93*YsqyzJ$J53>sG+f7QFz zv#hP6VyN-enH_Ib;uT6C@25&o<&u<=vKa4Eo1L4>=n8QpQ@-PbcfsXD2wCr+9MpZn ztG|9~YRb;uo=ReaLEc#H1*?IkjB|0l(og#G`g!OAWMyU9I63bricb}EE0s`3f0a{L zXYlp)Rpr_eUP|-2YSh`^&p#lb=zIR%)vH&(Z)|Mrwk)~T>Y_(Z=&;Pfx>s4)cA)G_q`X1(OX~i{H2wM6DGHN>OK?KM0h_^={;Rz;ug~7P zd-vLC_vhYPy3L#O-<*%`Zq1Xxq;>e7U}4+0&y!|{bXB(fHHV3T{wGz3IXG_D*Q@@l z3{{L)j_s}rTN>C$SaZwS{qhi?~edJqy)ai5;|$zg*{y|uABgoOjo zgiBles^Mg@|3QPbEX$i8;|Z~AU;XhueSS-hW4vI|>$6d+ISzcDTY2<`e|+Lnf9pQc z;^=e1G~@Q;{TGrh<*z78WaKw~Zqe~^*~*n$qjMXQ^+)=WD~BsY25~n9jLx7nR}9bc zp{VGtik5w$MV~;cQ+}duk!p$|otVRD+wHAd7kj=$mW4`$;-^VhKeK}J}pmzFz=W92mWtTsqth{B{ z!+XNkzfPx_YD#-C6qY^ZRm-y3@8aT8P*ha?{OD4$qRExw@>*IgbX|M6xGw*yd41U6 z%PoYd;otcik}W&s+PbE~YU8yB1#Pg^v2fw_V`IH_KG+A4xiJ^w72kRoxHh%TF`0o!1wRppSbeUy{ig4e((PM>~^L{`&4#uag_~aVn=$L z*Tr5CNJ>hoPuAZcF*mwd+jWkwIm?#E#`);cqu!x8IXSD>t>YS=4!GS$MUH4^$s?*) z=U#83;GFNbbV6FgY$7lYe^t@;eemFju`w4pta{0G1~UOyf?P6QR!1pb`&sr>r;ZzI zFd)03)}O-4%If#HjROp1}=ZAN*-Y(b6zkG*}nc3KkFy#buUi=_V$@iv=YgU6T&z?Nlwr0&5yI-%P zJeazAdenZ1xmt-MZg5_}+P@>)N=4hbFyT`E)yCBQmEtp8IFV5{{of*9zSK!;WPXns zKXcgR8?CGB0(+OB?En+bjJH;vW|j>N1H-TS)?|If7N?O@hIMiMHK%P1gzSEAZ%j4m zDCNns(kLD7ET!^Tr!v@(e783C!qVT(wykH9^-keD|D3)7gcTuaAegnx&e4(Ac0dCY z@Tsiqa{sp!jZCY1>zRek5%ToPp1jAwm64UbRQ>W4lHm6@T~7rq*k>jN^|2oiukRzh zh>TnJe|v;!eh?Tahm@#cZQ$DdGsx_tF@Lg6zdBY^HP0odBkbwytW%N2*_S6T)x~KV zHzeJ5o$X+iijzf7^B6?bxz8lzha>tW?D$H(ieQ88nBBkbaZ!0O3h0&ibCv}O_TBIXz;sMuBUjQ;S|jo4axI1Zz~zLq9d z*3|`6JQKP0{lju>oPmA)O zEM=Uh)b&mkICszN;plNFWtsOs^!P^Tdd<#f9Hq(9OASXIU)MBd1Y#OL`mk2I)9he6 zJ9{dK-wPmR=p&<eFv`Wfx4mHQ3Wc&6{yR_0l~ z;ZjX-!&KrF&|?&pZd6ORiP&)Aw7r`Fbm zdE0@U2`v@>Jvec7B>Dd=4=TdOu^(^HpF;RAjgWo#dwhHsH@ElsXl1GdM6^5W=s%29 zN>r9S+GjsIRMe1eq3gTSk`)*g-d&pxJ}t6 zV9FHgG`xCYs?yc2JM1n~mxqtf?%liZZq;`3{TzN`WV$y#YyQS*cdlx~+8BeydO~Sk z-G#}HfTyQivSjWy81E7l4ZeT>K6}^n6$?KkAc_Q1g_CA5~;uJzQ$GEz}dHCfkb?%cJ@ z4+#`I@9BX{OE!p&Zp_Wiy;JkXkrY@FCr4sFKW}=w89AOrA>h~58#Z*63$*^g;a%a9 zyV4TJYaO#Nt(&;>^lzld#}21lB_DdpXM}z7l4`n}>!ais$JbzIub!yaSD#499{my; zTGd4N(91{=+fK5CONHm?)f&IM12TUXe2X`hY&s&lPB+WX;h!=O`{I9FC35P{&rjrS zW@I$FO1)TKD(R`2)LJ&Te07=|tBX-h{Lp>qa6>wQMw(laZ|9j!ikzrm;v7r;r4n5k zk+u7ggGilUXsF_`V@m+R?$lEKxyVOmp=-D1c26*Bems9gPY?KL>lQB6cRxNo6uS0v z-Q3KC{yR6S`^+MbG0&f0o?;~7M$2hP%E{T8giRpD!&j@^Zrxg@{`Ts3!PXDA*RH0f zj&zxuMkHsjyTVYhg+zVpwOhF_w`AL6U6PC&4uv@U;tX*fSDVK^@I&E&$V^equ;lP! z;A_`jnBE$zp3**4#M(95Q%$*i`7%jMKoI&rA_ey>R?7ZK>FI(<*xe1uy8$_(P&tr7 zg~ZS}O%cTKWk>$n-&gAs*g8IX*g7?kHOR!4{QNlukQV{ls4gxNKriy_B;TL$r{5EE92ay+ zRgdj!&I&-uaI=WjH8?w4v?v#$W2ir^^^j357ddZ|ufYZ6PEJm4)4bvCUQ8{ITs_oY z*kn<}OiDsvmoLB#rnyr;*^7Y1zxVf_GB-~+`e?7DoRChU>Z%PJ1Tyb4>ZLR!%)bA9 z$K8E4ar*18fFK(k9i2&FvnOJX{Js71O+%!tn zK3i8>AIeR9**xNgCG4TaL+0hk1qEp?90s4jcjPCPt>Kd>xm4Q zAI)%?d1~+A@VI2+jF@kG?YQ1E{>)_{M0DfUJ&=CeRY8lQ`#@J`+rtcM`4+Ws`HT;L zQ3Ofje^CUUCxzH>M%LYyd40giJF?w=er0%R`d-Ed&m1eR^k31}e+YPqeWF?W(%oI- z!s7WFXh&%eTIKa_rM>r?p4Ya$%x_@XvX)99%hcgTTieC<_I8ch5F8WU`7>~Q8fpgEmt^HdxrkTzuGAC}B{alhvPK|)U!!u>2QdtvPP2sW)) z)gA2YSMIs!%4S@`1Su*O8Ky93mQbH@qXic$YkL9HWDm?ESR@Yfyz{H`>0BxN^ zPrJWHZ*`q%Z2dhv+>T_SKRw#RBZB{BWIKeqOmp(;m9=3J*D>NVQR^G-e2=WT&4|DjT_qS22s1^=WmcG6PsvS`VOm@fjzD1N>ledgb-)G zN)LQ}kD{VtrrPve%5w|tmMxY)ifIrtJ(yVO>3b&aQL{*m&rD6xY}%wWEhTbvapEFq z&%HU<<6)9_^0@w?rwNVyQsZ;uDTO*2KV58}Z{$=UW$CV6AG;4BR5xkK$gDcy&Ga2f zz}p0sx}BY!dFlSN1jmU1_M(MxYs3+c>|Erm6Pmx5W%6R#IRVS{zrHz7STgqZabc_O zBd1SqB+F3`x@g!U!0vB0`&Zp*vj1fp25N+ElmJb?w_ll780!A-F&M?y73cWg^Z#iLE;3IvWPi6@bf#Sq_l}Z1TZ(9Q(d85 ziA5~BDD+Xq>*(sz^BZp~@?q^l5%~jzQxu>GC0N+n1Mx1=v|0Fu=IHIMG`_>-rYV_L zOU$#rdVJF193MhW119OWM?U~HxtVc&!u!O2g#6vxw^Q6|YR+M+_S!jQB_urf@#At4 z*6n-W8ZI%hXY{;!2MoUK#7;k9Wpx;f(+>PBI$XTtuxZm1*STJ8LRz72zLVoPp=IF> z)ST!rW{4`R3>i)B?Nu6VN|v-H%eDJ2q;d^+l9~oMTbUfzO&uqnUyB;gU6^;gv!1yG z_~$5U)K8y2IZbs2%y#m)QnhvXNa+12_614?OK|4psh~UY@n*ie)4g7X6tCghw{Pvk zPm*BXUR_AzCPTxVkh)?L`;(Q`r@{E;(VHuN{P^)8Ai%az2;AyZVe7r9`bkZDm(}G7 zK>MMK?q|lDACBY}mwOV&VX-1z&m{Qn*6PiI*1u@k*x0hCe?{NAeVgil z-JuS<6W|xi$NgW7;qqT;oEbq8{^f zNe#x{yNkdp8Pvrw6HWr)nsAuNodMl^B(t^9w1J;0~0Xm-Y07wFbYXcve-NF6za2lk7+I2<1n8#S^i9#~NR{ zCpcTzx+*v@wz9I5wQ-uIk@5kAxj_MQ1w;yykmW6Ze_DQ%Z<3gdIERpXn|CL0lN^7B2VTw(5V7wJUw(}4Qgp!5HQ%7cR_k= zqN6Lkv3%_ltTn*Wjy-$a1GHV9;^-&iru!-gISbNK67@ViRvb%Y**7va7Kvek2)&Lh zm^D01$WK~MNo8~F>X){IEh@%79vqdfc`j0^)Xc&)Lv7_>gGKHAW(M;X zD!1;#z)X*`Dan-+lv}6mdP-XQ&YdJ6;1c@g&76^#bUu00kI-#H9Yq9>U2a9m^pxL(fp8+XZ{Nm;A3S+Nco{Ii84=!@8%_8b!A0)8e*HSB+Hl--Qq-B{mxdx- zonW!Qg*6$8cb)Ux9b$Lmpzg;6)FI*Aoo~SAVswQvbeOA_lNMj`yc&h?fE#3r>G#45R!6d1_)4< zbZ`&`6s5F5;Q;xl%fBFe(J6N7iPs-)w*A;v9<3kvY`A)gVL?Gb6?hMPtDwEmlj`^H zJ&Z#!#^)ACrvSK3sQ>x7L06F_9bKWW-p!^fpCj=*q1FWKJ^3;;YBShkS`@3Dh~T_2 z1Fh9J`S4`y+~-mZ&m$-l0EC`IS&op$rJWm$YMbIP_Nx#y;nRb8pTSey z+{Ys)Mno>9msr*dFTdUM@X(q3{e2eq??S=>zv=hj0f|(_6%{W*R+HKrwIMq`55&ZwAhk-I}wG%(?$(t(^6%&*1oO$)#7-5JrS%bN|35Gxxsk=4a$#h6_=7S32$0CejT_wp0s?e7wsMx3racS|t;Fd# z7*r0D`;2OG`7tw|`U;J#x#IZZoUZk?avKLqBsMD9v)N0R}I* zX7+3sBhWlhrzkKD2&^XBeAU?21juMP@!sjQ#jd!X`Yx0)On~x)#Q=mSh zlHbJ4dxN=vQ5?2Xy3J2@3r_s0xj-k?F$uxtV)jUXg0aA3|Hx{`LasH91c-BcNrg z{$ai=6E+IzS1^G(E}tCgpa&NKg8l`P;m+N=d4VlkTxLvw&VLEIAhQr0pVs2wiC+W5 zRU*kf5inyR5=)UcGdR~q3nxpjC695?fq06f%NM=NlrU2(AxXd{a zl3qR4cr_uEkVt$wW|6kTv8a?L+g4{tMw=)><(*Ge2q zmM(p*p0bxGXLJ*g)^eBiPjJVyj%1vIOW3w#Vj*&MX4X+1uK%X>yFUch*PsCI~tyoNPD; znl?X0-HOud_wUJ+;8(BqkO|7T)6F+;68DuO(Jg zdH&5gi*?p@@!G85o1rUK0xJlbw^3GZV2J?gtBW0hMiwmY9EhVLk_sHBF;)-t;bL;b z)t2lG-3us6@o;QAc64O24PRf$auLM`(W6i;5itvT+RE8kd$Gy3n^N8Yki;O6H^4W` zE+|+(lpG(=gJVr$6197Pbj3a)A}uK?c;~HWFKPt%x}OE+eb=FLOzhc@!7*`SY0OBa0nLiD|>w^W=i!ZFVs!1b9HpiW9l__ z=i=gufEcuM=T5<~MO}%pNhfIt{4kMnyQ!B>g30|oF%f0>^^FP>D=qDcyyD@b+F&EOj^Y3oJW!t*H9)5aq9gFA_ zg6>f+C*V3Ld2PPh5TS!eIau9>OzVB1N(e7N>Ug4*Wm<lj*P+t1v$Kf>k`GmKlG|Gz-C>I3Ki`WkQ0IQK@>X-*bcV$LK z26+_aUII*e4KLH>svvctA&*0ht>CAm%+?z1$z1nD0>8uhMouLF=63dU&JsS~bsDX;(sOEhUiqb&NJ z>0UfIx6C-<$<(LkktfQFyub5Zt+Mtht*qp!?H8##i%^FNRXBaRDpWkc-Jj{U%u-Mo zn%6oXw^jsjvJX41IVVX)1vH3NyJ-M@`T~t_TDj-+`apAsTry) zKff?y36DyaDv`J?V_`(4nMGLkQd+I_Bkvcq*-D?Cuk9CPzX3d*VIG^apU%Bp52c-+ z`!}^fV+~2d0O!n0C+!^r!+t;aKvRP6QJK<-NxqY^)jM6h$p@2hopzbbfP z(XoU2R5|)k3PH4eOyv<9R~1MNwbIV zXEu}5p|ne%M2xK9k-Sy-;rWIxM$7?lj4n#kWy_b-YkIiLWS|Vv*%+$(+Ad__efObx z+C?p)`;Z4J)m^YF^;AbO{`nl^Q%u*N`8p_LdfI4D$KN_a-R7Y`^$fk{9b7SrTrnt( zbt|JaU*>%Y4z8-u&TtfU5L~t$$#3{G2V;^R7uK#F706tcapysx%c6a9#TisPFT<23 zqCS0;lH9v%E>!!!%=%v14cp0UkOE1bI6|d4ta{mV+H-=j2=+ zRKDUJ+;Z+-Ui&RW;1$8>DEQA6c(O#NyTcC~)!rutt_5TcZ{1{Q34Mu0?)UFUn6>5- z7oxXw-a1Vf-SP`QeoTV1t0=VrZszhwTrpoxa1wwZQUZ9VAZcTVZva<$%^0eVZ;~t~ z$NFE_5)BKBLIAgB`ojE-8m@IJ@bLTmjyj24;J*{AxV!-(MO?058h2>k5mIF9K9eQJ#Q5B0Kg zjH-pyfu&5xKSMx$_{pkp9?C9zyqK6+yx>REw5?NvDc(6OV27Y~*x_N~>s4Sei>d_I z!9E~0A(@$ImOFK4`Pwa2sU{alQH&uH5*##NUrSC9*e3R(>6w|c7${hy47;Hhx~*Wg zg^->Tzh(EQHWq*S^c_IM+r)9a&mwaiAQEM_&!@}4#RP!?ZNTif0_v(ls3HzPljpGr z#*y)HJ!l{(86Uzd0&qa;YuBk#?c&PH-E3^v@84f1K0m2Tayg0$l<)W=Art|{iQQ3F zM&_L{cMGdEsv*LG!$GYN^hMT*$hr!3EhwwtjVriTDMr9r1N;wIu@1=dO->`_3Ze1o zpn~N3o7mf#oLQwx1Te9+u!<0-{)LohI_#Qu(3@cNB+LbY31EanP}F0C6%)Y?l*IBQ zfPULhvjJ&{q9!0n6eN6heLsve(dVL-y;ib1Js>5LN6!rpBhceDu@}gGB;^uts$J(J z71M5wLa!7KrtjoPWe%8L0@QG9{`S$_h1;J1K*W&#Crr-G3;?nTFH; zkB4DVPHs{^Qpb(Rt+a~{AmQjil{c2ROWwaHv7F;15~#Y}u^UKc{<8c*%*hQ;W>^>8 zn+*#i3MrB$a0FWz4dxDO0~Byx`wK6ui+vBn3#3_4?aU7u_Z{)@=OI*=f?g+qB2CYm znl$ivU!}#-Eve{wrl(S?A6&^hFD^ME&TEvKr}eA<>iKQH9;CG(Vp(6=wEyO=JZS!* zbnk9AeHkpQdvk!DF6iYXfbkzi9G^P8Hv6Wg+CryO3un0e`@Ty*Uk2sK=P<{v*`bt3 z4AK5>dt2t;n$;I|AEK;UHQI6g^D{4G+Y+Hglyse>E~TI6qC1VST1r%aUl-1rc@%qD z6d{R4IAJZpOvWn18oJm#z^)^RB*tk%ki%6=T@0h{|B{&dKiek!Eenf^iWW`mdzZyN z+usRsnN3u*37Re?;hV8)*|cq@yT3M>$`zIKRrp}=mVc}a(3KIIbt)Ap=7rEpAH1AUnck5XF~?2iSK1`&q$U$g9qVan|bQp!ej5s zBPE*8{lTS?E#B_MUom|$8GrW`{3jP$KzBHp09>FeMKHRizGDPw8d%Rd!-=r}>T*t~ zs+ZFm`=z%cwOEGt@$cJ}T!;y1di?jvlHq#nHxu`2H^Au7?WN=dHa*ezT2a$I;Rir? zPKHd+8kZ*0Br?3foOk(B;Zbdu^dI7R!Y3c|swz`ksyPO>Y5q_d7;#+!p46yx!*tTj zNsjQ+NoGck5*sz6#osyz6VKBk>kBUa@p~`s1oova>D}ZqTNJs@FM-!$m)+K>M>Dgb zM-V>0?SB+|-@Eu==6!ZiBY~ffi&_uDUb05^KXKBC!Ix$%S_$2S79r!Uiu9V&_l9CV zzr&CAa$yse{N*r-t}F#5nNRpt_!{IQa@^(}mMBH+R5MZL>NM6dJ;l$h1Lp|m8JL=1 zSaz0h*yM)oyZg94Lvn8>d@#H{1G3x(rT?5jd8^y^qhZ`Qc;{Gz{~lORH;J{*Kb(;t zbz*N9Mj1+ud87U(-n#f>(45J)L;60Y z4Gb@s@1eYfIUl4Z-b){rLC{=F%UqG#U`$vjx_!##!#`vL1?P#Vm}QAd3m|j{H#4OffLstRBu6x_GKiMeE)D8 zVv_d69INvv4N^=;gMKIxJ)=S#Jj#Ov&PK{TVlOHOy1=c8lm=*F-{B=-2b2YXas1wT zd(U)UA59ijh4doxXu5q3TQ!n1$AcpH zf#0gwd;Q~(jp6cbQk<$5y@RkkbH)JNBIURAkh zMNe6_a@okwn`W62`xn)$z<=&R7J?M)stNBBP0*$RMec7flGSXwo0m7acxIx%v1>8| zuxfO4bf4+-c%{fSU{kjvNy5NMft|V@C;;6kdu(FUmN)$@i@aCNR}-&{HY3RhrZes_ zZf}%hOTcdsj#w6ccr|d(i~^AWs#&W7AWs7b9~he7 z6%}=P*pS`^LM##6Jr49F3?XW%#%lK}Ii}WPLKkb%lyen4N-TShc*w|-*1N3FQttk@ zvH3?uWk;iVgC1kmti+J9NOVr;`E&ZvKqwTOuoCk1snms+o8U&qME z$k6a`X4rr9z-5L_c*^vU8rtIQKO{hh%5rnII=+R3(tpa*tOzk0ix8F=l3D(wmV#4! z|C!6FTv#e{d-Uqo>91V5a`V=$w#NtQ{$yK=v*)wt3|bR>K3@@BwrqOnU3W#HaIIkq z+?UdqFYnyq8R@@oGtCZE{eQ=D@F9zto_#?(MLm~V9Fx>y`%8-~_Gd^zxhKqSXb2nI=r z$`6S37zir)Oa)(^zm0OfYrfxMiMh8Zq$e9x?@BdomNPWm3tqkh#27eVe=9GN7~Azs zU+uPpNP^adjoY?$*DL3_IK$s*_xt@y`4~YmOBRX(HJj0%b$ooV)wOUOl_A~g$K<<8 z;&fTNEkO-9bPznpVX=U~3oud&6ZGLOMf#Ow8kGAsW|%bczj*Niq}xT@#?>wu zWreVCrlbc-FYvkN`Zm%tGL{mr5rzWoYA(M6qA&^(PTzL25(Q#(B9f*Mxf2H6(Htu~W3=)^Va9}T7wMg-qhnGHB^T9Cr(!tg$E(19CZ=8i%ANQxv zbGzkj@DJI7uO1RwXxp25Hl>H|o-}`(GifqB7}dv5OBT?T*$YixHqH05t?gFw5KJuk z@Vv%WqZXYlW81`?1i^xH8=aN>;Q%OJU^2xdUpO+mK{~)<`G4!pEFSBQGhbYhK-ixP zOgdMjtPo(T7*9}LmEK@oExUYi!*(U1f764g=S`2x8+|;zG8r^K(!qSGCjKUBakO$| z52h7QV?$cr7M{n(JiY7cu^$X~_MrSBjFi|?TylN@XJt)Cvw=a`tJGffJ9KisoD;BDl+ ziDpm7S!z@kzB+0yRRPWVd+9Yln$@={rOK;+DVQ0Mdgukm5&C%-ts_cz)|pyer=$O! zFSU3XJDt~?+Wb-v59K;q_~czDdyy;cTD<=?ErcA4z4~X$Fp2f*Ga-RxGVPqr(oyJYTJ3h$NYT}+F$|vc> zB|m=r==bPRAxv4Mg8~j|!rCA?-+=AU*WdqEx!%%?6~RJ)JqPW6UsO*sJ%#fNR)HO* zG33K47|9Xii#tmLn7feHMTj#EY3eSEgFBS%qFmxKL5{%B2vLJh7PweHe^xd&HuhE5 z)zLv;4%KrcD)bo9*5EnNbOU_ytQ}&a6>hkwID4^lWxv*iyf3G#ZXKr|4t4Ls*7ojIGI;KAr=}= zNO%7H`S{nARKz4sJ!k7)C--2qL88-84|lk~?ck07mQJ!}%0nD;81MUZ!7N7#(2?}p z5Cs{wPH+*)x<%{tDnt4O#R1YLC+*;uky21tkIyY>gO{rdU`Y=mI1y(cqN2TION(Q? zU49yoeExsalZghJH`i}Q*aLvdWW%p}iFCA12xZ#XwMzc_WqB;O?UT4SZjjw{DGsf2iytl@?=#77Gmm_@JsybnXq*M#q`0~$y;2EH>a zLY9*2?;eM9G^jTR;@w_xaV_BR>`U4ZP`?6l*T7dG1{QXDvctz3rfHe!u^BWisD;fz z1=V`h3>4mj2F|na9r!keIcQj%%pVTUnO z?SlP1+(&#`2EDbX<>WlzI(ZYHH?NM^qwM6A4clMVu^Cr1Y{%JD;_9GndtXO|C~0T} zL#(#`dpiBkCF)3_ERez9(=IN#I8renW(@)8(UaqgPB-lz#TTz$eFf(CQE+e!B;mbc zVw&(^+G;x5iJ>w(4__$E->-q?Ad0KWDJrVqIuY7YQHX}o@JIiGJ26nyKFR1@wNBzy zh|KEg=3(Lsv)4eX8zIn2jh}_#LJTJJKyl~H+}UCI{^l$dMTxn$hBdFkpbIxARN#PO zIeXFRT!pr>u@=X{*Xa6PvtdIW;sb0+yJ9sml%NTJ_MqGM7S7!|zHkgt1>+_i@u!|1 zlEP*U!A(aP$5&G*WtD?wF}@MdMUBA23S0hgC$k5$ILEGCWHlM!)g{*C@=AqZ!85Ql zG6-9}f+gfD9F$)4yg%v?v7~!##7tAtXxP7>MNGWUO+}&Pz2o!!P0t^63cXrr3wo|$E*PAo z9`CYgD}{C|+oqSPHZ3;c@)RcpyRp;O%ywCyuTb`Mt@1sPa`vgd7r6lKbzD@-|JuO| zJx^Kpb?Kyjj!akOjd7T0<#C9e1C!nhcj}1x45e)GgKv4S1u6WT1!a7jPA0>?g|V}; zq{J`(`)R<2oZ6L?4hvg;jIrsX%ub5kndI&)|Bwt#p{%Y!5=BSPT*iI*SO5AZz zO50XD8-Axd<$5HJ-sjFAY+zpB5HmYNOL1bxg!7xfUlA_v#@KGQrusgWEraF?%JX#_ z*)JJ7@+Nz6hn1=Egq$xyi7T#5S6^t zm|yDr!Aj=g#Kc4faVNZChT^8kF1ch^$Ex+!Q<<7j#U&XeRjQ-I2SN2wj?iBeW+czA zyK~daS~0eY?oDlX0>2)^_Sp5IeZkEvS@4-c)MqJtMB`IWLa9y)u&5$RMmc$T?86(z z{FTm8_a#5nC~yscyQH`s+OkdUgl~=>z2*v2w~edM?wd4#q>NFrZ)8WrFM5`KvATEV zG3(hIGiUO3M0PZ$QWds@MxCXVtVm1vrpRU${ms)_5+H1DfZog=BjwcfeWZy(e)?? z?&>zSMk83syO$v{Hs&&cKP)r^~F$q@=Oy2GHkgz|iq#dnLqFD4#!-*z7fWF?1g zutpq*jzW>zE;)T2Meb|pZ-FAVaR8OEFsdUa8UjTBstUV_NDztceK|kyNhE*oS4}tq z8{Jo6-_dqYo?r0sIsEWFu_i_2YSs1>(`I#Sy1g}(5J6uds>=G=^woy}>TvGcClA&r z02uit>|#lC*c632pAz?M7duiL%otC3Vo+M+wt&vzHm)TD*!C_v`S{Kwpw|KO^O-gY z!s{lB{%^FD25GPjqlrxgDH4T3EFAih2-hT$pshUyZyVr*G94?9#;WsZSda(s3>36@ zfnNC6YRPsidnr%O9C2_n-t8&iWgMWXmQkm@F<9!IGoz>1j4#w$b8;L!0KfQDXY=NBJRX~cyF9X5CY2*79Z?Hr2ZX_Or`_!j6s zDW2TP7dv|pi{Tgy?d3(wrKzGUT5M{@u3>(yriQP~0Yf2Kp5gRaL1{Ax2-13NBU^h- zfJJvr!ty;yN2D9EHK$bA5mkQ{6ure|G5^=A^zKeORZ>sm~6*SV>oew3T0J(>D)20__2786x zmo=+bbJ~=<=8jczh-pxcaCT~xoEg8}$DUSryXcY0!2`_4B3OGGlB19UcHPYn17zrh zLufGlOO$z)2SlEITR{$nH*q6zP044mZIV+8U-?;mmIOI;uhvEkD$>-pXa;%KEvKyq-ug~FkNmp~4VaPWV!%rKwQBLnw$kN=>m@-&9{&Ta@MVBpI ztUL}kD>)74K1w*C@}y&Aj0SIYC~jancRv4{KgBKS%t3x->fNW1R_)xHO;yy@13_l3 zX^uXveqVAr1FeJvvrYqbrr>2R;iVaJ1G#h30TfDSOQj!wL(KG4no)~qzQgFN8!I$i z4_e$?UN}e3_NCGpcT)#;CU1(N=ApEO&l@EFdhoT}(SS$$aZ+5~lk|cc?eq6H_N>GL zM3PSaG)!>GSp6}C(00UeN?S)}BlGl;FPye7ld;plQ|8a9o^EobL3sUb;p?}ep4rrS z*INbV6xGZck>&4qC)5if8j+-Ya{n87eG;2OZG{9>mN(qqN*BM4(daba9v%|Xq#y2P zL`a(yy_?S&J@%`Y!|ZLn;4Jdv-#~&AxUrWO35gL+B zCli7_8{{fyRfV=Ddp4PtC;V!5%~SosA0mCTmyL`)-$u{0`cp7#e9rOf{y{3EF&h-a z-;X5}Z1`)06pDC^+Nh>nWm8O&|wCR4J1>uD*pisLxGLqFY;?_ zjqe_cS(SSOL-F)j&zrf7^4sA1*W*ZEowOME$2@PUcQbJ*^@8SNO{z;nFQql6I8K;? zs}7f^nq}$IojT?wDZ3Gv3eEyxs&{6BtW-GJ|CjiHj9%LPmLdS)K@1`9yVEi!#>$F2 zl?e^T2qeBp!W+AE?e%O0FDD=Rc#9D!r)C9rJrs6Io4~(dp=9;3ohMDq^iuy#n0vZn zwpQ-_QNO-{dtT{{jlw{p!8?`sN8QO_Ici~trro^x>>GyDE+o0`={n}^68SE;Bhs{p zjdS0i#y#<%e*lAj=6e4P8bWI^)Wt-4L?~cuwfgWoD;u}+m#_A6TnOak=T}D6!E=6L zk2YCM|7+fD2cE?@M%MHnc8`0ha-y~4x<}iFCx0;QwtKf;TPwOR&Nw4q^lc==5*iGD zzx~CPWQ)yy{0l9tI7t>qBr$yv2JBoeU3=zoyqa_X)n+!#!Wx%v1U8)J{udYM&%a5l zuP7e>>9)x=q_Eie&$5sHx_;W(_2rF~7p!EqCdthjY}qj(*7S_}@8@ybz@RFi63^=I z9Xe5CW%JzlQMlZ!J^2s;22NGwbo~sCqcKI_*2a83Eg&%+SoH1qRFT!+c=hD|2n$7w z+s(4vVknrYOEDnx*}Gz4mRBosZ*A<+MZJioR>5b27RO-sQ3ge}CdZ}i`pWyk7I3qDFCOTyB2AsRJOiVGPIpWQk@H=qxM8W+c?>9U$!sj?{jMU`l7lEqz zEJ?#g1tZ{A0uLMb<<5;?_!_5q0hP7`ZjX>&tK%xrza`~bZ`Lx3_NBjZiC^nd#*1rD zUydx^!nAu%u3F$u|Z@h$Yy$Y{ejjO7-*g&-9&>yQcu?N zBJY6Ukbj&$-kfcp9IO!4;?TQ)Y@qo9RAXWDHn*JyFpQx93V6(=_5x)&Cz34zEjxSA zP={3Xm_m@N5JmWo!V&na3`N}{b{thkUY2ZHC|}(Ez36Es1?E_NYYb4JDHu2FT91>FIGEG z3(w;KbI@D#e|(MC*7iG$rAslWmIhA@LC_xsc^FoR^YGzw_~$FsmQl2^IQC@$aeri! zWZ(jkgOyZI)VU4XI~=s(9&98c+3tkf^o1(b7iJZOQ+S8jJ}4xHckuP%I5 z)eGk17j^}hozqYd*QE5D3tHiw0r26U#PHWpQ(K$J%gAh(Tyo@~rm2J4Hx9K*dfsQ{ zoAu0h+>*I@<;s=U=(I3wN>3z}{8&%*39yOPXdKxs`{s1mjiQ;^jO$@(=WiG~DqQ^g2#Qb(@Br zIu$Gjnjy$evCK(BPiXbBI51U0OzTyuny?KB8iqpFV9Y-^T*_lupAfdQ2k%I5fY$H9)^E%4pyAwZT<*#qpA;}Pfw9!v<~)%PZ^I6(~}+v>WILy8CZLlf=3o z<-tN{(eST=Y6XcP94~fML#GR=WKz&6O==jlw407eq%@uzWZFiVJP_5)U22xB5Taqs zl)j1W%SDh~Rp_Jg_xIoFS@;51H3V}G*mow(XtS4Pqe&X4hzL2!9-f}nXgt%bJ2yWT z?|L5mn4h2DxzneggB>@(J5b_!hGFeD_!1$T39sULc+VlB$v38%*+wtKv)UJQ6fL9V z#^@NwFen86a5&|5D=k4`XBJ6H1pd%=*AN~b$Zk8N)O%lM43(2uY zhwYPq9FAmknG0S?c|7kR-zEo+!cRwZdl>gVupE(_-(b0gr6|SxU#^F; ztA=ZuJ5t|NrJ}Gp(y)l(;`zwE9HA9@-z_xO6418!4U@(x+a^ENUp6lmLEFj==a$ia z{EzIrSGbI%MUA!pPiNO24|UqNe<-##I!X~zV;if3L`4pjlv$LsScej+2suZXc2y{q zW6BaavrG{(4x?JNDV0--LWwXb73E>%y>8U*zWcuWd7kIrW=y~1{k^`|b$zd!C3V1a zTE8KVTijTIGVoizR>Tz)g~m;nVkdM62*ufYj(Njq`@9k_0q^J&Z$ppll zAy?LiaOCvX2tM6U2s)i5TW-AkxOXps&J>+rW{%s>gD)(OEozZzsj{sudmH8NEZ*Pf zWYd=dG$6j(E*Q&xS@TRPiHC!A`9@_phTr3~L|w6#ky)z>>tn=M#O7Nljn3`1=rE4k zO=4*TQ{ugyrLLg9qtIjLuD5V z5Ih^)#95%g(hUnN33ukQ`(03Fu?5OrefJXl{E>+I-RG(fthp-q=OS#i;!ng56|Dol zMEm0f2hW8zS|Pz%qP(jx{e40H6i4OI_4KBh!M#Jr>bB8N_MLKW5sYR_7HE8fN0XxZ z{#s?ZS&^ zEg9WtV$!p!SGoG3GU+fVrrpU26lcW>P~M1lje|ND(BxS}>uclKV%b#n?N1_=18PAI zp?&50F%k?)dNZ&Si)aHxa6lYa1LlwbGFF63sas-_E`~-Zd*r1w!U1FgqxfK7i#di1 zqX)QbGw?CPAcqM3jWwnRZZcCKpD^o@3gZ#Av13rz?nLe(G|aCmiKW`K`q(T!`2e4z z?+Dxc5RoBy=+wI({pf1y?w*e{1{O+JX;Bbrq$TnZ7m1u8H3@L!haKvJ(PUW#A+;YG zpJl0cF5ulI;MgoI^%qc|M5Hx-#rY751tq-!&c8HBkNZFjxvM4+#tTET**Mb&l_^40 zyZJac8hEXfZ0+sPIsAsdgTUT#1^_d95j3JN0p5~J_PxoF*RjvICImo7reaz%8{CSx zqJ0QW4!Rei(t*O1U0c;KUYdm@wD2GdfoA5Jd<+pf+*;=*4qHcSQzzbLXB0z7zTv+{Rm#MEcYvf%a05M_uz`bS9t>C0Le&B(j)95 z=4Ry>xUsDpKqnY{w;*&tiwGkw<%4Df?vu==feg)226$&YHjhn5L>4M;!6flRgxFZG zdxQZ43y?a-$EJ%8VD54s{wHzFkrSmZXl$gdw=V4@AoY@*#%xS%+v2q~^7CWQUtvjO zRAX4pJ-C2QNF^zCZz?g$LvGs>v3%eFg_vh#7R z5N1DsD-qwIjio?qoFrLeXf+o#ZQ(wsxBdKHZ0eLLna~FbVUE0KWen>f1DYx=b$~IA@_Te3!7-}##Ffhm(mYcbwkK&1pOiWBmydm>*CWbz{t3#lpwhvGbtp5`=%qb=k@#k29Ziz&_|Uo zm&giVj^{=sCwui~R@J37J$;i~x`{7N2u#ZS#Cdfwc?UH(T7@u2jcUeCO*ia1m_dZ*cyzzT#dF%m^V3;U*?9u4aKqclY~=q8O5X9u zYpE19XDQhu;IBLq&+>kibDCq|ufLq^x+YkAVRvKcSl|`C5&KQ9l9za^(66G%?g0z@#fu}Q?`f?)LT zt4uibKcuOCIYdf*#WfvIAZ~pX`luI221LD2Xswm+(5H*z=1k~L5CrE18OQCNajm{v zahDx|ey#VM38|sDr`*>}=C=3m-tWXxbZZ&$`T}dq+6M!XyO4_xBm+)+E=tUpwySzlGAryKtUMuxKHiaGm@Zp=Jw ztDqsW)7jC!Wo;#Qv_E*!gVmpXKp83gmLs%zaP<6ixUS&skh#k(Cm-$(mBxu(3y%Q& z<~4kUBkvAX+I<_H>mJ=S@_d>~;vU{xV1r#D@$${eMLibe#HK#lml-b|P}8m0E=V}A z2`-6>KFaLh2R$(Un~2WG;7>r*IKjfWz&fmH%V5_HN2=f4`-Jt{`O@oFY_?a4Ie$J2 zYCJ(OO28!I?7al4Q8Q+VNoB}AOJ86unD_H6i|r~2+f#Jub4RxK5$=sLm~yh-wk|{{ z03$}E=3;Ps1zI`uWpXMi7MS19B039tMUX>dbf}EN;K^*dEoIRTa z+YT3`P!#PMGS~f(bOaKkkt=l@8F{J56wt*qUlD2KSJ+lqfu!&o?#U1Zzl5o?&X+GU zF-=JRMV5ituBO*WN!tVYs{mc*RRoTbT^HbaaKBQ)^*-5L@<|hTVs`AJll*l8_BE^b zDpyiJGMC6}`{f1%S$aPGlNhh&bC}|8VaxpoMAB}5Xm+OF-bFT;In+;7vv{EX=@+LK z41^bY_gRwafsixSEYKo?Mx?V5yDG&!DHowkv+(HF$ij(I*RVP5&ls^QZv{twww`| zvj}&ijzAdM(P2Kyfd*BtC~B?6`{l=Z`LCK|Vq!WAZL#-+0a&P7TaS`ko<;F1ZOSq+ z+2(|*p1*T>7(6dHjzY|aqpQ)Ge^UF5=4VppTpvHew+4|H;Dpjlz6Ljf5`w$*&%fs? zFNQN~`ivPSz;mXU$%JKsfw~$=15m9QY-<~V$=d`NNS1*H>Cn9wr?XSK60^tJDMW26%+yVvDiDNE*RCptnE% zHU{?u>Pu=o41zE%Wnw~N--AST!q4G3^#qF1jf5>ROmwlV99SuWpp~K%5tlGbrY|4K zv&t@^C6Jeq*+kS$)cJExMPibp7dvNT6fzqa3IrbOp$2?aguB7u1z^!FwebtqS@#cYRgdQG zob@n}QEQv_L znNq*v=LrEP%l>gV_D7dmyrBr@H*E4J`5B{SutS$)nt;vCD;+52jOr6#)#*hlm*6N9 zUD%ZeMrkShG1$LC8<;LEJlquiA0qVvlll*=cWDqqTc>_%3p?xoXS3MPhFV@C-$Ju;ngKhAwn3#Ce+eLxE}CkMi`4QDfjat)D^~IVrba^2J|W8f{F(^ z8PzlZ?{2&+<~w)B(RyGAtH-4sMB5|!&Fd-d$#%^ryz4x5E zO^WDAOd-=#;ifkkQE;5Fe4P?>wk{DSHYt6$sW1{g-XK7==OXsq7){Tql{HH4pZYM| zPW3Y;NU&EDR(sy=AIFfpm`%-}GPHjSzonB(0?~9&%#^O^`UoyuXV^=>3NZE9@#DSZ z^q>u3Ga3^!hYQWOB~=MkG?Z%YY$lmM+%;MV%FF~bV68)(;L?arviMA&o>#868NWzY zbv)EDyG>C|)3${ST*7Kd{+!b8oj{<~ev^EcjnhT#-|mVKj!1JJ;kyjGMvp(rN}12e z-Tc%0nsuv=<0qKraDEt{?5%qOzF|T8H~?jF7ARL|gk8A;z%Y{tN#gp6&VXn$+Q+%C zzCu6xhAM04MO~2PvT_rOF~LSfU+M2n?p5vgPPxkzo4q(d0LaPvd*qLQwWpZhDT&J+ zxOXPTAN`I8hN`GQRB z5FpLC8;7z=`$NUNTjuJ-G>yrg;$JSE=*%BY&ekoa`g)`1?G>TN2P8!$(<}CDSWvf) z`GO!HKvAHfjSDB3Fe(hrE8{&%{QWz?gvCj(dsImh1PM=yrlQ-3;+Qvoh@hs$!Fr-0 zyK2<~oG0)2huQsqbut~=Bdm9~$Fusm+dTiVHdZ-2WtF}l%nn;|k6g9P&ENS$;OLdA z9#2(W(}nG_a8V(B7ZM$;LvTKwt=TL8?$xvig%v*AATw@!H*UmXD&7uP#@+e13{?2u zpP;Qg2+=z1X^;%g+aO?g;Q5s>CIkLhZN#Z4uxC`V)-Mv#k5eFN!}UR9pMtnx+Fb$? zXHDb0M>)*KyGZH{f(e%6&8_c_q&VjyBQJp_2ouWWb8rHDnJyyo2oGIDsgG;DaB=cY}OG7aXa7wa#0ph_0zxz_;{C(wG}$!h@P{cKnb z7j{4VS!j>Fl0T6J8;Mi8k?`jd>kJH;_e0)O9FKC3d@M4<5C?>_XY|`*LJ|5#42@W8 zkk8=5{Sd4(lnQwz8$d_fWy6u7%UFz*FppITg5{LF0Iz=VK7+c2Q5~L+Z6~T?9CDlkfUzP|A%5kchLYMo`aUFA*UIdB-J=v*)w znSt#^y5auw$k9wM*zHH|Skw-UEG#!-enIG{i8h9iv@E#3ozNR+TNI=tI4-cJi0u5; z=gxQW)g6!bK4`)XF`rXrs@VSF2X~uh=OUwAqs@3FCD*%cguCdascsOWRW~6(>^M={ z0FraSFcDOVn50I#(PLAS?AI^j`>?vV%wAO@{Udf%$pS$EHtJyVC*p|3ERGmEFa?y< zFlzowxAoO*y-HWN?fhMP8V=t9Relhe`Pvmh2!1+t;)Fb%{`;T}z#9xlsid-@j>zZC z;p5y;nHG1(@RjV+2>Ll#0j4L+i?m{4JS?0(t>5XFDCWO>N6KhhE?Gf%x?#Gk@+}J< z(7%0VQ_jYqMG6k7v~>f-H9#y=uy+EuyK`UBc4@R~teS@3hkTgHWKwBqX(g>A*wUd9 z^~fTZS0q?1KKU(`0>hQZf`jR+R~r%*5Fn-ya|Q%BWBY`&wP}2Tp&oM-q+KtbdzujL z?sOw~8o}mgi+j+zg3FL)i*(Rc|fg%u_!Q{omGw>JLe&HSg= znO+Anl2A9@*x1DcuV(m4A?6+8JJ2SqHUSR6$V7QnW-p??(}IV>3Pi|^G%Op($dLMFPEdW_74ve6! zZA{uEKp;LrBA8Fe1wTpHP~sMbm7m72WP4^2cdO=T&kmxQ0U?M=O6HD@aK_}hTKw(1 z`L+Tz(Sx7?SZNYm`9(El)Pe3)M(GEFdr&xv763MCo%4;;D>sm?y!eT8(PkEG`OAth z{DyIzOzc21-%nFXsllm`k1nC-C_t5c2X2&@oFNNXbI86Bc)}K1i!+VLg$kQ=re~V0 zyN>NNOo&nj@jeA!2+c$Qb9ry5D=tG!T_WMq#JZAD2gb8h)9DpNJ)c=h=O!U zgNSrUO8@7=z4!0@&OPUU?j7Tfare;ShVT8}SnpcTGoLxu2`5FnOGRzV!V&z=<%cMZ2R;qEKGTi9sAb-M@`JG zA3N#77f+$=qllk7qhRxLpv7L@TW4YMCl3eJ?I-u{tzU2Ru~1IDdQ`^sm7#%cvn5w` zF?(h4;N=9LA0bk4%@PLIT!Th_I)O(tG)hmmPy4&oC~g%ot6*5UY>n=ZDY1OrYjhh- z+g<(Y$A0$we4IHvngywLU$2CSKyUh3R&z=g94l9Y;A|3hk zryaA_?${4DxpbWqnyn|5ZXdvnG#_AEPNBR#ay!&FMTJe&7r%;Oat_-dH0}PtkU6En zp|;b?O;~qZ{xJ%L<*-}9e*aQki(QOY)0-H@SFKu=KVxEI`&xyqtLpHX%980>|B2@J zr4prI^1i8r@$P?dBK5&C#buO{CL?ZtIeGcmFY+IxBjpzs79=Dkp9TeK-JQ}((Uq!= zRW1*6+(zvvWT5+IQ&8q*i(M3o_w(xBnyEJDV<`=BQBh2OF>m{Pt9uokobqnpzRkkP zgyHS#>SE^LkoThAy0s(e%{q614+@XtgU18dcg!(~7tfW&h45{c@CpqJrZAsA6|GP$=-1E^Al%TrC3G$;j2%mqI+(%I5^UtB5y2;{mY?h#dOCp&NojE zGR@o(wLB{^af(9m+0~S%xCgJ1l_hzx&qO#+AYv26C6a2-Ntyh``QeEQ;mzV+uABEJ z+`hg1h-Qw8*La89UW3vXTy`Vx)^J%5sYgUaFdsX1k*C!rO!v$4ke(hr%i&gyFfq@% zy^FuZ#0B~1Tha`brCxA~=h{ugjGTC~C8s$=c#Xy-stn=tD=BX|hH}QFZ!{!}cv4*w3OK5n!zAAL`pTcYmVMzxd!5xc3(mcMbED~%2Q5!=uSH)ePn-8=?W(u8 zR!kJ`(8_3>`{8e*ozhSfe~Cx<<2i{Dv%qG_brg!aM!IoJ>h*H^uI_Hb*~vkJ+8Cb~ zocf`IP3f#WJj#4l12Xwe^Qi{4EQ|~cO!&?9@<2sBy{I^)SO)!y;4?FmO(vFoHO%5w zJG2}^?1wUoUe7bA+94c`xagL?h}O)tlMolL{88#(8!dl0K+sw9Qo6CCtn8Dk*RIiQ z-5NrMaOV5di{HDuBXJP9=E8!YNOG2Ce~hH>QMD|KXwgS|qBqiV_l%Vb@)%wCLY9@y z`T7KniHUkG!=^VkFrl9ES`WqDXnLbx;JUG|GR&h>x#tWTtty!ASeN)sI{wu48f* zD%4CG>-0t{#wv|YO)0x=q9YIZ_N`EwVZF4UpPxZsagIR(AhV@*B~I zJ3~ALX3lf_OD$Wr3}38wS+-*Q-I~2SN5jXCZKYmD5%RfWeUimu+d!4^!ET(f)SqXE z{qQK?a8BopxsVVUa?3(XPyR`jq@W<1Z|nGfe%PiH^)*F>yb(oF5tIHO{Y{?~8!C@! z<*Db|PjP2a;n@=vb^iR;V%-*x+ufysBVFoaIM3WHdwD8rezK`H&(VG(W_y2qqAvrP zhkvf#DCgji^T!{5kf|==^^8q5^v<1?;&Kua?#9`J+_?)g{e2Z7fAU)N1Y=gn;&HI3 zF{X_v*F9qs$GXd7bxNKkl(IQXojrTI)wY|i#c`^|pd~A9VLVc>xBcCpc0D0()O+_P zW)EdawmHql$G!>?c4J{?7RR)#Ka$=Yx>?|tP>|D1^iW3UrnDPPN>2}8v`TZF`*qWU zo?lHP+X@d7Z&9yd-P^Xfkj}u&&##e`lr+=+=jIyBLh^-+g7c|n=H~okcUMp-bFLCw zsnbo`5=0(s*Z=vgkjz-z#l%2LdEbZo+w8tS5#!YUv}Le4Q{E)!r>kyxU_1t1tJ1aB zK+(V;rY=z{k$kiBqlaC8e7Zuqu?Ciec*(OP<^kCb(`JQ5MXbEMS?4B5crfoSt9^Fl zl10b+RU7vTsNcVTA6Jtd`%yYk%$k@{){<+V-d7hNiwEsbDx$BJJeC{o?M)r8nX5LO zH=7_ZJHSD1!)v@J%rgelS}ol;z-q8DqAY-~|LzV=rn;%dG{dy3h3g%syL^!hs`0=j zBOCFM-kK3>-D_hM<*lsV2+WVm)A3rIC(8jbBb6)%qXs#=Sg-v2eB+Fc)koAbWR6^V zlM}j8P*70Hk6q;5yLSd(Ux$c#?2hOv@s*tEWo*%MnvOvJ2@leA<1lT1`$s*GX}b_Y z|3z{v;s|;Fzkb;udPm`@dCh-3>~HR?jWzsmZ!5dsg}&y@lmV-3dWVrS$alRTX-yOY zcrDet7srAYYr;GQSg_7Gu9rpOiV4cU<_3;APd~s}BSuC{`6s_#EBuJ$FB8a8IC=8t z&z~EhLT=auU>Wc_^g}Ki-=4fM?zhYLJ?9` za1Va|fIwcJ}gvW5@qo! zHtjhXjDg6~d^s;^m8~HzE}rEuoh<$GWXSYbw;_UkLMLWO6~c6yaSQLpoyUXUf3)KA zJ*wf=Vr;#t=~~gFUXpdfuS%9A=FP-ldEp&Q;KlX?+7CS`ym}&BmqKa3#8UY1YIz{P z<>+^Dk6j$1s;a8%H*Ba57k^rlWocL%z^6>U{OV#*0)|WKFc z5|JQ$BfaI7_|rp*J;k9xW6mb-vA5;q9j()pLZLd>1-z35!k zQ@Jz(MfCO;Ec@#e<>b7Y44nq~SYstlgsHSj2MNR%xNSDznu!7Ab zUs#DL>%oJQLYyrqtgPPB5O=I)cG!LOwJUsXq5j721!X=+<|rJADqS(}|i zQWB6495^tJtQ})NHH4W|ftW*s%=q+k_`rY>8Fr<3H5y*}ptbIwKYu0zaY*V#I1b7d z*vn@X_r|!zuD1V`bU;k@a9;KSiIo(JrZyI$TCQChxm&0CnO@Aw7d$3`Y}+5WQtb-8 zyJ3gKjDAU;vX-ObhV5(>Na0*gb2bQ27l4~?^4su{@Z6HEjKx&@=Vk$wkj@eJ;IBv; zS{hb)jnsqXn>`goH}2;ART^P|uyKli(|R6?$XfHCoIg*#u~R|d4=OOWlSmz zHKxT5W%VBwmjm`0|9m(|Z=$c(ZoE=V<3{f6P&Qc=nl>G)TAUZ>v2^tBw!D#H4qU=K zhZeKfj4cjD&y5{C0L;Q>rE%`u9mHnkffOYFyLayNWOfHuSB8nPS{%4f3YPXO5e>@I zzE#!L1PzUkTL5NdXwn~;x1P<>%KH_TL$W@FDj5szMoX3=!1fHXlErwB>_l(1*hGK5 zGBC^pnXFY2l3Au5x5=*+_)>83asMwbW@;4zzVNCJ zIdW0mh+^iC^tKmd{D~FaKhTguvOPA$+4TwNh(gbO#1Z(z?wt{aa@z*VPYeH8M=kY&$Gn zgIGnDe>7$r@|o|#M4~f|;qcd_Yb5=1+KgNl{wPeIb>uaU(8t`F!95|tvP%UCXkf}! z&rI}B%ulr$cD%pq6@D!5*I8j#s>%e7Y)-pzJ&(PDnnj*_eHmz|se8(u7gAnb@C!xK z6aKg~ej~5f(Ax+hJs7m+WWFybsLgkF#?ULL8Pv-8bKkJ|@nx5|96+fh(9h?#Hm&)Y ziRz6!&B4gal3rv{O9$}w0<`lO?P(5Mnt)t}br$mtM%=L^(*{W$diqj2k|Fv^fooyH zgM0TXfNWC%Vo1IVau^lATVv0)1eiCEjg7HZ+A77SeJ$_p?Uguxz9Lzt#QOz`FFHO6 zucKOdY}qXdz$W_Bqg}{c<2I#3TmEe_6EKHaYl+ER8pwa?+Q)~?R;@2jnWtVW+VrLf z)BYFNMqygJ|7PAQWKLa@TdD+gzS2#uZ&}$i^t!}|-S^krr%&f`w;5ln##}ejx(9HW z|F|Gt1stacU{+tA|D#fD?~$7u13$=@lX=7>r5EcyugJYp zzYU_kI9JTh+o7H(XtY_G93#K15|r>_&*w1gc@)&jvx|-{KIvMKQcTe(s??hqCrXP} z2DI)kDdZrWlZqvhFv%aJ9Fg=(|{&uT#?afC)Eij_6|s z=0k@>0ZBxkt-)biaoL+IU3=uJhZ2G=)g(rEew;e-8g;HjnSOf7FwYyu*y5$9-dhnR zectcUGKx&YFTc_m;~9&thzK8ht=el>$FsYGj!ikSaQs#M{t&otl(CT#B{5o6ZLPcJ5U{>M!)Se5*;!Jrnm^ieDwIU(#VO}SQu83B^&p7Wpk7NvI_dS`X{|tY z7F-v9i4|nQ-Me>RoHBm}0D`y?R`_5?3ChqykAMuK>6vhhk>>~cHL;p(;!O=@Ik%4 z4A85@_gKCCaBd{vQ4FSgW43kTt*|SiTfx*^<2G)Na&e*XPt?ex9wR6cpe(U9*PfM) z?E=5uxD1LFhF;v5!qm{B(otAee&cLM{Gk-L^wfC@x>{TE>vnM}Pv#tgMN;OFBs^4B`hxACf>p zswBTs-4+BNk_Y-Twh}rnxY)FDkS1%Lm1^sksyI~+VBkgfa(Q`qKw8##t^C%B2H^b| zKxlCRp`X@A@@gy8P)p9iP<&T+p;7<++zvC>}CfmtHwe zB?R}#boj6sa->~%fHi|SqWDjhjS+yGt1jg^WG+mXI};Qw>Wg*CQW0R?8ciT;-s})5 ziTdgj6ML&8`(ODRdyQ9Hoy4G3;}B-xER<^o3v<(1fCN;re!(j5hVo{ONy)mjz^RVw ze%T2i`*AR-z5Oz>aqMl@8A~>Pt*}$(KY9>pl|id;p)#s>TyyD-QDyL%KS^neTO(~yq-uZu_Ps~PX}MH>$qdmMFIf!lLvk1 z9~lYi1`{C7Y2J>|F`N0vA17oF@shNIX;+09t}b7Nb)t+CAK04JE((id&51CZjWLR` zuYm6yXL=)1+C5&qnSP0LL4Gr6NRC*&aW{jrvvZ4S!A7+V(-5^cMz$ifPEJnb7HT5e zRwKES3S(}146{DF_XG%LZDMG3oY(gzj;%I7t0 zchN0-$?UwyYM$9*tPG5eq!xa#637kTH&9sO=^P zqQPkxe0hGNxVTtOMddj`&{)%kL(Q3X6Sc}*jx!dxYyEE@?vp|q6pWb&-~Rpk!5#QB z=zn^=e>azbcfZPm?MJAQW^!^)gYHVmPOpYkwCs9}={+fGs$++@c;e*6q4sTtSDSx3N>!>bhajrXdQa0bo5x}Fb z@xdxeuses}T`zjTY^@F@$4eOSO+2Q;)u5}7NTd7%-P+9b& z3T@1?j3wbDtYjG_SngBukG^Iq%nIIJ#AyE3qz}=Esl;3``1}iWgjEjhvSa$1sFTfcwdfRg(i2%lv zVpeZ*prJ9xHbqwW<`vOOAuQGkB&r0v)6C4#%VY8Wy53z)(!)A*zkk0HREZ@JS#6xE z{Or`QFGIXqT5;N9GDH1B2`Hiy$wuM?!MK>|aQpipmbuZ}owv2MHE2wYo|~WVvfyPD z2U%!5rIkRnq-%8bEG`T$a^l@Pj($Fz)!|CZAdY%S1|$?%m^U}m=6$oR2GuINwioad zWZgyL;i0GEw{G3?3U{2H>;>qw&J9fm<;d9ToEf@H3->F;e5Y<>g510XI4jIvEYt!_ zks2f|LQs)n9GNq*r>7@&DBpiIk2>loX&OET^ZZY3wgsVn)6= zdGl(LImp*D^+Abm7LzOg4&Qk`h4&U%Xn!M^zXcLtl7Fcs_#rCQ$;p15(7XibS^y24Sr7k6 zY8vzkfBW|B`pxcL5u?X`q277BWeGHAi2SaB{ttf`H{1T8u;&lFD;g1*akHB@kMNJ? ziDwsd+%mxL6u+5REMwAISkUE9H%*b_NGWL+{YxZT^WS081KKQ~lw@Y4{WdsR*q6uiqut@#*h%PoNDr%GsplGK{@Y+?tq>|Df6+QVFRL72G@$06k`Mi7?7aksN z7PAS5+;vmM3vA!c;V$E(VBf3!EO5S5_ip`KGkdn*c(hBE9zkvGnXP8O;ixiyYpBx^ zN6x&9tCa9ASXSH)-K?i@_(MfM`0d(rcs>ykE6;&jde$ekxo=9cQYd+MoTqb%CZdzx zl$c3(7Lz2;&3Qgo{mPY)N=B?77We-{@sH;6XD>#SET;2wAba|Ngz7+D#Q|9`2?%I< zc?Sk2eEq5dCWls$1?S(8IKuJv{oM^d;Oh{^w7gQShc*9X1&+w@sxN0M^WzXpZ*$59 zuakId#TowxilzKYrMa&th?B>`vU|{x?Rj`FS-WJX{Yt1;Gedsp|-ZK?D;}GBHpA># z#Hpr8G*3nbImKKLa#UhwW+n$5x)>OTbrt*iwG1+Y5*91JE0s?G8XJut&L;^n;GLWa34)#gqE0!;}m>Ji<>+1R}OA7O-YNYSKC4yCqPN{gI zIFA7808#Wwn?3sV>k7*+9i}}Xli6g0wr<@@2%e)FS>gQ&+0tGXNJMh=nu(hHt5&aO zVPq6RMd1aBk6f|v!w2syesaapzKHJm*(t-CC|O>IU$2)hUrxP!`yuhZuSsE#_6jCU zwc20g_Ai|<6$cqg1F9J~qX)F+448*72)cw&M*wA&4FbzDzDW$XL`m#*YGB#_8r}2{rnl9B zyWzTCwg(Rt1DS*G$<*8708*~3PL~-Mgz_;_Ej5k6F@|u057l?D4iwdHQVY& zw80dZTfxQYi;Rqn(O`ZFX@?3Ug3NMKciiOL{vbkO9!q%cOL?yaugB5lT}7G-3@Q1_ zivs(^%^C;I&SO0X0VH;+B~0mBWw%`a*e`j_XJ=yiwVc)x+M>Ssb?=M(=I19`#(Rq; zB{{OZ&E)wHiRRlc*xqNfrBF`02luS_r&7jR1Ql?ArN&lV%TJ1TxVt-vTPpG*>*XF9 zNWi=3w``I5@#eRr{+0F3#pRT@JGN5GhU9VjTfG0?;WqfdogudNpcL2u#>0nMnVCNy z97M_PV>>Z<62r>Gr;CG~Osw_d!_5QL?cS(Rk1S4o%BhR!e*SzX=q9`SW)1NS^*dnyw!)Bk%A25pXF$dG~UP z%u&?&WgVt5mBO2MX^2Lj+9U0Efl({aD%lOem|hG)`_R*%I;T`I)jIVsN#>-Atap7U z242Z&bYAC9>EOmOqB7&l@L>So(;LKw5bVC6>3yf!`lEV_ep1EEObz_5izOBx!gaD2 zWM3KH;Pxk~3dsBCa`ymjTCm91T&3QOm`JSc#isM}uUpt)-4k zBTotrD!-F@hkGHqNrdqI6 zqaT-WrRjrRBI=6&mhQ9qCQh6BIW-(r57E@l-y)1$N`_j(M=-=e`e z+&@%tU`U#;idL?%c<7-}FtVH8geO_)bx~7}(wQ^LTI=zGB7`xeq}?>G*|%t0?4o&Z z#LbE#xawl(B!^F%XeT(J<#-ok9DbHgpU=?*3SO~bruitBon)~2xjva*3brdn_R2s* zSzqpS{qOk}D)&pEJkHZ|73;y_#zl!4zZC7(lQk<8e_HLLxR@Md!sk6IuQ%x`j>#Bq zVlMA{^2{ciit^Ssi620R-0)VP_pe`N&iu;ozWI5ZWchZ##LZJeiaC(X+nd(9M^PV$ zX`1-p(Lk?XA~$U9ZetT7)`*4dyA=+c%hhG0n+@?SX4LB5omHE=T0JAII?aYLakYf- ztX6IsA?rMMX}E?58JtkAIP{gw#J6b&nUr4N-*#BSOSjA-f4{|WYc3Z!VnRO9_m&&6 z8}=#7TeA0ui#4*wx`u4zis<$>8!RwR??(uC_wev(xBy13T@59dA7Zm@PU%zC!6(Nl*JogU%#^)0vsV$ z0REYtFt2b_WqK%15pjJ9b84E8+ohuQfRvt&)Ftgm19o#iizblW ziOZug<7OBbuvUk$(mym70oJ0N7Z)1e-0&y%kPjcu0sQp2kC9^1ajcZbZgGApO{Zi# zaoQXdd!!&L>Kf^$aEM&6jI-oe+c3{!N_QjVNy)i3)O7%~M&n!Hr_x_p$R4E_`waS3 z1Q;5?s6O1s`i&cXYSog{Z#Ca6q9bSs#aV5lmf#ZCfyyVzoD}vxtjc|$ITbEkc!(^^ z3B7>JxLJi&If2dd3Zg%CL6!L~6}Ij1>X~vN((ljB&DG@Cn&T41ZTZ?-*HL@B&+pl~ z^`^+DFJ)y)SFUu>baU%f2!UI#=ca6C&PqDZyU*|F!sIaRg06FIUV_#ACfzVY!~!uH zwm(7Q_kfJ70aS=X#22p`@2w`py5EIE4MuOSc3;=gp_x6!!IAQ{Jn~|Y61)iy9F>qK zF)NUTf|Q;fl2Q)}0`0hN-MT;o_fv`1F(Y;F{|KPnMjvMFnj>F^rAxVZwKtRMzjDGT z0*RA=4Q~f=5t;D@fdBCWz|b53{ZvmVNESA>8UiXii#%gZ+VTp^PWW9QLL+fgpaz2g zkqa<_H2&OfYDnWr0iu|I`>sOvp0@maqM(9^ErCdZl(756)jI++JqHUvek245s?AUW ziiTRUV*w5e6NbToK%|cR*;y0|-S&l`a~^0BdlA8Hhb~k=U*I(Ret!N}rzaLjEl447 zWxcJ*RmW31(x~bWvIrx*23yQwu2uIOka2P!5E-pxvK#OpWnstvoB(oP zLMhKeVI(86l{#0wB;%Q8N^f`ho=ubY)=+{EC_GZO3T}QrU#d1+Nw1@7?s2s6;MxAw zu|==_A09<82|_UW&v`cVY!|h9#R7-Fx4db{g?j%-&r^-+1rg-I{OsG;&eL@N(W5%Z zS2O^-uXsU_tXe6e5M@$sq@Y_Coy;S{)b&Gab|4CF7r6333nyeAp-^&YHk15EvaW21 zTJ3Pm{PjE~>35rTvRc2JR9SK@PqfPkmn{D)Dad0~f2}9@XW~{`O_F#%yVhP!!E??I z-?-C@K>be+Hbp{wwP|@KgaB}hD2J4c!iS-o*T&NtS*)Y)l)46rC>g2sl>L*Ie(or% zlP}r*=9V5gv8XD=m(Qjr80V?fv7z3-6-nj{Vk!u-zl@jv|BS=G(GTPYyHgJeuM(vp z*d0IoR)R|FYg}78Mr63~Tb2%ua?P@~wz%%?#!3ddR(=U43Wv{exLW-*RU{wpW14ZP z`C>#TVE(R$omB0@GItn0|C5DP2FAV&f7zXNEu_itUoJ|;bNBJx+gqvki?8R+6@K>e zA*+D(`Q#s37WN+h41IAX-p}Qg^txD$E|+Jn=UiVo}JHPLdqq-K|qLQ}e3n#Ib z#lSeZnd!9i*}K>CIlzp}{+)lzIh^_Dzo@c1bJrZaA#TLEi84ZmNyodFZbRL>I0Jg4 z%Kcrc{B^r&JyuX0R$U~L@zPA|r80aG>**=E%lCBJxY3j88B@J70xFkmBzsHcq!sEiEoaa<14v)yc>J zRBflo&LjXULh+|h72eG9oHrUdiR26yqda&#@5hgW>ox7A;1}}ZL`6hQ3nXF^ngOPm zJ`fUiebJE?$ak?I?q*<|iW?YM6gZuP%-3RG&QIH)F+h-%#x=f$^y|J;6doe z2@>*PUDb@ML$W)fntaa7+uuL-dZ4W+$}2@Uds2-WlCO4u{P>a7msJxNeDIj71qnsyO2K z1Ee^EBHb(?AACHK+-9co7vl*hyYQ>CxU{qu$bv`|#El7=%Q7GzqA)Q}0Sd^&e`1`EqcU^>6~ND((eCO9DUw zWE7=hWO%|!*2XZ#PNcWZT!AnF?GI=hAGZsJpcm`cWq zg@vUG_kVgM9t(Ny4a@BDl5!`ANvy4zO`vT_-R-v5=`jN=w?&o%fOTHs$imqI8#ZrN zw)y4Eqn!YLv%egiqGh>1Ov1R?M6fPVP&kki6^)G(UP^bH)cN`NFhc&icW-U|b!B_y z5xBq-Pa1Rk6Q>HCd2_m27_&f`uItp$4u)U+oNWL*MGX$&@#8JxUSL@Jzm}gla`0fm zL<4kg!hp@|Y7rOX8>5C$Tu%=?8F5UwuabWHSz#bh2&Fv{cD<-~?~cLH^a8^qbRwna z_C0r^FDgfPhd}DSN)4fJR6*y@tKfhDMryLHO$hrB);|z-L_(oJ{~;Iyv~9*WvSed0 z{x7%;pTRU8)!eL}J2zTVxV*XcJHcLUTH7B$G87?zh1;ZcV7(i(f=Z%2L*rNy6Cr}a zVb&d!u9fd(H$PEtIXR%(_5FKKm#>yp(?tMJB9j_^e7K8fuy7TP!^!yx%lr|nB(5d| zPJE9slGy{nXJIluzc;O3vl8px(ker-c^X3Me zI9Tp+gzvy-F<5tS*G?$Tk}(Jk4XuG^#B$)Ptk|PHl~BW#jZ||O*tSbXmnHVWFt}ua zNbKll`@GRADtSOegnd?d`jV_D0>`a^*{g^bP zd3)r9uCucvk7E{ikB3Ji-a}EY91e7DC0Q_PbgjFa+ddr=dLVkGf3WYJ-#M{= z@HCKx7t3r7DJqM1aJWZt{>6jTXN?;rG3{gfa*zvr7}JRpl?QKtGpR+Q(64#MSu>RJ z!|FCIk5W^5Ti)bt|SPHAl>M*~T*5FkB>1tswe2#SADn@pDdMk%oiYH#}YMhp#i zr$?R>6@4~?bzo|_QpBb?{W>=bN4G-nF*a|rF-gI(>9HpH1<EgO$&+1X}}_Q-r4Xfsjeq92fCOYQ|?KYh-5sOy{24t9A$Wpbfxo0Tz zm)9fMon_+TH&V@%97)%Mv1tZmy*IQn5S4l$=elI~;^C;|`gRq9=0r4Ul|xuyU_N|PqQ;4FrVB$J_(MMEX2Y>x}EPqap*vY$DFw8C?5__n5 zV6F?a#NokS%r|A4Vd+Mp8jF;j#XkhoK0HyjamVrT&e#uUZi1L4>^0Kx&}0UJCS-a( zPa4cJ$~B*pObMtKp(?3{h*STs-oJ*(g z1mBZ0|1YJYV!~?uMH$i5X=%r|ukY`7UbQMS=rii22*N`CXUeE-@I++6Q9=1alhd1^ zl#zw&bSS0lm|ql3un&(G9)H&8p=kg1LRbmjR`Gt|_9b)dvwDa-E>-(M2~Gb4SroV3^t}rixwTXxUysZXv5Eupx0WGj$F0=xR$0b2hk)9`*07yp?o_DF| zsV+!!S~p3>qMU!~lQxU(t2|sl5e)<4a)7ebJ9b1OCY|>(&g|N*+&)WO=kOI1^B6RI z7AB?&xS|fn*0KOn5w-@+UvBT;zh@99tOWm5bLZy{#1D0!@--q43PTB*^z@>@69fbT z8v$CTXBWq7@3^`7vM@-P-90BxJZkIK-JCaK_fwZFf%pzD+zYFrX5tV>vy(LX0XMk` zqYg=KFmk_l&s2k!hQ{)UFlZGfnxM_@hIMh30Etnaf(t6B(Y?Zn`3Z&(F9t!ue7SVh zDnpp|PZ7tmze%1fOdjwAkV-?+3o4poyc$=4fTNlR?PBWYcAzau4dgu`)#*8Y_fw}% z{Z_)g(Pv1^6cLiXN}sCV17*iR@Vjv6DH;PX0Bm5sVjw4?(+Lb>5V4;J@Y^fl>vm{e zDak#AcM&x0ATt2|hlo4ifBK0P1sy%s9y?E*jgF4)qTe2bn$}dL2?sA?l?^p+0b1xAL(=aekE8Vn&X*_@0?fS`8=#(yaeW;1+10B2TXWDf9z^qn;lS4<6j3bcV8?!e zJ+Sc!uIAJJ{5k4z-X5>G=^Z8Uj+C0Ev(^*e|37Ygrmdu;oJX3bAWl(@_^wgT8-Nm zZyXW&WT#Tnln7wtzl zE@|fpGy{cxS9=!tAJ25J&x-%%wKtVI-Ww!y+nB#~fD8NS|1YZTlaVg#Udl(3^4`7* z=-OKcDC^SpohgHEv+T%Ug@tC3T#D+@u)=t1s9Tbn!t z1>>BbqNUGI2t!R?iexBm`cPNZf=H=BGoRKCR!H$s{wonV6yc>MT|>um$GwO>8Ok>K zDtcn%(Thr$>%&0~a)<`9K?05p;%JGf)LNWTCS@fk97Xs;Nn;96n}dA*Y|AilV8FMk z31TL_+3Z1}nqHNZ_w@m25Md_(c`Do@W-8Q$J^r%=fBz?P!BA|kGZF6)m>QpE=!ciDF#jPu^7 ztF#L0TNLgr(@{})?5eafT$cI!7aYaYL z`YxTAKDH_0^`qZ&EL+prt(VQNc&ff)t*Da;wI^HyDChf7{VD+$`+zV4mt@$QV=E!m zRz}>SnM5C!~a{KeOk3$CL-Ud+lizh5wc`%>H9m$h;2+<9cfk^A=Ziv};$OEMgo zcqm61lJtp?tkDg$pjLV#^4V|AFk^=S|3(nc#;#bCgQ!k{vcA;v7C|H30ZwCBqb9^ zep4s8nvNC(Cvh)8LKS0L&^lkfTtLDcO13;NhmIq#Gz>nq=#yO?4Y&esB(HF+JfB=AI7xAJX?=Zt!khu|jzj%nWn_#nn%$sb zGnA2$k(`s1wCK#}_V6JUR_3_7rHx#PPZ@DYc|LNhxK?*U(M#>B ziiF4Yyw^gf;DT^NL&HqVuu~*xTcT7F{0vv}zG_ZO!e^o1lPGIVor1FiDKGf#-&CRL z12des;nBAQqA=HpuCTC>elb&hNF5o1e(&&Ejc?gZ`*}m;iYPI1ttPfHm%@g8cvez= z`IK@>RrhUaCF4&TAwbgkY!q{ZzDpcqaGx36%<6l`N!743MwrWb!OKD9zVN3 zX(v`EUXJ4mKHR(s9&XYnAhy?00b(hFX98M#!-4Bm>Eat-pW4&Nam}@iUcktb`fdD+ zb?Xc`ble#fr$-%O(opCZy$Sa+ugyq1qm~w$8;Cwg5F#RU4s1;!f&BIc@9(U0x}Z8A z!0(_kJ?r#_7d80WX3NvzOl#bjy<_fCO5!4wem{+XG#u7tJ8SY`!!m2BG1O+ zUedcMDpT&n7_=}gk9xjwQ}!kW(}hZd$W(>mgjUw%*L~|}zqi^W6d8?5rq!o>OKP|_^J`l^ zbZIy9OKw_W(!;&;_=(dLg^Qf-XUdGzd&6|vn0cD!U(}sE%$x9LC}Yts_L|Ly<5Z+l zf;oPf;2z1RYbmwcJg%<&R9aSlKaNAGNQj1sjV+ZI+j88iWIC{~izcA1EbgL@@^}Ao z>PB>)Px{w8n#GMh58p-E(xXSc^|8~Z#?Y5J2lMzY-}lz)X^Ks_P(?*qYjFYI1~5_? zq4!*B@@^^*ewn#oD-!8ob~?K{LCx}@!@r%Q@7#x;kK6SH_%w|=?RIl6Y!9N_OmVsV zwqnUe^3DC~+Ix>;Z&=C2!Q^?X6>y!qrwPMapP#PYombkNvMEKZtxS5Vpo zIo*ZU-anlsb;Y(Qr?ridIeSDoajLwmtPWxTsl5_CafQ7CPl&GtuVL+-$M0VSgiBB% z=58vin{bi{gdhZMq^chj(E`Td&KBi!{50zJ{`Irz#(TnaJSTr%IY1Gz{P?f8kZ~gE z$&13eG~U&>g~FaUJ`3QhQQEcKrOyR}lH*kPN$7kC<~rly%~9Wf(Z^mx5kL_RTl+TB=~RD( z`@=?Ft2*n&oUeN_&5U*pq;v)pNt~dV+TztX7^sTg7%YzO=nTsWPiYVkIK)~A{_^;5 zAI~@U1C*ew#YTttugBS&cSroz0Ma@13FtII{MIDI{bs$D_!9C2r8 zxg2aVsR|w!bd2<(LBkg_Z25tNT=BBlge2b8%U{O!C}*yhRy7-XJyUw*)G^8(-ra@H z$*{)~H|q7Wmz8(cZL2|FjhW|~&6D#1zKWkscexJ&z#x9{^v`pdMYld)vDRz+sL$(d|EZ5@?d8%?e|>}U=w|_K zSh9_2m+&`*Z3X2{Xs{l&;KHwKxj#SB62oU%Ab%_%K(%}jKKs>V~^3F^S z+JEkRh}H*x9+PJbL=+(V)PP2joBY+En6CsPhqU5@_38cfvlC#X790T=Ix0z+KgTQC&Tb5I>{eKgVe0=P~F5K#~OR zG}C(+yJYl}u0Qm4Pk;upAMZA2ntD7L@U^=zh)u@P+uK`(ZW-mQ^jjWxVvYt#niwrP z77Hjs+sLCT=y@KId1CY8NcYoBk#IoTUvaT4KZoC;_=a#Gz@nj@j5cSwHCG6X` zs}n;lmtYX8L4ynFP})extAKvOEYdtEPIfxrLT7XC$oma5GyRD~5hQzgaB(TZE+cp5 z%q_??@sP)GV#D#CN+KKrHgXz$J&soM^Mr2NM1MMJ>p{^^y4QL(2Bvg1d~fdc<}c6Q zm6W_kb@!a|uz=OO@H)ztjOBT<4`G~zR7JE|BxF)~fMqQ%6W}>zg7zQMj@~es=g&Th zA|e;{3xhbi-xZ*S)}kRwTn<|8ILx!pZurBZPCA5_xNO4Ik=8#V1fl7P7}K-*VqzKK zijg9_wUC`dR;=0d2_EAoV)ReYq=ZeAfRA30Hj_zJy0vsmus3JXA!NUB!*r{ZP3hma zONDHVM!jHwk4wOuglWMRQZLKQBVfy!Nfq~2sAG`uD(H~GW);QspjZ4}sZM5~Z>MV# z+HVMPmVxvaCmR%%t)+y}#t~s-Y~B9$~Vh3ED`{dlCDw<7}DZ zp+pu}1O8J#rdj>Fb#!%O(5?(u_*09c&PD@^LFZ3mUjwoi08~Z1OI;s&UBP_Vk;2ErFQe~a_nhRI-a;V zlQ@F~6VC>Y{mx?-6Y7G30c)-j;rNv zH7wZ6w{WRHeXi^zxRju-OD4IBK#PQQ1)@C7`$&K1Zl}%>7KwE>MF4;*DZ3~!xsMH~ z*HG;YMn9kC=)|fG+nE>{3q9{2C0j$-^+x!P&yAJ$qm5e;+kubFB z8Uio21_T7equ051@VeJBief=Jhb&0keR`%MTZQhn=x2;S3E$?k%Wl&K`Cp4iF7@6= z=sh&Fnj#n`yHe)L1mi|-bst{QL2UkWY{L$_RL?6rG0E1Hs4RC0I`NzT&j{VQ{3@@t zlD0!m?TIb7CC0`S&1NhzyA2KcG){hXkxJS3PbP=d`Y~l35ZN@8v zE(0f;S!GM@Ju)ku*)XjncIMvwN3rpIL;0>HHam#XWWM;k7`ykyUuCME@JEhdL*!OkB`76w0M&Pr}rB^FdKcOupq=J=X9kj zQTzJ!>m^-gWLGes@|Bd4wbh+K7jKUwfU}Bp>`Z9%oA4WTmsadMX%(rF)+egKdl4Pg zWal*bNEY8Ul=f3VU0pTz?^SvnsbX<_`Ss%jr{3HVf%6u|I@|Hlh#(Nr7CPmozO`%5 z`CR;u9Z4KS;>vTLKo&$%a!>sBc}4+ z*1Ahv-HZPT(k=P5fx!PK97tt$<;oQ$F+AfkcR-xK@LsIrM&FVmeX!yCZmQ8y6w%Dy zbHD47C6JuhtcJNIf9W0vbD9X8{T6`H$~|9Bg#{%`U!udbS-BGrc>N!M7uGy>%6`x8 zoEy_3O+^@d2!*6EF#iC)`=El!HRDrQ6ZJFefzWOZujCERxjoaQ#Kc}BSni|3#3sgQ z{M#m`E=zUut`wiRv1?$!Cbz5oqME6W76RvXca;7zgSyT-Jt?}zu1<#P_$(=2HSoxyD z=g%vY#FlM2@V<{nd45?hmTdb9+*2?xq0gSSYk9Qr2E$od|S6x(SST>-aqQ$_d%1TOU2kH7x?$jJ z2zcpJdzzUyDjcTz?MX{ua&@_9XyP>%V;J{n*`3qMm5F9FFOzvieSl<}`_@t%?ub^F zlfs+OQlx{nnHypi^fg)dsB#5@I@qaO93R%tt{9;!(D}6Wz*8BH4(=^`^r-)QSuj+Q z>QQY07*s3k^0@1q%Q=j)(`F!7bQS9n}qrHw2IqX*f!WgK7y zJ$&aOjMZcRFKiFO!$1A~XJD;FAbn=UFHHK(bc(49KiXOGbc8euH(Fl}@?7Ag z{1S!}xE2OX(aLRm9mk)b8O(8)YY4KsKE!&G+mJ#p)iF7te-+-AXT;0`740GcOWTjC zM-g@b6fdvST!vWp9N9L-wBsz4BQ7!VDq3NoF;(*rTa}XjdwoZu@+- zb*zsmua{SM+U(oEKV+aEFe)Y^Lj|0*0@%t_Y~Vv!JhD**(jJ32bS~2L*B}6q4t?>X zJukc6f*E}V{R0MrB9ah3^g7)`*PuPFHfK6he=j=+2O;yYc_i`v6T%VNA#4zGbw?f-T9L|4q{%I3s5Jm;V0tm8Z<%kiy1V;w*f1cS{da7MY}2e4M-o^6jQ( z)2cfZ=G7)xbLIs%^QZhZY?lGeh);+hS+GZBF9%{tgF|46_6Fq#GWK%AB;Hyg;MFU# z*%0=c3E0l25=>xrZYuyOflhESJ}uR)zP)P0QQmGs+`^>~V8sMh9yTVih7lgh;)(v} zEaFEpM_qj%Z}AT<%)g`_azizGrI6*Bu%25`kI5!SD6q-Qg&}UAIO#4U?mNQcE}dkO z>|O;X=%WX1Bs^(7WP1+0^M-!XzxVy~QzHGrT_r}Q0FEgM7$d!&0G-(Rh)_rRAT;T_ zhyG|2Sy#DExpj+>kG@J|hYwGdkhZoq4dXHw_Y}WZ`f7BcS>`-9N(JqI_+3}PH&JL$ zpK9sybKOs?%s^3htzDG9(@3Mxw^8#Q9RJj;z1VN8lF+>{_2o|g@K-9zyjR*$5x9%P zVshjPD%&X6f58(OsY)iLD(r<7O9TdD{)E9i?onr5LxG!5{_yp`3tyFGgaXIPZ^`4v z#;YE5e0AmbK{-A3;^rOT)lZrJZZjDsMkA2%ZQCtn>TP#cyt{>+O_qOJ?WVD2K;Y%_ z^i+kI+nK6<`}VBe^bZ5Gma^=-bU}nCL%>LFg}KV}_la5mUuRbWPG!FTPgvQMM2gpTFnAh(X?v}Y-@ z+|T#u&h7s1|9S3x?mSP=GjY!8J@5Pee!tJ}v%NJ^)kPwIynSb&Ug$zr!v)LYJS5> z0)S)Ge)7T2S-Y|3A2{W~hkcIVja1rnqc!E^>ty&khWx=C)Zp(=Q~qo(}r6Y_Z{mnXJ@_J*0AgF!bEBC zLE4fnA2Er~j~_7!Xxh4L7*Y|%`@nPlGo#>7|6C@ukJ=n!uVEAjO~nh{xIojmiCc7i z{k%l~9Jk6tf|rJJv$~4+FFVtsFj0x!dw0oI|4`!_&H7RE6N~UIy`X$r{N*(pd35%g z_vY(cR_Nym(UAC$Y}Ee;U6wt?OhE(}2yyyU;|!H(x0oAPtjnz$wq_mb^hK`LqWbk0 zpy^SfXC+qUsgvGqoMHY8^VpXxgGK5{p9Cl4sCK7qGm`De2vt3B^MVkAS=h(-k5hf` zj0^kC*?&hex{PwC_Hz%{Z}u);sXKl9>BJ0{DU|GwO~JsXDiCbY@?>Y*ivrt~JL!sd zrQW{h2tGr=R@FXC0J25^7cQ;6u}+Mel~SPs7S0l69LxN#xl#Lj8*@0l#s_Vmr8elH zd$iFPNO*z1YM#y~ImfrrK1*kj>F}P6YJ6~k|U&e}IEcpj) znXmt^s6{~9&0@?~D7)t4qPydenEHy9hXmjyw!)(N(pu4_OJy`PxKAcCp8fi=;>{v_ zL(#i4_~o|R8R0?z7>lqQ(R{T#>Ok}#!8Aj};bob!oy@2~^@3B$3va7d0>R)5>2(Wh zTDG0-3Vk95geZM;pW(JAQQ#G;4pc7BHK__?S&OY%pH{tZK;VTxqN^}xyG=mUHA`E< zSK1;+L?@*!D>kqlcdDseT%9rR{NE%$LJIQGfGA?m?89^kRS?}`U(R5!u?U~RFD(iT z#@62sf9++K98;E2RU=ywzT=J%MY7pz{OUiYt{5Q_P5+K$zQ3N(nXGqn`IZRLOJFci zibI{DGbwtk+BJ1`W<*7y3JonpF}9~qpyy*4#-4OUgo((q$g)Wn$g>k~&n-u;m6|lb zc0{cuvk!TWNcE-arkOp*Yw+iijQg)j~gcGyx5t)Kn~X&R<&7!qdf zZx4FCJX#aKG;Y;MgV%o7*Vdv5xVzL(W?I-vRg6k4*Oi}m;Tg`H`hDHfBh)SWUAQt2e2Pcx&b*OH(XzjfW6LB(`hTuCSF%3PFs3kR` zCLfBO^*#JqhO=daHoxg<@ox)2MZb^rPBXo5t+C{k(*tAQAbX?3wu@VQzB(BEi^*^$ zxfrqN3d+x@USw6!d&DaP^VV*F`?9yUcY(05pbZOQh7BOKBB>4o|3646Z2ZZBnnoUN zvblg8M_k~rF(pDkKx3=m8W zq+oz{5H{*O^s2C5ykzL1I#DoA%g&UJ^JVC-MW~ZRDbW@xv&36rNTbvy>ex}l0RVN0m;gu|trPenS0HiLcTQlheHYP4q7ZgzGeADh~c9F!>q_cRb| z!Xol{&B>u-@KCe8k&pPw`|1EuZGcPe`r zy1eV{-fXoqM$I1GHq+UMld3<=eG;vZ^aB>RUyr`L`QW`D*1B@hn7)4Y(_vS(WBK{G z&t5aF=v{z1bZ}=wq@n@ z++*_k3q_(f&K7)$f|OO+ch^h33J>0Gv6{DZ{Mc~l@3ALq9f3P2PA7_m_7kv^F0IAt za<$AXT5KK^|Aj*PW`TARVvw<9aqqS@^2JQZVY)`UL&hLQrYNzsWUHt^<@hrJrZ%em0>pzR84;(0DH35)0qG%wZXlNR#!}s33bV}>5r}va3 znX$K*R9x^6wUlUf%kOl`F`vjOR~|Z{ax&3TutDF4wTxkGxK>IEa=4ja01nPMF4abk zMGKU+QUy){nB_Tw=>C5t^UZpR9rSWc9W)mgdLPi79Og)G+~`yMg2JpYjYzAi?ghvF z2nM3R_2y`8$;ue^oFz~ghPS2Z^R!Y`@ho{C3s`Wzk`IzbyHih#+@(3j7sxquT6vm6cQ#%p<1vnn!MKf z*{(Uc@K(O-3!ZEXzJdc*y0}u+Vf1BJr_F8q3f)fhs5I`<*WZkuwf(Wt(U;+!Qbe(g zr?^%S_f&H?+odGcH4bEWA6CJA0FtfG5yMT0vS8}EcjdZ9U5Siz2!h2awU)QJ3>J4q zFuGhkzF=;8iDi>NOLngVWZ5naC|0gYVE0%lan)f>5+=G)iY2IbGd?c9UFN?dHIHf#ep?Z{@`Ie5V0=hdSl7i zgnfR7M%pdEp&-1Ki)y-dg!R42Bqi2#KqK7;jbzSHiRxf+;eaQ`7ISk{WMmx<{C>hu zGUt=}8KY1&WTd6_(bVtMK#xa2@{B|6njW2a6AWw_TyHY8kXl!^e`Kx^KPH8Q2*@2~ z@PBJLj{hK)N9{lU$fDJXQ<|Kbhd?0o=iiIr>6O4IL%t{Ckrs)mkqSsDf-J0D!PTR2 zX|H(r?Eq>9mTUUw;?sVV8o?TDihuYKRcwQ;B02zd0&j6$-lTLBoS_{tgvl0+Oehlu zln%t|Ugj83&v`d=9Id`80K)Qg@eLnx*ktdKEqjKTl)UfuUP z)acu|Ac!r-2E3ej0z*3UNN0F>__@36hZ^aYd&(!B?p;dDi$4bbNOQPx8#O{U<0?qk z4;XYecOt|^O|9pa%D1An|4+sVro$=S6iR`QtQj=|yu;s4#5S=s((}O!AsPXkdX2<%(~~_R zA9&SKRtEa|#PN_Hi+pC#XQ%`U5^bC3@xYTi6hg>y1|EeMuRdJ>YZov6BC6y~OiT*< z0n+3;vebrBy0!ZaGwI#%q9?m&74EoIG8%Vn_ko!HVNp;1LSbQgN(_qTNQo>#52<-P z$5Ptr72I^xxlTL^)dSfnjz>!M^Z;(q69gzl3h~mTXmA~%&0MqO0lgC7PQtP7)K9-HG0o^3Y!jw0+ImYz&9IFFR`Y<#zFhdberN>i%e4XUU2fwjq+JQW_hXC4) zN>gFv6|$cf;zUy_m-0h}hcH^N6V=A`reMS0^D_aj<6(u`K+V7G-M@+zFhF44j1#Kq%pOKj2eeY{%i*kyQ7 zOH}R4LqZNlmS8<`eykiJn%RbF5LZO8*yow^UC*BG=fElDhN6yf@qxkl2iqMME!$L% z#WuMe93tgSEbfoSNsYjO*uBfpFi+a;x_NFZ6i{z8hdIN`Scmnr8)=1L?I~*~#d=0j zDVdzgdOvoY&tRJWLRXp-!WhDSko*=v!6HJWNR)pmuJL{F^oO1iYCeIIZBac-uMpj^>FPZ1Bp=Rrj-@NxE}`Zn`IUN5Cp#Z%9*d6y4KFY12X%Q7A~3SPeh8!XRRbBGODM$}|l#bw0}ybW$k#7L}G5T6<=* zQOcGs(}vDmYE9kLl}>HCW?*1J8iHA}T%e}yo%g9Pz8~!D+;i@^_r3jD^ZT>iL&mM1 z_iFWcP7pG=mI!ve+KC_Xbs|u1a&uBX(%igsGOZvZJ2y2y_c~2RZFDO5|Je(!W=OJg zGHEh;qmwD6FOqz6hnRDlCU=(6r|1wd;X1NXnv}1*&&d0^hh1C!i&l|yQvhrW;1FDQYb3GYy!%QJ#U_%(qi zPnp1DHE+Q8rN3g367KcYL)brSh0wG*#Gvk5`X{C?D>Z!*jaV!euW~f%w)s!NALu;@ zeRakP{hHb+l1L=8+h^>+=0zLw(#&S~w$0gaL+w%QoNkB3#VLj2NYNMq=cSzp`kdW} z#xs}MjXi~f;5s@LdZTlY86a^c)B+c#yMPUC>GYxSHZ!5Fu&ab&2!T<2=XfQ+%qdt0W5_eLgA4Tw5)&vIL z-80JI?9X^R^s`@V=s)=Q12E==4Zf86aVAgZXR(SXX3$u~ID#BOI>u;8tW?2Rd(?m+ z-h)2qy1OahP3Mi^TPhy{S0dZd=f8Xhx?f}ua9G%h#bY-;0am!NpM9!Ui~NQF4TVOv zvBiOes-d zp&chWQ2!F&0$-MZQll}&ra>Xdu7mM!=`$GPr0n1!!U$j7^(5$JDibix@Cb|WFX_?m zI8qAUa)o_D4sAF3l=XGczc;@{ZlZwwl}V|I=P1+_z68E`&0@;;I&f}{9)l)Ix)CfX zPC}g@(t}`Lcop;mo^8-OCT~FBdRHJI% iOav5?v1AchB6btIiwWkRqo9}$Aq&ZPrYe8$dFUTSI{2Lc delta 1020 zcmX9+Ye-XJ72Ni(|jjysxy^|7S?h^}=fxxumgc8ACm74G8Ct}Z~@?ok@uh*A`o2YSyVWMaUC1a2EFaz}MzXQzMST6|fR`j0feOzn_>7L1(7$v&r`WbCk$tJ32;zg;?_pe*jT1rS zIWk3zLPM|%2?ZNA#LxH6z!$&l0N3rC#6asAqo`AM#f3&UvnP?)-u#C6eQh z!EdNB1B>!ofSRKgBB<6Re;^ISBIy+3-i8I_B?r$#mqbrvfH;90dT8z}2C<)9z*Mg(-um zGc?zQ4ag$eRhX>j#S>x>HdQWw%X+v?%nO$Y4{6kRaHHxh7ci>Ti^7VrS;7rY=Mpxv zvULu1>f*fw&)6JZG&*+Njk;8phvcc1n~MZ3gOq9!lco6DoBr8YsXke?<|+8UJjA2N)^761SM diff --git a/results/benchmark_pytorch_mp3.pickle b/results/benchmark_pytorch_mp3.pickle index ebd97ff5fc33a2549882389aa7b39b9df5caca1b..7aa683153f9e87e83ec71fe03a978a459ee78b6e 100644 GIT binary patch delta 947 zcmX9*ZAepL7~Q;A)0`$+HZ{Zb!~CJYW|l!MP5j{oO20JnYl+-NFmbJBC{q(7QNivl znMj#JMMF|n*^1K4spT}6PB(R5ek{!-lL%Cb_8u?X`|zCSJm;MEy*m-D;dC{9PtZ$0 zkgL-9&T-y6Tp|3*E3m_vWO9@U`CE!&X9+o$s@f0dF91 z90tib3uM6%_SJ>{^iV(M*{yB}ulyZGA0BNZL3B>%5CYA=auB{ZMKuT9>i7)9jBGo6 zx_76sA988Z$J3U2=jJT{8m`gNgpw9 zIdd0$VXzrGP3Q^;C8o&AFoPvWAD`QIn;vm zS&5b`w#V3rfM7dol~nUa8UzMB8Jh?;dh!=e@NmaMf*G6RwqOu^b{_SUb`>{a70-~~ z?Qm|AUR99)9r%=K0sFN_e~{krR=!MhqIPMI7Qn^iC7j@aXBNqtTSpM+-{f8p&Dt^q zG7sFqVr8lqycgL<82ntfqZ$_Um^W=LLf4dwn=yAj`9N@8 mEnQCo`LP-%lc``TrG8RM%D>HB;M7%I0;6GM1Z7P@C;kIslbmA! delta 1103 zcmaJB(s^v_cijIqAUv{n#wgR&MFnR2O?z zbbx!iCvs!dlt56Z*GsHSCYgYHnoGN7-rSShI6+Wpy<3Yd~J<$!JzMrAH({I3g zC4H3j8jZ$=eN{lat5XE!j-F%aqjasnn!Og%F9~We!RPR!kMN9lWAPw_Gjl^2;G(o2 z4F?O%2-MDxf{!@SiTbz8m@J-qayA;VP*XZTczJ3!d zLF75#>*sQq`1p#(0W=h5Ho@>LzY-HSrFH@XlX_qfoR31^mdjY!Si4$+L2j)W;LEAa z2bxm4fXn7q_~b!P;S)@>gO5mTKBkN_jPv_)N2cq(OBLY1H6=)2--GKozR=dE* zixuDxE%5^dyA`3fJ=P4=*XAK7SKEn&TYOu<$GJa7PWbvZ)HklxLqFnMEn~=;kE&|X z5H@6i@XL`uJ9=u0@HGMUGvF;%{3qQ|J_CN+9~_a!Ae|(-`oeBA;g$9S)1>yh?lc9T zPs0cqOnh=2wc0trf(_j%7-PsplI*@ugm_|coh6MLmjEoR^w>EM-n4lE2G#Ni(7e1z ze5Z>-CJBy=4}8G}O8!m|eRiUL0XxkVeuExUHiO(tvB;S%^ZAOp=P)yez;#i4fPds$ zA{eEH7r?ysPUxeVJqVO^#Q}>MBT#QC1uiKKyf0ge9S5&{2VQ63?||k3e+PztwqejQ yHGc>C?K)neF-KnasKZvcJ%c_>4P{wC|5i$_sA;Y@`u1E z#p1d6sAe))W$RRnsJgc+Ij2^>(kEPo zNp%y_5l+KQBqiCVCJZJvzP^B|9r6(mJof$#1RDI-sjdE`aH$P$tub;Lt9{MY_m1uPc!@J&~v`lhRqr>;hA zi#;#Tb3gL5 zE&CGnElY+mpQ&Glk#D!X3*!gZkD|V=?G)ntn+K4usHYqAyklet^?{vPd*^$nl|HfH z@F4OnZRo@JmwGbUJTLcRT;}NxjLYvoin99B$7nxU+l_gpe`BbZj-N#R!0l<2k)s{R z;~+1izT^E*5cgJNC-Uq%{U*vvcPILXX{G=CLfs77`>K&=)s=^46yMg>V_E*kS54x2 z$IcBZ+`xTz{iLL)b~H@^{ggr9A6JVLYPy!3kZpFknTY=V>r?8L?Qxs-e&E4&HFQG zBB6jQS#m*=U4t`-Mht$y1lU{@rIL{>2J8U45y4Fq&@PLhAN-=mf9Iak1VQ&z?@fB{ z`SUw}ZtpuMqrCb-bpDga!1JJ3wNq>tUhWD;Kq&aK zJMH6|r5YMdn7$;{XiPOs!QJf%J>1(};sxTpJ>cMhzXK!cHr4cns0r~F1~qkSaH9q? z0I*u_DxYO!r4-ns*~wJ8lxNaTSaE6?G!5~Bh8os2(=zO^1#s>{L&2+|E;Jbwq@rIu zUiTnm2FThChOiJ=^eGQrT}-D7BwtL zhbyL~rv%w74=NlS=u?F>*kaZoYhsP%iX3EfR zx4>%MIqsK|p0;WKL>^Z6*ZwH1^UDuN-rdl74fQWKe2n_OpD+1e9~v4O9XKZOBe_?u zN_kgh{xafvPmdw}cIgbt+YS~Gw>ozg>5-wl)E7T|?jrKnW9xbCU$S=>@{hcG68#>HjbI)% z2VX;dlQoL`sg+03ZpVtlC@3;po`@sJluE!j;}@(|HU2WcTs{MUNfU9tJqvHM^yu=;x+j{{nwd^*fa<>P89 zcj12pIBx^IYz14%9+n}>D0REwRge0b*Z7)o04fv)mS78cRY(pvQ$QbvGk%LLqqBsb9gdOtz1p?#{hX4Qo diff --git a/results/benchmark_pytorch_ogg.pickle b/results/benchmark_pytorch_ogg.pickle index 2fc054f20312fbe137257bbb23e1229a32ba3978..26ef4a95250faaba3de0a3c4d8a08612f039237a 100644 GIT binary patch delta 824 zcmX9*e@GK?993^N{}aqD1|bNM=1B^de;A9Sm7xg*Gr}+v*&0s84S!He@+K1fA?P1w z>n3HQAV#osjt#7Hn$9_I*6r#nmn*R{>aPs?VF z;7eQ^$oW+i!-5{eihTb4(>W1&V*gv@JswWDG$m6h|jiDVka`FUamC@d*oq_2Jwc?aJXfswKR ze8-d1KqjNqhZnaLKv2)b6y_3U5wk5j1Y^))1r}VwC$&60Jp$d|{W0jYjU5=={4~4EC*lblW}15M-aNK2_Nzu<(?E~vTQFm<6Tx8)BgjyXmJ++ delta 818 zcmX9*T}V@57(Vk%gBX&Q#YjQO=1p`Hnk%+y)3 zO#G{cO|W@d7+Y+bX_GUTYjbnC)pV`UW?Ili-n8#I-_7&AKhN_$@B5A9_UDS*#1ADl zaT6`suW#1XY1KFDuQvCYy6MBFVLFR@N}mw1kIiPO`0^)4lRla2a|}gMZQFTkjF;z? z1G`_Cblu!>+)Pj!vwvkyrB7awgCG~ShQLb(Y~WRw#0ZaXIUNFT=h6&fOC*f?FU2zW zXPh5^QzyMF3av&z5ypE7~wa9@-_c^c$**|?8dKroscrX0m@gY}~7)<_Yh`{KP$}q5yon0lu{2|X9B%W`N z1NDFL6;vzjfsp%x7Q$!Sh4|&$0p#Tuo#>aT??WfQOxRRmmkafuHDf^I?HOQ#vtxjb zib?ddde0OtN3#=X*tvs0mlk+`U=#PaEljF5h6wS-o-KvG_K7HP^x$_G=<R$!}U0+%alpzsFn;##JyI$$GQXOzQMrsF(-%*b|)ZcHwYWZ+FU@rbEpwG zeofdww`mjxh^kpYq|w&YVpY|`VVL=(95ZL2aG7E(RX*mmX0$u8u_zVoNr&1 F=s$e?Y0v-w diff --git a/results/benchmark_pytorch_wav.pickle b/results/benchmark_pytorch_wav.pickle index d2f71071a5c40cd33e531d7a66fbd1e68bc45172..a49dbda601ac149d669efb3bbdf3c38c6f24a823 100644 GIT binary patch literal 3271 zcmeHKdr(wW7~f@g0Rd|?$kv%m$5b?j!PYWMTLmBGwKX42@EgU((h)z z#~+duzvxxde4<~>k`$GaqzrGs`O-67r|?gm#{%4UtD{TGk<>JYsIq(scE6Nuf7;J5 z<{&2$Q}?-+*~k;8_`|+ngxBc{dqW;kQN#$#XICU=z^{gsurtKmi3vnX;#gmxlu zCq#+C>v2#L?+Pno$P@5WVhnlM#z~AtjDBqoZQ(+eOYTX`f7iAm`m?mYXK3=KUgcpn zVp2n*5@O{LqZ$eXsZgVxNbE$9m=Y^PPL}&2INb)W8KbxB*M_JlEcjxV(|Lb-TrVB%bh)~RK`*I;gm?I<#O9V-HKnMtv z1&c8De|z-(iMGN0NR0coC+C>ko}4=E$(f-u>2wy0rDgA^6V^lR?d{E5_ghz2R#w`` zIV;1}6Fs}EZgyP0TB7Mc4nNNIlKXd9wfEGl;#1&He7{NapPJfqUgKX}yRB2>TS5=- z0sg|4a~jXw$8ZAt?FT-B|Dy>ei{5bTvFKz;VZnzr! zwzFHIfBwOC)LYq<2RYic6LNNSIe1Nn8^CMNCXl^-t;l2T-OTOo3gA1x*#f_x{2L+n zDK+55ovwwnR8>Gae|QakGtxJru9CiuJbwEq$l7(y;N4S}4g1m9THs`t8-D(rCfF}E z@c1*|$pv1jTaUc;>PqPME-!$8-q%Io8|o_|J9fXy>$7Zx9yg>JJl*B#(5tdH!~RQs z4)hE0yubE69_XhM8^J%nzXEyIcjW?~bClP)H+Lm;!>mH^(l0JY{a*b_USC^2udAvC z_?2DNJbww#|4Jj@uYth=#Gh2UiuZ4J!oMh^3h{p%xC-`@eT!hf*2(vG$+kBTujG*e z?pM$ISD!C|-riY=IG^QI@cN9a5y!n_8rPqz<9P=u;IB!h;F~j?upelAoA;se>m#-y z0$$Sfa@3VMpa{Hib-exso4G7pQ_OK;8Kmw=IpXwsYBl^?nq~suy`h%Zb5I4Y4lM)k z%q1uC%>DT-;EBUZdA?;!VIT3~n~<~n@P5nI<-=~!7XUAMyaDpq7rf3*gIker@DYCf zo2Sl3{9iwL54Aw&%>sl*#5BA#x{lW%{dX2#r#7no-0e@me72*^e zUJJdWxfp&^lk>n&`>vetLsvC;=7qChZ(YIfPj}-}kJn$}{bwG39eMZ6FSJtjB*gI6Q@)$cwQ{dJUt2M3q{9p+50VGt!8@#bko-p< z{S6;^h^V~^|Aj;9%?{FHN@CN~MvP1wfqCC3viY3K2_)8`&GRZ{V<)Sc#4ZrMVa+m{ z#QU-oJ2SGOKi(1cu#w!)PED%US;NEGF%663LlOHezJzN^3cYZr|io!-ZL(T1W zE9^%tHm4};r`HQ5v@+SP24N^GGulL9(#|~!Y3h7s7C%eNWZL+%Jv^%WJ{pbs)x$a|p8srICyPIFO$@PM zZ`83YyOeio3c8@a2e^3mhR*Nv`3kx&N~pQ~UQE)lW40(T{pBI(0;k8Jd-vb#;1||h zk$idW-1e`fACcQs48l`qZX-73PNDJG#5DMYm#$-=`IL@{weVG9Wn6BSrhR(J{rxjceh_ho(2T;gb9Kf0GHt_C{8I4Z7NCs-AI+5>wQcH|RJAq=R2;CJ| z1M(*iHld+C-4DK3O$G?-a&!xmO_(k1MqbVNw0h`O&M%1Hz-j2sY2>8%Z3`_RqULuX7~R+gqoo}-U{2jx z5??dG=&kku^hKs-#E)%cfaq7`-TQLRfG>X51+*Nl!=TH-HuxWUt{Hf2rdRUeqr0*% zkxl;0MWg5agDA{3kvlN7ia!>gFY`DWFE{oR<9u@Itli{N?M@|^^X<-7_+1-of}b); h(213zsq~1rl}qMQYT}T}t>xA+vU-t=G$+16{SOVgfE)k- diff --git a/results/benchmark_tf.png b/results/benchmark_tf.png index 75d84aeab390745bc3edfc03f55b7ea422c3795a..b5a2a32cc416840300499ee9d8c334c82591f2a5 100644 GIT binary patch literal 31269 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%0A>z7q~b$ z@VKtMYJjIVF*g?ifGjUU;cUAOPn_DDv5#z|rWUu#-PtSh&@~PzHf_1wtZM_NTtzS=F{5N&&p zdFaui8q|M@d0F#iD$mlTb5WTxgN?tAJb&>lMfj>Ja|_2z7BS(KvD5A(g@D+?KR)G( zPc(THx)})1j}brr&c_Sqtwa^ZB&q*sr~jp%J)F;?rHN;&Pc^_YC^eU*)xt2fBXAF-z0IgLFrStC3}abt zUso325@#4XZ-`2tomb_daBgaUX0DwOZC`txZ~-r!8;IyJsMIj4k(p z;7u%HCc8)k-cpTa#3{ws2l}R*BS9r1>R1Nd^lsHGTB4w?J+?mjIBvPuZ8Jn$qbURG zd#1z~p1HCs??nA7q6aQ+%ABB?QDaV56V1J(wbhP?vvB2k>U;-n(zey|3fXwOO47E4 z%HOi0b*|b4KgiD*Zd(s!((``+av5J zJXb>Zq|9ioGp}@Bwr@Ur_UzW?d@n$GWpi`P%1BjU`;kd3wC77G+zq4VN=FsB?fRoA z6!aZCPKJl&X0YIMV*RPoDRHKqxIPe{WvJ`9a_4|qk$ENmH>tg^E=pKAyzI+e8 zsvYeHwO>gLzMO3tIPT0h3kI(w(aX=VP5>`6@ePwYVN15ZsFMZ{m7 zGf*vyr($_wD1c4E<9%I;<|W*{U(50Us-jsW^WqO*5p3jM5g<#~ex%u$ISf5CG;?-g zAq>DI$`Nw(i&+phAt738YwO!1l^45Gq~U@90_116|6E^h{Jk*;f(tn!V`g@`XnykJ zicKke0cZz`P);_#jDNjpvGs*s%l-bqc0F1+{o*t(ja)M+YxK z{q+z?wzu(k&z}e7DYxPf6^O=mp?!H7epy)|_!h%P_;15FEguZ{i{M~yyX~!Qzh?F| z=7O8==}JpW4c^~7kJf$AE*eHgm=KDSC&SO_7u}j{3PSmDFc~wEzP|p}Js-0)?uWp+ z%z$&C1OcUz0LM;?iZa-AC%3$@`trqjpGjs&6y^*5`qL|P6RREo9N0&Wh*83OSw0i`)=`)FsHT=eo~_OoYI55{)Z zrzd}GdfFBL_+eS|do~f9o&Kq#0~PxI+(nKJXbhnd5$HsC@Zdp-!*^lOil#w&@|;WZ zSOW=*4Ztg?d@m%ug+UP!8gB3IZaX~KE4BJWhh918jlqF|$54I<%@Q=`Tw)aC@9gfr zQQ;6ObG4@U8R=)B_b7BkZrZ>nD8GneA-XQUKR@@d$fPzL=8eT*o-Po`2Ec{kP#7#g zLqq&m>-NZOx?VK`i8HgX2!xSt1fl^r1AE+j^I=eW^30DPG9Y-iwBUodDhm=ywa02S z$j42gEN& z#1j-97FA=;(5}Q1QQB@;TG2TGh@zyY&t9*q%WgM=%YYXDwakY6$5zf-i^(D%a4I}`Hd<@j1o)RwP2fmotH0X8={?S zQFF*(D8RTI@2&3(X+6fbwfxXf_98LG1@hss-ig>L?U` zTmCfQ#wKKCo%vF1N)GZmip8KFbMx@Xp&Bhr)(R%4TtyqS^I z-mdaF=`#JdZ{JkZ)jz;A8vO3{YbgvwnJEylLc_vxU0M}u>1#iqrdqhFnyizoD7RJwxoi3aTH9%0KY26p} zd~`iVZ67B+`3RmxoVU}`*HUcA&9_zVi*#dNi-mSG=YYYNODV(Dd>s^&9wr7<2%Q(7 zKdYm?5G!iw?|4jw>PKbaoK>pb%l%;?gGY>qkG{XMPYjJ@Bvzz$ooK*e5_7==vAU$R zG*+C9G1UoA?9Go>Ng*;MwSc5uX#Yfo*f(LV<$FKcDS1t53?xNRnUYeW>l5COcW_03JppM+2D;z$?HeO3 z*=8u^1FPra)N1xt-aEUyw}32#5{c0C91|B2@Ca6GHpm|M_^g9!W#07Y1X>pXbEiTF zrv+vT2; zf%SpNfc3J!zt84p7aY#z%9XFfQ)_JnKIXmRT~(lcx_U{8pTj~k*VZQG_m`dg48%EU}rJ}dQ~%sE_XrBMCUU#r+SaK-XDk2asb%AP@XSp!T_E}rA4%78@;{#5EbM> zrv!&U5v-ouJrqbLm^U&Mc(uQ-R@>ywRlviAYO}Vv`6$ckcl}&& zoxqi=kg$MS6#(_!%fKjc&c{Z#5&ZUY^_!mv=I13fLI3IcILIQO?H&hAU?HI{;@z-t z8SY>01yks$7<);y>W_KevFRQ|MXBWgBE%)W(rEOCJ$KkhOV>Gj6W48(v>%<_AmLt3{&_CNXX_te|&Uyb%hUNErIvM zYL!$!C)o%Xu5Hb~cpXh{JQi1q`!PF=P|=QHx)8Bq}gOx zaS}Se5iGL3|2Klck!wMriiU3(@&9Fy1iIJ%Mlc`)6Pgo_W+bF=SOEVY)6_H$*bgwz zwRjx1W`7$LB1|55@0q8)JoR(gALD4ARc!weFmSQ`5hz@kX`t|zMn*0vU)+zUh^6#gFh>@a~3PS|()&z!;tP@(0yG*J=vp2?e*sPvyl z=N_N%IK5AyH#sLtd680Uxj`;Ahi-4_$@#AF!VIejD(;TLHP=_6FG6$fO^~wxeUQaK z;LQIeaBJT{{{;HRv(LnZ;l$)I!#EC_|0P_->vdIS{3m0^Ps_rH32-oZ{T({HLE08* zOwa~!0Aj_7hs&1P4eG-kQU0Yu%_F^6u;7qdB6hlIUn`tU-4?%G#WE0d+g?bqEG$&W zBAl$xFLkz}!(j4sgVF(L0DH)aHd||5IeE? z`4PMUCGbivIE_hw!8g71tqgT2`uh4NmX;!ctY9u(dOOmy0hQ>Y>#Ta@DG@S2KOt;{ z3}P-EDF1}TlMW8x&Qt_{4+znSjIXa0>hj5lkTs5u9#mDy$;n-??c)Gpnwp;9L;*}8 zROmdIbg#!MrpBShw@@6F-W+?7zLir=z0-uZ2=G)%n8j%X zZMyK*JP)hE3q}(OL_xTnFNHvk!~ukg4f}h#D zAm-^DWj=0vO51+xUKh#FfS(oIbA)1qd-ZKk?c<+4YiMectBsAFe!o037~XfkMqo##-X9@AjK)_J6{SK0rCLjCW8#jWT(iuLR&O*DL`7tikShI z!1{E9O$*+*+3Hv=nt%bD7DbAvb@f8fh73JFpa7%+LON{W7>G3l0Zquz%1|f_b98?Vg!Vg)LJiiq9pJ&f# z;2)?kCxwP?e!flI^6C{+yQM&7Wo0VBUG)ARJdhw`ksyTN2~7QlPoIdV?O0+xX7uSWOj~__w?Jot4W1iEb zmR44|+q$_rP(}SgenROg2=Cit-sE6id>B9cB?9&)8+3YT%|LJzz>Wq^H#t2W2>Qx2 zcqucx$uM;S0t45v`NdPf8QQ?TB#Tqi9V~tUC$$sHVD5;UVy=CSeG` zKrVKx%MO``89NCuZp9tw`))aqO29cdh&xuoPU&e&n!{jxK z_Z<}Qr@eIH{~JR}u65GL)qz|M4s!C+ZGSRmakjH(Pk?~>;aqVIu8qx{TE%(78P;Q- z)y_UzU|2JC&w8Vzd7|;y=JI!Xs7jEhXnA(_ddISjqoc`+AZ@vF`O~~2qAX@Lp)n5+ zm$okz6>>C+nXg}C*w|#IyDx%B&!=>Q8=e6Hs+@iZqehG?j%I3v#r!xqxv2LVOsCndq==;@dk#)cbHHC%2b4xP1rguf z!s-I#n%`J^3sJ~Gz#WZ&$5G^o`tPhd!0EJB>0wp?fKP{<7OU^hX>hi+vV6USR&_I~ zK8ju{`fh;w7M8an-)U|_e#*`5lCb?(|C}6dSY>RGA#xag+X!F;HRr$&KxHLx79eRg zXv7U`oEGp4m}RXX_n=5}OBg_k8~i#bC{&y!lJ<|1=&6@tw>G@lYmrFtSuek#os6EB|zu$tlkGQTXy^jdC#TDynp^s zMYArDjO!jV7}o^ollf}&zHIY-BD5(xoGc~;7>yk%j34%z7M-4dky_4i2W%*=vgr0e9R zQYk_ZMU^=S0&)mgVI|&!8ZZne2AnJ-hC+_Z(L97SX6`g30MWCZbetK1{3c5A5a0;q z>ay$1V7gJ_w|I2a@^?R;Zpe+nK_Kx9hBbFZ(o+ZMVc?~O*(H>TNwXDC7d~8kBdqv zJNbnyXSSy-fvw?Vk&A}v`}glH`Z85@R{}#rGaKP_sefb3gS+yRkXVWQCv5r+yuzZOE^gii+c&t>{xoQ3^Sy-{LcIE$q zXG~{3(cjE3&pxj{<7sgIVI=IzyZOFN?T?Dn+Uw#fR?+%C&yR#BojV<+h~9oCZ85iY zq3}pH#bv>Vr^w4mB@^Xy7Ih|VsyYaP7>a|zmoM~=?qcUr-4}=1uDaV2z9Gq|&%{Uu zl%O$B*A(s#vrwP!E@~viUFXP7spCPLsAi8oyA6;g>h0M$kFop5K~5^@ z6>eKOc_U+)@!Wq#LOCp)gQoh4h=_WMZeFgemSVwmbIIFj49I)8I6of>*D|Eyt^KC7 zGIil#h~1|S+GZVTD~{L+9-Ajr9M=a3!- zFDVdbp-V$sjwT>I`6prulBS-;T>C&fk>!QUHU#${&Z=vP$&oc3>aIWfj&O|vqw2TT z+~6*{Q9;(#)%8NeDY;t3sKSvMMpECg9<2UI7Ri%99N?)Nlv$Jd?o1vB^|iJnrp{;2 ze5~d^nm$EmMx76#ZsKHg*8Cj|O6 zsLeJ zx_{?yaMWj|_#X)G!vM2H+)PuSW^pk8xGaSx5P&V`GI)f4!jbj=q&-vo4#gk>fP)az z@&3VSjmKFfJVd_$Yyzko#6~z1{N~``03Z%7f<{MC2_Cpg1NaCC1uH8$W*ETXh^CQI zIA9FaUjW?`6}NzNP*PAJ2tXIzRe0bxBAGAKLF(}M+D=^)z$rG+Ab}hCu6VdW;0_Ie z1Gjqwuo%5ZklnNv>(Gk>74U+?@Fm1QKAs*89Ngcq-oy?rRvn<7OY#$}f{qS|a)yM2 zRIA|m|98F-vpfFnm&r@IDN*6v?-K|B_;-%=P4p06;(f~nTHP5qq z+=JDfqaT@XjF08bp#?R#Idw&=fcHNVo%Qjsy#wYE=vHr)hW*wi9(v6)cs{Ty2Cy)q z+uDJKr_h)(WM)x48C}6E<9;<%?N4!gz&j*omD2H>1z{XJE^_A!3D|5i;kBEan?$Zh zkgqwrJqDMY_XhW zF#==jEx)7xIa%@)NHvH*xKtTnklh}u5rZmYxbO}P^;=d}C?U%LHvuS;5>#*`C*(Cu zNOaG^mShmDiR-3=B*2a#gNV{GN_M4*`Q8jPx!pnPDosg87mV7Qz^75A8qHmUZ=Dm9 z_Qp$S?jREBsa)AuWfij0NY3MeZCs$VSwS%dVpd|_LIjc6swN*WIR8i5vVQk;^h*j* zB>?A}Lzo7(lmLCy)X2Y13#tXQ1!a4CUMgzp-b__$^;e>lK=x(5yu{HYHX|co7Q#(n zHiw6YFT~w>qz-p1kQmn4Z{WQF>v@E8i~vo+g014;>U;?SR&Wc754xg2_n(-W3IIU^ z4UXz|)Z}cZ^RRLyko`BLvFR>Wqd84oxl2K5%XQs0Uo=N=&tXIqz*Q`Z!Ta~k72)h; zmR}XL6ktmUE-o(H+HvG*=Blf`GXMy$Kj{WsO5G+0L^Xh^BIPA*8qbfRqDIWp@24Ho z5l=r;5At#9b3-bJ7Up}Qv-i>A!QeI_6(wUC>cQ~5a7fec=^&(A3`jmK0*`wax7V5i%wtFTRr`@)((P!6?qNZf5{tL77R(i^+#CVyQ@-`W- z325lNe*q~#1)UqBxP;VkgNHR}4p7*ss0vIqmq-^708#uS3CR`GYm(mR=BCYtyt~Uu zI?16tA%H#CZj{IX=;Sz^rHx-zAG1^Is!@BNmYA`tF(x=##Mz|0mK`;7m{5 zA?upi4-J^Q4EeU?(`^s0v+6Gh8W#q&yP+zw0HuwquZ&6KVEmm-8g3mO2c3uc{5=RIMqyF_8aJPL^1M7Poal7 z_oe}pY~rz6r}0oLQo_3Yvo|pFm_+^SLV>w>G$;emF;DT&o-f#XIP`XXpGwQ>uk`(& zTOI#jAR3<4e`4@VyV5sro`~ZvP(TQA`uCaijwz#V9V^&~*xjvxWyoZQ3+U|WD*m&j z@g;t28j3N4i+`iwUx(Q9zqT}{&!OY}Z^r2_vr#Ayt=W+(D9V=MuH$m2`SB;*l-4ix zPqwMKv-4{90Yw52YLt|R4whTKpdWcGPJqaqVAEfh$@ckgX2*%0DKHy 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 b;|VSnHH{LM>uL`8Bc-IEx;sVw(3$@LxS3j~ literal 25986 zcmce;2{@JQ*FJnFN}7vEp@G_l2xT5BNgK&LWrz%!WuB=g4O>wnWXe2~Df3X0kaFh=VCi?*T%+DfP>@j7qDAc8FKJ> z2&Q1z2@HSrvZ6!CM3=pTqW;ItS?3>LACemFBE5cM7u{aXmn;t=MoA>)E-T8)y*%|c zm7SyiRJqC}Iin*7H2h<6HwaZ6$>cl-?un0ikuu(wzNGu*#ixfsD;xI>_U;M14l9H1B9j#gpLiFvXJaqh4SC4p!`zj{LGbyEM z2@`Gay~XX|3$CeOX1e9)_gcr!&qKMuSp3G(ZyzRTumk6X=zY8yMA^&EQyxBinw5Bf zqjX>vCn$JJM@PpuIyspwCME{&8yOi%FcYOLKk>rvb%ZN(+*j{y*rkY2VP|DEH8p~_ zw{m-ievS8lHM|+z!xb?x{dCp2-FMX0-y|xhsGCMTr4)brBANdvg;Y2D>EX8BB2pbD zcYEJ6k#&1Lf8O%s;A!}91@(j5PTXFSnCvrj#VXpaO6~3KtE=N_Em=ki8}N1O z->I5{W*zTupnIze6Q(+Lj5V$)p}ASn^YP>AKFjOA<|P|;HKBqkqQvz~-8*-(t%fAK z>^jV1g>U-8^3KW7%WI8kW!}NC1NCEVX=x)PcU|Xec)w@pd!ZY7b@t|1HAhKvd!}K_ zI~_4`aq-dYHm#-%{c62*)#kUCxATX}w3`mIsAU_sG)IW-Oi|C4T_ zKI;xe_q6kN45Q4f4HX=puM=&98;SWj*)jg;n0Y<=_l;nlgj+f0-{0x{fgYWGkE=>B zuSM(n%KW?qezlCwzB3}*q|JC^buoW+EJ>-v&GnV{BUZwtbp9~?yQ3eh1YR$;m87s; z%YRn4avhegTgxAZ$!e8*`;Tyo!A^spzjB-Yo< zIttO7wP%PYDW|Z=?hv#ci#7~*Ri6J*)AUZKOj?MRa7xzn2m@PO*Qh>4Ue>KDE6QJQ zPgH{A9Nu*kUa6ni-kfi1qQ-W_^UTf$bd&Vu4eskHTO7dSOWip9wemHk399_sH+6MRHgM>ulOmMem@J=R@R@aCdP ztOUK|Rng7ms2zJ~-ojpq*Di4ruo`^A$P9}L@7r`Pr!x}$91g@AA;%1ejf|C}He(FL z<;ST7Qv$Xl^_P=W(%2iq;f_ng$z0{6Z`^1ZX^2{!Dce7ulvdmb&;N{1MHC!XNng9^ z?i8&er%~AcifyTyyR&QHqOMODErs!zcgE8R+TC5A>2sRO8(t`<*2Xb1UQH|6%x4^( z%;{-`0I~41!@^{^Hq>dcMJ3y`oy&D&vCTIc|LV->mzSqk7n*Kn8`RLk4vErpgCx4V z%csC*x`1PHW23#h$ob;k`V*S=UAD%s1;SkB@G)_50mhHs5?igWUVYe_ax3oJH&r-z zF|n~MLP8q*D)Jm1ChZE$3nqEgyk_)%I#1?PWlVr`w&FQm zD>$tfF5;?~XQdB$1|>WdOoms29s0Pc6u@?7O0`uW!^GFZV{kHZk@_u(C1# zgJRtGNxKxy0_E!0=U$cT%Kfop@1TuCy37UTVy%Eb>ZxH~x%4REvsLxf!01QmpjRye@N1_l-s0=$RQye`bYi5s(DOKXE{(NbVaVNzd`HkHp-4G@O1qEfO zr%>$O>t8X@FdXils+6ScUv)=6L?*7vkNI>`3k#%((WbcSQ5zP(PY{mAx(ad(YC}-o z&^ItZi3&F>4N;*=c&2na#qQk-@Z>0u9!(H&U5!`IHYPlIA`8LK-`DpPeylm+)#lHf zl1hWj1pDc31-Mt&nqMRH*J5VuRdVl-( z5_k7XGSQp$`-LAre0Xf8091KhB*HD`7x7n z0u^Si50(jl0FScRJ!#5I-cfbu7fz2C6gNugl0NU%B$Y_th(OZqMC% zFOAmQW@$k0FO)P6)h!rOmY>RPKF^6^ zI7j-NB*k#Ek$VMt>9n3&#SoLJJ0HD=FinycCnFr-KJhIbAuSXnTB=jy8Zp- z_1qB7kBKvzZRUz8r{MiK z67ECxE00BY^5S^g_{LIC8yvrj5DjX=MYW$keJbF#p8J|j?G#=;&ngC`DvOd0WwFQm zS^_!mK;Rd}`$CRf_;$y~=;Om(glEq#4DoHPQ2E6Do%FJ*s)4i@?!Nu<<@(}ilSE6R zk^;nh0J5omew285xX^{1l8qZY!8eMWmy`!SKhJjCaKbl2h-)r(b+(=O){r&OOAq_a zLsvOLK4x9}*rNyvDwe^L_v$Hg4nn@s|2!l0kW{nayuqGLR-Dt?BMw{YZJ-+4>nrDm zE%_)4Wq$2!?M7pi4YVU(gppSA3--j_{cAPS$~40!LN)!=owVJQeL z3ewWjPp5Ok#D8t>Na4|IuOT#9=H(`V!?2E&c24C7uHU2|&_^(xKIcAvCQR5AN zu}=A`81&U4T`Id$GiX(Se!Q)Gz=~{P(`9d++#XAw;D}kN_c-QrWfQo|ads_)H(c-j zXy?REyj9&J=6v?1a_h^}OvPy#_wMEY2r`s(5iNcOkjuA`D~n^u4_=4ij;Kj^e{t+3 ze)T>`i6f9pwubESWU>f&IdAfG^0Zl6#Ql!f8Z&O@=BZb%Tp{Q)q^GCTa_TI zlv6c~s_w1dha2&uYm#K?i!cnR18|>%@IS0E5qSTcsL;~>37I1 zoCWMAR5#227#SHM33nEvrxSH6^z(JDu!cGqBj78%>6q{w#mkWpG;I1m?Gj$5N#ouLUQnq?wPgnE*jipQ@8(EUtWB@LK&-Z`|_3J8Q735gd|a0f}Yb{_tRT_f1JjdC2Adfq{X2iLhKE{b?nEF9~S@tU-yN8s%3hV zK!~L2Wm6VAtMW{#yHdBV1rPK(Nl)S{oA zWTCK!??Tue`<|Ty(77dE?({j;cb5>DHVR@UTs|>9cycIa>Y^aTpvwp}pmMaWuF9V^ z4v<%XRisoDj%3?}!|RBcozvu{Z*3k`U?Z8a-(1Ss>2c+j z%exS}xByPU&-zwUYWp(9G!Dk9lJ-tJc*7CF3i}DC4wO!%4mUT3N8d4ApU%lIe^-rT zP=j|$h%nrG<@&V6e$4ZTQfo{_uwEeDK*qNu?Wp+20e;JFfyxIlcJHmY=ul2oe&T@o z^p19xHXgwp4_*ikXLTC7%4s(A*fVIg(K*&|Km zJ-QZ@2R(R4_r=LXFL!UW<@C4}pc-znBgbU6znn~D zZK_~;p^7za1U5s}moI2TE<&i}c6Ta<^K}K425zgPXMs2wheTWt2kp*h9m)e);+#+= z0qbT^funldw12$x>2`w(;9K9i&V1O3s3*u-tdOkF5(&C8GTx8&9*dQWx;6?Gr#yTM zI1)W^lS*GEz;BJGeS{)+9X=BeP#O4@@Ev<;qk$)b%Jf6?9j+Lh`S&b5A|PI#mhkiU zk2!PW&0T=(t8nF6cN*9bdOnL~q=Qm;x&KNGMW(}QEU?W=jtIIsW;5USnQCV69`qvPdc zBmwFLFdB8`+Zs2=zeFS#ULK(#y~;yMDe5g>zxhhz2nh)Zw8BnVsIqzZkQAzDlff@9 zQAkAW1MDXgNPtdIm=D<%aO9l}sE$FjAVA;m`L;=oO-&bdKRsEmgG7}A>tkH@Xm9>l zViHPZH$wR2Oj?s05Zr{=i7H%Jisp&-On}_lMo_F712TaJ7gfRFu3=ak(m5m5v;($uEyo&vba2>vjC==H5EKz0avZmccAH5A#v zg_?Bc-lOhnV?cER+Oz!p{7lwXy-lVCrd*BdhPYOyfa5Yf;cDf5mLm(JO=GPo!R>Mw zDX#4NLJe=vNW^1$d1d9-C^rVz0MT)JwA20!q_W+~)^Op$2Ny|Vv?x!XI+X=*q5Sjb zDyR=HUR3Jq>$Bpk-SE`S>9FlE%c(Tp7*9IW<4!Ev#~_l7&Z}vA2C7EsohLYj*JsLn zqY?Nxdv+Wl^5?wW@lfB6r&rJyjQj+w()`}+7QPV=YoC zWjimKL%8krtvHE?rD%b~1H`sX*7rs3=mEuSV(8pfvOM*jt8Nc3c{Vqk_I3$MS4T%j^O`ki7 zvJqD{hn16*%yZT_mKG)C7Cfcu&)2n|F^pkg8aE=+IK4m0qm-9OXy@FN2htiq!d-M2 z*toeB;IASgB7AE#N1TR3?QP(6&m0_b?1gz9$S+=)4gUBj3CO%u2@_k_TE^HjAIsAdY z)*duNL1}TUrKveV0lhj@#1#sankwQtK**eK=V@V-r{P74uxs=(+ZBslR@M{pLu97w zbfC}$_G&D8ILuk*@EK{@JgcFFAHf!5u!-wo4|y%}Z5nF>Epj}kLt)VHnAYefVXkx% z3Q}HT8{n=w;vy;{?IymFRPQ^=#Yk*J49DD1b=nD|O59@Px44@O|Cto#NV}^d1yK~L z?--OFfWS=DD#|}}=unpZv=+Yc?d3lPE%`3oF2#WM1FRv2k`+L(-KVc?v+`SCw4JHEKF@Bk=s?TklOd`9r522C8{&gywT0i|a*JNf_NNh%l&F zmU7=C%nJ{QSa&ec%evqBE8kg&NRZ~_C%W zIxZS~rFnjo`x**uAdsM=8El?kIdNB{Y`|)zT)UOrg+4&)$Y$eCtfaq5JRQi76>YjD zgU$676uyDMOQqI!k<+j8lUthVS{!_J^R=#Ij{)bN$xtCRsGzaTIAA zgfDSk{SbpGvO5tb{D@z_1=W}p{jw5Y| zkmA6?=5nJnRBUaA3|t+fRd-CjsyBUm~N*>ZOyeK zR8$ZY8R`0V2T{*B2vt>Azv?ota~G0^A5nlq%?s@ao8W2?n4vxCwG z8BINs_$3Cn$d%dufQXT`M$khc1$ z2?Dc%ghzk@ONp|S+e2E68{)i56!OcA>?p&JXr+YYce$E9ovwg*52dIvK$}^_Edf4kI`ff_7AciTB1^4x|O}!(dKp1Kd@^% z2(CE7%q`Jqm)NYY;a-M!9DTV998&YS3U*>AWM=|Fi^l->iZ7?cUKB7=sT!{Ox-vw_ z(a%=1Rr2h2l%dXqvqC~9e$Xw+)MU+yV8FSx_a zkmeDHW3Uf!>^Zj{`MXPzTsj~1ugW#$^2_f^tj1NP`w-#{{5QhFBRm2}a{2R{R}t?9 zC%LTLiblAMocHeSd_U;h@$_$%x%1#QOyof%Icd-@RoSjmzti`4dmKmJv$DSW5Ps_m z5GHk{cVaV4oeBG3DbsS%izfn=8@2ZcckB^+NyWZF6aHIH&K=l>xsZz=B}tthX-KhR?|&}^8Sy_^ zY!zds6;X(wxc{$WDJBY}r=^;=;Zb#`cOl;TRFggjy3z2UzRBKLuH~vD8x;5r_6EO&q)%@qx5rt8aq_=!6->(n{}X6 z-UKC7RN3SGh(`x09QSSlU_2suhD$^MZlFSGJgr0vfLkl56k$X)V9}M6RZrrpDk~cR zz5+cWfix6UV=aOe#IJT6eA3$rs`Ba=Km`9skv$Por+eNeT;U>=dUt(qoM`9 zIV!*U`}-*m9f|}}Aqk)>T$&mF_z{;7vw$1d-kg+rA0tc53t{I!?tO)r(k*T20F@`&mCj~jeYim3J4Dk?UUF>yl`2iTOF?G_MN zkm$`n7WJ zA`+zH<)TQYl@jE|A;~tt50rAuyVjT7p}O2Xb^od*U&mnbLX@7cX6}6~SVzG>DUs4? zP1=7a#>W7krDtGJWt`1&;esN)j|4!71}IJ;v$&!v^z6;BW>o3GBQk+avI^1;MRIsx zU_7wyNx--u)*RL0ka?0yxd7`T2~UcnC>qfDa8H!OOz&j?gi#mvQ;U35=#DCU@93!| z!pFz;!D@9SA%YNlR)C8!OP|gK8i%S4yM@~zBm&vAYFH~Uw8-r+zlNAF*bq>ohPn0>45>x=`RTx=;sF%S3NS-x%NbyLDX z;vvHc*pPlsFc*Poj1<$@wUr)N*8>=21pu5Q%K1_R0uSK0LAe;ylKa1WvpuBCoL7*f z_VAG-26mv9Pyp{jq7k)xO*&^#Y|GfS$j!)z8dcb zhYtM8#wm!M-UeJ5X(OFX==DlS9+0lMDaA`4>;DL8O!cdQ^gFa@J?@sI?7p@t-sban z@Rx_+zwH^oq<0MRA`0q1>Zr9(+_W;#UN=tvJNO^Ez7r$2aT))eM-R^E+%U0$_pS2} zn)hm}OW{dMO+4V#usG1)f5ByW#+Lvuw?rTBzyG;xL4Fa(s-xa>!WeP+c}yTVc0ig2 zG5>#B(8}wr50IxR*G`b*PKMmVF5x2~$F-?ZbK8^h#m;QU{3suVZSR~CE*P@P`|5qa z2LYe<%sACLWNna@|79|(n;_@AX=nGo9abGjiI{1uFcJq@yOj0+ct1A~R#GbyXQF0SPDV~4Oya(f*9sV>ZH&rVWq z_PbAqOkpzz|J5Xht%Hn1e(7)R;AQJ?>zBCtS>Q%bUwbAC;>yd`?bxyi5QiQgz0F?< z&#S&{vzD^b3ukW>*!Nh>`p4IXETbkuA?#3#0dHHlU4)TNVEPqVzU+5?dAww^DwaN# zmm7f%LR@_(*2@6qF3jq&a&wTACZVvq<>IL<2kE*)*GaJ%i7joglr9hiQy2;>F;u55I;87$= zr!*?q0!}&)-75eH!I8ksVVj1w=r24n^(Uv=>QB6Po3l~hg=dD4Q)bG6^&W#OeDRx1 zWsXhBi(#vvvhZxz!b*8(9FG5alV7_2veQ)5XKG$s`NG=0FS7_%;w``(_QYf^V}`PR0%0foMT~oU(jA zS*u9BO~d-RmhU(g1gZpxo(T`c3P;g`@1eto{ey#(z$!L^pzTX9Fj9YQtq;97F55VZ&u8p1$ONr5QRjToXw zdyYmzwAVzcJR>tFr`(+i?-rDWEQ(jIA-V^+iLIMI#w+um2|mQp?PPF4^j#Z>rbs~* zp8IkdayQfLovR1l>8a~==)by{dACPLic|iA<&8dzyxXh7@Q~fK|0@#i#%Y5;Nw{;x z91cC!b;3xrVN7t_SS9%Qr~r$|gh!-IfEnbvsS=_azHu*a=UZ3~6UeCuIEbta z9)@3D2J-7QBZx>cNPvak0}Xu=o)@s}ija4~&D9JPUOc2i%8q*{a=+QN>qS$!s(u5K zvG(K5>WT$t>;T{Te`)d&%=+@>i|#p~&ZHt4;ccP*{_$IeUP&_n()@N;d^~Qlt3ZXB znb|j5aJn$Fboh}D4vb_#+=9oI{Y5D21xT?MR{l%(%~V*SFHPdPDjs5P#>!)$nZcom zED*l6Lq5;er~M3f?x$A-E*V+2;0aa^%nnXZ14&c8s2}AKyirhRr@bZqr07 zCI2fNb${NJ!G8f^GNbUm#l%f#@P?@iJO4y>A5gO55tu|`Jrd}_bAhCN5GX^sUFL5T zfs^BV?!72rbLOT~j&tcf0jtPSyU$d!eoMGCGp(0xUS7|dZf);oxqlVIw1=0(({F~0 zd{4jg8204Jvh#{?sE|p)i<(1OORIq>&t{I!KOCQn`c;$&qHz??JW$WNdlLUf#5LdG zYhVQ6PcZi+!me-vGv|ET`C_n6zPVuJ+wCy07fI|;+9M;T{*OKgnQk-;yDM>H$+){PZ_giwmsUxBxv|3<1!Xb zENrZ|6O+O*J-83LVdGaes3{IAZc#t~=6h)7XwHOR(81ZzDy z{!_#Ei3R6SiT?X8|u}s-OEC!D0VIa4`@6PXu@3i{4)dPHE6K zWi3U0V{%+v%g1N~D;1TaynkX|tjbWbdVOV1x%O2^yLgE}O_m$h8}1;4D)lYtQSVLb zNVFz%I4k#Xz^OEoE#jp9R9eN>>rlpJW}uC*vvt;P&3}23C6PG5d&K$_=8>lR@4N{q z`KC6BM=xY`%hXJE`WMf1%V8TF5c*A%2aWs`paH1I1FF!5*Hbk?lsv%Cw*m9{7K{hY!#0H5V*{3m>N zU~mhc^+g7r+ldt-X2_=_=3tHnuzaP4WNW7UOf_3T%??+pjkvCIr^dX=E#mkAv9 z;Mw0mEfq)?^1)D{=)&fr-z&h82@A1x$r$_SpMXudVYBMpFA;ojqx{pSc!;LrTKg}} zf>e&N8~qEJaw=`elFw#!!3gYtlUzS{z2)Ov*aPp0xFak#x?r3?d*STpx1h*(OtkCf+bH^D4_O-uhqe)w2P65wiUx@38ss}A zus{M!048gGq{afQXMXxD_sTz1Y|Jh8i}*e8HzT7m)uBVD@F;C#2y%+k&vrxbp)i9J{@JP1UYohQu+2JO zqnAL8w0`~QzMr%FdPC_&&tN*Hze<>|L)Sd3yM4BIw)d;3?kZB5p2~*tRICAXD@zn1C0-tv!xZ9#G7ffoExM zZay_>4MIFhpD4W-778It6US5;N$=S$wRMkL#yQW;x*?m&K1<565=f}rT%>P3u4v0? zfE2|z`rRb0MQp!tGL3hRS(C6(3JSa3NdBJV%%fJ2rjs)1A!*;)hZ2#`vd2m-Gfo)$s z$2@ext^ln5LE2LwWTnE5{Yaahb?|%r`Ze)8a7P>*97J0ur&Y2wX;?at)z9HqI##V6 zNe>7K4GCA71TVGi-o*cs6_s}}ksKJI*r;m+TmE%lXz-X?ECC_q{iiFd1h7wk8MUc` zpa}&){^a`(J%G>v^No9oT|vWjykF7Xd9Q-b34lws^{@>1;BN4Rs zu!8Uk*4vWX;oyON4R>|z+9RZ~f(318zdHnAzi4>&E?@~k?}E0wmS~PD8%VJh>16Zb zVAdN0RsmQXc%EtN5kJB71a3_^ZTF3AAPrxaxPTQHnbs@lou!W+J&K+vv_F)s*FD}x zmk66#9XtriVC92nj&lVoEZNU?=(p)|91cat>;`XFG!Twd{Pw}$cnG_F*2c-UEf;?6 z;j(2JSBwZqqtZ$m{D_e|9Pz0bVE+0505{Yj`QQ4Fc*T5K>RH)s;giDO1Kl}kAOeEB zA>FS@^G(H&Z+Y+ioJ((WLwcGFYQI|X1387DFKDtFJKWt?NPl(N$&auS;No7F>*ft| z-FFjj2p*{L8HcQcG}+C?H1{C7VUiQGI)+Z`r-}B*DL$+zRH{um@K-*DJ~3EM58p{%xENZ$am(V&hX*I;Zy?RPuRq z`e}8Pt{7Oz$T6m5LiBz1B`S+JjZlI7sT$rip#vD@p)C*c41pEgV3D>ap5>o`+$g1@ z@FH*tl6af|HOtaGMio6^Yv6%H%olV8 zPFap!l?1*Bt`Dg&9zI|GQozPI0|!gB@tD?2-3|E+*Q4-vWD zKfuF`@epVaZv$u7XfGL|Hb@}a_79PfPy#x}8SN3?ncL-TS3P7EgjzbmwwP(SfB4hm z<$3-HMiQLSzhgPR{llaPdHhd!wqJh(c(`NIK%&$UoPS@vJ?1TCuu{R`_HD8m{R77; z&+qx=Da470bOW?|b(`<(mJ~Klf)S7&WXdBp5MU}Nul@)&ZQ$F#J-y4!{{hos+e-hE z!p_aOeb*A(o^x(CU*<3EII!^vdFg(57$>lYbX{khf28m3wnwDf&wTHHkfAa=OSSLW zZxsUI?88VsKne2=_+?vtuv9_(&AG)K-0u+%9ONa;@)zgE?m!%)J*X}e8@KBzMoRKq zCi;biK`ACRR!O-FJn)&mB~cGn1X&I1@&o<1ky}ak?d-LhJuBhSk!hF%XB@GRV1|O~ z)>6jh`uUKvF3dsVzco?+CmoYbA2bU&Am{RzNI@8hfl3yUFuthQY6OzC3Md%}iimq1!TW+{6aoG&d?Vtgj#(7S zAwCH57`&YcvddQ0)c8ZdhDJ^xyb9J`!OANSFs%`|9gWqU6u>2U0|&b~0b*1u#O*lf z;=yro$)i@UFt=5smQ>AKi19(LJ1DG8Aa8&}{{=`n?B5>2`^w8BD$90m5Wm$8g*;+l zZvYBQ3nG0h7~)t*JKx#D1yde7cI*3N^mzwVDAO)MUx^>|7@>fNXfM?02wet}&=I5p zx!wjm(bdpXgJh%(y{CY2Y(DTnKO?#dXdq1hoals-4YZNrRX`f4c@k9Th!& z7*POvXpD@EeEmeP7CFuvOm-LDf|LPmc+R`%;ayAJITu{WfMbdUKdZ@y2V}6qkfB{; zz_w@%bTGJ)t?%oDQ&9}eQ7aG3Kn`O0v%z_AaB$uCC}>~^Yye*cJWng?wE$w__4<9- z4Nq7JDtZWzqPqhg(DUKLLFx~7li!UXL!y)dJJfA`R^mpefD%uKXHh2@1;B~E3XOL* zz+WME4_H5)H;0h{6eVvUxDvrY5@Tly^?`<5AqjGl0@ZiX^xJuaykRv_|1a{zLw|@7 zc#n`YhV11?BtmVfz!|WAlYzxSU>M&B-B~C*{cyJf%nX_$YRS$A@FqF=4L$)!P`L{h zQ-Jp)WYal-!>a>0N_sZ{$!l5a&wvlE>5h-EU4tvM%83E|ESh@aM# zhdI-c;K*A9Wt$xT;Fjk%bIkHn^o{i^Q&UwWO_YTkIXCk z4(Q?Dp0{>$pAaaizeDmd#L=N7)r&O{Y7)aA$G%p~hX!$M#j4n?t3Us1i~utPKn#=K zqSbHzy1HLBiNIg#3+4arpKNGACw$96%lm*-lTP=NJbSvNBaKbp&Jn=IR07yFq1`vx z`#$j$Tiuo~${SA%H|QPOu4hsF1UZ#=JY+p5afltaP0#NoRJgXp}OCJzI3m zhdu?iev8D_6TL|I(>gh^ywB5baAQJ*9q*mNz>(Jlrf$qZ}qR}zPPB}Q)Mbzx~> zHA{g-u@neJ>HJQ=IL+Z{>pV`#=wW3R!Qn~q@$Upk*kzTK4Qxp@JUC}Xp6%+T`yV`H zm-o0-AYGvqack{7dgj_A`SiXVNKwoDJcjPtt=fdpk5mpQ+LC}(M3#FvPdNN4wC_P- z5erFTak@tvRR)Yk;3gdFDJfwzf^fLnlI8}6XD9GH;*m@H*->trsZM_W2-ycaBcFS$Z&n39GzimI<) z6~U0#0_MMST7{}8tC&MmH!7S_wY&BWDC%a^27%gDpG!lmZbE}A7yEcaEdQdHTyY1lu(fk5fog{w? zC_E5Bun0Yn3GwmQk&&B=iz^F05cS-GztU=Y4ZQRUP`a+J&)1!OofJ8JnFPVffOkag7#C$afTc~EIAvfQ^TFO`IV8I0UZA%DzA~8hAI8 zKz(vr?t7f=v}lZPgu)7WoFO5~_+}ZmumHi5{Cx%a0zi>~i&ur`u$9*j9YVHkgg$tA z+lnk8FE5mC-;d+tQw3MTtESQBX}2XoPfyPT=cOsst?f)iEltof$+bretb@n~ete&V zf5+wk12G<2(~%AaR_7!uQP{6zue!!CUj$=N-T`w0@}i@j_bzwh1`I2J)R>xK0k-#1 zPL!OWk$9;Nbidxos=zCWkBlAb-=Lq$o6I5rUZ#QpE!hhWR>9v;9 zG^%J|5Q}g<5tlq~(~BWUlz&lkVB7We^L1cD&nYZ8pe3v<;RQu6)@ zL*P;xhl2)B0U1u+=7W2nJN%RHSIDRD93VD=#~TfPK^+t+{r$RVagaqBAPRz3#sFQ> zXn^JneJSCU!B?Q|hC?HoW5Yf4AVH?WHzIEoP=?=%&OtLdutzFJMhS4jhtk*Vm?6eA zLr3QYuu;RxFasC^)xJKQxNbPvQ_>^c)dj7d(EOj6oGcB_>()LLMSf_bYQso{Hcnxa9a)(_9ozeLH!Xb(t@x#mPyhAol-3T z03n47xyk{T=5a7U*TsADE~m=z8(>Kmd$ecvDo9&c+5ojUCo}V?VO%ITH}?$=QR0t- z7SIsTQ7sdLc3PZAAaZV8s`>vb-viwI-$oT~?66P9$a612BQGF{ZJ$4_oj=q4m~)r( zI%-TNl2H9->x>oh0}0X53*b@M-+1i1x4-;FaSVHC%=^H zTN){_AEiw9t^wj#O-~Qfkw7r<8RW2sdSd@ z8~xw2>V1j$#Y?BIOQV+X-a~v*G??4LV=4O%-bjIhZ(CgSdPp$`bB@3x?Yvl9?xfSC zl!VA|ZVj2|#REIwb}n7w(vTq|%M?)7yrX}lE&{ij_x5%$g^EZ5;iH(c#5NC)Lyd`1 z>U%?tY@Z4A*$Di$3$%_~-D?rYFB~W6V(~bkXu_)=RaoWTvZ|`8WN&OY0#NZW(~@RR z!wC&%te! zQW|dk{aUJUiv2!GN5ikNVPbkFhjg5TmG|6F18)c>E2Y9~H8wjHC!OPYRWmJ#L2az> z>ZLB-F=TA|jcd!Bt+BffW}@x4wC>pM!DetOD?V1CE8Q6#`;A%}GCFpQ5qc=gfn!X} z%~b^gR#{?}MJ7O@Z=(Y37@^uxt15%pIY+j>o!Y~^;+(?5nxNK(KLV1Fx7%T>FMtuH z5)gip8qyI=L5+$~k1QTs^hIWX#i_1apbVsB-ueE(>`k#-zBeU9LgpP3kDT!X-Io;< zV%6#X@Ffq2_fF5v{kE|Ic0n`=<1xL{mycJw2d>W^oaFds0auRo-dT^t0ktj_3&q$ipjOfR9S|g(*PyrWg8QZmQqh^1m=K0S ze-5J0bzc~cl?tRS8i@tDLlTciju0wH!>(&TjUbHxIk*`Exf*pntO6;Y29}iTzRRct^$q4s7W6HLJB?oWf)g>ndx%IbOvi~^q4cZ zwOO8|wkulK(4EcCvbLQ&LtQvoBc-h5C8{TrOk8&1s?^jH-f+p8yZIWMk68 zb~3wd4CVr~K$&T?4Bj`?H-{!?2(L|KqIN$2(9jgfa>jsZraCmit_naR8lhFt>YJdM zaj{-(f5N+W@1__oVKZ_+HSOBx%qUoPC(aECP5PDf<&LnzQbLGUuGr!7NSm^pb@szf zhP$7h97N5lFzn=_+qwhr@=~iyYFj!#8ZU%QKhT_bcVVOySY|W|2S%t(nL$$XXZ-Evg*i*qX4Sv=A6UL5y_HeL>)`g` z;^qeWm~BZP@+$W@bV50xoAcMYO@CBu&55a(`Y&h7@5(b1^6?SkqaUKqD=tU%4unZ!JaQ*qZhQ3 z_N6>{@Lt2DWFs`s+IHEtpZ3sJj?K-8DK--iTSJ`?pcf>2CFtx13QV3hb0 zTgHilz1r&rWBlN$g#&Z3xEl!eMQCT*nolGy?)jrGJng{)61=>n*Sg`@J~e`CdoURv6LY0^LRB^5y%;M1qFB06~GO zD3Q(OJ4kc@#DQjMETp+_REL_t4nk8$_R$OB@MvHdYG$37m=JKtf^f%PXHkobjfpXW zv!T>|K%NdfJuo+?_2I6=HX!zGz$sP+X4H9&VRL3DSbuLqskGYnm;nuk0S8yxhSNuM zoRPH!CbJy@XpgKTfSsYGr43ryE?EDNwl|WNk+CZYiUHHwYE$@TbP%_pF*t9=n&N!S z^GDAtO+uII9{|NcP^qe`Q_<6l4ug&$@I|*Rr;j!j`{;hWW9%Y~<;pV|N+~L;56*T> z9_aoskh5z!>O|T3JxOA3H)&+z9+{-R z*$H8?e!)vcBF}F=DK>=ogbQn(ABP+kFFJ1eL4b0dn;}e2jhX*=i%1x-l+gF7<G{q8~#;#*3O|L?Lo z|G3bt7MuSYcN7`Ed)KaX;42P*Yx*C2#f0+COB+D?B$@IA1MkBC16Uvurwi`X z{DyVDMh2O6DtQ33a$4IJ+_=fn61^$V zo+#$BHFbsIpoW{I&e;roR$@eJ#TVk|*abQ%6PF^eN-@KU_eH~9kkb+R>XK~tE$=`G zPUO@tE=aS1Q^WVTzNl6MC(QB6$jI;u3UU;$xW6>upA1hKm>i(sU9PGXbT?AT2zQwA zh+jxqso1|^Gsb`B%r!U~*|k{DWq8=761lWIO+h9*H5xd7gSeCiTL@jC`-3OBP9l|z z=J#Xg1|Ew#y@Bc(+_4 zTe!<(sF*c-G<5rOf0eNn<3qo2TZM(n+~&{$W;7(mN^0MQ*0%D!Z27hT+};hoE^_6+ z`q$N>7c6Nyt4|;Io2ymjTs(g2)+=(Kp47pO>XY&S>pX^1%?FzYx^Ajjb)1xI8y}N+ zt!~xP?VSKLEEd@RO!uFd4HNpTv>BygSe({cd@@C#)ta_P93J}LC=K(m$`8qCxs4am zzV)$A0Y?b1gy|U&c1$3Cp<)<$cbU$dK?nvl8~}PVw*6$BPS$b3b;E{^Swz>C62pWd z#T<6txDlitH7m5GN+8TovHitZKJy#g@72({wC&^vIzX1lCdZSgW72{c2CKPV!SP^rCS)HgI7 z2brZA*l$XD`mHHy?#pEiNH&Mwi;dBn?u|fZD=I2RL*-_SMpeNir4$!F=n-I#XS@#h zgDk*d*jaZAQ<>FBvStsZux80pn)D6$h_=F*y+q^{fzJ1O#Cky*&dmwux4stc`ZEYR z7SVvpnh<^kz$<7f88p*I0D{G_u}SB2*#!gCLpnDauFwcvm<_OLET9X4I6*6Dmkebs za|Y==mNRM1W1JI==^v_yqT|6`#wvy9;3E0vsW`9!%3qOMq37Q4)@90WOS~ z#t5y~S~j$KfL>6a^+`Oko}lh$R6&!Gk*xxImjLgC*Z@R;0QEvaK>^S4Z1&xTE01&> zdg)0pOC$d-)|f8&8J}+cMblq6M!6#X;O`q=Sy`Ey25;#WV`0?v*;Ne)vb8mMjG(jK zQA%}RU%m(P?nc16EnwN}0if>;m|+0njRSOT-OW+>HZIIb5=a0Q$RXZryf+6SYT$hh7OHu6UW>%`#jMEuTW?RN3QO0Q90BWw>b-fb~SdlXGif?)#}j2aoy$Oiy+Xj&i)&s_k@L=A~AdYl)V z;#?WZA67J1y6(i@vipUclan)&D>_~v=J42w-~0pxmqSCaHg|{&S$pA9s1dkY6?^J# zUepXKZ{rJ<85$e}@mcG=lgn}bsFC3ZraZ3moz^VEPR(OD47=`2TmETem04kIk!L-R z(dm#lC*}t*u4%0#`3$C%7Qd|SBgr4bUD$#-$VJ>VB1Vg|KXrQ++Ey0j zU)zfBDVb#B^-LnRWl2iPk|M>8fjR7XDs3(^M0R)=2NG1^&dB|O10>qPPWyKKKdqg6 zRMT}B#(#x?7SCOU#&HB1w3`!bI3~ zN)!&cEGcwAdU7Hh0mWpgBViP`;@0y*ozow6>W}{AaQR)n`+nc|d7k$}C}!*NI$yb4 z-Vqf^Mtpn0nxJI~<%-Nu(LwGGzOpI0%-f`R&tLY*kB*$a(Eo%=n6v41+Co7n-*`pd3gzGvt>33&CX^ZD)*T*_|HkU9ifs6P6aw|3-a#1&QP6>Z88EhbCDmO$vYv4#Df)EQ83Ppo{@&yLfLz;J3 zSk&oA)iFU>)a9n>Cf(26HswYa^*u4I6TfV*rsFfdL*5!(H`i;`kP$zyuwLwIG}S@A zPrZF`JQ0CCpT6hx(qj>&?1Au{BdO8yPSck6;sx6DFRMoU-gKFCk_x0#neH2#7gax! zZaAm3{r=1+T`9w><8vopavPUENHZ|L$a2sR6zZ71CY0{bf%x4aRkK z&ISvf&yY$vkmORRMS(E9AGe8aZ~9AfujD4?``N;MuP}qHB;fOfGoP|t7jHB!$<kxO+utuLvA$orEL@CeiFVUOaOu#DMTKPQ!n9-jZ8k5GWxqV3s+|nG>-5W9Oc@JL;9$9Ivey z86kOqLS3I8+4H%*s6=%2S+Y6I%*-eyMZ;!HP1uq5>wHC=UvMu3FyEJu))?sVL;m`Q8a#o08DN+wfSP#aw$JA6)_7*{E2nx*4ZhTZ;=8^>($j2yuuQ7mY;3UyXs8 zy95b?gAjIE5DcMK%tO*ZhD~?3x5N*qu0qZ_bz1(&Zhroap5vjt>j~NeE1tw+G9oZR z30=RP0Yryk z4}^Neq1I}|5tq@_D>4hv1@)a?C*fyTjr2!Qf(%wsS3R}-l&!=@FX;EdnS%$mR#yU+ z$tt{qzQEglq1hZ2{#5U^*;$uTMPUo$&&T4W4Z$jHqB0VT>$mN`rS*^si zMkn{>5aEa5J23RhA7pY%v1V|xC3=4qE!X6lgYigNR5)#9=~29uA|n|4DHI`3HuBp> zh}?K$?Kiqs<0(%Ku-$<}hs+4oPs2CB%{|&yw!S9a^2vU7csA$PBJ|xftL7mLM} zZ=1VgG2#V^(fj6su7~sFs+&n3mN@`Gy$HIHZ%C#jaYdaFEW}&>MR?Z_>mBaeN;p2G zW+934i~eiUL8tg#aX7d;RMxlI2fAaeV6^U=63)Oy4#%0&{WR7Cn9`$8%$T{;gJI(+i| z^mHc-;*_;YGH~qD${G35qne0EJ|BBLe=CMZnPOrT6N-;CB!nrjlxVESraq%s|I7Hh zCh9VoNlwnr(&!zi9%(!WC$69$q>(SM5?Y*&5<|BsGU3G15|a<}WC!fV(SbB~WNMS> z2OV@3te#gNn7psg)BsON6Ks@tUB=^4$!7PM0u>lle0^q%vaw^}H0&%|LOJzlTg+<= z6AK79>dWu&a326%ync9^rM&6kAUlO??o6;57Dz9ySo^KrVaH%c1`OeX)Q>=%zKCee z0QWPD2XC?VmR{R?YxG>Xs06lQ0c7-AL^8$xb?UG-j_UdDUFUrpXJ(&^C}W{1YnYXSrbq0 z0ctxL3UC%Qr3FCMiW-i4Y0oMY?m#!tuLR~$UD-|7U~c91%?B7rpdD<}ol;G4a|$l= za9*AmIWa5Hp9NJAchn7Z;E(ZTF zAGqvKi@b7dbcnhTI#_&1d$Nd$OcQ)C{E1+Udpb-LXt<~4XccJfV7LizxXrpqqxOBs zBD60i1`Py8sI_O=X33zDquSSF$wLN~VzE0SUWUO-ilhOsHYW(@-S^ZC zfpLM|(*ZRx81gqEoVrwD^x^<)VkWIzi&WLX0E7pKa`9u<*4EB7u66`@gq(K^vyH7S zY&IJc_8vF(8MpV*O)W(YUHoM<_BAN9g=kh(bFn6cIiHy^C{NO|%q%PfK|z{nGe!R( z<&`6_xFQZBQ4$aOERsm!v1?RkY?2KAc$zrhbq^o1aVwN#K=0M*>c~V}#vD)m8l633 kc6mQp-z16{REaC>DV@y*SGa!M{$`FMcCISNyNq5`c+k0bQ+}=BAvW0fD z!)+g#aUYJMGZolGT($*d_#g;D2+AV_WU{eAKp02>7ltDupx<}y7I|nB{hNMC&pqe- ze&_Ms*SP`xnzjTD{7{mYb=z5=(dLmjBQLQo4x`u^tjx}Y;~G3Jh)ZxLGFa@yh*8?z zc+o9$lACqR&YL}mGzN)aTYhX+%n5e zY=j`hBg5b^&8$}w4|gjruV1axr8s4gl_b_r@>wL#=5hOENwLXU5-`uZyqp6I(;_WoU=^$A!GbB$LI$tju2`{Pjwk!B5iOQisJ8kW=_5DnW>@A%;_2fyk`p6KKF;|(7}TV7i%w>*45R0 z_Itg~oRgDtY{QsnDsz_H`q)IJ7>+R$Mxdzdq=_;e;%&-1_+;o1mBpj84Q8I_8@pJI znZ#NAUivx8(_Pm@nTfwChwVp1RUQRO;8o5+z1by(1om5Y?AGrp+H?pt7etpq>lR0R!Rqz{NX}XSMGFz{&a39;J-cv z@#?Gv9iXqQJpulTf_A8Hv7p*pdX7P!@RUZd9~im~WWls8fG^iHfdA}*Hn8_y*a-2Q z6E=hW+z;!)K6c_3kh#CK0&n5b4S;LvXokAy-24>mJ8c^QXK8K#x%u>Az_p&M27kY6 zJ?I3bjWk6l&uL$i;7UDTEWeyc^5eYzm%IX?%0|M=J-@Q(BZL0_0x3Uc4HQnijLsz2OQ z3i&TLsP@8iHJ)#nDs5>4dRZyt4PLH+IQ`dxpm%sxp7~Y~;v~o_u44W`o}_mG-~OAb zw~kQ#9k_4d{OlWwyAQ|rU3LezfA3CpTi4rGmKRr+dilO$yY8= z`>TCdt?z~%Wa_1rAnUTiussBFl(R^UlU@XI8{b+EdVJb0 zz?bk_KyUqNFZhcL--Dc4RSf=-*#{v0x3|^vZ2x9AMugP+OV4}5+49*|!)w*WtD z^>-kjs@?%OzgE4D9pk<-Ve%w|u`N+}luWcj(u1$9C^F2!^d>wbWWa+rYjA}8SB`do zBaCI~tMES%GVdmEB^V7EZ_Iwdm<^M@o+Xnx7UIwlE1l$hm<*hxYBZ#Xbt=>|8O699 zl7%?QxF2IxL^6!K$)UmL6m4{#CZlweI!r6H-C|+3P$C3~O?QuVE?9Mpe!$8pKGFx$ bTgX^WK0@f&Klnjnad9#W-vLXpVm1B+_=m~h delta 770 zcmX>oxl(|&fn};3$41tbjEn)3*E6aC$!m;jCo3~A;b70nOe)GRPMmy^Sza==WJ*$o zNQSsKL+g|b$@VEhQ#8C8fiPh5eU=rI)!8I~8Xeel>Km9C7-r3!IrG%jqxNY)V3)bW z-WUi@cAp0GP9mAdl3irR8*90voX4*Kx3hW{)#q1^Zq=X#F4O!2BEgkAe+)dlV8Pw;rAW>+5bi z2c~DKoB=yvj?_hvdY@i~3t)Y7bS{7`c9FXXmbcS@&|E+VFw_HGyx|!{fc5TOu#b}x zZ-X47wlnqti2pgw{UO-E7dvl*3~+FeeFQde-=aHU1D`VA16y=l;4Vl!Qv1&XFzr7B ztbg;<7xzHsJxi$s^NULrz_fAp+xzxF|EDc`XY>GUq2-N7U<>cbKLHsqQ@ryT*g~5{ zV45NG`V)|Rv0mc~u=)>kpMo9o=@nSMfqninu)dD27hng=&3FMZ#|O+m8KY%*;chjKD49g%X%gd9W3w>T<|j#Ge6DP!4p&L@+P+L`*>{bu&u^E>Bv z9^ZYP8!)W@JW7W@GSnw}?4p`t^D0t`LlNB)B@r`4P0YmOS~{+rmeC|)wAdL)$;f;C zogPh6JfcfYaf=?YKvGmnqB2}w+p>9Fr^rvrX8|6+pJ_3Lg2A(+1<9GW?c%5#)OLK~fB9^dx7DcjoJ*uYoZ5pE!BRWzN&iX=^S}N$? zqBHbXT1|6klAsq1Z&5jp80}h#PXbEFOH-MTpy&2bqA#V{+1YdNupj;jW{p~Fpo>tc zSfeD=<+M^V!0uN>&FS?}V$hsy<0R%q3?A6SY=0HYB}bF^e`;G1Jq6Hr4#<0YmB(ij zqpFFD#>ycERrC6&&|o|31^q9;#EZ|X9Qd9(z7{zB~+dfY>`Oxvbf!%kIFNHEfTFcEOvHx+9gYo zSV-kr!4?^$IhPEtrI9kLP`;JACcbH+WN$r#gXYI zld0NPoB;YwcXJ}>rs%c1%}l>GVR#bY$$KyNnHg`nH}6TXUvJuU&CFzM_zPpx89wV! z=IC_x0&6_e9SZ(SRv#Gyeupo9I~;Vae(jKShr`iTzAYB;(4tG>;Ggbo_}$Fp?&QRw zfZO&xI}C8$(!S3CpL+O8I%YNeg z`g6$7dm8xx*ZU_>?~3C1QQs-lH-w%>xq04c>}OJ2EAUOR=T{&eHh2Z*UsCc0+H=hT ztUvi|G3u#@11L|fD@8xu*G0&${mPI0tp`?e{*E^hzuvTh%WYgHEHB4+u6N4-SJw!A z;NP6teFgC3E!B5GAJSPL0_U+VW^Ehft6A1=g!7v<=v*h*8`mp0AzxQO!u{CZx=RQ4 zYa>V91bg}~J(qx2VtpIWr(;%M59SN`@K?Zdcg*RF zTUI&t)zKC}{bGJ4+Ut&0aC`#SYg#L?uTNTPFiv258JB4sKhwbbu8-kyOnSaQ3wBc; z_h1diTWAX)&$q7<^~82w&z?o)h&LbPb+u3AdFQ;g66?uzRbrgjKY6~=^W1NST8VX) z9^vsar*qj+&-w8eY-n%YxCrw(s0HQLVj1J@ocSt`zr~6&KKB)@Lw6{T_t&1o_1-*g z&&%Vy%Q+aQYkn?|pYS@DXBTo__(HT-?N<=b+8}fLCW*_*1sLz-ItS0c)PeqqJshtq zEZ}+5oZMgJ`sivu<~QB8aQk4ivT-|>+-s}Q1Wlut!+M?ybY@n5gKK$AWVY3_# zZ}M0<5g)wc`zOeM<>>En975)c8(!B(!jFPbDQYKDHnTUhFL1cqDl_N=*6$W{g zvU!tLO~MLAmme&tWPrOsu`nZ>_6Jz~PBx2s*r8E%Ic+dbvq?IH&(eNqw^W`hm&pN! rh2Dq0jA*D}xQj}DmGwak7B-c$ZxERJ`@cslZb=jIGa#S(tto#2x5(P2 delta 1076 zcmX9-eMl2=7~VPEQWpw|HcVn#!#@TU5+y_@q)u2usDVPHE_a+(D(WONn}uPL_0P>} z{!=N93_)Z`N#s}Bm`xk=a|Ba2H#O#WLfVM#_uLKk-0yv#=Y8Jyy}Kd#{*kc8(6){6 z-mor;s^oeoCI3H51-L|UzEo0NRd~C&gliNlB*l7dX@!yN6~}OcVo4;M#-_D~Ro0d0 zwVXqo6&YT`6qe|2RFvq9oFepCJbOu3W7M)SY@9~)$jHi@jXB0-4aNT|Id|wPr<5G! zjcAF=&?pw+I_;gMQ~2wG)kbjF_hyl9H<=1Ne?5p>GCF96Va&Nv81|@Z&ro&j#8{-AkdgQ$PlNl)1A_KZU_geZ@#cR)}p zod@nb77V0C--ys(FaJq|qWEz;_?dA+!I9YSh%*T;f{iVSbI>b;limCI!@2wTa)5T-p zx2YXCcMXgK!`rOjb(+wyNtS1Wz9M0qZa46&v6k^SJeHmjj9#gonDl116Y*R6IS44< z1RB_CpF?4J1STRN`spbS=JhpkDcxawBkk!{F&BNeY z&Jq$YLh$Te`Bh%hi23={G8!3Fy9v4m%szqziqDJ0Xs9W$1f%_(MWRpXZ(ha#t>-<^ z8Sf!4V=2^Q&W++7+3h*yF@V6Ocu_DaY7HoD@}pq&{Y`?Z;oNN!cl}vdL0pr*17maj zD$dsf>!@R?T_f=#mf9wbR9AR6F+jfe7s;n8sEuxR3CZCt5Ioy~~8SQvXokEBY{i yJv&YKiZ&yztPrELy`aCdJd#SNW7X_kwm}o35o;*&)#@9J$!r~)O`_Zr+1dZA=Ia9h diff --git a/results/benchmark_tf_mp4.pickle b/results/benchmark_tf_mp4.pickle index 14074e7261227f4549cd960a3303e373fe88f776..ec570436039bbb60ccbf320574480cca293ed016 100644 GIT binary patch literal 3264 zcmeHKeNa?Y6yHw-1Qn5VO-oV{Y}zzT!@ylpF?mKM6@w0KZ+G9@x8r{KJ`fUgmqpC! zHkRIWHk)Gl`oprZG&N_Mab&ctrEwB4)ESvEDbyJvkufXm-g9B{qjskLmOI0F=XcNV zch0%{-rKWb(;J_s>EI7#g!q7)SFEm}ELcUE_X`-MEap|d1g^K?ya=wxxybBr6A+{O zZjSc`R6!2#KE>+i1H4C&6^zn~eL>giCz+3dpIb!)CfrJN3pIjbb@B?ym+A-zYaPo1 z1S14#Br*?Q)66E8I4hv}L$$0cn zbQ|#^y%TT3D{wBS=S&;1l!eT0wKgPBis7lpNDQZE`$nX%!)0Y#J-mid5(_Pv7In|hUI zmLapE^0G?GK_*2FhA`JmF9dR-2Tg&LA&ry9)1D;Da7PBNxd}_ztVVxm4weeqQgy|PPgD# z%U5G*Nuq^DsiHUN5apns*WC1!N)j#lu-*9_=>L8WxM#RLu9kb1JnuWWEN&Gyl8bTz zcRv^8mU8)A(cS&T=acAw??VRhwpV81ZLdrnePtHw%sO3ue*Pu--O2VhW3kx61L<~A z6em_4nrV*fX?;8jW+6ZrFv~&vPS!N&YrTgor_2$?K zzOJDoo8oz^<|R?R?!wIvP`xp2A55VBCymoHK=%>HI2zxwFEfemhqsIxpt@Jq9~n*g zDZ3iSQe0P(yNBW}KmM8pb^dvNT2?;=dVBT(=S1d2PF%){*wHagg%EH~KoE&v{dfcH+-kxX}Q0zW>VGbiZqT z7V}+`<1|jZUUAt*&*!aChpAnD^u2zH=Xg_l0pFh8M)NC0Xr+@yL$c{*ttv2 zQ`_CeU!(du!^C#LdvecGUjBi|8K|qx&_?;O&&Hku|NF)55PzZYG}yHIcF1qAoQ1gg z)n_PwZ??As^uO#sLvc&}emEzcbImF6Md1|i_nE(eeC4M%fZaB}9(2BFtOIM=y$<4< zcWeMVrL+dDeM1fG7c8p*-rge`^j$Y<6ZrXanNH7w2*ihuT>tO!=Qsx(2jDSvNW|YO>!+1UGn5}G#fbQAmC|FbPR;c$xaujq2rZ#{* zM)K183(bmxo+Nb!K&8R#$gqh)3!qeaDW!%zSYH z%O^f8L7w>IE5W9HFLseicEfui8 z{CNk9`)L)!->G16QYF~VikG0j`~n}up&o(7@9+SAWhtvChgf)g4EbHt!*4Z%Vn|LyqV<{CSIq4v;U@~u#s!>uk z@6+f`0ZR6JWCz(K(|)p3^O9LSKrYRS&+DS&G?}CgY?jt&yLD2jR4;`IX1oP`8c-u= j8bSq4A$=f|gG}Y*Hwc~jhkuVa{DR8E&wwhdIjw&IX3prv delta 918 zcmX9-TSydP7@cWXT~SlSOB)zkv6vtgOK-(2(al{6x?mJhy6QSYX?aWOvMOa@*+VlH zn@XADDm|pGR#Xq$g)|#;U3JOK%kEB^rdzhqLtEPXXBe2n_kHJ_@BBYAcJ=M(ph{(Z zNN8732Tf;kk7oZRffoLruxm2q68Ql-u< z;f-tz8*iYl@vQnff0$1;(9)C1O)2|1P4GI&j0sLPD=5ljGR^7}#+Z8+i)FgzJ)_lX zZKv)|GZaPHdtc0;zsufC`o&GvB0;TZo1GaHgmj(W#YlQnN>nd+7s_OQ)X*oQr+oQu z!E3$v8S~9iBfy^0kEAb{*ESAg;iEYxjGwa(5Hg!bVUV{ZFBppMgVBL7xvtd@Lbu`Q z2zXZa2k0sWT=1c8jUw3nx*=eie+>NY-PmKRZyzQ)Ggb84i6rZj`XF36C%~xojsRh7 zzHHE7eMbb9+cV^V69EB%n)FWag3k+>XGF*+WKICp%Uc~}J}Z`uVozJV+|Q01miCw} z>X?8WAk8=lLifuF2)bk4#L#}F1xSt8O^{&fIK2nxte?V(tVa3D2Z|@5Q~hxRkM+zT zP+)bM@cf(px#6!aa1;G;W3@ClOB>!qVu7x`>Klj;0wOUmrD&IkVDZW1PhzBd75HQ?P(_tphjpfi+kC6|c>RBCfVRX#q6*1OF0rK`j7}(L_puf1CBqtn!a$RMrt~tO%$Bq1q|4n1 G-|-*tbekjq diff --git a/results/benchmark_tf_ogg.pickle b/results/benchmark_tf_ogg.pickle index 3762417974bb7d58b2830c64afa200998872a044..728272318d4d2120db7b217193f4b3081caa3287 100644 GIT binary patch literal 3264 zcmeHKeN0nV6mOwLM9PN@m8cALD6pl|)J&aVi!v8^h=4f1EwA*oud!cweMM^^E1)iB z7jfaLt22%%j%kcTnQZeben&TSn=%~)r%~s0*#{1Tb1LrMb0PC%YqI@qZ^C)!oZtDK zb1v_`cb;Fhc2A@Nekj(>JI%aDTkMhqtwrJ;0!Dqac$uFH*EKk`9GBq~q&Av~5u?OM z@iwO{NKW4F(K>i1ZxtjDMv;^4uHwbhnT{boWg#IL^mw3ISSon5Cf-BxMHrpJ65}){ zv5^3=A5!;T)66QCINs@XxP7cnhu1FKcuC@YB%e_did{~REP0D%5{}dW#HbJH3m`R^ zQ>?&KlqUQZF2E_Al2fg~VmwltWuIH1At5uy6AY(h{!pYW#ksk;*$>GN{&0F3n^w^- zLWQL=Mxl0_38QecSK?)x%ZZUnwvmk!2nwm3bPsdAD@iU}r; z#wC0S7GDdtP?T)3xr`Rc<>0+$x=T}oEqd6VJ_pLb&jFXurE)&5ik$cLTs$|Q>&I1c z0{1-U;$G);T*fnh@cjw4!HFou^28%E{fS4Wf<7`QE7b6s37_Q~YS8I)BV4OBhSSZ> zd0pMf2IATA<;hg4H+Nh;px+P(X!5dNq;^BSy<2awSQ3Yr%mLIsb?Z4bwbypt>7se&9?`^7 zy(63J5BZ(dyQqEGvRnPBT`_ayO{ypOA4E`oUE|(XJrVbuDRGqd)L=i!=Ukf%t#(yb?YlJ&O-R9-GEx=Z7AbE0oh{K~9$CFR{xX;49aL;hykUu0x? z2;~n97<`82pD=ygZHl*yO*>5eKj*tTp{_IIegXRzf1IVfou9VfqInEe)@xL6)c$l4 z><8kmfPL*^=sOU7wFUfZquVG?;N-sVLEp3scyu|ccHs3Dv`~3HYW{aLZ_dkiS}2cy z(VBLuH<#XQ1>B9g7N}=qLmTxg%7hD)PuKDBdEhTpoCjRdnr}gmt*rwb-hL2p$!U8) z#$|2+|CpM6z@O9#`_Y_|z7zacLpHN~F`t3IN#6+e8H?&bZ@9J_^geTU0LCI!p3;{Q3&U+s1H5FIRy7mE`4sKQ~|{@UB``!|V~PkIQ!%-jiPe z{)8?jQ{QL2qX+iXSHkkG`=OH6b&v6%-^B99_$r~#1+!TnwwZp&bK65^<0qG!{1;$ zyL#ed3IW$>+7JGw)o{)O@!7|~-dS)0BO-vR? z!h<)hcY^%a7-dh4IEtsQ!v7GE@@RlihEdpP?U=FJF)-+>crut{F#?5|=pgUGWZooI zqp%X*?xmgyDBNL{jKoQ%{cw}lMrLs*xm0`XwqiO?lSw*+&C*`lZmF0pmWh613w_L* n2i8zd)ngUB9?}O=8Oc;mzCq~J-}^mcbOgxkiAsfn};9$41tbjEn)3*E6aC$!m;jCMz*VvKCaPlqOAXU{>H{&&f~smb{%lg~3NNT!xdNy-q(5cg(iosuEhJ|$?1hBqS+ z228%kvSP9tn*`8kdp4c=1||lEvuDnnk!8JZZwv&x#n0G-_{B{R>}SoKdGo)|V=&)m z?qZO9u}|e=dj=p_aB`o08W5O;UI(e0*;=#>B;HV%_y8=Pu=EC4pL5C)5bbk$ha1U(3gzL{h3VOsl9)WzK zHk0u!$bjI4l^?)9{Idh>kjO7HKY@M9boL3@AyTGqLHc+q`=5Xv_$>A#NdB4q!gpYE z#5X?!iC2DS`3RyTH@|-cwx=oRg?&9J4$s|x1$MwZp@(1t=5T>&$*PWrAOn_#@_;SA zdD{gd|L!W-p+2I@VDXvf7DMEA|3>Gg|QiO<4j()@e sc46nOM~m~g8D+~eTr(;%s=b-KnY|f7X|}X>ibh6xhBrubayO4D08;yFSpWb4 diff --git a/results/benchmark_tf_wav.pickle b/results/benchmark_tf_wav.pickle index c9008cc14eb4a90e3b6a3b81d0577e7d9093e052..0c5c101f19bb3e749c11019fb9dcd6315c276dd9 100644 GIT binary patch literal 3264 zcmeHKdrVVT7;kBdme&METqC|VMI^4%bh@c%888*D;_DA3&ULr+wzpY(+uR4zOAWInbg+u!yi{oV8X zzTfwK=k(lrzXtUUhhjAFLGgZ8aIliOz$bEMr^tFajEvc=%r1fJdOWiP7vof9usH~c z(WJZm-Ga=C0_%~?URGdToG4)wlj-plyu3o4W6-B=Bmo|~SLoo1ILT~hC6X`7CUBc< zIRfE`fR9Fo(QBGnuO?0s6t6#^*6CF|vYQn}HbC;(M6SRmNV2FD$V83|;E2%}vMz9` z$Bd>FXKC%Y9IwHtjF!=tVm=8O9CE9FNoGZvl!Nq=?DJ!$g80N(;tri zzXK?S6>TnZra1CrikM#%ZXhFZb~?R&&V~8K;RZ6WirwwQyfxfF27kbz*fF0GZXl!N zQv`?8?cp&0T)2V8kmD-)Bo_0T;RZQ+1#W);^I72riUKd2*US1bpB-+XSlMZFkh{~t z+2Bk*&xaW(PIkI|HmB(GvWkQ5(von4-fR!v2im{y17& zTun~MAaMtVxe+VD?5OjJG|sB_^+w90kC#T!`AZ8E3{+ouc}panPx&B!gywJ7x#DS@ z#EByb86LsNz^a+RL>>qw|1{!q<&q>tzIkPQ^lk4)UJ7aUo_~7&JR(Y zbH(jA>Q~>mO$YU59=T2ZgO!b1sB_tiL$v--uD6$B{_wlkY2C9ftiK6-pt6m|>1T3p zLA;4C^Z*v`y+Z4-%$RhT#+$P4CFkM=h^yJL7yK%$tu#*l=B<~2ujqhzsOpSr*PLpDdg@P{0Q^W> z4EfJg)dFU%Xac;JRtRak!O~X&Gxk>i|M|oK_(@4kkS8Xm3iu@lUxT>w7ghqF z{^9Gu_a7)$=L6fo-m&rr(APVvfuDW81u)R?jp~060iLdS2Qcn}THl@p4eEZ(+M&j| zc^Py#vjOHaops=!vbYv_^o5EZT^-~*H(aCE=h_W^jh!_R?_%fx@T({60u0!yDfXVM z9Rgifq8ex5Yy;@Zs;en~=3L|r$di3oJx9kpYP=)m&A=xkweHV;tW)Eg>p}nRm+wQ~ z3j8+s<$m1>IPXw5*!zbakT-gHH(+xq2K+8=Klq{MD!})Wy8zRB)%vgGhd@7Q=z#b) zoo%4&v8ccQxS)D|O()g!J<=Nly*^g0FW_o~I(sJzz)v$a050zf0Don8JH)d{BINm` zTRrdnt80M2mh}o?!8~=J^K;5UkJu8x_L8kuOrC_$wZ-y}kcO6zfAF;xL3%l8-uUT! z3OsnzMmxxV)oAZ%_!%sH75)c7>fHja7^BG9<~dKB=Rl*cXGvp@`6v`=r;WUXNxw;| zMv;ZAN1>MaXsp*I+K7>K`(y2joAlxWxim-~cL8muNhckl_R-GwB5F^%_IB?hZ}6#V&d??d}QD8MK(8Il5NwIDfLtQ7Q_WkJr`f9F--f&PZan zW`p=dqc?DN&R(xOTT@zDB6>BlA*F&nS?Y40DRoJrpiLF8YV~PczN)hag*eMQZEs;{ou2IyJzHu|e=fUbVh^WCZ$H zwdy-i{elE2oRov=fIt1fhy7#dv$G_C^Sy6;sMqcECH=f?KG+Mw>ZXxMz9kOhCau*& zxJi5ZAO>Bt3?o3lX$W|>SLHvw{~UGiq30NQYcGN*cbZ><52dM__+z~n=Y~^0^lx*H z+gLuis_pR+5ED_7NS1#c@WR-+12+)9YDe9(F}V?P!#$=DX(UwljzhPt)=zxqFMk8d z@-KeqnxCl~u%2 z8n2|4B@m$17{?&PvA3j-35Q{zoP7xdsnaLW=<|YkApa_XL3KF`z=Lt<>=`!~pzpdK zCc47+|AtB5p7mu@n3M0}!w>{+;9%vWH4)O_SlkjJ1|`^pTE5Yt@=hs2jBR}_5d?hO z2;O{U8GNki#54veMbij=`Db9;*Z_EAR>} Date: Tue, 21 Jan 2020 20:46:54 +0100 Subject: [PATCH 20/30] update readme --- README.md | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 37b34f1..9e4a33a 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ The aim of his repository is to evaluate the loading performance of various audi This is relevant for machine learning models that today often process raw (time domain) audio and assembling a batch on the fly. It is therefore important to load the audio as fast as possible. At the same time a library should ideally support a variety of uncompressed and compressed audio formats and also is capable of loading only chunks of audio (seeking). The latter is especially important for models that cannot easily work with samples of variable length (convnets). -## Tested Libraries +## Tested Libraries | Library | Version | Short-Name/Code | Out Type | Supported codecs | Excerpts/Seeking | |-------------------------|---------|-----------------------|-------------------|-------------------| -----------------| @@ -16,16 +16,15 @@ This is relevant for machine learning models that today often process raw (time | [audioread](https://github.com/beetbox/audioread) ([gstreamer](https://gstreamer.freedesktop.org/)) | 2.1.8 | [`ar_gstreamer`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L67) | Numpy Array | all of FFMPEG | ❌ | | [audioread](https://github.com/beetbox/audioread) ([FFMPEG](https://www.ffmpeg.org/)) | 2.1.8 | [`ar_ffmpeg`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L87) | Numpy Array | all of FFMPEG | ❌ | | [librosa](https://librosa.github.io/) | 0.7.2 | [`librosa`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L104) | Numpy Array | relies on audioread | ✅ | -| [tensorflow `tf.io.audio.decode_wav`](https://www.tensorflow.org/api_docs/python/tf/contrib/ffmpeg/decode_audio) | 2.1 | [`tf_decode_wav`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L22) | Tensorflow Tensor | PCM (only 16 bit) | ❌ | +| [tensorflow `tf.io.audio.decode_wav`](https://www.tensorflow.org/api_docs/python/tf/contrib/ffmpeg/decode_audio) | 2.1.0 | [`tf_decode_wav`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L22) | Tensorflow Tensor | PCM (only 16 bit) | ❌ | | [tensorflow-io `from_audio`](https://www.tensorflow.org/io/api_docs/python/tfio/v0/IOTensor#from_audio) | 0.11.0 | [`tfio_fromaudio`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L22) | Tensorflow Tensor | PCM, Ogg, Flac | ✅ | - -| [torchaudio](https://github.com/pytorch/audio) | 0.3.2 | [`torchaudio`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L45) | PyTorch Tensor | all codecs supported by Sox | ✅ | - +| [torchaudio](https://github.com/pytorch/audio) (sox) | 0.4.0 | [`torchaudio`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L45) | PyTorch Tensor | all codecs supported by Sox | ✅ | +| [torchaudio](https://github.com/pytorch/audio) (soundfile) | 0.4.0| [`torchaudio`](https://github.com/faroit/python_audio_loading_benchmark/blob/master/loaders.py#L45) | PyTorch Tensor | all codecs supported by Sox | ✅ | ### Not included * __[audioread (coreaudio)](https://github.com/beetbox/audioread/blob/master/audioread/macca.py)__: only available on macOS. * __[madmom](https://github.com/CPJKU/madmom)__: same ffmpeg interface as `ar_ffmpeg`. -* __[pymad](https://github.com/jaqx0r/pymad)__: only support for MP3 +* __[pymad](https://github.com/jaqx0r/pymad)__: only support for MP3, also very slow. * __[python builtin `wave`](https://docs.python.org/3.7/library/wave.html)__: TODO (open for PR) ## Results @@ -112,4 +111,4 @@ The data is generated by using a shell script. To generate the data in the folde ## Contribution -We encourage interested users to contribute to this repository in the issue section and via pull requests. Particularly interesting are notifications of new tools and new versions of existing packages. Since benchmarks are subjective, I (@faroit) will reran the benchmark on our server again. \ No newline at end of file +We encourage interested users to contribute to this repository in the issue section and via pull requests. Particularly interesting are notifications of new tools and new versions of existing packages. Since benchmarks are subjective, I (@faroit) will reran the benchmark on our server again. From 967bece9b8f51dcc5af9a4d93381fb800497afc6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Wed, 22 Jan 2020 15:16:33 +0100 Subject: [PATCH 21/30] ignore through exception --- benchmark_tf.py | 95 +++++++++++++++++++++++++------------------------ 1 file changed, 49 insertions(+), 46 deletions(-) diff --git a/benchmark_tf.py b/benchmark_tf.py index ffc1339..d3597c3 100644 --- a/benchmark_tf.py +++ b/benchmark_tf.py @@ -64,53 +64,56 @@ def _py_loader_function(fp): print("Testing: %s" % lib) for root, dirs, fnames in sorted(os.walk('AUDIO')): for audio_dir in dirs: - duration = int(audio_dir) - audio_files = get_files( - dir=os.path.join(root, audio_dir), - extension=args.ext - ) - - dataset = tf.data.Dataset.from_tensor_slices(audio_files) - if lib in ["tf_decode_wav"]: - dataset = dataset.map( - lambda x: loaders.load_tf_decode_wav(x), - num_parallel_calls=1 + try: + duration = int(audio_dir) + audio_files = get_files( + dir=os.path.join(root, audio_dir), + extension=args.ext ) - elif lib in ["tfio_fromaudio"]: - dataset = dataset.map( - lambda x: loaders.load_tfio_fromaudio(x), - num_parallel_calls=1 - ) - elif lib in ["tfio_fromffmpeg"]: - dataset = dataset.map( - lambda x: loaders.load_tfio_fromffmpeg(x), - num_parallel_calls=1 - ) - else: - loader_function = getattr(loaders, 'load_' + lib) - dataset = dataset.map( - lambda filename: tf.py_function( - _make_py_loader_function(loader_function), - [filename], - [tf.float32] - ), - num_parallel_calls=4 - ) - - dataset = dataset.apply(tf.data.experimental.ignore_errors()) - # dataset = dataset.batch(4) - start = time.time() - for audio in dataset: - value = tf.reduce_max(audio) - - end = time.time() - - store.append( - ext=args.ext, - lib=lib, - duration=duration, - time=float(end-start) / len(audio_files), - ) + dataset = tf.data.Dataset.from_tensor_slices(audio_files) + if lib in ["tf_decode_wav"]: + dataset = dataset.map( + lambda x: loaders.load_tf_decode_wav(x), + num_parallel_calls=1 + ) + elif lib in ["tfio_fromaudio"]: + dataset = dataset.map( + lambda x: loaders.load_tfio_fromaudio(x), + num_parallel_calls=1 + ) + elif lib in ["tfio_fromffmpeg"]: + dataset = dataset.map( + lambda x: loaders.load_tfio_fromffmpeg(x), + num_parallel_calls=1 + ) + else: + loader_function = getattr(loaders, 'load_' + lib) + dataset = dataset.map( + lambda filename: tf.py_function( + _make_py_loader_function(loader_function), + [filename], + [tf.float32] + ), + num_parallel_calls=4 + ) + + # dataset = dataset.apply(tf.data.experimental.ignore_errors()) + # dataset = dataset.batch(4) + start = time.time() + + for audio in dataset: + value = tf.reduce_max(audio) + + end = time.time() + + store.append( + ext=args.ext, + lib=lib, + duration=duration, + time=float(end-start) / len(audio_files), + ) + except: + continue store.df.to_pickle("results/benchmark_%s_%s.pickle" % ("tf", args.ext)) From 493d4a49560e949ee51392998446dc4858965bc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Wed, 22 Jan 2020 15:17:39 +0100 Subject: [PATCH 22/30] do not copy numpy data again --- benchmark_pytorch.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/benchmark_pytorch.py b/benchmark_pytorch.py index f44ad3a..cbb8a1d 100644 --- a/benchmark_pytorch.py +++ b/benchmark_pytorch.py @@ -38,7 +38,7 @@ def __init__( def __getitem__(self, index): audio = self.loader_function(self.audio_files[index]) - return torch.FloatTensor(audio).view(1, 1, -1) + return torch.from_numpy(audio).view(1, 1, -1) def __len__(self): return len(self.audio_files) From 48b9b21b7d7d59cdd8d3491a15fa405f90ce1362 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Wed, 22 Jul 2020 15:54:08 +0200 Subject: [PATCH 23/30] update torchaudio --- requirements.txt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/requirements.txt b/requirements.txt index bd8d00e..be391f4 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,15 +3,14 @@ tensorflow==2.1.0 audioread==2.1.8 librosa==0.7.2 SoundFile==0.10.2 -torch==1.4.0 +torch==1.5.1 pydub==0.23.1 sox==1.3.7 -torchaudio==0.4.0 +torchaudio==0.5.1 aubio==0.4.9 -tensorflow_io==0.11.0 +tensorflow_io==0.12.0 PyGObject seaborn pandas ipython -torchvision cffi From ce5929f31b704d07f062addf34d954255eea7445 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Wed, 22 Jul 2020 15:54:41 +0200 Subject: [PATCH 24/30] update librosa to 0.8.0 --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index be391f4..d78db3c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ scipy==1.4.1 tensorflow==2.1.0 audioread==2.1.8 -librosa==0.7.2 +librosa==0.8.0 SoundFile==0.10.2 torch==1.5.1 pydub==0.23.1 From 0f2ba30f721243e661d4adc6c8d6e1848fcf60eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Mon, 6 Sep 2021 09:46:55 +0200 Subject: [PATCH 25/30] add AUDIO dir --- AUDIO/.gitkeep | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 AUDIO/.gitkeep diff --git a/AUDIO/.gitkeep b/AUDIO/.gitkeep new file mode 100644 index 0000000..e69de29 From 006d801fbd4181ad7f0874d2a10cb4788368ed4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Mon, 6 Sep 2021 10:00:47 +0200 Subject: [PATCH 26/30] update requirements --- requirements.txt | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/requirements.txt b/requirements.txt index d78db3c..c482046 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,15 +1,15 @@ -scipy==1.4.1 -tensorflow==2.1.0 -audioread==2.1.8 -librosa==0.8.0 -SoundFile==0.10.2 -torch==1.5.1 -pydub==0.23.1 -sox==1.3.7 -torchaudio==0.5.1 +scipy==1.7.1 +tensorflow==2.6.0 +audioread==2.1.9 +librosa==0.8.1 +SoundFile==0.10.3.post1 +torch==1.9.0 +pydub==0.25.1 +sox==1.4.1 +soxbindings +torchaudio==0.9.0 aubio==0.4.9 -tensorflow_io==0.12.0 -PyGObject +tensorflow_io==0.20.0 seaborn pandas ipython From 39b0bf1092c3507e35fc6b496b5c69dbc2784711 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Mon, 6 Sep 2021 14:39:34 +0200 Subject: [PATCH 27/30] update codebase --- benchmark_np.py | 3 +- benchmark_pytorch.py | 11 +++--- benchmark_tf.py | 90 ++++++++++++++++++++++---------------------- loaders.py | 35 +++++++++++------ plot.py | 22 ++++++----- 5 files changed, 89 insertions(+), 72 deletions(-) diff --git a/benchmark_np.py b/benchmark_np.py index 9b0a82e..da83a28 100644 --- a/benchmark_np.py +++ b/benchmark_np.py @@ -60,7 +60,8 @@ def __len__(self): # audio formats to be bench # libraries to be benchmarked libs = [ - 'ar_gstreamer', + 'stempeg', + 'soxbindings', 'ar_ffmpeg', 'aubio', 'pydub', diff --git a/benchmark_pytorch.py b/benchmark_pytorch.py index cbb8a1d..9d8b514 100644 --- a/benchmark_pytorch.py +++ b/benchmark_pytorch.py @@ -38,7 +38,7 @@ def __init__( def __getitem__(self, index): audio = self.loader_function(self.audio_files[index]) - return torch.from_numpy(audio).view(1, 1, -1) + return torch.as_tensor(audio).view(1, 1, -1) def __len__(self): return len(self.audio_files) @@ -62,7 +62,8 @@ def __len__(self): # audio formats to be bench # libraries to be benchmarked libs = [ - 'ar_gstreamer', + 'stempeg', + 'soxbindings', 'ar_ffmpeg', 'aubio', 'pydub', @@ -73,13 +74,13 @@ def __len__(self): ] if args.ext != "mp4": - libs.append('torchaudio_sox') - libs.append('torchaudio_soundfile') + libs.append('torchaudio-sox_io') + libs.append('torchaudio-soundfile') for lib in libs: print("Testing: %s" % lib) if "torchaudio" in lib: - backend = lib.split("torchaudio_")[-1] + backend = lib.split("torchaudio-")[-1] import torchaudio torchaudio.set_audio_backend(backend) call_fun = "load_torchaudio" diff --git a/benchmark_tf.py b/benchmark_tf.py index d3597c3..69eb36e 100644 --- a/benchmark_tf.py +++ b/benchmark_tf.py @@ -48,7 +48,8 @@ def _py_loader_function(fp): store = utils.DF_writer(columns) libs = [ - 'ar_gstreamer', + 'stempeg', + 'soxbindings', 'ar_ffmpeg', 'aubio', 'pydub', @@ -57,63 +58,64 @@ def _py_loader_function(fp): 'scipy', 'scipy_mmap', 'tf_decode_wav', - 'tfio_fromaudio', + 'tfio_fromaudio' ] for lib in libs: print("Testing: %s" % lib) for root, dirs, fnames in sorted(os.walk('AUDIO')): for audio_dir in dirs: - try: - duration = int(audio_dir) - audio_files = get_files( - dir=os.path.join(root, audio_dir), - extension=args.ext + append = False + duration = int(audio_dir) + audio_files = get_files( + dir=os.path.join(root, audio_dir), + extension=args.ext + ) + + dataset = tf.data.Dataset.from_tensor_slices(audio_files) + if lib in ["tf_decode_wav"]: + dataset = dataset.map( + lambda x: loaders.load_tf_decode_wav(x), + num_parallel_calls=1 ) + elif lib in ["tfio_fromaudio"]: + dataset = dataset.map( + lambda x: loaders.load_tfio_fromaudio(x), + num_parallel_calls=1 + ) + elif lib in ["tfio_fromffmpeg"]: + dataset = dataset.map( + lambda x: loaders.load_tfio_fromffmpeg(x), + num_parallel_calls=1 + ) + else: + loader_function = getattr(loaders, 'load_' + lib) + dataset = dataset.map( + lambda filename: tf.py_function( + _make_py_loader_function(loader_function), + [filename], + [tf.float32] + ), + num_parallel_calls=1 + ) + + dataset = dataset.apply(tf.data.experimental.ignore_errors()) + + start = time.time() - dataset = tf.data.Dataset.from_tensor_slices(audio_files) - if lib in ["tf_decode_wav"]: - dataset = dataset.map( - lambda x: loaders.load_tf_decode_wav(x), - num_parallel_calls=1 - ) - elif lib in ["tfio_fromaudio"]: - dataset = dataset.map( - lambda x: loaders.load_tfio_fromaudio(x), - num_parallel_calls=1 - ) - elif lib in ["tfio_fromffmpeg"]: - dataset = dataset.map( - lambda x: loaders.load_tfio_fromffmpeg(x), - num_parallel_calls=1 - ) - else: - loader_function = getattr(loaders, 'load_' + lib) - dataset = dataset.map( - lambda filename: tf.py_function( - _make_py_loader_function(loader_function), - [filename], - [tf.float32] - ), - num_parallel_calls=4 - ) - - # dataset = dataset.apply(tf.data.experimental.ignore_errors()) - # dataset = dataset.batch(4) - start = time.time() - - for audio in dataset: - value = tf.reduce_max(audio) - - end = time.time() + for audio in dataset: + value = tf.reduce_max(audio) + if value > 0.0: + append = True + end = time.time() + + if append: store.append( ext=args.ext, lib=lib, duration=duration, time=float(end-start) / len(audio_files), ) - except: - continue store.df.to_pickle("results/benchmark_%s_%s.pickle" % ("tf", args.ext)) diff --git a/loaders.py b/loaders.py index 7ed73ca..f6a172c 100644 --- a/loaders.py +++ b/loaders.py @@ -1,6 +1,5 @@ from scipy.io import wavfile import audioread.rawread -import audioread.gstdec import audioread.ffdec import matplotlib.pyplot as plt import soundfile as sf @@ -11,7 +10,9 @@ import tensorflow as tf import tensorflow_io as tfio import librosa -import sox +import soxbindings as sox +import stempeg + """ Some of the code taken from: @@ -56,6 +57,20 @@ def load_torchaudio(fp): return sig +def load_stempeg(fp): + sig = stempeg.read._read_ffmpeg( + fp, + sample_rate=44100, + channels=1, + start=None, + duration=None, + dtype=np.float32, + ffmpeg_format='f32le', + stem_idx=0 + ) + return sig + + def load_soundfile(fp): sig, rate = sf.read(fp) return sig @@ -73,16 +88,6 @@ def load_scipy_mmap(fp): return sig -def load_ar_gstreamer(fp): - with audioread.gstdec.GstAudioFile(fp) as f: - total_frames = 0 - for buf in f: - sig = _convert_buffer_to_float(buf) - sig = sig.reshape(f.channels, -1) - total_frames += sig.shape[1] - return sig - - def load_ar_ffmpeg(fp): with audioread.ffdec.FFmpegAudioFile(fp) as f: total_frames = 0 @@ -93,6 +98,12 @@ def load_ar_ffmpeg(fp): return sig +def load_soxbindings(fp): + tfm = sox.Transformer() + array_out = tfm.build_array(input_filepath=fp) + return array_out + + def load_pydub(fp): song = AudioSegment.from_file(fp) sig = np.asarray(song.get_array_of_samples(), dtype='float32') diff --git a/plot.py b/plot.py index ecc24ef..5872f61 100644 --- a/plot.py +++ b/plot.py @@ -3,35 +3,37 @@ import matplotlib.pyplot as plt -for package in ['pytorch', 'tf', 'np', 'metadata']: +for package in ['np', 'pytorch', 'tf']: dfs = [] for ext in ["wav", "mp3", "mp4", "ogg", "flac"]: - dfs.append( - pd.read_pickle("results/benchmark_%s_%s.pickle" % (package, ext)) - ) + try: + dfs.append( + pd.read_pickle("results/benchmark_%s_%s.pickle" % (package, ext)) + ) + except FileNotFoundError: + continue df = pd.concat(dfs, ignore_index=True) sns.set_style("whitegrid") - ordered_libs = df.time.groupby( - df.lib + ordered_exts = df.time.groupby( + df.ext ).mean().sort_values().index.tolist() fig = plt.figure() g = sns.catplot( x="time", - y="lib", + y="ext", kind='bar', - hue='ext', - order=ordered_libs, + hue='lib', + order=ordered_exts, data=df, height=6.6, aspect=1, legend=False ) - g.set(xscale="log") g.despine(left=True) plt.legend(loc='upper right') g.savefig("results/benchmark_%s.png" % package) From 4cca6073343b81cdd009ab371ac18c1dc434c68e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Mon, 6 Sep 2021 14:40:04 +0200 Subject: [PATCH 28/30] add stempeg --- requirements.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/requirements.txt b/requirements.txt index c482046..9d607e7 100644 --- a/requirements.txt +++ b/requirements.txt @@ -10,6 +10,7 @@ soxbindings torchaudio==0.9.0 aubio==0.4.9 tensorflow_io==0.20.0 +stempeg==0.2.3 seaborn pandas ipython From 116927be4a4dc45c40e98cf8be54c7cbb55ef8b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Mon, 6 Sep 2021 14:53:41 +0200 Subject: [PATCH 29/30] add repeat --- benchmark_np.py | 69 ++++++++++++++++++++++---------------------- benchmark_pytorch.py | 8 +++-- benchmark_tf.py | 13 +++++---- 3 files changed, 47 insertions(+), 43 deletions(-) diff --git a/benchmark_np.py b/benchmark_np.py index da83a28..287ef50 100644 --- a/benchmark_np.py +++ b/benchmark_np.py @@ -1,13 +1,11 @@ -import matplotlib -matplotlib.use('Agg') import os import os.path -import random -import time +import timeit import argparse import utils -import loaders import numpy as np +import functools +import loaders def get_files(dir, extension): @@ -26,22 +24,28 @@ class AudioFolder(object): def __init__( self, root, - download=True, - extension='wav', - lib="librosa", + extension='wav' ): self.root = os.path.expanduser(root) self.data = [] self.audio_files = get_files(dir=self.root, extension=extension) - self.loader_function = getattr(loaders, lib) def __getitem__(self, index): - return self.loader_function(self.audio_files[index]) + return self.audio_files[index] def __len__(self): return len(self.audio_files) +def test_np_loading(fp, lib): + load_function = getattr(loaders, 'load_' + lib) + audio = load_function(fp) + if np.max(audio) > 0: + return True + else: + return False + + if __name__ == "__main__": parser = argparse.ArgumentParser(description='Process some integers.') @@ -60,6 +64,7 @@ def __len__(self): # audio formats to be bench # libraries to be benchmarked libs = [ + 'scipy', 'stempeg', 'soxbindings', 'ar_ffmpeg', @@ -67,7 +72,6 @@ def __len__(self): 'pydub', 'soundfile', 'librosa', - 'scipy', 'scipy_mmap' ] @@ -75,28 +79,25 @@ def __len__(self): print("Testing: %s" % lib) for root, dirs, fnames in sorted(os.walk('AUDIO')): for audio_dir in dirs: - try: - duration = int(audio_dir) - dataset = AudioFolder( - os.path.join(root, audio_dir), - lib='load_' + lib, - extension=args.ext - ) - - start = time.time() - - for fp in dataset.audio_files: - audio = dataset.loader_function(fp) - np.max(audio) - - end = time.time() - store.append( - ext=args.ext, - lib=lib, - duration=duration, - time=float(end-start) / len(dataset), - ) - except: - continue + duration = int(audio_dir) + dataset = AudioFolder( + os.path.join(root, audio_dir), + extension=args.ext + ) + + # for fp in dataset.audio_files: + for fp in dataset.audio_files: + time = min(timeit.repeat( + functools.partial(test_np_loading, fp, lib), + number=3, + repeat=3 + )) + + store.append( + ext=args.ext, + lib=lib, + duration=duration, + time=time, + ) store.df.to_pickle("results/benchmark_%s_%s.pickle" % ("np", args.ext)) \ No newline at end of file diff --git a/benchmark_pytorch.py b/benchmark_pytorch.py index 9d8b514..1e8aff2 100644 --- a/benchmark_pytorch.py +++ b/benchmark_pytorch.py @@ -50,6 +50,7 @@ def __len__(self): parser.add_argument('--ext', type=str, default="wav") args = parser.parse_args() + repeat = 3 columns = [ 'ext', 'lib', @@ -103,15 +104,16 @@ def __len__(self): ) start = time.time() - for X in data: - X.max() + for i in range(repeat): + for X in data: + X.max() end = time.time() store.append( ext=args.ext, lib=lib, duration=duration, - time=float(end-start) / len(data), + time=float(end-start) / (len(data) * repeat), ) except: "Error but continue" diff --git a/benchmark_tf.py b/benchmark_tf.py index 69eb36e..5f44b24 100644 --- a/benchmark_tf.py +++ b/benchmark_tf.py @@ -37,7 +37,7 @@ def _py_loader_function(fp): ) parser.add_argument('--ext', type=str, default="wav") args = parser.parse_args() - + repeat = 3 columns = [ 'ext', 'lib', @@ -103,10 +103,11 @@ def _py_loader_function(fp): start = time.time() - for audio in dataset: - value = tf.reduce_max(audio) - if value > 0.0: - append = True + for i in range(repeat): + for audio in dataset: + value = tf.reduce_max(audio) + if value > 0.0: + append = True end = time.time() @@ -115,7 +116,7 @@ def _py_loader_function(fp): ext=args.ext, lib=lib, duration=duration, - time=float(end-start) / len(audio_files), + time=float(end-start) / (len(audio_files) * repeat), ) store.df.to_pickle("results/benchmark_%s_%s.pickle" % ("tf", args.ext)) From b76dbe7cd973ee3aa41f70162afedbfddf792a1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian-Robert=20St=C3=B6ter?= Date: Mon, 6 Sep 2021 19:19:07 +0200 Subject: [PATCH 30/30] fix tf --- benchmark_tf.py | 6 +++--- loaders.py | 9 ++++++--- results/benchmark_metadata.png | Bin 19328 -> 0 bytes results/benchmark_metadata_flac.pickle | Bin 2087 -> 1605 bytes results/benchmark_metadata_mp3.pickle | Bin 1852 -> 1370 bytes results/benchmark_metadata_mp4.pickle | Bin 1389 -> 1370 bytes results/benchmark_metadata_ogg.pickle | Bin 1851 -> 1604 bytes results/benchmark_metadata_wav.pickle | Bin 2086 -> 1604 bytes results/benchmark_np.png | Bin 23842 -> 28194 bytes results/benchmark_np_flac.pickle | Bin 2323 -> 2535 bytes results/benchmark_np_mp3.pickle | Bin 2088 -> 2300 bytes results/benchmark_np_mp4.pickle | Bin 2088 -> 2064 bytes results/benchmark_np_ogg.pickle | Bin 2092 -> 2304 bytes results/benchmark_np_wav.pickle | Bin 2787 -> 2999 bytes results/benchmark_pytorch.png | Bin 29417 -> 34906 bytes results/benchmark_pytorch_flac.pickle | Bin 2807 -> 3022 bytes results/benchmark_pytorch_mp3.pickle | Bin 2327 -> 2542 bytes results/benchmark_pytorch_mp4.pickle | Bin 2088 -> 2064 bytes results/benchmark_pytorch_ogg.pickle | Bin 2337 -> 2791 bytes results/benchmark_pytorch_wav.pickle | Bin 3271 -> 3486 bytes results/benchmark_tf.png | Bin 31269 -> 33551 bytes results/benchmark_tf_flac.pickle | Bin 3265 -> 2774 bytes results/benchmark_tf_mp3.pickle | Bin 3264 -> 2539 bytes results/benchmark_tf_mp4.pickle | Bin 3264 -> 2064 bytes results/benchmark_tf_ogg.pickle | Bin 3264 -> 2543 bytes results/benchmark_tf_wav.pickle | Bin 3264 -> 3476 bytes 26 files changed, 9 insertions(+), 6 deletions(-) delete mode 100644 results/benchmark_metadata.png diff --git a/benchmark_tf.py b/benchmark_tf.py index 5f44b24..6fd5b6e 100644 --- a/benchmark_tf.py +++ b/benchmark_tf.py @@ -48,6 +48,7 @@ def _py_loader_function(fp): store = utils.DF_writer(columns) libs = [ + 'tfio_fromaudio', 'stempeg', 'soxbindings', 'ar_ffmpeg', @@ -58,7 +59,6 @@ def _py_loader_function(fp): 'scipy', 'scipy_mmap', 'tf_decode_wav', - 'tfio_fromaudio' ] for lib in libs: @@ -80,7 +80,7 @@ def _py_loader_function(fp): ) elif lib in ["tfio_fromaudio"]: dataset = dataset.map( - lambda x: loaders.load_tfio_fromaudio(x), + lambda x: loaders.load_tfio_fromaudio(x, args.ext), num_parallel_calls=1 ) elif lib in ["tfio_fromffmpeg"]: @@ -106,7 +106,7 @@ def _py_loader_function(fp): for i in range(repeat): for audio in dataset: value = tf.reduce_max(audio) - if value > 0.0: + if value: append = True end = time.time() diff --git a/loaders.py b/loaders.py index f6a172c..29b65fc 100644 --- a/loaders.py +++ b/loaders.py @@ -28,9 +28,12 @@ def load_tfio_fromffmpeg(fp): @tf.function -def load_tfio_fromaudio(fp): - audio = tfio.IOTensor.graph(tf.int16).from_audio(fp) - return tf.cast(audio.to_tensor(), tf.float32) / 32767.0 +def load_tfio_fromaudio(fp, ext="wav"): + if ext in ["wav", "flac", "mp4"]: + audio = tfio.IOTensor.graph(tf.float16).from_audio(fp) + return tf.cast(audio.to_tensor(), tf.float16) + else: + return tfio.IOTensor.graph(tf.float32).from_audio(fp).to_tensor() @tf.function diff --git a/results/benchmark_metadata.png b/results/benchmark_metadata.png deleted file mode 100644 index be192998375297631c4c26c7fb0408b1c9a4328b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19328 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 SioPuigB6pxmU-poz5fGKC{kqr diff --git a/results/benchmark_metadata_flac.pickle b/results/benchmark_metadata_flac.pickle index 778f777011d0c862454367775a85a815b6469e78..71a37b60e25f00a6b253414ee1b950326a5b3bfe 100644 GIT binary patch literal 1605 zcmcIk-D^}w6yKZdrip6=l~jX8r3IVyVVgED(pEOfilU=yO&hU_Ugz$eyK~L`Sni!m zTv160@dHN$Gp$5u-&^pd1=ChRA4*?rg}xMhlOlceFHqVuXEr3Ml0KBquzTjr{N~KL z=i@h3`278@91gj*Nh6o0<$9d3vX{`1DcQ4&3c4HDv#Ru&I;RF?-VPgylAD*p{YbDR zqCr{?X+#?=NtIkZ8pQR914dV~V9d*+x`^Wd4qt21MEEq&`)|D3lB2H!v?pSdHYxy~ zQDbU=uPL2VG9S5qs7Oaz6Uvc&Q5H5^#`!P{z;=?*7IB*U zWLA;fjH+6Wx~Pp4i*%5|3yN=$1y{71Oke6axI}tIH%ATr{4nC#llzD}bK)+(drI8HcfRhugZn>U z{}K1cdVfItm(S)=|LXVeQTN|9`g`vf8JwTTdp~v0qn+_CBiCLt=ie5Mo<6-@QGBcH z@RqgbhyQ5L93&q~37T43RV8$ZmZ1>xi=}W;>F(XQoQPa@nx$ojra*+NY|TP@BiMuN z^CPmbutrLBfhN_<1)hg$$MTk)?6gp_Gw>ZHyWK3I!jB{1FyRBuVqfJW&A7D;JLstF zf0Zu@jT+jSF)f!k!2KFDqX0^UR+RZv#7#v8^@72|LYqt*2J!|<15VWrFL1maGC}bR qjzdpVA%MMsU%PA|vj#3V&>)B>Q`^m&(D76-JD?5&9>0`kPWf*+7*T%! literal 2087 zcmd5-OKclO81`cwoU{d{A|g@Rq&*Paf=sJWsZ|^N0E%G1v^J{3qcUTAoLN}!hJ6rQ zV3C4SKpIY+stQtj;K&7u@@mDQ7%5zWggDV6As#9Rkm5=e7Y@M8|F1>bf+bEcBke!) z|KImNc6a7qG)`_wMqr5Hd1}|Fm##W4OV?f6U{Va;Pknk2)+gkSW3nw%B2lg>r4$qE z@uuxF*QS=2Zcv-fG1rq~W8QMA&pnEJ3H;Pi%SU6;00yt2!xj_vtwQ1umEBmgMIO{y+{oRB24B=3t> z40S}V#W#tWBMVvK#DdLt{ zks?_OTcugI5{9kcVIerKV)0F4?C;8UsXeFbE^4{1R=%?!5}r?8U!@}q z&v)h}Iiwd%Eu!F)sWkYl{5D+^AL~^VBZrPlz8!Kj>K3g^e&GK+#gOl~RZfGN=}11) zZ;AvBDjIcfzbOViC$MXE(_)fm`b`n{oTlX2ep3uWW-g;O$#eat{^mD+j_6;XgB&J1 zNQ=Cwe!Ej-ggiwykXH#Klf)qpl4&yYU)%c?Fd<^~>rTdj>rO^QpN#xsEE4%*RgEwA zXWm*?!`zyg*5m4U2J}`aKN-)!y|cOv?Z1S28R}=ZWa@fc+J=6fAIE(mlvAO7rRQ%F z{rtEU;ym)<&C{A+H_k&*TxelEwG2 zl0%sc`Ikd~?JUGOvi&pQ|8}wi^5D4+=$~~vz}wUAKpdxxax#VbyPiS(_h(SPJ&O7d zmJs*)wRQd24~vxZlRlsvK3-0=mAeCoypkNUL2qFBiT{ccdc zd%ec11#o63epv*83(9>Vjf6v8EkC}qCsTh8rj0%uH;@72X*Hzsyt#Wy$*gZVo+5Q| zNhnjc`H2@!)`IsE7koz%orEZih?N6B7Ew|b`nDVzLIjX3nk*=inpOj8Q_X7UBu(l_ z=Zxa*GG~d&km--=2K&_fTuq;m>HDfwDqUTJg@2?75zLQ3Z8BcitN5w^*)m5H(+L#M z@3v(lO)Ljqidu?y@3xt)PJ@{^P!k`@nTuVgtdk-sNHnc;nt>m0;?0}IXo;OTEBE}T|UQZ zcFSXUuDr5~FJHjwTetf$ihKuK=Rce1Cw^_Ae0Y(fzi$Uayyse`f_{E|Uq$(wvu{yu z9(srT+Se7-&&w5*J8i4Tw|3Rep959omu^>4PgoW2Ykjba_w|Q0{h6_vzI^%v+Al7@ zNB=i?wWxTfth2Xa_WWO%O+oSDsQ~FRJ)ne!Ko2}bcJnD_m4@`u?cHgy2^JSj8pCwh zZ|K&%;)4vT&u_`x290yVg4v<|1yB~ygz%9WHX)SExQ?l0gOx;7IDrq1EgYCVh}*2M z$51IjgbvG&onncoU(vw~>2pf}oRP+oAyHQ*POB_}Y{Zo!n9U@l zs7QG>bu*SJh2du4;uxTWVX8ZfdE?-VuMpw4rEODlQ03jFS5j$y-WI^+&yVhyIs$NIJ=8QXpsHtz06tq>ogQq`Y#Cj#l$p6ia+o~uti*H&M^=WBv7dEANqI5RWz`O#EVee`4N3(?EP zV)4e;r%)Cr+ED-3+A+Pq(vABq*ImsU-mm48BU)}8j;3LJ^TPn*!>!t0^W%f4pBd#^ zc4ray`$mm3V@~5{S84m#V)syA`~!LIt%v88{n>NP^D6G^)s=B7W_vj~CGH2ZOl3 zda!dLD&Zwy#aO|sp_uZTH=lg~>IfDNzL9Ujhu5%Jz23?3zu@pssQQ%NgHXSez(%Dg z`!v$HHPVPp#-Pv?B(D@@3Dra#3AGNQ7G*;;>nTmMsK^c4aZp01sYrMk=mRD!Lryl6 zRHYoMctF>2Po+D=+xRd)1ZTllPWRzykQgscndd+r!iYmhfc~dC&SEc&=a@^e1@%iW G5&0L4HO0aJ diff --git a/results/benchmark_metadata_mp4.pickle b/results/benchmark_metadata_mp4.pickle index d0ebe1d6a2b6b60cac0b9775c47ad4c71df11b4c..c90542c153ff25e327eedd7ead59bc882fb4a52d 100644 GIT binary patch literal 1370 zcmbtUOHUL*5Z+~XRlp|+BGDj;M!`Xre}M?JT@~u0iqZm z;gz&{pvB-pjR!AYycy6C&t|=O@eg?PqIa#Xk${iL!S3vKS9NtwRrOcjt-`~hLI#K2 zRi%MVI9-KKzV2LpF;Ba%5M#80@*6;hfCsSVs)B1po87P49lp0o@e0$fVlKH@P zeMRcxvQVaM4idjQkp}N49{7$TIss7_5wpS|7Exje{j~xbLIjX3n#?PbnNodOQ_X1S zBunZ@`?TUMvS5peD$|$hhK{Sb+4MXovo}<^Tt4?52L6!}L@;*^YLoM;M-}h*pD7D8 zG2Kw{&VNl=PZQgPm!h`fUH_U)S7(cvxKNV-%2|j#*V0Lm3?!P>IZeZlH}dUk#pO*u z>&kcYR$U&xceOZKEY1O)F6kvb?vkreKt{UAJuP1N~nE5TI$iGgQEQI z3qv`+O>zC&o60@McgU#u5%ha#CoAdi)Na}+zc}ooJUD9M zI`Z-j-g|w28NX+~T}J)0{w35`o-U#O<`j>c8RoQc3Z4S?BzM*%QBEHUq_nrvjwQY@ZSu0^RTs`L(B*Q5w>F ze(g@1jkCCD(iqsG!O*RFHUJ$|pI?%N)jjfr4cwvr1W+E(gz%9$HZGLRd9JDC7CVWk zaKiu^Te!eIh}(RiX{ekaLNCkKzr_;KprV5r*6X?eI4=X(1@H_&UFKsERuyU28wQ&! z`efQMFdFnZ5RDFamG}&w35pq9gPx&60Hp!xY%&~=R&d)wJue)K4LhkqM^V8HkD3g~ JZ8lEK;tw$~3b6nH literal 1389 zcmbtUOKTKC5T4nciFqOk2Hi`Hhr~?|gE4zBkhmHpJ{mU|!Gju>p55N`ka=w8VX|N# z5)uitr)`z^1H?m!XKw+))A|Fv=t-|x5f7rE)jbL3p%JkMrn;-@>#FK{ENG8RU6G5m zm$6&Kfl=^$Vw8OB5YCz|;t-F?eU1!7iR6e!yAl zsO=S|uf=CB@##sp;Mi_pk<5|6FmV9(n)5E1&0leW2LRf_^zFT{ti^^q-N-3dVn3b8 z4lV5axB~X_J}G!^5c*Le1US>BB4>vnE~!%GNLk_+RFgm86FiMnq%CpU$@F4aDH8!n zjGqA=q{i|jQ}6LyE_d|@Ecrv(kee$aiX@o}IZN7>$ysAD@^NT+E@xV3!NU>IVwx-7 zFc&R@E!xIXzYE*P?v#joLeL$t(*7LNgAn^6xWlv{^vWD{iw%K|D(@uV20cQLikN6> zJE8>YUgq>f?4wi8a60@yAJcJUS{|n(2YsvwM@0(?2NyX#d(bCdX1~+wFQ?IU)Q2kQ zAtdJs>O{9u3tB`39Y-Fzga*;b-{c1w=wgY|p8O8)$*&^vJF2LPG6<{M=Vza;!usw= z`t{CC_D!u;Tl+GTEr~TdofUdF76VB?*K8@Tt(T?zW0##3-LVm&^x=HFO8*e4< z<@uiYT>rKy@9TJ67j~*2R_fy3R7Y!F_%U|trlhZXGm@5Gtk<&~UP6{w8$Ar&N89(O zEdhlmD~dml7?Z5aN5ioOfhu= z4$T2xvxd9aj)Y{0H9Av%9)vKO8qLUp!QsMI4{WO-dLP<85jTD$!VT#tjp!WklDoK< jB{zw*EiQ=yh=XZ)7$Gn)#faJ-o_U9aSkA0T9+}2ZB*77Z diff --git a/results/benchmark_metadata_ogg.pickle b/results/benchmark_metadata_ogg.pickle index 85009518ba5c865bd3e9895b3a1319ec48853bf1..d0b155935059e2e7ef4465d003a46fdddb83ebaf 100644 GIT binary patch literal 1604 zcmcIkO^6gn6yDjHS$DD`D)_TR;)W%-BhmO~CFTRmMp)k#nHSXI5d zgF9p-=qgk$nNm?t;w1+W5d@QyhaiZfs|gCpRoIiqTyjcYz0TrpBAY|7ikVmMr(VB$ zKVPSKdG|mcF1@ZvW1mW=mI&qqf;O1ZrBA7%6L{{L@;TEsW4hor>cZ%cmYRpLVj`xI zbQ(0Kbta_Is}Dp;?W-dhZ@SmsMpvy&+B;%~lqCBaOhf5VQqRxPsM^SSpd$l>J%}4Iu(}EShu; z={s)@<~%cJos%5tCp#|~zDXB-)oL<(ssHFMbLnEH&+FW*saC6>{Rs>INChIebQ*G# zPwI8Ux4qA;i!}AZ#PG3|wl2vejr|~unBnD>wl2}s525DNH+=g_o7p@MdT9vRjiE3_ z8HF{Q9?}OX%h~K)fFB>?Yu=WLum8J3d?O#WiRK?Jra6ac9<_-h`^Y%CN`^>6Hjrba zMYfV}$QMuwM#|({a_Il+ZRp&ADD(drr(VCLliK{5Sl)ouw^5DyiF8q+mcifrE{Cqc) z(YdM0IIQmL6zTZ<+04)FS>)xdS@b{fx{ZFLThpi?`TY#)fB9abe8*Oa{E10{v^y%% zZvTypm-o}`dkeB+-}A>^mFYVQ`Q2+Nn2@_8hb0g|8fbokm^_;%| DP9auY literal 1851 zcmc&#U1(HC6yBe^F^Q2X7>o~Eg|;T4EdB&hFm6bLtr@$bk&3jk%S$(-Y|WZtDECPiHr_30iwkIR zD-X(M5+%ln`e83qkl6kmphKcs9v9I8nNFv>@590$lJaGCOl1*gWnYST(aK6u zYX&a$EytF^@GW>a23o?f)f=XRQSilAh_%m3+og6v<$X}mCAsp}v`Bb9b$tj&7@qI+ zO46YY3=UDW$si2Any*ng@wJN?#Yo4ffhB$u`pdvgOqRTrXnzC#rSV6V)0~)!G?}=}&ya{V?_Q#Kgq!f0mJkfAyz+nV+9u z_^q5$8k6mPsXVOF@5@N@vt^WD-=yV3O<`&qte!)m#{H}LD?c4V{>{T$es5zx+S_nh zP<$xTcYTVZ6`Zm_ogV@+U~U_I-u%{{Q0$`q}^UB;K!N zF6uZAoI^U$brI#>)e9)E3%@{nl{4d*PfIw5{GQKdk+%Iei~Om!ImC5a`d-gxP(FNH z>mB}Q4)qqKrrR&gpue$eTL03wTJNLj8MNcJ&Z1wpQ|q64PurjV;jY5%``{kZhFcP; z`0m%c%Kn`{rjUL!RzZGoYgglqNK^wuo!QbR>Vd1qdHm~Pmq7N~A6IGwm z3jmsz0@$DwHJg)L+LBvv#uyZ4g5>q0CaY$MC!y6r)S~7DEe1-mQ`D9UZU%%fXlk>8 z1!KU5W5O$1In~LbiN|ys4^+A*co*;E{lJSq#_dLKoEQ(eEbt%?VPs$+!1z-GXK@r} OO3bG?fsV=`n|uIMEXWf8 diff --git a/results/benchmark_metadata_wav.pickle b/results/benchmark_metadata_wav.pickle index 3ec3adcffe5748bad88b9646e58db5c023ab579e..1c5a9e1c8cf5b1631e4714f63aa254334da21ca0 100644 GIT binary patch literal 1604 zcmcIkO=uJ`6yELbs%=%QP_@)QP;l#EE%cz`)+zq9YH&plB8rTeolG-0KkH1!TC`G; z>I(56-mu7V)qNp{boUaTS>L=f+Sc=6;-UlNP;hk6hbW?o+2%gf9A`9^aSo9Cp| z;B6Hg*f=hf!-y1|2>V3v<{g;fezhJKUFXDz$n&h}4@QEooT=^xj6?zU;)0I@JV>Hg z@cG-kuzY;4=EXP|bCRIU!q5ZZ+zO7Ei#@r&{Lhvwc^p)m12SYP29(Fd0g_9|w@F;8YI%mI&xlf~wC5`f^+N`DaOo(-CNqRj3cBup zPM*Vw<%WXhXPdk^4wJxkT#pFaHQVIPII&&GIkp8|KiecS&hxCqh3E#5m|X0+Wf>ln zf{>+UbS}V0Tj|0dX`+k2XNWGL9Wv0gb2`jv73MWEaHtpcplhfVg{U3vN5g0pI**P( zDhTRAm(jq#%BAbH0A6PP>L*`3qmp1rBDXAftLa3cZzYaHB6xBB>S$WGjr@N(amSFf z@wR64zXvLJ2z{_^~uS}1!pzixU1>%H(LM5fTq`KTJO_I&EM#_WxSZ0 znkqil{Q3KuejL+!4<6N&e5$`!*`M6FMcwNh@6-F8ed_*Hc|h|o_9*{)I=AZmmxkVN z+o{ieFtnX3yEJ{*tL4?A*1uiU{J~z$FVg(8V-023f6`EP`dS-G{`z@c*?IcDuFkE! zS6A|4uAz9VUF)?7eXiQ3`TPnkZ>iRm-5k^Bx+gTHr?p+dxXX-I;>q zLn%Q|^YnJXWQi7_5VAi?;i8buyX;^;wNRLQiAH0K5TS h=a`O%2i0;Z_PlT?HtnPW9gi6?J!}zx@oJn{g>PcoVB!D( literal 2086 zcmd5-UuauZ7;loBns%*PSlP;0(mgo4Dq*8Vs%%Y~`DgC9tlb0|bA*%Rq$hZDZ@7Qj z#H~0Ptx=EvmZNTiZu%ljd=T_OL?lBLME4^4Fc_j127-`1I#B01-*=1MrU9Sy9Jt^4 zzVG+_yXVh$+<1LctP6%1s8Xv)-DJUbShD2M3X`JeLF&^kq!D@YFu!CD@M~Q4TiVXjo)5<|gyhRq=Xr7MssKYAKmA z;Oj(mb*&>C7>D zCoic}_a+%6hsio}f-sUGHhF}MkzN0_zEc5l5iZ?yF?QZ`F}n1{$Q%!Mb(Pe(^7O&f z#jn-)WfM|!I0etl_;BjXX*Fgxr^fVXCQ$!g0`(Jdq{eVc`ze(Yh+7HtcP7yOS{&sc z1oB4U=ibfWuXyMj;1<7o3;Z?SJq!55bIYJ#f9Vv^%L`{gUwdL1;(gj!23+%P#C>}Z z?M_@o{e8!l0srb($lv}4(j|&?axdb?%srU@7a6Q)U<&hnE#N29SjWaaC_kS@d?Stc zq20)T8OTpgA^%Dm@hbuSB+#D@{Qa1Qy0-k@0{_>ik^Wjoy24uEXS~{iI8?L%-+dnS zKX14I@}qB{-h3HpqlEO#L<{1_A4fkwWY8{i3i%iF7j)c1&1-G&8*a8Wf9bP(fPd_p zkJ}LcoezQUGd^!?f9_8+AiuJI^s3fxJ@*^P$KGEA`=MtZKz}c62P#fJiTw8x?LLZK z)$#iJFSk=tokVyW`}rNJZSa9xuVq-hnD9jMyZBZ(_@k@u^gr5!0vmoe)mQyr7>ukn zU<*=oZ%^(RPws$rYEaewB<~g7dEG8usa|!JwdkIsrmr>ki&$mW$tk7ksj<9YRvph$ z%cyIX3%Y5keig=!!AkpZpW$BoZ(H diff --git a/results/benchmark_np.png b/results/benchmark_np.png index c1642f911765b04e9ad7aba4df6b1287a468904f..c84c5337f0f87c42443865e5779f6d00f0c82c83 100644 GIT binary patch literal 28194 zcmdSBc{rA9+c$hQw=}JaL`4H-RzxX7C4@xgjHSp-rpz=dDut5F^Gq@mDoZ6Kb7n%O zkl{+^_jjm!t^0Yt_uk&;`~La1_ujU3x0TCvo!5CD$G-oj{kW@eMrs`mBMpT@Stot! zq#}i~)RX+TdL{lP&&Kf{{t&W}P`6RCFtE9L!AhSZcfrQe)WXKpNN=Z|zLm9+g*iXZ zK^}gtorX3xmexmjdCmTQ0gr{%W#00Tla+XrKP*q3v!+lsTp<4~i4%)8qEO7drB5DL zwhtO=bg~mK*XGA>PAI8IG8oBzpElH>4G$(F9(|GpvSwxJXs=0o4 z#=-QI{>{Eb$@dXsP6Dw)Q0gQ7a*>#)}LJXFuM(qFNB zxxL(}X-<#g@QjRuQ!_LEKPz8#TD~{V9Oy3f^@%dBOVDnZUyUd4cT6y_f??B*>(}q` zyd!UKm#^*W>dGq0CgW37RK(Jc*C%M@j@inITOU}1Px#bhy=mFfrE61`OXjqUG&q@a zEM8~%Hpx$x(QgK>lFMMLuTMG``D3Vgo3`ZLzl88HVd{g`(O%|7b9RwsY>&tX+cN~V z@_046_VA z1D^0`Cv6M~NhK7b`otKv|;u}(UZTh+$<{ZD>tJ2rnwQJY$D_5>)JU@SJpguWKzwC+8 zUw1Z6e=puZ?ThptXmc8=o9M5hV`ff0aPcjhu<)#>OOU9GhDk$8oe!(5&6mIaxX-{Z zdF|S@f#&Q~TxN{zV7<_dFL}0uwa+hzpZKEkC+!l7`@6$--=5+zpEz+sIZ|@n{jCR1 zTy44HAv)E)`7x*3naz7oKWsEr4L)LPGe7GP9UH5g=AD$pRq^zI_&Uae3Xzic$@fdv zDbR44`JvK~qD`&WwCL}T4SmAm@}u$cKvQO7{)Y6=9SN5yl#T;UnI^H@EMA^%&9hbV zW)jJ`RJy4yUP;Ph{SL*GCvTPueYD+v*fK04A|mCp)Ujjkj0X)noLh3PT-l;t=?_RZyjFyl#WwX8868+Z#|-tqIFL0*}=1Q2`X!-TV*y$F5Z#Pxz@2; zcy*FglQsHtdqZk^L)}tj{dwZCo}2Qorfy&FVcooOk7VEdLv1;F%=A233VM1G~4~3 zVpEn`qIK^_b{?KH9vhhJ$&$KIyfV|QxxUAB@0p;ucGnp>Tyf1zPH9k~Omvlw!{eAIZ?W8{cbsf1AX6=N(=K#fR7D%kAZNSw&$zUVM9AL#_}!9tf>r%<=re@0^ zY19POM1h9E*fYV^bCd0%BTX;Y9Y5fKxBW2N^`S@x+g;k!&Z*Gix=X=Ot~KjZlg1bN zUStj6E%pxuty(TY8^2lAOLcfd?G=+M=fnW6%lcC897Y~fRc~Y8esZ88(x!@xz(X#%6dE33E6iz$Aj){Kq2;ib7!|_ zZLzIV=9s(9tln8Uk(m#QG1az1UB*h4;o;$)ckkw=xGbY61Z|`}8DZ)HDfF|>Y+q>D{>ZXp zqCb`6Tw7U`iK3)P+v zkLj40%x&0pZiGFp(91IXkjH++`N#9BXbMxb-L0l)EmvMt=~LWSuH71j%CnKS^-kE+ z;?8srYIA)1Jv?6b-968nFIjbQUCVD4@7%?L6E!GBwZRw_seB9c3%B7{H32Lb!Z|`r5 zy&USI>O;!Px*bQ9v3_e%;{`6hT|3lXq>H=9c*G{|h}}0fX~v^=N!PDmxB2$@fLT+9 zG?rG47jI!4b+Eyt#FLI@_3BU7l_IepgO74ztD%H^3KFuWrKgWYv$7p&)4urb!DH{r z(6jycrBAZF1yT5ic%1@AN7Svl2#Gb)KCR{rExFccd>qo%d%T4s7G`_Jo(Y;g)5tPC zr_LO`YqjUGB|m4s>?xBT`8oJ`Z=jE&mqEZu`8PiIzY7MGu6jK6jw!M%2bJ~umoHyP zm#9nDR4aSJU2|vSo(#Jo4eW5$@!m?c<}5SYfm-%;Ov37Wq#o3AXSYQB{AqvruxZ=N zT$cW!?DqPcD_sZm{#s26`m&X472ZAAL7kr&F+pE`ChYKnUtOm9`ieCZ)v~4P(rV( zjC)3%9j_ehtBRC#xp^z0dxHm{g^xA0BhEO5;;fB=2nvw;O6=-@W?;|K*Q<#hsRey{gJv&n~Cg$;l_%#2UcsH(QkH z%q2?0v%}Pe;nr}fQYDt6{cZeG|J!XA%H)kVZVX?)<47Ow=hZVybnU)(94D)(s;cT^ zFCRZY-IgCk%`NEK#Z%OEhg!lqI?hi`O$jl}y3KRtBpKDjd`#VT$UF%j-}kLC{fK3U zyXed}{(^=1ncODhhLqrsK|+zf`{X(J_^PKg&_bMDdoU?a@LCt1);qc+s{NARv%F4>dx4Ke)%6_<`SISJl zYROydicI@aJ*;h+N|DJR(S=!S?K~T4vH71DQ-C&Yc7VV-ECr`%7hl*+xI_K&*_Onv^s>F+C$GpCN3{GU= zH=xZK0-`cO*O!r&uHsC68BypmBQrfde}9A6?DO4w_Snu0Wt#xWISwXg2la~o7;KOS zrc**UFBy` zg0%o$nTA!nNw)w*dnV$PHNMm@C+F}SRuJPM^B^6kA%ThjekqH>sh9-i_=vQN?+94q zwoJwyuIhMwLqEHj`bm6)(WkKEK2dRTY$YWnM)R{%o?c!`$r_mxU%Yq+z6M%6VG)_` zi#*~m7Ik~ww!K~@5yx+=G@AJ_lpFKHi_U0GCb&<5R7feEWxTmVe4C5Hj1R2^e z(;C&6gLDt-B5&{;r_H7|?aSSHU`Zjhw4e$FHmQQQ85L3?Ej7dLlB z-zLhdCNfVlKI*Aj?Fzbl zLDW$>dYbkl4Rcb&63Ta4-@S6xe(XvU9XB?Bio^k^YUEgkSLxHyT;HA2Z|!w%RmClv zE6%D<{FD!KIzRVZNeO#i8+TURX>yqR`%EHkvV_+bIz5Sy8_iwlldo7MX|Koyo7yG& z+a&Cd32|{z;b7~V_S%$ai1xXDxrCO|^C(e4r|@r_&(G`-aO%2$qLCi0)A6*(vR}V# z9ryV~^sGr8U*5e?#a=>r+36 zr%T71o1{l2D6lGA6>F*OF}Zn?;+|g-DyFNMWm<*0s#VyQsw;-|b^?#5Y_ibpXXh&F zNV_h+dBHH9j_@PAxt|{`>ceR)Mstf9Q^kZcJC2V0umiTg^0hKlmu-+wEm2ht7&6(K zy~yWPB#(hndtt$Y9YhiWX{GGXCC6T$ zE8ik_?vR8>B@@qBma$q~a_NqJy@Mj8-Bw4-J`M^>a-b%aM+Moz9SO4>KWsAez7Mq_{q zi}nGkR*|a{tCXb>*1T0b0db{r&xp-(Rn) ziaZsEzM>xpk%6^weknBLQRiPK;%K ziZz~gG@-1sl#c1`qE6~X!P6Ced?^nfJ`6*V<5quu4BNBrg?<@<0xmy0JxF(N%C;cX ztN&BDIC*DWmB9H|6uAICiPrq94WOK~OiU@jBHF2i(+T|QxOegd?GcK`TQsW(8cF`6 z9r*HKJEv;Wr|+G`)N=kxLtuQeQjXa4h4JZsFdXYHJ!1botj(c!N3f8!ByM}b*U@rp zmbA1q8XB5v@@r#dyn_VI$jEpyxy@d&9d0>?-dsD`?v_fgV}D#OaNgm;!b^v78vw3k ztz5-(=gu(#d~D&?hyw1+`YtwM@;xrhUI2BGtb78~hMF>ES8ZTY29CRa;|8nr-*mN} zg$Z=^Y|m1P`%)m%|3IVB$~grERiUT=^)$pQ#b#J`o>;ea|1m6WMq&Hsz=pJFdrl(- zYS}GTUe-mAIaI14h^Qnev)}UY7%by0s!dQyJZM}S$7vjgmKgHBaPtRz*GxcXs0#Ab zfw~%8dkk=T{MkrJpQxu#x1u{y6W;M#b{qrG)$o}>zY*e%o5Fpk`}5B*EadlkX>n(Q zk2IxS^uQlIv)c(`WE3!d-`=i^x-HY`{Ax;>>-v`xFM6uC+pIVphq3~?k1fzbA9|R^ zi%WM|O5eq*Z@(RGp5U7AD)b{$v09$qLDPUaUB;ivSuLpkW&=eg=6{d08VIMBywBJ( z9n8FAM>3dcKh`&gW>(V5b&OGvqSSGdtv(*nQ3XoWqEEt?XKTn@FI1PJ-8@C@*;on< zf`|fwf!qy7W{(~{Y7hvOG_uol@7#Hm@u7-A5gL$9%Ntc;Va+O`+}UrQPiMz~Navigzjf zc=p#G$$JWb5Y(St-rH2O_px`Woi%%tpC6qpQ&-l1E!M(TR+HlHQ-b@KsG3}j&&kB5 zPd=9}$*Go7o1CpPY3CTlDVu_ zsrzxe8x}yk2~%ZV({pt$wQu~rU3kyI#MHuS0D_4ge_iA1DCy}R%@zV^(k5AIpM?h! zdK1}Eks&F}&$KUafcB6}K^yUV^k|nfRHQ)QzF2JI9iqEt0o%9M(tV`Ncrd%h z-C9F$-2MKMPt@jpXV|d23C<)Snw5p6d*)@)t5?S$dANAqzh6hb)Wn1h3TN1{ca51Q zYD8&q?7T%^i`q;+Kh$+P9zBv(+HH2!qs?u>r2uLIX{>nMv3Ks=S(<4pBFw{P-jY)_ zMQtl^3fA2KUM%jhz9Q2sRi_|G_qVRH!o0yeJJHsEc7-gh8#Labh40_&X6Tf5Qaa2t zIctBsw__AEjUza@DnjDf5!(bjm4i+{OzTp0buC_w-X={Kgdq`)#IgI4)It02=c8j{ zIPm4DLv@GOtTlt+VKC{ka@c%?h<4Z&AQM3id|QV=ab;v=6hQ%kE6MUQGBSE5 zWc}54WI;v%Z?x_dh~6CpJ*rdx^fbSMFI9WcGo- z?rsL9t|I%a*`lbmui6S4O5=~06YrsVKcD) zydy6%+sRy0Z@EY7F5gCebH0Hg&>@O~)}OTL0p)vlXy$7&#PTv~%Y<{%DQnc_AL7ef z>wPJ`G2`lp4i;9s8K=OXo0hzC`O?)z{gz%yzBVZrcpQYr5z2`Qr3gLvK2KHTMq2Cl zhh5J0yG1enLoO&1-Jq6gC`zPnsw8Wu5Pf=jas+GNk!Z4#{=K7Hn}FNP4x46eYSlTz z&d%<6@18Qq9dO8FAD;*`_c(w*owTo$RK1f`#jM)G$#paJgBu3>myQ%)I#7DKcwK|` z8re5Xj+LH&p`Ni%P_=%Kl;_K2_fHA}L5C0Mj!dC3pv-Q^_6A7o2R*9?4WvTh7-(OZ z&xQ(>pB!~DH)`nL%~x5e5In2u)_;LLsK+0O?p#Y%qqR_ zOwcE?l^n(mR;*YNf4MTm5ydI^+62~89Rx~3-wA0Ta*X|Ggu%z4bMEr>BC9=_%tl44+hCGc`LmElA zxJLr+)O4lWJZYRp=zS>7jC_~wJYW(@*ca-oC@(q{b;NdH5j_x?3H&{LTRyXc_&~2N zM#aW*?%gX1wb-xpl48X(0b7XDgQQ=v;RxKPlZw-mT_?0_;3stby zs*HPjIDe$Ow>P%yoi~wmz%HQKKX`kOA(AWv@!M;wfbO8p9THM2XB2hLDa2lXGt=R@ z`gm1wtL}(-a@)eK`JAU(9WGC~_D(I=S*Yd5N~L&eK-I1-aJpIm%Y|TwA0zFl5X%yv zX81&fg@p;<`fE1FS*EUMPBnGD$cbZSYKnc&p5m#WRy%xXw{DGl{(S$A!I7c?3=28MvdRtOZqVs3>B-qFuD(u!z3u0HN*G}d7|RGexY_J+yi z>?yh>6a^a}AD`MpHC_SZ+EY-^&W^MdP=QbeVnbbhSXwQMsT-VUAA8FWAGS$uemZBX z8CbD5y)g+O4))K!hTMn#kJ*(ZAyu#U*wZlX=JM_CuZQM5T0#%8DF}`Jo3lCEJk#a` z*EymifL;Z`QM zYi#fos%@_;bFjSvr}5$zk%^P~L|E+YI8(nqE4j18;{zNJ=|-e(fgfObo02Wf!N>cT;bHesSV13N#2TKLFgJp1%|d4@77B~dL^)ynEM zFXI6XOUvh|mijgfC7u-qO3uzNVaVl-CeVks7x-pVog5wW2tIoL{5dDjyya(8zT8oM z%d1Xm86(8{<=DCN*j}aAtK^__#G>#Tetv#o%5}t|Xf6hi8#3PE&}|0|A3_#dlTlP; z{aaHyb>>X{-Oc-c8w=J55*sdN zYS==rJ(pbXT-2bK)&~^AVcDGYaw&!FjN^}Q@c>EMRI1zDpe`Z(+c@*`j*h%k0*$G` zGq#sq_+Lw5%T&QuD;(-*afjh}x!AyqA2 zFcBh4v!pukZyM$?Ep zQ40-!X+btjC=^)BU24P*tgCB?gB^lz!D4F3SFE)HQwH*qjS5*W{_X+@)W-^I{A7P zbDT|oHClWUaeKe>5oyZ$b%XGai61F3Kza?C_34L5RG~w^{BKE0qD}P{$F;nf&X_63 zO5ou*U?VnkAgn_u^63O9;(4kPGYo!Ba5IrpVK9C|EoYIAkB^7HRfQKuLd`Il{W)sf z_#!$=EH=br-L{wz5vLF4*(RkvtQxsi(O{m@07Qmx1fcc0cJ6Tg;}|jwuhs<1$<)PP z?7jbg=ty^pTo&kcox@4_Cw&9M6s>qvVlYR|h3ST(3D7qa z;0@SAYzeS1bH?xh?C$}gLjW@TWe>&>w>*EOP!lVqtY(Jj`|x{Vv1<`)1^povy@sVh z5DMzZ%kc-dH!!DQN06UGh`lmhcq7Up#oY>Z66BLTB# z+5LmieoCh@VX;Hsv+a0wO{317s4JQ>PTb>a5I^ zVoo!xShb2%RJ3hM%fKLp;9yjP2%+bCo*NNF={P`c5ovd*ItgbZZxcr(S+__BMa;M* zCyj7WqG*A-HlW_x&N~mUu_7`T$hHbtQ}z>H-4t|M+o2{E(h%%md3}Opqm0Z6Jc$8P z?BM)I;lG@5OA)5U;DmCxOqf(w4J;Z5tyxhw~S<{8rpYRUe<|2RLI9V<0RZ=_{rmTz}rm~K7#-xx`#Zc4*{k==Eyi-%08 zZmyOO5N6SN+ZtZ6Sylh|YqC$_@scm~x8eIg`OC4pb-#+hUis#FP&%Yh#5bxbzx=oN z&4rUO!3$UK84@-S{@Jy3<$?A z9%?h=0lk|f6+mzsc}6Vk{QOE##%dr>5zA(M3@D5X>Pjo$?_~4W*s~ZhCgRYd%ps0k7!Z>^mz=?CtL-V!ihbco%yBjXvALr5@(5 z<0y^QM_gHzJR74{hu&a~Z1Z4#HdlzsW22*Iy|!>qR2*tIoSx_h-&TQ+co6j)Nf9nx zvlR6-;tVP)C_E(2GEo5WS1!+D&Mi+J5k_M&n&_({y#Zx8y0h40kf8ZIyCI@c6K%#P ziijXs^*$wf1f~(+jd;gIa=XXCZ&SSPPWgM%NYpwg@QZ{65$sR5Wg@#Sww_nmVR^|!Vt$rh}H&#I$mc0mN`BM z+iovz&qqXrnRP^1hnRK505fmR>j%cK$2}r|>@p<@QjP0W4}Gr_(jK-T z6TKG!iM3zaS55r{c~;Aq0?`mEnxEgNC1WO1que zbrk>z#akISKDZfgsKxv8`*j`HDSe_I7dTQs*na%tzGN98P4O1(g+x*!c;oerRlUa6 zsKrEY{}>{Yh=OGTyJ)`os`2?k6YhAjIP3$i-xQQL;zise|LRCRk@nmc zCf#mj>E=k1IA6(I(n(ompBO@J(s6loH-9ml-Aze>-3QqrBm4 z3GR9=%0+J%R+TQewW5tphH8>}I8d9c&!)|r39x3}yO&YL_|X?p&qj0w*t9E0zm~Ku zp*ZkEH6kVyZlNMbhz*$3Hf!?A>THQ44|Z0=iHKDojD%j*kQ z-(M1Z{P~CH3BY7Xp5e&D$@)Mxx@0Lad|aX2AnPZaLxsBjUgm>&w6y%cG9odEp&SeO zM{7WMB>K8cqT{3_zzJ-K44ZyMWC#)g^@;mRQUoA*hTvCC$Z-)>dli%YG4O2=uV)}K zS>~+?=srg$Yw-O^!bHSz;uA5;HO+G+nzJn$P@t5PH3a0I?mtfScot9%X*4s^BK1c87ck!c5_!@u+#{T6SKCE=saQV2^Ro%NSuTAah7FHp=iI?5ViH z*m3>&w0C`cFdMC)n{do|EC0uY$V8_Ha{?4dW4Lt$*Z|BfMkm&;t;M1p%NS|Uagsx{ zpdMZU6{fNAm%r{dk&Zu*1 z_PWF+6q+*F+?V(QXg6(&K$$m0QZcXV!O;oWO~g?EE+VDc-adzH5^VRcLTqhz&1R$x zv-IOdwJwvbvA=Bq^4v)1;o-wSNdPn7Zm1eOou}Werkp5>pn<7*3+-+T+6!|dZke`& zs)RiH&~Dq72>Egli9KskwV1LK?&U{-Z>HnyL=bZ0a6On&1Tx-cy%i_&# zy6zt$Vx;GtI|^_eY|vH)5%yF=BkArMFY4R0W5>{1M~97!j03YrkbzsY0_SEX6S1p7 z0hGwThcgW*NTimZb)|X5XsMy6`4Bcu$1h|?_1~R=h0^#lNE^mVuV`< z5Zpu8DLc*YF6{$LxYVYngb&RwmnlE5_-=9Md+LIT+00c0cfo8UaWiyBH6C-Qj1`E< zA5%D)HeuPSoGiR^N0H%d_Vdy&oU#mEDXweQty4LD`rd`1Wyda%JDFwL7(wtcQT6#N zg(Goii5Ny0F5)f0yUc+#7rFB<*+cu~&mu2t9-WtQXq4UY6(p|NTN&DbFi}wC1E(L| z3(syrIY50UZYkEKPZUH4v``14X?ymp;C{RCWCcx_hP#}+RLG&cwbDMnVr|-yWk?#o zuB?;?LQn?BL>Es6Rx3qZm~dm@?L=wcz5T!r4cJl#p)8RE;xF#&*z;IzqVaNQJR~3z zh%Nv6GMRG|JVhW66L`8rQ$*FGemput_|8;<2*5bmz3`ZbZ3{APi0whNgbz=+H6MBx zTmEVw@nN&Kc3#b_K_XTzR8$*Sq8d3AjDB5QC=`lLenlYjstn?LrS($IKT#R}}Xn4G3q-bF~7Lh&a} z>OcLZk%xEx`VsN=W$u@yPoGwXU>UryfU?CR4PTP?(+fwo!>R_Q^=!M}a6Yj)VGe=k z{_fp`LU`-uO}5{;KqYyRXhP0F3u}Ix^%a4KyL#t-4Q z&3w!v2}pa;Ivn+fCiSm+-dewx;>WT5sKxRIOaCJ&rn4v~ zEYj9r%g>T5A}A!JpM(p=x2K`{kyv*{@KH7VLDrpB6}^ zA5($H!iiP~E1FsZC?yuV=v-eIOA)mXY3FAxA7Aa^cr?nkq2yUV0d z#0jL-jd6`g7d%8$WX*5YsrBf+k|VMn-C1zn(PLA7YsjGBWq+wH3)8kAhj>>N zqWUbRMG0Jpl=2?HjUcSx5&~VIipEeih^KSWTO=kYCujGO-IZ_e>=r(=FHn1sHQ4H1 zZF*{|%!(CsxZ9wy9DDb^H5*!TOnRI^XYDGLzjYf`hnU4>`71u zZk`dAo#U6g`wqg?CoU8TO_4A^vN?qEl2q?vWD6GULl)TA0WIHWN|pY^Expc4P0PJ( zFZL_!vQAKW^aLUE7LbISz^-0V-5R675>bMVtsFMf`3(@FEU0zHg zAV`7Oim#rY9#PeS40O;?Y7x{W_X)M$u>9!(qE*<~*n~6r?&HU;@Tiio_Y{Y0Q0>{7 zymV~$VxsHgR_)vGN*#*LBxwsg{uVm>uJV2{n+pjENdewsN5T>Mc&-lTnL{l+YyVEn z>F}F5L%H%u&2pb%x16|)7e#Lg+^VAz|8YW(T{u*TQDBn-rURhE$$cGlL z4nS3hK8AwCOC4_2BnB>e7s5NT#Dpd_h&W_VpT;4$rvtgT3e~SRqklp2gO1yrEir}> z4z5R!T_^nFjjxZZWYP8+8TS4aVnv@`HY9DxF0#|MeNK2^+q*rIv?!0ZWX@n_a-@ME z4H6^-K7E3j2Ry6^XpyIU;Est9=7-%=kHkwXc9ap?1_2->lSSq=iZ_VWqBE=$jd(LY zp2lm-*E2cTEFI(b%+6&`bQ1WN`{d}IblHn~dc;R+g@X!HUJ-1z4oL=56)_c2kFUup zO@c}=tV#BWSS>{G!lvRtuo$b_2*R{^ehV|khN8yrY%B??2_TQU-e_WcTuD;$HcQVl zbjk{#!cSPP6A+)v4AT2i@-20%%&nBD&D65A)W<%qd9P;n&pcJhGkwi_-(USKD4Rw1 z#^a-@lj(U)`V*p}xn)rIJ|2x7Y04~PVBzQI*GF?l<^>YsNr+MsN;%v7Mib)%J6lst zm>(zj*DRB7*EqZaB2a4Q#^VQ47s+}PKAJ?iVK}DXmSKvkb*c&Vk6I%yW`ryWA@Uoe zF$6>FRKmdq>Zv08gsY0Y8lxgou(!#M0rCkn$%oid3J?ZoaH`2IdF5l}aI5ndo_yQ* zL3!d(-g57+BbB|&C?$;`h`;BWs`?aVg7oNU!HrV6HM9E2#)W5w5h+KBQ(SCtFzU4# zw|pp6a8~Eq0)ZdfD*T>~#v1n-q3wbJr-wD)K96huJ(%?aQx1nX1x-Y}cN|sqIf(wT z+vMWEB&Z?g?+4*N*NPbARO#mgXD3g2i9tkLXw@jvbbT7PhJHQ0!w&tjdey`yX%cN8 zGoRPuJ(+Fe?O}8B4;BkU6IzSy11s;U#)D5^Hs& z_hWMB>odoBG@^r!6NV(xLLwquTfB&eK|<$ntruBXs?LyB9u@sCujh#-!J~6S>?VLZ zY5?3sXC^2EpFv_D=Rp<@+P`12t8zB#ozq!ph-O!QA`M+ zfV{#w=TP*81T~T8TboM^j|bwmo&X>XY9?J%Sq7q_4O4XJ1GDZF=U2`Y&OgSB#`u3O{}~c+#cdg ze*gZR^T!n!B+1(Os$?lau{#JQb;Zh+2~bLm>yrXd6?)ftA{(p(<$By%yO;=p&#>n2pW3KqfPubuAB061DO2Jj0BwC3ji1gv_ynW()mcbhwuYH@}2M|;UtrA zZ|<<8)j52ILHW~gMAJ}BBnR4yiU{09#5@7Y4~djdzz~=9Au=~KYk^8ChMSaNgFa#* z`Fb+aB)&m}MLG}J04hZ9quI8Hw=c#dmoEL+phP{q6H?9u3_l%1o@B91gOiZPN}_6L z(Hzo_2wURkVOnOGoznn9^=DbfEUJY~RE2>OPn#pb{GZ80pCQH$2)0D|lOy5=rU8{> z&+H(1Ib=$6c?!4vhatO(-gtdzozay4H=xtmpDQAqBn*(Y5)9l zr!;{AEYdK1-)Fj@TtbE<0RXec7ZLy_iirIXR9b3YDKg_{-T4U0;vlxf5hzC?CcJm_ z_#;;PEvJ51VYsj&k;m~vZMwJj(lWLE87o!imOLb4AyGU~$c<}a3J-)6wa+ee|cA?I|mv>C3-B*#L5dL|!EcRd@;z zd=56)6&4oewpnM+(P37%Lo(Wh%UCfDBbSF&l6SVOITT8M0Pu!VI0b(ix3zC03 znU?$=mA4-1!Y9d`K5g@$jRZ!a5L*|zA}whM9T`B^xG*Nz>jSZV%$fzw+Fmv~a1o$3 z(K|uaClifeo-A_?r_lgaZ_!B1yc1QzeDkY|Kc}XQFhoIQ1Hx~KoC2T?yhl8HBu8z2 ze!oC6hT8;96%fhN9=;5kJB`Ahf$>HXxd1u0E3^aP9zbH0TsRhXcZzs^0!YFUe-=@A zASAa&ED|52Q94`9p`#NNKLLAvkficZBDA_QiM;Dh50IAym*s!UmN}0c(eR?@t%ok2 z0h@$Ce%MSAkpG{W+-)!WKaUjJ6nNOTlG)n-jOoAtahEQRqP>@yXAg#ZFy(#G^N&z4 zHP0DZ-(tC~?e;cvr+4@LNB3C_PMWk@=0+u#`_v$$6^1)+GSartx~IBsT{g4x_v5W@ z3v;N-{+a`MO#UO0IUp}u^u=0h0Q4?pC2^(B-umPDP38`l7KTmt4M$-7H%7oy=z~bl zbYSRPKm1v{eJrFN=!~lEoqq?UhR_3ISsd6D8gPBq zbpUF~uYAIbs_0k6@E+;CGLJ8z=RtSyjT({X0N(asHjU{csbvDQ_W@q(3P> z4p4){A$e7?hHdSbSx)KT{$=m0n=NyAy9s{3#Vd``){uVykK}vz^5GlK)qX&~|Y&pHB$p*NtcjoW8Q(PC>4iu)Ln{^S7XO`Kv42X!O zoPLu2!nqL+geSLZ+ENR?ZFA{9wsQQVy-+Ak-F=?$zw{)ScDkKj?@@fgW@E@JgY42b z9Jp(Tx+dkTPy{@^z15H`5mHn^?UoMMzhR z4#}?K%Nqu>m5MN#MwSJvI`_b*il@h>N~FHhrtJAE^uf6Y@s(0ZZ@ShqFfhP&^1~?$ zzWY)*$hjGZM)9&IzCp~l7Sc*%qLfuTUxx}`QQ0-0v;uF2$A>q&Bw-+(&oaJZUh-Y& z-$SK3;fGI)IDJVtfqQMa`Ck*AD}_%PMk{c;SjJcB``NcJ#diEmM^*XT(Z>jPMnauT zINb>{D?i57qv-ijy%GzWCJxirXariDj~@suHmKUAo`cQ@b16M5cfN{%TQXh`cw*}O zWOa2lBED>@sO~a;m!t=|3|IqCOZqEzmrHpkC^J8C%ikiewP_vOnZ*}WavSV8=v2CH z$BP$HEdTuMWp^wj3CfrkJY`myUmDlg?fA>Ox{qmSNDBDtUD=2wBp`L{?k28y?+SCQ zi;e2B51ti_-iB_=_IgZ&`V!+c`j;+gjlQfiCNo7e(QJ6nt-SJkJjvuCqGl}Q2nND{ zl*3Ql(rU(xtrSrmG0m~2Naj%dzsB^|=18j=C-7B1k67WE>aL*bvs58tjFuMjy$PT> z@BLgpR*KD!dTXT~#au@<#8J)nJ-Ob$^cvjtmiOjY-<$GG^`?bix~RW}BEc?yJPqmz z@zXH2HvDq@3^CJS0N50o^96K|jJTDsUA&?v7?|N&vL0zAfjrurYymr95BjjyQjlFG_CYXgk{kw30sDQ^J1Fxy zg{h8(&?_cLUYblLi(dWl?HoCAgG>q_Y!jS1*9yKi(3+n;{bPtzns^U@=EVGfz=8n+ zLfQZpNYvKv;lrI67bB^9LhsOn%=3o?32wzL^_l2Z{%Mxo8gn_sK@ujeuIq-4D^E#_ zMe06qiT1OZ4B|IzGpYAz*7aqL>91IFKn3_BhH{j_EO94sod^shVtD%uexZ)2vltX3!*Fmh7pG?-A`$DA z@DN11I@fw4g_8_*@(#d@4hRzaTujjkqPAXq#DAn{~| zJsIwN0<-Y8*{gnN;*4&Ya)fc~&b z;~WUA93Ma#PLhd&vC)7J7}s8N&-x!7s)>6jz@?l+yIx+g>WoM_$8t*8Va`uNo+QkR zv|}BT!hnMXNK_CWX$$yi45mNTq>D&n?Mnx15?3eoH!)&?4UJ(Ozi2cyZq7=EuSJ5i zByj*bcAun6$S7@27%^L-f4hZ`{fdRsXX{`#2yEJuQz{Z)XXct;_T?-R** zuV2+%Ijv}#4yR{48Hw*jl-30q5;7M1F;t8fh!1S)3=u|=6Qoi8t7n|HtE&r4f}iMm zNA13SA`Uh&>UEt*Z$TuCg#bNB>vqD~^&8sL)GJPBg0j!cLev&+OIfZ=%DB@=Ss0+zRDLj7)xrt1s#I=R>FFG<#szm$En+w!xJ zRMna*<_Z5gi)xDLtgy>;2BZ?_l5yP2$92Zsei8T13kGJ|RdF715r$qkuc~lrovk+m zN`6TQuzZDq4ISj`6jTjtv3{uDwNUeeD=}YWJlv9tfT(`>mR|F}lV4;Cdr$XKHZaq1 za@+?wAO{o$dsFhAH?tZhJCNh6i-=1*nfFw`rf`kwx%6*SuBpG~ZF=*XE*lBq8C=Cf z$8<>ooY-SLxBq1_?z&y=RW-zXXddmj)W&NnPvV)KZ(_;s!>VUw^!6=Pw=M^tCq4OuMH{ zfr9xDIRRMT-}j|iWCD9Ug=%xzHICOMY|{|Wqek$Ah+VBP!$ea~>{ht0bwGC8?L3D2 zTwJn)*prT&HmGSge+MI%5*A1L{XfGts^als)d_6{XG5}B5d(IQkW?t&)iogzz3>R8 z0j`$mTA2DxAD)o<0hd9l2h}Dd>(IH=V~v*LAzAwRcn}J;t34$Qe-DDp7O;Esw!wJ<+z zGVH-RjjO3z?Rkp}d3F?~!molT6gB8qt;$Gd9(%o?x)z`7PfoS~v!z+To@dMsv|6{@ z4F8M)EE4UHK`MAFPV}%oY|0nFMMlXep1bgq^u`EovD3A;)_C0KiT>ort*M!;@fIUb zU^g+qYFas#>b)O_1fW9UETLlxTzfwT^Y_n;%-Z}gZA%s73-q0+uNHM^3#mJgD><{g zMDI(!#hl;Mr|rWpFh(0CY*AsnpF-KW&)gedkz6C!-li;B-d8XnXXnOU^O;p|;8KJ( z(t6z;>w&%}z#TdgpPE0Sp>q<$9PU03{+SVj+%A}R^Mp$E1FZ5KdOWp?Cn~!w&QvTe z%&@19AG4gUUPnNsN}u+~iQV`HY~c0~+Monr+prNS;=dhC_g_w_`@i8YC8p2|0m*Ot zoSE6CjeWvY`mS%Outb;SMm|mQSP!MEb3wwkbjn{mcdOlkLaD@_{4a4fKg)mOY?SZW zc+8jfGAn;&b|P^IR6F>zbpIB#D*GL@3Kzia_rHw!b;-*p9gX)ElK;qg?KyX?$>qn& z$g=ka{z=leRUiJNU)-)ojMh}^Ukmi6nthIWf-2L)2f7F6HQO$YK8`-kDsHm+S57Eg z0GlXuv`Apdp|~yQYib@LbT97H{SSYm{M7utrGG^W^#+7i73B?eZ>BZCL}sTmhcav< z@PM1pX$-RCPt3&P8@aC$%$M8pM0hzRdk>pI`cv*_FU&pHhl-fO#+eP-PtvQBpYQcL>VsGP`A@9}i^DD^D&v6KF~W_HIu zY0)jrEBx2nPE_5w37}SgV|5XM4*z{tCC|AeKe;rv#c1=`tG{di5 z6B!e-@Uv?JnQtcXGgt;djxpr8FX+09;Y0wT{`Zd-Cna%U6d6Py;K^r#94bgq1K?gA z4v!;qg>W_$DnmrpiE^M)e<{5vNu2QsBvIJ7x#i0Ic^ilyMQ|!I1!T5?4ET}LAOPl7 z5Hm*DwbOY72aZGmnUiBd$RS3=3I{D=us?_!R}%W}9-Axh5=Moqix%cA03Ofy5bs@N zs@oT19(nySfkB7ZnSRaeIrTarTcRz3LC*oqZm}3aNz5C{YHo4+6K}?P2XBVl?=e6R zyW1zFjhiy!G2cVvd*s2tHi>d@d{~_Bwl2^~(GtR35}iW@`MrR5%S$lC(dpUCqk9W& z1o0WGf+yo?C3?AE2l0aUV%~pvVjl4b;v>k4^g8n(NsNdDbo6J0E1Jv%d4sY94qm|o z!-MTYiroUJH-49xHq*i{NQBrm03VZ#`(@$;b6UWv#%tIw$i6c7H( zq?Wu3he%)0seJiL%1&=#4mO<%5c3qoVNC!@VMS(P5Yq`x%{g-IEd5vksdmFH@i_H| zL=4FZF$hmsYctGUsfIE&mhi~v~*ylW(J9d#EGqE=I|89b7r$Uy?%I4*TmPG zRoL+ve-E1D2tNk{L~GAa(MbAVxpnW}S_DKn8px@2)em=xE91nl8wn@Q{!PDVV;LP7 zrVBefOYZD;7aKZiQ5SHJ3tfa+^ES_3Rt9Z}5KI{TmO-E3G(dN$j&D}@d{Raf?$vVA zht1I^<-M;Rx3w0aZbv5er4t}%*lJqNziqT`*}A3+j;2kfc-vd!k10DX{?R}cdSeV% zs3d|IuNtth!BRV(AHBqvzCQcV1%N}gkVWa!_d#-N z^1T{*Ag7c6jGXTatcW4AuLx`gC92+BeV3wuX_EilH2L>avjH3MeSnH4tfcAXO{kcM zE_NjB8Pm0<@7oz$R=id;1%?y59^tQ)+HjN8%wt1m<_1BC%;&)poH1u3zdEN@WEEekTxZV6R_R=%eD5F#!Z_x z;lKcB$$#wzn^Bnk-h5Qkz#xX~cZxmj|7f1!m;d$u`pjj()&Hx0=l40XTmNcrZ~qnb z!XQ@%JL4hGhmCsJFgXD@a`@!Qli@>^7qUw)eVtiNQQ#v7HE@f{=qIQSB_tCJ+J4CVT6nVZH-1Vwf@w0&Z9P83wmJU+sxfjx8U?mwL5ZyQ13^ptX( zxy>K=9vs*efvqt#L!pqKDQXwen=f6c+eWeE#J_trMz9aY^nGtEmh@lR!TbAcFhDbk z{SIO#RWj9E#Jc_sx0VavVaHC^b-r|_^GJHoFVo;w{(u}(4rnhbaWgjbs_jb_f#Z!| z$A5k-p5Y8Mm5~u}t=lI5df+If<<3^a&sz3(oM^p# zCB)Hyy5kpyy%Tv)JRljT<`#GTJ_mA3(>%Zw4$YvWqhs~D74J&PVZ2R*2m)yT%{f>p zlj|43U;n=eqsVRUxsR7!Qs4L{Ubv94e>4t4Kbo<5OWpo< zqtuEbJK}UmUu+d%U9z8e+_E<4yGxyF*Pn1IUl!Zgs4p`PEBc?wDR4K{XM|{~vu>vb zdh7Nk)hC4xWawy>pY~{XCc|lkv+As$peS z=$3}L88#-B&4-F(ZekH*^p}|MHz40qnSGO6#y=#NtkZ%q&wQymD*>rl1XF8}P1J;r zNOpbF+)i3FD^+>>v-%=6x!26ZP_%aI=T8O}f9Xzx>BMCt`4Y&QIADoxhPu`Z7CqQw zh*Fn^YRs$eVHUy8h&TWp+zLXljhkB%nLu!+S0NRjUAu=53nx-*W@G`pD;)p}jN)!6 zyP`pa)?6x$0+uVzx_0)6^JWSA#s^IkJCg_2Xxgul0~db52Pwazh$0wJ1Mq(d0Z$ej zl@5!j0z+bn2~-y8X8a*IHunH$K~6Q9dGnpM+fe#Bz-oM9jL71Y=Y)-lY~1=iG29E& z`n<{nZ%x|$?@|^fd+5D|Y3o$mtuh2lt&p_mz!k${v9>{tw?hp|@-8`f(6j$Wg9y23 zU09>zjylwUN^W#L_GBKVo&azQHkcU_@Q)>Pp+_YB_+FrqZr69oaF`NYs`mi-Hq-aq zn{;9B(m$sRvMZus9SsgRsD>%QuF(ThLaglyPT1HfD02T_@_C-+h}U!7s~jgGUQY82 z&l!wOHLDF-J0}jtrPuczj*$p%2=)=^TAeSMyg1fVK>IID-BKR)C zpTF%*wGT79VrdX8{-G`|z55G}LO{FN)vyPt`bRLv?L(N1tSs@aK~7M(cjj@@VGGrM zTIKWRr?9x8pf{6c)zJ}J<~oKH)80pEyOKq7sywqCLCW1lreyD1uEVx(Fhcy_o3d7q zUqCC!j8Bl6i~SicLtJw;3!Pg1koLu_i^uZHUSF3NrT%B41wrZ9t>wnTBde$gtvsHx zVY4(^uXS?ZS3wRzRQ+W zbgw>m!=u~XnqOn*{Fb%^_wDfxUmARE!4M1OXRvb_{X(}oV~ewgpZ`%Of1GjW6^1d= z5c4ypFiE<3QO;AGBu|K(^NUlQ#^hw6AD`Nh! z4(>h@k1CWA^w#c*J9pOR$aZcA^3qYEQdX{(a#HgzyQR3|G z!IY_$^?`wb-^sL7&4n(C#44u3kk%n=iXXxWYkvNH+(TR)XvDL|!~axF=Un|^il4DM zLn_3I>F*PLQS>Zskt@jjq@H4$+!EH~y7Yxb0;B2pnoc~oG&>c!eiadM z?lmdEIvz#|=p$(BFJa9Ho(KLQ+XWh{cW7{~1M}18WVrH}t^Ng#16Z7ZE6MK}o0ub%eTm zkR8n7 z2O`1WT54u>dhni@x4`*fW>_qKgZ;s^$LE|2#B?bOy|iYK%p;!guL zmx^(chw4CCE{yAA@%B!67^0p+oCsf{r&kwp#cKZGn54OF|NDf#EyJq2`yuueICn)S zs6d^?M%H~E07$(Hcfo(jL*JI2)sGiL6&*AGhk*S8HjY1KF8+@?5je|k>@jZp$wCNw zK^gjzi_o&=p)UZ5Jr`FJu7yP>H$HdF?0Wa;kX0G_enp#=|4nw%iRAI2d=1&8uIF_MNUzq?LZ zE-^?9&59&4Q)`$mnh*D`KwnbJ(6H%Sz1003BVAHVae6TCBC1n&!Q<`i?0HNJBzZvr zCq?#d7Z!RXU!Z$A!2KKz-1EJ;NlA;PD1HW5%HgaJr7KM-TZ#04f2pFCEly$@>??Uj zEpcFdPy#f#bf&~~jIJdYE;oCQ4ZTRz=&rZ9xm5 zxv);=76xb-sC~M7cgLPaq4#T5@rgku<<`}OANo9rLKFTHn(_xfveC7T2@;@CAnq(B za8YBCUjck0Zk{dkI_?y4Vqq}1LIi)Z>*gqT4GdQZy%j6Bu;SG~(CYmA&&L#6fLjFR zrgQ)ML{>Ue$<}SNPGMeb2@4BTM&k-cCInV3+!}D49UE*I0hgERHgKEnh(iqrxrtwa z@>zq6i_T}D3eQJswjtCQr^KQS(x0;3bpXG!b z2u*=}{>XgMyN8x}No8HiwT{az1b;^UZ=J{oL<7QsHd!rKbYhQ9Tsr4ni>7%tOg~-0 ze2SXGzur`7r=rAu)>w;}II&m|y%x|`NV0G@l7s{rs7(y^1;A}PpZIP_dlBn{idG^K z(QXa{P4z!**(8T!;~HHStAGni`Ebe%7Wx77n|XNUF`TxN;V&Un{J=!;32n3j5poEJ z^AUx)FBcpYBTZIaUF|$+8qC`^^VL@u1k6gPXl<0_MAz;0H5}`^!9yO`1mmSDTG76R zen`$e$+KuD@=iAl3`;=xe+E)+aTeI7uPooX3!{PSO-#lEsg5%`vc+&Obmu%PT`2hV z3k1|=+VOh7P7IcyUgtC+!o-6W!US^mBDw`~%Bk0w9bM8+QO?Qsx-+W0J_CEq42xeA z$QDzZCMZjX$@XQiFjF5>tigau!96LS9Wp7`bTW#3L7d$5FS5lFgc{z1qoCw(jemt9 z3P<$UI0-K{*-o%BpZ@4mksy(56BMSRVbFY|CTeMDZli-0tB5`W^^zd`_TAhm zw+Rz^9MMCO9)e@9kI=={>l@4`8qw#;oRrgcwm05p!c7kDF1{LOpH88bnSm zg4@*%qK$v(NKM*y70PoUr*CF%ZV$bD7+Zl5RxR9t#pnnv$21tVlKNW-5iitYFI%h{ iO)7C7pH=JhOH9Kj7^cSNMwy%4zWf~xJ#fqb literal 23842 zcmdSBbySw?);;_f*ol}3D1ss=7$DLHN+~5NrGOwI-ECrmAR&TucSr~l2BIRMgh(SP z-O}*Q3*CF4^PTs6;~l^8`{z4j?1R9=^W67!uWPNj=A7%gCoL(mcGZqm6bfann5eKU zg|gU#{I_BmezJybxENoSnx7JrTY>*MtkAxT?^l|LDw|U%>o1f47DWq1>EVaREzT%e zTrk$Lu)b_|g>vn(g^8iDg`uA2E~_hM=6c3PN7)avA3m__s)dCKF9*jzzh^f#)8*Kp zvvoU#vWp@nd{WLPptr$RRc@?herWu&%c791kVwYREq6V$20F?uGii(?eX4t{#-e=u zd~}T3pIz0t@28`{uBWV!`8mQcU*VD%J4*-q&oky!RM-6`XTN5?^pM#3{0C*kPLN)J z{iu0|L!)aCzr*xo08dei1@H64Oe7PgTxQIfzwC#WWjmaL@w;^x(V~?GtArpBW~Mk1ja$ zZ{IMaEy1taTr0ZdjEoX{t#WE)R&n{4>}6nJP(HB5-R<-};S??F{rql*y5^Z9Zuvmuh2S=`2Ojd-}P&85a79TAodmp9+wOmH?x)1px7afv^_ zgq%*TF^pAxnJVtZ@?%IjBlJ_31uGw)N|faD@{rT67Sny1_J#-W4&VLl-uJG+pFQsF zHRRd3?)I%)EW36U^d7$*n4h2T;OJ=C_F>}{UESj9>gqkM$sNlnl>1BBqFCEiPR=Ag zz4vZyn$B}yXYm_`%AKFxTFlJc&(F3t4gcI$6)Rsc_~Y$nYU-A+rW6XxXBLmF%X397 z?fy>nz1wV$GeulcAN;vZPfzdug9jDy%4z((>nN1l+eh9|D8V06`F0lCy?XP|PqaSy z^W(j;yH!emrPR=HGoXP0v zTMp5!1`XG&9`ZBBdR4`GG?ch4qOhF6i#l1E_Fm$l#Zy_*|FV-lLG@+%n9Y~qlXioz zm#euqIZa<1>#3F!nwtol8taL&8|&WB%X@Ktsyg3dxJ?YJlWx>-aUgd*utz{L>cX|! z7hhc&oRor#%(%Qn@l@Aet%~(-X>DZ|!h8;@=zn;; zTfZhXLU3+EEB9Be0k7R?w9f%$#<;3jytJo6O31SB=;6aMou$t&xUQo+#}g@}$x|mG zEVtjl>ek|o3cEj$MshENBPx2A*Qz%f(JShiZP^pKXvs2`J$p`Hzka>;h2E3?>>hTiWy_v9Sa^vh z{W#yb(rmzxa^murXqi1%bac9XHJoHlow~7uOF#U{KB?{^24}AlohMcL@^9~~l@B|+ zHh1VfZEc#a`>%nfq_#F~uB%^8c+$|(B{Vl*avZBt?EaSEf6TZsJ}S`eQ`?^DwanCo z>!_$H(%ZaPWKKQW!6ob9@G9e4U8Ma$uHrtaz)JjEJF~7T^@_xEep}gG`*DTmyq1-r zXI77ORfuRfO-4A)P3l%VWn1;dp7%etpOaHgw=7V;F5_AWU$js#*>5%<20G8|-Md%+ zlh=M;+u?AmZ|LZ#Md7=5Ke4{@($bH&aH#j%mEGUW)@H%0=AMHUS=fKW8QsZ{@<65M1h-?_qi|T|a`yydzq(@P4dPO6VtFj-=0@&oMJG{Vd$7QTZ)F z#d2oC)N#DQI`(3E>@mad!6p9OY^u;KiaAz&G@Ca^Jbk+DT3yC@&lg%n>&ONi>#n+h zO!dNP)=tdUH_dtC$MST&inHV|Dk9HUAsh}~d?D&-(eiHP8DZh8nTgO()uo_b2cTyt=SnXeL?q!iBN#TJACGxpvv(jrL>39Qj#C)^0m= z;=z`KvaRnQk)U%#9;nSS4Z}S}oqe>U{pI+Tix;1reYh>;{Uh2qqlWD6syJV#nIRD| zS#k0EZ{EHg`zpc^W7+dfzcSh*^1Q!JH^UAJW!37ax9agl(_#C99Avj|-)@I&J60~i zp*K4)1Sf+;QrK;6(G1gDM&4_DKeO`JSRBpQy@1w#Hi8W0m-PxhP3Gv2yZ{ z9II=$@7(ENYkFlnLPJX%CmSK&E5)dpJDE*T1AD0UDyw#ti6A@Jxs+oS6+&L=oYP04~0Ubwk7U-exm(Fo_zYz38lPt zgJ_4(BlHZN`l)GY!>2V!+cm zZ~SWL4qnYHR-1hJCUT(9fWzU#hxNaP-e!tXPSfGF?DoQ2?-L`-KHA}LoSk9G`~2CV z%QqG;UTiTxJKj^m-BhXNE)a>gClS|Q|B}~cFj&7jF(GFlPX#%OEDMv^dj3I|W$Wn! zbbFET#F5`TnFQu0TAv-&bvx^}bN_=v&1UX3loLZwMtV-R&se+H98P3qW=j7b3lel39j%b+X?}fEzxG9py3G$NB)s!T+TvnjUy*Z2@;(2IQ*7-H zPU(Bp%$#@@)lSZn?OPq^COf+;qTKb06rz37RFJ#)`m;_8*o{i#*}pKXIZ_oZa~jn} zR$Dtf{@Z*Z9p}}@p5sYdBX) z3C)Hls^xU>X&_p9bcKY39p7pD-UyX9P>a{R<6&u_fd4=*$}+!%&w;Plnej0fqVx;zZ?+r# zD#B$qdX-d5QcGYKvLy1PQ6eB#C{YADV}LIK|$MnigfE-4Kfl9Yf|+aU%fnbtu`F# zI}TYQu_k{exyI0zemM%6%n<{^D~`7n`vq73$2hyZ5z!K zW*1Rh-sl3I+`oHQ8fl4yHi`+)!eP>^y{#=vL9s*{k1x}>DRCfwUL6liK24{D6H9?@dCHqro>a~N$*8#F zWN+Xza$Edswz8{ABQF_zGsc5kwSK*IZX;GBcW$aDRxZXfB*IXtCf_-qnwomF!Mf?C z+ZBK`PbU@X`G!CN`^s>!O=9JEx^f|>sJ!=Ih-_X0r22MFpX(@aqimzM2v7=1u*Xey zmE}2Um_9$Ob!TpFJioI`fGS41M0jd)Qt!u`+ZS`J5@cm%N$yt5wh+UeSH3jwBq`{v z>w1HRY|GlzD-SMa7}{3No(niGGySU%Dc%1CYAgSRTm^me^y#>-wIF zd$Tg*lMzE~TwLDJ=DHK)*tq!a=bkeWMwtxHc&xJDv{`RO85>NsT<`7y8MY%>bn-RwF+T z;2?hcQJt%Zy;Un$eqGJ+Dj3DUpe&G0D*ReSx=b!V+;~7>&NceI(&DaP`G~ZmcW(_B^0g8O! z=j@=ky)>XN@gKx}t&+cW7Y!pX; zQS|_Sbc&iaTS-);DqpiRsxaqu_?28#6ssPYz1R9#?~rNYK5WV-d(X>SSiFegVInOi zOUt?-fq2KLUw(A0vDkr?A*YugRDY#(A@bbUnl#<29BX5O6p+JTtfS|T#-{7Oy;c1S zZk+}(?Bzvstsz^UOTY3+rNhr+DPMe(n^1pu1F~zD{P{mGq10$Yj7C#qvkY&CJl8 z$YVPuXymJ7Bm6oy*t5`d&`{g|>NTA;%&bed9#BueR;PfAR!~sz=}F(rrtq^f$oX3U zk2%S#M?+;vfUJ6e6i09zaBmgv+1t-A1}$KmT#T%3#_Cn8JcELQPMtn|UR<1j@-wPq zN2(r_90&5QM$t>M9qHJAsQ5q`Ng~D z{{#1Plo?pLsvR?UJ-dCV&4z>mQ`cl?P=1%=?2vUwPfw3W*`}saWYIGUC%1?meb0ur z9gqCbL-U1;USxehYb%q^|0cr!jbfoumdwdja#wt6ngT9BT3gxhSf3xSysz8Np$Vl$ zAtA8>rlCbe`&r3{1&iibwB0@OYgW_hVcgV!^L(7&QQdCT{U?Bf?(_njI-j?Z<_FDs z0t#rv9uc=_u_t?1tzBDH_+YD=b)s$SBks{!gQPAXs{8lu$(Wg?qLC*(#uN8$?gP50 zYBndpt1Mf$Ga6YoK`G@FQcwjN-I(v+mCz-hBgNL2U2XLBat0Q()Nu+4X1U`{^K+RU zWkE^0fwpIj^Jg=#!@M3pzSQzn^`4(7jlGrY>0@m3>We8f@xU2p!E4xcKDS1gGKm3m zc-~n@$BO2T^di6kPZm&NZMJ1xPp)z9m=C!WcC~C#PjW*!{n>HN>sxqPJk(pR+cNmm zy{7pWdgs*_BvQFtJ4?muUg1dbEZp3RuIm{TMS8y*+IYh0-i<^s?QDEii4qDKqEbmIncnx`EYm6W?{x)W*l&xNr&L zk*{B|dUeH*x2`C|Jk{p+?%f+68v07Or-mHs&YC%Qcl52^ou+5c-f^QT;QsRH(q3w# zDE%-|q9_r(Oi~X{GJY@^ZfZh(N_t)+?7$SV|w# zWWV8T{2C_0g&JG(oKLYTPO%z&z!;#MUS+h5XE@rnbLix%Q3#_*_eI*}OP7Ly?Hi8d z@sYP*m%mFb-ZHc1u<9RTY_%c(0$K2GG3|QPt_F}8Q|-PQq>Miobi9bru^TGfx_RTq z-D0GTCs^s^&1GF!0fLo$*wyT+j2--MQ?CS>dIP+oKA1;E$AgCsNvEWwPz8M0#y*7Y zMtS@6-YE4(`A^S&$MT#Vf)M0uxdcs{?e*Jh$B}UgW+(hN7t(_pqKvm1E8>s-je=NT z1JsCs2qT;vKfmh!{rh!9%xD+tUh2+ux*_z&b2F2O6mNCMG5Ph(N7nyNV?I^-UpwT5 zx(qMgDJo*Ua9Em-;p(NI0$p8Qq`I&wCiaHNb&!(b!q|t`NJa#5^S$3pph;z=oWRKE zqp@i00;>tTMbZ#}j4T?>(9lp$#7|Yc@`VM?q9lOlf|!^X0ojBrK>hMF-B$h13~0w? z`76{z@|!^0j_v3y%En&3{qbdf+Ie0|K30wph|vhR4@Q{;fqI5lL`n7haAiN{sx0@A*!2?l5|Wjonfe4V|a|TIaiA321-qpm6f~eGL!y*Q!!c6=~;Bi zik1JjhWQ+io564R5)3p;8Z-un!RuCiwGoI>*8Tg%+KYXCnb4PtdU$xG&i&BY4l?lw zTR+zValYycQtjAy{=C|iPhJGVlkH2#ZzEmobMOh%Wteh=By@z!K3uVCFOZmba@qOdNBRzVXF4H^J`x07ixXLwO2XQ=sBK)vDF$> zi~@0A_5|$ruCy}23+QmZC91{A$0_Uw2=c596Il;5Dv5~Wb(l!TmWaa6jRt_&yRYnl zpXd{dzFK*tA1=aKol*C@fBlSp0M^A|V(^C@P?*K!@Ri%Ht_J1dVmpMKULkA9rD&cZ z$myug=P#fMX{f0~x2oHmOgE^uDxT=qG@TQ)Uez2~(`N;Ch7|oSc`Y zrsj)lb;rc=)egMS$ajiWObP@e5ss%K@hK-@_U(G1X!QOU^Bi72J9aI0%fX9RzlNUi z4Bxa*k_G7y9I(|R%c)VlGiT3sfAH8t<=};dXQxv8dH>Y)11w&m+@j**vWAB7dx30$ zw4#yf2-Otw;C3MPIC<`%<|5JYUF|B5AXUqv?ph|{BS``_sKZCcATUs14}N$HFkUvj_Ck~!DQt-DXsIAUl0h47TGx`!$@2x?{gibNsYPl} z?^)agQtWc$>z77-uZ&aVAixMnG^?ZV6iV8EFcW}-yw?5k*r9zjX(9kYaZXcR`z-rv zt45aN8Jn#AES!BE>II1sz${0ku#1Q$g(UR^+(^4UgL7VT^xGdMYP7Nc()9z^ML-lYb|9^e4Xpt-W6xgE(j+UOTeBSRLzpcMpFd- z@P7O_7y(XjFL}^l21!S@&^h7haB6?pfP3w{ztA(|A}Ww<(KD|S7_T=^tnSa7HaZ{3 zuPowDU-fYN(N)8Pz-;nhg|yQz5^kDm`SLj7d(??lylw3kyxz~BCxBl42nG#59ImX| zx!=P``oFfsb6gx-?9!=gBG1!~4K!&iTC@mafEQ}!4?B|Rp@PT&1pvb;K6YJBafyjn zh{ZWf38i$YUoB1(y66 zALOIRWTgYcV`JV)Nl7&_yTr9U29Zkjk(8btxpLnqcT6Fz73ou&arI4fKkC-|?ZFyR zJw?bgCz;-3_j-i5A?j>$6r&!}pJ&qhRzJ|nmV&iEPZu<*m3k@&Lo_GziFAkvrxEZh9*&gJ% zOXV9+T3A-$M}cEw?#{&!_T=Ie&V%S7baIUhg;IUu-qJP0LR&bRMq71?OlV!hUwmGz zQ}kia!Gq^bO--?_d=_3-Kx!prjn-c3Lo7$b@5w#%NpmzjM&-+@TAi^5&_4O{+s_d3 zvet<+U3&bNzPBdxUbL)2+*vCkM+D!!OoTnkox_{Dm;rCN_!h5((9P*+`+Bn6oJ{`vpW+m8iyd z=FAyTn`fbiJz40q2|-zfUY_WdSZ=Vcp5auhw_Gi7S!DaGBG1u20eX%n;US2iLSAi& z{Ey5nIRzG6wJtIuVnH~zY9J=J<1YxGy+}R2!TVSm6g8rA_ z>qIL9cgxDgR_vI+6H9pWRjBY@Xp_f|DL_E{c4sYZWpw+L1!$GuUI3Xrr1(ck1u4wW z&B~)gCR8nXB{E97!{o5Tz_hobx(oz}(V-#+g8xzXEWE!!iBtuF2Jl>!KR3paJK5o% zIPM6g#nXu`cJ-D6S^e9HaA9YcP4YgvJ7qrW{z|X?7mS*@v7XKJ>L~%wpFLxJP)O*% zI6y~I6p8SIx?9}Tq=7~7c6WEjW5fMO5^B@#XNc=?`T!a<39xLQ;mE<=goVTJNuzPC zDNjwqVdyqcWqh4+z8b`>a>z!^v&LP#=)*vd<#o)V!o?Dx4qU_v4vI++9Zz>nS`=Q` zX@?XRyvz2?JwxEw{;bw@V?V#12L9^)5^}RYXF%{;eU^-6ccq7W*}T(QT&1;l!3;`P zc28$P!3i+}ObJdckC2E17oS)i78;xnU;n|6I+HU?{nL^al5*? z&1fAwnI*bGLguuj11RliL=JV~vnk~9Abkk>Zy@BOVCW?YZHq!jTBg3nTouUUwizh$ z@ql#)H8eETUfFyds|BVcG`_E*&D!qvyoC6$t(1PtmPn|$5EGzku|oC* z;=TXqkv#hNAAjG-pNfi*kS7>1Nh66sMq}q`f2d4cdgTjSBFOQVAJI^qW~b0SlKvib zx(Z=Q)KMa+C>YE+T>)s3LscI8e6;N9Kx6JyZ(7+4vv%>fH3kR=Z0jBn_LXjQd@tN+}s?J-hC=Ti4#9`Oy?%w2~a4nyef=*3w4h2Eo)W) zGmd`#zMGp*$s^~y+?EGikDVOaHi8*A5wc~&j@a5w`<~G)VL1ZEfKjW7gCtN&;a$am zO(Y|ZYwo3{G|S|R*J`JASI4Q^XC6wS=ZmDCo%TQG1Sv<>zPx|H=G%+bMhQ7eqlZrQBXiIve+HL+h();TLW@^3+u;GJot!0EBK`Vb@Drq{=R)|NZJ{T4_MNO?wTjuj9j-Zmds_hpPwH-$%GEN z`Jl^a{Lxy!Dev;M&qC|JJ~OOxtyACsI3>%Hp;-V|-@J%VHox-YXqZmX#CbO_59LE~ z8|$;z57Mi)z*j>`*GdY#iLQ4B-Xpy{P12w4i~>WP(ZP1bU0S9+f(7>AiVK#APkGBf zcqUNdwp(mfB6aw*Ncv&EWiFa`+70m@f8mq^y7u>)SxNP~}BkC?@`lsV5H5(~O8x(enR!n6cLs_@k z37Vkyynq&|%F+*$8_`t~K4GbJuX0*xu@LjgjCgZ;hMwPKQ~NhZ=sbS`5S8)O6z-eU zD}%p}{6-*DM|@7pUhJUC>_7TX6#jnI@5Ot6j>$!ng8+~d#WjM*{BKCS9KQ%>NC*rJ zPgTZOQn(+Gw=e5WeS*;y^m-R}zzV`Uy?W-xD7yA9bU0*(Fxx$@4yYT>CooY|L z4wu%ktn~uYS<1k)6}=mfd;Kde`xfeBOJ3sr7srNqlkN>aQ4Uj0F$S_DuMZv6INh!V zT4I@WybNQmaH;e7A2jBW0_6HTXtMP7vDdt?a}IXXVBP7Qpk%0fWjZxqq^LQtW6vxt%aJst{2$cNjQzC4y%jM6YK#Xdaq#t=P52 zqbIIE(iqHjvp$u9az+aLH`mJw?KG`znh4o|fcU||LE5}(4l3%w1LE4d$50+wVOzU4 zU1zNyRQHRDLbdzo(F*M2#GBO0qTUBpz7YgWsTRKXN{raMP-nuz!1Y{$7_)>A%aJ3)98L3(stA|1L%{9@>0*h*LZF4X&jCN(oZG9n>O&(U z`U?s~qN0YQygUE!T~gt{F&k6*JJTveGM;n<`s@0t>20rHyuroZ^!W$>$KWQ=cfXt) zYe>F)8nmcP{>-pMUZX~)ks85ZsCku74{OO~Tj)8?3>DduN>7|i^v*M;mOsCoB)><& zf(khbTE1?RD;0$@===2EtCg=`za|)lwD+VVpB^7j1OvSTB4pBdlWpho#GnL)IAWH7 z^3qn*0aFnA_W*D}opzNU~mNJq{d?AslerTYnSMV5vcYgXSgx?kym+=tc z##=95aE|pir~m-Tz_CM|9gg5}ryyStgz{aGAe2@ijf^)xOg>asbC;QC)|(Z}7iHA- z0rqm+E~W67D3`|sbnry#tXR9Qs>e}-n`?E-3cKOiM3X*C<*?;nTgsfzX(XJ3tnCI|P9_tU38?b!G26Cs{F zC8ejXZXm9jr^xaE`F$H|Eh0>93~(m#pb$@7bTmsqqrQ$)G6m{?`)`>V;Ne)fvl7VWm4^AL*56KTfWcQKVC z_&MHS#exX9(B1~G5HI5mdmf{)U!doq-uC#93XWNQo89|_KsYjsdrAKTbZiU{P~L+S z4PH^}F%=;h$-u=ejLP0MdEp9}L>joe;4iXuI6#>!`n$!Y+z;l9dr?(dndBX4S^Hwm z?;78kGCQ9aK(}K@EHPN)c%FLy^7Mgm(+f#=b1|ja!dyd3+z(@)@FG$7%9Spw%|c_S$y*P(pS~zON8mc z`7U3#^D#ISnA%=9ETxG3MmUs$R-z`#WGxCT?BU94)^ zFLKOLpo2HO3~BHE?b0Ij%M@rB8U}_W0J)#NHEBc;%Q;G3_xNRq-v?M6NgE0_+*Cjj z36_9x$LU{|D#!6uXe7BgH(?3SL;D=K-|0@r=M$ww{?z8v__;P1H=Czk;@5<^CGLvN zo0%cAftn+}RFZ&1Zjcub5{XpT>6jsira7ytDOYh(+?!Xi#AY>dG}AlyP{xNUJNGvo z^$2pFds(*(iS5K!p8;w=kaA#(i;IdxR<2xGU04jZYENl4 zy#sPZHK;^~SR!f;uSp^J$oQvc3WdUf3;KBG-Ghwf9gc=pOKDF1iz;|Om^Qm__x-@! z7~RiqShf2bza`_#rENz&3M`fW#z{INLwBFp8+J3y`{2D}V9~m>o+0t^;|*zHaB~9s zRsV24pq|%NRO0sI@H#O)zpbC$E{nne+0xR&2~}+2Wq()um8v2-qMKs2ap+EeH(bRo z|02;~`|s%WgE#vXJu`LII#-Ry?BBBMdbiPUl8J~{c+_jOKr8(hsB~ht+)KmYnvE_7 zErO$@dEtF7nTEVZnJMi`F4j!S`sedl8BeibtQ2S2rk2%GHlNdq+g zYZxIVppW?viVA*euC4aCwWZ6y))gqqNPLM@n6TZw=0?>yyq7Xj^116rp4sbeUF#+K zS*cJ6Si;p!1ZN&za?XX_n4y93NXOdh5-N_Fmd#-7@;>GO%8QoJCeIq;nV3~vjfxud{(`r z1ocS38%Lpf4HYpenJ%6G0~0M zb_p3X*nRpACTgOg%kAK|Ne*xFd4YI}$0kt4_|c4h9g4*@7)=a@K$Zx&0%^a)e4r^ICwsOf=J@@nl!ea>D%kJjpEXilhAfeN94q! zwBz#*sq~3m`qjoWX^{QdkW2QQeaO;mL5iYej@lO5%p;r+P{TDfL!t4HI25($fcxGH zZl^ZaJ~P9xCKQ4Cz4y4{#E{h1Xp_Sd_6Iz=war5PLA{EhRzrd}x~esG#k z9Iv!{rwf0lg3A~>aj5EGC&}~vJq_k-smfzL^J=%-?BetCSY;Ab^Ttd1Ha55u)FI7c z_(Iw8%d@h$r5zpOdU}(M)_)g_c-nKWH{L85<47q&kUuW9ay=%&+kU;>(8yiMf_UFt zcDFN+W%3QDU%T{ZhklktjP8=xGz&JJzecCDa5+nx8eZe#Tp0Iq?>Wt*TUuW!xcJoR z2Crqe*CLAvOFq*E$~m#I)#Uh<^tmx#-MLkn0tW&KPt*5OgK!VhxBdV>6O#K1H{q`W z#089h(+Y!ygoN6L_MbvgX94E3igbz?jgNCSegB)pdD&vyf9+8dQNIUI{ULFx8+VC( z`tWL4j)nZ{Uur?Y>IUVA1iVGUXncjDV?(!ARYJr}qD`Q^N~<-g1F!yox=t>Q^}iXM z{RP4-`hR-y-vb!$%`$vfBvSvrEkZ`sY?S^00$^!pI)(DktU5PMhW|fM9OI)h*&ipa zzZ=8Cau-n{NN`Ji(pZ>1vP)7F2U{=V?wnEuw4Xfz?mq;QWt1lL13arn(nQh12= zgG&A3nWg&N{*|d$p67&&2i0p`n4id8lS@V7x|@vE`iIdb}$C^w4hg0&{a!1B)TF*0sW`up_c-U|Q7 zN{(*_+<&V|)>@1-zx`qaIQ+%tP-u307cYB8x9B!urp`GBKO%Qgc=sX<8?S%rghn3Fm2Z?+*+y z`u^l}wwKO?TK$$3o4@6*l@u3Wn_z`I3Jj0kG+x!T8*0>uFZ;JYuUp)^W3%O4wz^P-2w(ho^+bZqzzOG{sC&#wrh#XRiBlD2?D#SB1A^xXEMd9<7(o| z;5;K^-tk!mUCV(j58$1T@2ZIEf!0z5V_g_9c-Qnmes$Z&CzfRbP9Eeml?^SksaEuh91S9ce@Mp(p6B zP&SC0Won|;eT?`Te|`N`yZW9ji09^PGdg z{LBb3F%Z%LO?(V$85yA2o;bZAByos6MUC{1_PY!5~0?1K1Hf%yxJF?IH9Fi?V@4%c+;sT1=*;O9d-R~C3#@#4kWwe!A@ z9~U&K6-uWlmzI9|R1P&4KxY?Gb6^d`y49v=xnkl7L=LCLPid_AYFe=q^lRfDM%xbWlU%Mx_UPIIB$PEh5{&AG+rmT`t>TizV*?tENi4U82MJ|d*lC^a$%BRwPMAGwDT{`+DAc< zc9%sZYzeDST127mIM5|0ITGMsD{|E&T76(T+n+ili{)6SFdP+8t5&TlC(}p}reMMm zEpnq{VG<<=Ubsoi;R5Ix%&<9i#S1OWFH<&vD!hJY2jDGz<-r!I)^hwM4FEfvrfR30;OuAxu_ch80qsWUVaz0%9`xlpUOec3{EWQ~{6MFa7B4N2zUh*e( zSY!(B(u%G+v`2PZ@R5g0w_4RJ(G+giQ9W@+!h)u7#hML1E_Z?#X-n+V?&=?3uW{t& ziRQfxj^zzaQu6o1a|U?wX}f9Gch=jN=~n5lr)+ptFBxT6$Lvira37L(tB;kU;s5re|Ks)Bqz}ZK`vX z15hhl9i3m_pvuO)k)zVrLP9;32JlSPHO)n0q=p4fIn2lg!3wP(^SnhZCs%Gag|cGx z8YXnlJFk*+0nVO$8Q_Qj@b=Z1FS)TmYVs7LtQD&^93Yvq;Xydt!|kL-}&4Rxe> zUnuih%WU?^m#gm?HU`idG|T+P7e`LvV<-o-c=$x$jf!%qEv6I%-;GN=qPBSPn%zf4 zU-ZC9tq;3Qvzl*p!32AP zvhblr_e*zHeY;U6XVGyry)L=4cC0azLq*W-+Qyr-yYVuijEGA&*KMAaOFR21qJ_GL zO~LTNwtAa)kfCu&KvWc=Z-ROL8Cx6@LyzVw<%InAUmFyFL~R~dbX9^0 zgv0E-@8Sur_nreAcU|7Rn|d(W)04V_nX>45%F;@sTYzp9rL%YO&|R+lU-+hgF{=1V zHs0;w>ceUj2d(b`>5&pER(w?CtTaDud{_+2t! z_SJUhkXgX8CiVXRYLaiN3o=Fyf_*oCYYDE%jKX@VsHNQ5ec5RXd^CW1kkmZutc5| z_6{0)XJ&MyzLsomn76ICGO-jP={2AFmh7`#E+$%p z*ZLhlOVfj-_+B_jg|7=tv^|i@-_oYVXpor z-xUk5QIoHZDXM!uD5?^onDI@1eO{MGhCbilZ*!6{^cn-=in3ww)Q%#5_Sd>AJWev| zxXjo0QBh6=n`8%=RfZniAaHMk?Mg7((%^u|!3zw<9d|_c&#U4EwJ(r|=&i4n`Ez#9^6D_O3C48~iUX|K2$WA`eg>vfdi(Px)PaT}b zN?pIZLGL8;B%5yA+i|qUuVgS8cR^KEwVm1qZ8044v1A4WhN3Efu2^C# zhW&($&kSHi9EsPhEu_|zMVxD`?Jq;#67lviRtZiXejV2~0Pcp`e zlSRm+E*LcI)GF!u0fmyAw`@`9F~E%?`5v1!h^9X3 z!F33>R$^-LB%|(lF8Z+A#9rvkoaGil^~ErZm?!bW!Ij%}eL4MOCb%#Ru*?L@V(42= zS~?gW;KHIJw%xl=qDYgqZnw&*f*~AtC84Np8^NRp<(7;EJ37C?gPM2Wpu7Z1Lefm0 zUPUAs+8-VsuFSSH5R-M7aSqx{rnfMvHWARuXYn%_YbD`%)}1~fKK=lX3XugZR{_FN z&30`E5pR>6XC?f(jlbnNP80j~OI3E`AP{*c<3iPLzc`;76h9Yw?d~4ouVbNcmhnP{ zH%0HpFLG_I?-axi^c0E^f^=XV15d2zRE=%0Q0HGD2;Yeqp2V371oVn>B@(39S_f!=s ze>mnDx^SY5CsSr!U+$A76iW2s-Kon+D+fYTl-TNESt6$K{f7?^-3W4QzP@~v7;n+! z)neY51U*^{J&ZCCPdMp9u=x8qIHWMWSw(brDA&=LD?$G=)hRR|bK}Nhau5S)KbT_T z<3IaGtp?9@uf2E2HdyqCbPpXl8a6MxUp2ZMQ#BYoR3O+B$7X<@JwT!axTCxNWg1f# z9#UMO<1b}09*Tip8AKQt`ZyT=*)XyT*6sq>L70%aY=^baV;-3tg@B!}rEw;N9F>^^CQM;j7Qy+hCF=dSz-}6+S#pcGBgOBw-?}HZhSgw#tjPzjF~{1U?zP{x*?6 z=Xznx0?dh1gCmR__yg@uy>I!7V}I&7;X=CmEV}lHxjN=TY>Z8gj$WPD8Pjg){Qc&( zK@k*Wz*yiMhel)Vk&f;xlOMK8_B}7HDEz-Q#=k1}0o~>Ip3=vlq&Dx~Tv*5|v}2q7 z`ReoMfDv5u8HJbKJ9Z)J8T%p^*DO_|n!dc;MeqH;^U)4U0pg?_=`lwR9dvo0;?d31 z%Uf~9hGr4G&jWav>HBg2&67|1?-{jX=sOn6W!F1_}- zv6feE^vTP`1OpAI2fk6Sps+7rm{wg_!{lH`2kvVJCsfbqI&qcf3%pCTTl*%rcDeoe zC0RRh%gMn`Hk%qOEQPdYi{5cpVpd~E4+EuCbHUf*vk_}XxrE`@lZ<=wLQo)VPPBd( z#T~dXozni&yn}U@$&=B;9pyKAW5cEl4@8tfyU z7a9^sYxkh*NHZywn!2xLe%G=$uSmH4uJ<>4btPF^3ik4p?&Ma$nOE!9&UTznN^c@g zPC7mX=%DI7OY%g3-vD!GjA<@fe7U-oUF`+teKL(xn> z&VC#;v%32>lxC&uRwk3X z(_A*lvV?MC&=hbcnIThg10yq0JF=l~Z{EE5N;XZ>U$A8`Cj7maU1asq$l?`BCm9$q zMob3zh?gf)VklP4)q0^_TKYIRKjnR&l|Sj73I@K{FS}3))-DP&;s#)paBf)kk2|!a zA`{;!h*xinyAj8aN*VviL&#T&taU&gPsuPKz*8&~J~9vjqllNkKbzPm@H>Q!Bd0~7 zrjX%I%Mz|?!eDt{1H3y;MMXvE9&)T1W=YwQqd& zVphwl+>uf~J9Lhg73aD2hFS_q#kwFR5CMr3h&whqS`@Qs<@gD+7;NV`S2g~CJ@_xk z5L^QcNU%zEUzttJ`P`@3$AKZ09m#*d5~KNu{BE}mXR06kvdNjtn9snuY?6|05J1~Z zZ2G69wVcz?#u6JAIgAOy9&yirBMIUJuO?PbhOx;!7I?mF7|=Ot8e83k5@D0qha-si zvp_Z~PBub&BJN?LrxJ5A-1IP)F^LhyigmuXqBE24DNJcv1PTG(T)Rn>Tig`=sZt-UYXIy-wXzW$BQx;_NzVeV9S+=3v6<6;cpQYZW)lYC9JGQlSB zSaCT_40g{=LAZ#0oUq$$r`ZPu&7;5C4_L(}Cx28jTF=OiTC(%7z;VQ z$77GkC(MZeR}q^sCXjHt5G_Uy2{{1zCtq6y7g<4Orr|>;@C$>g<(SJK{d_cE?VJjb z8E7Fi==<5(C2;_OjJi5FJ4A}Nb6_7EhyWZd;lTtNa08i%)1nA}K8`aj<#yY*g3F_fo88T$CZ;q6X z*g~bd4>A6o?=(xIpznJMA@5|MkS6Bz^NPvJ$yHvV5*5R7R5(fJQK_GTq?lOD%p5U5 z^(5sd0$5@)BN{R;ITMJzR-NEOdGDa0q~T$+1&COdrOMvdluyQl zo0V}+m@i1kvDv^99ln8di7`xo4UKd!p#&c@TfmDizwV&cqE6Qyqz>a+dPHkpKncTf z)5@ijoW9;n_5nBK7Jua7~RA!k)YJ2bVM=>h+dX+DfK1Y0-S zieS=E9P^FB!nc_8petjeSK3|^!6+n}7?+#FR+%cIctx+zY!=e)g)Z;8?C* zHsqPcOlmcL=;hgUQ+vnp}i6g0gH%=S{NP1kPaDJ$AJ+s7$u05h~vtm z<@!Xrd{w!Icf#p`M+#f}mf5?E?#*A}fi}1r%?$h090*Hd>mb55>8s#HBDX~j=@N`j zwPI^bulr3DOca{^!ZVatcN!{M`tJRE^PcUJl_SG+}_Tr%5{nCm4y<6=Q)dn1=Q>$y& z|C)We2-jQClR;znB_uS+p-%6moN7z1gzb0t?XTVbW{vQQ+9K-;@P6_Z9g0C?dh1i- z)Nh(3rI$H}i1Vq1E1-Sv>}&M?lbE z46rt^`r;jEHcZquxLkVISmQFD{GY6y)FbA_Ow9tfL<`KqA=@UW@waIrxx}}x(B!z=UP2w2jr?` zL|DU=TO}B{Vf)er_?2Hoq<4yg8?6DpT>3+C{ZF6zZ=WHb*4f06Tth*0(n$69rH zQt~kg7z0T3VC{E`0jQ5CWOHKAMY8?^4~}Nn#0HKks%A!v-u8dW6$e>|<671#E}h5( z1={mX#kdL#**Wl_-pCGd=%hWvRg7MqL6*z3;73E?Nd&3%YIVNO^fM2(5Jk$I}<-62I70g}K@doP-UJ6#FGV4mTynRfwI`MB*9UaWouIvS3E`*~vk zw1yNpb_8xKoVcaSptx)zDE9p(m+pHHAI7h71KlMHS?eHO85iz)7OEsU$&3py51c}S z1rNn#mp3L7k!r;~7YsW;zq~FVx+U6t1Vt>yxGAsmfWNno537KH8jga?HOiaR!HoQb zXWy%dmIu5znUI`a0{K+~*U)%?Hrkt?E08kdTV+~>W1LXwuMRf9CiY?CV3wE#U#xnE zFc3K73T~Bgo}@D58WflcRC%Jil3pBsFN{HspQ*#x`?JhqDt#^~x2QBS8V{Uc8>b!o zEv_^Ral~bJYQ=8qtXqI8Kkw}eJU%eA8}o#C2DuR!b|goS=+|W=SPe8LK*DQHo%_1v z#>Uo_gZvj-@3$K^Q|C=~(4uOHu_-3jYX2+VnOkBK)4{H(gH(q zs;zU`bqd{*&@roCB?7F-sfbYHFK6$hoV9s(``E$YRO{Vf6jYQT_SzPB;(p zDy|nL*}mQE7Y@g%#5tbV08-Fg5GH4|-n>i?q9rNbfc4}AJ&4tc8RWfFbZWN#Lk_SRLrNFW_=d!&s??s2*Tc)U5%I37$HAdi6zL z1KPorsZ)QDt-w&NjRm$H<<^KeECBVA|J(o$n3`07%K^4pSKZ15ZUAw2 z?~?(at_Re<0$2iqdN9DDvnM;97+GXy-v)J0fk}zsUn`_iq}F`VfA#>~SJSSRAGHP= O&fw|l=d#Wzp$P!*_}xPQ diff --git a/results/benchmark_np_flac.pickle b/results/benchmark_np_flac.pickle index f0d086c7a0d73fda891bc7d3c645b84aff236951..32397ff20cc3b2f8eb797fe36eab3e54f84d0ebd 100644 GIT binary patch literal 2535 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 literal 2088 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 diff --git a/results/benchmark_np_ogg.pickle b/results/benchmark_np_ogg.pickle index dfce4602f47243f965edf45d189da0361c71a82a..39622547b403165cad168b2e6cf79a5ece553a75 100644 GIT binary patch literal 2304 zcmdT`Z)_Ar6z}!!=s&?wz}iUEln-8&)<8|_2k-<;soio75S66V>+Id`?S;MF%l@$~ zEw+Tvf{xLoBc%;Nv1w3aYHfv5u=M{QXem}2jfv4{Be7qMi4pXJ;+wZN6eZ_Z-O1gX z_nY_LyqS6P-ZXgM{3SIBKe{qbv@kLAL%Jd5%La)_jHW$9EK-F1W|n)99bi7{3C1D@ zqYo|>k7|}=Xhb#hV?-kn$uJqcXRE4*_U&+Z)(pmETMJpbuEJnSoETP=s2pE=cS|By z2hlW5stO_l!iU)|=2KSW9$?g?g`+VhB%1+?iFA!-$Ko}P^D$cm+lE1Ez>A=od z3_E1;*}NzS9>8Kzq?rjxhuJol$eOru!6hUMm5ofvqTaAo6PLJBa@mvY=n-e!O? z5D1jqf)D=$KX`Do0`|tOMMy6$_Cg4_rLA~&0KN|p(`2D5ThAE+0bL6Ez6Pt zJL)@@kf_~-kLsxxOLXi%YShe?fv%D1k#Z$ow$y0{4(<2rVrx!6*`M}@rhBy z^$#7nA8Jn{esORJ=gA&w#CeAI_MzNV$#ER-e#JS*wvG!p{_9UC(2x4Jow$hP^dW!! z>q?~G&G(|cl{xK5hb|2u{l5Go)GsaTM7gbBzVG;bXb7okH6eXvmGfZ7({y`XS)1Md6*{4cT|>5f2%A> zaQPrrKs}B+G5lVd6d!Aux$`4s%ubwtth+@FmHM^{#Xdum?0}@_T79j zh!)|_?BaBZ1Bx1eWNX1|08%aWn3f)ALM87=&~c$ni5rG@2UKHt4seGTpC`eXWD#6J u1>|gES@7_Hr@^wItP-e7(9I&Ms#lr8upNhtPAn;?5>bLD$Pv>P^Zx|26M1?7 literal 2092 zcmd5-Yiv|S6y9ea&<0Vft%)@ap)N=^kQ!15uvp)WuCmn>cjmNv_EZ%)@DU3$REtu>A4%)XAJb`yNm2X|HR&Tb-z}GHlWo!`yrC!XPY5)04I?k?-3K4$7}5Mp+9p{9$T9ym=vwHHRM8zy<_9 zUwCKdDze88T&7v6OxDgbWhKo7)peSMcp;rd(wbrFR>TCl@FGx(LZ}NNyCrdS$OoNa z*(DpKk2r~^L-I1=jhfjEQxw-zwSXZ`d)+OZTV*g9-0%lH_#y#QhIgnc+^ofv!ktWn zr6`J8IyDn%O$v{hfDgw2B|Mt?hC!q`p(~Dm%w?JTCc~|ML(fR1d{r&lr3xUGla0 zhA0MbESAbJC~IB5A-tJv)Cx-;$Tvi>k+!sGERkfAug^C`A#AjsHmKwee^in zM-4o8S560%)HaO<;F9U9u0J1$#bPtfFU}|#Yi!*g7#SWeDezxF{aovb!2a&;ir-(G zM*XdgA1MCSj-Spedw19BGs=%+bn&3F=hpR}L;qdnQ_9cq*FTP-ywWp)ex6H>A^yPW zA=K;lOd|fWIfeGVq0dmi?Z_0$?WF_C-u}!-V;FBkTR-Z_UnVf01-0WSFKxy6HI2`X zBd@A%6!9DH7(v<7If8loJUxl{L#^W&f06iJ*`H|Gdm3@e%u%&I^W~zmD9@}usr==R ztg`bPJn;?cg-53`-&fxI7X2N+coO+LcYKHIyB@R}M1Sk|HX;7Lzy#{IoP8bT8<9SYv+{>ssMikL@!aVFv}+&tAn)zmS6Jur z%g0b&>hDGT%7Z!7!v)7N{?RM%p#Iyh{U~3)IDmYkunGO$Ix=YUiw_`QZ~O%HWruen z?#&mzKtGMuc0JoBdhGf-K1cqcvSX;Xb@d|t>d^ZE34bEqkfnS9G!MS;=40uCdlN58 zzL;0zkH2*Gw*E(s^BRZWOVv^T7X;s20&A0^V7Y(A{r(l$R6P`$pycyJL0C0SL&Dt- zS&M?_Y0^?Ft3**Mu7_X|I%`qbN&HQ2B!nc6UeVvt{ j)lEFttjsc?4&ezw2ZVmFI_zxk52ct%vE^=-R@nb1H{C1f diff --git a/results/benchmark_np_wav.pickle b/results/benchmark_np_wav.pickle index eed51eb0acd19bad5b5e99deedcf7e15518364b4..fde7f5a4600ce2cdf7b020ad0e3acf8bb99cb2a3 100644 GIT binary patch literal 2999 zcmeHJk5^Px9=`*OAd_x@hHm7t2Q2)>qEcx`y0gg<;RRF**(wZgX5R2dX5Jg#dm~I> z=WQt<-PlR41Fe{>nvr;NT6H7LS1N7ZlIZ9u_?#JE_&%F3x0QQ}f<66@qB8K222?2_QTk!lE6CTR3|I2rJN*Fa>pYM(NdN>wx*4s%;pv>iYPkZWu%Lh6g%tC z_z6F)$*gS$(eVOTVG1rlcs+fBrtlMItfeGEu-cuJ36t{_Y9^Bfx6|brbKdE8fNn`* zJ>Z2&;w+*dE0WuyXx8*WLGS>A4T>~U2Cb)yb!J+tDQ9#{7~`#>d_2)x6_1P4HihLc zpd0GO-iH%iHO72v-l81^sL)#7b!nG6cN44V|AM;KPMEC z@v`U^tTwxYqkL*8B9RWeSrTQI^1lj2Bs!Qulhet%D4!OJIIT3I%x*grgaEaqmmPMC zcA^;sr(CBU=o4!Ad5&2L)x$9}m=~C=|MmA;>iKlYa`=DEGl{+J@`5QR*)5b9Og2e$n%y=VC&3p> z@u?AGH#Pd|gZvAFjTrIn_xxL)$LfyWEnOvVU}RkAd$gbwqv(<(Pxi|gUGB-WJhmF6 zgui!|H~BC+-+bxWzBY^kpXH~8s~Fw&x7eMIR*YJ%%pwPyFhbLG^X5E=(TaOpF2}xv z(eR$)*n%32np;nOU9}yfPm;$?8ueoJ+h;c8{$m)8B$TE2yRk8P$kcvj2%`&ON0Y`K z!fO6#b3^TEjFvz7aPP>UF|xKD@4CAeqrLUH@jBpV&iPCBxWgDp&ooVVt{)@Y&>j2U zIEhhL;*`RRofs{8wC4TVcOjlvEOU$B!KkgGaM#d#7}XWsw|f3@jIRB>WAre*KXozg z2!ZuG`NL6tS20S9?@EY)_!hLidUn$#jFv{R|2=EC zcHl3)>5Tpw?C<-{=L>abFp9eN;nGj~Fj8wepUUlk_1yL4b3tES#y9@AEEf43`ouOFk5x;Iy?J_`Gj_gp=>4g729J2n&S8aE#AvF-)= z5%R!4K;FNpIBFO06Tj>a=yro&lLymkK>wXLex2+;0N;OO!r_L^81>}zC#8X0Nmcr% z6|ZBIQoDR42mBp=VP@Ve$fv41cjwc;2lt-+{uVBUZT=jZaIoE#_EMY`GLW%VGp!M@_!9^ilFu0HSz@KYvqjv7IKx7W6P zCyZU)r!5T-_sGr6NQfhG>w$WIE6AOV`7!|KKXA3H@nbKHrM;F(?ZAIIl@V+pcjnNI zRXbq4HoLIC8vL6&JJPrn;#sL)U#RKzO(EWOFxKP+yl`GxFFceL{s)k6JDhzb6ZS8A zNZbs0R7V#NMLrMwxN~2;_!_L2toF3{U@TVdFMJXBO>**e0`e={FM3{u^|qwq#T<+` z{i9339uiBkk`x%(>#0>xU&eymFKnO}HGj7G(z9UKTQNKl{8XoR{L=^ZhWyPP)3adA z*uN-p3yhV2eb`>FGMs$rk8PfS_~@+c#~eF*th zd$zrH8sv=WCkE2Mj`7W9>o~}NVC{o913NI~6G@oudw^)s4*(H@%MV%sz$l_yOckxg zq{BrR@!eHeOEtVS<@?aj%2jf5s+pAmdPbWx+?Oo?4{krcnCNfKgCNujz?A;DK}A5f z3brQ_&Q&UughNZEB+BZRSj8?1fEpD$0NY?+j1V-8o97O8z!Ea`r+krEp;U9`32nU1 z0bb05W~u;)g;q);WJPpQ#;Z*@nCOB!IZZLZWdMhxVgMP=2S^C;2a%YeF(_jQaROU{W}2`>jR^@xW1`V>e}_dL+QfhLo@C$s zzVG+@9;avLekoUbf4&0`9i33LkYad)ab5L>btR@Unzu+Xl?uGKv8mhHHdajCa)=ul zop>)kqM53$DN(~4Q#7SU)eS~HWzl$W)AK@S;1^f(0ORi`hSYl1@CFov=gXHhwN9?o zxQ!FYNa`Mbw==s$;<1_)OC&{|F)M0D6kS)6JfEzq!MJ9ax)n4zow@;JbOi4UkTxbc zcCvD3fbC){S+V4lTss*VOWh$enNV#?*7DgLBRPdXn>rgb`X|E_Ia(Q53zSK9KPUdgm7 z>NZS8H+ebKWti~QQvL zhMx(Q{}?(W^D-@($HC!nETPsgGC$LzZp8{j;*9t+E$U7rLso#11(_DjGvbyO3P++U zBMUPvI)WcJJ#HwBlx14{=maB)BqQaS7R?7rj>VJ&Ba1RE`#e8<)SQ1EHED%3RZ2=N z{9o#IX{@wf8YwkNs`R83mljJtY2JU`pJ{_8(yZ_Uw@T>)w~E8QRmvPLaTVWq@rpmp zpXQq%`7ihO_R6>W{RcWa3TqF41--OkpREu0?tEj*j?KTE_4|Cj)2-##ZRtB#cO3R{ zGX@c-^44|mR$lCe-IFz7%fe*`uL7U9<1^p}&s+lT)`&hxb@CwW|J`^!&2uj@Po{*10yz&kQ{8qzV;D(uzoKzf>XqptTVPlEsB*TR0ZX+QLi z4aeX=@WD~wXYoAtKAYbkLcIEPE9BMBw*!CCxnIPW+F?(vTLD@6(kayCtKA4(va1ES z-sUy1mn)snCzQ9qKWBmt`R18dk$+7^6XGnGu?@K27H@~WYtLTr`+9WP$1Hgp^6-W( zk*{Dj$JbfFKW1)$ zoW8CV(l^Qg{<-lKxahHc!v5}D@K1KUCh~;?kVWf7KaPUcs3%#(z*|<57ImK81pVcw zn-TYdzY((HXG_#^b_?{O<^~b>!;Q$d>flc3{hl^qXU`zscTenv?D%~xczyn3=fu7& z^T??4&LcYnuUkT0Q;T-PZcJ%Gec>O%@K0Eq7WkXB!rz!c-1D1j{fyrP_^=m{QGDhh zqaVI@v-sy8-*+;JOvc4CZFtD|M~?F@hfGoItNdROiti<;+ZfH6=`ES%Ex|14Quyq~ zNIuO8*t4F&_(;O5ra84r)UrKuXl|@Vm${PtnGbG!OtlBY;gMC2siuNSv6@){@1LXdCXoOD diff --git a/results/benchmark_pytorch.png b/results/benchmark_pytorch.png index 31551bde43660aafc08a1b6045e05b0a2c6bd113..34a810ab0d6f034927a7ca2b4e88abada92c0641 100644 GIT binary patch literal 34906 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 BroI3G literal 29417 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 diff --git a/results/benchmark_pytorch_mp4.pickle b/results/benchmark_pytorch_mp4.pickle index ec3f997904c6d8f2c6f64e1beb809159775b7420..9fc7a1c588c4ecc8a317230841c6a27bb10d718a 100644 GIT binary patch literal 2064 zcmd5-eP|p-6u+;%Bt`;>rZF`bKd8-VIRX(0SXr<^u|u!1D3#Q5&fe|ap55C$_JicW zNF}6A%qY~1(X(KsRw&n2Z7?y(^{~VwjmcH9|5%h*1f`&u{-I(8A-;KMXsRXtsc*P@ zv+rwuGjHa-{nBevr3Z=CW~dRTb~t8QYB*uhw8~jk2X*M9I3MPr7kMvlVS#8mX>oSP zTJx0QsFp!>JDjElO{$j7+0BpWW^CV%@;4ubUs(3rN&Idb}TpM zh}9%C1O%{IG#Tc^)6chg6@E|zCtl(sod>wqz@)g7&8Wi3x3irO4wUtN=6#+=B9ZMY zK=?;wKrpx$&c>h4JixWh|L4IfY)4IJ)Fjth)*GyfTG2$JY#Gwl8BC(Ck}|n=-+F^d znQYuuxOV?~gH`A$#WHQmwJqxnRph)#3MX74bm&ydqNv;HOn&!pT9^j_`f z@`-#tKeGKe%8%Bcm*33ga?;|cTnp4(H7^VA;EvBwp4&Wz@`i60Fze~@dy&lC!UOWz+yy?%LG9vm1LXx(%c^*^&&=R@Q}z2$Q~ zd~zJWLo0KLYwOh#@_XN(#QkKqlyKdrGqZS(f7mB+U-ql>i1+J@MO=3|cmd_XTV`3&*67x z^C`^JP_Be_4}CX4L&xL)ED!;x7FZsbU+r-? z^Fy8DtTOIe)Jd5Jv?C`49TV$Pz!1$d;$j7QhBe*@i$#s30JBT*H2}1I5h!L3bVn#< zEMPlkhLcV)QDNf6n5qa2eHgkEv_}DWwOvQkszY%Hd!Z&$$ALx+tuh!*=roDb2CD03 Yw;heU8K{`lQKLFlRA|WqwyT8y1a>4JYybcN literal 2088 zcmd5-Yi!g-5bwSEqC^{Muu&d0Pzxa!$dL%9aHXKNE}lrDk!W+-yW6`xdiTG}|3P~q zQXiBM*O>4P{wC|5i$_sA;Y@`u1E z#p1d6sAe))W$RRnsJgc+Ij2^>(kEPo zNp%y_5l+KQBqiCVCJZJvzP^B|9r6(mJof$#1RDI-sjdE`aH$P$tub;Lt9{MY_m1uPc!@J&~v`lhRqr>;hA zi#;#Tb3gL5 zE&CGnElY+mpQ&Glk#D!X3*!gZkD|V=?G)ntn+K4usHYqAyklet^?{vPd*^$nl|HfH z@F4OnZRo@JmwGbUJTLcRT;}NxjLYvoin99B$7nxU+l_gpe`BbZj-N#R!0l<2k)s{R z;~+1izT^E*5cgJNC-Uq%{U*vvcPILXX{G=CLfs77`>K&=)s=^46yMg>V_E*kS54x2 z$IcBZ+`xTz{iLL)b~H@^{ggr9A6JVLYPy!3kZpFknTY=V>r?8L?S zoO|BAr#!jl^7sTCBrPbaUeR!QG+lDZx)_isNhuOdaS^VoY0mp}9nB_AAyBGQ^5E^_ zKGl?TRrDLKfT)V4l5S8k;W@wNS-s4rX*C#=E!AUcnje^BgQ9NwL_gbq;O>^(OdUj1 zRH;lr0)#ix?Od-i$GZd7VQsRqG(W*+DpF|vMX>oD! z(i<@FAI|}TsuIXel2%$um0ADiNyZwc6bMR?hwONhq#D{9w+{|cEj6f;6K|3fQ5R&{ zwmMshGf8qV8poZIq2fvfOsBpZI8hgB$_09ET?1zG`rN~$vP)|aA8 z`tu`ECMy}N)|JegmF~bwe}vU8{|ukU@8VN=jZf!a=0p5+egpqHd<_zx!*Asm|JV5} zwMrgjG3j6PNG9EO*}ziLeI80u1zFbuZcCOW9Zn>BXM)qdS&Lv~SOgYk8B1D6J4-kd(uCBJW_Ueu>cWQ8OP~I6sKUd%De~qihJY0OJm#eC*tn_*sFrGatJ29U6U+uii zu0MqQs~s`i|HjdS{*KfgKs%#CKid6qPAkeyn$^!;8yy|>F6%)4Cx^Nb*G4glxUTn} zv;D1aLH>%&Gq^uA7(u#b>Pf`$Xy_c`pIgzz$+A4s`s!C`XW?f9$gi(!LHs9f4B+pD zRS{-)934K3a$8QHK%B1fFHnA3Mia{Y{JnjC7rLtu_dfMF%JrY#h5m|G9>sj!$nQpe z{^EUzt8aT3##InLigM2SH*tUUcsuX&r+Km6RHk%k2pxo-xyo+x{=@LA~eS=)(Lr%|D8IPlA6|&rhFhNBN@Y0i<{3 zMiJl0hA_sV*0-SD*6jyzzv*lr`dhet3+}Id$+jE4w-)*HX11f9{Jl~1qlNb4zLMU9 z=hW=zzp zvomY(+^maXqziXP5XbQOk1+0S+d9#YGNH|mUluVxs}{FoJvFo+K)uWlx-jlVPaNi` zl0_2bI~s_BzcmmEaQVPh3vCB+6jGC2;dyWoId5G>n<(oqrry~qd8IXy;c|-xv})r8 z)+a4dVGnK}rGzBkTw~Mbg+`A4^8s+eYk=23Ns`u>lqA7(N69#^rHiIdQ=!W;eb5Nv zyW><@Pgrc>3nP$>yJ68qwUmKb&VFwLps2<0SeelD!Ba(?hN%T9U(Oa1EF5T4Vuqo; zgr*C+J_h(^7b*lKQ^W{L;LQ_F6Z%W&0LKWjUxelXmQzH(Un?^NuN8zBQ8XpNFS;e@ KG%F3u?fL^>!bZRV literal 2337 zcmdT`ZERCj7+$~j!ABM%9q!KziNZci87U^tY*q?P;A)A(7|opJw!Q7CwD&gmLsn(D zWf{b9#2*}-8$mRX7>vmjShfVM196PesoS(DlPN*P=r1wx#|Xi5pUdI^ZQ?)eN&24i zzR&Z1+;h);PrGwpSxEtYbWuu_BckRBE2`v)s$x=Nv}CQQi;bA?WmO%lja5=tFv69L zR?Nl6WnEHbF`;>qqAbQFRbzC4KcR%TK5nfU_?0c(!QHnKBT}oRc|xMb-#%%`r|xf$7M1$N6uGL^RSOd1J2E~=`S=JA566jo$SSBC^=vqeZ+fK=v}B zpo^`sh1f3E#3}`w;Ot_=OTyM8)Tzh$gOfOlI%V@228^9N7FkHk|E_FRlw)SyO{SbvE2$1p zm!^xV&eNezO;=J(*kVp3KC!{4#M2;)$r7_BQa)ReUD&ddk)>9SN-V}m{r`E;1)>^^ z@jaFJ!&Dh*$Tw&S2S=mHl*G$^INzYIR61gW81dyBv_w-3ITDR0Bt{;|H)s)m5mZGJ z8Cjig(8ao%*~mK~eO|9u8z{T%>+R`z zCe?JsTzfa))$5D$-?j@^OnpzrIRt&DeHy&!{^PLc+I|2p6aF5!ftnHcd#dyjaP^yW zroMdR<#DVF`zB5Mv4*+{pP5O`)>Y*{@efBNn+2bF`0(a@jZ{VlgpM$J$e-8cDgE{2!^c$0ql|@#5 zzqL#t@9Qsq1iu}>zX#s?^`C+#?jC`>zbpk@upay4ZFam3{rdGEqmEp7AM9%#XCTK< zThF7j>TQ>6nq`kHuvNtyfKRXT|!Ft8Zr?6H^hrt_4$03&o@I0fh zKeQjXKdzmCzP)u1@_)Ao`%*A-HG@2MWe!0v)Sd+H=x0{E#Em}iBSpu6TbCV#ebvDu zz^9t5_%)tk;IgZq2QGeb7&4r;;!mefAkW5U_duV^eFFL2@eFwSn};CBejWm@_;5e` zr|bG4J2FRojGqLwg@vS)cTBSA&d-LOHw$zJavxcSgI7JZ>^D{D!7KY55g2s45<5|_ Pf=NjianERBM#%Fgy&R8V diff --git a/results/benchmark_pytorch_wav.pickle b/results/benchmark_pytorch_wav.pickle index a49dbda601ac149d669efb3bbdf3c38c6f24a823..66f801169b819b8cce98a9e05fc40f101fa78187 100644 GIT binary patch literal 3486 zcmeHKX>b%p6wb9=k=uxfBBEjfB!EE*ir}CLNEnG2O({fOW_M>Z3%fJR965lLAW29< zC*)`d37~*PV?a$QP(Uun-~0N# zujfs_H{Y?ex@#C3=^2z%k7OjcHC;~d>QX?aq;ra7N)vHkP2(2Od>TuloPjKzlK$6< z`&3ibRmpE81SD0;l68ZUTORdm?pag#m{v0|ucf+8P4lzKjzLK`eUjgPe&>ymT(&wB z?X1cTO1HRtN}^PcFF?fzBh92P5~EsyU>-LGg8d!Agiu9FpboX;c{!suM>r&tti$GBi{toej-WJzk$*rb>LMPCEL1E?qMu zsw9N!#9_F7!91!A3)M*%NI3%mDM*#!p*rblYPwsIERRo%XM8$s*GGivj8+ZKfHMo9P zzC}o6?dMP4#JGvP54}rs-W84>Ida5k+$LnOb~1Xijq^jP?+aldYY|f_g%sA-weH0A z?6|c;U2Scx8P*EC_LfhfpBnon)=fUT8+LxZ?<3&FYzYcISxbLl2lPHl-vqsww!QFc z)x+CiN2&A<@E!E+X2bXL6U<1}OPp*Ny zer7RWZ^8oTJ+qM8v%S>=zKqBk&gVE8eo5ylp+6~pIry3#%*FWZ_!U@hU~Dz6jYG!) z_pKRK7!MvY4|b+3ei`y%b1Pui&St{xJ6;I9`wy>%+{gP~06%-bT@L-9(hS)1Zd*0v zU))j)oB{Q7u|KyAtph*BW2)gtbLm9rl?u!F`*f-R_#^69;=Q@6UpbzC_1OZ*P0r5; z&dPOloWEx!_M&zsEOv%x*;!0)sYzTcBC&jv5I#x8~4L#GO1e?Lzh?0xNE z1-J7{ifhv8a>%z;ybgPIeWd_jAGwC}tXUYh#ME)V*Q|vei7$Yk-!FNU&tF&xKf*R7 zVZ3AAE0EuxRRZ}*C;4~na(NBxee$`NU{`hW9LOI$RK?@r_|w46pGAPTed!GBN0+1` zzJKS-AwNjdAs3Tc0bb*(im_hG>aoz9I<*vIk1rd%4jf&{^`{jGR2e`byw~NuNq@_G z!`R249i=Q=CgI7{w2$af>>!A`dK4_8c3OP<^%=fL&XtV>mt?RCql?o{?^9LwjD7u; z8N_kr9<_#t)gSbq2YeJe?Qy)5NIBP}B$DMvlyve~x@7t^l@$l3kJT^8E231plu5IY zLAXfY8`+{uYL;zGx_!OI0A+R>OGZpqtFTmrL>Zy z;48(GGa#E1Jb0evG?HnuvWOKf9h_dj#Bx%0+eh;IwH(9gv4Sk)kxbd?ms~O{kcth< GmGB4nP(&C2 literal 3271 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 RsRIN5Sen_gQ%qL){|{Q@x*h-k literal 31269 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%0A>z7q~b$ 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%0DKHy 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 b;|VSnHH{LM>uL`8Bc-IEx;sVw(3$@LxS3j~ diff --git a/results/benchmark_tf_flac.pickle b/results/benchmark_tf_flac.pickle index 2eb63620d7cd44c8325e4c683920d4bfbff6f945..3d62efcb71e37a0958c07352a8f3bca89dc8e8b8 100644 GIT binary patch literal 2774 zcmd^BYitx%6y9xjX-i2HNU#zW2t;WC3)m1*k&zaBFj5qikO(X@yR$n3yEB`4(5?t6 zl$Nbt5=}3UR**-5La9J$OP|sQ1PMOw@KBx8nP3eTcnMRQlt6*PxH114Nf=h7TGD|ZDY9yOpuD4${!nN%c0RVxyWImSn5^Yl4O6%L zroEdNg3JQuEJUg(?<%K-Zjr9F!Fe~I!k1Q1Ih%L`W-Kb%N-1-u(8{>8o=V(r(xRfG zSvOe0AI~uhDi_+Z35EqfmB;*_D@ijzfRgz(7mKq2uVTsC*CaWYZtcbd12vp8XR!No_ zR5V{u*CK)yu+5y1tV(ufr;C=t@>yk{g4YNuemfy~7fVvNosSjlCuho8w?7Pd$jxs; zzE2)zr?&jSt;BXCu}9mf%0JEL^Beh0UgL-IFY_^e1YgF#&XQl^bNO}rbN}^qJG62> zi(=}(#*qxU<8EPHNmu-oWa1P>D;Sh?b|N_&Tps5l9n8urTbj78&dyGE%|UJyD<7uy zah36Sd~;bX=C6dixSHzfYRlZsUAcVu@~j_PxYt-2HsJ_2gO!W%ddSxm^k98nT^o1i z^y$-|U)l=&GyYC)UwwUj$Hfnzx2&NTcq8UFbH%K*K6C{7E048twpDNMyy)n+ZQ$}* zd93ja<`+-e1-(-JIB*`maTfc1*3xLpHGR9|V~h`mPH?tglN1y3-z+(a@!sE>;9p-w zKjwG)`hXi>*}?@`d1uW*?u$esv1(i&?D}%-PRMQV?}i;q&(>pK*R-QpAN^G~#-C1a zfS>cKk3s+Y;x3HOmu|=UPZ!z|r{|~b$NG%^9^e*|Lry$@t%F@z9kr0pUfYFu>{(QS z_Uig(*sqLv7wda#_9H$!f``#gC7aN`l-&lLi3Ny9e*P87Igi7R--~|P2E2mB9q@Pc ztNWnW)7lQb@q-S-uM4i@@OPtp0Oz*+nO?~4$!UaNV;Z|K{-dK8dXKa_`EzdBQTRD9 zb_DBF&pYvYKeGqp^i$2)KX~F8{Ap))*m*SR>JGH)>bAn(DT`VWr!8k!0e{rwMzn|0 z3Fe>pXfN!nQVs!cen%DXOMY&`{w1F@!0sjGj{k4GcmVi`tQz3VH(GG+KQ7-5ymkHC zocws}J)Fzr{Y}t+@~KkTbNyrk^u8{v1Wx&!I>?`!*$e%d12!R^3$8iwSzfjW_&o^` z?ROLR!Oq3kHUj5*nR6b)XV(J1=JA{Utl0(p-(%g_zrMK){%ju5hV!^_$;qeQL@UPK ze>!9Rc4GfQt7{P_UF?Qk+j5&YDvu;7!Mpgv)W7is z7rT7eRm)fgaTik4zQXg_MdZ1C6|JQ>4NJ`X3pHp` A&;S4c literal 3265 zcmeHKdu&r>6mQp-z16{REaC>DV@y*SGa!M{$`FMcCISNyNq5`c+k0bQ+}=BAvW0fD z!)+g#aUYJMGZolGT($*d_#g;D2+AV_WU{eAKp02>7ltDupx<}y7I|nB{hNMC&pqe- ze&_Ms*SP`xnzjTD{7{mYb=z5=(dLmjBQLQo4x`u^tjx}Y;~G3Jh)ZxLGFa@yh*8?z zc+o9$lACqR&YL}mGzN)aTYhX+%n5e zY=j`hBg5b^&8$}w4|gjruV1axr8s4gl_b_r@>wL#=5hOENwLXU5-`uZyqp6I(;_WoU=^$A!GbB$LI$tju2`{Pjwk!B5iOQisJ8kW=_5DnW>@A%;_2fyk`p6KKF;|(7}TV7i%w>*45R0 z_Itg~oRgDtY{QsnDsz_H`q)IJ7>+R$Mxdzdq=_;e;%&-1_+;o1mBpj84Q8I_8@pJI znZ#NAUivx8(_Pm@nTfwChwVp1RUQRO;8o5+z1by(1om5Y?AGrp+H?pt7etpq>lR0R!Rqz{NX}XSMGFz{&a39;J-cv z@#?Gv9iXqQJpulTf_A8Hv7p*pdX7P!@RUZd9~im~WWls8fG^iHfdA}*Hn8_y*a-2Q z6E=hW+z;!)K6c_3kh#CK0&n5b4S;LvXokAy-24>mJ8c^QXK8K#x%u>Az_p&M27kY6 zJ?I3bjWk6l&uL$i;7UDTEWeyc^5eYzm%IX?%0|M=J-@Q(BZL0_0x3Uc4HQnijLsz2OQ z3i&TLsP@8iHJ)#nDs5>4dRZyt4PLH+IQ`dxpm%sxp7~Y~;v~o_u44W`o}_mG-~OAb zw~kQ#9k_4d{OlWwyAQ|rU3LezfA3CpTi4rGmKRr+dilO$yY8= z`>TCdt?z~%Wa_1rAnUTiussBFl(R^UlU@XI8{b+EdVJb0 zz?bk_KyUqNFZhcL--Dc4RSf=-*#{v0x3|^vZ2x9AMugP+OV4}5+49*|!)w*WtD z^>-kjs@?%OzgE4D9pk<-Ve%w|u`N+}luWcj(u1$9C^F2!^d>wbWWa+rYjA}8SB`do zBaCI~tMES%GVdmEB^V7EZ_Iwdm<^M@o+Xnx7UIwlE1l$hm<*hxYBZ#Xbt=>|8O699 zl7%?QxF2IxL^6!K$)UmL6m4{#CZlweI!r6H-C|+3P$C3~O?QuVE?9Mpe!$8pKGFx$ bTgX^WK0@f&Klnjnad9#W-vLXpVm1B+_=m~h diff --git a/results/benchmark_tf_mp3.pickle b/results/benchmark_tf_mp3.pickle index 0265ed21f2e1ffe7b64d828468d73a046df75d8e..3e6e74b6186217548ad27e3c7320696a132bff8e 100644 GIT binary patch literal 2539 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 diff --git a/results/benchmark_tf_mp4.pickle b/results/benchmark_tf_mp4.pickle index ec570436039bbb60ccbf320574480cca293ed016..a3daf39c72452a446475cdde0845fdce4cf4661f 100644 GIT binary patch literal 2064 zcmd5-eQZ=k5bu52);3^Cpf)xtAZe?3At@mwN}f_u#iwU!FeW0o?7Mq+@8o^ueb`=N zO|=2qWbq?ifi@<90Zk5&w)R8Y0;SM4g+oCBL$oc%1`2Q{LTxNO;s=C4+b$fg%Ed)5rbVy+%>3`2#(Y?D|{f~cHde0NI{R|nBt zU9Jh^281`WYF4VuDXU}DuSXLa6TNoGVG^CMyPBEIfY)3VY+Dvd0*bIDM-1I|EH~ot zuLV#L5P-8N(#*uH&8)&Bv8~*==n=hQ)fT1{(m>Qnnle}NzPOS#HD=Cz)bj=lg+kBW z0>VF000d1NAvQkET+Wn||MQ^Pwj*n%9A`@DY=h6LLkpETsh|tv7*!cZ$56V~W?ZWfp#iKayJopLP zEiFGGw6?UgJaN4Z@l0&%6;7wq>4U~`ocp(D_$32FsQ22H!#JN?y$9!K7am2ti!OJd z{L??3M0+>8KF9qdSNEbH9TmHAUzP60^R+t~1RkHaZ?qvl|ImAgXG~5B1wf}???l`= z9XnBeVnsLFd8)o0<>{(8ez(}$f$_aOxeMcPW%3K59B6TCipxE(S!Ymh$*;#y?%hil zQU8zSJ>1{(zZ9Ltcva6G;PyURSojUX%I?t*=1(T~ZA5yVrI96-4n4Tn*$ygH4z$J2+<|L*IV{P&EuBhH(ZgUAn>!zjOU zUkB>{{=*RF=jEYeDEHg>kC9(HI*560yU>a9opr;g-^M#7P)Bv?C`09TV%4U+2v;EI7#g!q7)SFEm}ELcUE_X`-MEap|d1g^K?ya=wxxybBr6A+{O zZjSc`R6!2#KE>+i1H4C&6^zn~eL>giCz+3dpIb!)CfrJN3pIjbb@B?ym+A-zYaPo1 z1S14#Br*?Q)66E8I4hv}L$$0cn zbQ|#^y%TT3D{wBS=S&;1l!eT0wKgPBis7lpNDQZE`$nX%!)0Y#J-mid5(_Pv7In|hUI zmLapE^0G?GK_*2FhA`JmF9dR-2Tg&LA&ry9)1D;Da7PBNxd}_ztVVxm4weeqQgy|PPgD# z%U5G*Nuq^DsiHUN5apns*WC1!N)j#lu-*9_=>L8WxM#RLu9kb1JnuWWEN&Gyl8bTz zcRv^8mU8)A(cS&T=acAw??VRhwpV81ZLdrnePtHw%sO3ue*Pu--O2VhW3kx61L<~A z6em_4nrV*fX?;8jW+6ZrFv~&vPS!N&YrTgor_2$?K zzOJDoo8oz^<|R?R?!wIvP`xp2A55VBCymoHK=%>HI2zxwFEfemhqsIxpt@Jq9~n*g zDZ3iSQe0P(yNBW}KmM8pb^dvNT2?;=dVBT(=S1d2PF%){*wHagg%EH~KoE&v{dfcH+-kxX}Q0zW>VGbiZqT z7V}+`<1|jZUUAt*&*!aChpAnD^u2zH=Xg_l0pFh8M)NC0Xr+@yL$c{*ttv2 zQ`_CeU!(du!^C#LdvecGUjBi|8K|qx&_?;O&&Hku|NF)55PzZYG}yHIcF1qAoQ1gg z)n_PwZ??As^uO#sLvc&}emEzcbImF6Md1|i_nE(eeC4M%fZaB}9(2BFtOIM=y$<4< zcWeMVrL+dDeM1fG7c8p*-rge`^j$Y<6ZrXanNH7w2*ihuT>tO!=Qsx(2jDSvNW|YO>!+1UGn5}G#fbQAmC|FbPR;c$xaujq2rZ#{* zM)K183(bmxo+Nb!K&8R#$gqh)3!qeaDW!%zSYH z%O^f8L7w>IE5W9HFLseicEfui8 z{CNk9`)L)!->G16QYF~VikG0j`~n}up&o(7@9+SAWhtvChgf)g4EbHt!*4Z%Vn|LyqV<{CSIq4v;U@~u#s!>uk z@6+f`0ZR6JWCz(K(|)p3^O9LSKrYRS&+DS&G?}CgY?jt&yLD2jR4;`IX1oP`8c-u= j8bSq4A$=f|gG}Y*Hwc~jhkuVa{DR8E&wwhdIjw&IX3prv diff --git a/results/benchmark_tf_ogg.pickle b/results/benchmark_tf_ogg.pickle index 728272318d4d2120db7b217193f4b3081caa3287..5790e7a7b21bf535460e1ee70d2742d3c05c0639 100644 GIT binary patch literal 2543 zcmds3Yitx%6z;a&!rEGC6>1})JbuuEtfu_IAWmqB3R6nJ8jZFrv%9mM39~bkd893& zq*PnBav|#8Qc5fVC4yiBg_ah!vh)E+Ew)u5Bv^kzjE2^j5MzQ-&pl%UC|Q5&y=m|3 zobP=1%-M5KoxAy_CkY$L(gigrnBIV9h~AJPghfg`s{~7U5$91_u$|V@e3I%5R~nSe zxnEpXEzwW~#q@>+Rj3pVlah=gMGI_R>#S)Mz(Tefury79!)dx;ShAq7{n-yk@-uZ1 z^{8T%4;LWZKsV5QDYKxKl2kP)hbfs%aT^ zz+%?iCpq6s@w7N(=wbon%@eS@VSqEiBkUS))>ZqE4onmKfGWa7#g=PSQ=S z+AqU5RVz&@ElSjhM=*S$kb}BdO3;a0uL;_IDm|U36OXCcYA_@#B9)dT>SUTC`wh($ zsN_x5MHZ6N{k9B&s6q_8O+^l{NaB+qx?C)f8sSe$moo1~w3Piu%(v^fKZaI{7Tx$nlu$0vU5<*J~yh&mU7mUJtQ zdJEHzAzt@u7r88Gp7GPTp7GvUjP9|8zJn#sJwD$a zXLe83ow$xT>r2|$dBu3!81m;Qj^Vv-ygr0-W%Xa9Uq-gYknhX8zd_s=Ca<9WSmPG% zRcK|mM{xgSwd1!LRo5II@r#I8^-2%wKgxHaTuI3#To+$Egk#>#KD58H+j{R z3=a<%r41s^p2Fk!{h}>{h_`xY9Q`>s?;z^W&F#ar*LMp2G~2v@dgV{V5cjydAN9Yj zh%5lU~a(0a%PR7+9v`d>u(awr>mr-wTSv&e? zplb;Ac0Y5D;Vv(_F@|#2-*9lQO|;|p8m>EncAIAPBVNm$2>S7^;_zIsyBT?eqn+s2 zCBO9I`MliysJHy>INEtO`z*>;Y}kxEh7R=L{(-VXc+ad`=h41i-+}sTZ-0vWi$)J4 z?vaK*wEulY1pPPGa0c(Oa&|MG*G`FhdA@|x=_CLX9eXu)^wwM zy#FIy|6cCc-}KH2j!JV$a_E7F^!dL%q)G7Ohg1g7FL4!9i>1gyNCc_(Qo#<&-q|M~ zEE$4gwP;JWKD%?!;+yO!n~fUvf8NB#tgoZW2}Ys>Xa_(Gu_m74W7AmIZYdR6=RKkRrgV3DX=wQM4-4 W7qoSFaRf{BDS}^wiYsE;e(#^#)9#A^ literal 3264 zcmeHKeN0nV6mOwLM9PN@m8cALD6pl|)J&aVi!v8^h=4f1EwA*oud!cweMM^^E1)iB z7jfaLt22%%j%kcTnQZeben&TSn=%~)r%~s0*#{1Tb1LrMb0PC%YqI@qZ^C)!oZtDK zb1v_`cb;Fhc2A@Nekj(>JI%aDTkMhqtwrJ;0!Dqac$uFH*EKk`9GBq~q&Av~5u?OM z@iwO{NKW4F(K>i1ZxtjDMv;^4uHwbhnT{boWg#IL^mw3ISSon5Cf-BxMHrpJ65}){ zv5^3=A5!;T)66QCINs@XxP7cnhu1FKcuC@YB%e_did{~REP0D%5{}dW#HbJH3m`R^ zQ>?&KlqUQZF2E_Al2fg~VmwltWuIH1At5uy6AY(h{!pYW#ksk;*$>GN{&0F3n^w^- zLWQL=Mxl0_38QecSK?)x%ZZUnwvmk!2nwm3bPsdAD@iU}r; z#wC0S7GDdtP?T)3xr`Rc<>0+$x=T}oEqd6VJ_pLb&jFXurE)&5ik$cLTs$|Q>&I1c z0{1-U;$G);T*fnh@cjw4!HFou^28%E{fS4Wf<7`QE7b6s37_Q~YS8I)BV4OBhSSZ> zd0pMf2IATA<;hg4H+Nh;px+P(X!5dNq;^BSy<2awSQ3Yr%mLIsb?Z4bwbypt>7se&9?`^7 zy(63J5BZ(dyQqEGvRnPBT`_ayO{ypOA4E`oUE|(XJrVbuDRGqd)L=i!=Ukf%t#(yb?YlJ&O-R9-GEx=Z7AbE0oh{K~9$CFR{xX;49aL;hykUu0x? z2;~n97<`82pD=ygZHl*yO*>5eKj*tTp{_IIegXRzf1IVfou9VfqInEe)@xL6)c$l4 z><8kmfPL*^=sOU7wFUfZquVG?;N-sVLEp3scyu|ccHs3Dv`~3HYW{aLZ_dkiS}2cy z(VBLuH<#XQ1>B9g7N}=qLmTxg%7hD)PuKDBdEhTpoCjRdnr}gmt*rwb-hL2p$!U8) z#$|2+|CpM6z@O9#`_Y_|z7zacLpHN~F`t3IN#6+e8H?&bZ@9J_^geTU0LCI!p3;{Q3&U+s1H5FIRy7mE`4sKQ~|{@UB``!|V~PkIQ!%-jiPe z{)8?jQ{QL2qX+iXSHkkG`=OH6b&v6%-^B99_$r~#1+!TnwwZp&bK65^<0qG!{1;$ zyL#ed3IW$>+7JGw)o{)O@!7|~-dS)0BO-vR? z!h<)hcY^%a7-dh4IEtsQ!v7GE@@RlihEdpP?U=FJF)-+>crut{F#?5|=pgUGWZooI zqp%X*?xmgyDBNL{jKoQ%{cw}lMrLs*xm0`XwqiO?lSw*+&C*`lZmF0pmWh613w_L* n2i8zd)ngUB9?}O=8Oc;mzCq~J-}^mcbOb%p6wW4DAOtA6k^TKgr{De18epC-q;G|4Md5)~&I(m1>q)Bf{l7VSqOZQf*!lI{m#mNlJ{7Gpd~BYNqaTm^=EMM-hhW;Ynqh7SlBe#;Zt=( z3pfnZniYbK0oyD@im4cuN5@+1bb$#jTEuX%I-e>XiPdRj_+?Wme9{P75ajC-#F9zl zA~X zPNF2u=5le=7$rm}Rw-b2`>66vs7|c@3}?Vjl>wnTiPC)m)#-A3WU4$Hs*|Q3w_Wq; z5>;YDbz;>WZhr<<28QaSIize}ujHr7pirH(G+Z_(3m~U#!>2u13DHR_!{zqbT$;}- z1)Qdro(t7wGj5yN18x?rDhqV0?r}TJa1+B=2wKc&%V&Q|w9@K+*eh-Rig=}i(#Z^5 zrOUmrwIFPJn}H~f5{HN-VzlTJ+lvWehS)>Q6=$%}mc{1j^ zcJk!O*)<;ty;#essuH$TR8+*h%JKJQ?F8Dt>C|Y#tGQH_`?z4>^Q6m=KgMuI0k-qB5MQ}Yqh_e zgnk7*z}M+^=uNm%4Y}*v4#3Ww3m*b^?Gt-pzo@tzJZHu10%W&Ftw@c^t+nnb98#_Il+qqPL{db=f1pkswtHF0zuUzPNwXTK!sJkUNx2xxh zAh)D;1@@iNE(p8Edn+-YJe)#)XoDZ?j@$gZ{di^$c;&QR4*Wi!FXDclxB+rEMy&yl zw}$S3{;!Jy+|QX?z++S4Jjj)t+sMy*Pc`h4mlr}_K2(G6rY3$f_s97}@aa)q4!$b!0_OOloTzaNqeokKl`j*RuoZpSv+&@?Iac;e?+F`#-7C*P|8-qB9A+6uV z`swM5xF0KXIPQrg$e$>i4?dprb6|IRkHuIY_x4Gc*F)Lv$iHQ~VeH4BU8O8X zCYG_(Ft6xg>>`M~e-$jCW-|Qb!+E_^PM7sqyQH(aqPfjX>R(sc9Q*ZGW)thZcT^Zo zR&~&SUht9Zw#W5OBII;~k_eU+QPRvA&?Lj{Q&~x1xLMVLydqLH3z+x-G6*~A^e8Tx zq$ZnWrkKwM2q<&nSu$d<3WcR2BvLngekxX*FEV?v08=)BSuMmW1XiM$gzuG1Hm__* z*ugB8(@2KFiXm36G_kon63ax{Ye&iB@ulfDXTZ-g9?6hx9?34VvM8tr?6H3W@mNvf literal 3264 zcmeHKdrVVT7;kBdme&METqC|VMI^4%bh@c%888*D;_DA3&ULr+wzpY(+uR4zOAWInbg+u!yi{oV8X zzTfwK=k(lrzXtUUhhjAFLGgZ8aIliOz$bEMr^tFajEvc=%r1fJdOWiP7vof9usH~c z(WJZm-Ga=C0_%~?URGdToG4)wlj-plyu3o4W6-B=Bmo|~SLoo1ILT~hC6X`7CUBc< zIRfE`fR9Fo(QBGnuO?0s6t6#^*6CF|vYQn}HbC;(M6SRmNV2FD$V83|;E2%}vMz9` z$Bd>FXKC%Y9IwHtjF!=tVm=8O9CE9FNoGZvl!Nq=?DJ!$g80N(;tri zzXK?S6>TnZra1CrikM#%ZXhFZb~?R&&V~8K;RZ6WirwwQyfxfF27kbz*fF0GZXl!N zQv`?8?cp&0T)2V8kmD-)Bo_0T;RZQ+1#W);^I72riUKd2*US1bpB-+XSlMZFkh{~t z+2Bk*&xaW(PIkI|HmB(GvWkQ5(von4-fR!v2im{y17& zTun~MAaMtVxe+VD?5OjJG|sB_^+w90kC#T!`AZ8E3{+ouc}panPx&B!gywJ7x#DS@ z#EByb86LsNz^a+RL>>qw|1{!q<&q>tzIkPQ^lk4)UJ7aUo_~7&JR(Y zbH(jA>Q~>mO$YU59=T2ZgO!b1sB_tiL$v--uD6$B{_wlkY2C9ftiK6-pt6m|>1T3p zLA;4C^Z*v`y+Z4-%$RhT#+$P4CFkM=h^yJL7yK%$tu#*l=B<~2ujqhzsOpSr*PLpDdg@P{0Q^W> z4EfJg)dFU%Xac;JRtRak!O~X&Gxk>i|M|oK_(@4kkS8Xm3iu@lUxT>w7ghqF z{^9Gu_a7)$=L6fo-m&rr(APVvfuDW81u)R?jp~060iLdS2Qcn}THl@p4eEZ(+M&j| zc^Py#vjOHaops=!vbYv_^o5EZT^-~*H(aCE=h_W^jh!_R?_%fx@T({60u0!yDfXVM z9Rgifq8ex5Yy;@Zs;en~=3L|r$di3oJx9kpYP=)m&A=xkweHV;tW)Eg>p}nRm+wQ~ z3j8+s<$m1>IPXw5*!zbakT-gHH(+xq2K+8=Klq{MD!})Wy8zRB)%vgGhd@7Q=z#b) zoo%4&v8ccQxS)D|O()g!J<=Nly*^g0FW_o~I(sJzz)v$a050zf0Don8JH)d{BINm` zTRrdnt80M2mh}o?!8~=J^K;5UkJu8x_L8kuOrC_$wZ-y}kcO6zfAF;xL3%l8-uUT! z3OsnzMmxxV)oAZ%_!%sH75)c7>fHja7^BG9<~dKB=Rl*cXGvp@`6v`=r;WUXNxw;| zMv;ZAN1>MaXsp*I+K7>K`(y2joAlxWxim-~cL8muNhckl_R