From d1c6513934dcded513715d0642594469dffacf33 Mon Sep 17 00:00:00 2001 From: etiennedemontalivet Date: Mon, 18 Dec 2023 05:48:58 +0000 Subject: [PATCH] deploy: 1541a5f3810cd83e88f99e625fa4c106380a8b53 --- .buildinfo | 4 + .doctrees/_auto_examples/index.doctree | Bin 0 -> 9314 bytes .../_auto_examples/plot_read_trc.doctree | Bin 0 -> 386805 bytes .../_auto_examples/plot_trc_to_fif.doctree | Bin 0 -> 16510 bytes .../_auto_examples/sg_execution_times.doctree | Bin 0 -> 9525 bytes .../micromed_io.buffer.MicromedBuffer.doctree | Bin 0 -> 54425 bytes .../_autosummary/micromed_io.buffer.doctree | Bin 0 -> 5349 bytes .doctrees/_autosummary/micromed_io.doctree | Bin 0 -> 10881 bytes ...omed_io.header.ElectrodeReferences.doctree | Bin 0 -> 15478 bytes .../micromed_io.header.MicromedHeader.doctree | Bin 0 -> 68089 bytes .../_autosummary/micromed_io.header.doctree | Bin 0 -> 6629 bytes .../micromed_io.in_out.MicromedIO.doctree | Bin 0 -> 36631 bytes .../_autosummary/micromed_io.in_out.doctree | Bin 0 -> 5327 bytes ...micromed_io.tcp.MicromedPacketType.doctree | Bin 0 -> 10003 bytes ...ed_io.tcp.decode_tcp_header_packet.doctree | Bin 0 -> 7381 bytes ...ed_io.tcp.decode_tcp_marker_packet.doctree | Bin 0 -> 7547 bytes ...omed_io.tcp.decode_tcp_note_packet.doctree | Bin 0 -> 7521 bytes .../_autosummary/micromed_io.tcp.doctree | Bin 0 -> 12832 bytes ...cromed_io.tcp.encode_marker_packet.doctree | Bin 0 -> 8954 bytes ...micromed_io.tcp.encode_note_packet.doctree | Bin 0 -> 8800 bytes .../micromed_io.tcp.get_tcp_header.doctree | Bin 0 -> 9104 bytes ...create_mne_from_micromed_recording.doctree | Bin 0 -> 17633 bytes .../_autosummary/micromed_io.to_mne.doctree | Bin 0 -> 5703 bytes .../micromed_io.trc.MicromedTRC.doctree | Bin 0 -> 49476 bytes .../_autosummary/micromed_io.trc.doctree | Bin 0 -> 5280 bytes .doctrees/api.doctree | Bin 0 -> 4334 bytes .doctrees/environment.pickle | Bin 0 -> 950732 bytes .doctrees/index.doctree | Bin 0 -> 22082 bytes .doctrees/sg_execution_times.doctree | Bin 0 -> 9554 bytes .nojekyll | 0 _auto_examples/index.html | 468 +++++++++ _auto_examples/plot_read_trc.html | 865 ++++++++++++++++ _auto_examples/plot_trc_to_fif.html | 583 +++++++++++ _auto_examples/sg_execution_times.html | 449 +++++++++ .../micromed_io.buffer.MicromedBuffer.html | 676 +++++++++++++ _autosummary/micromed_io.buffer.html | 497 ++++++++++ ...icromed_io.header.ElectrodeReferences.html | 536 ++++++++++ .../micromed_io.header.MicromedHeader.html | 641 ++++++++++++ _autosummary/micromed_io.header.html | 501 ++++++++++ _autosummary/micromed_io.html | 508 ++++++++++ .../micromed_io.in_out.MicromedIO.html | 618 ++++++++++++ _autosummary/micromed_io.in_out.html | 497 ++++++++++ .../micromed_io.tcp.MicromedPacketType.html | 528 ++++++++++ ...romed_io.tcp.decode_tcp_header_packet.html | 524 ++++++++++ ...romed_io.tcp.decode_tcp_marker_packet.html | 525 ++++++++++ ...icromed_io.tcp.decode_tcp_note_packet.html | 525 ++++++++++ .../micromed_io.tcp.encode_marker_packet.html | 526 ++++++++++ .../micromed_io.tcp.encode_note_packet.html | 526 ++++++++++ .../micromed_io.tcp.get_tcp_header.html | 526 ++++++++++ _autosummary/micromed_io.tcp.html | 520 ++++++++++ ...ne.create_mne_from_micromed_recording.html | 543 ++++++++++ _autosummary/micromed_io.to_mne.html | 497 ++++++++++ _autosummary/micromed_io.trc.MicromedTRC.html | 649 ++++++++++++ _autosummary/micromed_io.trc.html | 497 ++++++++++ .../plot_trc_to_fif.ipynb | 90 ++ .../_auto_examples_jupyter.zip | Bin 0 -> 6578 bytes .../plot_read_trc.py | 49 + .../plot_trc_to_fif.py | 26 + .../_auto_examples_python.zip | Bin 0 -> 2455 bytes .../plot_read_trc.ipynb | 162 +++ _images/sphx_glr_plot_read_trc_thumb.png | Bin 0 -> 26794 bytes _images/sphx_glr_plot_trc_to_fif_001.png | Bin 0 -> 111113 bytes _images/sphx_glr_plot_trc_to_fif_thumb.png | Bin 0 -> 48217 bytes _sources/_auto_examples/index.rst.txt | 77 ++ _sources/_auto_examples/plot_read_trc.rst.txt | 561 +++++++++++ .../_auto_examples/plot_trc_to_fif.rst.txt | 222 +++++ .../_auto_examples/sg_execution_times.rst.txt | 40 + .../micromed_io.buffer.MicromedBuffer.rst.txt | 27 + .../_autosummary/micromed_io.buffer.rst.txt | 32 + ...omed_io.header.ElectrodeReferences.rst.txt | 31 + .../micromed_io.header.MicromedHeader.rst.txt | 43 + .../_autosummary/micromed_io.header.rst.txt | 33 + .../micromed_io.in_out.MicromedIO.rst.txt | 25 + .../_autosummary/micromed_io.in_out.rst.txt | 32 + _sources/_autosummary/micromed_io.rst.txt | 35 + ...micromed_io.tcp.MicromedPacketType.rst.txt | 26 + ...ed_io.tcp.decode_tcp_header_packet.rst.txt | 6 + ...ed_io.tcp.decode_tcp_marker_packet.rst.txt | 6 + ...omed_io.tcp.decode_tcp_note_packet.rst.txt | 6 + ...cromed_io.tcp.encode_marker_packet.rst.txt | 6 + ...micromed_io.tcp.encode_note_packet.rst.txt | 6 + .../micromed_io.tcp.get_tcp_header.rst.txt | 6 + _sources/_autosummary/micromed_io.tcp.rst.txt | 45 + ...create_mne_from_micromed_recording.rst.txt | 6 + .../_autosummary/micromed_io.to_mne.rst.txt | 31 + .../micromed_io.trc.MicromedTRC.rst.txt | 30 + _sources/_autosummary/micromed_io.trc.rst.txt | 32 + _sources/api.rst.txt | 10 + _sources/index.rst.txt | 14 + _sources/sg_execution_times.rst.txt | 40 + _static/basic.css | 925 ++++++++++++++++++ _static/binder_badge_logo.svg | 1 + _static/broken_example.png | Bin 0 -> 21404 bytes _static/check-solid.svg | 4 + _static/clipboard.min.js | 7 + _static/copy-button.svg | 5 + _static/copybutton.css | 94 ++ _static/copybutton.js | 248 +++++ _static/copybutton_funcs.js | 73 ++ _static/doctools.js | 156 +++ _static/documentation_options.js | 13 + _static/file.png | Bin 0 -> 286 bytes _static/jupyterlite_badge_logo.svg | 3 + _static/language_data.js | 199 ++++ _static/minus.png | Bin 0 -> 90 bytes _static/no_image.png | Bin 0 -> 4315 bytes _static/plus.png | Bin 0 -> 90 bytes _static/pygments.css | 152 +++ _static/scripts/bootstrap.js | 3 + _static/scripts/bootstrap.js.LICENSE.txt | 5 + _static/scripts/bootstrap.js.map | 1 + _static/scripts/pydata-sphinx-theme.js | 2 + _static/scripts/pydata-sphinx-theme.js.map | 1 + _static/searchtools.js | 574 +++++++++++ _static/sg_gallery-binder.css | 11 + _static/sg_gallery-dataframe.css | 47 + _static/sg_gallery-rendered-html.css | 224 +++++ _static/sg_gallery.css | 342 +++++++ _static/sphinx_highlight.js | 154 +++ _static/styles/bootstrap.css | 6 + _static/styles/bootstrap.css.map | 1 + _static/styles/pydata-sphinx-theme.css | 2 + _static/styles/pydata-sphinx-theme.css.map | 1 + _static/styles/theme.css | 2 + _static/vendor/fontawesome/6.1.2/LICENSE.txt | 165 ++++ .../vendor/fontawesome/6.1.2/css/all.min.css | 5 + .../vendor/fontawesome/6.1.2/js/all.min.js | 2 + .../6.1.2/js/all.min.js.LICENSE.txt | 5 + .../6.1.2/webfonts/fa-brands-400.ttf | Bin 0 -> 181264 bytes .../6.1.2/webfonts/fa-brands-400.woff2 | Bin 0 -> 105112 bytes .../6.1.2/webfonts/fa-regular-400.ttf | Bin 0 -> 60236 bytes .../6.1.2/webfonts/fa-regular-400.woff2 | Bin 0 -> 24028 bytes .../6.1.2/webfonts/fa-solid-900.ttf | Bin 0 -> 389948 bytes .../6.1.2/webfonts/fa-solid-900.woff2 | Bin 0 -> 154840 bytes .../6.1.2/webfonts/fa-v4compatibility.ttf | Bin 0 -> 10084 bytes .../6.1.2/webfonts/fa-v4compatibility.woff2 | Bin 0 -> 4776 bytes _static/webpack-macros.html | 31 + api.html | 489 +++++++++ genindex.html | 557 +++++++++++ index.html | 563 +++++++++++ objects.inv | Bin 0 -> 1985 bytes py-modindex.html | 421 ++++++++ search.html | 400 ++++++++ searchindex.js | 1 + sg_execution_times.html | 449 +++++++++ 145 files changed, 21328 insertions(+) create mode 100644 .buildinfo create mode 100644 .doctrees/_auto_examples/index.doctree create mode 100644 .doctrees/_auto_examples/plot_read_trc.doctree create mode 100644 .doctrees/_auto_examples/plot_trc_to_fif.doctree create mode 100644 .doctrees/_auto_examples/sg_execution_times.doctree create mode 100644 .doctrees/_autosummary/micromed_io.buffer.MicromedBuffer.doctree create mode 100644 .doctrees/_autosummary/micromed_io.buffer.doctree create mode 100644 .doctrees/_autosummary/micromed_io.doctree create mode 100644 .doctrees/_autosummary/micromed_io.header.ElectrodeReferences.doctree create mode 100644 .doctrees/_autosummary/micromed_io.header.MicromedHeader.doctree create mode 100644 .doctrees/_autosummary/micromed_io.header.doctree create mode 100644 .doctrees/_autosummary/micromed_io.in_out.MicromedIO.doctree create mode 100644 .doctrees/_autosummary/micromed_io.in_out.doctree create mode 100644 .doctrees/_autosummary/micromed_io.tcp.MicromedPacketType.doctree create mode 100644 .doctrees/_autosummary/micromed_io.tcp.decode_tcp_header_packet.doctree create mode 100644 .doctrees/_autosummary/micromed_io.tcp.decode_tcp_marker_packet.doctree create mode 100644 .doctrees/_autosummary/micromed_io.tcp.decode_tcp_note_packet.doctree create mode 100644 .doctrees/_autosummary/micromed_io.tcp.doctree create mode 100644 .doctrees/_autosummary/micromed_io.tcp.encode_marker_packet.doctree create mode 100644 .doctrees/_autosummary/micromed_io.tcp.encode_note_packet.doctree create mode 100644 .doctrees/_autosummary/micromed_io.tcp.get_tcp_header.doctree create mode 100644 .doctrees/_autosummary/micromed_io.to_mne.create_mne_from_micromed_recording.doctree create mode 100644 .doctrees/_autosummary/micromed_io.to_mne.doctree create mode 100644 .doctrees/_autosummary/micromed_io.trc.MicromedTRC.doctree create mode 100644 .doctrees/_autosummary/micromed_io.trc.doctree create mode 100644 .doctrees/api.doctree create mode 100644 .doctrees/environment.pickle create mode 100644 .doctrees/index.doctree create mode 100644 .doctrees/sg_execution_times.doctree create mode 100644 .nojekyll create mode 100644 _auto_examples/index.html create mode 100644 _auto_examples/plot_read_trc.html create mode 100644 _auto_examples/plot_trc_to_fif.html create mode 100644 _auto_examples/sg_execution_times.html create mode 100644 _autosummary/micromed_io.buffer.MicromedBuffer.html create mode 100644 _autosummary/micromed_io.buffer.html create mode 100644 _autosummary/micromed_io.header.ElectrodeReferences.html create mode 100644 _autosummary/micromed_io.header.MicromedHeader.html create mode 100644 _autosummary/micromed_io.header.html create mode 100644 _autosummary/micromed_io.html create mode 100644 _autosummary/micromed_io.in_out.MicromedIO.html create mode 100644 _autosummary/micromed_io.in_out.html create mode 100644 _autosummary/micromed_io.tcp.MicromedPacketType.html create mode 100644 _autosummary/micromed_io.tcp.decode_tcp_header_packet.html create mode 100644 _autosummary/micromed_io.tcp.decode_tcp_marker_packet.html create mode 100644 _autosummary/micromed_io.tcp.decode_tcp_note_packet.html create mode 100644 _autosummary/micromed_io.tcp.encode_marker_packet.html create mode 100644 _autosummary/micromed_io.tcp.encode_note_packet.html create mode 100644 _autosummary/micromed_io.tcp.get_tcp_header.html create mode 100644 _autosummary/micromed_io.tcp.html create mode 100644 _autosummary/micromed_io.to_mne.create_mne_from_micromed_recording.html create mode 100644 _autosummary/micromed_io.to_mne.html create mode 100644 _autosummary/micromed_io.trc.MicromedTRC.html create mode 100644 _autosummary/micromed_io.trc.html create mode 100644 _downloads/022f7d0306cb4306fa5ceb91f4268f82/plot_trc_to_fif.ipynb create mode 100644 _downloads/225d151ea821367300a1321f418806af/_auto_examples_jupyter.zip create mode 100644 _downloads/375cbdb7aad81c7378509f9c7df99bf9/plot_read_trc.py create mode 100644 _downloads/4acc58f9b78d1a788dc63d8462941d50/plot_trc_to_fif.py create mode 100644 _downloads/8845d11ecb15bc8f327918febd001c4d/_auto_examples_python.zip create mode 100644 _downloads/ff1e34b9bce10d357229e1b1a38d147d/plot_read_trc.ipynb create mode 100644 _images/sphx_glr_plot_read_trc_thumb.png create mode 100644 _images/sphx_glr_plot_trc_to_fif_001.png create mode 100644 _images/sphx_glr_plot_trc_to_fif_thumb.png create mode 100644 _sources/_auto_examples/index.rst.txt create mode 100644 _sources/_auto_examples/plot_read_trc.rst.txt create mode 100644 _sources/_auto_examples/plot_trc_to_fif.rst.txt create mode 100644 _sources/_auto_examples/sg_execution_times.rst.txt create mode 100644 _sources/_autosummary/micromed_io.buffer.MicromedBuffer.rst.txt create mode 100644 _sources/_autosummary/micromed_io.buffer.rst.txt create mode 100644 _sources/_autosummary/micromed_io.header.ElectrodeReferences.rst.txt create mode 100644 _sources/_autosummary/micromed_io.header.MicromedHeader.rst.txt create mode 100644 _sources/_autosummary/micromed_io.header.rst.txt create mode 100644 _sources/_autosummary/micromed_io.in_out.MicromedIO.rst.txt create mode 100644 _sources/_autosummary/micromed_io.in_out.rst.txt create mode 100644 _sources/_autosummary/micromed_io.rst.txt create mode 100644 _sources/_autosummary/micromed_io.tcp.MicromedPacketType.rst.txt create mode 100644 _sources/_autosummary/micromed_io.tcp.decode_tcp_header_packet.rst.txt create mode 100644 _sources/_autosummary/micromed_io.tcp.decode_tcp_marker_packet.rst.txt create mode 100644 _sources/_autosummary/micromed_io.tcp.decode_tcp_note_packet.rst.txt create mode 100644 _sources/_autosummary/micromed_io.tcp.encode_marker_packet.rst.txt create mode 100644 _sources/_autosummary/micromed_io.tcp.encode_note_packet.rst.txt create mode 100644 _sources/_autosummary/micromed_io.tcp.get_tcp_header.rst.txt create mode 100644 _sources/_autosummary/micromed_io.tcp.rst.txt create mode 100644 _sources/_autosummary/micromed_io.to_mne.create_mne_from_micromed_recording.rst.txt create mode 100644 _sources/_autosummary/micromed_io.to_mne.rst.txt create mode 100644 _sources/_autosummary/micromed_io.trc.MicromedTRC.rst.txt create mode 100644 _sources/_autosummary/micromed_io.trc.rst.txt create mode 100644 _sources/api.rst.txt create mode 100644 _sources/index.rst.txt create mode 100644 _sources/sg_execution_times.rst.txt create mode 100644 _static/basic.css create mode 100644 _static/binder_badge_logo.svg create mode 100644 _static/broken_example.png create mode 100644 _static/check-solid.svg create mode 100644 _static/clipboard.min.js create mode 100644 _static/copy-button.svg create mode 100644 _static/copybutton.css create mode 100644 _static/copybutton.js create mode 100644 _static/copybutton_funcs.js create mode 100644 _static/doctools.js create mode 100644 _static/documentation_options.js create mode 100644 _static/file.png create mode 100644 _static/jupyterlite_badge_logo.svg create mode 100644 _static/language_data.js create mode 100644 _static/minus.png create mode 100644 _static/no_image.png create mode 100644 _static/plus.png create mode 100644 _static/pygments.css create mode 100644 _static/scripts/bootstrap.js create mode 100644 _static/scripts/bootstrap.js.LICENSE.txt create mode 100644 _static/scripts/bootstrap.js.map create mode 100644 _static/scripts/pydata-sphinx-theme.js create mode 100644 _static/scripts/pydata-sphinx-theme.js.map create mode 100644 _static/searchtools.js create mode 100644 _static/sg_gallery-binder.css create mode 100644 _static/sg_gallery-dataframe.css create mode 100644 _static/sg_gallery-rendered-html.css create mode 100644 _static/sg_gallery.css create mode 100644 _static/sphinx_highlight.js create mode 100644 _static/styles/bootstrap.css create mode 100644 _static/styles/bootstrap.css.map create mode 100644 _static/styles/pydata-sphinx-theme.css create mode 100644 _static/styles/pydata-sphinx-theme.css.map create mode 100644 _static/styles/theme.css create mode 100644 _static/vendor/fontawesome/6.1.2/LICENSE.txt create mode 100644 _static/vendor/fontawesome/6.1.2/css/all.min.css create mode 100644 _static/vendor/fontawesome/6.1.2/js/all.min.js create mode 100644 _static/vendor/fontawesome/6.1.2/js/all.min.js.LICENSE.txt create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-brands-400.ttf create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-brands-400.woff2 create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-regular-400.ttf create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-regular-400.woff2 create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-solid-900.ttf create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-solid-900.woff2 create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-v4compatibility.ttf create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-v4compatibility.woff2 create mode 100644 _static/webpack-macros.html create mode 100644 api.html create mode 100644 genindex.html create mode 100644 index.html create mode 100644 objects.inv create mode 100644 py-modindex.html create mode 100644 search.html create mode 100644 searchindex.js create mode 100644 sg_execution_times.html diff --git a/.buildinfo b/.buildinfo new file mode 100644 index 0000000..d3e2dfd --- /dev/null +++ b/.buildinfo @@ -0,0 +1,4 @@ +# Sphinx build info version 1 +# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. +config: ab7e879355427f68264d2168e7c6a2ab +tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/.doctrees/_auto_examples/index.doctree b/.doctrees/_auto_examples/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..2558a02de7b03ed38203a44bd7428dff4918ac1e GIT binary patch literal 9314 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 literal 0 HcmV?d00001 diff --git a/.doctrees/_auto_examples/plot_read_trc.doctree b/.doctrees/_auto_examples/plot_read_trc.doctree new file mode 100644 index 0000000000000000000000000000000000000000..d7279339070c41920c6b3704dcbd660298772b00 GIT binary patch literal 386805 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
3i@Giqb; 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 UPMt(4r%|a|WQE9;#QEue0p^s4@Bjb+ literal 0 HcmV?d00001 diff --git a/.doctrees/_auto_examples/sg_execution_times.doctree b/.doctrees/_auto_examples/sg_execution_times.doctree new file mode 100644 index 0000000000000000000000000000000000000000..2100a454f0eaade017d578ef40b82d556da7a04c GIT binary patch literal 9525 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 b=N#Yi5}Q1$OVM%3rY#|lo|Gshd;0$XSleb_ literal 0 HcmV?d00001 diff --git a/.doctrees/_autosummary/micromed_io.buffer.MicromedBuffer.doctree b/.doctrees/_autosummary/micromed_io.buffer.MicromedBuffer.doctree new file mode 100644 index 0000000000000000000000000000000000000000..a48e952c631f61d883558bb99cfb3e1becace5a8 GIT binary patch literal 54425 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 literal 0 HcmV?d00001 diff --git a/.doctrees/_autosummary/micromed_io.buffer.doctree b/.doctrees/_autosummary/micromed_io.buffer.doctree new file mode 100644 index 0000000000000000000000000000000000000000..a28c04d4a0fdaa5ca649fdd2ce6f6336da1c702c GIT binary patch literal 5349 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 T(7e|zdj_O)JTpB<+VA`yQ#1@% literal 0 HcmV?d00001 diff --git a/.doctrees/_autosummary/micromed_io.doctree b/.doctrees/_autosummary/micromed_io.doctree new file mode 100644 index 0000000000000000000000000000000000000000..48552248fb791cec1b303f2259873441d3be7284 GIT binary patch literal 10881 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 SDDF{Q1lUPjpyfO1?fxHizM}#F literal 0 HcmV?d00001 diff --git a/.doctrees/_autosummary/micromed_io.header.MicromedHeader.doctree b/.doctrees/_autosummary/micromed_io.header.MicromedHeader.doctree new file mode 100644 index 0000000000000000000000000000000000000000..c9bb612bb7620ed49f42522a8af0e2afa84c1b37 GIT binary patch literal 68089 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 bE%q+wnH#X)q5oIRd*q~Ze?~b++S>jfmh0i= literal 0 HcmV?d00001 diff --git a/.doctrees/_autosummary/micromed_io.in_out.MicromedIO.doctree b/.doctrees/_autosummary/micromed_io.in_out.MicromedIO.doctree new file mode 100644 index 0000000000000000000000000000000000000000..fe74ccaed22114cdb154f844cc18bb6eb8405b00 GIT binary patch literal 36631 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 U$&jN35?FR}urF){?~G3WHyFD3H~;_u literal 0 HcmV?d00001 diff --git a/.doctrees/_autosummary/micromed_io.in_out.doctree b/.doctrees/_autosummary/micromed_io.in_out.doctree new file mode 100644 index 0000000000000000000000000000000000000000..1b8b7d17c8f4db7a377da8dc56278ce62bd75323 GIT binary patch literal 5327 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 LBbQF zPj}N@?GK3{I0Rv-P$be^Q4UBPIB-B5kht={aEc-UcYd#`zh=DldXW&8YcI3E6OlGtXwpsX)osxXj>c;fy2CZ)7s~g4YPcx%W zD{>$`c3W2+yHuCoP_10cL$%Au|^7!JBGrRu$u^8_#%=J0bKqFdks^aHe42R!fk2H-eiIC$&P1wZG{x zn=(u1bmH$P5F3PxSdy^#m}P|455VQ!+|T0c`&mtyK1F17wok4H+Xo{n9L}2Z3cKAq znA0ZeXy9g1yK|Wh3iK`~s8Ia)Dijw9MFZg?iEt4;{$u`xp!%qSia$k&7`bn1xsfhl z1<7JxAbx6QU%%ihM)Jb*%7xchME<4CO#W)mLWPu7CBO|;3@aFZb~y}cF36m^$B@21 zg}$fSHn+5n#576+SEkNP_EvNIg+1_8as2Emj?qPqzb-kJVQCw$tsy#RmAtGPuP?6R zb#jr{?{Z$Bm=g>U+9|`iFwt_v0uLT-pCUuo43uZVjrx*G>%UwsNgZOGnQZ8V6GsG@ znvc$qJTW29BE)D@2XdxKq!W*DuGM*|B|0%8=8B5%rL*ok<}qtt`% z>6*rpoLTSX^^OJeS*E;6EEC;(h3{XRzVgd|U(YYe82?1o@qaoE<^ktdIh-BU9SY`q z#!admP^%X8`x=ndt9`VPnB?u*XA0HYa=%95%t~i68+m8-=Kf@ z4jOQYQinn4oz(MF=dh{J48Cg;Pq=T__|?WU4!(VA*JAbo-7?AEoEs!*%r;{^gr(6u`ooQh{mh6 zIo1Av;g%7UnWr3A!2c%Sj&DAz>aQ0N+{AuTPK_adTfpyOC(mzTqcg0H?{QG@l#r9cCz%aTmR9HHojkzz<@D+SesHq zBh-H>P_gWK!fcPqLW#2>I8Ca`NPFNEn23k6=# z5XG`*>0K!FKiRv2=Wj0pPdzoP0Gq#RY_3K$PYnjf7fB5S{_n5BAWscnT!S=E4HRH6 zmKwTKso`oZ7O;C!_7riCFohWe&n9|z&CX;q!8b`Tbiy<&Qo+EQn@DJ|zOi}5-r@?t$HiB^NK zm@DXLC*qedDRCh*SC;SSBtd<;JXcp%t~yuf(Cwm>+cgE8el+=YH@~mzn+@glYR&VS zbhypt4L2&*;b~|S>Q*6tY+84h$5+|F)X5yry8L#WEz-F8A`{`4jQUk z&@d0fl=#i5o}0$h9<|G6=yEY*nxbkk2MXQdb!wmL_U{nIAg)DTrdmIuGbAbN7}W|> z8Kp8iti3_J&IRf*#YgC)a|ZjnbAcJpBx`xvdzb&lGp^cIYp#(3)H zFbri7N>+P$FsD|i3ytWpPlq8&Sp-+O|{NW1yGadH6{g7Q#Cy{NJrSOcjCkW^&7A+b0(PS z0DhN|QrWLmPXxfoW&yh2+gaaa9HzHSjCm5y9hyigAO^JI_j_8YtklA}{4^%H=kquB7q7p{~BuDEig1bZaFKgS{{w z^)q#wD765fv~fd(d8F=Q_OBP)BUl}BS$vV%6HE>@4+iag1)gGIH8c$?T|c$Ny}O}}%smYfCBIkmYMaUZ|%-vys;lxjIa7M1o- zQp9xvpkC5rGqnBCb#iDoU5@*{3&Wdu1Iijg%E4)b6M?=?=}%619yo{hgsupN@PQ&R z+@w^Iq=OkcF(K#mL&roTeGodz;4_l}^AN&k5P>ta?#|V17gR?!L$lAf@o|6>trmMd z{}cvi^@k>{ovRxxIHnIvYSE+<#4lVChnhfeNZT|7wd1TqD7cnHenlSu7eq?m>gLoe zH9+(czj z@V968%HQCaLke-jloCXymfXvm6f%~X$i zx;x#~S`EY@IXFa6!4P+@!G}N&Iph#>2;`doB`0G@a?kHo_1CmMRtkg&Bz0B4s`uXS zeblShKX3l_qs@l;k*jgYUH^37avVQ!Se(j5C$N(V^F{hay7P{PyA#)rf(dh; znr^T!>~P;rtCX+u`+S){;J5guob)+V??;L6v#9?(h>rU?9D8ms^9)hr zz80}>T8RkaWHPa$X+bm#0U@9O$n@WjV(9$va6TFEhHSdN!%iz^&=%saKu5j>kiUuF zNBDh$-yPBykVUT2avMmw{s>l-Z)#K3d2R0)+pcd+0w?j9kt>wRx0A}pwW-YF^=(q# zIufas@K^a>iP;f<2+Kf+1$e7{PK9l}>CqcAb^*9Zq8V@7xkO^^Up4B*>x2{P}6a8KeSSBSClGc{&2 z2I-tmyn`5GgK!Z`ViujSl(70CxV)SBS9pE@swmT^C=90uy4PV*GRDE_+?#_sLcGEfRhjyhUPv9yk7D{**xaxCDtmLs)2;Z!4LRAb`JM zk>?_2Dh6La=OtS1+~bOc*H}cJr3_4dYSv*wk}4D4hRla03_rUZ207=aR@GNX-=9L? zQ)QPsN=ITECcZ5atCp+f+(B*)Je3?jzlvjcp5w0zjzu_{+FvV(&KU(Sqr&UUt9U&> z&+B&?uTS-Ph1l#Aft;IYIb^;AUp7yXlPd+Rt(6!Su*+Jmx%$ds7N>I|#NTEJG(EA;c zS^o^h|AcdDCXev5%goPa=_(06kBbv*7@ga&MkrsNB%W|hIwothzhhK}w1-1DzZUwY-gujiFyihrWY_`jS2^8oYf49t$~4qfIs z+C|FvuhfO=eFetyRkpOABD?SBjt7fVUAQ5uQw3P#wYf&)+IWq7M16m}ME^F&x9H!) z!v-9p&|wfb(~6+-t=(O1(cN96Qb2SK{Co%>Ak%9CLj;C)#Qm<8xg%E{HgtWLlJLdo zfH6|`42|guHmQp6#w8-WfISuD3pnRy_Ue{#+B#CiE)S7oDjdr8bniUbUW9VPS3HI`(#>?IP3W^dr`z9h&w#a>+VEaVDcD0rt zms%!+tL?Hwq%#a2UxUH7Gy~%rqz^SI1@DVw=@4llOB2erXhtRfaTkxdA+kg?Uaic@ z_6H0%3%|%b#kd6iH`#W4^P*b6T0D@iWNGJfT2x2{CC0B*+4>?0J*F}X>hjTuMP_VG zFm<3#8~toN=ge1Qec%{wY(&gv?g?{dmY!H%LM!!7h8lLOKg!X@k17&qFvh!;DLK?a z{g(pe%dRKP_W1QG>!xCz$3r$MP4Gw1RD93x?CI9jnQZ$({@BZ>_oxju#Vu($dzp{dL6Mc}aY3}|2l-r1 zM>`R}mQLr^sZ`D?mOcX@0TtxEoyydxsZk3DsZH{nntw1RZ2vMB;#dFf$8c5@o$ zV3-iUIoY$5h#H}0(e_-*pTH z<%oqrButN;Fu*r2yWH}MVNUG4 zky7ceWY6`1k;#1YxXA%!ClSNF@9e3&@PpZxCX1pVGP&hD9_m$9hP${X%T3vHX^3@M!U(^=MHPQjT7IQ%4sn+9)XZfSV8ZjX5pxH5xj{@=~ zlp8_hm=2?!3)oQO_(--8j6+=cfr#tCS8=I1MUPkZsGDt;Q*z#gd#yM~h-Tq}09H-7 z@V>~mJlb$o%_!$4^OsX$%n~Os(IN%a8aoYxn3>g;%1dlvp185AU3ArS+}Ij;q(~-Z zI}Z(n*)o)gkuh|)3|^CwnM2ouatQkkdIA$PV%231Oi@@vI^nvkez}<-s3`q@j<_j=@|W4!2^Fkh(`TX z-X%&U04Pn|4q+alI>Rj7d-VF7z_S+(?b`Mk7U5YakTv_x`Cjcf>vX!haV$x=qUE7!|58f07`s zV*vG%8tb9y1-6wzyJ>UW^=%kl#~V;q5K?`cgg6c88YfGGGoucnT3XL(A?=-nBt>Y%(*@s2o7QDMxb(>bqEF563DOU0pM~->092OnWg53 zn#OL!V$h-x!uKeUw`o#8kMASK$M^6jmK~Z_=N*XDi?f(-;UkZFj|1;*{%#^ys@7B6 zt=KMnfaC!SJwrj7(`mV@Gnx)z0BcVMfmb+$BE3_aET}s(J9cueYSHbP{gH1YK?(kD zeXr~djya?dJ4h%&q;km)JP$}i2OJ~qce42}fWv3$2M7oB?hsgjHHHIdhD9csnO-WU el?|6%-}VxRd}c&(-=%^82OSvU<1PtAY; literal 0 HcmV?d00001 diff --git a/.doctrees/_autosummary/micromed_io.tcp.doctree b/.doctrees/_autosummary/micromed_io.tcp.doctree new file mode 100644 index 0000000000000000000000000000000000000000..7a8d2981eacdb2a15319a57d660cff94a14a24ea GIT binary patch literal 12832 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 NAXI7Wd&B1H{{W&ZslNaK literal 0 HcmV?d00001 diff --git a/.doctrees/_autosummary/micromed_io.tcp.encode_marker_packet.doctree b/.doctrees/_autosummary/micromed_io.tcp.encode_marker_packet.doctree new file mode 100644 index 0000000000000000000000000000000000000000..200d120008fbcd818992af490d22632af7b85aee GIT binary patch literal 8954 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 literal 0 HcmV?d00001 diff --git a/.doctrees/_autosummary/micromed_io.tcp.encode_note_packet.doctree b/.doctrees/_autosummary/micromed_io.tcp.encode_note_packet.doctree new file mode 100644 index 0000000000000000000000000000000000000000..6ea9c15240cbcb8ca0cc3f8606865dca7532f941 GIT binary patch literal 8800 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 literal 0 HcmV?d00001 diff --git a/.doctrees/_autosummary/micromed_io.to_mne.doctree b/.doctrees/_autosummary/micromed_io.to_mne.doctree new file mode 100644 index 0000000000000000000000000000000000000000..74521895d36c2925949cabd22106833d70edd433 GIT binary patch literal 5703 zcmcgweTyVV8Q1$uco_Zs&~7) zI@Q&?GlbJ9B-~;NO4_d=f(TI%2@&yszlC2w@C)egseYN>+1uMqzzodp)KgDA^}N5- zJB{D&Z_e3|SxaK!N8?@Qd6D#Zl9?q>x@pKGoxPvE^z-adcH6WSJ5FS(T%MUZV7S5$ zJjJ8z&CIM4y7q%)w>aNQxT}2`RmVj`G)3#p?6zo|hW2&9Yg^`e=(|dW+OLf>QMcnb_so!8V>E$f;9F}UCq+!U^q(aJtC0Tb>0{Nc3Kc5c7 zoN4%x$Hz4_<{B2yK_0OU)qMfq=ka|J-s7Lu$qT6OMX1>bI=R)bF0smUJWN&&~ zW$!K zVo@@bD(repv+fY?(5>(lcct?DXq3yw7-=`Hd!PkV>QUs4DRL4z-m{&f~!|-ysT?BNCT!ER|ZZJ^Ewk3h0dbI zH|r06`1Y%h-u}{~^1qezt?6~<;PTf0n1R3d>Ycs)T7I~TOn_)Jn?>?QlH9FrXJ(_e zav=NZl>3toKCa?Sb8DC7MMpVvu5#Jt0cV%-xv1 zwNP{0H1$ZyG_JY9v^>C_gO6#RB^){SJuR~P9rC?j!y>bNN;k6Q6#wqC6CX*ZGEFW`-CH3FS#+^9^zaM4)z{iY=Q26WffZ+ZJN0F*xiS@ z73R!x%p=O3&KO0j&hTH00^16F%@qsI?roaSUwl(GjnRLcAET%^_I@)TPcqYtCp(Zo z+G@JK4vP)PEfukdwGe<%(b)Hr%X55vyDR5x0h(9MqFp+t7nmSFQGsZ{6mzEPd9nk zD)N`7>6-XLNfZAnO3t4zLjC~O`y=A+Po<|90YCNpFW>v5>15Mi=TkC^lp8ZNfFSuxU_YKEX>QcAKDw)Dl;>bJ zE8=@N{fpVtbtK`4hjh(5KrGr?(g`(qKQn8!TO5sOEXRZ@)y|<#B*zs{sq?`Q%|fJ6h>-h#z=9O!EnUVmWvb&;XMM4T zbUNY~nV6P}aw}#5j&382vACLF=-`$^EIY+ARRLBja5jeqGulNX`GL7Mlu}0$?adT? z|B6|m$rR17Go}$D17wxD?HFC5ZK4wpyO~3Hz^ScHoMT@LryLA%S8<@26#Hgb@mMPD z1pJ6Yar34lSWqn+W`mD?=u0!5CM8nCG(0{?N4Rd4$_^E1(B&)yqz%QpocKmzTJG~YZg+? znp04m@YItIrWs(Zqb-mLcj_mtm$=$F@)JLI&NavL6Kbm=NWo>R3OT*F$>;Lcb?;7~rxtiV&j6Ht0)c3qBb-Rd`kc zU??LGIWgja8=#;)_F6G)d8bz{pFc!6+X z_&naAWvfD*KE&8@VqdK6GgOfWPT)P#^`jwtpiB(cC{-lsU#N2R!b?9((pn-$OHA=CT?TzAj49*%1^MrO{7I<_-k5gtTPbY|9 zxFQ~Td<2Ka1V=rleVEz+Q*bSf%!=fVa!HBXTssBLpQ``{wPCfO=9yl)0B;d6|9$XX z#Q4Ft@h35D0#lnzNOt2S5!-lDvim4y`xt$iMZ;UB@T%%pZ%_NItYKxf!h2PMraF5} zb@Xpk7(ey5lGLo!z0Rs(1>JvM1fiN7Ldm7X%k^D{P()ZLyfhr(Dd80A^%-D=-9ClZ zE^oDzuAQQfI-xWbrW>=giX9YYq&`=sl-MxGpeGFAA@BuM+}6DU{yyyYZuSPk7>{vC q2zbg&;JEpPRR%l-zFL8;?_DjrG5Gq3-a|VcJ;N3GjCziAu=_uS?v_jd literal 0 HcmV?d00001 diff --git a/.doctrees/_autosummary/micromed_io.trc.MicromedTRC.doctree b/.doctrees/_autosummary/micromed_io.trc.MicromedTRC.doctree new file mode 100644 index 0000000000000000000000000000000000000000..b63699eb508744fe1e227794869293c759ad618e GIT binary patch literal 49476 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 literal 0 HcmV?d00001 diff --git a/.doctrees/_autosummary/micromed_io.trc.doctree b/.doctrees/_autosummary/micromed_io.trc.doctree new file mode 100644 index 0000000000000000000000000000000000000000..f67dec27127478dc0fc707354d3a2fc0a8e97627 GIT binary patch literal 5280 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 M0?CMNr2WJH1E9R_ng9R* literal 0 HcmV?d00001 diff --git a/.doctrees/api.doctree b/.doctrees/api.doctree new file mode 100644 index 0000000000000000000000000000000000000000..717f47c274e42c828a4422180f0533915058a046 GIT binary patch literal 4334 zcmb_fTaO$^6<+V|T=#Crt4Q&}M!7jkb|#7P0E@B2MM7rr1VsoTl&DkFT{BhQ?ygQ% zwRc9A1v~_?sNT}N^AnKxNjv~T;t%iu->L4N?HOmCL}aD0yH1@tb?U2gzH{ogtv~&3 zf6f27J(CHU&IT-sQWbGixNfAvJmIM=J}=(w2197?tag7j6w2p^$N;d0Kp2 zxLs1WGB$&1eaG<7N|i2_i;ZOj`}Zs!L-e{lREpK#cNeNu$p<}dh+ z99W(HtSCKdXAJtb5C^UoEF2aau3h;#a+|SCc`?ez%=MYIT8?vz^U--WWMs(qP8c&| zAjEeoWl8zfjq>bjFlOPo<`dG%UB|L1O%-BKyd<{89kC&f-1mnEe)Oa-a>)@U63rd@R=7zGdS)W;zH}9GHxU4V+2{#kb+Uco`7A zg5PWSy@B7GaDUV5yZw)T_2k{BPu_c4|6kr}tQHmC2KY>G^$l z4~X4i6-KzVL1Vgb2aQpH^DSTgt9|^{SOrq``wuJNjvst*oTw;|`Jj%8*6Q*Klb&na zsaARR3|tg(9f0{YvFu{Wg^a8y&iVx3&j8;8+|a`^9qM?#{xTW{e%&-c@jq74{252# z=Z01n&&YksAkOs{F6ki&*i^GjG#0v7PqX={8b3Pyqyg;ly~g1FCm(rC?;_^5GoD5= zodz=mdDF}*U%^a$Go4sku36kzFP`{JK6G1+jf*OMf#+|^+!^`sVM|cnb(`K9x1P-l z*UsiAI8DKu;ZC4Fg_Sw7dueS`$+dALBwXP(kZJ{3jD`u5X(9gTIvCk`21eT;^KJ`c zKFeYmN?ZKFPhT*d7MHFEJj+llMy`v2XAOLlLCf@%TP$xLlia%iF?{p6c6I}&Hi*ST z(Y^xHG{NN80zz(mDvrdT!8l|meI9zG979QBvt%Xkbv<^s9$uHPhhIE*<@8^hPG5hE zwbQ4S(|`GjPCp-pDNYuBnWZt5koVVHa+^dh#o0PJ`4edWc-5r4-Qd6DSf$gF#8@*> zY4s1W`u^(brjqN;lK9kQjEZnK)7)_Vn0tD^hqYBL5`YPOEWYRV8XE@|Sx{H=1%0id zoT<=i-mJ%8R%faMqeZO)mlw=+h`OZL8;Sq?9+GatW)aUotv~%Q z{@ms?R%4`6CuEs#8b+>CzRx6qrvJD z>L-qy6ID$mi+xz!C<9fzT^8!=Lv_)7h_~GfRw-g33XdzhrR^%! zQ=k)|`&3j2Q73XcIr+|sk@&u|JQ;AUl@0_;qnK-8O|FKZ|Gg69hLx7LQn;g)nH3X{ zzI$VB&Fz+UuY9Oi-&vkmS?u=d42Uu#08#9zVJBwkG-p!|#3N9}I@)x1OY>0aC_w5V zMz9Sf<;b-|l}>O>AR;3~DYAN2h_>6Mln$;$Ze1dJDoD{;K=QH zi4SYK{wq;tcpj+$6b7w*)LCVC&|K-GB(%X}X=E9kdqE@(HH656%$yE~5Su|Zw?d@@rKiKf-6l=%05k*36I_q=%+0ft*WP&_ zc<$;+xMH3pSLR=@%_B`2h3q-k1Ig{g?}5}G3Y)~(tcRk4Eb<*|*Bv1ylVFjaiv!?E zK@oE4_RT!CY!(PP6)}E@-%Tn_h1)i0>TU38j=VMi>Xsju!yr~6t4RMS6lgs|Tzr{t zK-oix)#vELFa4{~KlLgexJ2}*P^J^aKuruci7L>`tmw&vf;U#I%tm^~ofn9iWXvO^ z@Ek4(j+X1v-43C39&ogDaexObQLK0Spn8HLSmQ}aXqRq-r;q75=(;7HAb$~x65TJ7 z!{Tj1jhuf99>6Jtmc_Fc!pP9v(_tJZb~Sqyc8FmjPaISQhi}X zxX|t`srBkzy``H=_CdAU61U%8wN=fawt+oDl@m9hIYyfl17yI7qSg6PCI1`{d{%sj tOu$11IfeJP!QGb|E=XiaytNSf>)Wcj5roT>9`XH%c&?%ZD%<&Z@IQugk=XzM literal 0 HcmV?d00001 diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle new file mode 100644 index 0000000000000000000000000000000000000000..c60c880b22d9f833a482fda04407a9211c77e245 GIT binary patch literal 950732 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

49(DzI8v>Sbj|YI(!?TG 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 z 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

Vr5M<#bKsvAoKH-GdE{T|?H5H_I6{58WFzG zO(Lun67adKh>&8es*byVYg#O}1U1l1Y$wg2`@XPiV*pnka!yTmyc=7M>vUl`Cv;HG zS+9b+_Mdjyn|w5*M=a(MBwsMli^;^OlAQB6aA}-ft&KGs3vtCtf^kfftw!mQX4EEm z=S6c}+cF20#ZP5LfoLoMc#KS&9CK|f=DR5*t!O&S0IabP1?1u4BoM-*u>@E9#B{MR zTBzY9GX*G?qc>gMRnAqaEvDT}u z)fwU|*VO*r3<)11!+IfyHyQUSDcI@Ba5h2>Isv#uYx)D-Z2AV#^cQB;^b}I5EZz@< z5M^ML?nz)E{L!Ddu$2FuquvI9ut6Fytk2_l&>X#-nC&-5xt8Y0ho7!CUSTLS9T}sS z8B0$KWAr3|nHraAU%4Ogph-QMc#Pu#(7r|=+^%+&)`O!hBxyHHJ z-|ntgkjpHbjcBT^uNTu_6dCxMVzoxh8W6O#MS`)5QH5WL`(lZUoGW_hL_+7HQ+Vf6 zyjXSCh!R3fl%!qX#v#j#77+ZLa|!-pG2?3fQBrQ<~qIN&z1ai3t#*A+D{M8a()9f?3?cl(A|9J zDt@$;uiJ1v<-7yWC;!CRjvMD{y6m9K^XPJoS9UG^x{fY`bh(}`@1+l)ac;oxp~;Je zoSpcAXzZJ)MQPTzG4*~n*SC>qVYpA?majTTKq!(B7D1M}3rQGP;-c21(Zf>?J@BnA zRZkE4r32HgW|vQ;#mP3-R55NxRM(uo=linD9h+7?T&)>_#6hLojP z3V~cFc4?GSR|wNAG|%(VXtT)%+3m;-3lKX2!Z4;Xzi1z`i_Lv=8}m4J;=C2aP>Whg zY#Z~?M!UIho~-ZXc!O$r6r3J%UWzNY?^_s03aUO*Z!AI@aU4TP`9zf9ABq9u0vTlL0*S^)-L~gTQ%*IOUbxbSqLf`ng}}5QRJ1qi{Kvr(-jC z&D+>XI|}FkYB^=)N9Uy-qC;G4Ly_3!d_tBR9b#~QdkoHT7nje$@$8yFyt%{5_qDIw zTeMD<_sb3Beir;jhd7M3$6>9X01}7({W2wi$Sa_co!iCr=j$<4pACzkJ3tw zRE5%<;c~sEA@Qvakr-)@#1&CUcyfIE0S%uYc8JfN?eSTm;e$k48Uk}?QrdZGY>u`^ zU|kRaj~EB@qYv7(yJ?ohuWOcdh|@2$$7xFlCz0xG4rLmfBa^_-8J=bYHRM)zh}^v$ zBPY_)M>VEu`p2-|+6hL2 zc8CLS?P`rfn?cNnJHw#f=qZ*<6TzV_4OhjOlSYjW5B+Gs#$#uP22Ku-erOcq@KA)t z5)Kat$c1;<4<|?3VQ-jRSBL#i@)#X<`^ar`*!Lob$ziXDJQs)E5AqirHu_|o9k#G! z2^}_PWOy959;E6W*4Lz79oCVg)*RMNq+1+T5Y%%W?tavT9PS4szYYr_$&$kYK^zr3 z?ufE=#4M28N5uf*4)=AQ)pJ>Uft;N4Z;)~k$wgiQcpsJg1U9owB0>=vObBF-@c@Yl zx7JaHF92n;08e8P4*9ezrF^k@iYFZFl|qw)CXJpv@@1Ft2+Qs!pO%psm6ZN-M4s4< z;!&$>B#6%vg*g)bX$IlM($u#NUrzV_1hfQ2ydCT&D^R&g3I{o~A>X-%F0|d=*-4jO zxZLqm{Ns)GL%!Yhr<|DG_0BE$rY<(>?ZBd)wO*9$J85b2DM*o@Ho++YJ?FH3peHz%bYlYcm5L9rjYD*;j0zDn2l^xB(0rnFGXD)%63m$5Q={b(}Ex=0{>WR z&l>+sVt?0X#7k;nJ6>L!mWoPG?MMqk@p4;Q5R#W1?VL4Uw(&W}Gh!b#svY}A(-Kax z?`T>OihW1Yf{^TEXUUj-xwN`8KJ5Iuj95nvYR9@K(-KXw?$r!pwmby(2HtueOfY*0 z@1$SKFQ9xoL()5-Y#H>o~SI&2(_G|R3h1C8no(HA&zo%`pl3LN`j->Vz zonQf}<p>H<_bze)Yk^^l%lkhm_=} zRG%8bQ8%YT!|nC0Ihu=&VWeypkfjhQPk0}Lm_1SHZ6PXRemYuOUI9GKT!xTh zc+8kuNfpBlhSH)nG%PTWnj@M}U>-JxeA)%((tyBF&Y59hodXKx+0I4eea7@jDkA*} zM8wy$uuwc>j#@&Yc#kpU(=HV2142=s#;QSkSe#!HDIDMETsZ#5m`+KB<9P{$Bch36 zA^D0qiV20}OU966ge1j~LXAp<%aa0xGI(p!Hbh||T`AS@)<{Tg+f|w4Xrq~<87;}w)^?ISnwFj_Hg%Li#7lDA zu--AB)@wZmJipy?*HgxX4SDddG^STV-ZVC87Py6|NSxH@?&an&KABb{IYwZRKbW>0PCfj}t>uETj-c+vEqqj_0q3~FXOjq&lcq*NN?PZ`7+ zpfS8SU<6ISV@%VKviP6Iq>5G+A+`kKfYAaH(i7h_M<=14_;1FLLwe%tX+bDGA;hX9 zJ@L^_uz;T6WoWafC-kMTQ9BuOugOL;P{Z13h7G8zL$7!(gNWA*UGR$k@>bU?{yhC^ z;T3-Y&x2m^uC#4dVk_F*k=S0*2^J7rUNbp+Vr#Vb#YWq*ux-@Fb`m_2mX6A{4Ks*% z36ArIv!CSZaUF)hW};Ua6EtMlUSUk9Xu}rbN#kY=^8n)6=v~{)+~-`VVLvJm}8ib^Y1Z+9CBxVok7gr zq}Ik55fQFo^n}(ofTNja4Jm@ZF{V^fMR2WwlxU3%3(8l_kxVEkUowUqBPc1Xzj7di zqDlcmg`^)&+Yp6?Fnk?h@jxe7z>VPzAG7Di1ol-0w#;sR(zJI)cMWP(JHKTk>gv$* zUdJF}{g#~51=suV3tZRxMf9tM>z&8*pzD33z_<%|U3{;L*J}FJ0x}6datfX_CRak%G}d`yLd)M`q(tJQ;^VJ2$0wovKV=L#WdC28 z7KG9kLbf{67UP{@0d2wCDvgCZ&6t-nBc;#F@HsRz3$;NFZl^Xrla{DTZG4JB#9HOq z8(&-^7gVCp$+Q>IV~YQ6Oy7|D_-A9XMXQexiyE6l>LadI;X%ar%&|(SM80DTIiy7X zXIcO>RvKLTM8rX&q^k zTqjsSn{ZZ#+0!Oz6CS-D&CJ3fq2{*JC9h3OQss~|7{nQ%LN4-|Zpx1otw4Uyn7Sba z@~kn@q7_JpL4g%NG@6NSQ&@ex&m5f;$>$RYLdp0ps8`Vdmqk@}eF1PiDSP6ac2 z>O)^BNV4E2|7zif`~YptLU&MG+v$$)r=_RT9skH6&H&wUfuOC-_ZF==Ry}1(+mPls z4X5)NgM zYWDO-ill*egU(rK4QgpSt#Maco+_;|#30T9t+7(}v3PIem@#ETI-_b#uxOnTVopTt zG~AxB#+Ww8C!xleGKL(|7*1LcN@ED=>PTbk>jVpE3{EgNdm6(qq2~wDx-7H>wX&VI zcz;?-DsAyQ4B`yX7Aue@m9hlOXlY=9&R-i-HKZxNXiThVO%Y;DThB|dMC zOF}L2S!2i{E%E8JAe5F6Qq_@`_^nQ`fR^Cole4EK^p(X?Np>%IT{en=8rDuRoR7N9 zJZUKfN-?Zp5b=tk3(E+un{<~ETu;AREF;*7=fPzJThg{!iLGdJM`F9Q6D%OMoGEqo z#5S|E%!kqLEX*FYznyd+OiN=W-TN6tymZH{I(D*NUa(%Iz@`k?oB-R)f34DA2TWnz zn9?CrSTQDGv?&ZRtD$d;ua&7?GRt?XCWb9!*&M}$7P4pzIbx=>!XiEawcLJ&{eGhyP#Duq?!v8rV*J|0yjImH2*_LBxx1 zocT+$0IBsJ^d;`{y5PwM=fB>Rq9HT40wB!1;Ak@!VoKvueZ&_ypg|&{7St^@MtV>TjGV$F>${=QMNt~B*Feo9~c9ej(>i|hJ#Trrr6UL-Uss;kyuC4|&A<>!`mXk4a6cfrx z-Wc*}my-*8CZV4qX{1I1V)09zi$&9zGD*cEFxwaq3%5mKDR`YZMhT_hNn^;TT?#G= zN`dG?0Xg`1=W_6;#hj)Nkt*o(w!icAR85yh3}dpl~5MGZ4CLe%ff|0S)j?~pd?)WhK_xP)d10* zp~J?ulE6(0%fUtFC?%AGRmPCdJUOV2SL}xZ8ew1Oa&Vh5X_9J$_Hw{Y3d_M>bCeRw z!A-`HW8@%3j7Wu<#E>=x2(_1UVOqteun-ZFjF zMfU<~QM>5Y8`27)if%o{AYy|e-PoCZ?#tZZ?D_PoMR0Z%o(F@ozm>MlN?t{qJCfJe zbbz?PnN7tkh;2%HvI;3vVw~Yx!bP z%L@FzyG69dqICsXpR^h(KKjp{Q}26eK`5*79l?OO*tcUm^_vq1hOXRGE*-NgH7jqq z-m8_xlInb6gLiDBJZzKsG>=XI*51FA-_JXA7N>K~W4Q2foPUMy4UXdsY9Yb` z-I(iKzS$Zt6m6?kw)PM0HAHv3Fs`B7=STPUZlJpe=$0!}`I=U*AghT^OsD`F{p&^r zPy6zHQ}Te~K5(gzh}Kst_hH%_zsLI|Rw0Q$k7=DZ;uiB*>5JuQL3B~#h42jQovIg+ z+}}c=mn7)!JqN9g7LNKJ8vs3y=PP4WdgtLgt*Tu?&(N6mA}K7ZaFpvK&75-~{vK(z zI(0QU(`@*0@|dP%0Km zw$fF^K02G-()jcU^C`K`dWGaG>#UDur345IS7*&{J-@qj2UXZU;0~)nhIA&Wkv!$`(|L+>|9qAkoK&n+iYS17?zuNDhqh0=s|yigh|AGgH$L>i|qd1IGGmyJHbDdkr} zg%wKhG$m4f0;xWURES|00yDGNwFIFUwlXbwC2znpNRd}uf!Oi zPbd0Y`bB}peP{8J*v{9ffR4zXadz|dCcf^$b>AH4X1?K5v%m35y!dx?p-)5@VBez2 zRn9#WyW|RwrzMk$ND4BU_}-FPLD5VBLSZ4IYAHY{EIySsv?SyBFQO=oaa`0q+$7xZ zbN7^|rt7sl9Ykx9BCKj=>%AFuJ!(|Dpy<2P3X$q-?@9|ovG46^K?wHM8_R3uQ99Ch z*e=y71<;ei68E6}`{p`%@#hZl=PvQ*e({HnI>#$?QtiG4eEb{k=!_|JSURBuf9RA5 z6jILbee*aSFYYMACZ16`HvFMHO87(BQ1FLR8{iM^R>mLNiikh7BMjfsZVcSf3V7Vn zlE!_Dc@hbCq(Js9afoaC=GGg_s7W}jSR7PLEfPiJg$ZBL3cQ7(l094~jTY-;zLp;W z1+IlcaRza*9cnNYz3n^{{VH9arpvF<Y`R8zKM4pL3&+n#8xA)NH1$4QWF89&pg><W)aN?ue#zM>6&l6P4~r#-3uT(j86fJ;hX|I})|0n7rOyy|Hwn zSRMhDS)QuR*ESpH3PH2Sw9=lj@>Cu^H;s!PY33SpNBPf^O1WGcuAZD4DHog0D^WvZ z!C`UthUVtSm}g|Sh8pKo3nK_$P3#^iAG4e4{wBLvK92kOg)wwv{8)nALB)K9^(1Z= zj+IBrk82J&D;d!8LiLdCe`lt#czARY5(0;>d8FA`I-D<+OM6sFeWbClJmTOCaOzN# z@7y=1-dH?3nJ-P)RlCORSSWA3=Zi)QLRHga`ox)DKygoJjQ`XdXOB)#(=%tzn;^8O z&~j%ke(9}t=A&rHSwPpuVs7Dq%7JM#Ygx^nnxx9F6+LGu|3QdtHOFJQRg-_{B1O$_mPqHSOk#ialsK%=5^kkuQqF<yF=Jzt$Fr+xCRatE2(_E$S8TMXwM*z3sZmfak7j zV5kJa=b0{s3USVc>JT_u3thusJCDL5%g3aLoS)!{ z55LR&_=V5skzbP1a{5VQy$TWodKi>dR6uKj#GcC!mm>zkZ>Man6r1eeO&67l|S{ z&CYr#a_4uUz(uoL0nyWrN=(QEIR6*lJ2O!H0*EGN0Ze=ej@-^mhQs+XzIH}nE(D16 z!Nx@9Ad@(dv2lI}-#S0ay8uGOj7Uf%KPU6#+yvv~oPtpj^Oqxr_Q(WOFky^=1kJP(v(`KPrm6}LL?jM{4y-0^E51@sIW*|T!mPXujzabPka@w z)|#Skuy9#G2G+Thtn22Nx+K`v;yYKi$oKSZTGPONu?ldXg`E}@)!VJ3p@EB(RYvd| zWc1g;=nIItj07NhJ4YmC7{GRN7#@bNAOPrc8Ua9{qP6PPw9frgi6Ee?iQ@UnO!2`DLDIa(^#^f zy`u=XVDjn7rx|tO6}(UP3e;1!M&hYwjnq@N1>&h^3)EBAmEx(VE7eo(W8$gT$JA5q z5aOxVA-t!;J!+g?sq!#Gx=3OKa(1=GW7@`&=}LK`JWX*S^7`aUjRnR0h+Skqu(4>u zE@ALxpJ+ON4gyR*-B>F9D~_t#7_|-GUCEcK7*PPs!AkiAc~=;KIj==;Yb?a~b|qhI zHs;^XU|!W6c~!Hq2tKI*3nWhVd3TdfJD)-|?&r>55R1+cEVBFn7F6wgWpolAHe(g> z)sn;fhIKGMVK+ssT2;>9i1wU+kR3!TP)TFMaJ~-3WuM4nxMWuc7~Mhl)|$XFIUAlN z4|JR*3xMZ}z4Be_R{8K%P3M6gNFa@ZoXZ#Do%6IgS25cMdJF_An=WE-TY;l7j3q>a z^uxjru>gxl!UE*I03HL&T_(x(EDBbA|gf!jJ5|bs!o6(_Gq0%ZI~mOKq?s9 z6i}Z5{1~W$v(@?(wART1pZ*_oe?I^nC5EXyKxiy+A5gi6R|Et(D9`}OvL=t3ctp`S z&j-(a46t``bK}AGyPt`nM^r6=SDHLXb8dixoMiCQvT4Fh=#_e=gBVF}xZX7R7+~*@ zZJKze-!39bQYnww6&u4SxG{D$s;a2>nmqb+7Wbig&DcrMQD@q>q_+IdrM9?@#72Lm zDGoXRFx-8e+7jS?eFOm91oVzJa6K_8lq0L~ zJ#UJmZGQ<~e51|C1r_(jRtyhWuL=cCjt@9ALTD^^Y03Tpo&nn7R?s{gr}Lu^+O^ur zX**Ow#5+xKF4xyFqG*KNXO~01u?Wx@X^BSM03?izc=G|uY50IlYWRRR#OHC!hcLuw zv>KfVNpe3j!A%?2w82fht8nAt&ufpg!A+}y*!K%b>E;_QwZV+uRCw{2Y7#>tz2CPO zi~*|`w!|uG1Qy0gy!C+GqNxz#G1`wYJZtD~yO)eyPnbDEkcXbS zA{5_HqaKZKRMJdjkyXnKW{k!IoTd#wrFwrrC2DJm?0vsJ1uE!6!=$xSBU&g`c!#Q5 z3aDUT00&Nad>l}!cm`;D<4J;%oePcpPWLytLj>9XuqiSx4Pb25XgT&qjpyd43xoI{ zYjUJ*Z*oA_xg3*ljleE5ynnIqwcYBiLfI-7Mk?^unj8XlzK@x@M&xcEe7#hB?XLF_ zU#x!&UwGSF@YYW8mh02zEw8p*FSWH-ZFe9q8HI3xsj$qO3Ixw`yLqVkRuAYG9Dk0OAg%?u`(WO(A|~sqUPVCnvGZ0qt34pCpf+aj8x z^oC^dYu`j&Pf%US7tASI^Jw2&xg~&on}7w@bYaAM(JAPCUg5Iw3A_+JvRj{QD92z{ z0$?2z&7g4pPWS#S>UJfFZu~c^>EEjzR@8UVu9q{>vBu?!G~HH0i}dc@*g5 zb`-4k2J&xTJZBCHzDb|($exDbD9}gTC|Hb86#Um`k-*0Mnq9$U z|07LI50}L90WoVTL!u%wIIlF_$IC0k+JdtnCjO-q{zV1OLOe{qRzOt7wbUC63R4Km zRWT7Oo5G(m@tXdhYnM{a0M`=m~FyqU=NR$QLK+KsUyuLWv4O%ybi-dsLj zDwgwOglE-7?hpL+I4_&eT=_$-@B^aoqq2~6##7E`gckW@t#FReB!4OkNmV@Md_*XZ zKhX;Ri3{tE^U9UNM4^-~4l_}Q>y-ky+*nL&Iyg-h-7SIRH4Im$W}l#NaAPG_dQtck z%eWBQMI@~z)(12$)E`jmi6JC7jaB-ysr>XbR@Kmx)%p_#hk=gw{3881f}_4F10M^F a)VjLH1^UNWPD3Mo#wh&AMYcZD|Nj8l3ndf) literal 0 HcmV?d00001 diff --git a/.doctrees/index.doctree b/.doctrees/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..25b4d7a2303e9823b5c4ba1fb2c0182d21ec0e52 GIT binary patch literal 22082 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 + + + + + + + + + Examples Gallery — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + + + + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_auto_examples/plot_read_trc.html b/_auto_examples/plot_read_trc.html new file mode 100644 index 0000000..66d3124 --- /dev/null +++ b/_auto_examples/plot_read_trc.html @@ -0,0 +1,865 @@ + + + + + + + + + + + Read TRC file data — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Read TRC file data#

+

Here we read a trc file recorded with a Micromed system. We access the header, the notes, +the markers and the data.

+
# Author: Etienne de Montalivet <etienne.demontalivet@protonmail.com>
+#
+# License: BSD-3-Clause
+
+
+
from micromed_io.trc import MicromedTRC
+from pathlib import Path
+
+fname = Path("../data/sample.TRC")
+mmtrc = MicromedTRC(fname)
+
+
+

To get most useful data from the header, you can use micromed_header

+
print(mmtrc.micromed_header)
+hdr = mmtrc.micromed_header
+print(
+    f"Participant {hdr.name}-{hdr.surname} recorded with {hdr.nb_of_channels} channels "
+    + f"({hdr.ch_names}) at {mmtrc.sfreq}Hz with {hdr.acq_unit}."
+)
+
+
+
MicromedHeader(surname='Test', name='Chb', nb_of_channels=14, order=array([ 32,  33,  34,  35,  36,  37,  38,  39,  40,  41, 170, 174, 197,
+       198], dtype=uint16), acq_unit='65', min_sampling_rate=2048, nb_of_bytes=2, header_type='Micromed "System98" Header type', stored_channels=array([ 32,  33,  34,  35,  36,  37,  38,  39,  40,  41, 170, 174, 197,
+       198], dtype=uint16), ch_names=['x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'x8', 'x9', 'x10', 'MKR1+', 'MKR2+', 'MKR3+', 'MKR4+'], elec_refs=[ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV')], data_address=648170, recording_date=datetime.datetime(2023, 11, 6, 14, 35, 6), notes={64: 'TCP connection failed'}, markers={14144: '17', 57881: '17', 58401: '20', 58919: '32', 59435: '40', 59951: '14', 60467: '101', 60989: '3', 67537: '2', 68577: '1', 69613: '4', 72695: '3', 73728: '2', 74752: '1', 75776: '4', 78848: '3', 79872: '2', 80896: '1', 81920: '4', 84999: '3', 86035: '2', 87069: '1', 88103: '4', 91183: '3', 92217: '2', 93248: '1', 94272: '4', 97344: '3', 98368: '2', 99392: '1', 100416: '4', 103517: '14', 104035: '102', 104557: '3', 111643: '2', 112677: '1', 113711: '4', 116793: '3', 117824: '2', 118848: '1', 119872: '4', 122944: '3', 123968: '2', 124992: '1', 126017: '4', 129099: '3', 130133: '2', 131165: '1', 132201: '4', 135285: '3', 136317: '2', 137344: '1', 138368: '4', 141440: '3', 142464: '2', 143488: '1', 144512: '4', 147585: '14', 148099: '101', 148659: '3', 154613: '2', 155645: '1', 156672: '4', 159744: '3', 160768: '2', 161792: '1', 162816: '4', 165895: '3', 166931: '2', 167963: '1', 168997: '4', 172079: '3', 173113: '2', 174144: '1', 175168: '4', 178240: '3', 179264: '2', 180288: '1', 181312: '4', 184385: '3', 185419: '2', 186455: '1', 187485: '4', 190565: '14', 191081: '102', 191603: '3', 196829: '2', 197861: '1', 198895: '4', 201977: '3', 203008: '2', 204032: '1', 205056: '4', 208128: '3', 209152: '2', 210176: '1', 211201: '4', 214281: '3', 215317: '2', 216349: '1', 217383: '4', 220465: '3', 221499: '2', 222528: '1', 223552: '4', 226624: '3', 227648: '2', 228672: '1', 229696: '4', 232769: '14', 233283: '101', 233803: '3', 240064: '2', 241093: '1', 242127: '4', 245209: '3', 246243: '2', 247277: '1', 248311: '4', 251391: '3', 252416: '2', 253440: '1', 254464: '4', 257536: '3', 258560: '2', 259584: '1', 260613: '4', 263695: '3', 264731: '2', 265765: '1', 266799: '4', 269881: '3', 270912: '2', 271936: '1', 272960: '4', 276032: '14', 276544: '102', 277056: '3', 283797: '2', 284829: '1', 285865: '4', 288947: '3', 289979: '2', 291008: '1', 292032: '4', 295104: '3', 296128: '2', 297152: '1', 298185: '4', 299693: '16', 312960: '17', 314560: '3', 315584: '2', 316608: '1', 317632: '4', 320704: '3', 321733: '2', 322767: '1', 323837: '4', 326912: '3', 327936: '2', 328960: '1', 329984: '4', 333056: '11'})
+Participant Chb-Test recorded with 14 channels (['x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'x8', 'x9', 'x10', 'MKR1+', 'MKR2+', 'MKR3+', 'MKR4+']) at 2048Hz with 65.
+
+
+

If this is not enough for you, you can look for what you need in the full _header

+
mmtrc._header
+
+
+
{'title': '* MICROMED  Brain-Quick file *\x00\x1a', 'laboratory': '', 'surname': 'Test', 'name': 'Chb', 'date_of_birth': datetime.date(2020, 1, 1), 'start_time': datetime.datetime(2023, 11, 6, 14, 35, 6), 'acquisition_unit': '65', 'filetype': 'CFRE C.R., variable EEG, variable poly', 'BOData': 648170, 'n_chan': 14, 'multiplexer': 28, 's_freq': 2048, 'n_bytes': 2, 'compression': 0, 'n_montages': 13, 'dvideo_begin': 4294967295, 'mpeg_delay': 0, 'header_type': 'Micromed "System98" Header type', 'order': array([ 32,  33,  34,  35,  36,  37,  38,  39,  40,  41, 170, 174, 197,
+       198], dtype=uint16), 'chans': [{'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x1', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 0, 'Latitude': 90.0, 'Longitude': 108.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x2', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 1, 'Latitude': 90.0, 'Longitude': 72.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x3', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 2, 'Latitude': 61.79999923706055, 'Longitude': 130.6999969482422, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x4', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 3, 'Latitude': 61.79999923706055, 'Longitude': 49.29999923706055, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x5', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 4, 'Latitude': 90.0, 'Longitude': 144.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x6', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 5, 'Latitude': 90.0, 'Longitude': 36.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x7', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 6, 'Latitude': 45.0, 'Longitude': 90.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x8', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 7, 'Latitude': 45.0, 'Longitude': 180.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x9', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 8, 'Latitude': 45.0, 'Longitude': 0.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x10', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 9, 'Latitude': 0.0, 'Longitude': 0.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x03', 'chan_name': 'MKR1+', 'ground': 'MKR1-', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 0, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 64, 'Latitude': 0.0, 'Longitude': 0.0, 'presentInMap': 0, 'isInAvg': 1, 'Description': 'Marker of the first headbox', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c\x00\x00\x00\x00\x00\x00\x0b'}, {'status': b'\x01', 'channelType': b'\x03', 'chan_name': 'MKR2+', 'ground': 'MKR2-', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 0, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 129, 'Latitude': 0.0, 'Longitude': 0.0, 'presentInMap': 0, 'isInAvg': 1, 'Description': 'Marker of the second headbox', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c\x00\x00\x00\x00\x00\x00\x0b'}, {'status': b'\x01', 'channelType': b'\x03', 'chan_name': 'MKR3+', 'ground': 'MKR3-', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 0, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 194, 'Latitude': 0.0, 'Longitude': 0.0, 'presentInMap': 0, 'isInAvg': 1, 'Description': 'Marker of the third headbox', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c\x00\x00\x00\x00\x00\x00\x0b'}, {'status': b'\x01', 'channelType': b'\x03', 'chan_name': 'MKR4+', 'ground': 'MKR4-', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 0, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 255, 'Latitude': 0.0, 'Longitude': 0.0, 'presentInMap': 0, 'isInAvg': 1, 'Description': 'Marker of the fourth headbox', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c\x00\x00\x00\x00\x00\x00\x0b'}], 'notes': array([(64, b'TCP connection failed'), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''),
+       ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b'')],
+      dtype=[('sample', '<u4'), ('text', 'S40')]), 'flags': array([(0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0)],
+      dtype=[('begin', '<u4'), ('end', '<u4')]), 'segments': array([(0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0),
+       (0, 0), (0, 0), (0, 0), (0, 0)],
+      dtype=[('time_in_samples', '<u4'), ('sample', '<u4')]), 'impedance_begin': array([(255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255)], dtype=[('positive', 'u1'), ('negative', 'u1')]), 'impedance_end': array([(255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255), (255, 255), (255, 255), (255, 255), (255, 255),
+       (255, 255)], dtype=[('positive', 'u1'), ('negative', 'u1')]), 'montage': [{'lines': 21, 'sectors': 0, 'base_time': 15, 'notch': 0, 'colour': (9, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Ref Std', 'inputsNonInv': (0, 2, 0, 6, 0, 44, 0, 49, 0, 15, 0, 4, 0, 9, 0, 12, 0, 1, 0, 3, 0, 8, 0, 11, 0, 14, 0, 5, 0, 40, 0, 45, 0, 7, 0, 10, 0, 13, 0, 191, 0, 174, 0, 174, 0, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 10000, 100000, 100000, 100000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 200, 400, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x1c\x1c\x1c\x08\x03\x04\x04\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\''}, {'lines': 20, 'sectors': 0, 'base_time': 15, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'DB Std', 'inputsNonInv': (6, 2, 44, 6, 49, 44, 15, 49, 4, 2, 9, 4, 12, 9, 15, 12, 3, 1, 8, 3, 11, 8, 14, 11, 5, 1, 40, 5, 45, 40, 14, 45, 10, 7, 13, 10, 0, 191, 0, 174, 0, 174, 0, 21, 0, 166, 0, 167, 0, 168, 0, 169, 0, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 10000, 100000, 100000, 40000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 200, 200, 200, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00&&&&&&&&\x05\x05\x05\x05\x05\x05\x05\x05\x1c\x1c\x08\x04\x04\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x01\x01\x00\x00\x00\x00\x00\x00\x00\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x10\''}, {'lines': 16, 'sectors': 0, 'base_time': 15, 'notch': 0, 'colour': (9, 9, 9, 9, 9, 9, 9, 9, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Transv Std', 'inputsNonInv': (1, 2, 4, 6, 7, 4, 3, 7, 5, 3, 9, 44, 10, 9, 8, 10, 40, 8, 12, 49, 13, 12, 11, 13, 45, 11, 14, 15, 0, 191, 0, 174, 18, 16, 14, 18, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 1000, 0, 1600, 1600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 3000, 100000, 7000, 7000, 32000, 100000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 200, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x08\x04\x05\x05\n\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x01\x00\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x10\''}, {'lines': 27, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 4, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Ref 25', 'inputsNonInv': (0, 56, 0, 57, 0, 58, 0, 2, 0, 6, 0, 44, 0, 49, 0, 15, 0, 4, 0, 9, 0, 12, 0, 3, 0, 8, 0, 11, 0, 1, 0, 5, 0, 40, 0, 45, 0, 14, 0, 53, 0, 54, 0, 55, 0, 7, 0, 10, 0, 13, 0, 194, 0, 174, 0, 191, 0, 53, 0, 54, 0, 72, 0, 73, 0, 74, 0, 75, 0, 76, 0, 77, 0, 77, 0, 77, 0, 77, 0, 77, 0, 75, 0, 76, 0, 77, 0, 77, 0, 78, 0, 79, 0, 80, 0, 81, 0, 82, 0, 83, 0, 84, 0, 85, 0, 86, 0, 87, 0, 88, 0, 89, 0, 90, 0, 91, 0, 92, 0, 93, 0, 94, 0, 95, 0, 96, 0, 97), 'inputsInv': (0, 98, 0, 101, 0, 102, 0, 103, 0, 104, 0, 105, 0, 107, 0, 108, 0, 109, 0, 110, 0, 111, 0, 112, 0, 113, 0, 114, 0, 115, 0, 116, 0, 117, 0, 118, 0, 120, 0, 121, 0, 122, 0, 123, 0, 124, 0, 125, 0, 128, 0, 129, 0, 130, 0, 131, 0, 132, 0, 133, 0, 135, 0, 136, 0, 137, 0, 138, 0, 139, 0, 140, 0, 141, 0, 142, 0, 143, 145, 144, 147, 146, 149, 148, 0, 129, 0, 130, 0, 131, 0, 132, 0, 133, 0, 135, 0, 136, 0, 137, 0, 138, 0, 139, 0, 140, 0, 141, 0, 142, 0, 143, 145, 144, 147, 146, 149, 148, 149, 148, 0, 143, 145, 144, 147, 146, 149, 148), 'HiPass_Filter': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 1000, 0, 1000, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 1000, 1000, 1000, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 1000, 1000, 1000, 1000, 300, 1000, 1000, 1000), 'LowPass_Filter': (20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 10000, 100000, 10000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 1000, 10000, 10000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 1000, 10000, 10000, 10000, 40000, 1000, 10000, 10000), 'reference': (100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 200, 100, 200, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 200, 200, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 200, 200, 200, 800, 800, 200, 200), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x1c\x1c\x1c\x08\x04\x08\x05\x05((((((((((((((((\x05\x05\x05\x05\x05\x05\x05\x05((((((((\x05\x05\x05\x05\x05\x05(((((((\x05\x05\x05\x05\x05\x05\x05((((((\x05\x05\x05\x05\x05\x05\x05((((((((\x08--\x05\x05\x05\x05\x05\x05((((((((\x08---(\x08--\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x01\x00\x10\''}, {'lines': 28, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 12, 2, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Triple B - 25', 'inputsNonInv': (56, 2, 57, 56, 58, 57, 15, 58, 6, 2, 44, 6, 49, 44, 15, 49, 4, 2, 9, 4, 12, 9, 15, 12, 3, 1, 8, 3, 11, 8, 14, 11, 5, 1, 40, 5, 45, 40, 14, 45, 53, 1, 54, 53, 55, 54, 14, 55, 10, 7, 13, 10, 0, 194, 0, 174, 0, 174, 0, 33, 0, 34, 0, 35, 0, 36, 0, 37, 0, 38, 0, 39, 0, 40, 0, 41, 0, 42, 0, 43, 0, 44, 0, 45, 0, 46, 0, 47, 0, 48, 0, 49, 0, 50, 0, 51, 0, 52, 0, 53, 0, 54, 0, 55, 0, 56, 0, 57, 0, 58, 0, 59, 0, 60, 0, 61, 0, 62, 0, 63, 0, 64, 0, 65, 0, 66, 0, 67), 'inputsInv': (0, 68, 0, 69, 0, 70, 0, 71, 0, 72, 0, 73, 0, 74, 0, 75, 0, 76, 0, 77, 0, 78, 0, 79, 0, 80, 0, 81, 0, 82, 0, 83, 0, 84, 0, 85, 0, 86, 0, 87, 0, 88, 0, 89, 0, 90, 0, 91, 0, 92, 0, 93, 0, 94, 0, 95, 145, 144, 145, 144, 145, 144, 145, 144, 145, 144, 0, 21, 0, 2, 0, 68, 0, 67, 0, 6, 0, 72, 0, 4, 0, 71, 0, 77, 0, 59, 0, 76, 0, 53, 0, 17, 0, 81, 0, 9, 0, 80, 0, 86, 0, 62, 0, 85, 0, 56, 0, 19, 0, 90, 0, 12, 0, 89, 0, 93, 0, 58, 0, 15, 0, 198, 0, 205, 174, 0, 174, 0), 'HiPass_Filter': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 1000, 0, 0, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 53000, 0, 0), 'LowPass_Filter': (20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 10000, 100000, 100000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 12000, 12000, 12000, 12000, 12000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 40000, 40000, 40000), 'reference': (100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 200, 100, 100, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 120, 120, 120, 120, 120, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x1c\x1c\x08\x04\x04\x05\x05\x05\x05\x05\x05\x05((((((((\x05\x05\x05\x05\x05\x05\x05\x05((((((((\x05\x05\x05\x05\x05\x05\x05\x05((((((((\x05\x05\x05\x05\x05\x05\x05\x05((((((((\x08\x08\x08\x08\x08\x1c((((((((((((((((((((((((((\x08\x1c\x05\x05\x01\x00\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x10\''}, {'lines': 37, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (9, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Ref 38', 'inputsNonInv': (0, 2, 0, 6, 0, 44, 0, 49, 0, 15, 0, 4, 0, 9, 0, 12, 0, 67, 0, 68, 0, 69, 0, 70, 0, 75, 0, 76, 0, 71, 0, 77, 0, 1, 0, 3, 0, 8, 0, 11, 0, 14, 0, 5, 0, 40, 0, 45, 0, 62, 0, 63, 0, 64, 0, 65, 0, 72, 0, 73, 0, 66, 0, 74, 0, 7, 0, 10, 0, 13, 0, 191, 0, 174, 0, 174, 0, 174, 0, 174, 0, 174, 0, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 10000, 100000, 100000, 100000, 100000, 100000, 100000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 200, 400, 400, 400, 400, 400, 400, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x1c\x1c\x1c\x08\x04\x04\x04\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x00\x01\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x10\''}, {'lines': 30, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Triple B 38', 'inputsNonInv': (75, 2, 76, 75, 71, 76, 77, 71, 15, 77, 6, 2, 44, 6, 49, 44, 15, 49, 4, 2, 9, 4, 12, 9, 15, 12, 3, 1, 8, 3, 11, 8, 14, 11, 5, 1, 40, 5, 45, 40, 14, 45, 72, 1, 73, 72, 66, 73, 74, 66, 14, 74, 10, 7, 13, 10, 0, 191, 0, 174, 0, 174, 0, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 10000, 100000, 100000, 100000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 200, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x1c\x1c\x08\x04\x04\x04\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x00\x01\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x10\''}, {'lines': 92, 'sectors': 0, 'base_time': 10, 'notch': 1, 'colour': (9, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Perrier_part1_ref', 'inputsNonInv': (0, 32, 0, 33, 0, 34, 0, 35, 0, 36, 0, 37, 0, 38, 0, 39, 0, 40, 0, 41, 0, 42, 0, 43, 0, 44, 0, 45, 0, 46, 0, 47, 0, 48, 0, 49, 0, 50, 0, 51, 0, 52, 0, 53, 0, 54, 0, 55, 0, 56, 0, 57, 0, 58, 0, 59, 0, 60, 0, 61, 0, 62, 0, 63, 0, 64, 0, 65, 0, 66, 0, 67, 0, 68, 0, 72, 0, 73, 0, 74, 0, 75, 0, 76, 0, 77, 0, 78, 0, 79, 0, 80, 0, 81, 0, 82, 0, 83, 0, 84, 0, 85, 0, 86, 0, 87, 0, 88, 0, 90, 0, 96, 0, 97, 0, 98, 0, 99, 0, 100, 0, 101, 0, 102, 0, 103, 0, 104), 'inputsInv': (0, 105, 0, 106, 0, 107, 0, 108, 0, 109, 0, 110, 0, 111, 0, 112, 0, 113, 0, 114, 0, 115, 0, 116, 0, 117, 0, 118, 0, 119, 0, 120, 0, 121, 0, 122, 0, 123, 0, 124, 0, 125, 0, 126, 0, 127, 0, 128, 0, 129, 0, 130, 0, 131, 310, 309, 310, 309, 310, 309, 310, 309, 310, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 1000, 1000, 1000, 1000, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 10000, 10000, 10000, 10000, 10000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000), 'reference': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05********\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\x08\x08\x08\x08\x08\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x00\x00\x01\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\''}, {'lines': 84, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (9, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Perrier_part2_ref', 'inputsNonInv': (0, 132, 0, 133, 0, 134, 0, 135, 0, 136, 0, 137, 0, 138, 0, 139, 0, 140, 0, 141, 0, 142, 0, 143, 0, 144, 0, 145, 0, 146, 0, 147, 0, 148, 0, 149, 0, 150, 0, 151, 0, 152, 0, 153, 0, 154, 0, 155, 0, 156, 0, 157, 0, 158, 0, 159, 0, 255, 0, 256, 0, 257, 0, 258, 0, 259, 0, 260, 0, 261, 0, 262, 0, 0, 0, 263, 0, 264, 0, 265, 0, 266, 0, 267, 0, 268, 0, 269, 0, 270, 0, 271, 0, 272, 0, 273, 0, 274, 0, 275, 0, 276, 0, 277, 0, 278, 0, 279, 0, 280, 0, 281, 0, 282, 0, 283, 0, 284, 0, 285, 0, 286, 0, 287, 0, 288, 0, 289), 'inputsInv': (0, 290, 0, 291, 0, 292, 0, 293, 0, 294, 0, 295, 0, 296, 0, 297, 0, 298, 0, 299, 0, 300, 0, 301, 0, 302, 0, 303, 0, 304, 0, 305, 0, 306, 0, 307, 0, 308, 310, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 10000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x00\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x08\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x00\x00\x01\x01\x00\x01\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x10\''}, {'lines': 87, 'sectors': 0, 'base_time': 15, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Perrier_part1_bip', 'inputsNonInv': (33, 32, 34, 33, 35, 34, 36, 35, 37, 36, 38, 37, 39, 38, 40, 39, 41, 40, 42, 41, 43, 42, 45, 44, 46, 45, 47, 46, 48, 47, 49, 48, 50, 49, 51, 50, 52, 51, 53, 52, 54, 53, 55, 54, 57, 56, 58, 57, 59, 58, 60, 59, 62, 61, 63, 62, 64, 63, 65, 64, 66, 65, 67, 66, 68, 67, 69, 68, 70, 69, 71, 70, 72, 71, 73, 72, 74, 73, 75, 74, 76, 75, 77, 76, 78, 77, 80, 79, 81, 80, 82, 81, 83, 82, 84, 83, 85, 84, 86, 85, 87, 86, 88, 87, 89, 88, 90, 89, 97, 96, 98, 97, 99, 98, 100, 99, 101, 100, 102, 101, 103, 102, 104, 103, 105, 104, 106, 105), 'inputsInv': (107, 106, 109, 108, 110, 109, 111, 110, 112, 111, 113, 112, 114, 113, 115, 114, 117, 116, 118, 117, 119, 118, 120, 119, 121, 120, 122, 121, 123, 122, 125, 124, 126, 125, 127, 126, 128, 127, 129, 128, 130, 129, 131, 130, 310, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 10000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x08\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x10\''}, {'lines': 76, 'sectors': 0, 'base_time': 15, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Perrier_part2_bib', 'inputsNonInv': (133, 132, 134, 133, 135, 134, 136, 135, 137, 136, 138, 137, 139, 138, 141, 140, 142, 141, 143, 142, 144, 143, 145, 144, 146, 145, 147, 146, 148, 147, 149, 148, 151, 150, 152, 151, 153, 152, 154, 153, 155, 154, 156, 155, 157, 156, 158, 157, 159, 158, 256, 255, 257, 256, 258, 257, 259, 258, 260, 259, 261, 260, 262, 261, 0, 0, 264, 263, 265, 264, 266, 265, 267, 266, 268, 267, 269, 268, 270, 269, 271, 270, 272, 271, 273, 272, 274, 273, 276, 275, 277, 276, 278, 277, 279, 278, 280, 279, 281, 280, 282, 281, 283, 282, 284, 283, 285, 284, 286, 285, 288, 287, 289, 288, 290, 289, 291, 290, 292, 291, 293, 292, 294, 293, 295, 294, 296, 295), 'inputsInv': (297, 296, 298, 297, 300, 299, 301, 300, 302, 301, 303, 302, 304, 303, 305, 304, 306, 305, 307, 306, 308, 307, 310, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 10000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\x00\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\x08\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x98:'}, {'lines': 91, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 4, 4, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Perrier_IMP_ref', 'inputsNonInv': (0, 32, 0, 34, 0, 36, 0, 38, 0, 40, 0, 42, 0, 44, 0, 46, 0, 48, 0, 50, 0, 52, 0, 54, 0, 56, 0, 58, 0, 60, 0, 61, 0, 63, 0, 65, 0, 67, 0, 69, 0, 71, 0, 73, 0, 75, 0, 77, 0, 79, 0, 81, 0, 83, 0, 85, 0, 87, 0, 89, 0, 96, 0, 98, 0, 100, 0, 102, 0, 104, 0, 106, 0, 108, 0, 110, 0, 112, 0, 114, 0, 116, 0, 118, 0, 120, 0, 122, 0, 124, 0, 126, 0, 128, 0, 130, 0, 132, 0, 134, 0, 136, 0, 138, 0, 140, 0, 142, 0, 144, 0, 146, 0, 148, 0, 150, 0, 152, 0, 154, 0, 156, 0, 158, 0, 255, 0, 257), 'inputsInv': (0, 259, 0, 261, 0, 0, 0, 263, 0, 265, 0, 267, 0, 269, 0, 271, 0, 273, 0, 275, 0, 277, 0, 279, 0, 281, 0, 283, 0, 285, 0, 287, 0, 289, 0, 291, 0, 293, 0, 295, 0, 297, 0, 299, 0, 301, 0, 303, 0, 305, 0, 307, 310, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 130, 0, 131, 0, 132, 0, 133, 0, 135, 0, 136, 0, 137, 0, 138, 0, 139, 0, 140, 0, 141, 0, 142, 0, 143, 145, 144, 147, 146, 149, 148, 149, 148, 0, 143, 145, 144, 147, 146, 149, 148), 'HiPass_Filter': (1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 0, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 1000, 1000, 1000, 1000, 300, 1000, 1000, 1000), 'LowPass_Filter': (50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 100000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 1000, 10000, 10000, 10000, 40000, 1000, 10000, 10000), 'reference': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 200, 200, 200, 800, 800, 200, 200), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\'\'\'\'\x05\x05\x05\x05\'\'\'\'\x05\x05\x05\x05\'\'\'\'\'\x05\x05\x05\x05\x05\'\'\'\'\x00\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\'\'\'\'\'\x08\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05((((((((\x08---(\x08--\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x01\x00\x10\''}, {'lines': 74, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 12, 2, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Perrier_IMP_bip', 'inputsNonInv': (34, 32, 36, 34, 38, 36, 40, 38, 42, 40, 46, 44, 48, 46, 50, 48, 52, 50, 54, 52, 58, 56, 60, 58, 63, 61, 65, 63, 67, 65, 69, 67, 71, 69, 73, 71, 75, 73, 77, 75, 81, 79, 83, 81, 85, 83, 87, 85, 89, 87, 98, 96, 100, 98, 102, 100, 104, 102, 106, 104, 110, 108, 112, 110, 114, 112, 118, 116, 120, 118, 122, 120, 126, 124, 128, 126, 130, 128, 134, 132, 136, 134, 138, 136, 142, 140, 144, 142, 146, 144, 148, 146, 152, 150, 154, 152, 156, 154, 158, 156, 257, 255, 259, 257, 261, 259, 0, 0, 265, 263, 267, 265, 269, 267, 271, 269, 273, 271, 277, 275, 279, 277, 281, 279, 283, 281, 285, 283), 'inputsInv': (289, 287, 291, 289, 293, 291, 295, 293, 297, 295, 301, 299, 303, 301, 305, 303, 307, 305, 310, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 0, 9, 0, 80, 0, 86, 0, 62, 0, 85, 0, 56, 0, 19, 0, 90, 0, 12, 0, 89, 0, 93, 0, 58, 0, 15, 0, 198, 0, 205, 174, 0, 174, 0), 'HiPass_Filter': (1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 53000, 0, 0), 'LowPass_Filter': (50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 10000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 40000, 40000, 40000), 'reference': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\x05\x05\x05\x05\x05\'\'\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\x05\x05\x05\x05\x05\'\'\'\x05\x05\x05\'\'\'\x05\x05\x05\'\'\'\'\x05\x05\x05\x05\'\'\'\x00\x05\x05\x05\x05\x05\'\'\'\'\x05\x05\x05\x05\x05\x05\'\'\'\'\x08\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05((((((((((((((\x08\x1c\x05\x05\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x01\x00\x10\''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}], 'dvideo': array([(1229791274, 1297044035,  538985541, 1767993922),
+       (1968254318,  543908713, 1701603686,  436218400),
+       ( 538976288,  538976288,  538976288,  538976288), ...,
+       (         0,          0,          0,          0),
+       (         0,          0, 4294964096,       3200),
+       (         0,          0,          0,          0)],
+      dtype=[('delay', '<i4'), ('duration', '<u4'), ('file_ext', '<u4'), ('empty', '<u4')]), 'event_a': array([(0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0)],
+      dtype=[('code', '<u4'), ('begin', '<u4'), ('end', '<u4')]), 'event_b': array([(0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0),
+       (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0), (0, 0, 0)],
+      dtype=[('code', '<u4'), ('begin', '<u4'), ('end', '<u4')]), 'trigger': array([(     14144,    17), (     57881,    17), (     58401,    20), ...,
+       (4294967295, 65535), (4294967295, 65535), (4294967295, 65535)],
+      dtype=[('sample', '<u4'), ('code', '<u2')])}
+
+
+

To extract notes from recording in the format {sample0 : note0, ... sampleN: noteN}

+
mmtrc.get_notes()
+
+
+
{64: 'TCP connection failed'}
+
+
+

To extract markers from recording in the format {sample0 : marker0, ... sampleN: markerN}

+
mmtrc.get_markers()
+
+
+
{14144: '17', 57881: '17', 58401: '20', 58919: '32', 59435: '40', 59951: '14', 60467: '101', 60989: '3', 67537: '2', 68577: '1', 69613: '4', 72695: '3', 73728: '2', 74752: '1', 75776: '4', 78848: '3', 79872: '2', 80896: '1', 81920: '4', 84999: '3', 86035: '2', 87069: '1', 88103: '4', 91183: '3', 92217: '2', 93248: '1', 94272: '4', 97344: '3', 98368: '2', 99392: '1', 100416: '4', 103517: '14', 104035: '102', 104557: '3', 111643: '2', 112677: '1', 113711: '4', 116793: '3', 117824: '2', 118848: '1', 119872: '4', 122944: '3', 123968: '2', 124992: '1', 126017: '4', 129099: '3', 130133: '2', 131165: '1', 132201: '4', 135285: '3', 136317: '2', 137344: '1', 138368: '4', 141440: '3', 142464: '2', 143488: '1', 144512: '4', 147585: '14', 148099: '101', 148659: '3', 154613: '2', 155645: '1', 156672: '4', 159744: '3', 160768: '2', 161792: '1', 162816: '4', 165895: '3', 166931: '2', 167963: '1', 168997: '4', 172079: '3', 173113: '2', 174144: '1', 175168: '4', 178240: '3', 179264: '2', 180288: '1', 181312: '4', 184385: '3', 185419: '2', 186455: '1', 187485: '4', 190565: '14', 191081: '102', 191603: '3', 196829: '2', 197861: '1', 198895: '4', 201977: '3', 203008: '2', 204032: '1', 205056: '4', 208128: '3', 209152: '2', 210176: '1', 211201: '4', 214281: '3', 215317: '2', 216349: '1', 217383: '4', 220465: '3', 221499: '2', 222528: '1', 223552: '4', 226624: '3', 227648: '2', 228672: '1', 229696: '4', 232769: '14', 233283: '101', 233803: '3', 240064: '2', 241093: '1', 242127: '4', 245209: '3', 246243: '2', 247277: '1', 248311: '4', 251391: '3', 252416: '2', 253440: '1', 254464: '4', 257536: '3', 258560: '2', 259584: '1', 260613: '4', 263695: '3', 264731: '2', 265765: '1', 266799: '4', 269881: '3', 270912: '2', 271936: '1', 272960: '4', 276032: '14', 276544: '102', 277056: '3', 283797: '2', 284829: '1', 285865: '4', 288947: '3', 289979: '2', 291008: '1', 292032: '4', 295104: '3', 296128: '2', 297152: '1', 298185: '4', 299693: '16', 312960: '17', 314560: '3', 315584: '2', 316608: '1', 317632: '4', 320704: '3', 321733: '2', 322767: '1', 323837: '4', 326912: '3', 327936: '2', 328960: '1', 329984: '4', 333056: '11'}
+
+
+

If you need markers or notes times in seconds, just divide by the sampling frequency

+
{k / mmtrc.sfreq: v for k, v in mmtrc.get_markers().items()}
+
+
+
{6.90625: '17', 28.26220703125: '17', 28.51611328125: '20', 28.76904296875: '32', 29.02099609375: '40', 29.27294921875: '14', 29.52490234375: '101', 29.77978515625: '3', 32.97705078125: '2', 33.48486328125: '1', 33.99072265625: '4', 35.49560546875: '3', 36.0: '2', 36.5: '1', 37.0: '4', 38.5: '3', 39.0: '2', 39.5: '1', 40.0: '4', 41.50341796875: '3', 42.00927734375: '2', 42.51416015625: '1', 43.01904296875: '4', 44.52294921875: '3', 45.02783203125: '2', 45.53125: '1', 46.03125: '4', 47.53125: '3', 48.03125: '2', 48.53125: '1', 49.03125: '4', 50.54541015625: '14', 50.79833984375: '102', 51.05322265625: '3', 54.51318359375: '2', 55.01806640625: '1', 55.52294921875: '4', 57.02783203125: '3', 57.53125: '2', 58.03125: '1', 58.53125: '4', 60.03125: '3', 60.53125: '2', 61.03125: '1', 61.53173828125: '4', 63.03662109375: '3', 63.54150390625: '2', 64.04541015625: '1', 64.55126953125: '4', 66.05712890625: '3', 66.56103515625: '2', 67.0625: '1', 67.5625: '4', 69.0625: '3', 69.5625: '2', 70.0625: '1', 70.5625: '4', 72.06298828125: '14', 72.31396484375: '101', 72.58740234375: '3', 75.49462890625: '2', 75.99853515625: '1', 76.5: '4', 78.0: '3', 78.5: '2', 79.0: '1', 79.5: '4', 81.00341796875: '3', 81.50927734375: '2', 82.01318359375: '1', 82.51806640625: '4', 84.02294921875: '3', 84.52783203125: '2', 85.03125: '1', 85.53125: '4', 87.03125: '3', 87.53125: '2', 88.03125: '1', 88.53125: '4', 90.03173828125: '3', 90.53662109375: '2', 91.04248046875: '1', 91.54541015625: '4', 93.04931640625: '14', 93.30126953125: '102', 93.55615234375: '3', 96.10791015625: '2', 96.61181640625: '1', 97.11669921875: '4', 98.62158203125: '3', 99.125: '2', 99.625: '1', 100.125: '4', 101.625: '3', 102.125: '2', 102.625: '1', 103.12548828125: '4', 104.62939453125: '3', 105.13525390625: '2', 105.63916015625: '1', 106.14404296875: '4', 107.64892578125: '3', 108.15380859375: '2', 108.65625: '1', 109.15625: '4', 110.65625: '3', 111.15625: '2', 111.65625: '1', 112.15625: '4', 113.65673828125: '14', 113.90771484375: '101', 114.16162109375: '3', 117.21875: '2', 117.72119140625: '1', 118.22607421875: '4', 119.73095703125: '3', 120.23583984375: '2', 120.74072265625: '1', 121.24560546875: '4', 122.74951171875: '3', 123.25: '2', 123.75: '1', 124.25: '4', 125.75: '3', 126.25: '2', 126.75: '1', 127.25244140625: '4', 128.75732421875: '3', 129.26318359375: '2', 129.76806640625: '1', 130.27294921875: '4', 131.77783203125: '3', 132.28125: '2', 132.78125: '1', 133.28125: '4', 134.78125: '14', 135.03125: '102', 135.28125: '3', 138.57275390625: '2', 139.07666015625: '1', 139.58251953125: '4', 141.08740234375: '3', 141.59130859375: '2', 142.09375: '1', 142.59375: '4', 144.09375: '3', 144.59375: '2', 145.09375: '1', 145.59814453125: '4', 146.33447265625: '16', 152.8125: '17', 153.59375: '3', 154.09375: '2', 154.59375: '1', 155.09375: '4', 156.59375: '3', 157.09619140625: '2', 157.60107421875: '1', 158.12353515625: '4', 159.625: '3', 160.125: '2', 160.625: '1', 161.125: '4', 162.625: '11'}
+
+
+

To get and play with the data, simply use:

+
data = mmtrc.get_data()
+print(f"data shape: {data.shape}")
+# or, if you want the 1st channel data only:
+data_ch1 = mmtrc.get_data(picks=[hdr.ch_names[0]])
+print(f"data_ch1 shape: {data_ch1.shape}")
+
+
+
data shape: (14, 349632)
+data_ch1 shape: (1, 349632)
+
+
+

Total running time of the script: (0 minutes 0.082 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_auto_examples/plot_trc_to_fif.html b/_auto_examples/plot_trc_to_fif.html new file mode 100644 index 0000000..cefba5a --- /dev/null +++ b/_auto_examples/plot_trc_to_fif.html @@ -0,0 +1,583 @@ + + + + + + + + + + + Convert TRC file to mne format — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Convert TRC file to mne format#

+

Here we convert a trc file recorded with a Micromed system to fif, the common +format used in mne framework.

+
# Author: Etienne de Montalivet <etienne.demontalivet@protonmail.com>
+#
+# License: BSD-3-Clause
+
+
+
from micromed_io.to_mne import create_mne_from_micromed_recording
+from pathlib import Path
+
+fname = Path("../data/sample.TRC")
+mne_raw = create_mne_from_micromed_recording(fname)
+
+
+
WARNING:root:MKR channel(s) is not close to 50mV
+Creating RawArray with float64 data, n_channels=14, n_times=349632
+    Range : 0 ... 349631 =      0.000 ...   170.718 secs
+Ready.
+
+
+

Info from trc file is parsed and stored in mne.Info

+
mne_raw.info
+
+
+
+
+ General + + + + + + + + + + + + + + + + + + + + + +
Measurement dateNovember 06, 2023 14:35:06 GMT
ExperimenterUnknown
ParticipantChb
+
+
+ Channels + + + + + + + + + + + + + + + + + + + + + + + +
Digitized pointsNot available
Good channels14 EEG
Bad channelsNone
EOG channelsNot available
ECG channelsNot available
+
+
+ Data + + + + + + + + + + + + + + + + + + + + + + +
Sampling frequency2048.00 Hz
Highpass0.00 Hz
Lowpass1024.00 Hz
+
+
+
+

As you see, markers sent by serial connection to Micromed are +parsed from the trc file and stored as mne.Annotations

+
mne_raw.plot(scalings=dict(eeg=5000), duration=20, start=20)
+
+
+plot trc to fif
Using matplotlib as 2D backend.
+
+<MNEBrowseFigure size 800x800 with 4 Axes>
+
+
+

Total running time of the script: (0 minutes 2.108 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_auto_examples/sg_execution_times.html b/_auto_examples/sg_execution_times.html new file mode 100644 index 0000000..307ff56 --- /dev/null +++ b/_auto_examples/sg_execution_times.html @@ -0,0 +1,449 @@ + + + + + + + + + + + Computation times — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

Computation times#

+

00:02.190 total execution time for 2 files from _auto_examples:

+
+ + + + + + + + + + + + + + + + + + + + + +

Example

Time

Mem (MB)

Convert TRC file to mne format (plot_trc_to_fif.py)

00:02.108

0.0

Read TRC file data (plot_read_trc.py)

00:00.082

0.0

+
+
+ + +
+ + + + + +
+ +
+
+
+ +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.buffer.MicromedBuffer.html b/_autosummary/micromed_io.buffer.MicromedBuffer.html new file mode 100644 index 0000000..2fc669c --- /dev/null +++ b/_autosummary/micromed_io.buffer.MicromedBuffer.html @@ -0,0 +1,676 @@ + + + + + + + + + + + micromed_io.buffer.MicromedBuffer — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.buffer.MicromedBuffer#

+
+
+class micromed_io.buffer.MicromedBuffer(epoch_duration: float | None = None, epoch_overlap: float | None = None, picks: List[str] | None = None)#
+

Bases: MicromedIO

+

Micromed IO class

+

This class TODO

+
+
Parameters:
+
+
epoch_duration: float, default=None

The epoch duration in sec.

+
+
epoch_overlap: float, default=None

The epoch overlap in sec.

+
+
+
+
+ +

Notes

+
    +
  1. The epoch buffer works this way:

    +
    +
      +
    • each time we receive new data, we fill the buffer with the selected channels (cf picks)

    • +
    • we keep the position of the “filled data” in current_buffer_length

    • +
    • as soon as an epoch_buffer is full, the array is stored in current_epoch and the new data are filled back from current_buffer_length=0.

    • +
    +
    +
  2. +
  3. Be careful with picks order as it changes the epoch structure (order from picks is kept). ["Fp1-G2", "Fpz-G2", "MKR+-MKR-"] doest not give the same epoch buffer as ["MKR+-MKR-", "Fp1-G2", "Fpz-G2"].

  4. +
+
+
Attributes:
+
+
epoch_duration: float

The epoch duration in sec.

+
+
epoch_overlap: float

The epoch overlap in sec.

+
+
epoch_buffer: np.ndarray

The epoch buffer that is filled every new eeg packet received. (see Notes 2.)

+
+
current_buffer_length: int

The position of the next eeg data to fill. (see Notes 1.)

+
+
current_epoch: np.ndarray

The last full epoch.

+
+
+
+
+

Methods

+ + + + + + + + + + + + + + + +

decode_data_eeg_packet

Decode eeg data packet.

decode_data_header_packet

Decode all (but histories) of the micromed header data packet.

init_buffer

Init the epoch buffer

update_epoch_buffer

Update of the epoch buffer

+
+
+decode_data_eeg_packet(packet: bytearray, picks: List | None = None, keep_raw: bool = False, use_volt: bool = False) bool#
+

Decode eeg data packet. +Conversion is made to get physiological value of eegs.

+
+
Parameters:
+
+
packetbytearray

The EEGs data packet to decode.

+
+
picksList, optional

A list of channel to extract. If None, all channels are extracted. +The default is None.

+
+
keep_rawbool, optional

If True, the data won’t be converted to voltage. The default is False.

+
+
use_voltbool, optional

If True, the data is scaled to Volts. If False, whatever unit is used by Micromed. +Note that you may loose resolution by doing that. The default is False.

+
+
+
+
Returns:
+
+
bool

False if decoding is suspicious/wrong.

+
+
+
+
Raises:
+
+
ValueError

If data is not encoded on 1,2 or 4 bytes. Should not happen.

+
+
+
+
+

Notes

+

EEGs data are stored in this order (per packet): +Ch1_t0, Ch2_t0, ... ChN_t0, Ch1_t1, Ch2_t1, ... ChN_t1, ...

+

self.current_data_eeg is always ordered regarding the order of the channels +in self.micromed_header.ch_names

+
+ +
+
+decode_data_header_packet(packet: bytearray) None#
+

Decode all (but histories) of the micromed header data packet.

+
+
Parameters:
+
+
packetbytearray

The header packet to decode.

+
+
+
+
+
+ +
+
+init_buffer() None#
+

Init the epoch buffer

+
+
Raises:
+
+
ValueError

If epoch_overlap is more than 0 as it is not supported yet. Feel free to update the code.

+
+
+
+
+
+ +
+
+update_epoch_buffer() bool#
+

Update of the epoch buffer

+

The epoch buffer works this way:

+
+
    +
  1. each time we receive new data, we fill the buffer

  2. +
  3. we keep the position of the “filled data” in current_buffer_length

  4. +
  5. as soon as an epoch_buffer is full, the array is stored in current_epoch and the new data are filled back from current_buffer_length=0.

  6. +
+
+
+
Returns:
+
+
bool

If True, a new epoch has been filled and stored in self.current_epoch.

+
+
+
+
Raises:
+
+
ValueError

If the buffer is not initialized before this function is called.

+
+
+
+
+
+ +
+ +
+ + +
+ + + + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.buffer.html b/_autosummary/micromed_io.buffer.html new file mode 100644 index 0000000..85f60da --- /dev/null +++ b/_autosummary/micromed_io.buffer.html @@ -0,0 +1,497 @@ + + + + + + + + + + + micromed_io.buffer — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.buffer#

+

Micromed IO module

+

Classes

+ + + + + + +

MicromedBuffer

Micromed IO class

+
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.header.ElectrodeReferences.html b/_autosummary/micromed_io.header.ElectrodeReferences.html new file mode 100644 index 0000000..3c996da --- /dev/null +++ b/_autosummary/micromed_io.header.ElectrodeReferences.html @@ -0,0 +1,536 @@ + + + + + + + + + + + micromed_io.header.ElectrodeReferences — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.header.ElectrodeReferences#

+
+
+class micromed_io.header.ElectrodeReferences(factor: float | None = None, logic_ground: int | None = None, units: str | None = None)#
+

Bases: object

+

Electrode references for conversion purpose

+
+

See also

+
+
MicromedHeader
+
+
+

Methods

+ + + +
+

Attributes detail

+ + + + + + + + + + + + +

factor

logic_ground

units

+
+ +
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.header.MicromedHeader.html b/_autosummary/micromed_io.header.MicromedHeader.html new file mode 100644 index 0000000..36eaa26 --- /dev/null +++ b/_autosummary/micromed_io.header.MicromedHeader.html @@ -0,0 +1,641 @@ + + + + + + + + + + + micromed_io.header.MicromedHeader — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.header.MicromedHeader#

+
+
+class micromed_io.header.MicromedHeader(surname: str | None = None, name: str | None = None, nb_of_channels: int | None = None, order: list | None = None, acq_unit: int | None = None, min_sampling_rate: int | None = None, nb_of_bytes: int | None = None, header_type: int | None = None, stored_channels: int | None = None, ch_names: list | None = None, elec_refs: list | None = None, data_address: int | None = None, recording_date: datetime | None = None, notes: dict | None = None, markers: dict | None = None)#
+

Bases: object

+

Micromed Header data

+

The header is common between TRC files and TCP communication. It contains the info to decode +the data correctly and some experiment info.

+

This class extract some of the available info.

+
+
Parameters:
+
+
surnamestr, optional

The patient surname.

+
+
namestr, optional

The patient name.

+
+
nb_of_channelsint, optional

The number of channels.

+
+
acq_unitint, optional

The acquisition unit

+
+
min_sampling_rate: int, optional

The minimum sampling rate of EEGs channels.

+
+
nb_of_bytes: int, optional

The number of bytes on which eeg data is encoded per value. Should be in [1, 2, 4].

+
+

Warning

+

When selecting a 24-bits resolution in SystemPLUS, values are encoded on 4 bytes…

+
+
+
header_type: int, optional

The header type. To be checked for valid parsing.

+
+
stored_channels: int, optional

Number of stored channels in EEGs data.

+
+
ch_names: list, optional

The channel names.

+
+
elec_refs: List[ElectrodeReferences], optional

A list of electrode references.

+
+
data_address: int, optional

The byte address of data packet start (useless in TCP context)

+
+
note_addressint, optional

The byte address of note packet start (useless in TCP context)

+
+
+
+
Attributes:
+
+
surnamestr

The patient surname.

+
+
namestr

The patient name.

+
+
nb_of_channelsint

The number of channels.

+
+
acq_unitint, optional

The acquisition unit

+
+
min_sampling_rate: int

The minimum sampling rate of EEGs channels.

+
+
nb_of_bytes: int

The number of bytes on which eeg data is encoded per value. Should be in [1, 2, 4].

+
+

Warning

+

When selecting a 24-bits resolution in SystemPLUS, values are encoded on 4 bytes…

+
+
+
header_type: int

The header type. To be checked for valid parsing.

+
+
stored_channels: int

Number of stored channels in EEGs data.

+
+
ch_names: list

The channel names.

+
+
elec_refs: List[ElectrodeReferences]

A list of electrode references.

+
+
data_address: int

The byte address of data packet start (useless in TCP context).

+
+
note_addressint

The byte address of note packet start (useless in TCP context)

+
+
recording_date: datetime

The date of file creation and therefore the recording date.

+
+
notesdict

Notes entered in Micromed interface. Keys are samples and values are comments (str).

+
+
markersdict

Serial markers received by Micromed. Key is the sample and value is the marker value (str).

+
+
+
+
+

Methods

+ + + +
+

Attributes detail

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

acq_unit

ch_names

data_address

elec_refs

header_type

markers

min_sampling_rate

name

nb_of_bytes

nb_of_channels

notes

order

recording_date

stored_channels

surname

+
+ +
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.header.html b/_autosummary/micromed_io.header.html new file mode 100644 index 0000000..3a5c60a --- /dev/null +++ b/_autosummary/micromed_io.header.html @@ -0,0 +1,501 @@ + + + + + + + + + + + micromed_io.header — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.header#

+

Micromed Header module +Contains some description of the micromed header of type 4

+

Classes

+ + + + + + + + + +

ElectrodeReferences

Electrode references for conversion purpose

MicromedHeader

Micromed Header data

+
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.html b/_autosummary/micromed_io.html new file mode 100644 index 0000000..be09fd2 --- /dev/null +++ b/_autosummary/micromed_io.html @@ -0,0 +1,508 @@ + + + + + + + + + + + micromed_io — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + + + + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.in_out.MicromedIO.html b/_autosummary/micromed_io.in_out.MicromedIO.html new file mode 100644 index 0000000..648af2f --- /dev/null +++ b/_autosummary/micromed_io.in_out.MicromedIO.html @@ -0,0 +1,618 @@ + + + + + + + + + + + micromed_io.in_out.MicromedIO — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.in_out.MicromedIO#

+
+
+class micromed_io.in_out.MicromedIO(picks: List[str] | None = None)#
+

Bases: object

+

Micromed IO class

+

This class provides the basics for decoding Micromed data. It is common between files and +TCP communication.

+
+
Parameters:
+
+
picksList[str], default=None

Channels to pick from EEGs data (all channels are stored). Channel names must follow +the same format as in SystemPLUS Evolution (see EEG Setup Montage). WARNING: see Note 3. +Example : [“Fp1-G2”, “Fpz-G2”, “MKR+-MKR-“] +If None, all channels are included. The default is None.

+
+
+
+
+ +
+
Attributes:
+
+
micromed_header: MicromedHeader

The corresponding micromed header of this connection.

+
+
current_data_eeg: np.ndarray

The current eeg data of shape (nb_of_channels, nb_of_samples).

+
+
picksList[str]

Channels to pick from EEGs data (all channels are sent via TCP). Channel names follow +the same format as in SystemPLUS Evolution (see EEG Setup Montage). WARNING: This impact +the channels order. +Example : [“Fp1-G2”, “Fpz-G2”, “MKR+-MKR-“]

+
+
picks_idnp.array

Indexes of the channels to pick.

+
+
sfreqfloat

The sampling frequency

+
+
+
+
+

Methods

+ + + + + + + + + +

decode_data_eeg_packet

Decode eeg data packet.

decode_data_header_packet

Decode all (but histories) of the micromed header data packet.

+
+
+decode_data_eeg_packet(packet: bytearray, picks: List | None = None, keep_raw: bool = False, use_volt: bool = False) bool#
+

Decode eeg data packet. +Conversion is made to get physiological value of eegs.

+
+
Parameters:
+
+
packetbytearray

The EEGs data packet to decode.

+
+
picksList, optional

A list of channel to extract. If None, all channels are extracted. +The default is None.

+
+
keep_rawbool, optional

If True, the data won’t be converted to voltage. The default is False.

+
+
use_voltbool, optional

If True, the data is scaled to Volts. If False, whatever unit is used by Micromed. +Note that you may loose resolution by doing that. The default is False.

+
+
+
+
Returns:
+
+
bool

False if decoding is suspicious/wrong.

+
+
+
+
Raises:
+
+
ValueError

If data is not encoded on 1,2 or 4 bytes. Should not happen.

+
+
+
+
+

Notes

+

EEGs data are stored in this order (per packet): +Ch1_t0, Ch2_t0, ... ChN_t0, Ch1_t1, Ch2_t1, ... ChN_t1, ...

+

self.current_data_eeg is always ordered regarding the order of the channels +in self.micromed_header.ch_names

+
+ +
+
+decode_data_header_packet(packet: bytearray) None#
+

Decode all (but histories) of the micromed header data packet.

+
+
Parameters:
+
+
packetbytearray

The header packet to decode.

+
+
+
+
+
+ +
+ +
+ + +
+ + + + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.in_out.html b/_autosummary/micromed_io.in_out.html new file mode 100644 index 0000000..841dacf --- /dev/null +++ b/_autosummary/micromed_io.in_out.html @@ -0,0 +1,497 @@ + + + + + + + + + + + micromed_io.in_out — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.in_out#

+

Micromed IO module

+

Classes

+ + + + + + +

MicromedIO

Micromed IO class

+
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.tcp.MicromedPacketType.html b/_autosummary/micromed_io.tcp.MicromedPacketType.html new file mode 100644 index 0000000..2fb997a --- /dev/null +++ b/_autosummary/micromed_io.tcp.MicromedPacketType.html @@ -0,0 +1,528 @@ + + + + + + + + + + + micromed_io.tcp.MicromedPacketType — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.tcp.MicromedPacketType#

+
+
+class micromed_io.tcp.MicromedPacketType(value)#
+

Bases: IntEnum

+

Micromed packet type.

+

Attributes detail

+ + + + + + + + + + + + + + + +

HEADER

EEG_DATA

NOTE

MARKER

+
+ +
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.tcp.decode_tcp_header_packet.html b/_autosummary/micromed_io.tcp.decode_tcp_header_packet.html new file mode 100644 index 0000000..88df38b --- /dev/null +++ b/_autosummary/micromed_io.tcp.decode_tcp_header_packet.html @@ -0,0 +1,524 @@ + + + + + + + + + + + micromed_io.tcp.decode_tcp_header_packet — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.tcp.decode_tcp_header_packet#

+
+
+micromed_io.tcp.decode_tcp_header_packet(packet: bytearray)#
+

Decode the Micromed tcp header packet.

+
+
Parameters:
+
+
packetbytearray

The tcp packet to decode.

+
+
+
+
Returns:
+
+
bool

True if decoding was successful. Else False.

+
+
+
+
+
+ +
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.tcp.decode_tcp_marker_packet.html b/_autosummary/micromed_io.tcp.decode_tcp_marker_packet.html new file mode 100644 index 0000000..a6552c1 --- /dev/null +++ b/_autosummary/micromed_io.tcp.decode_tcp_marker_packet.html @@ -0,0 +1,525 @@ + + + + + + + + + + + micromed_io.tcp.decode_tcp_marker_packet — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.tcp.decode_tcp_marker_packet#

+
+
+micromed_io.tcp.decode_tcp_marker_packet(packet: bytearray)#
+

Decode the Micromed tcp markers packet.

+
+
Parameters:
+
+
packetbytearray

The tcp packet to decode.

+
+
+
+
Returns:
+
+
tuple

trigger_sample: the sample when the marker is received +trigger_value: trigger value

+
+
+
+
+
+ +
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.tcp.decode_tcp_note_packet.html b/_autosummary/micromed_io.tcp.decode_tcp_note_packet.html new file mode 100644 index 0000000..409637d --- /dev/null +++ b/_autosummary/micromed_io.tcp.decode_tcp_note_packet.html @@ -0,0 +1,525 @@ + + + + + + + + + + + micromed_io.tcp.decode_tcp_note_packet — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.tcp.decode_tcp_note_packet#

+
+
+micromed_io.tcp.decode_tcp_note_packet(packet: bytearray)#
+

Decode the Micromed tcp markers packet.

+
+
Parameters:
+
+
packetbytearray

The tcp packet to decode.

+
+
+
+
Returns:
+
+
tuple

trigger_sample: the sample when the marker is received +trigger_value: trigger value

+
+
+
+
+
+ +
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.tcp.encode_marker_packet.html b/_autosummary/micromed_io.tcp.encode_marker_packet.html new file mode 100644 index 0000000..ce5dad2 --- /dev/null +++ b/_autosummary/micromed_io.tcp.encode_marker_packet.html @@ -0,0 +1,526 @@ + + + + + + + + + + + micromed_io.tcp.encode_marker_packet — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.tcp.encode_marker_packet#

+
+
+micromed_io.tcp.encode_marker_packet(sample: uint32, marker: uint16) bytearray#
+

Encode a marker packet with sample and value

+
+
Parameters:
+
+
samplenp.uint32

The sample when marker occured

+
+
markernp.uint16

The marker value

+
+
+
+
Returns:
+
+
bytearray

The encoded packet

+
+
+
+
+
+ +
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.tcp.encode_note_packet.html b/_autosummary/micromed_io.tcp.encode_note_packet.html new file mode 100644 index 0000000..decae22 --- /dev/null +++ b/_autosummary/micromed_io.tcp.encode_note_packet.html @@ -0,0 +1,526 @@ + + + + + + + + + + + micromed_io.tcp.encode_note_packet — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.tcp.encode_note_packet#

+
+
+micromed_io.tcp.encode_note_packet(sample: uint32, note: str) bytearray#
+

Encode a note packet with sample and text

+
+
Parameters:
+
+
samplenp.uint32

The sample when note occured

+
+
notestr

The text

+
+
+
+
Returns:
+
+
bytearray

The encoded packet

+
+
+
+
+
+ +
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.tcp.get_tcp_header.html b/_autosummary/micromed_io.tcp.get_tcp_header.html new file mode 100644 index 0000000..bdfa190 --- /dev/null +++ b/_autosummary/micromed_io.tcp.get_tcp_header.html @@ -0,0 +1,526 @@ + + + + + + + + + + + micromed_io.tcp.get_tcp_header — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.tcp.get_tcp_header#

+
+
+micromed_io.tcp.get_tcp_header(packet_type: MicromedPacketType, size: int) bytearray#
+

Build the Micromed TCP header

+
+
Parameters:
+
+
packet_typeMicromedPacketType

The packet type to be sent

+
+
sizeint

The size of the packet to be sent

+
+
+
+
Returns:
+
+
bytearray

The TCP header sent right before any packet

+
+
+
+
+
+ +
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.tcp.html b/_autosummary/micromed_io.tcp.html new file mode 100644 index 0000000..2d8a927 --- /dev/null +++ b/_autosummary/micromed_io.tcp.html @@ -0,0 +1,520 @@ + + + + + + + + + + + micromed_io.tcp — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.tcp#

+

Micromed TCP module.

+

Functions

+ + + + + + + + + + + + + + + + + + + + + +

decode_tcp_header_packet

Decode the Micromed tcp header packet.

decode_tcp_marker_packet

Decode the Micromed tcp markers packet.

decode_tcp_note_packet

Decode the Micromed tcp markers packet.

encode_marker_packet

Encode a marker packet with sample and value

encode_note_packet

Encode a note packet with sample and text

get_tcp_header

Build the Micromed TCP header

+

Classes

+ + + + + + +

MicromedPacketType

Micromed packet type.

+
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.to_mne.create_mne_from_micromed_recording.html b/_autosummary/micromed_io.to_mne.create_mne_from_micromed_recording.html new file mode 100644 index 0000000..51ceab6 --- /dev/null +++ b/_autosummary/micromed_io.to_mne.create_mne_from_micromed_recording.html @@ -0,0 +1,543 @@ + + + + + + + + + + + micromed_io.to_mne.create_mne_from_micromed_recording — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.to_mne.create_mne_from_micromed_recording#

+
+
+micromed_io.to_mne.create_mne_from_micromed_recording(recording_file: str | Path, sub_channels: List[str] | None = None, ch_types: List[str] | str = 'eeg') RawArray#
+

Create a mne Raw instance from a Micromed recording

+
+
Parameters:
+
+
recording_fileUnion[str, Path]

The micromed recording file

+
+
sub_channelsList[str], optional

The channels to pick from the recording. If None, all channels are picked.

+
+
ch_types: Union[List[str], str], optional

The list of channel types. Types must be in ['grad', 'mag', 'ref_meg', 'eeg', +'seeg', 'dbs', 'ecog', 'eog', 'emg', 'ecg', 'resp', 'bio', 'misc', 'stim', 'exci', +'syst', 'ias', 'gof', 'dipole', 'chpi', 'fnirs_cw_amplitude', 'fnirs_fd_ac_amplitude', +'fnirs_fd_phase', 'fnirs_od', 'hbo', 'hbr', 'csd']

+
+
+
+
Returns:
+
+
mne.io.RawArray

A mne Raw instance containing the requested channels

+
+
+
+
+

Notes

+

Some info are hardcoded, such as:

+
    +
  • device_info type: Micromed

  • +
  • device_info site: Unknown

  • +
+

Update the code if needed

+

Examples

+
>>> from micromed_io.to_mne import create_mne_from_micromed_recording
+>>> mne_raw = create_mne_from_micromed_recording("path/to/file.TRC")
+
+
+
+ +
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.to_mne.html b/_autosummary/micromed_io.to_mne.html new file mode 100644 index 0000000..0aa09c6 --- /dev/null +++ b/_autosummary/micromed_io.to_mne.html @@ -0,0 +1,497 @@ + + + + + + + + + + + micromed_io.to_mne — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.to_mne#

+

Micromed module to load and transform data from Micromed recordings to mne format

+

Functions

+ + + + + + +

create_mne_from_micromed_recording

Create a mne Raw instance from a Micromed recording

+
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.trc.MicromedTRC.html b/_autosummary/micromed_io.trc.MicromedTRC.html new file mode 100644 index 0000000..f0184f5 --- /dev/null +++ b/_autosummary/micromed_io.trc.MicromedTRC.html @@ -0,0 +1,649 @@ + + + + + + + + + + + micromed_io.trc.MicromedTRC — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.trc.MicromedTRC#

+
+
+class micromed_io.trc.MicromedTRC(filename: str | Path)#
+

Bases: MicromedIO

+

Micromed TRC class

+

This class deals with Micromed TRC file

+
+
Parameters:
+
+
filename: str or Path

The TRC filename.

+
+
+
+
Attributes:
+
+
filename: str or Path

The TRC filename.

+
+
+
+
+

Methods

+ + + + + + + + + + + + + + + + + + + + + + + + +

decode_data_eeg_packet

Decode eeg data packet.

decode_data_header_packet

Decode all (but histories) of the micromed header data packet.

get_data

Get channels data in format (n_channels, n_sample)

get_header

Get the header

get_markers

Get the markers

get_notes

Get the notes

get_sfreq

Get the sampling frequency

+
+
+decode_data_eeg_packet(packet: bytearray, picks: List | None = None, keep_raw: bool = False, use_volt: bool = False) bool#
+

Decode eeg data packet. +Conversion is made to get physiological value of eegs.

+
+
Parameters:
+
+
packetbytearray

The EEGs data packet to decode.

+
+
picksList, optional

A list of channel to extract. If None, all channels are extracted. +The default is None.

+
+
keep_rawbool, optional

If True, the data won’t be converted to voltage. The default is False.

+
+
use_voltbool, optional

If True, the data is scaled to Volts. If False, whatever unit is used by Micromed. +Note that you may loose resolution by doing that. The default is False.

+
+
+
+
Returns:
+
+
bool

False if decoding is suspicious/wrong.

+
+
+
+
Raises:
+
+
ValueError

If data is not encoded on 1,2 or 4 bytes. Should not happen.

+
+
+
+
+

Notes

+

EEGs data are stored in this order (per packet): +Ch1_t0, Ch2_t0, ... ChN_t0, Ch1_t1, Ch2_t1, ... ChN_t1, ...

+

self.current_data_eeg is always ordered regarding the order of the channels +in self.micromed_header.ch_names

+
+ +
+
+decode_data_header_packet(packet: bytearray) None#
+

Decode all (but histories) of the micromed header data packet.

+
+
Parameters:
+
+
packetbytearray

The header packet to decode.

+
+
+
+
+
+ +
+
+get_data(picks: List | None = None, keep_raw: bool = False, use_volt: bool = False)#
+

Get channels data in format (n_channels, n_sample)

+
+
Parameters:
+
+
picksList, optional

A list of channel to extract. If None, all channels are extracted. +The default is None.

+
+
keep_rawbool, optional

If True, the data won’t be converted to voltage. The default is False.

+
+
use_voltbool, optional

If True, the data is scaled to Volts. If False, whatever unit is used by Micromed. +Note that you may loose resolution by doing that. The default is False.

+
+
+
+
+
+ +
+
+get_header()#
+

Get the header

+
+ +
+
+get_markers()#
+

Get the markers

+
+ +
+
+get_notes()#
+

Get the notes

+
+ +
+
+get_sfreq()#
+

Get the sampling frequency

+
+ +
+ +
+ + +
+ + + + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_autosummary/micromed_io.trc.html b/_autosummary/micromed_io.trc.html new file mode 100644 index 0000000..f29bedd --- /dev/null +++ b/_autosummary/micromed_io.trc.html @@ -0,0 +1,497 @@ + + + + + + + + + + + micromed_io.trc — Micromed IO 0.3.6 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

micromed_io.trc#

+

Micromed IO module

+

Classes

+ + + + + + +

MicromedTRC

Micromed TRC class

+
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/_downloads/022f7d0306cb4306fa5ceb91f4268f82/plot_trc_to_fif.ipynb b/_downloads/022f7d0306cb4306fa5ceb91f4268f82/plot_trc_to_fif.ipynb new file mode 100644 index 0000000..cffbfb6 --- /dev/null +++ b/_downloads/022f7d0306cb4306fa5ceb91f4268f82/plot_trc_to_fif.ipynb @@ -0,0 +1,90 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Convert TRC file to mne format\n\nHere we convert a trc file recorded with a Micromed system to fif, the common\nformat used in mne framework.\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "# Author: Etienne de Montalivet \n#\n# License: BSD-3-Clause" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "from micromed_io.to_mne import create_mne_from_micromed_recording\nfrom pathlib import Path\n\nfname = Path(\"../data/sample.TRC\")\nmne_raw = create_mne_from_micromed_recording(fname)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Info from trc file is parsed and stored in mne.Info\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "mne_raw.info" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As you see, markers sent by serial connection to Micromed are\nparsed from the trc file and stored as mne.Annotations\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "mne_raw.plot(scalings=dict(eeg=5000), duration=20, start=20)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/_downloads/225d151ea821367300a1321f418806af/_auto_examples_jupyter.zip b/_downloads/225d151ea821367300a1321f418806af/_auto_examples_jupyter.zip new file mode 100644 index 0000000000000000000000000000000000000000..b8b4f1163210a14e085a5a40da631fc9cac41567 GIT binary patch literal 6578 zcmeHMPj4JG6b~&_s3#vl}bHyqlq))-8Gr9C$=Y> zCE7zJE?g_|0g!s;JMm5UJ$q($vk59ytB8b7{_NU*ezxD=-}CezTz&t>3O%34FP{GP z{P#zHez>wif1jYQ%(Y9LNfW1&p&Z7toT|O!>x@OI$a5QQvS(;8MqTvy?!-+?fuX42 zWVJ{l(}F|vqA|r)TZEW zpa$xmFoI14OKVEbu-QOsM5;|DGB%NJ%s6`}Q=<#C?bJF^5HFml%iNfz7lj79z?fAQ zWKxB-3@^k)oBep8qWTy+{XBNz>_D7hQwa<7@!N0aPxs9-&8i&48Xh~jvitbg6| zqRd4MyBvcTK)z=XCn|R@UxCHYDZ2d}F9M+JBa0O>_+O*CR6FD9G zHFo#ka+F#VvBW`M;}CBm;=7hjb;Ya@T}FI_v1lmA_NMqWlIIlNlt?LlP}FJz88>2} zYFz{!A(XXxTF?%+6w2beN@>T5jlC2~qU6-EDPou!*{w{bt|P=~>rSuNTkW!}GXAVv zw|iZfDK`$^mi-1H)kn_gR0xis2qkh`ij3P;tpi%M{7&`+l5c{@72i|>?wu{LvmWCDyO3Y zMsAZFxzSV92Uw8geE-o#{8fDGb}cU)#>*^Hdm&+CfiEflwH=7lN)y-K^;!P}!1*KT zytww!$_o8`+yEQ|`HWD`Im4UBSayzWC^0NT8rl?KOY6_Cz%wy>Di}{wVXcQWV@ww& zz#F)|uw6D#gms!2L-B#ywC+1>^Z&p$z{WMOX_5#*khg(g3bNC!HaCIo`2v+EnvDQt z3vC_2_hFTL!>+Ll%)Idj%C#w1M8tM?TRazrcXuyzVl0hRu2YaM;-!-TWsWlg4V^g( z7~!W56xCkCLDWaOl&LH^aL6$x#*}7eYyPXPjBl}%5h;-EC3={oV-CQQ+Zk)Vu|X7g ze?iYg?~Q(5{}>d*T_ zL`Ps<{33iZp>#DGQ{_o$t?MBhnNhCwzVDrkaR@RlB?2C%*a|buVP(msu&$t>`Yh)J zj^WloABLxnv>98^N3(+iyfkN4Sno#T8e*<^=4Jnwh$g|75`awO+z zRTWEI2inf+?EGRHK^4N^R7!?S*C26}sz7M@l<>*sh1LYs6)oN%fm25ZI3z#~zyMES z$GpU4;;}D7d}HSC#BMT;>O}_oo)8Wp5#56Q)|evTJFW65deD^>T>3RA5FT8H?EKc4;^dEe1jR>yb=U04w`WdzU1}2?Er~m)} literal 0 HcmV?d00001 diff --git a/_downloads/375cbdb7aad81c7378509f9c7df99bf9/plot_read_trc.py b/_downloads/375cbdb7aad81c7378509f9c7df99bf9/plot_read_trc.py new file mode 100644 index 0000000..ef21270 --- /dev/null +++ b/_downloads/375cbdb7aad81c7378509f9c7df99bf9/plot_read_trc.py @@ -0,0 +1,49 @@ +""" +=================== +Read TRC file data +=================== + +Here we read a trc file recorded with a Micromed system. We access the header, the notes, +the markers and the data. +""" +# Author: Etienne de Montalivet +# +# License: BSD-3-Clause + +# %% +from micromed_io.trc import MicromedTRC +from pathlib import Path + +fname = Path("../data/sample.TRC") +mmtrc = MicromedTRC(fname) +# %% +# To get most useful data from the header, you can use ``micromed_header`` +print(mmtrc.micromed_header) +hdr = mmtrc.micromed_header +print( + f"Participant {hdr.name}-{hdr.surname} recorded with {hdr.nb_of_channels} channels " + + f"({hdr.ch_names}) at {mmtrc.sfreq}Hz with {hdr.acq_unit}." +) + +# %% +# If this is not enough for you, you can look for what you need in the full ``_header`` +mmtrc._header +# %% +# To extract notes from recording in the format ``{sample0 : note0, ... sampleN: noteN}`` +mmtrc.get_notes() + +# %% +# To extract markers from recording in the format ``{sample0 : marker0, ... sampleN: markerN}`` +mmtrc.get_markers() + +# %% +# If you need markers or notes times in seconds, just divide by the sampling frequency +{k / mmtrc.sfreq: v for k, v in mmtrc.get_markers().items()} + +# %% +# To get and play with the data, simply use: +data = mmtrc.get_data() +print(f"data shape: {data.shape}") +# or, if you want the 1st channel data only: +data_ch1 = mmtrc.get_data(picks=[hdr.ch_names[0]]) +print(f"data_ch1 shape: {data_ch1.shape}") diff --git a/_downloads/4acc58f9b78d1a788dc63d8462941d50/plot_trc_to_fif.py b/_downloads/4acc58f9b78d1a788dc63d8462941d50/plot_trc_to_fif.py new file mode 100644 index 0000000..a5e35d9 --- /dev/null +++ b/_downloads/4acc58f9b78d1a788dc63d8462941d50/plot_trc_to_fif.py @@ -0,0 +1,26 @@ +""" +============================== +Convert TRC file to mne format +============================== + +Here we convert a trc file recorded with a Micromed system to fif, the common +format used in mne framework. +""" +# Author: Etienne de Montalivet +# +# License: BSD-3-Clause + +# %% + +from micromed_io.to_mne import create_mne_from_micromed_recording +from pathlib import Path + +fname = Path("../data/sample.TRC") +mne_raw = create_mne_from_micromed_recording(fname) +# %% +# Info from trc file is parsed and stored in mne.Info +mne_raw.info +# %% +# As you see, markers sent by serial connection to Micromed are +# parsed from the trc file and stored as mne.Annotations +mne_raw.plot(scalings=dict(eeg=5000), duration=20, start=20) diff --git a/_downloads/8845d11ecb15bc8f327918febd001c4d/_auto_examples_python.zip b/_downloads/8845d11ecb15bc8f327918febd001c4d/_auto_examples_python.zip new file mode 100644 index 0000000000000000000000000000000000000000..105a7b7c76e124ecd5a7791a5b7210fd3af9f16f GIT binary patch literal 2455 zcmcguQEwYX5H<-#VxIu@4J1a6D%rx>xS&eN!iW-(iqckAsnmz4x@_+De2edPFT3j) z6B()e03P@UNPXZJ@VEF2%-6SPQNL*t3c5ilO_M7jUz1h+3+qZjkeaL@%_Wm!& zzy7t;>(S=}oU2RY6K~VRnr zvj@^jSV>45Hv%w$=*Y^{*i2@yQoaBIk5p<+g=4pNURD$cvmAjhXn9o`&0Mgp^QGRc#Qg)Jowc%_L-* zbe3_?O3$N*TKJ+=r|q&C4$-&99l;c6H0X1FkO?mioT%zjax6oC$jGr3D>S+}(jfR7 z#>DsFJDnr0lzvwT<)9XpFclin_r`Ycax!njaYcgw0K)8GZICu3tdqw_D38w{{{F|Gw|YJLyw}PD3zv~b-YgFG z1WjJafr@jT3Rp*da*6crHh2T?IXsgf(o{MZs9)f6X`>7f2kAz@ND?jRgcpq|k^fTz zS0#YLZusBU8rk|EiCz(G(~dmo@DiV&8knQ5E8{%%g?w2CBpQk%E-ik<)>LRRf|HX@ zk@4}#39GHreo#?Be(C9u6`92>u6@`nWPn%RpCQ*&s%n8sxWHAM#Jt%Lw{B^}2wrDE zG&@a9o}`69$&_vb?H%-k<4@4_AQ+}aLQdRf2m(XIlw5A*+2+Adv6Tipk)9<>t^9`f z*|2F_sQw(ef_le)%8}0aE`C&cZo@?k-}78^a{nqi{Lr5GNnUxyKu|y~24dp_8CvYBWvKZkFoqmC;1Von*S9ox`!En\n#\n# License: BSD-3-Clause" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "from micromed_io.trc import MicromedTRC\nfrom pathlib import Path\n\nfname = Path(\"../data/sample.TRC\")\nmmtrc = MicromedTRC(fname)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To get most useful data from the header, you can use ``micromed_header``\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "print(mmtrc.micromed_header)\nhdr = mmtrc.micromed_header\nprint(\n f\"Participant {hdr.name}-{hdr.surname} recorded with {hdr.nb_of_channels} channels \"\n + f\"({hdr.ch_names}) at {mmtrc.sfreq}Hz with {hdr.acq_unit}.\"\n)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If this is not enough for you, you can look for what you need in the full ``_header``\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "mmtrc._header" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To extract notes from recording in the format ``{sample0 : note0, ... sampleN: noteN}``\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "mmtrc.get_notes()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To extract markers from recording in the format ``{sample0 : marker0, ... sampleN: markerN}``\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "mmtrc.get_markers()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If you need markers or notes times in seconds, just divide by the sampling frequency\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "{k / mmtrc.sfreq: v for k, v in mmtrc.get_markers().items()}" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To get and play with the data, simply use:\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "data = mmtrc.get_data()\nprint(f\"data shape: {data.shape}\")\n# or, if you want the 1st channel data only:\ndata_ch1 = mmtrc.get_data(picks=[hdr.ch_names[0]])\nprint(f\"data_ch1 shape: {data_ch1.shape}\")" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/_images/sphx_glr_plot_read_trc_thumb.png b/_images/sphx_glr_plot_read_trc_thumb.png new file mode 100644 index 0000000000000000000000000000000000000000..8a5fed589d17fe6ee62d6a9788519dba471fbd65 GIT binary patch literal 26794 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 literal 0 HcmV?d00001 diff --git a/_images/sphx_glr_plot_trc_to_fif_001.png b/_images/sphx_glr_plot_trc_to_fif_001.png new file mode 100644 index 0000000000000000000000000000000000000000..1aa46d52fdff217cec1ef539917ff41c03036c60 GIT binary patch literal 111113 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 SLi#K4$=AZzk(@ox=mExpb~*p(j^V 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

;R5&dPT}&V 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 P1^=iholwkBFmU~Egb2u= literal 0 HcmV?d00001 diff --git a/_images/sphx_glr_plot_trc_to_fif_thumb.png b/_images/sphx_glr_plot_trc_to_fif_thumb.png new file mode 100644 index 0000000000000000000000000000000000000000..50b697de0f3eed280af82d84cdb65f7e54c1a280 GIT binary patch literal 48217 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

hZVl5X>LDD3 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 Ya9T}tW@;42tim5XT_c?WZO6<11x?SCi2wiq literal 0 HcmV?d00001 diff --git a/_sources/_auto_examples/index.rst.txt b/_sources/_auto_examples/index.rst.txt new file mode 100644 index 0000000..2fe7425 --- /dev/null +++ b/_sources/_auto_examples/index.rst.txt @@ -0,0 +1,77 @@ +:orphan: + +Examples Gallery +================ + +The examples gallery provides working code samples to try the MicromedIO library. + + +.. raw:: html + +
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /_auto_examples/images/thumb/sphx_glr_plot_trc_to_fif_thumb.png + :alt: + + :ref:`sphx_glr__auto_examples_plot_trc_to_fif.py` + +.. raw:: html + +
Convert TRC file to mne format
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /_auto_examples/images/thumb/sphx_glr_plot_read_trc_thumb.png + :alt: + + :ref:`sphx_glr__auto_examples_plot_read_trc.py` + +.. raw:: html + +
Read TRC file data
+
+ + +.. raw:: html + +
+ + +.. toctree:: + :hidden: + + /_auto_examples/plot_trc_to_fif + /_auto_examples/plot_read_trc + + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-gallery + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download all examples in Python source code: _auto_examples_python.zip ` + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download all examples in Jupyter notebooks: _auto_examples_jupyter.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/_sources/_auto_examples/plot_read_trc.rst.txt b/_sources/_auto_examples/plot_read_trc.rst.txt new file mode 100644 index 0000000..7bbc1e9 --- /dev/null +++ b/_sources/_auto_examples/plot_read_trc.rst.txt @@ -0,0 +1,561 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "_auto_examples/plot_read_trc.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr__auto_examples_plot_read_trc.py: + + +=================== +Read TRC file data +=================== + +Here we read a trc file recorded with a Micromed system. We access the header, the notes, +the markers and the data. + +.. GENERATED FROM PYTHON SOURCE LINES 9-13 + +.. code-block:: Python + + # Author: Etienne de Montalivet + # + # License: BSD-3-Clause + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 14-19 + +.. code-block:: Python + + from micromed_io.trc import MicromedTRC + from pathlib import Path + + fname = Path("../data/sample.TRC") + mmtrc = MicromedTRC(fname) + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 20-21 + +To get most useful data from the header, you can use ``micromed_header`` + +.. GENERATED FROM PYTHON SOURCE LINES 21-28 + +.. code-block:: Python + + print(mmtrc.micromed_header) + hdr = mmtrc.micromed_header + print( + f"Participant {hdr.name}-{hdr.surname} recorded with {hdr.nb_of_channels} channels " + + f"({hdr.ch_names}) at {mmtrc.sfreq}Hz with {hdr.acq_unit}." + ) + + + + + +.. rst-class:: sphx-glr-script-out + + .. code-block:: none + + MicromedHeader(surname='Test', name='Chb', nb_of_channels=14, order=array([ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 170, 174, 197, + 198], dtype=uint16), acq_unit='65', min_sampling_rate=2048, nb_of_bytes=2, header_type='Micromed "System98" Header type', stored_channels=array([ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 170, 174, 197, + 198], dtype=uint16), ch_names=['x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'x8', 'x9', 'x10', 'MKR1+', 'MKR2+', 'MKR3+', 'MKR4+'], elec_refs=[ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV'), ElectrodeReferences(factor=0.09765625, logic_ground=32768, units='μV')], data_address=648170, recording_date=datetime.datetime(2023, 11, 6, 14, 35, 6), notes={64: 'TCP connection failed'}, markers={14144: '17', 57881: '17', 58401: '20', 58919: '32', 59435: '40', 59951: '14', 60467: '101', 60989: '3', 67537: '2', 68577: '1', 69613: '4', 72695: '3', 73728: '2', 74752: '1', 75776: '4', 78848: '3', 79872: '2', 80896: '1', 81920: '4', 84999: '3', 86035: '2', 87069: '1', 88103: '4', 91183: '3', 92217: '2', 93248: '1', 94272: '4', 97344: '3', 98368: '2', 99392: '1', 100416: '4', 103517: '14', 104035: '102', 104557: '3', 111643: '2', 112677: '1', 113711: '4', 116793: '3', 117824: '2', 118848: '1', 119872: '4', 122944: '3', 123968: '2', 124992: '1', 126017: '4', 129099: '3', 130133: '2', 131165: '1', 132201: '4', 135285: '3', 136317: '2', 137344: '1', 138368: '4', 141440: '3', 142464: '2', 143488: '1', 144512: '4', 147585: '14', 148099: '101', 148659: '3', 154613: '2', 155645: '1', 156672: '4', 159744: '3', 160768: '2', 161792: '1', 162816: '4', 165895: '3', 166931: '2', 167963: '1', 168997: '4', 172079: '3', 173113: '2', 174144: '1', 175168: '4', 178240: '3', 179264: '2', 180288: '1', 181312: '4', 184385: '3', 185419: '2', 186455: '1', 187485: '4', 190565: '14', 191081: '102', 191603: '3', 196829: '2', 197861: '1', 198895: '4', 201977: '3', 203008: '2', 204032: '1', 205056: '4', 208128: '3', 209152: '2', 210176: '1', 211201: '4', 214281: '3', 215317: '2', 216349: '1', 217383: '4', 220465: '3', 221499: '2', 222528: '1', 223552: '4', 226624: '3', 227648: '2', 228672: '1', 229696: '4', 232769: '14', 233283: '101', 233803: '3', 240064: '2', 241093: '1', 242127: '4', 245209: '3', 246243: '2', 247277: '1', 248311: '4', 251391: '3', 252416: '2', 253440: '1', 254464: '4', 257536: '3', 258560: '2', 259584: '1', 260613: '4', 263695: '3', 264731: '2', 265765: '1', 266799: '4', 269881: '3', 270912: '2', 271936: '1', 272960: '4', 276032: '14', 276544: '102', 277056: '3', 283797: '2', 284829: '1', 285865: '4', 288947: '3', 289979: '2', 291008: '1', 292032: '4', 295104: '3', 296128: '2', 297152: '1', 298185: '4', 299693: '16', 312960: '17', 314560: '3', 315584: '2', 316608: '1', 317632: '4', 320704: '3', 321733: '2', 322767: '1', 323837: '4', 326912: '3', 327936: '2', 328960: '1', 329984: '4', 333056: '11'}) + Participant Chb-Test recorded with 14 channels (['x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'x8', 'x9', 'x10', 'MKR1+', 'MKR2+', 'MKR3+', 'MKR4+']) at 2048Hz with 65. + + + + +.. GENERATED FROM PYTHON SOURCE LINES 29-30 + +If this is not enough for you, you can look for what you need in the full ``_header`` + +.. GENERATED FROM PYTHON SOURCE LINES 30-31 + +.. code-block:: Python + + mmtrc._header + + + + +.. rst-class:: sphx-glr-script-out + + .. code-block:: none + + + {'title': '* MICROMED Brain-Quick file *\x00\x1a', 'laboratory': '', 'surname': 'Test', 'name': 'Chb', 'date_of_birth': datetime.date(2020, 1, 1), 'start_time': datetime.datetime(2023, 11, 6, 14, 35, 6), 'acquisition_unit': '65', 'filetype': 'CFRE C.R., variable EEG, variable poly', 'BOData': 648170, 'n_chan': 14, 'multiplexer': 28, 's_freq': 2048, 'n_bytes': 2, 'compression': 0, 'n_montages': 13, 'dvideo_begin': 4294967295, 'mpeg_delay': 0, 'header_type': 'Micromed "System98" Header type', 'order': array([ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 170, 174, 197, + 198], dtype=uint16), 'chans': [{'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x1', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 0, 'Latitude': 90.0, 'Longitude': 108.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x2', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 1, 'Latitude': 90.0, 'Longitude': 72.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x3', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 2, 'Latitude': 61.79999923706055, 'Longitude': 130.6999969482422, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x4', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 3, 'Latitude': 61.79999923706055, 'Longitude': 49.29999923706055, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x5', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 4, 'Latitude': 90.0, 'Longitude': 144.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x6', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 5, 'Latitude': 90.0, 'Longitude': 36.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x7', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 6, 'Latitude': 45.0, 'Longitude': 90.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x8', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 7, 'Latitude': 45.0, 'Longitude': 180.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x9', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 8, 'Latitude': 45.0, 'Longitude': 0.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x00', 'chan_name': 'x10', 'ground': 'G2', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 150, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 9, 'Latitude': 0.0, 'Longitude': 0.0, 'presentInMap': 0, 'isInAvg': 0, 'Description': '', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c'}, {'status': b'\x01', 'channelType': b'\x03', 'chan_name': 'MKR1+', 'ground': 'MKR1-', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 0, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 64, 'Latitude': 0.0, 'Longitude': 0.0, 'presentInMap': 0, 'isInAvg': 1, 'Description': 'Marker of the first headbox', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c\x00\x00\x00\x00\x00\x00\x0b'}, {'status': b'\x01', 'channelType': b'\x03', 'chan_name': 'MKR2+', 'ground': 'MKR2-', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 0, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 129, 'Latitude': 0.0, 'Longitude': 0.0, 'presentInMap': 0, 'isInAvg': 1, 'Description': 'Marker of the second headbox', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c\x00\x00\x00\x00\x00\x00\x0b'}, {'status': b'\x01', 'channelType': b'\x03', 'chan_name': 'MKR3+', 'ground': 'MKR3-', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 0, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 194, 'Latitude': 0.0, 'Longitude': 0.0, 'presentInMap': 0, 'isInAvg': 1, 'Description': 'Marker of the third headbox', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c\x00\x00\x00\x00\x00\x00\x0b'}, {'status': b'\x01', 'channelType': b'\x03', 'chan_name': 'MKR4+', 'ground': 'MKR4-', 'logical_ground': 32768, 'factor': 0.09765625, 'units': 'μV', 'HiPass_Limit': 0, 'HiPass_Type': 0, 'LowPass_Limit': 0, 'LowPass_Type': 0, 'rate_coefficient': 1, 'position': 255, 'Latitude': 0.0, 'Longitude': 0.0, 'presentInMap': 0, 'isInAvg': 1, 'Description': 'Marker of the fourth headbox', 'xyz': (0.0, 0.0, 0.0), 'Coordinate_Type': 0, 'free': b'\x80\xf3\xff\xff\x80\x0c\x00\x00\x00\x00\x00\x00\x0b'}], 'notes': array([(64, b'TCP connection failed'), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), + ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b''), ( 0, b'')], + dtype=[('sample', '?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x1c\x1c\x1c\x08\x03\x04\x04\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\''}, {'lines': 20, 'sectors': 0, 'base_time': 15, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'DB Std', 'inputsNonInv': (6, 2, 44, 6, 49, 44, 15, 49, 4, 2, 9, 4, 12, 9, 15, 12, 3, 1, 8, 3, 11, 8, 14, 11, 5, 1, 40, 5, 45, 40, 14, 45, 10, 7, 13, 10, 0, 191, 0, 174, 0, 174, 0, 21, 0, 166, 0, 167, 0, 168, 0, 169, 0, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 10000, 100000, 100000, 40000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 200, 200, 200, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00&&&&&&&&\x05\x05\x05\x05\x05\x05\x05\x05\x1c\x1c\x08\x04\x04\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x01\x01\x00\x00\x00\x00\x00\x00\x00\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x10\''}, {'lines': 16, 'sectors': 0, 'base_time': 15, 'notch': 0, 'colour': (9, 9, 9, 9, 9, 9, 9, 9, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Transv Std', 'inputsNonInv': (1, 2, 4, 6, 7, 4, 3, 7, 5, 3, 9, 44, 10, 9, 8, 10, 40, 8, 12, 49, 13, 12, 11, 13, 45, 11, 14, 15, 0, 191, 0, 174, 18, 16, 14, 18, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 1000, 0, 1600, 1600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 15000, 3000, 100000, 7000, 7000, 32000, 100000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 200, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x08\x04\x05\x05\n\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x01\x00\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x10\''}, {'lines': 27, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 4, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Ref 25', 'inputsNonInv': (0, 56, 0, 57, 0, 58, 0, 2, 0, 6, 0, 44, 0, 49, 0, 15, 0, 4, 0, 9, 0, 12, 0, 3, 0, 8, 0, 11, 0, 1, 0, 5, 0, 40, 0, 45, 0, 14, 0, 53, 0, 54, 0, 55, 0, 7, 0, 10, 0, 13, 0, 194, 0, 174, 0, 191, 0, 53, 0, 54, 0, 72, 0, 73, 0, 74, 0, 75, 0, 76, 0, 77, 0, 77, 0, 77, 0, 77, 0, 77, 0, 75, 0, 76, 0, 77, 0, 77, 0, 78, 0, 79, 0, 80, 0, 81, 0, 82, 0, 83, 0, 84, 0, 85, 0, 86, 0, 87, 0, 88, 0, 89, 0, 90, 0, 91, 0, 92, 0, 93, 0, 94, 0, 95, 0, 96, 0, 97), 'inputsInv': (0, 98, 0, 101, 0, 102, 0, 103, 0, 104, 0, 105, 0, 107, 0, 108, 0, 109, 0, 110, 0, 111, 0, 112, 0, 113, 0, 114, 0, 115, 0, 116, 0, 117, 0, 118, 0, 120, 0, 121, 0, 122, 0, 123, 0, 124, 0, 125, 0, 128, 0, 129, 0, 130, 0, 131, 0, 132, 0, 133, 0, 135, 0, 136, 0, 137, 0, 138, 0, 139, 0, 140, 0, 141, 0, 142, 0, 143, 145, 144, 147, 146, 149, 148, 0, 129, 0, 130, 0, 131, 0, 132, 0, 133, 0, 135, 0, 136, 0, 137, 0, 138, 0, 139, 0, 140, 0, 141, 0, 142, 0, 143, 145, 144, 147, 146, 149, 148, 149, 148, 0, 143, 145, 144, 147, 146, 149, 148), 'HiPass_Filter': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 1000, 0, 1000, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 1000, 1000, 1000, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 1000, 1000, 1000, 1000, 300, 1000, 1000, 1000), 'LowPass_Filter': (20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 10000, 100000, 10000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 1000, 10000, 10000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 1000, 10000, 10000, 10000, 40000, 1000, 10000, 10000), 'reference': (100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 200, 100, 200, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 200, 200, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 200, 200, 200, 800, 800, 200, 200), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x1c\x1c\x1c\x08\x04\x08\x05\x05((((((((((((((((\x05\x05\x05\x05\x05\x05\x05\x05((((((((\x05\x05\x05\x05\x05\x05(((((((\x05\x05\x05\x05\x05\x05\x05((((((\x05\x05\x05\x05\x05\x05\x05((((((((\x08--\x05\x05\x05\x05\x05\x05((((((((\x08---(\x08--\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x01\x00\x10\''}, {'lines': 28, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 12, 2, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Triple B - 25', 'inputsNonInv': (56, 2, 57, 56, 58, 57, 15, 58, 6, 2, 44, 6, 49, 44, 15, 49, 4, 2, 9, 4, 12, 9, 15, 12, 3, 1, 8, 3, 11, 8, 14, 11, 5, 1, 40, 5, 45, 40, 14, 45, 53, 1, 54, 53, 55, 54, 14, 55, 10, 7, 13, 10, 0, 194, 0, 174, 0, 174, 0, 33, 0, 34, 0, 35, 0, 36, 0, 37, 0, 38, 0, 39, 0, 40, 0, 41, 0, 42, 0, 43, 0, 44, 0, 45, 0, 46, 0, 47, 0, 48, 0, 49, 0, 50, 0, 51, 0, 52, 0, 53, 0, 54, 0, 55, 0, 56, 0, 57, 0, 58, 0, 59, 0, 60, 0, 61, 0, 62, 0, 63, 0, 64, 0, 65, 0, 66, 0, 67), 'inputsInv': (0, 68, 0, 69, 0, 70, 0, 71, 0, 72, 0, 73, 0, 74, 0, 75, 0, 76, 0, 77, 0, 78, 0, 79, 0, 80, 0, 81, 0, 82, 0, 83, 0, 84, 0, 85, 0, 86, 0, 87, 0, 88, 0, 89, 0, 90, 0, 91, 0, 92, 0, 93, 0, 94, 0, 95, 145, 144, 145, 144, 145, 144, 145, 144, 145, 144, 0, 21, 0, 2, 0, 68, 0, 67, 0, 6, 0, 72, 0, 4, 0, 71, 0, 77, 0, 59, 0, 76, 0, 53, 0, 17, 0, 81, 0, 9, 0, 80, 0, 86, 0, 62, 0, 85, 0, 56, 0, 19, 0, 90, 0, 12, 0, 89, 0, 93, 0, 58, 0, 15, 0, 198, 0, 205, 174, 0, 174, 0), 'HiPass_Filter': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 1000, 0, 0, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 53000, 0, 0), 'LowPass_Filter': (20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 10000, 100000, 100000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 12000, 12000, 12000, 12000, 12000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 40000, 40000, 40000), 'reference': (100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 200, 100, 100, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 120, 120, 120, 120, 120, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x1c\x1c\x08\x04\x04\x05\x05\x05\x05\x05\x05\x05((((((((\x05\x05\x05\x05\x05\x05\x05\x05((((((((\x05\x05\x05\x05\x05\x05\x05\x05((((((((\x05\x05\x05\x05\x05\x05\x05\x05((((((((\x08\x08\x08\x08\x08\x1c((((((((((((((((((((((((((\x08\x1c\x05\x05\x01\x00\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x10\''}, {'lines': 37, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (9, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Ref 38', 'inputsNonInv': (0, 2, 0, 6, 0, 44, 0, 49, 0, 15, 0, 4, 0, 9, 0, 12, 0, 67, 0, 68, 0, 69, 0, 70, 0, 75, 0, 76, 0, 71, 0, 77, 0, 1, 0, 3, 0, 8, 0, 11, 0, 14, 0, 5, 0, 40, 0, 45, 0, 62, 0, 63, 0, 64, 0, 65, 0, 72, 0, 73, 0, 66, 0, 74, 0, 7, 0, 10, 0, 13, 0, 191, 0, 174, 0, 174, 0, 174, 0, 174, 0, 174, 0, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 10000, 100000, 100000, 100000, 100000, 100000, 100000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 200, 400, 400, 400, 400, 400, 400, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x1c\x1c\x1c\x08\x04\x04\x04\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x00\x01\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x10\''}, {'lines': 30, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Triple B 38', 'inputsNonInv': (75, 2, 76, 75, 71, 76, 77, 71, 15, 77, 6, 2, 44, 6, 49, 44, 15, 49, 4, 2, 9, 4, 12, 9, 15, 12, 3, 1, 8, 3, 11, 8, 14, 11, 5, 1, 40, 5, 45, 40, 14, 45, 72, 1, 73, 72, 66, 73, 74, 66, 14, 74, 10, 7, 13, 10, 0, 191, 0, 174, 0, 174, 0, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 530, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 20000, 10000, 100000, 100000, 100000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 200, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x1c\x1c\x08\x04\x04\x04\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x00\x01\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x10\''}, {'lines': 92, 'sectors': 0, 'base_time': 10, 'notch': 1, 'colour': (9, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Perrier_part1_ref', 'inputsNonInv': (0, 32, 0, 33, 0, 34, 0, 35, 0, 36, 0, 37, 0, 38, 0, 39, 0, 40, 0, 41, 0, 42, 0, 43, 0, 44, 0, 45, 0, 46, 0, 47, 0, 48, 0, 49, 0, 50, 0, 51, 0, 52, 0, 53, 0, 54, 0, 55, 0, 56, 0, 57, 0, 58, 0, 59, 0, 60, 0, 61, 0, 62, 0, 63, 0, 64, 0, 65, 0, 66, 0, 67, 0, 68, 0, 72, 0, 73, 0, 74, 0, 75, 0, 76, 0, 77, 0, 78, 0, 79, 0, 80, 0, 81, 0, 82, 0, 83, 0, 84, 0, 85, 0, 86, 0, 87, 0, 88, 0, 90, 0, 96, 0, 97, 0, 98, 0, 99, 0, 100, 0, 101, 0, 102, 0, 103, 0, 104), 'inputsInv': (0, 105, 0, 106, 0, 107, 0, 108, 0, 109, 0, 110, 0, 111, 0, 112, 0, 113, 0, 114, 0, 115, 0, 116, 0, 117, 0, 118, 0, 119, 0, 120, 0, 121, 0, 122, 0, 123, 0, 124, 0, 125, 0, 126, 0, 127, 0, 128, 0, 129, 0, 130, 0, 131, 310, 309, 310, 309, 310, 309, 310, 309, 310, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 1000, 1000, 1000, 1000, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 10000, 10000, 10000, 10000, 10000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000), 'reference': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05********\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\x08\x08\x08\x08\x08\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x00\x00\x01\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\''}, {'lines': 84, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (9, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Perrier_part2_ref', 'inputsNonInv': (0, 132, 0, 133, 0, 134, 0, 135, 0, 136, 0, 137, 0, 138, 0, 139, 0, 140, 0, 141, 0, 142, 0, 143, 0, 144, 0, 145, 0, 146, 0, 147, 0, 148, 0, 149, 0, 150, 0, 151, 0, 152, 0, 153, 0, 154, 0, 155, 0, 156, 0, 157, 0, 158, 0, 159, 0, 255, 0, 256, 0, 257, 0, 258, 0, 259, 0, 260, 0, 261, 0, 262, 0, 0, 0, 263, 0, 264, 0, 265, 0, 266, 0, 267, 0, 268, 0, 269, 0, 270, 0, 271, 0, 272, 0, 273, 0, 274, 0, 275, 0, 276, 0, 277, 0, 278, 0, 279, 0, 280, 0, 281, 0, 282, 0, 283, 0, 284, 0, 285, 0, 286, 0, 287, 0, 288, 0, 289), 'inputsInv': (0, 290, 0, 291, 0, 292, 0, 293, 0, 294, 0, 295, 0, 296, 0, 297, 0, 298, 0, 299, 0, 300, 0, 301, 0, 302, 0, 303, 0, 304, 0, 305, 0, 306, 0, 307, 0, 308, 310, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 10000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x00\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x08\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x00\x00\x01\x01\x00\x01\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x10\''}, {'lines': 87, 'sectors': 0, 'base_time': 15, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Perrier_part1_bip', 'inputsNonInv': (33, 32, 34, 33, 35, 34, 36, 35, 37, 36, 38, 37, 39, 38, 40, 39, 41, 40, 42, 41, 43, 42, 45, 44, 46, 45, 47, 46, 48, 47, 49, 48, 50, 49, 51, 50, 52, 51, 53, 52, 54, 53, 55, 54, 57, 56, 58, 57, 59, 58, 60, 59, 62, 61, 63, 62, 64, 63, 65, 64, 66, 65, 67, 66, 68, 67, 69, 68, 70, 69, 71, 70, 72, 71, 73, 72, 74, 73, 75, 74, 76, 75, 77, 76, 78, 77, 80, 79, 81, 80, 82, 81, 83, 82, 84, 83, 85, 84, 86, 85, 87, 86, 88, 87, 89, 88, 90, 89, 97, 96, 98, 97, 99, 98, 100, 99, 101, 100, 102, 101, 103, 102, 104, 103, 105, 104, 106, 105), 'inputsInv': (107, 106, 109, 108, 110, 109, 111, 110, 112, 111, 113, 112, 114, 113, 115, 114, 117, 116, 118, 117, 119, 118, 120, 119, 121, 120, 122, 121, 123, 122, 125, 124, 126, 125, 127, 126, 128, 127, 129, 128, 130, 129, 131, 130, 310, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 10000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x08\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x10\''}, {'lines': 76, 'sectors': 0, 'base_time': 15, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Perrier_part2_bib', 'inputsNonInv': (133, 132, 134, 133, 135, 134, 136, 135, 137, 136, 138, 137, 139, 138, 141, 140, 142, 141, 143, 142, 144, 143, 145, 144, 146, 145, 147, 146, 148, 147, 149, 148, 151, 150, 152, 151, 153, 152, 154, 153, 155, 154, 156, 155, 157, 156, 158, 157, 159, 158, 256, 255, 257, 256, 258, 257, 259, 258, 260, 259, 261, 260, 262, 261, 0, 0, 264, 263, 265, 264, 266, 265, 267, 266, 268, 267, 269, 268, 270, 269, 271, 270, 272, 271, 273, 272, 274, 273, 276, 275, 277, 276, 278, 277, 279, 278, 280, 279, 281, 280, 282, 281, 283, 282, 284, 283, 285, 284, 286, 285, 288, 287, 289, 288, 290, 289, 291, 290, 292, 291, 293, 292, 294, 293, 295, 294, 296, 295), 'inputsInv': (297, 296, 298, 297, 300, 299, 301, 300, 302, 301, 303, 302, 304, 303, 305, 304, 306, 305, 307, 306, 308, 307, 310, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 10000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000, 32000), 'reference': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\x00\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\'\'\'\x08\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x98:'}, {'lines': 91, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 4, 4, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Perrier_IMP_ref', 'inputsNonInv': (0, 32, 0, 34, 0, 36, 0, 38, 0, 40, 0, 42, 0, 44, 0, 46, 0, 48, 0, 50, 0, 52, 0, 54, 0, 56, 0, 58, 0, 60, 0, 61, 0, 63, 0, 65, 0, 67, 0, 69, 0, 71, 0, 73, 0, 75, 0, 77, 0, 79, 0, 81, 0, 83, 0, 85, 0, 87, 0, 89, 0, 96, 0, 98, 0, 100, 0, 102, 0, 104, 0, 106, 0, 108, 0, 110, 0, 112, 0, 114, 0, 116, 0, 118, 0, 120, 0, 122, 0, 124, 0, 126, 0, 128, 0, 130, 0, 132, 0, 134, 0, 136, 0, 138, 0, 140, 0, 142, 0, 144, 0, 146, 0, 148, 0, 150, 0, 152, 0, 154, 0, 156, 0, 158, 0, 255, 0, 257), 'inputsInv': (0, 259, 0, 261, 0, 0, 0, 263, 0, 265, 0, 267, 0, 269, 0, 271, 0, 273, 0, 275, 0, 277, 0, 279, 0, 281, 0, 283, 0, 285, 0, 287, 0, 289, 0, 291, 0, 293, 0, 295, 0, 297, 0, 299, 0, 301, 0, 303, 0, 305, 0, 307, 310, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 130, 0, 131, 0, 132, 0, 133, 0, 135, 0, 136, 0, 137, 0, 138, 0, 139, 0, 140, 0, 141, 0, 142, 0, 143, 145, 144, 147, 146, 149, 148, 149, 148, 0, 143, 145, 144, 147, 146, 149, 148), 'HiPass_Filter': (1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 0, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 1000, 1000, 1000, 1000, 300, 1000, 1000, 1000), 'LowPass_Filter': (50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 100000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 40000, 1000, 10000, 10000, 10000, 40000, 1000, 10000, 10000), 'reference': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 200, 200, 200, 800, 800, 200, 200), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\'\'\'\x05\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\'\'\'\'\x05\x05\x05\x05\'\'\'\'\x05\x05\x05\x05\'\'\'\'\'\x05\x05\x05\x05\x05\'\'\'\'\x00\x05\x05\x05\x05\x05\x05\'\'\'\'\'\'\x05\x05\x05\x05\x05\x05\'\'\'\'\'\x08\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05((((((((\x08---(\x08--\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x01\x00\x10\''}, {'lines': 74, 'sectors': 0, 'base_time': 10, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 12, 2, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': 'Perrier_IMP_bip', 'inputsNonInv': (34, 32, 36, 34, 38, 36, 40, 38, 42, 40, 46, 44, 48, 46, 50, 48, 52, 50, 54, 52, 58, 56, 60, 58, 63, 61, 65, 63, 67, 65, 69, 67, 71, 69, 73, 71, 75, 73, 77, 75, 81, 79, 83, 81, 85, 83, 87, 85, 89, 87, 98, 96, 100, 98, 102, 100, 104, 102, 106, 104, 110, 108, 112, 110, 114, 112, 118, 116, 120, 118, 122, 120, 126, 124, 128, 126, 130, 128, 134, 132, 136, 134, 138, 136, 142, 140, 144, 142, 146, 144, 148, 146, 152, 150, 154, 152, 156, 154, 158, 156, 257, 255, 259, 257, 261, 259, 0, 0, 265, 263, 267, 265, 269, 267, 271, 269, 273, 271, 277, 275, 279, 277, 281, 279, 283, 281, 285, 283), 'inputsInv': (289, 287, 291, 289, 293, 291, 295, 293, 297, 295, 301, 299, 303, 301, 305, 303, 307, 305, 310, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 0, 9, 0, 80, 0, 86, 0, 62, 0, 85, 0, 56, 0, 19, 0, 90, 0, 12, 0, 89, 0, 93, 0, 58, 0, 15, 0, 198, 0, 205, 174, 0, 174, 0), 'HiPass_Filter': (1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 53000, 0, 0), 'LowPass_Filter': (50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 50000, 10000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 100000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 7000, 40000, 40000, 40000), 'reference': (500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 800), 'free': b'\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\'\'\'\'\'\x05\x05\x05\x05\x05\'\'\x05\x05\x05\x05\x05\x05\x05\x05\'\'\'\'\'\x05\x05\x05\x05\x05\'\'\'\x05\x05\x05\'\'\'\x05\x05\x05\'\'\'\'\x05\x05\x05\x05\'\'\'\x00\x05\x05\x05\x05\x05\'\'\'\'\x05\x05\x05\x05\x05\x05\'\'\'\'\x08\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05((((((((((((((\x08\x1c\x05\x05\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x01\x00\x10\''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}, {'lines': 0, 'sectors': 0, 'base_time': 0, 'notch': 0, 'colour': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'selection': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'description': '', 'inputsNonInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'inputsInv': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'HiPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'LowPass_Filter': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'reference': (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 'free': b''}], 'dvideo': array([(1229791274, 1297044035, 538985541, 1767993922), + (1968254318, 543908713, 1701603686, 436218400), + ( 538976288, 538976288, 538976288, 538976288), ..., + ( 0, 0, 0, 0), + ( 0, 0, 4294964096, 3200), + ( 0, 0, 0, 0)], + dtype=[('delay', '` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_read_trc.py ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/_sources/_auto_examples/plot_trc_to_fif.rst.txt b/_sources/_auto_examples/plot_trc_to_fif.rst.txt new file mode 100644 index 0000000..07d42af --- /dev/null +++ b/_sources/_auto_examples/plot_trc_to_fif.rst.txt @@ -0,0 +1,222 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "_auto_examples/plot_trc_to_fif.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr__auto_examples_plot_trc_to_fif.py: + + +============================== +Convert TRC file to mne format +============================== + +Here we convert a trc file recorded with a Micromed system to fif, the common +format used in mne framework. + +.. GENERATED FROM PYTHON SOURCE LINES 9-13 + +.. code-block:: Python + + # Author: Etienne de Montalivet + # + # License: BSD-3-Clause + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 14-20 + +.. code-block:: Python + + + from micromed_io.to_mne import create_mne_from_micromed_recording + from pathlib import Path + + fname = Path("../data/sample.TRC") + mne_raw = create_mne_from_micromed_recording(fname) + + + + +.. rst-class:: sphx-glr-script-out + + .. code-block:: none + + WARNING:root:MKR channel(s) is not close to 50mV + Creating RawArray with float64 data, n_channels=14, n_times=349632 + Range : 0 ... 349631 = 0.000 ... 170.718 secs + Ready. + + + + +.. GENERATED FROM PYTHON SOURCE LINES 21-22 + +Info from trc file is parsed and stored in mne.Info + +.. GENERATED FROM PYTHON SOURCE LINES 22-23 + +.. code-block:: Python + + mne_raw.info + + + + + +.. raw:: html + +
+
+ General + + + + + + + + + + + + + + + + + + + + + +
Measurement dateNovember 06, 2023 14:35:06 GMT
ExperimenterUnknown
ParticipantChb
+
+
+ Channels + + + + + + + + + + + + + + + + + + + + + + + +
Digitized pointsNot available
Good channels14 EEG
Bad channelsNone
EOG channelsNot available
ECG channelsNot available
+
+
+ Data + + + + + + + + + + + + + + + + + + + + + + +
Sampling frequency2048.00 Hz
Highpass0.00 Hz
Lowpass1024.00 Hz
+
+
+
+
+ +.. GENERATED FROM PYTHON SOURCE LINES 24-26 + +As you see, markers sent by serial connection to Micromed are +parsed from the trc file and stored as mne.Annotations + +.. GENERATED FROM PYTHON SOURCE LINES 26-27 + +.. code-block:: Python + + mne_raw.plot(scalings=dict(eeg=5000), duration=20, start=20) + + + +.. image-sg:: /_auto_examples/images/sphx_glr_plot_trc_to_fif_001.png + :alt: plot trc to fif + :srcset: /_auto_examples/images/sphx_glr_plot_trc_to_fif_001.png + :class: sphx-glr-single-img + + +.. rst-class:: sphx-glr-script-out + + .. code-block:: none + + Using matplotlib as 2D backend. + + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 2.108 seconds) + + +.. _sphx_glr_download__auto_examples_plot_trc_to_fif.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_trc_to_fif.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_trc_to_fif.py ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/_sources/_auto_examples/sg_execution_times.rst.txt b/_sources/_auto_examples/sg_execution_times.rst.txt new file mode 100644 index 0000000..4380296 --- /dev/null +++ b/_sources/_auto_examples/sg_execution_times.rst.txt @@ -0,0 +1,40 @@ + +:orphan: + +.. _sphx_glr__auto_examples_sg_execution_times: + + +Computation times +================= +**00:02.190** total execution time for 2 files **from _auto_examples**: + +.. container:: + + .. raw:: html + + + + + + + + .. list-table:: + :header-rows: 1 + :class: table table-striped sg-datatable + + * - Example + - Time + - Mem (MB) + * - :ref:`sphx_glr__auto_examples_plot_trc_to_fif.py` (``plot_trc_to_fif.py``) + - 00:02.108 + - 0.0 + * - :ref:`sphx_glr__auto_examples_plot_read_trc.py` (``plot_read_trc.py``) + - 00:00.082 + - 0.0 diff --git a/_sources/_autosummary/micromed_io.buffer.MicromedBuffer.rst.txt b/_sources/_autosummary/micromed_io.buffer.MicromedBuffer.rst.txt new file mode 100644 index 0000000..914e496 --- /dev/null +++ b/_sources/_autosummary/micromed_io.buffer.MicromedBuffer.rst.txt @@ -0,0 +1,27 @@ +micromed\_io.buffer.MicromedBuffer +================================== + +.. currentmodule:: micromed_io.buffer + +.. autoclass:: MicromedBuffer + :show-inheritance: + :inherited-members: + :special-members: __call__, __add__, __mul__ + + + + .. rubric:: Methods + + .. autosummary:: + :nosignatures: + + ~MicromedBuffer.decode_data_eeg_packet + ~MicromedBuffer.decode_data_header_packet + ~MicromedBuffer.init_buffer + ~MicromedBuffer.update_epoch_buffer + + + + + + \ No newline at end of file diff --git a/_sources/_autosummary/micromed_io.buffer.rst.txt b/_sources/_autosummary/micromed_io.buffer.rst.txt new file mode 100644 index 0000000..e01daac --- /dev/null +++ b/_sources/_autosummary/micromed_io.buffer.rst.txt @@ -0,0 +1,32 @@ +micromed\_io.buffer +=================== + +.. automodule:: micromed_io.buffer + + + + + + + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: custom-class-template.rst + :nosignatures: + + MicromedBuffer + + + + + + + + + diff --git a/_sources/_autosummary/micromed_io.header.ElectrodeReferences.rst.txt b/_sources/_autosummary/micromed_io.header.ElectrodeReferences.rst.txt new file mode 100644 index 0000000..bd38642 --- /dev/null +++ b/_sources/_autosummary/micromed_io.header.ElectrodeReferences.rst.txt @@ -0,0 +1,31 @@ +micromed\_io.header.ElectrodeReferences +======================================= + +.. currentmodule:: micromed_io.header + +.. autoclass:: ElectrodeReferences + :show-inheritance: + :inherited-members: + :special-members: __call__, __add__, __mul__ + + + + .. rubric:: Methods + + .. autosummary:: + :nosignatures: + + + + + + + .. rubric:: Attributes detail + + .. autosummary:: + + ~ElectrodeReferences.factor + ~ElectrodeReferences.logic_ground + ~ElectrodeReferences.units + + \ No newline at end of file diff --git a/_sources/_autosummary/micromed_io.header.MicromedHeader.rst.txt b/_sources/_autosummary/micromed_io.header.MicromedHeader.rst.txt new file mode 100644 index 0000000..8b661a8 --- /dev/null +++ b/_sources/_autosummary/micromed_io.header.MicromedHeader.rst.txt @@ -0,0 +1,43 @@ +micromed\_io.header.MicromedHeader +================================== + +.. currentmodule:: micromed_io.header + +.. autoclass:: MicromedHeader + :show-inheritance: + :inherited-members: + :special-members: __call__, __add__, __mul__ + + + + .. rubric:: Methods + + .. autosummary:: + :nosignatures: + + + + + + + .. rubric:: Attributes detail + + .. autosummary:: + + ~MicromedHeader.acq_unit + ~MicromedHeader.ch_names + ~MicromedHeader.data_address + ~MicromedHeader.elec_refs + ~MicromedHeader.header_type + ~MicromedHeader.markers + ~MicromedHeader.min_sampling_rate + ~MicromedHeader.name + ~MicromedHeader.nb_of_bytes + ~MicromedHeader.nb_of_channels + ~MicromedHeader.notes + ~MicromedHeader.order + ~MicromedHeader.recording_date + ~MicromedHeader.stored_channels + ~MicromedHeader.surname + + \ No newline at end of file diff --git a/_sources/_autosummary/micromed_io.header.rst.txt b/_sources/_autosummary/micromed_io.header.rst.txt new file mode 100644 index 0000000..71024be --- /dev/null +++ b/_sources/_autosummary/micromed_io.header.rst.txt @@ -0,0 +1,33 @@ +micromed\_io.header +=================== + +.. automodule:: micromed_io.header + + + + + + + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: custom-class-template.rst + :nosignatures: + + ElectrodeReferences + MicromedHeader + + + + + + + + + diff --git a/_sources/_autosummary/micromed_io.in_out.MicromedIO.rst.txt b/_sources/_autosummary/micromed_io.in_out.MicromedIO.rst.txt new file mode 100644 index 0000000..c4497c8 --- /dev/null +++ b/_sources/_autosummary/micromed_io.in_out.MicromedIO.rst.txt @@ -0,0 +1,25 @@ +micromed\_io.in\_out.MicromedIO +=============================== + +.. currentmodule:: micromed_io.in_out + +.. autoclass:: MicromedIO + :show-inheritance: + :inherited-members: + :special-members: __call__, __add__, __mul__ + + + + .. rubric:: Methods + + .. autosummary:: + :nosignatures: + + ~MicromedIO.decode_data_eeg_packet + ~MicromedIO.decode_data_header_packet + + + + + + \ No newline at end of file diff --git a/_sources/_autosummary/micromed_io.in_out.rst.txt b/_sources/_autosummary/micromed_io.in_out.rst.txt new file mode 100644 index 0000000..81a3ebd --- /dev/null +++ b/_sources/_autosummary/micromed_io.in_out.rst.txt @@ -0,0 +1,32 @@ +micromed\_io.in\_out +==================== + +.. automodule:: micromed_io.in_out + + + + + + + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: custom-class-template.rst + :nosignatures: + + MicromedIO + + + + + + + + + diff --git a/_sources/_autosummary/micromed_io.rst.txt b/_sources/_autosummary/micromed_io.rst.txt new file mode 100644 index 0000000..f5c4ee9 --- /dev/null +++ b/_sources/_autosummary/micromed_io.rst.txt @@ -0,0 +1,35 @@ +micromed\_io +============ + +.. automodule:: micromed_io + + + + + + + + + + + + + + + + + + + +.. autosummary:: + :toctree: + :template: custom-module-template.rst + :recursive: + + micromed_io.buffer + micromed_io.header + micromed_io.in_out + micromed_io.tcp + micromed_io.to_mne + micromed_io.trc + diff --git a/_sources/_autosummary/micromed_io.tcp.MicromedPacketType.rst.txt b/_sources/_autosummary/micromed_io.tcp.MicromedPacketType.rst.txt new file mode 100644 index 0000000..5a57eca --- /dev/null +++ b/_sources/_autosummary/micromed_io.tcp.MicromedPacketType.rst.txt @@ -0,0 +1,26 @@ +micromed\_io.tcp.MicromedPacketType +=================================== + +.. currentmodule:: micromed_io.tcp + +.. autoclass:: MicromedPacketType + :show-inheritance: + :inherited-members: + :special-members: __call__, __add__, __mul__ + + + + + + + + .. rubric:: Attributes detail + + .. autosummary:: + + ~MicromedPacketType.HEADER + ~MicromedPacketType.EEG_DATA + ~MicromedPacketType.NOTE + ~MicromedPacketType.MARKER + + \ No newline at end of file diff --git a/_sources/_autosummary/micromed_io.tcp.decode_tcp_header_packet.rst.txt b/_sources/_autosummary/micromed_io.tcp.decode_tcp_header_packet.rst.txt new file mode 100644 index 0000000..85af69f --- /dev/null +++ b/_sources/_autosummary/micromed_io.tcp.decode_tcp_header_packet.rst.txt @@ -0,0 +1,6 @@ +micromed\_io.tcp.decode\_tcp\_header\_packet +============================================ + +.. currentmodule:: micromed_io.tcp + +.. autofunction:: decode_tcp_header_packet \ No newline at end of file diff --git a/_sources/_autosummary/micromed_io.tcp.decode_tcp_marker_packet.rst.txt b/_sources/_autosummary/micromed_io.tcp.decode_tcp_marker_packet.rst.txt new file mode 100644 index 0000000..0ac423f --- /dev/null +++ b/_sources/_autosummary/micromed_io.tcp.decode_tcp_marker_packet.rst.txt @@ -0,0 +1,6 @@ +micromed\_io.tcp.decode\_tcp\_marker\_packet +============================================ + +.. currentmodule:: micromed_io.tcp + +.. autofunction:: decode_tcp_marker_packet \ No newline at end of file diff --git a/_sources/_autosummary/micromed_io.tcp.decode_tcp_note_packet.rst.txt b/_sources/_autosummary/micromed_io.tcp.decode_tcp_note_packet.rst.txt new file mode 100644 index 0000000..9fddbce --- /dev/null +++ b/_sources/_autosummary/micromed_io.tcp.decode_tcp_note_packet.rst.txt @@ -0,0 +1,6 @@ +micromed\_io.tcp.decode\_tcp\_note\_packet +========================================== + +.. currentmodule:: micromed_io.tcp + +.. autofunction:: decode_tcp_note_packet \ No newline at end of file diff --git a/_sources/_autosummary/micromed_io.tcp.encode_marker_packet.rst.txt b/_sources/_autosummary/micromed_io.tcp.encode_marker_packet.rst.txt new file mode 100644 index 0000000..bfb84c4 --- /dev/null +++ b/_sources/_autosummary/micromed_io.tcp.encode_marker_packet.rst.txt @@ -0,0 +1,6 @@ +micromed\_io.tcp.encode\_marker\_packet +======================================= + +.. currentmodule:: micromed_io.tcp + +.. autofunction:: encode_marker_packet \ No newline at end of file diff --git a/_sources/_autosummary/micromed_io.tcp.encode_note_packet.rst.txt b/_sources/_autosummary/micromed_io.tcp.encode_note_packet.rst.txt new file mode 100644 index 0000000..1da6671 --- /dev/null +++ b/_sources/_autosummary/micromed_io.tcp.encode_note_packet.rst.txt @@ -0,0 +1,6 @@ +micromed\_io.tcp.encode\_note\_packet +===================================== + +.. currentmodule:: micromed_io.tcp + +.. autofunction:: encode_note_packet \ No newline at end of file diff --git a/_sources/_autosummary/micromed_io.tcp.get_tcp_header.rst.txt b/_sources/_autosummary/micromed_io.tcp.get_tcp_header.rst.txt new file mode 100644 index 0000000..cc49824 --- /dev/null +++ b/_sources/_autosummary/micromed_io.tcp.get_tcp_header.rst.txt @@ -0,0 +1,6 @@ +micromed\_io.tcp.get\_tcp\_header +================================= + +.. currentmodule:: micromed_io.tcp + +.. autofunction:: get_tcp_header \ No newline at end of file diff --git a/_sources/_autosummary/micromed_io.tcp.rst.txt b/_sources/_autosummary/micromed_io.tcp.rst.txt new file mode 100644 index 0000000..dfdabe9 --- /dev/null +++ b/_sources/_autosummary/micromed_io.tcp.rst.txt @@ -0,0 +1,45 @@ +micromed\_io.tcp +================ + +.. automodule:: micromed_io.tcp + + + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + :nosignatures: + + decode_tcp_header_packet + decode_tcp_marker_packet + decode_tcp_note_packet + encode_marker_packet + encode_note_packet + get_tcp_header + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: custom-class-template.rst + :nosignatures: + + MicromedPacketType + + + + + + + + + diff --git a/_sources/_autosummary/micromed_io.to_mne.create_mne_from_micromed_recording.rst.txt b/_sources/_autosummary/micromed_io.to_mne.create_mne_from_micromed_recording.rst.txt new file mode 100644 index 0000000..412f81b --- /dev/null +++ b/_sources/_autosummary/micromed_io.to_mne.create_mne_from_micromed_recording.rst.txt @@ -0,0 +1,6 @@ +micromed\_io.to\_mne.create\_mne\_from\_micromed\_recording +=========================================================== + +.. currentmodule:: micromed_io.to_mne + +.. autofunction:: create_mne_from_micromed_recording \ No newline at end of file diff --git a/_sources/_autosummary/micromed_io.to_mne.rst.txt b/_sources/_autosummary/micromed_io.to_mne.rst.txt new file mode 100644 index 0000000..fb22263 --- /dev/null +++ b/_sources/_autosummary/micromed_io.to_mne.rst.txt @@ -0,0 +1,31 @@ +micromed\_io.to\_mne +==================== + +.. automodule:: micromed_io.to_mne + + + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + :nosignatures: + + create_mne_from_micromed_recording + + + + + + + + + + + + + diff --git a/_sources/_autosummary/micromed_io.trc.MicromedTRC.rst.txt b/_sources/_autosummary/micromed_io.trc.MicromedTRC.rst.txt new file mode 100644 index 0000000..4cac1c1 --- /dev/null +++ b/_sources/_autosummary/micromed_io.trc.MicromedTRC.rst.txt @@ -0,0 +1,30 @@ +micromed\_io.trc.MicromedTRC +============================ + +.. currentmodule:: micromed_io.trc + +.. autoclass:: MicromedTRC + :show-inheritance: + :inherited-members: + :special-members: __call__, __add__, __mul__ + + + + .. rubric:: Methods + + .. autosummary:: + :nosignatures: + + ~MicromedTRC.decode_data_eeg_packet + ~MicromedTRC.decode_data_header_packet + ~MicromedTRC.get_data + ~MicromedTRC.get_header + ~MicromedTRC.get_markers + ~MicromedTRC.get_notes + ~MicromedTRC.get_sfreq + + + + + + \ No newline at end of file diff --git a/_sources/_autosummary/micromed_io.trc.rst.txt b/_sources/_autosummary/micromed_io.trc.rst.txt new file mode 100644 index 0000000..1864211 --- /dev/null +++ b/_sources/_autosummary/micromed_io.trc.rst.txt @@ -0,0 +1,32 @@ +micromed\_io.trc +================ + +.. automodule:: micromed_io.trc + + + + + + + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: custom-class-template.rst + :nosignatures: + + MicromedTRC + + + + + + + + + diff --git a/_sources/api.rst.txt b/_sources/api.rst.txt new file mode 100644 index 0000000..460a26b --- /dev/null +++ b/_sources/api.rst.txt @@ -0,0 +1,10 @@ +============= +API Reference +============= + +.. autosummary:: + :toctree: _autosummary + :template: custom-module-template.rst + :recursive: + + micromed_io diff --git a/_sources/index.rst.txt b/_sources/index.rst.txt new file mode 100644 index 0000000..6cd5be3 --- /dev/null +++ b/_sources/index.rst.txt @@ -0,0 +1,14 @@ +.. Micromed IO documentation master file, created by + sphinx-quickstart on Thu Dec 7 10:14:10 2023. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +.. include:: ../../README.rst + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + + _auto_examples/index + api + diff --git a/_sources/sg_execution_times.rst.txt b/_sources/sg_execution_times.rst.txt new file mode 100644 index 0000000..1967a3c --- /dev/null +++ b/_sources/sg_execution_times.rst.txt @@ -0,0 +1,40 @@ + +:orphan: + +.. _sphx_glr_sg_execution_times: + + +Computation times +================= +**00:02.190** total execution time for 2 files **from all galleries**: + +.. container:: + + .. raw:: html + + + + + + + + .. list-table:: + :header-rows: 1 + :class: table table-striped sg-datatable + + * - Example + - Time + - Mem (MB) + * - :ref:`sphx_glr__auto_examples_plot_trc_to_fif.py` (``../../examples/plot_trc_to_fif.py``) + - 00:02.108 + - 0.0 + * - :ref:`sphx_glr__auto_examples_plot_read_trc.py` (``../../examples/plot_read_trc.py``) + - 00:00.082 + - 0.0 diff --git a/_static/basic.css b/_static/basic.css new file mode 100644 index 0000000..e760386 --- /dev/null +++ b/_static/basic.css @@ -0,0 +1,925 @@ +/* + * basic.css + * ~~~~~~~~~ + * + * Sphinx stylesheet -- basic theme. + * + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +/* -- main layout ----------------------------------------------------------- */ + +div.clearer { + clear: both; +} + +div.section::after { + display: block; + content: ''; + clear: left; +} + +/* -- relbar ---------------------------------------------------------------- */ + +div.related { + width: 100%; + font-size: 90%; +} + +div.related h3 { + display: none; +} + +div.related ul { + margin: 0; + padding: 0 0 0 10px; + list-style: none; +} + +div.related li { + display: inline; +} + +div.related li.right { + float: right; + margin-right: 5px; +} + +/* -- sidebar --------------------------------------------------------------- */ + +div.sphinxsidebarwrapper { + padding: 10px 5px 0 10px; +} + +div.sphinxsidebar { + float: left; + width: 270px; + margin-left: -100%; + font-size: 90%; + word-wrap: break-word; + overflow-wrap : break-word; +} + +div.sphinxsidebar ul { + list-style: none; +} + +div.sphinxsidebar ul ul, +div.sphinxsidebar ul.want-points { + margin-left: 20px; + list-style: square; +} + +div.sphinxsidebar ul ul { + margin-top: 0; + margin-bottom: 0; +} + +div.sphinxsidebar form { + margin-top: 10px; +} + +div.sphinxsidebar input { + border: 1px solid #98dbcc; + font-family: sans-serif; + font-size: 1em; +} + +div.sphinxsidebar #searchbox form.search { + overflow: hidden; +} + +div.sphinxsidebar #searchbox input[type="text"] { + float: left; + width: 80%; + padding: 0.25em; + box-sizing: border-box; +} + +div.sphinxsidebar #searchbox input[type="submit"] { + float: left; + width: 20%; + border-left: none; + padding: 0.25em; + box-sizing: border-box; +} + + +img { + border: 0; + max-width: 100%; +} + +/* -- search page ----------------------------------------------------------- */ + +ul.search { + margin: 10px 0 0 20px; + padding: 0; +} + +ul.search li { + padding: 5px 0 5px 20px; + background-image: url(file.png); + background-repeat: no-repeat; + background-position: 0 7px; +} + +ul.search li a { + font-weight: bold; +} + +ul.search li p.context { + color: #888; + margin: 2px 0 0 30px; + text-align: left; +} + +ul.keywordmatches li.goodmatch a { + font-weight: bold; +} + +/* -- index page ------------------------------------------------------------ */ + +table.contentstable { + width: 90%; + margin-left: auto; + margin-right: auto; +} + +table.contentstable p.biglink { + line-height: 150%; +} + +a.biglink { + font-size: 1.3em; +} + +span.linkdescr { + font-style: italic; + padding-top: 5px; + font-size: 90%; +} + +/* -- general index --------------------------------------------------------- */ + +table.indextable { + width: 100%; +} + +table.indextable td { + text-align: left; + vertical-align: top; +} + +table.indextable ul { + margin-top: 0; + margin-bottom: 0; + list-style-type: none; +} + +table.indextable > tbody > tr > td > ul { + padding-left: 0em; +} + +table.indextable tr.pcap { + height: 10px; +} + +table.indextable tr.cap { + margin-top: 10px; + background-color: #f2f2f2; +} + +img.toggler { + margin-right: 3px; + margin-top: 3px; + cursor: pointer; +} + +div.modindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +div.genindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +/* -- domain module index --------------------------------------------------- */ + +table.modindextable td { + padding: 2px; + border-collapse: collapse; +} + +/* -- general body styles --------------------------------------------------- */ + +div.body { + min-width: 360px; + max-width: 800px; +} + +div.body p, div.body dd, div.body li, div.body blockquote { + -moz-hyphens: auto; + -ms-hyphens: auto; + -webkit-hyphens: auto; + hyphens: auto; +} + +a.headerlink { + visibility: hidden; +} + +a:visited { + color: #551A8B; +} + +h1:hover > a.headerlink, +h2:hover > a.headerlink, +h3:hover > a.headerlink, +h4:hover > a.headerlink, +h5:hover > a.headerlink, +h6:hover > a.headerlink, +dt:hover > a.headerlink, +caption:hover > a.headerlink, +p.caption:hover > a.headerlink, +div.code-block-caption:hover > a.headerlink { + visibility: visible; +} + +div.body p.caption { + text-align: inherit; +} + +div.body td { + text-align: left; +} + +.first { + margin-top: 0 !important; +} + +p.rubric { + margin-top: 30px; + font-weight: bold; +} + +img.align-left, figure.align-left, .figure.align-left, object.align-left { + clear: left; + float: left; + margin-right: 1em; +} + +img.align-right, figure.align-right, .figure.align-right, object.align-right { + clear: right; + float: right; + margin-left: 1em; +} + +img.align-center, figure.align-center, .figure.align-center, object.align-center { + display: block; + margin-left: auto; + margin-right: auto; +} + +img.align-default, figure.align-default, .figure.align-default { + display: block; + margin-left: auto; + margin-right: auto; +} + +.align-left { + text-align: left; +} + +.align-center { + text-align: center; +} + +.align-default { + text-align: center; +} + +.align-right { + text-align: right; +} + +/* -- sidebars -------------------------------------------------------------- */ + +div.sidebar, +aside.sidebar { + margin: 0 0 0.5em 1em; + border: 1px solid #ddb; + padding: 7px; + background-color: #ffe; + width: 40%; + float: right; + clear: right; + overflow-x: auto; +} + +p.sidebar-title { + font-weight: bold; +} + +nav.contents, +aside.topic, +div.admonition, div.topic, blockquote { + clear: left; +} + +/* -- topics ---------------------------------------------------------------- */ + +nav.contents, +aside.topic, +div.topic { + border: 1px solid #ccc; + padding: 7px; + margin: 10px 0 10px 0; +} + +p.topic-title { + font-size: 1.1em; + font-weight: bold; + margin-top: 10px; +} + +/* -- admonitions ----------------------------------------------------------- */ + +div.admonition { + margin-top: 10px; + margin-bottom: 10px; + padding: 7px; +} + +div.admonition dt { + font-weight: bold; +} + +p.admonition-title { + margin: 0px 10px 5px 0px; + font-weight: bold; +} + +div.body p.centered { + text-align: center; + margin-top: 25px; +} + +/* -- content of sidebars/topics/admonitions -------------------------------- */ + +div.sidebar > :last-child, +aside.sidebar > :last-child, +nav.contents > :last-child, +aside.topic > :last-child, +div.topic > :last-child, +div.admonition > :last-child { + margin-bottom: 0; +} + +div.sidebar::after, +aside.sidebar::after, +nav.contents::after, +aside.topic::after, +div.topic::after, +div.admonition::after, +blockquote::after { + display: block; + content: ''; + clear: both; +} + +/* -- tables ---------------------------------------------------------------- */ + +table.docutils { + margin-top: 10px; + margin-bottom: 10px; + border: 0; + border-collapse: collapse; +} + +table.align-center { + margin-left: auto; + margin-right: auto; +} + +table.align-default { + margin-left: auto; + margin-right: auto; +} + +table caption span.caption-number { + font-style: italic; +} + +table caption span.caption-text { +} + +table.docutils td, table.docutils th { + padding: 1px 8px 1px 5px; + border-top: 0; + border-left: 0; + border-right: 0; + border-bottom: 1px solid #aaa; +} + +th { + text-align: left; + padding-right: 5px; +} + +table.citation { + border-left: solid 1px gray; + margin-left: 1px; +} + +table.citation td { + border-bottom: none; +} + +th > :first-child, +td > :first-child { + margin-top: 0px; +} + +th > :last-child, +td > :last-child { + margin-bottom: 0px; +} + +/* -- figures --------------------------------------------------------------- */ + +div.figure, figure { + margin: 0.5em; + padding: 0.5em; +} + +div.figure p.caption, figcaption { + padding: 0.3em; +} + +div.figure p.caption span.caption-number, +figcaption span.caption-number { + font-style: italic; +} + +div.figure p.caption span.caption-text, +figcaption span.caption-text { +} + +/* -- field list styles ----------------------------------------------------- */ + +table.field-list td, table.field-list th { + border: 0 !important; +} + +.field-list ul { + margin: 0; + padding-left: 1em; +} + +.field-list p { + margin: 0; +} + +.field-name { + -moz-hyphens: manual; + -ms-hyphens: manual; + -webkit-hyphens: manual; + hyphens: manual; +} + +/* -- hlist styles ---------------------------------------------------------- */ + +table.hlist { + margin: 1em 0; +} + +table.hlist td { + vertical-align: top; +} + +/* -- object description styles --------------------------------------------- */ + +.sig { + font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; +} + +.sig-name, code.descname { + background-color: transparent; + font-weight: bold; +} + +.sig-name { + font-size: 1.1em; +} + +code.descname { + font-size: 1.2em; +} + +.sig-prename, code.descclassname { + background-color: transparent; +} + +.optional { + font-size: 1.3em; +} + +.sig-paren { + font-size: larger; +} + +.sig-param.n { + font-style: italic; +} + +/* C++ specific styling */ + +.sig-inline.c-texpr, +.sig-inline.cpp-texpr { + font-family: unset; +} + +.sig.c .k, .sig.c .kt, +.sig.cpp .k, .sig.cpp .kt { + color: #0033B3; +} + +.sig.c .m, +.sig.cpp .m { + color: #1750EB; +} + +.sig.c .s, .sig.c .sc, +.sig.cpp .s, .sig.cpp .sc { + color: #067D17; +} + + +/* -- other body styles ----------------------------------------------------- */ + +ol.arabic { + list-style: decimal; +} + +ol.loweralpha { + list-style: lower-alpha; +} + +ol.upperalpha { + list-style: upper-alpha; +} + +ol.lowerroman { + list-style: lower-roman; +} + +ol.upperroman { + list-style: upper-roman; +} + +:not(li) > ol > li:first-child > :first-child, +:not(li) > ul > li:first-child > :first-child { + margin-top: 0px; +} + +:not(li) > ol > li:last-child > :last-child, +:not(li) > ul > li:last-child > :last-child { + margin-bottom: 0px; +} + +ol.simple ol p, +ol.simple ul p, +ul.simple ol p, +ul.simple ul p { + margin-top: 0; +} + +ol.simple > li:not(:first-child) > p, +ul.simple > li:not(:first-child) > p { + margin-top: 0; +} + +ol.simple p, +ul.simple p { + margin-bottom: 0; +} + +aside.footnote > span, +div.citation > span { + float: left; +} +aside.footnote > span:last-of-type, +div.citation > span:last-of-type { + padding-right: 0.5em; +} +aside.footnote > p { + margin-left: 2em; +} +div.citation > p { + margin-left: 4em; +} +aside.footnote > p:last-of-type, +div.citation > p:last-of-type { + margin-bottom: 0em; +} +aside.footnote > p:last-of-type:after, +div.citation > p:last-of-type:after { + content: ""; + clear: both; +} + +dl.field-list { + display: grid; + grid-template-columns: fit-content(30%) auto; +} + +dl.field-list > dt { + font-weight: bold; + word-break: break-word; + padding-left: 0.5em; + padding-right: 5px; +} + +dl.field-list > dd { + padding-left: 0.5em; + margin-top: 0em; + margin-left: 0em; + margin-bottom: 0em; +} + +dl { + margin-bottom: 15px; +} + +dd > :first-child { + margin-top: 0px; +} + +dd ul, dd table { + margin-bottom: 10px; +} + +dd { + margin-top: 3px; + margin-bottom: 10px; + margin-left: 30px; +} + +.sig dd { + margin-top: 0px; + margin-bottom: 0px; +} + +.sig dl { + margin-top: 0px; + margin-bottom: 0px; +} + +dl > dd:last-child, +dl > dd:last-child > :last-child { + margin-bottom: 0; +} + +dt:target, span.highlighted { + background-color: #fbe54e; +} + +rect.highlighted { + fill: #fbe54e; +} + +dl.glossary dt { + font-weight: bold; + font-size: 1.1em; +} + +.versionmodified { + font-style: italic; +} + +.system-message { + background-color: #fda; + padding: 5px; + border: 3px solid red; +} + +.footnote:target { + background-color: #ffa; +} + +.line-block { + display: block; + margin-top: 1em; + margin-bottom: 1em; +} + +.line-block .line-block { + margin-top: 0; + margin-bottom: 0; + margin-left: 1.5em; +} + +.guilabel, .menuselection { + font-family: sans-serif; +} + +.accelerator { + text-decoration: underline; +} + +.classifier { + font-style: oblique; +} + +.classifier:before { + font-style: normal; + margin: 0 0.5em; + content: ":"; + display: inline-block; +} + +abbr, acronym { + border-bottom: dotted 1px; + cursor: help; +} + +.translated { + background-color: rgba(207, 255, 207, 0.2) +} + +.untranslated { + background-color: rgba(255, 207, 207, 0.2) +} + +/* -- code displays --------------------------------------------------------- */ + +pre { + overflow: auto; + overflow-y: hidden; /* fixes display issues on Chrome browsers */ +} + +pre, div[class*="highlight-"] { + clear: both; +} + +span.pre { + -moz-hyphens: none; + -ms-hyphens: none; + -webkit-hyphens: none; + hyphens: none; + white-space: nowrap; +} + +div[class*="highlight-"] { + margin: 1em 0; +} + +td.linenos pre { + border: 0; + background-color: transparent; + color: #aaa; +} + +table.highlighttable { + display: block; +} + +table.highlighttable tbody { + display: block; +} + +table.highlighttable tr { + display: flex; +} + +table.highlighttable td { + margin: 0; + padding: 0; +} + +table.highlighttable td.linenos { + padding-right: 0.5em; +} + +table.highlighttable td.code { + flex: 1; + overflow: hidden; +} + +.highlight .hll { + display: block; +} + +div.highlight pre, +table.highlighttable pre { + margin: 0; +} + +div.code-block-caption + div { + margin-top: 0; +} + +div.code-block-caption { + margin-top: 1em; + padding: 2px 5px; + font-size: small; +} + +div.code-block-caption code { + background-color: transparent; +} + +table.highlighttable td.linenos, +span.linenos, +div.highlight span.gp { /* gp: Generic.Prompt */ + user-select: none; + -webkit-user-select: text; /* Safari fallback only */ + -webkit-user-select: none; /* Chrome/Safari */ + -moz-user-select: none; /* Firefox */ + -ms-user-select: none; /* IE10+ */ +} + +div.code-block-caption span.caption-number { + padding: 0.1em 0.3em; + font-style: italic; +} + +div.code-block-caption span.caption-text { +} + +div.literal-block-wrapper { + margin: 1em 0; +} + +code.xref, a code { + background-color: transparent; + font-weight: bold; +} + +h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { + background-color: transparent; +} + +.viewcode-link { + float: right; +} + +.viewcode-back { + float: right; + font-family: sans-serif; +} + +div.viewcode-block:target { + margin: -1px -10px; + padding: 0 10px; +} + +/* -- math display ---------------------------------------------------------- */ + +img.math { + vertical-align: middle; +} + +div.body div.math p { + text-align: center; +} + +span.eqno { + float: right; +} + +span.eqno a.headerlink { + position: absolute; + z-index: 1; +} + +div.math:hover a.headerlink { + visibility: visible; +} + +/* -- printout stylesheet --------------------------------------------------- */ + +@media print { + div.document, + div.documentwrapper, + div.bodywrapper { + margin: 0 !important; + width: 100%; + } + + div.sphinxsidebar, + div.related, + div.footer, + #top-link { + display: none; + } +} \ No newline at end of file diff --git a/_static/binder_badge_logo.svg b/_static/binder_badge_logo.svg new file mode 100644 index 0000000..327f6b6 --- /dev/null +++ b/_static/binder_badge_logo.svg @@ -0,0 +1 @@ + launchlaunchbinderbinder \ No newline at end of file diff --git a/_static/broken_example.png b/_static/broken_example.png new file mode 100644 index 0000000000000000000000000000000000000000..4fea24e7df4781c2c32c8d7995511ac89e953145 GIT binary patch literal 21404 zcmaHTWmKEb({>2%?jE#QaVRdqp+KR9;KkkDwKxQKD^i>mcWI%x7Y&k9+}-8j_dn93t*7AV|HwhohmqKD$2joW8ywxydML zqrEnNH1nv}&*;vI5H|n-lkmR>0w6n=?Db1>cR5{mEhkHNug|U)052~uE*nQXH?z;q z7FUG-5?6Je82K9+|@BAhth9CST zcHAcNv&0`(9}ayi)2wQc@&7-~jsgpX(%s?2qY+ic?=2k&^fkcbJ3TknEkKtDe&=cQ z0sPtmK2NQh;D#Y$&7V2Y^6sv#*~LahMU`V>iICenIfqO4taPuTpf)ZngI?P{O4u`s z0y&n$M&@6Xr%?l)|9V(8`Q9z9qwelr@uMg5WpxhDtsm=(Xg5w7AEldPGDW?Jy-Nb0 zrg(@%fC03Cai>T62zfwNHn*;$2*qH0d^@__p>5R6EErAj5#AlsOa^i9D#F^?Qw~A{ zkmHTp_)*CJu0q2SL>9z3HHd#g3=t2xx`O)jf=n3THGrF2mjgt7WbgLWh!%!QQ{byY zs4-Exf&)U3dmE4+9sqvyqd4YET>w?7NpYH8tM78bHVA886=S{#+o|Ww%jnaeJ@67jlAh$qiTgZ(5vFUE9+*NvohRuUx<&0xEfDR#2V*@-%Wn z)GmNqmvj+T7b9*$-=#YUnShrTMGRS0HVbYs?jMgB%&9?j>ayO9JjK_0E9k?3{bd)Z z0Ose$YR}|tK}DQI^=2gPIWVn9lT1ja%we!|k_o=aQ3*@{KeR;j{RT)gE=%I8)Y(Ll zn1I1yKmR%TA-+XndVBuRBJ~L-(p!aa%)dz2>sNJ_9Zh_TGlP=t6~DyWyE~uXqKVJh z8x@5Trj%SSus`AIm;dM=Jbc{+kuIYfUdS$LV) zL$}h_C6R>jKDq_3Oy}rju2_$^Hv_H}vbIElV|)=~IMVZb=f2&6kSHWF{AnESfkhl} zxFDP2TJrh}ed?Tmc7rGdnN~XUB>Y#o%l;^W{9W_7##akfa=UUNQ!H-KSM%17Erj(Y z+nd){QocQTN}~%#KzWoTlPqrvVT?>WJfLpy0@fFbYQp*8e#J%r14uczC5wW}BwKo+ zb6{uC9+xUyaVl6R>G&kiRY(6vSpXExm-SR8n0SrT@}VTsL_z+)AMImlxtbZTIB+<7 z2`TV&%WCF2;G9|qzhSEVfjL#$JK|3QDT007b0O@~A0r40M6k?g`tAEaJ>o4sF)xO#dhJal5wZh>KXSC6%3tABw}3V^TFR*3(+WA-y(f$M^I zQ^MwR8khCvwTmO<6&PQQLoob}&ksyzvv^@+b+}u(|2P!t1BRyQ&Qtgm-T$re$4)=q zpoUBOR85SY4>i^LC+Cgw%8Ok@1>4SoFu9Fr^eqi93KYRjk zlO`94lDE45fCTD6g2-CSb|NK=AR3{rU7C5_IDBc075!s3ekC7=AP=raQ9bLBP2#>Y z_930Wp^fA1)G0I{RAjV!Gj4k>5emEeRlB#1fwV3t_9kTXCH`iwEg`O9qs>HNMN&LDoyv=@F%`7Duax+Tz zSt}uKSj@$X>yB%z9`9`XzvECt0mYb9_|r0(2Hlf@6O>j7^}vM5V&#Nd){c88-95qd z1b|cVK^Nh`kC(^hXMy)upb_AW{0!O3`GI9q!R+_{*{3SmrQj`pOz{(E@8ZhyGs*** zeW zUe~&?JRObhW}KLdBaD?;#X_M|Z_(5`0rV8R4$`!&^-Ztq6Vb<3QebD2sDcz?*8H~* zBz#2C6)e-zQ$>p+ps%Xl^X@DwBWHy#xhu~BA#PBpFhEN)sQZC3{*mf!(aluq)eS%2T#_Ptl_7Di}$w74yFK6GA&WWB)C|cQaURdtej<9uz zl=A2(5L{#`s4*lKE4#73hY~BE*F!AzNuJcYFfTGOI#ong(ChHBHVzzg!KA{bH6bZW z^sKi*RvHoVfiHcEzgn9@jt#Wr|2XFt=e6`y+46I@4}K<@;uVw5_hy z(2ShmC{M&oAN$?9lp5XP_Mr~HY9~3%Z&@ST2>=vwdn!1mdNYL5>Ipi(797HR`0&sTA@UBdE z&se)5OPto!iN9Zk)N;7VYo`ql^}FH9*9pxVx<MySO1Lixsv z1k~rj`*5BaVer>{J-zo$*>7Zl6h@{lrv5T zCySy2X>XL%^)lmZgD-Z*Y8@0UgOWHb-<@_!jkS5 z*sJo#TWOY(IoJ&U80-4CQwwd>T(3x$uTW{44)V@y7A^QY;}iKZ5{Q#X8?K-(ORDfw z?VH!N@m2Px1-lhUWqT5GK8k1TMTC10zhT#dmOZJDac99>I#^h3-++}+h%>5w_p5^S zINc*Cc4hV*>yk!l9;dSHC5nWpvo13viP21cJHa^E049OFvo9xoL;4cb`DG)#LvKXj zq-fX&`@bZb8iVT-N?Y3tB@ylD@jAk=lGLCh;E|`7_Wb9LNbQdf7SjZtq*IjVl!C!& zB6)@?J2S9`(v<=UL?$P}H2VVMdMjyF2yOTC{x+5Wj=pwaE#VvM=(KkWIC5Lw@5?Ab z8!J;SGOQ;!U8Zrvq zx?yHZtn#RxAnF(_oP>Wg2~eRdO^_>DB2vl-eRY!7)|rhqgLE4moK6F6Id}Nl81v+Y zxBtRc`gjN5JK|795OAUMuq3Azm~{DtF$WWguTP?da_ufm=iL+>Pbr8%$W zzP0QWFKrw*h8x+!&~IZVmCoz7KoM^6r%0qQXJBllJ%w>NT9JaE`DVE(3eP05^WzTW znk#Uvs4UL2ep`C!*39p}Oz&486Opk3$!y&@SM^?KCqT{mAfD^b3+CwoT}ExShhq!{ z;4p&gkwb|?I$ix`Oc45U`4H!gqvll^@9*@0Jmjd`WILaQaC3vebD*>M!2M65fB?B- z-UqstW?VIvPxZShYyu-Rw&IUttoKMBB=B~OoNSBM=FkQVe^9L+92Fna-ePE zC2o$M{nOK!b$HbS(~1SG_$n@S!GQh{(;GZFL#sz>;ooDmeF-g>Tz9ui&;H0|4u;lHSBW%t@-Y7QOV4p#=+OwgsjHp4C zbI>=^lcJL56@_?4+LT|Pl^>k1N?)~J@I7?+0iNjobS-H>pC6!FosyEWqDLRe8kI57;eB`oYmo%1-+#tKH@9-9$4%CJ^|sJ;fDWo$>aqlnO}n@9s!x`r2SxU2b+ zDykzI6Uw9-$!uiO7W$iax%2(AYaoxH3v_eZ@t&57d8^#Vw8#y+aL1xX_1CMIJlnB!nl; z{m>4p?ox2AOBv_gsj2Vg{|rHHn{%QYjmSN{(Ku}6h&8y`OdEIrXb4Q9lm8JjqqT@RO{xKy1L4}+IW5wHbh~E;e?PF zDQI6tVG>j7($U$^?6#;J>)@18MucPSb#N*-i@gQ-(BdN)<8uAgVt)Oh*Szk2vF}eP zhw;q=hO%o-q{J^xt{b2ELUsK>qw)X5RStXe<%Y@RhZXCN`Lzd+FvTrTI~gLu<#S7l zF~n}AAI`xa%V3O4sbLBan6bB7yU)R0p}C|vaN&`Ri?Rc$W&94=D62Zep*9KBaNU+j z4OY(PA)?ZAgSl>Qob2|uf1Z9P_VAD^>GZvn7^E_7kaB#t^M~-2A}AN-;0z2R-Mi#y z2@*bilgcB&nEa#wefST@d=*{~EFtw+yT1eA8%S+t2GEWsiQXx4##V9S!Kr5t+>6@} zR5Y7CS;Bbeg?3thw|#4uYGZFlx0uWlZM20cg1uGLI(hRN-`PG7J7sMu=YSw%Pu=X~ zvv(_%^UI%JL%60;>-*yXgD6VZ3wl+TMlGdM#)}aBY5%pEW$i59(ZQ5IYjUoEQ?`nHeP28ZfvXH&v{?CTqtiluh6{Uh%tAdlfVO z`|F-aP)iVbRX*~$SWMEjnj`f6u`KpH?%YM>LFjAbaKM?&4y3Xm57II@^N6>tr9_A&S?p_VIfB;Srz%3DUUQaHwb-1)k|ShXOy5O;%w;W z3eCsyIP~vR@KrF!>d%WNG9Gk-X=ZK+25AxI;UMy63*RY&wq6r4)L$5uR?xRJ#`zW z4w5$=Z4Vz4X?GZ!8A&BtD|affv5rbzx-jY=AU;S zXq(@?#_mQ86md0|&e;%3#78E|o`#Xrk?z)kjq{8QS(nIU-)c9sQ%LHr?)Mn7f7I57 z5TKHtCh`ZM>h~_<#Bx=mj+6>nWiNM^x23JpKmCSy#rtDW^MxW5Fz0jWdXC0HA+9QT z{2b4Bg6X%6vZ;asPU~C8Ctp6TL=}zWp>uz262`t-t#banx-5dUx69pTgknGd|58t4 zW!rlPG0%H1OVN+6CO+8EnrJDwh3>?bMsA|9uv2+3LHDkujkAXR1(? zvpVYZ@T?&%Ck6-6{3EsL0C3+kEa-Ul@o#Nrab(A6et?S2wL1 ze1kalLnPVc)yOUTHur1Cgf0L1GwW>i1glI(bRt>2A4Ksf(Y>!JhpA51dhSO1E2 z0?L-=l3x9I3_hSuU%KM05XfZ7__ea3Y8iM5if>^$swANwR+N|(!$j{DMJSfVZ0|Rp z?<5kCa2UDwqsDh-DeRfcKbz({)rB(#wVEYddbVubG%x?>VhGCwKjz$KoJ~Wk4lb+r zm3r$myeu`+ehQrr&imvAh;MtNxQeI5TD(&xu*X!j4Qah6cXx1~$Ym#gpD$Nm$8w7O zA#{bb#)`RKqUD?C-mD|(VI5o_w4 zXPy6mS)H0GCT)QjPR=h*SkEZ+85m@W2rgjI253bQ#0gXUu@ zP^If_dvuKg`v`W93}Y{v6hw>BZZBbE!4~2oi@(Hy_>B12AmCCZ*uTyC*VWnaficy8 z7h?>gro;Id3_Lm1_$s!?1jE8N`S6#Qa^R8RM#$yF2+a9-Fb90*A&OKR;z~L(xAI`L z3v9?6a?+WhoX2SF=DBNX^>ia!mH-9uIbwo=2BUu+2V90+@AQWt%8qA8WMUN|-K~>= zg)am!ZGn(+Xaa|eI$@|UQB!RsNoxd_331)c<3OfSh=*d zo1Y04m=uC^KUfH=GaXrCkB~`{gU3pHIj_{9IDF{HV@UbfZNE{U^Hh0%{)6ed>AvC< zJ03AR9}q^jajw_rClx=mkq^vBx4PEb2C(EQa;A6nXNM3)jTOqSZ=diB|9zHJuUR6C zPP-BwIrXIX2)gOB`W!x|FROBfRd4V>r_%lHg+tC|+DfL4FXe%O{(f}#8HFIu!RRa;g^)SNRpiIscDtPq|DD($=JJ#FB>nQ=!A2G2Jypl*5s`%~F#Dk+K zH!IaE13fSB{?vGjvkh}OJ*nYx|4MyAZtLb#>KLddS!yNj7Jc1Wpv-C8R?t*90FQ~2 zuXZZubX&H&942(Dk0vp-zj0O=60rE*81bTCf>^kp@G3FBYF5ucptMm23*XDn{7_p1 zg(Be@ZM{q>R(vJ@qua6OyIl}%RFv(={_g~!YJ(O}~8Oi@AuuAzNo}GxGzDmlR#!de|}R zhriw&VI@tR;vgm3P=?qN#>KJiB}x)JcE^=hlxI+7t%5aNon25>VI`G>cWYM}&b&zhMF~ z3F-r)2w9>+Vr%kHNviTvwbajPoWq^DjhDA@dZo$G-RTphKBTmNKfxf=(u{I zi-)Iccfh&=u&WxmRG53>r`wY?5im8Xe^esP$a28wK|!t60wnYVa0(1uv4V*0qlA*> zD>C>)O6wddYqz_;_$G?LJefxGIW}0&a2hLiRn}3}vd>LOnx~l&Mn3hh5}R7MJ>A@e zaw31MH&e8UNCa9$ZR{>$YpN=JKDA~{zR!OL*HUCz#X1k@8v})tn9eFf^%s`m71Z0HY0iIWe|*e%LjYT(jjr8AG#ZIO~b5 zs78T+D-G@Wys@s<75%#~N1P{QNMO3!XVcWH2FVHRsJdkV-4(%fdpZ6v?pNf+qQ8*Yw}r90gUI#i z6TL0abX;@lYk-7t^9o%r#%#oD*q`LA*wClwhnyy7UpkemMC5NUiUEH0KNVRaL%cTK z6ws+=F4J`Yp(^R6&(PD+k))YY&5{di6;8c!B9h~2&KytR<6+^RHDbUx=2U!nq{Jubbvk~ZYlCU=Uo;iBrN6Cj`@@~l=fC2_;gH$h{b%pQ`+03(si+T7J zEG3U@Y{jD)bslndCt>Dqv6BiR#2^Gu?#xF2S&i2r-O=?7V?Pp{>bMW)hh|eYwuvr& zXf3>@pZS8okaSsE-u|=T=Qr%YRKEg4DDfh301hUUI1A5;x2o9@jbh`8@eM*k@yye> zmpKHi_e#Zl88u2i%XIp>XnozqC7Ya~X~B%6T3`N@WZ@8XnveCyhGh_$$Zr*cNhqJq zF5clas8A!7y?`5~R&f4TDfy4Ug`=UyZhvH~@Z*cJkEA_{@_#t9g4hb@C*4Z3TR zkk7G}Tk|E~M!$$F?r*S=t)?%nGdoLS@Ex8U47K+tXxvF8d)_YH2qO-dBZ3a?2W@1P z(ou65if!1vO)Z0FI4(h#ONkX{;?Jw!r2k(nfU?Ns%ACo1gXJsV8}=(~$BO>o@6O$# zy5$QR7->`^3r59;`pAz29200Ik8Wtl?xKiPnY5Z3|EDBMANr0c?US1PkKV(xk23|n zbkliPCVep^PiF$QPKrnS0gUns3JKg z{cCR9%Vnp^3qN$=yqXF&#-w{7)oOel`UuYUD|j~;n&_2GI=Bhz%$W&pMa75vWH~f# z(#$5MH8MD}?-dq>3;|)1H@P~p(MPvW9<8lh57j+mAe~oAuDYjxhVqjS z+FQ+49LXQY_Y92`qXL=X>}&?N-#H`QO2zcIWj9I=nc>m6mZ zeh;y$Y-hmB0-iKQJ;yWB$_neq{Whrgfthoa+g3kFB}u?9+v$aZKmk`aeLi7mUpc=4 z=si+OcA*@DX!!%pqFOQyCP6a(KIBro`xr7WlvLQp4@nM^Ku!Kll>t!KGU%Je-Q!=E zs_A009TpVGqh;xYkP*Q0;Hk+1Wy)#tM?->6&OeLRS)tr?6p$ zp%h^qRP>%`G>iH@db7+ogmkDKpP`vJqPMq+D#?u>KnZ+7s7fpANKUO+-dcGJO$7O@ zFv7jdJg=O)Gibn<%8k1ZPaTTf?g?D0{~F(;$P*C>R_#iO_?C z@$6-dyIw&W{Jf54Q68Mu-ZsBe>Rl$|FANXyrP{oX^gSGyzVs z^em}!VFDzO%0M#A@)K34jCcJO06alAdXWUBw1X?SZpQq#;Bsg=)`6aEGQ9mpvsdRpjmIZuE zf-%C<-p0t@MyULiDnm4or&3iI36h{tc)#2)cN}Z_?Ez@nemYo8Il9^GERD!f&;O89 zeZaK&%%u<=hI#>+^Zj|*ohb7nDU0+-h8z#_KkA^bnCltQd(C?YOhkMCAY0JyPu@s7 zu1gUeh=6gkVz_esWRwUyvF=+9EC6ZPnw%GYNHet_h}{m#5@J+(y82Xb#1zWgyOr9( za(jD>`Z7-io*8LvquxmdQg=S{t#KLNoUe=LK_Z02H-#`mOZ%#%DV6(e2fs~MUJ}&Opw_^03G8P_&8Yq{sWf<8?fopA?-<=B- z%z4ouK~5+Gjw&H4AFrhxZ#;&43*sE#ySWZBkL&mW6PrDB3mINnWpw9-4Gwq*;FbNr zK4qVoKmHeN9Dd*E#-?X1<(k}9R!gJgZwp%~f^2vr)OfW#O3V%f0hMQ}XI3$7Q%`l^ ze%*UaoBLnJKBs8-pAf?v+O)>x!kbvw2JTtwgKZ%}awn*gH|ax_t27a`+dx{rq#?#l zu7yr|fpgKG z5K2HzeY4QJB|B-E4c_58T7rqX$c-#Be`=p|*h(TFV}YLCFfIsT9=q(gn}vSCOy(2Z zc4~5yIe#H7^oQIHc{?hn65QOAe7H`c=^(?dU(aVE{J5-1he z?pMiL|Cl@Qqb@Kc>nkr?2=|c@A&PUih~rau$?-IIVaywZe+`%o=Ja3ZW&A{wEh+)E zlutzE;t?KNe$iWA4w6KCq(7OUsCH7O!bWz)wXHC2eqaB0YVD;_04F^`-e0(v33+L? zI2fj(U$S}p*igt8922gXH@`5uX`3I$F2>Ulc08`7(|cXA#t8$&b3j#&>|msW4|xD3 z?&U=NkkCVPVA`=0iBj?gY8IumR_i;r_rW}YKb+*5e8^q(NplQth^6xi>oA>pln)JJ z73)EW*`h&(uBUgbuW_o**WSqRxmbrq`e@#3a=$ zHLn$WN#)E3H_&=`F56H~WT+VZRARc}zb!-u zG~OQUdVlP8b@~hKrH?UgjV9?qutbR!Di??aYRM{zSCZYn!O}kZA@cKtq|fjuOoL#1 zUHa%&wD?2&n^!zqJZXX`*?df&mhcLOYl4Rb?j=rP8dC@hX4a&|Mci~sKSu!;DFy#} zprgLtmikiR-Z-am`j!{LS3p$(0kfgOrhJs|`=KvVm8;YjZh436@zB2`b0hCyLud*n3BlVys_>1Evzmmn zk)uX-mTHk8(6jO8Gc)O_{mT*plf@SX{0l1GrR@s5_rMo!h@llj)({q0JLiLvHYOC= z>;1j^d%igd(zeoJ>9;vUtiy+%wJYPisb>bk8?JuzEvM&Yl1XVSx*^Y!v!9uwA1RVX zr5b~fV_4EZMf|fPk24*3N*W08DxYQ^C91t8yBDK168C85SZ&hk;^Exg@p*atUQ+>-t0{@K&p{FB1tiMs*D+&3sxkBH?HRIV( zWw_+MF#a%;JcE#MtmcqNF4^XNbERl>$0+H;fw|vl+|{>b}qf*=vOFZu9wewQD3*QVmd8-wZ~*OdAXd1mIvoXiyW^|vJC z%%w5YKiyTsRiCzWRbKWq+CZCKhc@HA&CTo&QaHUnabc zZvD~&x~q`@A#9t}e|iqB?wOT!{0`kS?LfBpCt>?-H&1zzs`ZUZUrXW6bVBQ`=#SU|#}Clv z-+Hg!?b_qIX+&?^GeVkFEBVlW^J~ydr2+!u;5D~J2(BFY?gQl|Gwkn=d1mQHoKC~j z+Ft3d+w+G+L@p`P>#Lz`kx~K3Z{EL-TPTX4WYtGy0=(Jj2q82J2#g59h<&v%i4c8LVlK)z9}>3G`3KV_;(TQMW-4 znWiz(;_Ox3K259YG$iZ$&;ZoE_1{*U66-yfr|XK8sIDHQK$fP`0c`~=FoS^Phwn~| z_0K>DD4-(bAc@9VIPJoPkP+-nTmNNyV~(P#m+>-)EEFve-4(Y1sbC;|$kcwK4Mt@& zz(W@O3tQ>av226jxl%$AYlkSwtrqHCzK3`9N2Fbn{+6kSXG;m2zYjg}BMU&+AGOj) z5h63%)%oS;o8ZdPHu*wKSBm5lduR_rH5V{Wz@lKXV#PpO15-23)s1M=m`Mpa(+ZSS z{h;rxJ8*Egoa@%Yq{`%}0J8HV+r#?jC+m?ChyA#C*Sk(BTv9J@T0t% zJT&(V65>zUFqldDa)Tg=HJ+#`K*0PJ?n85de|8kgyQCCXt%g4JBX_x`0_!6u6&xnW zC0t8lB)1NuDd~ENsqVSaC=Qp{aNDI!7BnwpKL`&wmvD zD8xSs7f1()m+^8B&D`2Z_qO${rzJ{}&iIx4AJy4OK{SQT<2RL9hM&3QR|{@rk2;MU z4>D6asu~p0`-IGf#Mgi)go;PMtC}Xdre>mDhTmZ)-DA_wlGd%AsveubN4viaL_N}Q zLNy%{__Iz5Lw%1jt!xDQ4-3X=VgF~jO{zn?uW>)3V(i6$OaqTdx+eB z2yE}YQoJrmjG0Jz_RokQ`2F5;ej0tR?>;H{`-z?sk!aDz^9wJ!NziQa0-7zJNLXVr zkK%Cyc{^EwO!x!A$d|Xp5=gg}TlL(js=l-q(S(hQAF;V-wS&Y-y-QRpVh`jK<%FtE ziYCu>ihKc@q?bK3p(5@57zrr9DComIy><(R;vd{YI{ffrJf6@X!Lv!_>8}-fAG}Uv z;L3mU#om6H!1VQ_lRn`}Z_aY!N(QSpvoS7iEy}}s642qIz z9$tRgD= z9R4jh5R$nIEcWxYJQ-rPlMNTM)sH>ri7m=f-5@LJo8IY#75~C7d~+JWzzyoPk|}#? zsj!%;D912;qZ}@VOhpavEM!ixsCFR?dwc(@|HwaEyY&H3d0~)t)dFC$T$2f1V^9n4 zRz~W2L4ExE;R)eh%(wV(Ykv3QAZ+N)Kr1qH?u&laQr|uTlVp9$Dv+CrUw1e||HyFq z#oA2!ryvepdEou(*pEE%{&UD55_>u8U{7oOaoI?alvaeSF+998aKv4+Aa28saFw_l zTbQf-NsIj8!10v$PpIwpx;OZgk`Wwj=tBgf%95|ZaguIzZMB56X2KzaJ-1)3fRXzA zg1_Q{Qp44p^2JXU4x5jA&otiqR~v^qJ8Z)O(RFZj0i|xv(z#;9CkhZ*#BpMPVVRk^ zHoD|Z80AmJ{q=166v=vOp_Cm-myAD(^}yHOmO}I$R?~aq@I(x($~F#msX!u7ffc>%-Dsk!_u6OKztV=$@P0y!PcA;T6K$2pWt_&+J0O9G91KA63AK_)6$+` zLhu%AbUUi5P@79)&CgvS%E$Rmr)ZfX-u$hC;ezLVOkG6ii6wYYT9%-&BI@On`PpjH zQ?if$Hh6QyFnFc9DkLM6xoM6ncJa5}p&j?i>Wcrl2@hL^ilsRt=?g=kJqy_WpQb6D zs0#=E&jn5UW2Ko^<9a7uH!}~KR`q23VkP|{FNIP)r)0h0zMEGJ>r`?1oAauGj@m4J zvEatxwI*6Zip#g7PwDwXYSU53rmzl5!1kTl13hH)w(#=-z8!!f24HyN$sVJWhgXR? z6j_9|-=z3Ql(Ox$!o&4wMAwWoj89Y5+AURaNZ*AJFX?b2kr4PuYKwmr0Ph79V8!Uu zd^sTCBMade5`r@2%2@>+ZErA_$Wq4sM1|aq%4_S{z5V*^ae|1673fg$(8cB-Hqu6i zeq8GNe()tNEp_BqVUA7B&R6J9R7Exq$dr|KcxedGlMl*=q$n1jc!rnTr!* z^Q4nxQ5`86_|{OUa`P(b43>utcNz_IsgLM=I}Nhq=(?2QsXsr#ySLa(34?L0xJSyt zG;c*HA*dP1hUQC8s{ps3!YGhxFNW3iQKmWpI?@yF4>~Rwdxy~+((&~1Me%|G6IMdR zCm1GW(kgy*8&r{8Qr*n-A|&_ukAj-<9^xoc|)6R%@j6Jqf}^CZ<4%ES%h%e;j8s9hd27>n)Rd z&Qsj+v`4t3jz69lMxLW>8z|t&c{C|qe(`Xp58>^IO~T9-O(j(#q`N^?d-Tot*jodo ze7wskx;5l|;=nAvT5jv&4N{jvhi*RB6=iPwDuy=b_t_;X4Ch|?uOGYzDV_A#3!5Ob z4Xa$o%Y5>)G1SOCeJd-{<)ImO8&UXfvd$s_vkXU|aPzlQ=ucdHJ8tC`fEw3ABJ^>i zA9@h?*Kwqo)lmS{%iGc|F}LPr)-ppQpAH7~zBdg<*PN6+PYDO;Q}DH~1_enqQ8D@C z4HsRR!gBDVZ!jpt^3!_7qN_V?hJKEJa%HR&&sVN;Nqyn64a|<}5iPp88YHk#qAb4M zKlU905m^QBX}1)w13kX^5UegT6aM&A$Pc{4`g^0XvJ0cP>dRcIKLL^Mps@gHAOwUIh@@&a?z0UEG9?Ln>igB(P5`cVdh{)f1(=W*$DiW}!1aHN!v zd9A+?2B>?KZJ&s*h^SQ9NO??BQ^x7mow5RMzJAt{#B948xe9%g<0pnu<<3MLx}KT% zug&NT$@rwH%0(-Bw~#dgpcd}TcUlb9`jZ2Eu_|I5;^oh|(Jt9xFa0d7f@hLmAwH-5 z>NugBW~7%(2{NBj$=z|sqhM`m@2K&o}bOj_d9cIdH&PQPIV1&1@Wa9_?KZHEmil>nId(irnzm zI_T<-`VEGVzzN_(uc-J2kMYl{Chi^msgXu0nBgBqDnOW{fs;P^bzhww)PShD-L6Dt zzrm<){!}AnMgyxHdRBtt4k=T{^R|y_G)&i#P)QOGoFt!jTZw^xC|K4Yv`zJ}vwyJ! z9Wf-$b)tiADT7%qxLWkPtO_-Lza4cQW}qPSpqEOlctjHBQyjB5ADVPWc#{0^HD@QW z4vSg}a+1DcUv=zhIs{bZZ5fuz{}=3_IxnwwloK6{l9engx9N*bqs6~y?ZL^eF8?^r z|6(3M1fz;1pbsl|w+cIfp+JsM;@s`nqP^ZDJ||cj{>jrdsC30hzIt3;2ol{VY-RO2 zv>Y-ujESm~gIq=l5IQIa=l8bawFQ%IThP`PcL1U@I_wC85W6YaI#9ic7=at%jAbCh z4M$eZvxI0xg3wzO-xp%%o1=!_g(?HTu*SM&|?C3-NeWLT*8As4IZfy2+%YHU_$(4 z@yTywc$N?~2`pXlmL{1TuJyb!CB98Ue=B?|lKzD0I_M!kPU@*3v!mOGuNl!?59lb8 zmPL)+=#!DvxYPSu+JT1s1YK~Cp@$Iw#jm{kr z7w<6Nyj)F#MEo=E7x1jOhJ7P^s}&uRhe~=VN+mo64+@+AW83O?OVxHaoRITrXQd`0 z^5Xn1Q{kIKinEjcu*S+W(&1UHjDE0K# z=GoEEDYKIIzUaK_o4+{v9hXp=KQ+>02eIBScBp7G4JhtyA*N&Fo6$_P(iGuk?vgMu zv?Q0;8c_asXb}CSTgstT!*JfJ2aP;B1c>874%ahzQD(0Qk?Kp8mLla4m%^OX3&;0+ zL203k7R}s~u;dKN>Aoq;G&*Unb;tDgApP+BjS#LiYD5DAk~{KhyHjG^Q_0}!?s0t0 zyJUp6n!F^+8)zx{gk>M+8oOq20PjfDduO$!Gl6{1*8^ZX?*~{b^|x3a9Hl=^T@NXb z9glACXjfjta>q(#`~KM63IDM?M7uN$pb?hrEofM0(8{UQg8J|OraJ*88~3wK&qLst zn%6hlFQLp#b{!fsW1k53@*@Z^C_j)(!Ybfza6whkF@S zUS<_zU$;4%51VbGz__f78Dp2LG45aWrrXx!m4Zv!|8cs*uce8psL^+d>&0bV#w8Y2zdsf>13&89>?bf;GsVf6qHUtOv8IuKQ6&i#(GwLsk zc8byUnea=Ond3Tx;yw>u!_j)VmW$k-HlGW-vIfUjZ(n^*kgB4a`k%A1{U$ZYwVCVW zXuchK#T6xV6f2GEijIhK6+z9+j)>bs)IFfZ|^ihBM; zLy+sin+8-^SA9IJ<`zVFaLE5+INF3ncCgex?)E^#?BIm#T8zT53JX9cF-t)skO@M? zUqad2&OT5+_0~X#>tXV-W59z}xiT-9~aNgjyy=cM8^*|1v%nJXw z$Gy0u?E(VD)DQ>xDOSav;FKG>vmH2YXhs z(j%=z;G&bI$YWXVkTb_q|iHRk6QQ>)v7C78XUp z*L5PnS`xL`M4B2@^=$Tse%}WS=pLJVYK{wsx_=V2`y)Wj*9x#3!8G^%%Za{{ot_ zOFCLzA;-G3TbD!6i&K@(ulSjzFV3;QyHq2vdZpmOT3q!k`Wis5=Iz2U7Im(j<{(NN5$ZLlZ z>l`qW6z3|jW)K|-qcE4Z*pZkjWqUQTp*CRDC6%B<#(UaJ+!;G_Ne+H|OoE`XN5}CS zN$)WD0xgCRqpwZ>owX**#HSh}$~o0Bv!JWWFz>UMSpI(+q`F5Uo@&G8*W-=7O?xF0zEdYOzSV03 zEcyCnn&Jic`ynBn2)Rfoh5sqPo>a(GVQDt7!s|Wom!~mdV%^*CtrYon ziGP14jwNkmp@7(+w-nic-vqc=VBeMOx4h;b<>#P|yvvU+v_q2{U~Xf#E$g;_-mOuriujUg#o~f(2&*o^E(?pbQ|cYmLo~ll)4~r9RQJ|c8?Maz za-Ieyu2`-9{C!odBbFh`;q#kx+lSG65?*TKv$8^4ORyO`Llhy8CK=W^4g72_;jL@4 z(!$Rm-)ma)7B4}472El9q(rbNub>^3^RTm(d*X5XSoiQ`sm%RHn&m=}Nn!@jK)B#H zgFHdhzXwE|TF^iOoq;~=4U?)p91F^O7SE+8_SjGjZ27X2!%Hmf?ms4a*PNp&KC-HM z`hB;&F9^G~rj~ybuZ`q8@J$2d-00w`$b`N>h{j)`M9q?5O*w2yH8GG_JOow1FX%Nq zmuNAQQpc>v*DhrcGchKAUS<#t1hy>=X0^xHvRjF znQqs>)N>|unzAi){OGZ!41-SVC8m%;<YGTL5)Hl~UVX>%61JyaMQ1G>kIiau^kr&th>WUWD+%KAe&7^q>#^LV z`-&JHdR=>T=daQ~neDE3_P_R^gaet@Z19Iw&!>#5+&4w|={6T%Z@5+x_d*9}QkzYk zb{GQbn;HV(iHs;T`nYT-!^!<2hsP z=>tXrx5|`J;ueeAgu}>4)gtCl>RJRh3LCZswMVQE8Ql+#3eaejcjYGh>-WWvb&{Zk z_!b${`5uuA2Gpa~=-Zs#;-`+{{yzRGe_rs3Ziz1de=V`UpVQvEMLduWZrjEYSDSz1 zR)^)VooD#Ta^Vt2Y+_1s*#L^&Grmvi=U*QLZ{He;p=cQkZCQTO2#67gHazxFv+Ei# zp5Y>@@9ABB_}{WLYI?9LHoh?`=AO4C>#Ac*TpTk^y6LYE8^6s2+jHC4+6Z(mM}~6TA#ctq9Mqw zldToszUTTTIbQcOzbSiS$lO*h;jc7tfOPa;$D^M@ppJ ze56?`HZ9H-Os{i?m4O-KOk=LH{pOvV;ZtM1j7JxV9fbQjVGW%D!MfNRG$sE63W14A z+7gu?{BQ5K#xu%uW@6`7*KM4XA)hSwz)xnjU4BPV)B}5{N3>_Ty6z2GjK7%SzddE* zEmmFF8~|DztfDdPIpbR0 zO7R^88}!gi+^`;bRuE` z%17F)p2w`Ev1?B4fMr%%ycpAU&$R;l`C}(onG*52Xr+Ve3&o%G$6wtLdU=Io_{I+; z;y$?B*1h@zXZeG(?MO497FxBcc`Gh$=@?JwqVLrfm}&N@@mS&?@F$^B<4?l-Jf_a# z^a*M)%n&{Sg^P~jFjUtI5Ly7FZHp@(F2vv?T(^h7eSO%kZ^QVuEdy?bFs7cP7zs!x zkv4n>qk5v#O%V|UUHe~TpO@0C9p+kwFGi=r=3X2{3;P+j4UDy0= z2^)KQx@3|{c09eX+sJ0CbLlLvtKYMoiO_KqI*-9H()vz&FD|W}$UAHA7FKCu=ME3d zA_x@7g#0&BsdDsu0tW19_i$gh!ol%H@v}^KhH_iKOxdBE_-7-1Glr?Y6cM^yZ=Wb+WvUoN8*D-~9a8 zCfX$-*`?^UAT4a{VpMfsIdzVx4e-?BQnRC$CUrX3fOT({MY*h7ih}%)MUUBssljvk zc*sSsD6se{hX>dCQ7hL%s6m`Jzo4TJnnZdInFDUGON3VuWyw~$`J?8LanoeK-R4o# z3KMb@`aWr1;%Jr%E`$KWnNt7YeG( zjhag6(pz4IrqSkeI8r;50TOSsjTo7qWbM+q%N!?^B#0_eKH7h8$z4LK7vP1Tbc81a zTic{4RJt6yXnw;cz7~0~;AioS?oddS?y+>D|`_Ft`~=!yRv zOAla~dK@Po`c77|*aW-hAUy0J_5v?F#t_Lz9+N40AVn<`z2SB)2yR!K3-6lI*h zmDe@11u;vrN}H0o%EsByQrj&`XySZUo1N9zPepHHz(LEH(#Ywy-*lC4n3!=ouWjts znq_wj+54c2($MO-!4VhCx7Gn`L)-ML%XCrUb%dd>Xh#TBPTwz^20b_1u>aC!dB`if z&HV=-{^ytm?nZ>^X9`o1l{SI!0aCVfGG&25zMDnymJ;w!4W3?)jb}Nhxd_0n=r-py zz^l3hL^(S5xJ1kxo(02D`uZwcHo<9DRRgNA<{jPuF#%=wQt`-n8ASEp$$WsV9QlR6 z>ILXj+QQHAU}!RIr+f>F^7l|)dCf}OwmcI_Vjv5^C;l|&(GVNVSVe-@cV57oPa8Pb zM`cW;F>aiCosl-Wvj+z;cvT#&379-2bbF%p@8nHAY|m*w6(uC@@yil>_1!}ll>oFr zJWVMm4j*O^6MR&!l}DrIG_slJg5`w~3fINgT%nT-L%1!7x22-ABM-6QiEWU-xck@f zANR6oQ3Lul@NP6>H5tP8u5>M7Gj^_bOsKeXKrlYeqRehvYfsT8Sb?AbJjZqKWGm2~ z&w~Fo=m8A}O0m{ca)h2n^x$0**WK`; zV2lpEErk4X{EnftS=YCby12L`I=IAE1%^P7r%;%8q?40V@{ zgM;ldeE9&~|6564$Z@O8_tZr%eKtwDi=INr5F~@)oiAS?`H+qYbFD53z_t~&M+{`o zE!l&r!;?zJQKR=#IEDc?Tz9D%^g2qT;@w9BDj*h9jHMU*Eh!23uKoM;1t23K*f02q zPOQW5YgzMKH=ko=_{Xtiw8Kk(7G{WHOmG%uP<$R9g#sTDpJGDyugTfTPEKo6#LbP= zxi~nC;~#T9eA*%QKWD(9b3k1!rIpmC9F@vs!C?n1rI8vdM$)*y3XBB>DUJI-!rn^_ ztBH>YL{Xa<3LSGD-3B4vG(4Ss=W*2W1>SHTvhwzCn)XYj$5e0l+v8KVCA??*i zt5M3_=!;62;`I4>FUd;-1yWdT^-MdpvSXaGglB%w1gr>@TP`b7v(GdTH&R1!6bAib zXq=Qu|M*t{UjQQlD+@{z%^pTSgOM3Wl~YFS+|Rceqc-oJ``4MVyC5+CAli0-?507g zY5>tCs9kLg0j2;{MapvW;rikjan*J75?(1OR~7_t3Oq&BVe4P(V07)9GDflc>cO!zxk8(BPXT4S#Jo){!EgLLQt@=!=1EUEl5030 zl&R9`6>8S{wT#&KA;`gDzYQGKTU^><&!egO@Hf1T`v_1eo|9M!cqk zf9#f0(Ki!+YKcVHP))`_gIh~da}h2;LS|*QUEcB!O%3Y|ViD7+{P0_S>E;l{(R5h? zMilZ2+fJ1$E)zn|J9;3JK2}tw&2>oOxAPLn`PTc!xjxUeOQJDIPCLBKfzhk{0vxZ@ zF0FR*xX3DJu-#Q zbNuo;GcF+!ME)(VAJ|lvM5)Ew>Zku7+#cd`a2NXwvS=Y){m2=Cx-0iU^YyS&?0Xa(MFA7QAe z`3;c}o;#3!x~cbQ_xv)f756VorAgkG2g&>lc1ILe>; zMID5)%{gY6H_ce`q3)t2pf7w{2!|!Mod>HmOmhq5PV}#UkZui_b=Lg)m|Ynjg#vf? zccB(DZ5R0?&b(vn-uXui!PcKH*GZq138rs)QtTFOQoR`~@_o<_jIz}G<6*sbLM1CQ z&4$Z5qCX{7Zqb3EWH0=ebqt`m-DQo7Tzq>_>4%KZDi1(ld`E)Hpl0o59P)dEvoPq7 z`2yYEuC!RMwDnL!hm-Unucxg~n=pVV*Enpq0wwBRtbS|ngK=^WM@*sNm z9$vVWxd5(Ge8okW(huCGhqJfodnki>PiLn;Cx}w-elV3!opbv^1XYnLw^bPl)Fvq9 z5tWGm3*HSkpYeN1M{y-Z<84kA;unjrqNhhm&pt-s^(xlOTWT093&@SeG0loJJ8vp + + + diff --git a/_static/clipboard.min.js b/_static/clipboard.min.js new file mode 100644 index 0000000..54b3c46 --- /dev/null +++ b/_static/clipboard.min.js @@ -0,0 +1,7 @@ +/*! + * clipboard.js v2.0.8 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return n={686:function(t,e,n){"use strict";n.d(e,{default:function(){return o}});var e=n(279),i=n.n(e),e=n(370),u=n.n(e),e=n(817),c=n.n(e);function a(t){try{return document.execCommand(t)}catch(t){return}}var f=function(t){t=c()(t);return a("cut"),t};var l=function(t){var e,n,o,r=1 + + + + diff --git a/_static/copybutton.css b/_static/copybutton.css new file mode 100644 index 0000000..f1916ec --- /dev/null +++ b/_static/copybutton.css @@ -0,0 +1,94 @@ +/* Copy buttons */ +button.copybtn { + position: absolute; + display: flex; + top: .3em; + right: .3em; + width: 1.7em; + height: 1.7em; + opacity: 0; + transition: opacity 0.3s, border .3s, background-color .3s; + user-select: none; + padding: 0; + border: none; + outline: none; + border-radius: 0.4em; + /* The colors that GitHub uses */ + border: #1b1f2426 1px solid; + background-color: #f6f8fa; + color: #57606a; +} + +button.copybtn.success { + border-color: #22863a; + color: #22863a; +} + +button.copybtn svg { + stroke: currentColor; + width: 1.5em; + height: 1.5em; + padding: 0.1em; +} + +div.highlight { + position: relative; +} + +/* Show the copybutton */ +.highlight:hover button.copybtn, button.copybtn.success { + opacity: 1; +} + +.highlight button.copybtn:hover { + background-color: rgb(235, 235, 235); +} + +.highlight button.copybtn:active { + background-color: rgb(187, 187, 187); +} + +/** + * A minimal CSS-only tooltip copied from: + * https://codepen.io/mildrenben/pen/rVBrpK + * + * To use, write HTML like the following: + * + *

Short

+ */ + .o-tooltip--left { + position: relative; + } + + .o-tooltip--left:after { + opacity: 0; + visibility: hidden; + position: absolute; + content: attr(data-tooltip); + padding: .2em; + font-size: .8em; + left: -.2em; + background: grey; + color: white; + white-space: nowrap; + z-index: 2; + border-radius: 2px; + transform: translateX(-102%) translateY(0); + transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1); +} + +.o-tooltip--left:hover:after { + display: block; + opacity: 1; + visibility: visible; + transform: translateX(-100%) translateY(0); + transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1); + transition-delay: .5s; +} + +/* By default the copy button shouldn't show up when printing a page */ +@media print { + button.copybtn { + display: none; + } +} diff --git a/_static/copybutton.js b/_static/copybutton.js new file mode 100644 index 0000000..ba04e5f --- /dev/null +++ b/_static/copybutton.js @@ -0,0 +1,248 @@ +// Localization support +const messages = { + 'en': { + 'copy': 'Copy', + 'copy_to_clipboard': 'Copy to clipboard', + 'copy_success': 'Copied!', + 'copy_failure': 'Failed to copy', + }, + 'es' : { + 'copy': 'Copiar', + 'copy_to_clipboard': 'Copiar al portapapeles', + 'copy_success': '¡Copiado!', + 'copy_failure': 'Error al copiar', + }, + 'de' : { + 'copy': 'Kopieren', + 'copy_to_clipboard': 'In die Zwischenablage kopieren', + 'copy_success': 'Kopiert!', + 'copy_failure': 'Fehler beim Kopieren', + }, + 'fr' : { + 'copy': 'Copier', + 'copy_to_clipboard': 'Copier dans le presse-papier', + 'copy_success': 'Copié !', + 'copy_failure': 'Échec de la copie', + }, + 'ru': { + 'copy': 'Скопировать', + 'copy_to_clipboard': 'Скопировать в буфер', + 'copy_success': 'Скопировано!', + 'copy_failure': 'Не удалось скопировать', + }, + 'zh-CN': { + 'copy': '复制', + 'copy_to_clipboard': '复制到剪贴板', + 'copy_success': '复制成功!', + 'copy_failure': '复制失败', + }, + 'it' : { + 'copy': 'Copiare', + 'copy_to_clipboard': 'Copiato negli appunti', + 'copy_success': 'Copiato!', + 'copy_failure': 'Errore durante la copia', + } +} + +let locale = 'en' +if( document.documentElement.lang !== undefined + && messages[document.documentElement.lang] !== undefined ) { + locale = document.documentElement.lang +} + +let doc_url_root = DOCUMENTATION_OPTIONS.URL_ROOT; +if (doc_url_root == '#') { + doc_url_root = ''; +} + +/** + * SVG files for our copy buttons + */ +let iconCheck = ` + ${messages[locale]['copy_success']} + + +` + +// If the user specified their own SVG use that, otherwise use the default +let iconCopy = ``; +if (!iconCopy) { + iconCopy = ` + ${messages[locale]['copy_to_clipboard']} + + + +` +} + +/** + * Set up copy/paste for code blocks + */ + +const runWhenDOMLoaded = cb => { + if (document.readyState != 'loading') { + cb() + } else if (document.addEventListener) { + document.addEventListener('DOMContentLoaded', cb) + } else { + document.attachEvent('onreadystatechange', function() { + if (document.readyState == 'complete') cb() + }) + } +} + +const codeCellId = index => `codecell${index}` + +// Clears selected text since ClipboardJS will select the text when copying +const clearSelection = () => { + if (window.getSelection) { + window.getSelection().removeAllRanges() + } else if (document.selection) { + document.selection.empty() + } +} + +// Changes tooltip text for a moment, then changes it back +// We want the timeout of our `success` class to be a bit shorter than the +// tooltip and icon change, so that we can hide the icon before changing back. +var timeoutIcon = 2000; +var timeoutSuccessClass = 1500; + +const temporarilyChangeTooltip = (el, oldText, newText) => { + el.setAttribute('data-tooltip', newText) + el.classList.add('success') + // Remove success a little bit sooner than we change the tooltip + // So that we can use CSS to hide the copybutton first + setTimeout(() => el.classList.remove('success'), timeoutSuccessClass) + setTimeout(() => el.setAttribute('data-tooltip', oldText), timeoutIcon) +} + +// Changes the copy button icon for two seconds, then changes it back +const temporarilyChangeIcon = (el) => { + el.innerHTML = iconCheck; + setTimeout(() => {el.innerHTML = iconCopy}, timeoutIcon) +} + +const addCopyButtonToCodeCells = () => { + // If ClipboardJS hasn't loaded, wait a bit and try again. This + // happens because we load ClipboardJS asynchronously. + if (window.ClipboardJS === undefined) { + setTimeout(addCopyButtonToCodeCells, 250) + return + } + + // Add copybuttons to all of our code cells + const COPYBUTTON_SELECTOR = 'div.highlight pre'; + const codeCells = document.querySelectorAll(COPYBUTTON_SELECTOR) + codeCells.forEach((codeCell, index) => { + const id = codeCellId(index) + codeCell.setAttribute('id', id) + + const clipboardButton = id => + `` + codeCell.insertAdjacentHTML('afterend', clipboardButton(id)) + }) + +function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string +} + +/** + * Removes excluded text from a Node. + * + * @param {Node} target Node to filter. + * @param {string} exclude CSS selector of nodes to exclude. + * @returns {DOMString} Text from `target` with text removed. + */ +function filterText(target, exclude) { + const clone = target.cloneNode(true); // clone as to not modify the live DOM + if (exclude) { + // remove excluded nodes + clone.querySelectorAll(exclude).forEach(node => node.remove()); + } + return clone.innerText; +} + +// Callback when a copy button is clicked. Will be passed the node that was clicked +// should then grab the text and replace pieces of text that shouldn't be used in output +function formatCopyText(textContent, copybuttonPromptText, isRegexp = false, onlyCopyPromptLines = true, removePrompts = true, copyEmptyLines = true, lineContinuationChar = "", hereDocDelim = "") { + var regexp; + var match; + + // Do we check for line continuation characters and "HERE-documents"? + var useLineCont = !!lineContinuationChar + var useHereDoc = !!hereDocDelim + + // create regexp to capture prompt and remaining line + if (isRegexp) { + regexp = new RegExp('^(' + copybuttonPromptText + ')(.*)') + } else { + regexp = new RegExp('^(' + escapeRegExp(copybuttonPromptText) + ')(.*)') + } + + const outputLines = []; + var promptFound = false; + var gotLineCont = false; + var gotHereDoc = false; + const lineGotPrompt = []; + for (const line of textContent.split('\n')) { + match = line.match(regexp) + if (match || gotLineCont || gotHereDoc) { + promptFound = regexp.test(line) + lineGotPrompt.push(promptFound) + if (removePrompts && promptFound) { + outputLines.push(match[2]) + } else { + outputLines.push(line) + } + gotLineCont = line.endsWith(lineContinuationChar) & useLineCont + if (line.includes(hereDocDelim) & useHereDoc) + gotHereDoc = !gotHereDoc + } else if (!onlyCopyPromptLines) { + outputLines.push(line) + } else if (copyEmptyLines && line.trim() === '') { + outputLines.push(line) + } + } + + // If no lines with the prompt were found then just use original lines + if (lineGotPrompt.some(v => v === true)) { + textContent = outputLines.join('\n'); + } + + // Remove a trailing newline to avoid auto-running when pasting + if (textContent.endsWith("\n")) { + textContent = textContent.slice(0, -1) + } + return textContent +} + + +var copyTargetText = (trigger) => { + var target = document.querySelector(trigger.attributes['data-clipboard-target'].value); + + // get filtered text + let exclude = '.linenos'; + + let text = filterText(target, exclude); + return formatCopyText(text, '>>> |\\.\\.\\. |\\$ ', true, true, true, true, '\n', '') +} + + // Initialize with a callback so we can modify the text before copy + const clipboard = new ClipboardJS('.copybtn', {text: copyTargetText}) + + // Update UI with error/success messages + clipboard.on('success', event => { + clearSelection() + temporarilyChangeTooltip(event.trigger, messages[locale]['copy'], messages[locale]['copy_success']) + temporarilyChangeIcon(event.trigger) + }) + + clipboard.on('error', event => { + temporarilyChangeTooltip(event.trigger, messages[locale]['copy'], messages[locale]['copy_failure']) + }) +} + +runWhenDOMLoaded(addCopyButtonToCodeCells) \ No newline at end of file diff --git a/_static/copybutton_funcs.js b/_static/copybutton_funcs.js new file mode 100644 index 0000000..dbe1aaa --- /dev/null +++ b/_static/copybutton_funcs.js @@ -0,0 +1,73 @@ +function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string +} + +/** + * Removes excluded text from a Node. + * + * @param {Node} target Node to filter. + * @param {string} exclude CSS selector of nodes to exclude. + * @returns {DOMString} Text from `target` with text removed. + */ +export function filterText(target, exclude) { + const clone = target.cloneNode(true); // clone as to not modify the live DOM + if (exclude) { + // remove excluded nodes + clone.querySelectorAll(exclude).forEach(node => node.remove()); + } + return clone.innerText; +} + +// Callback when a copy button is clicked. Will be passed the node that was clicked +// should then grab the text and replace pieces of text that shouldn't be used in output +export function formatCopyText(textContent, copybuttonPromptText, isRegexp = false, onlyCopyPromptLines = true, removePrompts = true, copyEmptyLines = true, lineContinuationChar = "", hereDocDelim = "") { + var regexp; + var match; + + // Do we check for line continuation characters and "HERE-documents"? + var useLineCont = !!lineContinuationChar + var useHereDoc = !!hereDocDelim + + // create regexp to capture prompt and remaining line + if (isRegexp) { + regexp = new RegExp('^(' + copybuttonPromptText + ')(.*)') + } else { + regexp = new RegExp('^(' + escapeRegExp(copybuttonPromptText) + ')(.*)') + } + + const outputLines = []; + var promptFound = false; + var gotLineCont = false; + var gotHereDoc = false; + const lineGotPrompt = []; + for (const line of textContent.split('\n')) { + match = line.match(regexp) + if (match || gotLineCont || gotHereDoc) { + promptFound = regexp.test(line) + lineGotPrompt.push(promptFound) + if (removePrompts && promptFound) { + outputLines.push(match[2]) + } else { + outputLines.push(line) + } + gotLineCont = line.endsWith(lineContinuationChar) & useLineCont + if (line.includes(hereDocDelim) & useHereDoc) + gotHereDoc = !gotHereDoc + } else if (!onlyCopyPromptLines) { + outputLines.push(line) + } else if (copyEmptyLines && line.trim() === '') { + outputLines.push(line) + } + } + + // If no lines with the prompt were found then just use original lines + if (lineGotPrompt.some(v => v === true)) { + textContent = outputLines.join('\n'); + } + + // Remove a trailing newline to avoid auto-running when pasting + if (textContent.endsWith("\n")) { + textContent = textContent.slice(0, -1) + } + return textContent +} diff --git a/_static/doctools.js b/_static/doctools.js new file mode 100644 index 0000000..d06a71d --- /dev/null +++ b/_static/doctools.js @@ -0,0 +1,156 @@ +/* + * doctools.js + * ~~~~~~~~~~~ + * + * Base JavaScript utilities for all Sphinx HTML documentation. + * + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ +"use strict"; + +const BLACKLISTED_KEY_CONTROL_ELEMENTS = new Set([ + "TEXTAREA", + "INPUT", + "SELECT", + "BUTTON", +]); + +const _ready = (callback) => { + if (document.readyState !== "loading") { + callback(); + } else { + document.addEventListener("DOMContentLoaded", callback); + } +}; + +/** + * Small JavaScript module for the documentation. + */ +const Documentation = { + init: () => { + Documentation.initDomainIndexTable(); + Documentation.initOnKeyListeners(); + }, + + /** + * i18n support + */ + TRANSLATIONS: {}, + PLURAL_EXPR: (n) => (n === 1 ? 0 : 1), + LOCALE: "unknown", + + // gettext and ngettext don't access this so that the functions + // can safely bound to a different name (_ = Documentation.gettext) + gettext: (string) => { + const translated = Documentation.TRANSLATIONS[string]; + switch (typeof translated) { + case "undefined": + return string; // no translation + case "string": + return translated; // translation exists + default: + return translated[0]; // (singular, plural) translation tuple exists + } + }, + + ngettext: (singular, plural, n) => { + const translated = Documentation.TRANSLATIONS[singular]; + if (typeof translated !== "undefined") + return translated[Documentation.PLURAL_EXPR(n)]; + return n === 1 ? singular : plural; + }, + + addTranslations: (catalog) => { + Object.assign(Documentation.TRANSLATIONS, catalog.messages); + Documentation.PLURAL_EXPR = new Function( + "n", + `return (${catalog.plural_expr})` + ); + Documentation.LOCALE = catalog.locale; + }, + + /** + * helper function to focus on search bar + */ + focusSearchBar: () => { + document.querySelectorAll("input[name=q]")[0]?.focus(); + }, + + /** + * Initialise the domain index toggle buttons + */ + initDomainIndexTable: () => { + const toggler = (el) => { + const idNumber = el.id.substr(7); + const toggledRows = document.querySelectorAll(`tr.cg-${idNumber}`); + if (el.src.substr(-9) === "minus.png") { + el.src = `${el.src.substr(0, el.src.length - 9)}plus.png`; + toggledRows.forEach((el) => (el.style.display = "none")); + } else { + el.src = `${el.src.substr(0, el.src.length - 8)}minus.png`; + toggledRows.forEach((el) => (el.style.display = "")); + } + }; + + const togglerElements = document.querySelectorAll("img.toggler"); + togglerElements.forEach((el) => + el.addEventListener("click", (event) => toggler(event.currentTarget)) + ); + togglerElements.forEach((el) => (el.style.display = "")); + if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) togglerElements.forEach(toggler); + }, + + initOnKeyListeners: () => { + // only install a listener if it is really needed + if ( + !DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS && + !DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS + ) + return; + + document.addEventListener("keydown", (event) => { + // bail for input elements + if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return; + // bail with special keys + if (event.altKey || event.ctrlKey || event.metaKey) return; + + if (!event.shiftKey) { + switch (event.key) { + case "ArrowLeft": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const prevLink = document.querySelector('link[rel="prev"]'); + if (prevLink && prevLink.href) { + window.location.href = prevLink.href; + event.preventDefault(); + } + break; + case "ArrowRight": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const nextLink = document.querySelector('link[rel="next"]'); + if (nextLink && nextLink.href) { + window.location.href = nextLink.href; + event.preventDefault(); + } + break; + } + } + + // some keyboard layouts may need Shift to get / + switch (event.key) { + case "/": + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break; + Documentation.focusSearchBar(); + event.preventDefault(); + } + }); + }, +}; + +// quick alias for translations +const _ = Documentation.gettext; + +_ready(Documentation.init); diff --git a/_static/documentation_options.js b/_static/documentation_options.js new file mode 100644 index 0000000..f6fd34c --- /dev/null +++ b/_static/documentation_options.js @@ -0,0 +1,13 @@ +const DOCUMENTATION_OPTIONS = { + VERSION: '0.3.6', + LANGUAGE: 'en', + COLLAPSE_INDEX: false, + BUILDER: 'html', + FILE_SUFFIX: '.html', + LINK_SUFFIX: '.html', + HAS_SOURCE: true, + SOURCELINK_SUFFIX: '.txt', + NAVIGATION_WITH_KEYS: false, + SHOW_SEARCH_SUMMARY: true, + ENABLE_SEARCH_SHORTCUTS: true, +}; \ No newline at end of file diff --git a/_static/file.png b/_static/file.png new file mode 100644 index 0000000000000000000000000000000000000000..a858a410e4faa62ce324d814e4b816fff83a6fb3 GIT binary patch literal 286 zcmV+(0pb3MP)s`hMrGg#P~ix$^RISR_I47Y|r1 z_CyJOe}D1){SET-^Amu_i71Lt6eYfZjRyw@I6OQAIXXHDfiX^GbOlHe=Ae4>0m)d(f|Me07*qoM6N<$f}vM^LjV8( literal 0 HcmV?d00001 diff --git a/_static/jupyterlite_badge_logo.svg b/_static/jupyterlite_badge_logo.svg new file mode 100644 index 0000000..5de36d7 --- /dev/null +++ b/_static/jupyterlite_badge_logo.svg @@ -0,0 +1,3 @@ + + +launchlaunchlitelite \ No newline at end of file diff --git a/_static/language_data.js b/_static/language_data.js new file mode 100644 index 0000000..250f566 --- /dev/null +++ b/_static/language_data.js @@ -0,0 +1,199 @@ +/* + * language_data.js + * ~~~~~~~~~~~~~~~~ + * + * This script contains the language-specific data used by searchtools.js, + * namely the list of stopwords, stemmer, scorer and splitter. + * + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +var stopwords = ["a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "near", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"]; + + +/* Non-minified version is copied as a separate JS file, is available */ + +/** + * Porter Stemmer + */ +var Stemmer = function() { + + var step2list = { + ational: 'ate', + tional: 'tion', + enci: 'ence', + anci: 'ance', + izer: 'ize', + bli: 'ble', + alli: 'al', + entli: 'ent', + eli: 'e', + ousli: 'ous', + ization: 'ize', + ation: 'ate', + ator: 'ate', + alism: 'al', + iveness: 'ive', + fulness: 'ful', + ousness: 'ous', + aliti: 'al', + iviti: 'ive', + biliti: 'ble', + logi: 'log' + }; + + var step3list = { + icate: 'ic', + ative: '', + alize: 'al', + iciti: 'ic', + ical: 'ic', + ful: '', + ness: '' + }; + + var c = "[^aeiou]"; // consonant + var v = "[aeiouy]"; // vowel + var C = c + "[^aeiouy]*"; // consonant sequence + var V = v + "[aeiou]*"; // vowel sequence + + var mgr0 = "^(" + C + ")?" + V + C; // [C]VC... is m>0 + var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$"; // [C]VC[V] is m=1 + var mgr1 = "^(" + C + ")?" + V + C + V + C; // [C]VCVC... is m>1 + var s_v = "^(" + C + ")?" + v; // vowel in stem + + this.stemWord = function (w) { + var stem; + var suffix; + var firstch; + var origword = w; + + if (w.length < 3) + return w; + + var re; + var re2; + var re3; + var re4; + + firstch = w.substr(0,1); + if (firstch == "y") + w = firstch.toUpperCase() + w.substr(1); + + // Step 1a + re = /^(.+?)(ss|i)es$/; + re2 = /^(.+?)([^s])s$/; + + if (re.test(w)) + w = w.replace(re,"$1$2"); + else if (re2.test(w)) + w = w.replace(re2,"$1$2"); + + // Step 1b + re = /^(.+?)eed$/; + re2 = /^(.+?)(ed|ing)$/; + if (re.test(w)) { + var fp = re.exec(w); + re = new RegExp(mgr0); + if (re.test(fp[1])) { + re = /.$/; + w = w.replace(re,""); + } + } + else if (re2.test(w)) { + var fp = re2.exec(w); + stem = fp[1]; + re2 = new RegExp(s_v); + if (re2.test(stem)) { + w = stem; + re2 = /(at|bl|iz)$/; + re3 = new RegExp("([^aeiouylsz])\\1$"); + re4 = new RegExp("^" + C + v + "[^aeiouwxy]$"); + if (re2.test(w)) + w = w + "e"; + else if (re3.test(w)) { + re = /.$/; + w = w.replace(re,""); + } + else if (re4.test(w)) + w = w + "e"; + } + } + + // Step 1c + re = /^(.+?)y$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(s_v); + if (re.test(stem)) + w = stem + "i"; + } + + // Step 2 + re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + suffix = fp[2]; + re = new RegExp(mgr0); + if (re.test(stem)) + w = stem + step2list[suffix]; + } + + // Step 3 + re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + suffix = fp[2]; + re = new RegExp(mgr0); + if (re.test(stem)) + w = stem + step3list[suffix]; + } + + // Step 4 + re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/; + re2 = /^(.+?)(s|t)(ion)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(mgr1); + if (re.test(stem)) + w = stem; + } + else if (re2.test(w)) { + var fp = re2.exec(w); + stem = fp[1] + fp[2]; + re2 = new RegExp(mgr1); + if (re2.test(stem)) + w = stem; + } + + // Step 5 + re = /^(.+?)e$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(mgr1); + re2 = new RegExp(meq1); + re3 = new RegExp("^" + C + v + "[^aeiouwxy]$"); + if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) + w = stem; + } + re = /ll$/; + re2 = new RegExp(mgr1); + if (re.test(w) && re2.test(w)) { + re = /.$/; + w = w.replace(re,""); + } + + // and turn initial Y back to y + if (firstch == "y") + w = firstch.toLowerCase() + w.substr(1); + return w; + } +} + diff --git a/_static/minus.png b/_static/minus.png new file mode 100644 index 0000000000000000000000000000000000000000..d96755fdaf8bb2214971e0db9c1fd3077d7c419d GIT binary patch literal 90 zcmeAS@N?(olHy`uVBq!ia0vp^+#t*WBp7;*Yy1LIik>cxAr*|t7R?Mi>2?kWtu=nj kDsEF_5m^0CR;1wuP-*O&G^0G}KYk!hp00i_>zopr08q^qX#fBK literal 0 HcmV?d00001 diff --git a/_static/no_image.png b/_static/no_image.png new file mode 100644 index 0000000000000000000000000000000000000000..8c2d48d5d3f0044cf0399b3608d8eb5db6f9d12d GIT binary patch literal 4315 zcmZu#cQl+^wEv7Yqs$n@O(aT$L;}C=%WOY=zT`-Ekq0V5`x4aMu{NNf+*n< z66KpH;|{}!gwZ2&nysHrG z0Is>2pg8&bU~%jmP#w09%E+E{cKXfUYnz`+$>gQMZA;Ck3`Hh2nh%QykGcLe4RW<{ zQ;-htbPfJBvF^iHUpwo2@bbr_W|JoA?RwXd4aKwPnF3{LKYV|8qEhH=QaE7^oFeRQ zBBp}ipZZz{SEiGN($5lzeJ-F05!Zy+^Oi_@>IjmQ?>?L~yEgcsSTdZsfxDGCdJo3i zOq2?zJ@qMmXl-%TCEa5sfRF36uZ_fOBpI0PSz*CD%GGKxOOf(!`@F3DXC4K&If51b<`6}uL5b>z~lD}_YRggJL( zR)oMSQ2tje{IY5Yj=H*zr~J$DKB!<6AMJFmKlA(I2MjTMw3!M(sVb$L{YG2`;=t+S zuom?Z3|ncJ>NZt|9JQg}&rm1h`1fK+rNrNF_nJYWIbjt?1%hC|K0s-XL0Enm?#0{^ z9#rb;^K}1gZ)Te)JE#N0-hTW3QYUYn_qApLKK?z(2UZJ#o2MoNPIt$XfO^QU)d--F zXH`BxyQvKy)=t+7g*b$!Y}{x|OlV0OKjl&04HNP(6h1uYGPwcN?EnXR5$O3Sl;Lx} z(?Pl(|eqOat|Q((7g0X9j2BX$O5mU zwDn5atHnDPR$VqpfV+sJOE1GcvZ?2k=4NFggq#1ZXv2si+h268TDMo7LJ>DEf00Br z;PWK3_>wf4JB~zQSY<@4Rzy{IHAmT#7RE`=#i%6Zd%rJcT!!V%>Z+RCWQL<61zx0O zp%&*%euVDC9FR@hxY4-vuEutY(P?=Z*RRvn@W8xXF3J)Gw%~KMJvh|314<+F7!Yyq zzC1|A;l1Ybr%NyC%9iHH=C!Ft%DuRsjap=CXuO`w;+Pe&Y=(59uVLKGJC$rmWGrgg zODk#8g1j761-aFnHJ1#qNN~lM(9uE@)DXg^^^LC4X(ioEbS1-)|pc)70tB;GPZO@~yvAHcv z%x00*%rI}(p-`Eb1kyto76p4T@pgMtoFBwWdQE!wJt-%T`R}mD5co;4AY<$JopDu!F_%Sb+O{E42l*RyUR!FO%eA{553q%ut@4Ae8<*lKYZh6{kxg9ld;tXRTha z?3gIPbAiK6DVyr{_HWc8KhmXL*o|6~C_g5>KVs&`?}e0pRNme%EfxoO8|$GJrZ`yK zE)$i-l)8&YM7O=tAziD4a;BJ9g0aK*tI$*QKZ2l8>|e_ET(8k?>b9u4TZEY1ezM~- zJv;Sd!bWv;3RlOLc8d6yOmlR0e(2Tgul@`jXONkDNCs-Yo0kk_Usn>RAb`K4LjGA% zaKm(2h z7o)uLLF{C1Ap`m}Co@arT?tu0?P2dT1>fz$j2w2VnwBB}bNufX0H)8mg@@(K-HUYa z~!6OwLNR4_{T8CEbVF@srA!uu;E^%$2lB>(V$BCy{~3nsQc z9*$O`zfFYySHr{ib0g>B0!D>7)2Ic%`!U%7%8Kn-sxJkGSHQax>OuHMNih)LnmG#E zU!HNRRVcr#t&7wDZrp6u#U9mVYo#Ah@H{IrGO^R8n^M=lOuHP+nUnP1dc|_|N*e@d zM`V6K2D~kr3zr7NZ~-F?<^(w)<9I=CIt@|ia>A5_7B1*5NI@o*H4zU7SZc>aHf9cC zXGIX>-3vi}CRom-#}D-5eKi(w)t1+SKg@iA)-TfHef56E?Gw`5ua0)$YgYmdPq=}` zW^)2O`s=D}i1U!~hwuO9k6gx$==LW&6YwG6+Iaw7!37oYu2!CKW27mD2 z(zrJ5YG~ztLr{#%Ov?cGqx|^WlKqh(3dP>QzFfu$J~7jAFZa{A`SPNEm}>x5l6DbuQ(R3h74sf-eR34Cl^n zgfe1{i^sOtOLu>9_wX9pdK6pKeF&x{g>N2901CGUNut;8dwLBKLg>AJh#qQ&`Ltuq zEB#8AtpS@Q?nVxpV|y5WmYK3)6qrTKFxJQ+WK^;ke;8ia+Sv=8p*<%C;+p@VX9TSyM8~lAmUh(Xkb1M@$v9?)NR+adDqo}X*Wkx*uu|O4E zd`xIU<885Arlnf>e9U1((ZnnrdBOLNiCH-Et-RuTLKGdD&1v^5=<4>+Y%=+o$iP)g zh<%8E#<=}5G8x|l&s+u_PFP-YIL4j0A0N5ceAe=JRxF}PjS8(HUc9^ZmF7E3RVjYQ zuW`_)Z+^@qovbxdEKKngA>9$1* z!6$)NbmIAhIb+Icqjb!{KwUov4T;z*iZ59e=0(hzIXdGrurL`{$n37X^%q%SbHLP~ zzZ~h%K(10bsyk6yu+@LpG#spNq-Ai#D!TADYK!V5xu$AU^NJK?Lqc=GM_qT;Jgn>W z$Q-)1Va4GTR~6ydg#jt)9e?Y-+5M&bi9?p1PrfsQ`b7DfdD(s9Gksi34BD1SY1pd1 zGN@}w=r__Q!ycXq_nTnUwMf<%0)>>0-7$_xR=BIJbw=@UKT`v;h$iGFylp(a&V48g zmD?v}yqh=EwN&@q$Zodv0X$*lIGHv{TC+O-*TxNfTq+DBbB}?7i7H1BP#D7jc*EOl zfmXuVWaCcgWZH>3#GXa=8X71vxZhS->o-{>qGaUm-8oB`k2vZYR+Ev`!Hsrf4w;Y( zV)NVu_V}61Pvj4=-$(+3&G@TZ?9}eVp=L_yaUImwy3$hcQ$t($46S2vMjn@H(;P2c z`sf^(X6oJvKk_pd;P8Idu6Phe0sbUyQVxb)FK+EElYp^8x7`6H zaawS+qESx}*Orqn@f@`X-?k(;?#3#|dKP7`t55wS9Kg>FzW#OAtc$}S)!XSDS2;MT z&Oob__!lSZ9GP3j8aRLQkq65WI}B^`w2GL@8NObeBo!EM7A)H(CnyZwaAUyH$@_gU zDtO7wELIqZ|1PLBO3~ov`sd26E`NX1Tc~D{CwFWiJd@G*If*i|I(uCNC$YLSf31U} z-KjTEPe+&U;!*pDxr8y-GK(H9TW{utIW!$HNv|mLDp(#in~co}#KH?r2r3f2a&d|P z`G<^{l?y$o?lX{fohCMj(xRRm3n! zp0#!EG0IJBk#0_XeLhVT1V6>TV#Q6-{eFqYV}ozaDd@#Z7k>u_pZim<*k$P1*k8{K zjEctXouLc ztXTVtJsUSs-#~*k2h|N^&1dG1&5sFlIZd0t2UFNkW`?)Z=_qnThBbXbH`910?N6fKiUYWuYUf+umu&dU>dqGFovFS$>HJ#yDX;|6 zR68m}C!r!|Q6=1wt-M-N%kQ4a>KlqX`^j?s8h$G0%#zmM8)cvLIkiBw=i>SMd9@Kv zuh_gLGe~G2=F?7_>}97$*eq29VZI1F=koA~Dtr0FCnnwML`AT#W+xcYgaNiX{Kh)a zbXs(U-sK}@iKwzG8}xY&dK8XQaIckv>-J!EuHL=7H(RWe|HEj`srN6H0v?yT9t!2f zZ7X5#ckde$7Cs(Wgr?$V|5B*dzGOg^%9>;gqO|-q{%SjzElgARuKd%Y#ttz=RvHD# z=BXxVvFHCD>^0~p@E2xpEaFUOCRmwHzhGMY*%=~o!Pcn82!78XIwm*#3G?rm?&{3W z!%1W)#O~l{IF|>Wc4MAGQ1Z9x9#@{1Qo& zJh~poCb^!dqmqsjSmYI7VE$ww3e7O;HlhIKRYuVnGnH8Vf( z_%qq>;Za>%#zP7j5=B|#mUT_>Pt?{DzP!XV(XhdAWw;#4!TG0vJ z*W)fq3}SzVglo1OAASuAZO`5^`+u_a|4Z2afO59lmos30Xp|#TIWqpwcZ05`kw%T0 HW8D7$6^1w` literal 0 HcmV?d00001 diff --git a/_static/plus.png b/_static/plus.png new file mode 100644 index 0000000000000000000000000000000000000000..7107cec93a979b9a5f64843235a16651d563ce2d GIT binary patch literal 90 zcmeAS@N?(olHy`uVBq!ia0vp^+#t*WBp7;*Yy1LIik>cxAr*|t7R?Mi>2?kWtu>-2 m3q%Vub%g%s<8sJhVPMczOq}xhg9DJoz~JfX=d#Wzp$Pyb1r*Kz literal 0 HcmV?d00001 diff --git a/_static/pygments.css b/_static/pygments.css new file mode 100644 index 0000000..997797f --- /dev/null +++ b/_static/pygments.css @@ -0,0 +1,152 @@ +html[data-theme="light"] .highlight pre { line-height: 125%; } +html[data-theme="light"] .highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +html[data-theme="light"] .highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +html[data-theme="light"] .highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +html[data-theme="light"] .highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +html[data-theme="light"] .highlight .hll { background-color: #7971292e } +html[data-theme="light"] .highlight { background: #fefefe; color: #545454 } +html[data-theme="light"] .highlight .c { color: #797129 } /* Comment */ +html[data-theme="light"] .highlight .err { color: #d91e18 } /* Error */ +html[data-theme="light"] .highlight .k { color: #7928a1 } /* Keyword */ +html[data-theme="light"] .highlight .l { color: #797129 } /* Literal */ +html[data-theme="light"] .highlight .n { color: #545454 } /* Name */ +html[data-theme="light"] .highlight .o { color: #008000 } /* Operator */ +html[data-theme="light"] .highlight .p { color: #545454 } /* Punctuation */ +html[data-theme="light"] .highlight .ch { color: #797129 } /* Comment.Hashbang */ +html[data-theme="light"] .highlight .cm { color: #797129 } /* Comment.Multiline */ +html[data-theme="light"] .highlight .cp { color: #797129 } /* Comment.Preproc */ +html[data-theme="light"] .highlight .cpf { color: #797129 } /* Comment.PreprocFile */ +html[data-theme="light"] .highlight .c1 { color: #797129 } /* Comment.Single */ +html[data-theme="light"] .highlight .cs { color: #797129 } /* Comment.Special */ +html[data-theme="light"] .highlight .gd { color: #007faa } /* Generic.Deleted */ +html[data-theme="light"] .highlight .ge { font-style: italic } /* Generic.Emph */ +html[data-theme="light"] .highlight .gh { color: #007faa } /* Generic.Heading */ +html[data-theme="light"] .highlight .gs { font-weight: bold } /* Generic.Strong */ +html[data-theme="light"] .highlight .gu { color: #007faa } /* Generic.Subheading */ +html[data-theme="light"] .highlight .kc { color: #7928a1 } /* Keyword.Constant */ +html[data-theme="light"] .highlight .kd { color: #7928a1 } /* Keyword.Declaration */ +html[data-theme="light"] .highlight .kn { color: #7928a1 } /* Keyword.Namespace */ +html[data-theme="light"] .highlight .kp { color: #7928a1 } /* Keyword.Pseudo */ +html[data-theme="light"] .highlight .kr { color: #7928a1 } /* Keyword.Reserved */ +html[data-theme="light"] .highlight .kt { color: #797129 } /* Keyword.Type */ +html[data-theme="light"] .highlight .ld { color: #797129 } /* Literal.Date */ +html[data-theme="light"] .highlight .m { color: #797129 } /* Literal.Number */ +html[data-theme="light"] .highlight .s { color: #008000 } /* Literal.String */ +html[data-theme="light"] .highlight .na { color: #797129 } /* Name.Attribute */ +html[data-theme="light"] .highlight .nb { color: #797129 } /* Name.Builtin */ +html[data-theme="light"] .highlight .nc { color: #007faa } /* Name.Class */ +html[data-theme="light"] .highlight .no { color: #007faa } /* Name.Constant */ +html[data-theme="light"] .highlight .nd { color: #797129 } /* Name.Decorator */ +html[data-theme="light"] .highlight .ni { color: #008000 } /* Name.Entity */ +html[data-theme="light"] .highlight .ne { color: #7928a1 } /* Name.Exception */ +html[data-theme="light"] .highlight .nf { color: #007faa } /* Name.Function */ +html[data-theme="light"] .highlight .nl { color: #797129 } /* Name.Label */ +html[data-theme="light"] .highlight .nn { color: #545454 } /* Name.Namespace */ +html[data-theme="light"] .highlight .nx { color: #545454 } /* Name.Other */ +html[data-theme="light"] .highlight .py { color: #007faa } /* Name.Property */ +html[data-theme="light"] .highlight .nt { color: #007faa } /* Name.Tag */ +html[data-theme="light"] .highlight .nv { color: #d91e18 } /* Name.Variable */ +html[data-theme="light"] .highlight .ow { color: #7928a1 } /* Operator.Word */ +html[data-theme="light"] .highlight .pm { color: #545454 } /* Punctuation.Marker */ +html[data-theme="light"] .highlight .w { color: #545454 } /* Text.Whitespace */ +html[data-theme="light"] .highlight .mb { color: #797129 } /* Literal.Number.Bin */ +html[data-theme="light"] .highlight .mf { color: #797129 } /* Literal.Number.Float */ +html[data-theme="light"] .highlight .mh { color: #797129 } /* Literal.Number.Hex */ +html[data-theme="light"] .highlight .mi { color: #797129 } /* Literal.Number.Integer */ +html[data-theme="light"] .highlight .mo { color: #797129 } /* Literal.Number.Oct */ +html[data-theme="light"] .highlight .sa { color: #008000 } /* Literal.String.Affix */ +html[data-theme="light"] .highlight .sb { color: #008000 } /* Literal.String.Backtick */ +html[data-theme="light"] .highlight .sc { color: #008000 } /* Literal.String.Char */ +html[data-theme="light"] .highlight .dl { color: #008000 } /* Literal.String.Delimiter */ +html[data-theme="light"] .highlight .sd { color: #008000 } /* Literal.String.Doc */ +html[data-theme="light"] .highlight .s2 { color: #008000 } /* Literal.String.Double */ +html[data-theme="light"] .highlight .se { color: #008000 } /* Literal.String.Escape */ +html[data-theme="light"] .highlight .sh { color: #008000 } /* Literal.String.Heredoc */ +html[data-theme="light"] .highlight .si { color: #008000 } /* Literal.String.Interpol */ +html[data-theme="light"] .highlight .sx { color: #008000 } /* Literal.String.Other */ +html[data-theme="light"] .highlight .sr { color: #d91e18 } /* Literal.String.Regex */ +html[data-theme="light"] .highlight .s1 { color: #008000 } /* Literal.String.Single */ +html[data-theme="light"] .highlight .ss { color: #007faa } /* Literal.String.Symbol */ +html[data-theme="light"] .highlight .bp { color: #797129 } /* Name.Builtin.Pseudo */ +html[data-theme="light"] .highlight .fm { color: #007faa } /* Name.Function.Magic */ +html[data-theme="light"] .highlight .vc { color: #d91e18 } /* Name.Variable.Class */ +html[data-theme="light"] .highlight .vg { color: #d91e18 } /* Name.Variable.Global */ +html[data-theme="light"] .highlight .vi { color: #d91e18 } /* Name.Variable.Instance */ +html[data-theme="light"] .highlight .vm { color: #797129 } /* Name.Variable.Magic */ +html[data-theme="light"] .highlight .il { color: #797129 } /* Literal.Number.Integer.Long */ +html[data-theme="dark"] .highlight pre { line-height: 125%; } +html[data-theme="dark"] .highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +html[data-theme="dark"] .highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +html[data-theme="dark"] .highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +html[data-theme="dark"] .highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +html[data-theme="dark"] .highlight .hll { background-color: #ffd9002e } +html[data-theme="dark"] .highlight { background: #2b2b2b; color: #f8f8f2 } +html[data-theme="dark"] .highlight .c { color: #ffd900 } /* Comment */ +html[data-theme="dark"] .highlight .err { color: #ffa07a } /* Error */ +html[data-theme="dark"] .highlight .k { color: #dcc6e0 } /* Keyword */ +html[data-theme="dark"] .highlight .l { color: #ffd900 } /* Literal */ +html[data-theme="dark"] .highlight .n { color: #f8f8f2 } /* Name */ +html[data-theme="dark"] .highlight .o { color: #abe338 } /* Operator */ +html[data-theme="dark"] .highlight .p { color: #f8f8f2 } /* Punctuation */ +html[data-theme="dark"] .highlight .ch { color: #ffd900 } /* Comment.Hashbang */ +html[data-theme="dark"] .highlight .cm { color: #ffd900 } /* Comment.Multiline */ +html[data-theme="dark"] .highlight .cp { color: #ffd900 } /* Comment.Preproc */ +html[data-theme="dark"] .highlight .cpf { color: #ffd900 } /* Comment.PreprocFile */ +html[data-theme="dark"] .highlight .c1 { color: #ffd900 } /* Comment.Single */ +html[data-theme="dark"] .highlight .cs { color: #ffd900 } /* Comment.Special */ +html[data-theme="dark"] .highlight .gd { color: #00e0e0 } /* Generic.Deleted */ +html[data-theme="dark"] .highlight .ge { font-style: italic } /* Generic.Emph */ +html[data-theme="dark"] .highlight .gh { color: #00e0e0 } /* Generic.Heading */ +html[data-theme="dark"] .highlight .gs { font-weight: bold } /* Generic.Strong */ +html[data-theme="dark"] .highlight .gu { color: #00e0e0 } /* Generic.Subheading */ +html[data-theme="dark"] .highlight .kc { color: #dcc6e0 } /* Keyword.Constant */ +html[data-theme="dark"] .highlight .kd { color: #dcc6e0 } /* Keyword.Declaration */ +html[data-theme="dark"] .highlight .kn { color: #dcc6e0 } /* Keyword.Namespace */ +html[data-theme="dark"] .highlight .kp { color: #dcc6e0 } /* Keyword.Pseudo */ +html[data-theme="dark"] .highlight .kr { color: #dcc6e0 } /* Keyword.Reserved */ +html[data-theme="dark"] .highlight .kt { color: #ffd900 } /* Keyword.Type */ +html[data-theme="dark"] .highlight .ld { color: #ffd900 } /* Literal.Date */ +html[data-theme="dark"] .highlight .m { color: #ffd900 } /* Literal.Number */ +html[data-theme="dark"] .highlight .s { color: #abe338 } /* Literal.String */ +html[data-theme="dark"] .highlight .na { color: #ffd900 } /* Name.Attribute */ +html[data-theme="dark"] .highlight .nb { color: #ffd900 } /* Name.Builtin */ +html[data-theme="dark"] .highlight .nc { color: #00e0e0 } /* Name.Class */ +html[data-theme="dark"] .highlight .no { color: #00e0e0 } /* Name.Constant */ +html[data-theme="dark"] .highlight .nd { color: #ffd900 } /* Name.Decorator */ +html[data-theme="dark"] .highlight .ni { color: #abe338 } /* Name.Entity */ +html[data-theme="dark"] .highlight .ne { color: #dcc6e0 } /* Name.Exception */ +html[data-theme="dark"] .highlight .nf { color: #00e0e0 } /* Name.Function */ +html[data-theme="dark"] .highlight .nl { color: #ffd900 } /* Name.Label */ +html[data-theme="dark"] .highlight .nn { color: #f8f8f2 } /* Name.Namespace */ +html[data-theme="dark"] .highlight .nx { color: #f8f8f2 } /* Name.Other */ +html[data-theme="dark"] .highlight .py { color: #00e0e0 } /* Name.Property */ +html[data-theme="dark"] .highlight .nt { color: #00e0e0 } /* Name.Tag */ +html[data-theme="dark"] .highlight .nv { color: #ffa07a } /* Name.Variable */ +html[data-theme="dark"] .highlight .ow { color: #dcc6e0 } /* Operator.Word */ +html[data-theme="dark"] .highlight .pm { color: #f8f8f2 } /* Punctuation.Marker */ +html[data-theme="dark"] .highlight .w { color: #f8f8f2 } /* Text.Whitespace */ +html[data-theme="dark"] .highlight .mb { color: #ffd900 } /* Literal.Number.Bin */ +html[data-theme="dark"] .highlight .mf { color: #ffd900 } /* Literal.Number.Float */ +html[data-theme="dark"] .highlight .mh { color: #ffd900 } /* Literal.Number.Hex */ +html[data-theme="dark"] .highlight .mi { color: #ffd900 } /* Literal.Number.Integer */ +html[data-theme="dark"] .highlight .mo { color: #ffd900 } /* Literal.Number.Oct */ +html[data-theme="dark"] .highlight .sa { color: #abe338 } /* Literal.String.Affix */ +html[data-theme="dark"] .highlight .sb { color: #abe338 } /* Literal.String.Backtick */ +html[data-theme="dark"] .highlight .sc { color: #abe338 } /* Literal.String.Char */ +html[data-theme="dark"] .highlight .dl { color: #abe338 } /* Literal.String.Delimiter */ +html[data-theme="dark"] .highlight .sd { color: #abe338 } /* Literal.String.Doc */ +html[data-theme="dark"] .highlight .s2 { color: #abe338 } /* Literal.String.Double */ +html[data-theme="dark"] .highlight .se { color: #abe338 } /* Literal.String.Escape */ +html[data-theme="dark"] .highlight .sh { color: #abe338 } /* Literal.String.Heredoc */ +html[data-theme="dark"] .highlight .si { color: #abe338 } /* Literal.String.Interpol */ +html[data-theme="dark"] .highlight .sx { color: #abe338 } /* Literal.String.Other */ +html[data-theme="dark"] .highlight .sr { color: #ffa07a } /* Literal.String.Regex */ +html[data-theme="dark"] .highlight .s1 { color: #abe338 } /* Literal.String.Single */ +html[data-theme="dark"] .highlight .ss { color: #00e0e0 } /* Literal.String.Symbol */ +html[data-theme="dark"] .highlight .bp { color: #ffd900 } /* Name.Builtin.Pseudo */ +html[data-theme="dark"] .highlight .fm { color: #00e0e0 } /* Name.Function.Magic */ +html[data-theme="dark"] .highlight .vc { color: #ffa07a } /* Name.Variable.Class */ +html[data-theme="dark"] .highlight .vg { color: #ffa07a } /* Name.Variable.Global */ +html[data-theme="dark"] .highlight .vi { color: #ffa07a } /* Name.Variable.Instance */ +html[data-theme="dark"] .highlight .vm { color: #ffd900 } /* Name.Variable.Magic */ +html[data-theme="dark"] .highlight .il { color: #ffd900 } /* Literal.Number.Integer.Long */ \ No newline at end of file diff --git a/_static/scripts/bootstrap.js b/_static/scripts/bootstrap.js new file mode 100644 index 0000000..bda8a60 --- /dev/null +++ b/_static/scripts/bootstrap.js @@ -0,0 +1,3 @@ +/*! For license information please see bootstrap.js.LICENSE.txt */ +(()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{afterMain:()=>w,afterRead:()=>b,afterWrite:()=>T,applyStyles:()=>D,arrow:()=>G,auto:()=>r,basePlacements:()=>a,beforeMain:()=>v,beforeRead:()=>g,beforeWrite:()=>E,bottom:()=>n,clippingParents:()=>h,computeStyles:()=>et,createPopper:()=>St,createPopperBase:()=>Lt,createPopperLite:()=>Dt,detectOverflow:()=>gt,end:()=>c,eventListeners:()=>nt,flip:()=>_t,hide:()=>yt,left:()=>o,main:()=>y,modifierPhases:()=>C,offset:()=>wt,placements:()=>m,popper:()=>u,popperGenerator:()=>kt,popperOffsets:()=>Et,preventOverflow:()=>At,read:()=>_,reference:()=>f,right:()=>s,start:()=>l,top:()=>i,variationPlacements:()=>p,viewport:()=>d,write:()=>A});var i="top",n="bottom",s="right",o="left",r="auto",a=[i,n,s,o],l="start",c="end",h="clippingParents",d="viewport",u="popper",f="reference",p=a.reduce((function(t,e){return t.concat([e+"-"+l,e+"-"+c])}),[]),m=[].concat(a,[r]).reduce((function(t,e){return t.concat([e,e+"-"+l,e+"-"+c])}),[]),g="beforeRead",_="read",b="afterRead",v="beforeMain",y="main",w="afterMain",E="beforeWrite",A="write",T="afterWrite",C=[g,_,b,v,y,w,E,A,T];function O(t){return t?(t.nodeName||"").toLowerCase():null}function x(t){if(null==t)return window;if("[object Window]"!==t.toString()){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function k(t){return t instanceof x(t).Element||t instanceof Element}function L(t){return t instanceof x(t).HTMLElement||t instanceof HTMLElement}function S(t){return"undefined"!=typeof ShadowRoot&&(t instanceof x(t).ShadowRoot||t instanceof ShadowRoot)}const D={name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var e=t.state;Object.keys(e.elements).forEach((function(t){var i=e.styles[t]||{},n=e.attributes[t]||{},s=e.elements[t];L(s)&&O(s)&&(Object.assign(s.style,i),Object.keys(n).forEach((function(t){var e=n[t];!1===e?s.removeAttribute(t):s.setAttribute(t,!0===e?"":e)})))}))},effect:function(t){var e=t.state,i={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,i.popper),e.styles=i,e.elements.arrow&&Object.assign(e.elements.arrow.style,i.arrow),function(){Object.keys(e.elements).forEach((function(t){var n=e.elements[t],s=e.attributes[t]||{},o=Object.keys(e.styles.hasOwnProperty(t)?e.styles[t]:i[t]).reduce((function(t,e){return t[e]="",t}),{});L(n)&&O(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(t){n.removeAttribute(t)})))}))}},requires:["computeStyles"]};function $(t){return t.split("-")[0]}var I=Math.max,N=Math.min,P=Math.round;function M(){var t=navigator.userAgentData;return null!=t&&t.brands&&Array.isArray(t.brands)?t.brands.map((function(t){return t.brand+"/"+t.version})).join(" "):navigator.userAgent}function j(){return!/^((?!chrome|android).)*safari/i.test(M())}function F(t,e,i){void 0===e&&(e=!1),void 0===i&&(i=!1);var n=t.getBoundingClientRect(),s=1,o=1;e&&L(t)&&(s=t.offsetWidth>0&&P(n.width)/t.offsetWidth||1,o=t.offsetHeight>0&&P(n.height)/t.offsetHeight||1);var r=(k(t)?x(t):window).visualViewport,a=!j()&&i,l=(n.left+(a&&r?r.offsetLeft:0))/s,c=(n.top+(a&&r?r.offsetTop:0))/o,h=n.width/s,d=n.height/o;return{width:h,height:d,top:c,right:l+h,bottom:c+d,left:l,x:l,y:c}}function H(t){var e=F(t),i=t.offsetWidth,n=t.offsetHeight;return Math.abs(e.width-i)<=1&&(i=e.width),Math.abs(e.height-n)<=1&&(n=e.height),{x:t.offsetLeft,y:t.offsetTop,width:i,height:n}}function B(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&S(i)){var n=e;do{if(n&&t.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function W(t){return x(t).getComputedStyle(t)}function z(t){return["table","td","th"].indexOf(O(t))>=0}function R(t){return((k(t)?t.ownerDocument:t.document)||window.document).documentElement}function q(t){return"html"===O(t)?t:t.assignedSlot||t.parentNode||(S(t)?t.host:null)||R(t)}function V(t){return L(t)&&"fixed"!==W(t).position?t.offsetParent:null}function Y(t){for(var e=x(t),i=V(t);i&&z(i)&&"static"===W(i).position;)i=V(i);return i&&("html"===O(i)||"body"===O(i)&&"static"===W(i).position)?e:i||function(t){var e=/firefox/i.test(M());if(/Trident/i.test(M())&&L(t)&&"fixed"===W(t).position)return null;var i=q(t);for(S(i)&&(i=i.host);L(i)&&["html","body"].indexOf(O(i))<0;){var n=W(i);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||e&&"filter"===n.willChange||e&&n.filter&&"none"!==n.filter)return i;i=i.parentNode}return null}(t)||e}function K(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function Q(t,e,i){return I(t,N(e,i))}function X(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function U(t,e){return e.reduce((function(e,i){return e[i]=t,e}),{})}const G={name:"arrow",enabled:!0,phase:"main",fn:function(t){var e,r=t.state,l=t.name,c=t.options,h=r.elements.arrow,d=r.modifiersData.popperOffsets,u=$(r.placement),f=K(u),p=[o,s].indexOf(u)>=0?"height":"width";if(h&&d){var m=function(t,e){return X("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:U(t,a))}(c.padding,r),g=H(h),_="y"===f?i:o,b="y"===f?n:s,v=r.rects.reference[p]+r.rects.reference[f]-d[f]-r.rects.popper[p],y=d[f]-r.rects.reference[f],w=Y(h),E=w?"y"===f?w.clientHeight||0:w.clientWidth||0:0,A=v/2-y/2,T=m[_],C=E-g[p]-m[b],O=E/2-g[p]/2+A,x=Q(T,O,C),k=f;r.modifiersData[l]=((e={})[k]=x,e.centerOffset=x-O,e)}},effect:function(t){var e=t.state,i=t.options.element,n=void 0===i?"[data-popper-arrow]":i;null!=n&&("string"!=typeof n||(n=e.elements.popper.querySelector(n)))&&B(e.elements.popper,n)&&(e.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function J(t){return t.split("-")[1]}var Z={top:"auto",right:"auto",bottom:"auto",left:"auto"};function tt(t){var e,r=t.popper,a=t.popperRect,l=t.placement,h=t.variation,d=t.offsets,u=t.position,f=t.gpuAcceleration,p=t.adaptive,m=t.roundOffsets,g=t.isFixed,_=d.x,b=void 0===_?0:_,v=d.y,y=void 0===v?0:v,w="function"==typeof m?m({x:b,y}):{x:b,y};b=w.x,y=w.y;var E=d.hasOwnProperty("x"),A=d.hasOwnProperty("y"),T=o,C=i,O=window;if(p){var k=Y(r),L="clientHeight",S="clientWidth";k===x(r)&&"static"!==W(k=R(r)).position&&"absolute"===u&&(L="scrollHeight",S="scrollWidth"),(l===i||(l===o||l===s)&&h===c)&&(C=n,y-=(g&&k===O&&O.visualViewport?O.visualViewport.height:k[L])-a.height,y*=f?1:-1),l!==o&&(l!==i&&l!==n||h!==c)||(T=s,b-=(g&&k===O&&O.visualViewport?O.visualViewport.width:k[S])-a.width,b*=f?1:-1)}var D,$=Object.assign({position:u},p&&Z),I=!0===m?function(t,e){var i=t.x,n=t.y,s=e.devicePixelRatio||1;return{x:P(i*s)/s||0,y:P(n*s)/s||0}}({x:b,y},x(r)):{x:b,y};return b=I.x,y=I.y,f?Object.assign({},$,((D={})[C]=A?"0":"",D[T]=E?"0":"",D.transform=(O.devicePixelRatio||1)<=1?"translate("+b+"px, "+y+"px)":"translate3d("+b+"px, "+y+"px, 0)",D)):Object.assign({},$,((e={})[C]=A?y+"px":"",e[T]=E?b+"px":"",e.transform="",e))}const et={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var e=t.state,i=t.options,n=i.gpuAcceleration,s=void 0===n||n,o=i.adaptive,r=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:$(e.placement),variation:J(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:s,isFixed:"fixed"===e.options.strategy};null!=e.modifiersData.popperOffsets&&(e.styles.popper=Object.assign({},e.styles.popper,tt(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:r,roundOffsets:l})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,tt(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}};var it={passive:!0};const nt={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var e=t.state,i=t.instance,n=t.options,s=n.scroll,o=void 0===s||s,r=n.resize,a=void 0===r||r,l=x(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);return o&&c.forEach((function(t){t.addEventListener("scroll",i.update,it)})),a&&l.addEventListener("resize",i.update,it),function(){o&&c.forEach((function(t){t.removeEventListener("scroll",i.update,it)})),a&&l.removeEventListener("resize",i.update,it)}},data:{}};var st={left:"right",right:"left",bottom:"top",top:"bottom"};function ot(t){return t.replace(/left|right|bottom|top/g,(function(t){return st[t]}))}var rt={start:"end",end:"start"};function at(t){return t.replace(/start|end/g,(function(t){return rt[t]}))}function lt(t){var e=x(t);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function ct(t){return F(R(t)).left+lt(t).scrollLeft}function ht(t){var e=W(t),i=e.overflow,n=e.overflowX,s=e.overflowY;return/auto|scroll|overlay|hidden/.test(i+s+n)}function dt(t){return["html","body","#document"].indexOf(O(t))>=0?t.ownerDocument.body:L(t)&&ht(t)?t:dt(q(t))}function ut(t,e){var i;void 0===e&&(e=[]);var n=dt(t),s=n===(null==(i=t.ownerDocument)?void 0:i.body),o=x(n),r=s?[o].concat(o.visualViewport||[],ht(n)?n:[]):n,a=e.concat(r);return s?a:a.concat(ut(q(r)))}function ft(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function pt(t,e,i){return e===d?ft(function(t,e){var i=x(t),n=R(t),s=i.visualViewport,o=n.clientWidth,r=n.clientHeight,a=0,l=0;if(s){o=s.width,r=s.height;var c=j();(c||!c&&"fixed"===e)&&(a=s.offsetLeft,l=s.offsetTop)}return{width:o,height:r,x:a+ct(t),y:l}}(t,i)):k(e)?function(t,e){var i=F(t,!1,"fixed"===e);return i.top=i.top+t.clientTop,i.left=i.left+t.clientLeft,i.bottom=i.top+t.clientHeight,i.right=i.left+t.clientWidth,i.width=t.clientWidth,i.height=t.clientHeight,i.x=i.left,i.y=i.top,i}(e,i):ft(function(t){var e,i=R(t),n=lt(t),s=null==(e=t.ownerDocument)?void 0:e.body,o=I(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=I(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+ct(t),l=-n.scrollTop;return"rtl"===W(s||i).direction&&(a+=I(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(R(t)))}function mt(t){var e,r=t.reference,a=t.element,h=t.placement,d=h?$(h):null,u=h?J(h):null,f=r.x+r.width/2-a.width/2,p=r.y+r.height/2-a.height/2;switch(d){case i:e={x:f,y:r.y-a.height};break;case n:e={x:f,y:r.y+r.height};break;case s:e={x:r.x+r.width,y:p};break;case o:e={x:r.x-a.width,y:p};break;default:e={x:r.x,y:r.y}}var m=d?K(d):null;if(null!=m){var g="y"===m?"height":"width";switch(u){case l:e[m]=e[m]-(r[g]/2-a[g]/2);break;case c:e[m]=e[m]+(r[g]/2-a[g]/2)}}return e}function gt(t,e){void 0===e&&(e={});var o=e,r=o.placement,l=void 0===r?t.placement:r,c=o.strategy,p=void 0===c?t.strategy:c,m=o.boundary,g=void 0===m?h:m,_=o.rootBoundary,b=void 0===_?d:_,v=o.elementContext,y=void 0===v?u:v,w=o.altBoundary,E=void 0!==w&&w,A=o.padding,T=void 0===A?0:A,C=X("number"!=typeof T?T:U(T,a)),x=y===u?f:u,S=t.rects.popper,D=t.elements[E?x:y],$=function(t,e,i,n){var s="clippingParents"===e?function(t){var e=ut(q(t)),i=["absolute","fixed"].indexOf(W(t).position)>=0&&L(t)?Y(t):t;return k(i)?e.filter((function(t){return k(t)&&B(t,i)&&"body"!==O(t)})):[]}(t):[].concat(e),o=[].concat(s,[i]),r=o[0],a=o.reduce((function(e,i){var s=pt(t,i,n);return e.top=I(s.top,e.top),e.right=N(s.right,e.right),e.bottom=N(s.bottom,e.bottom),e.left=I(s.left,e.left),e}),pt(t,r,n));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}(k(D)?D:D.contextElement||R(t.elements.popper),g,b,p),P=F(t.elements.reference),M=mt({reference:P,element:S,strategy:"absolute",placement:l}),j=ft(Object.assign({},S,M)),H=y===u?j:P,z={top:$.top-H.top+C.top,bottom:H.bottom-$.bottom+C.bottom,left:$.left-H.left+C.left,right:H.right-$.right+C.right},V=t.modifiersData.offset;if(y===u&&V){var K=V[l];Object.keys(z).forEach((function(t){var e=[s,n].indexOf(t)>=0?1:-1,o=[i,n].indexOf(t)>=0?"y":"x";z[t]+=K[o]*e}))}return z}const _t={name:"flip",enabled:!0,phase:"main",fn:function(t){var e=t.state,c=t.options,h=t.name;if(!e.modifiersData[h]._skip){for(var d=c.mainAxis,u=void 0===d||d,f=c.altAxis,g=void 0===f||f,_=c.fallbackPlacements,b=c.padding,v=c.boundary,y=c.rootBoundary,w=c.altBoundary,E=c.flipVariations,A=void 0===E||E,T=c.allowedAutoPlacements,C=e.options.placement,O=$(C),x=_||(O!==C&&A?function(t){if($(t)===r)return[];var e=ot(t);return[at(t),e,at(e)]}(C):[ot(C)]),k=[C].concat(x).reduce((function(t,i){return t.concat($(i)===r?function(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=i.boundary,o=i.rootBoundary,r=i.padding,l=i.flipVariations,c=i.allowedAutoPlacements,h=void 0===c?m:c,d=J(n),u=d?l?p:p.filter((function(t){return J(t)===d})):a,f=u.filter((function(t){return h.indexOf(t)>=0}));0===f.length&&(f=u);var g=f.reduce((function(e,i){return e[i]=gt(t,{placement:i,boundary:s,rootBoundary:o,padding:r})[$(i)],e}),{});return Object.keys(g).sort((function(t,e){return g[t]-g[e]}))}(e,{placement:i,boundary:v,rootBoundary:y,padding:b,flipVariations:A,allowedAutoPlacements:T}):i)}),[]),L=e.rects.reference,S=e.rects.popper,D=new Map,I=!0,N=k[0],P=0;P=0,B=H?"width":"height",W=gt(e,{placement:M,boundary:v,rootBoundary:y,altBoundary:w,padding:b}),z=H?F?s:o:F?n:i;L[B]>S[B]&&(z=ot(z));var R=ot(z),q=[];if(u&&q.push(W[j]<=0),g&&q.push(W[z]<=0,W[R]<=0),q.every((function(t){return t}))){N=M,I=!1;break}D.set(M,q)}if(I)for(var V=function(t){var e=k.find((function(e){var i=D.get(e);if(i)return i.slice(0,t).every((function(t){return t}))}));if(e)return N=e,"break"},Y=A?3:1;Y>0&&"break"!==V(Y);Y--);e.placement!==N&&(e.modifiersData[h]._skip=!0,e.placement=N,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function bt(t,e,i){return void 0===i&&(i={x:0,y:0}),{top:t.top-e.height-i.y,right:t.right-e.width+i.x,bottom:t.bottom-e.height+i.y,left:t.left-e.width-i.x}}function vt(t){return[i,s,n,o].some((function(e){return t[e]>=0}))}const yt={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var e=t.state,i=t.name,n=e.rects.reference,s=e.rects.popper,o=e.modifiersData.preventOverflow,r=gt(e,{elementContext:"reference"}),a=gt(e,{altBoundary:!0}),l=bt(r,n),c=bt(a,s,o),h=vt(l),d=vt(c);e.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:h,hasPopperEscaped:d},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":d})}},wt={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var e=t.state,n=t.options,r=t.name,a=n.offset,l=void 0===a?[0,0]:a,c=m.reduce((function(t,n){return t[n]=function(t,e,n){var r=$(t),a=[o,i].indexOf(r)>=0?-1:1,l="function"==typeof n?n(Object.assign({},e,{placement:t})):n,c=l[0],h=l[1];return c=c||0,h=(h||0)*a,[o,s].indexOf(r)>=0?{x:h,y:c}:{x:c,y:h}}(n,e.rects,l),t}),{}),h=c[e.placement],d=h.x,u=h.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=d,e.modifiersData.popperOffsets.y+=u),e.modifiersData[r]=c}},Et={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,i=t.name;e.modifiersData[i]=mt({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},At={name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var e=t.state,r=t.options,a=t.name,c=r.mainAxis,h=void 0===c||c,d=r.altAxis,u=void 0!==d&&d,f=r.boundary,p=r.rootBoundary,m=r.altBoundary,g=r.padding,_=r.tether,b=void 0===_||_,v=r.tetherOffset,y=void 0===v?0:v,w=gt(e,{boundary:f,rootBoundary:p,padding:g,altBoundary:m}),E=$(e.placement),A=J(e.placement),T=!A,C=K(E),O="x"===C?"y":"x",x=e.modifiersData.popperOffsets,k=e.rects.reference,L=e.rects.popper,S="function"==typeof y?y(Object.assign({},e.rects,{placement:e.placement})):y,D="number"==typeof S?{mainAxis:S,altAxis:S}:Object.assign({mainAxis:0,altAxis:0},S),P=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,M={x:0,y:0};if(x){if(h){var j,F="y"===C?i:o,B="y"===C?n:s,W="y"===C?"height":"width",z=x[C],R=z+w[F],q=z-w[B],V=b?-L[W]/2:0,X=A===l?k[W]:L[W],U=A===l?-L[W]:-k[W],G=e.elements.arrow,Z=b&&G?H(G):{width:0,height:0},tt=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},et=tt[F],it=tt[B],nt=Q(0,k[W],Z[W]),st=T?k[W]/2-V-nt-et-D.mainAxis:X-nt-et-D.mainAxis,ot=T?-k[W]/2+V+nt+it+D.mainAxis:U+nt+it+D.mainAxis,rt=e.elements.arrow&&Y(e.elements.arrow),at=rt?"y"===C?rt.clientTop||0:rt.clientLeft||0:0,lt=null!=(j=null==P?void 0:P[C])?j:0,ct=z+ot-lt,ht=Q(b?N(R,z+st-lt-at):R,z,b?I(q,ct):q);x[C]=ht,M[C]=ht-z}if(u){var dt,ut="x"===C?i:o,ft="x"===C?n:s,pt=x[O],mt="y"===O?"height":"width",_t=pt+w[ut],bt=pt-w[ft],vt=-1!==[i,o].indexOf(E),yt=null!=(dt=null==P?void 0:P[O])?dt:0,wt=vt?_t:pt-k[mt]-L[mt]-yt+D.altAxis,Et=vt?pt+k[mt]+L[mt]-yt-D.altAxis:bt,At=b&&vt?function(t,e,i){var n=Q(t,e,i);return n>i?i:n}(wt,pt,Et):Q(b?wt:_t,pt,b?Et:bt);x[O]=At,M[O]=At-pt}e.modifiersData[a]=M}},requiresIfExists:["offset"]};function Tt(t,e,i){void 0===i&&(i=!1);var n,s,o=L(e),r=L(e)&&function(t){var e=t.getBoundingClientRect(),i=P(e.width)/t.offsetWidth||1,n=P(e.height)/t.offsetHeight||1;return 1!==i||1!==n}(e),a=R(e),l=F(t,r,i),c={scrollLeft:0,scrollTop:0},h={x:0,y:0};return(o||!o&&!i)&&(("body"!==O(e)||ht(a))&&(c=(n=e)!==x(n)&&L(n)?{scrollLeft:(s=n).scrollLeft,scrollTop:s.scrollTop}:lt(n)),L(e)?((h=F(e,!0)).x+=e.clientLeft,h.y+=e.clientTop):a&&(h.x=ct(a))),{x:l.left+c.scrollLeft-h.x,y:l.top+c.scrollTop-h.y,width:l.width,height:l.height}}function Ct(t){var e=new Map,i=new Set,n=[];function s(t){i.add(t.name),[].concat(t.requires||[],t.requiresIfExists||[]).forEach((function(t){if(!i.has(t)){var n=e.get(t);n&&s(n)}})),n.push(t)}return t.forEach((function(t){e.set(t.name,t)})),t.forEach((function(t){i.has(t.name)||s(t)})),n}var Ot={placement:"bottom",modifiers:[],strategy:"absolute"};function xt(){for(var t=arguments.length,e=new Array(t),i=0;i$t.has(t)&&$t.get(t).get(e)||null,remove(t,e){if(!$t.has(t))return;const i=$t.get(t);i.delete(e),0===i.size&&$t.delete(t)}},Nt="transitionend",Pt=t=>(t&&window.CSS&&window.CSS.escape&&(t=t.replace(/#([^\s"#']+)/g,((t,e)=>`#${CSS.escape(e)}`))),t),Mt=t=>{t.dispatchEvent(new Event(Nt))},jt=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),Ft=t=>jt(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?document.querySelector(Pt(t)):null,Ht=t=>{if(!jt(t)||0===t.getClientRects().length)return!1;const e="visible"===getComputedStyle(t).getPropertyValue("visibility"),i=t.closest("details:not([open])");if(!i)return e;if(i!==t){const e=t.closest("summary");if(e&&e.parentNode!==i)return!1;if(null===e)return!1}return e},Bt=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),Wt=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?Wt(t.parentNode):null},zt=()=>{},Rt=t=>{t.offsetHeight},qt=()=>window.jQuery&&!document.body.hasAttribute("data-bs-no-jquery")?window.jQuery:null,Vt=[],Yt=()=>"rtl"===document.documentElement.dir,Kt=t=>{var e;e=()=>{const e=qt();if(e){const i=t.NAME,n=e.fn[i];e.fn[i]=t.jQueryInterface,e.fn[i].Constructor=t,e.fn[i].noConflict=()=>(e.fn[i]=n,t.jQueryInterface)}},"loading"===document.readyState?(Vt.length||document.addEventListener("DOMContentLoaded",(()=>{for(const t of Vt)t()})),Vt.push(e)):e()},Qt=(t,e=[],i=t)=>"function"==typeof t?t(...e):i,Xt=(t,e,i=!0)=>{if(!i)return void Qt(t);const n=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:i}=window.getComputedStyle(t);const n=Number.parseFloat(e),s=Number.parseFloat(i);return n||s?(e=e.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(i))):0})(e)+5;let s=!1;const o=({target:i})=>{i===e&&(s=!0,e.removeEventListener(Nt,o),Qt(t))};e.addEventListener(Nt,o),setTimeout((()=>{s||Mt(e)}),n)},Ut=(t,e,i,n)=>{const s=t.length;let o=t.indexOf(e);return-1===o?!i&&n?t[s-1]:t[0]:(o+=i?1:-1,n&&(o=(o+s)%s),t[Math.max(0,Math.min(o,s-1))])},Gt=/[^.]*(?=\..*)\.|.*/,Jt=/\..*/,Zt=/::\d+$/,te={};let ee=1;const ie={mouseenter:"mouseover",mouseleave:"mouseout"},ne=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function se(t,e){return e&&`${e}::${ee++}`||t.uidEvent||ee++}function oe(t){const e=se(t);return t.uidEvent=e,te[e]=te[e]||{},te[e]}function re(t,e,i=null){return Object.values(t).find((t=>t.callable===e&&t.delegationSelector===i))}function ae(t,e,i){const n="string"==typeof e,s=n?i:e||i;let o=de(t);return ne.has(o)||(o=t),[n,s,o]}function le(t,e,i,n,s){if("string"!=typeof e||!t)return;let[o,r,a]=ae(e,i,n);if(e in ie){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};r=t(r)}const l=oe(t),c=l[a]||(l[a]={}),h=re(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=se(r,e.replace(Gt,"")),u=o?function(t,e,i){return function n(s){const o=t.querySelectorAll(e);for(let{target:r}=s;r&&r!==this;r=r.parentNode)for(const a of o)if(a===r)return fe(s,{delegateTarget:r}),n.oneOff&&ue.off(t,s.type,e,i),i.apply(r,[s])}}(t,i,r):function(t,e){return function i(n){return fe(n,{delegateTarget:t}),i.oneOff&&ue.off(t,n.type,e),e.apply(t,[n])}}(t,r);u.delegationSelector=o?i:null,u.callable=r,u.oneOff=s,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function ce(t,e,i,n,s){const o=re(e[i],n,s);o&&(t.removeEventListener(i,o,Boolean(s)),delete e[i][o.uidEvent])}function he(t,e,i,n){const s=e[i]||{};for(const[o,r]of Object.entries(s))o.includes(n)&&ce(t,e,i,r.callable,r.delegationSelector)}function de(t){return t=t.replace(Jt,""),ie[t]||t}const ue={on(t,e,i,n){le(t,e,i,n,!1)},one(t,e,i,n){le(t,e,i,n,!0)},off(t,e,i,n){if("string"!=typeof e||!t)return;const[s,o,r]=ae(e,i,n),a=r!==e,l=oe(t),c=l[r]||{},h=e.startsWith(".");if(void 0===o){if(h)for(const i of Object.keys(l))he(t,l,i,e.slice(1));for(const[i,n]of Object.entries(c)){const s=i.replace(Zt,"");a&&!e.includes(s)||ce(t,l,r,n.callable,n.delegationSelector)}}else{if(!Object.keys(c).length)return;ce(t,l,r,o,s?i:null)}},trigger(t,e,i){if("string"!=typeof e||!t)return null;const n=qt();let s=null,o=!0,r=!0,a=!1;e!==de(e)&&n&&(s=n.Event(e,i),n(t).trigger(s),o=!s.isPropagationStopped(),r=!s.isImmediatePropagationStopped(),a=s.isDefaultPrevented());const l=fe(new Event(e,{bubbles:o,cancelable:!0}),i);return a&&l.preventDefault(),r&&t.dispatchEvent(l),l.defaultPrevented&&s&&s.preventDefault(),l}};function fe(t,e={}){for(const[i,n]of Object.entries(e))try{t[i]=n}catch(e){Object.defineProperty(t,i,{configurable:!0,get:()=>n})}return t}function pe(t){if("true"===t)return!0;if("false"===t)return!1;if(t===Number(t).toString())return Number(t);if(""===t||"null"===t)return null;if("string"!=typeof t)return t;try{return JSON.parse(decodeURIComponent(t))}catch(e){return t}}function me(t){return t.replace(/[A-Z]/g,(t=>`-${t.toLowerCase()}`))}const ge={setDataAttribute(t,e,i){t.setAttribute(`data-bs-${me(e)}`,i)},removeDataAttribute(t,e){t.removeAttribute(`data-bs-${me(e)}`)},getDataAttributes(t){if(!t)return{};const e={},i=Object.keys(t.dataset).filter((t=>t.startsWith("bs")&&!t.startsWith("bsConfig")));for(const n of i){let i=n.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),e[i]=pe(t.dataset[n])}return e},getDataAttribute:(t,e)=>pe(t.getAttribute(`data-bs-${me(e)}`))};class _e{static get Default(){return{}}static get DefaultType(){return{}}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}_getConfig(t){return t=this._mergeConfigObj(t),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}_configAfterMerge(t){return t}_mergeConfigObj(t,e){const i=jt(e)?ge.getDataAttribute(e,"config"):{};return{...this.constructor.Default,..."object"==typeof i?i:{},...jt(e)?ge.getDataAttributes(e):{},..."object"==typeof t?t:{}}}_typeCheckConfig(t,e=this.constructor.DefaultType){for(const[n,s]of Object.entries(e)){const e=t[n],o=jt(e)?"element":null==(i=e)?`${i}`:Object.prototype.toString.call(i).match(/\s([a-z]+)/i)[1].toLowerCase();if(!new RegExp(s).test(o))throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${n}" provided type "${o}" but expected type "${s}".`)}var i}}class be extends _e{constructor(t,e){super(),(t=Ft(t))&&(this._element=t,this._config=this._getConfig(e),It.set(this._element,this.constructor.DATA_KEY,this))}dispose(){It.remove(this._element,this.constructor.DATA_KEY),ue.off(this._element,this.constructor.EVENT_KEY);for(const t of Object.getOwnPropertyNames(this))this[t]=null}_queueCallback(t,e,i=!0){Xt(t,e,i)}_getConfig(t){return t=this._mergeConfigObj(t,this._element),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}static getInstance(t){return It.get(Ft(t),this.DATA_KEY)}static getOrCreateInstance(t,e={}){return this.getInstance(t)||new this(t,"object"==typeof e?e:null)}static get VERSION(){return"5.3.2"}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}static eventName(t){return`${t}${this.EVENT_KEY}`}}const ve=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let i=t.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),e=i&&"#"!==i?Pt(i.trim()):null}return e},ye={find:(t,e=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter((t=>t.matches(e))),parents(t,e){const i=[];let n=t.parentNode.closest(e);for(;n;)i.push(n),n=n.parentNode.closest(e);return i},prev(t,e){let i=t.previousElementSibling;for(;i;){if(i.matches(e))return[i];i=i.previousElementSibling}return[]},next(t,e){let i=t.nextElementSibling;for(;i;){if(i.matches(e))return[i];i=i.nextElementSibling}return[]},focusableChildren(t){const e=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map((t=>`${t}:not([tabindex^="-"])`)).join(",");return this.find(e,t).filter((t=>!Bt(t)&&Ht(t)))},getSelectorFromElement(t){const e=ve(t);return e&&ye.findOne(e)?e:null},getElementFromSelector(t){const e=ve(t);return e?ye.findOne(e):null},getMultipleElementsFromSelector(t){const e=ve(t);return e?ye.find(e):[]}},we=(t,e="hide")=>{const i=`click.dismiss${t.EVENT_KEY}`,n=t.NAME;ue.on(document,i,`[data-bs-dismiss="${n}"]`,(function(i){if(["A","AREA"].includes(this.tagName)&&i.preventDefault(),Bt(this))return;const s=ye.getElementFromSelector(this)||this.closest(`.${n}`);t.getOrCreateInstance(s)[e]()}))},Ee=".bs.alert",Ae=`close${Ee}`,Te=`closed${Ee}`;class Ce extends be{static get NAME(){return"alert"}close(){if(ue.trigger(this._element,Ae).defaultPrevented)return;this._element.classList.remove("show");const t=this._element.classList.contains("fade");this._queueCallback((()=>this._destroyElement()),this._element,t)}_destroyElement(){this._element.remove(),ue.trigger(this._element,Te),this.dispose()}static jQueryInterface(t){return this.each((function(){const e=Ce.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}we(Ce,"close"),Kt(Ce);const Oe='[data-bs-toggle="button"]';class xe extends be{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){const e=xe.getOrCreateInstance(this);"toggle"===t&&e[t]()}))}}ue.on(document,"click.bs.button.data-api",Oe,(t=>{t.preventDefault();const e=t.target.closest(Oe);xe.getOrCreateInstance(e).toggle()})),Kt(xe);const ke=".bs.swipe",Le=`touchstart${ke}`,Se=`touchmove${ke}`,De=`touchend${ke}`,$e=`pointerdown${ke}`,Ie=`pointerup${ke}`,Ne={endCallback:null,leftCallback:null,rightCallback:null},Pe={endCallback:"(function|null)",leftCallback:"(function|null)",rightCallback:"(function|null)"};class Me extends _e{constructor(t,e){super(),this._element=t,t&&Me.isSupported()&&(this._config=this._getConfig(e),this._deltaX=0,this._supportPointerEvents=Boolean(window.PointerEvent),this._initEvents())}static get Default(){return Ne}static get DefaultType(){return Pe}static get NAME(){return"swipe"}dispose(){ue.off(this._element,ke)}_start(t){this._supportPointerEvents?this._eventIsPointerPenTouch(t)&&(this._deltaX=t.clientX):this._deltaX=t.touches[0].clientX}_end(t){this._eventIsPointerPenTouch(t)&&(this._deltaX=t.clientX-this._deltaX),this._handleSwipe(),Qt(this._config.endCallback)}_move(t){this._deltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this._deltaX}_handleSwipe(){const t=Math.abs(this._deltaX);if(t<=40)return;const e=t/this._deltaX;this._deltaX=0,e&&Qt(e>0?this._config.rightCallback:this._config.leftCallback)}_initEvents(){this._supportPointerEvents?(ue.on(this._element,$e,(t=>this._start(t))),ue.on(this._element,Ie,(t=>this._end(t))),this._element.classList.add("pointer-event")):(ue.on(this._element,Le,(t=>this._start(t))),ue.on(this._element,Se,(t=>this._move(t))),ue.on(this._element,De,(t=>this._end(t))))}_eventIsPointerPenTouch(t){return this._supportPointerEvents&&("pen"===t.pointerType||"touch"===t.pointerType)}static isSupported(){return"ontouchstart"in document.documentElement||navigator.maxTouchPoints>0}}const je=".bs.carousel",Fe=".data-api",He="next",Be="prev",We="left",ze="right",Re=`slide${je}`,qe=`slid${je}`,Ve=`keydown${je}`,Ye=`mouseenter${je}`,Ke=`mouseleave${je}`,Qe=`dragstart${je}`,Xe=`load${je}${Fe}`,Ue=`click${je}${Fe}`,Ge="carousel",Je="active",Ze=".active",ti=".carousel-item",ei=Ze+ti,ii={ArrowLeft:ze,ArrowRight:We},ni={interval:5e3,keyboard:!0,pause:"hover",ride:!1,touch:!0,wrap:!0},si={interval:"(number|boolean)",keyboard:"boolean",pause:"(string|boolean)",ride:"(boolean|string)",touch:"boolean",wrap:"boolean"};class oi extends be{constructor(t,e){super(t,e),this._interval=null,this._activeElement=null,this._isSliding=!1,this.touchTimeout=null,this._swipeHelper=null,this._indicatorsElement=ye.findOne(".carousel-indicators",this._element),this._addEventListeners(),this._config.ride===Ge&&this.cycle()}static get Default(){return ni}static get DefaultType(){return si}static get NAME(){return"carousel"}next(){this._slide(He)}nextWhenVisible(){!document.hidden&&Ht(this._element)&&this.next()}prev(){this._slide(Be)}pause(){this._isSliding&&Mt(this._element),this._clearInterval()}cycle(){this._clearInterval(),this._updateInterval(),this._interval=setInterval((()=>this.nextWhenVisible()),this._config.interval)}_maybeEnableCycle(){this._config.ride&&(this._isSliding?ue.one(this._element,qe,(()=>this.cycle())):this.cycle())}to(t){const e=this._getItems();if(t>e.length-1||t<0)return;if(this._isSliding)return void ue.one(this._element,qe,(()=>this.to(t)));const i=this._getItemIndex(this._getActive());if(i===t)return;const n=t>i?He:Be;this._slide(n,e[t])}dispose(){this._swipeHelper&&this._swipeHelper.dispose(),super.dispose()}_configAfterMerge(t){return t.defaultInterval=t.interval,t}_addEventListeners(){this._config.keyboard&&ue.on(this._element,Ve,(t=>this._keydown(t))),"hover"===this._config.pause&&(ue.on(this._element,Ye,(()=>this.pause())),ue.on(this._element,Ke,(()=>this._maybeEnableCycle()))),this._config.touch&&Me.isSupported()&&this._addTouchEventListeners()}_addTouchEventListeners(){for(const t of ye.find(".carousel-item img",this._element))ue.on(t,Qe,(t=>t.preventDefault()));const t={leftCallback:()=>this._slide(this._directionToOrder(We)),rightCallback:()=>this._slide(this._directionToOrder(ze)),endCallback:()=>{"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((()=>this._maybeEnableCycle()),500+this._config.interval))}};this._swipeHelper=new Me(this._element,t)}_keydown(t){if(/input|textarea/i.test(t.target.tagName))return;const e=ii[t.key];e&&(t.preventDefault(),this._slide(this._directionToOrder(e)))}_getItemIndex(t){return this._getItems().indexOf(t)}_setActiveIndicatorElement(t){if(!this._indicatorsElement)return;const e=ye.findOne(Ze,this._indicatorsElement);e.classList.remove(Je),e.removeAttribute("aria-current");const i=ye.findOne(`[data-bs-slide-to="${t}"]`,this._indicatorsElement);i&&(i.classList.add(Je),i.setAttribute("aria-current","true"))}_updateInterval(){const t=this._activeElement||this._getActive();if(!t)return;const e=Number.parseInt(t.getAttribute("data-bs-interval"),10);this._config.interval=e||this._config.defaultInterval}_slide(t,e=null){if(this._isSliding)return;const i=this._getActive(),n=t===He,s=e||Ut(this._getItems(),i,n,this._config.wrap);if(s===i)return;const o=this._getItemIndex(s),r=e=>ue.trigger(this._element,e,{relatedTarget:s,direction:this._orderToDirection(t),from:this._getItemIndex(i),to:o});if(r(Re).defaultPrevented)return;if(!i||!s)return;const a=Boolean(this._interval);this.pause(),this._isSliding=!0,this._setActiveIndicatorElement(o),this._activeElement=s;const l=n?"carousel-item-start":"carousel-item-end",c=n?"carousel-item-next":"carousel-item-prev";s.classList.add(c),Rt(s),i.classList.add(l),s.classList.add(l),this._queueCallback((()=>{s.classList.remove(l,c),s.classList.add(Je),i.classList.remove(Je,c,l),this._isSliding=!1,r(qe)}),i,this._isAnimated()),a&&this.cycle()}_isAnimated(){return this._element.classList.contains("slide")}_getActive(){return ye.findOne(ei,this._element)}_getItems(){return ye.find(ti,this._element)}_clearInterval(){this._interval&&(clearInterval(this._interval),this._interval=null)}_directionToOrder(t){return Yt()?t===We?Be:He:t===We?He:Be}_orderToDirection(t){return Yt()?t===Be?We:ze:t===Be?ze:We}static jQueryInterface(t){return this.each((function(){const e=oi.getOrCreateInstance(this,t);if("number"!=typeof t){if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}else e.to(t)}))}}ue.on(document,Ue,"[data-bs-slide], [data-bs-slide-to]",(function(t){const e=ye.getElementFromSelector(this);if(!e||!e.classList.contains(Ge))return;t.preventDefault();const i=oi.getOrCreateInstance(e),n=this.getAttribute("data-bs-slide-to");return n?(i.to(n),void i._maybeEnableCycle()):"next"===ge.getDataAttribute(this,"slide")?(i.next(),void i._maybeEnableCycle()):(i.prev(),void i._maybeEnableCycle())})),ue.on(window,Xe,(()=>{const t=ye.find('[data-bs-ride="carousel"]');for(const e of t)oi.getOrCreateInstance(e)})),Kt(oi);const ri=".bs.collapse",ai=`show${ri}`,li=`shown${ri}`,ci=`hide${ri}`,hi=`hidden${ri}`,di=`click${ri}.data-api`,ui="show",fi="collapse",pi="collapsing",mi=`:scope .${fi} .${fi}`,gi='[data-bs-toggle="collapse"]',_i={parent:null,toggle:!0},bi={parent:"(null|element)",toggle:"boolean"};class vi extends be{constructor(t,e){super(t,e),this._isTransitioning=!1,this._triggerArray=[];const i=ye.find(gi);for(const t of i){const e=ye.getSelectorFromElement(t),i=ye.find(e).filter((t=>t===this._element));null!==e&&i.length&&this._triggerArray.push(t)}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return _i}static get DefaultType(){return bi}static get NAME(){return"collapse"}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[];if(this._config.parent&&(t=this._getFirstLevelChildren(".collapse.show, .collapse.collapsing").filter((t=>t!==this._element)).map((t=>vi.getOrCreateInstance(t,{toggle:!1})))),t.length&&t[0]._isTransitioning)return;if(ue.trigger(this._element,ai).defaultPrevented)return;for(const e of t)e.hide();const e=this._getDimension();this._element.classList.remove(fi),this._element.classList.add(pi),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const i=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(pi),this._element.classList.add(fi,ui),this._element.style[e]="",ue.trigger(this._element,li)}),this._element,!0),this._element.style[e]=`${this._element[i]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(ue.trigger(this._element,ci).defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,Rt(this._element),this._element.classList.add(pi),this._element.classList.remove(fi,ui);for(const t of this._triggerArray){const e=ye.getElementFromSelector(t);e&&!this._isShown(e)&&this._addAriaAndCollapsedClass([t],!1)}this._isTransitioning=!0,this._element.style[t]="",this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(pi),this._element.classList.add(fi),ue.trigger(this._element,hi)}),this._element,!0)}_isShown(t=this._element){return t.classList.contains(ui)}_configAfterMerge(t){return t.toggle=Boolean(t.toggle),t.parent=Ft(t.parent),t}_getDimension(){return this._element.classList.contains("collapse-horizontal")?"width":"height"}_initializeChildren(){if(!this._config.parent)return;const t=this._getFirstLevelChildren(gi);for(const e of t){const t=ye.getElementFromSelector(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))}}_getFirstLevelChildren(t){const e=ye.find(mi,this._config.parent);return ye.find(t,this._config.parent).filter((t=>!e.includes(t)))}_addAriaAndCollapsedClass(t,e){if(t.length)for(const i of t)i.classList.toggle("collapsed",!e),i.setAttribute("aria-expanded",e)}static jQueryInterface(t){const e={};return"string"==typeof t&&/show|hide/.test(t)&&(e.toggle=!1),this.each((function(){const i=vi.getOrCreateInstance(this,e);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t]()}}))}}ue.on(document,di,gi,(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();for(const t of ye.getMultipleElementsFromSelector(this))vi.getOrCreateInstance(t,{toggle:!1}).toggle()})),Kt(vi);const yi="dropdown",wi=".bs.dropdown",Ei=".data-api",Ai="ArrowUp",Ti="ArrowDown",Ci=`hide${wi}`,Oi=`hidden${wi}`,xi=`show${wi}`,ki=`shown${wi}`,Li=`click${wi}${Ei}`,Si=`keydown${wi}${Ei}`,Di=`keyup${wi}${Ei}`,$i="show",Ii='[data-bs-toggle="dropdown"]:not(.disabled):not(:disabled)',Ni=`${Ii}.${$i}`,Pi=".dropdown-menu",Mi=Yt()?"top-end":"top-start",ji=Yt()?"top-start":"top-end",Fi=Yt()?"bottom-end":"bottom-start",Hi=Yt()?"bottom-start":"bottom-end",Bi=Yt()?"left-start":"right-start",Wi=Yt()?"right-start":"left-start",zi={autoClose:!0,boundary:"clippingParents",display:"dynamic",offset:[0,2],popperConfig:null,reference:"toggle"},Ri={autoClose:"(boolean|string)",boundary:"(string|element)",display:"string",offset:"(array|string|function)",popperConfig:"(null|object|function)",reference:"(string|element|object)"};class qi extends be{constructor(t,e){super(t,e),this._popper=null,this._parent=this._element.parentNode,this._menu=ye.next(this._element,Pi)[0]||ye.prev(this._element,Pi)[0]||ye.findOne(Pi,this._parent),this._inNavbar=this._detectNavbar()}static get Default(){return zi}static get DefaultType(){return Ri}static get NAME(){return yi}toggle(){return this._isShown()?this.hide():this.show()}show(){if(Bt(this._element)||this._isShown())return;const t={relatedTarget:this._element};if(!ue.trigger(this._element,xi,t).defaultPrevented){if(this._createPopper(),"ontouchstart"in document.documentElement&&!this._parent.closest(".navbar-nav"))for(const t of[].concat(...document.body.children))ue.on(t,"mouseover",zt);this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add($i),this._element.classList.add($i),ue.trigger(this._element,ki,t)}}hide(){if(Bt(this._element)||!this._isShown())return;const t={relatedTarget:this._element};this._completeHide(t)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(t){if(!ue.trigger(this._element,Ci,t).defaultPrevented){if("ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))ue.off(t,"mouseover",zt);this._popper&&this._popper.destroy(),this._menu.classList.remove($i),this._element.classList.remove($i),this._element.setAttribute("aria-expanded","false"),ge.removeDataAttribute(this._menu,"popper"),ue.trigger(this._element,Oi,t)}}_getConfig(t){if("object"==typeof(t=super._getConfig(t)).reference&&!jt(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError(`${yi.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return t}_createPopper(){if(void 0===e)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;"parent"===this._config.reference?t=this._parent:jt(this._config.reference)?t=Ft(this._config.reference):"object"==typeof this._config.reference&&(t=this._config.reference);const i=this._getPopperConfig();this._popper=St(t,this._menu,i)}_isShown(){return this._menu.classList.contains($i)}_getPlacement(){const t=this._parent;if(t.classList.contains("dropend"))return Bi;if(t.classList.contains("dropstart"))return Wi;if(t.classList.contains("dropup-center"))return"top";if(t.classList.contains("dropdown-center"))return"bottom";const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?ji:Mi:e?Hi:Fi}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return(this._inNavbar||"static"===this._config.display)&&(ge.setDataAttribute(this._menu,"popper","static"),t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,...Qt(this._config.popperConfig,[t])}}_selectMenuItem({key:t,target:e}){const i=ye.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter((t=>Ht(t)));i.length&&Ut(i,e,t===Ti,!i.includes(e)).focus()}static jQueryInterface(t){return this.each((function(){const e=qi.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}static clearMenus(t){if(2===t.button||"keyup"===t.type&&"Tab"!==t.key)return;const e=ye.find(Ni);for(const i of e){const e=qi.getInstance(i);if(!e||!1===e._config.autoClose)continue;const n=t.composedPath(),s=n.includes(e._menu);if(n.includes(e._element)||"inside"===e._config.autoClose&&!s||"outside"===e._config.autoClose&&s)continue;if(e._menu.contains(t.target)&&("keyup"===t.type&&"Tab"===t.key||/input|select|option|textarea|form/i.test(t.target.tagName)))continue;const o={relatedTarget:e._element};"click"===t.type&&(o.clickEvent=t),e._completeHide(o)}}static dataApiKeydownHandler(t){const e=/input|textarea/i.test(t.target.tagName),i="Escape"===t.key,n=[Ai,Ti].includes(t.key);if(!n&&!i)return;if(e&&!i)return;t.preventDefault();const s=this.matches(Ii)?this:ye.prev(this,Ii)[0]||ye.next(this,Ii)[0]||ye.findOne(Ii,t.delegateTarget.parentNode),o=qi.getOrCreateInstance(s);if(n)return t.stopPropagation(),o.show(),void o._selectMenuItem(t);o._isShown()&&(t.stopPropagation(),o.hide(),s.focus())}}ue.on(document,Si,Ii,qi.dataApiKeydownHandler),ue.on(document,Si,Pi,qi.dataApiKeydownHandler),ue.on(document,Li,qi.clearMenus),ue.on(document,Di,qi.clearMenus),ue.on(document,Li,Ii,(function(t){t.preventDefault(),qi.getOrCreateInstance(this).toggle()})),Kt(qi);const Vi="backdrop",Yi="show",Ki=`mousedown.bs.${Vi}`,Qi={className:"modal-backdrop",clickCallback:null,isAnimated:!1,isVisible:!0,rootElement:"body"},Xi={className:"string",clickCallback:"(function|null)",isAnimated:"boolean",isVisible:"boolean",rootElement:"(element|string)"};class Ui extends _e{constructor(t){super(),this._config=this._getConfig(t),this._isAppended=!1,this._element=null}static get Default(){return Qi}static get DefaultType(){return Xi}static get NAME(){return Vi}show(t){if(!this._config.isVisible)return void Qt(t);this._append();const e=this._getElement();this._config.isAnimated&&Rt(e),e.classList.add(Yi),this._emulateAnimation((()=>{Qt(t)}))}hide(t){this._config.isVisible?(this._getElement().classList.remove(Yi),this._emulateAnimation((()=>{this.dispose(),Qt(t)}))):Qt(t)}dispose(){this._isAppended&&(ue.off(this._element,Ki),this._element.remove(),this._isAppended=!1)}_getElement(){if(!this._element){const t=document.createElement("div");t.className=this._config.className,this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_configAfterMerge(t){return t.rootElement=Ft(t.rootElement),t}_append(){if(this._isAppended)return;const t=this._getElement();this._config.rootElement.append(t),ue.on(t,Ki,(()=>{Qt(this._config.clickCallback)})),this._isAppended=!0}_emulateAnimation(t){Xt(t,this._getElement(),this._config.isAnimated)}}const Gi=".bs.focustrap",Ji=`focusin${Gi}`,Zi=`keydown.tab${Gi}`,tn="backward",en={autofocus:!0,trapElement:null},nn={autofocus:"boolean",trapElement:"element"};class sn extends _e{constructor(t){super(),this._config=this._getConfig(t),this._isActive=!1,this._lastTabNavDirection=null}static get Default(){return en}static get DefaultType(){return nn}static get NAME(){return"focustrap"}activate(){this._isActive||(this._config.autofocus&&this._config.trapElement.focus(),ue.off(document,Gi),ue.on(document,Ji,(t=>this._handleFocusin(t))),ue.on(document,Zi,(t=>this._handleKeydown(t))),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,ue.off(document,Gi))}_handleFocusin(t){const{trapElement:e}=this._config;if(t.target===document||t.target===e||e.contains(t.target))return;const i=ye.focusableChildren(e);0===i.length?e.focus():this._lastTabNavDirection===tn?i[i.length-1].focus():i[0].focus()}_handleKeydown(t){"Tab"===t.key&&(this._lastTabNavDirection=t.shiftKey?tn:"forward")}}const on=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",rn=".sticky-top",an="padding-right",ln="margin-right";class cn{constructor(){this._element=document.body}getWidth(){const t=document.documentElement.clientWidth;return Math.abs(window.innerWidth-t)}hide(){const t=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,an,(e=>e+t)),this._setElementAttributes(on,an,(e=>e+t)),this._setElementAttributes(rn,ln,(e=>e-t))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,an),this._resetElementAttributes(on,an),this._resetElementAttributes(rn,ln)}isOverflowing(){return this.getWidth()>0}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(t,e,i){const n=this.getWidth();this._applyManipulationCallback(t,(t=>{if(t!==this._element&&window.innerWidth>t.clientWidth+n)return;this._saveInitialAttribute(t,e);const s=window.getComputedStyle(t).getPropertyValue(e);t.style.setProperty(e,`${i(Number.parseFloat(s))}px`)}))}_saveInitialAttribute(t,e){const i=t.style.getPropertyValue(e);i&&ge.setDataAttribute(t,e,i)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const i=ge.getDataAttribute(t,e);null!==i?(ge.removeDataAttribute(t,e),t.style.setProperty(e,i)):t.style.removeProperty(e)}))}_applyManipulationCallback(t,e){if(jt(t))e(t);else for(const i of ye.find(t,this._element))e(i)}}const hn=".bs.modal",dn=`hide${hn}`,un=`hidePrevented${hn}`,fn=`hidden${hn}`,pn=`show${hn}`,mn=`shown${hn}`,gn=`resize${hn}`,_n=`click.dismiss${hn}`,bn=`mousedown.dismiss${hn}`,vn=`keydown.dismiss${hn}`,yn=`click${hn}.data-api`,wn="modal-open",En="show",An="modal-static",Tn={backdrop:!0,focus:!0,keyboard:!0},Cn={backdrop:"(boolean|string)",focus:"boolean",keyboard:"boolean"};class On extends be{constructor(t,e){super(t,e),this._dialog=ye.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._isTransitioning=!1,this._scrollBar=new cn,this._addEventListeners()}static get Default(){return Tn}static get DefaultType(){return Cn}static get NAME(){return"modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||ue.trigger(this._element,pn,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isTransitioning=!0,this._scrollBar.hide(),document.body.classList.add(wn),this._adjustDialog(),this._backdrop.show((()=>this._showElement(t))))}hide(){this._isShown&&!this._isTransitioning&&(ue.trigger(this._element,dn).defaultPrevented||(this._isShown=!1,this._isTransitioning=!0,this._focustrap.deactivate(),this._element.classList.remove(En),this._queueCallback((()=>this._hideModal()),this._element,this._isAnimated())))}dispose(){ue.off(window,hn),ue.off(this._dialog,hn),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new Ui({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new sn({trapElement:this._element})}_showElement(t){document.body.contains(this._element)||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0;const e=ye.findOne(".modal-body",this._dialog);e&&(e.scrollTop=0),Rt(this._element),this._element.classList.add(En),this._queueCallback((()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,ue.trigger(this._element,mn,{relatedTarget:t})}),this._dialog,this._isAnimated())}_addEventListeners(){ue.on(this._element,vn,(t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():this._triggerBackdropTransition())})),ue.on(window,gn,(()=>{this._isShown&&!this._isTransitioning&&this._adjustDialog()})),ue.on(this._element,bn,(t=>{ue.one(this._element,_n,(e=>{this._element===t.target&&this._element===e.target&&("static"!==this._config.backdrop?this._config.backdrop&&this.hide():this._triggerBackdropTransition())}))}))}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide((()=>{document.body.classList.remove(wn),this._resetAdjustments(),this._scrollBar.reset(),ue.trigger(this._element,fn)}))}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(ue.trigger(this._element,un).defaultPrevented)return;const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._element.style.overflowY;"hidden"===e||this._element.classList.contains(An)||(t||(this._element.style.overflowY="hidden"),this._element.classList.add(An),this._queueCallback((()=>{this._element.classList.remove(An),this._queueCallback((()=>{this._element.style.overflowY=e}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),i=e>0;if(i&&!t){const t=Yt()?"paddingLeft":"paddingRight";this._element.style[t]=`${e}px`}if(!i&&t){const t=Yt()?"paddingRight":"paddingLeft";this._element.style[t]=`${e}px`}}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const i=On.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t](e)}}))}}ue.on(document,yn,'[data-bs-toggle="modal"]',(function(t){const e=ye.getElementFromSelector(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),ue.one(e,pn,(t=>{t.defaultPrevented||ue.one(e,fn,(()=>{Ht(this)&&this.focus()}))}));const i=ye.findOne(".modal.show");i&&On.getInstance(i).hide(),On.getOrCreateInstance(e).toggle(this)})),we(On),Kt(On);const xn=".bs.offcanvas",kn=".data-api",Ln=`load${xn}${kn}`,Sn="show",Dn="showing",$n="hiding",In=".offcanvas.show",Nn=`show${xn}`,Pn=`shown${xn}`,Mn=`hide${xn}`,jn=`hidePrevented${xn}`,Fn=`hidden${xn}`,Hn=`resize${xn}`,Bn=`click${xn}${kn}`,Wn=`keydown.dismiss${xn}`,zn={backdrop:!0,keyboard:!0,scroll:!1},Rn={backdrop:"(boolean|string)",keyboard:"boolean",scroll:"boolean"};class qn extends be{constructor(t,e){super(t,e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get Default(){return zn}static get DefaultType(){return Rn}static get NAME(){return"offcanvas"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||ue.trigger(this._element,Nn,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._backdrop.show(),this._config.scroll||(new cn).hide(),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Dn),this._queueCallback((()=>{this._config.scroll&&!this._config.backdrop||this._focustrap.activate(),this._element.classList.add(Sn),this._element.classList.remove(Dn),ue.trigger(this._element,Pn,{relatedTarget:t})}),this._element,!0))}hide(){this._isShown&&(ue.trigger(this._element,Mn).defaultPrevented||(this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.add($n),this._backdrop.hide(),this._queueCallback((()=>{this._element.classList.remove(Sn,$n),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._config.scroll||(new cn).reset(),ue.trigger(this._element,Fn)}),this._element,!0)))}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_initializeBackDrop(){const t=Boolean(this._config.backdrop);return new Ui({className:"offcanvas-backdrop",isVisible:t,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:t?()=>{"static"!==this._config.backdrop?this.hide():ue.trigger(this._element,jn)}:null})}_initializeFocusTrap(){return new sn({trapElement:this._element})}_addEventListeners(){ue.on(this._element,Wn,(t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():ue.trigger(this._element,jn))}))}static jQueryInterface(t){return this.each((function(){const e=qn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}ue.on(document,Bn,'[data-bs-toggle="offcanvas"]',(function(t){const e=ye.getElementFromSelector(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),Bt(this))return;ue.one(e,Fn,(()=>{Ht(this)&&this.focus()}));const i=ye.findOne(In);i&&i!==e&&qn.getInstance(i).hide(),qn.getOrCreateInstance(e).toggle(this)})),ue.on(window,Ln,(()=>{for(const t of ye.find(In))qn.getOrCreateInstance(t).show()})),ue.on(window,Hn,(()=>{for(const t of ye.find("[aria-modal][class*=show][class*=offcanvas-]"))"fixed"!==getComputedStyle(t).position&&qn.getOrCreateInstance(t).hide()})),we(qn),Kt(qn);const Vn={"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},Yn=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Kn=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i,Qn=(t,e)=>{const i=t.nodeName.toLowerCase();return e.includes(i)?!Yn.has(i)||Boolean(Kn.test(t.nodeValue)):e.filter((t=>t instanceof RegExp)).some((t=>t.test(i)))},Xn={allowList:Vn,content:{},extraClass:"",html:!1,sanitize:!0,sanitizeFn:null,template:"
"},Un={allowList:"object",content:"object",extraClass:"(string|function)",html:"boolean",sanitize:"boolean",sanitizeFn:"(null|function)",template:"string"},Gn={entry:"(string|element|function|null)",selector:"(string|element)"};class Jn extends _e{constructor(t){super(),this._config=this._getConfig(t)}static get Default(){return Xn}static get DefaultType(){return Un}static get NAME(){return"TemplateFactory"}getContent(){return Object.values(this._config.content).map((t=>this._resolvePossibleFunction(t))).filter(Boolean)}hasContent(){return this.getContent().length>0}changeContent(t){return this._checkContent(t),this._config.content={...this._config.content,...t},this}toHtml(){const t=document.createElement("div");t.innerHTML=this._maybeSanitize(this._config.template);for(const[e,i]of Object.entries(this._config.content))this._setContent(t,i,e);const e=t.children[0],i=this._resolvePossibleFunction(this._config.extraClass);return i&&e.classList.add(...i.split(" ")),e}_typeCheckConfig(t){super._typeCheckConfig(t),this._checkContent(t.content)}_checkContent(t){for(const[e,i]of Object.entries(t))super._typeCheckConfig({selector:e,entry:i},Gn)}_setContent(t,e,i){const n=ye.findOne(i,t);n&&((e=this._resolvePossibleFunction(e))?jt(e)?this._putElementInTemplate(Ft(e),n):this._config.html?n.innerHTML=this._maybeSanitize(e):n.textContent=e:n.remove())}_maybeSanitize(t){return this._config.sanitize?function(t,e,i){if(!t.length)return t;if(i&&"function"==typeof i)return i(t);const n=(new window.DOMParser).parseFromString(t,"text/html"),s=[].concat(...n.body.querySelectorAll("*"));for(const t of s){const i=t.nodeName.toLowerCase();if(!Object.keys(e).includes(i)){t.remove();continue}const n=[].concat(...t.attributes),s=[].concat(e["*"]||[],e[i]||[]);for(const e of n)Qn(e,s)||t.removeAttribute(e.nodeName)}return n.body.innerHTML}(t,this._config.allowList,this._config.sanitizeFn):t}_resolvePossibleFunction(t){return Qt(t,[this])}_putElementInTemplate(t,e){if(this._config.html)return e.innerHTML="",void e.append(t);e.textContent=t.textContent}}const Zn=new Set(["sanitize","allowList","sanitizeFn"]),ts="fade",es="show",is=".modal",ns="hide.bs.modal",ss="hover",os="focus",rs={AUTO:"auto",TOP:"top",RIGHT:Yt()?"left":"right",BOTTOM:"bottom",LEFT:Yt()?"right":"left"},as={allowList:Vn,animation:!0,boundary:"clippingParents",container:!1,customClass:"",delay:0,fallbackPlacements:["top","right","bottom","left"],html:!1,offset:[0,6],placement:"top",popperConfig:null,sanitize:!0,sanitizeFn:null,selector:!1,template:'',title:"",trigger:"hover focus"},ls={allowList:"object",animation:"boolean",boundary:"(string|element)",container:"(string|element|boolean)",customClass:"(string|function)",delay:"(number|object)",fallbackPlacements:"array",html:"boolean",offset:"(array|string|function)",placement:"(string|function)",popperConfig:"(null|object|function)",sanitize:"boolean",sanitizeFn:"(null|function)",selector:"(string|boolean)",template:"string",title:"(string|element|function)",trigger:"string"};class cs extends be{constructor(t,i){if(void 0===e)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t,i),this._isEnabled=!0,this._timeout=0,this._isHovered=null,this._activeTrigger={},this._popper=null,this._templateFactory=null,this._newContent=null,this.tip=null,this._setListeners(),this._config.selector||this._fixTitle()}static get Default(){return as}static get DefaultType(){return ls}static get NAME(){return"tooltip"}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(){this._isEnabled&&(this._activeTrigger.click=!this._activeTrigger.click,this._isShown()?this._leave():this._enter())}dispose(){clearTimeout(this._timeout),ue.off(this._element.closest(is),ns,this._hideModalHandler),this._element.getAttribute("data-bs-original-title")&&this._element.setAttribute("title",this._element.getAttribute("data-bs-original-title")),this._disposePopper(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this._isWithContent()||!this._isEnabled)return;const t=ue.trigger(this._element,this.constructor.eventName("show")),e=(Wt(this._element)||this._element.ownerDocument.documentElement).contains(this._element);if(t.defaultPrevented||!e)return;this._disposePopper();const i=this._getTipElement();this._element.setAttribute("aria-describedby",i.getAttribute("id"));const{container:n}=this._config;if(this._element.ownerDocument.documentElement.contains(this.tip)||(n.append(i),ue.trigger(this._element,this.constructor.eventName("inserted"))),this._popper=this._createPopper(i),i.classList.add(es),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))ue.on(t,"mouseover",zt);this._queueCallback((()=>{ue.trigger(this._element,this.constructor.eventName("shown")),!1===this._isHovered&&this._leave(),this._isHovered=!1}),this.tip,this._isAnimated())}hide(){if(this._isShown()&&!ue.trigger(this._element,this.constructor.eventName("hide")).defaultPrevented){if(this._getTipElement().classList.remove(es),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))ue.off(t,"mouseover",zt);this._activeTrigger.click=!1,this._activeTrigger[os]=!1,this._activeTrigger[ss]=!1,this._isHovered=null,this._queueCallback((()=>{this._isWithActiveTrigger()||(this._isHovered||this._disposePopper(),this._element.removeAttribute("aria-describedby"),ue.trigger(this._element,this.constructor.eventName("hidden")))}),this.tip,this._isAnimated())}}update(){this._popper&&this._popper.update()}_isWithContent(){return Boolean(this._getTitle())}_getTipElement(){return this.tip||(this.tip=this._createTipElement(this._newContent||this._getContentForTemplate())),this.tip}_createTipElement(t){const e=this._getTemplateFactory(t).toHtml();if(!e)return null;e.classList.remove(ts,es),e.classList.add(`bs-${this.constructor.NAME}-auto`);const i=(t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t})(this.constructor.NAME).toString();return e.setAttribute("id",i),this._isAnimated()&&e.classList.add(ts),e}setContent(t){this._newContent=t,this._isShown()&&(this._disposePopper(),this.show())}_getTemplateFactory(t){return this._templateFactory?this._templateFactory.changeContent(t):this._templateFactory=new Jn({...this._config,content:t,extraClass:this._resolvePossibleFunction(this._config.customClass)}),this._templateFactory}_getContentForTemplate(){return{".tooltip-inner":this._getTitle()}}_getTitle(){return this._resolvePossibleFunction(this._config.title)||this._element.getAttribute("data-bs-original-title")}_initializeOnDelegatedTarget(t){return this.constructor.getOrCreateInstance(t.delegateTarget,this._getDelegateConfig())}_isAnimated(){return this._config.animation||this.tip&&this.tip.classList.contains(ts)}_isShown(){return this.tip&&this.tip.classList.contains(es)}_createPopper(t){const e=Qt(this._config.placement,[this,t,this._element]),i=rs[e.toUpperCase()];return St(this._element,t,this._getPopperConfig(i))}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_resolvePossibleFunction(t){return Qt(t,[this._element])}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"preSetPlacement",enabled:!0,phase:"beforeMain",fn:t=>{this._getTipElement().setAttribute("data-popper-placement",t.state.placement)}}]};return{...e,...Qt(this._config.popperConfig,[e])}}_setListeners(){const t=this._config.trigger.split(" ");for(const e of t)if("click"===e)ue.on(this._element,this.constructor.eventName("click"),this._config.selector,(t=>{this._initializeOnDelegatedTarget(t).toggle()}));else if("manual"!==e){const t=e===ss?this.constructor.eventName("mouseenter"):this.constructor.eventName("focusin"),i=e===ss?this.constructor.eventName("mouseleave"):this.constructor.eventName("focusout");ue.on(this._element,t,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusin"===t.type?os:ss]=!0,e._enter()})),ue.on(this._element,i,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusout"===t.type?os:ss]=e._element.contains(t.relatedTarget),e._leave()}))}this._hideModalHandler=()=>{this._element&&this.hide()},ue.on(this._element.closest(is),ns,this._hideModalHandler)}_fixTitle(){const t=this._element.getAttribute("title");t&&(this._element.getAttribute("aria-label")||this._element.textContent.trim()||this._element.setAttribute("aria-label",t),this._element.setAttribute("data-bs-original-title",t),this._element.removeAttribute("title"))}_enter(){this._isShown()||this._isHovered?this._isHovered=!0:(this._isHovered=!0,this._setTimeout((()=>{this._isHovered&&this.show()}),this._config.delay.show))}_leave(){this._isWithActiveTrigger()||(this._isHovered=!1,this._setTimeout((()=>{this._isHovered||this.hide()}),this._config.delay.hide))}_setTimeout(t,e){clearTimeout(this._timeout),this._timeout=setTimeout(t,e)}_isWithActiveTrigger(){return Object.values(this._activeTrigger).includes(!0)}_getConfig(t){const e=ge.getDataAttributes(this._element);for(const t of Object.keys(e))Zn.has(t)&&delete e[t];return t={...e,..."object"==typeof t&&t?t:{}},t=this._mergeConfigObj(t),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}_configAfterMerge(t){return t.container=!1===t.container?document.body:Ft(t.container),"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),t}_getDelegateConfig(){const t={};for(const[e,i]of Object.entries(this._config))this.constructor.Default[e]!==i&&(t[e]=i);return t.selector=!1,t.trigger="manual",t}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null),this.tip&&(this.tip.remove(),this.tip=null)}static jQueryInterface(t){return this.each((function(){const e=cs.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}Kt(cs);const hs={...cs.Default,content:"",offset:[0,8],placement:"right",template:'',trigger:"click"},ds={...cs.DefaultType,content:"(null|string|element|function)"};class us extends cs{static get Default(){return hs}static get DefaultType(){return ds}static get NAME(){return"popover"}_isWithContent(){return this._getTitle()||this._getContent()}_getContentForTemplate(){return{".popover-header":this._getTitle(),".popover-body":this._getContent()}}_getContent(){return this._resolvePossibleFunction(this._config.content)}static jQueryInterface(t){return this.each((function(){const e=us.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}Kt(us);const fs=".bs.scrollspy",ps=`activate${fs}`,ms=`click${fs}`,gs=`load${fs}.data-api`,_s="active",bs="[href]",vs=".nav-link",ys=`${vs}, .nav-item > ${vs}, .list-group-item`,ws={offset:null,rootMargin:"0px 0px -25%",smoothScroll:!1,target:null,threshold:[.1,.5,1]},Es={offset:"(number|null)",rootMargin:"string",smoothScroll:"boolean",target:"element",threshold:"array"};class As extends be{constructor(t,e){super(t,e),this._targetLinks=new Map,this._observableSections=new Map,this._rootElement="visible"===getComputedStyle(this._element).overflowY?null:this._element,this._activeTarget=null,this._observer=null,this._previousScrollData={visibleEntryTop:0,parentScrollTop:0},this.refresh()}static get Default(){return ws}static get DefaultType(){return Es}static get NAME(){return"scrollspy"}refresh(){this._initializeTargetsAndObservables(),this._maybeEnableSmoothScroll(),this._observer?this._observer.disconnect():this._observer=this._getNewObserver();for(const t of this._observableSections.values())this._observer.observe(t)}dispose(){this._observer.disconnect(),super.dispose()}_configAfterMerge(t){return t.target=Ft(t.target)||document.body,t.rootMargin=t.offset?`${t.offset}px 0px -30%`:t.rootMargin,"string"==typeof t.threshold&&(t.threshold=t.threshold.split(",").map((t=>Number.parseFloat(t)))),t}_maybeEnableSmoothScroll(){this._config.smoothScroll&&(ue.off(this._config.target,ms),ue.on(this._config.target,ms,bs,(t=>{const e=this._observableSections.get(t.target.hash);if(e){t.preventDefault();const i=this._rootElement||window,n=e.offsetTop-this._element.offsetTop;if(i.scrollTo)return void i.scrollTo({top:n,behavior:"smooth"});i.scrollTop=n}})))}_getNewObserver(){const t={root:this._rootElement,threshold:this._config.threshold,rootMargin:this._config.rootMargin};return new IntersectionObserver((t=>this._observerCallback(t)),t)}_observerCallback(t){const e=t=>this._targetLinks.get(`#${t.target.id}`),i=t=>{this._previousScrollData.visibleEntryTop=t.target.offsetTop,this._process(e(t))},n=(this._rootElement||document.documentElement).scrollTop,s=n>=this._previousScrollData.parentScrollTop;this._previousScrollData.parentScrollTop=n;for(const o of t){if(!o.isIntersecting){this._activeTarget=null,this._clearActiveClass(e(o));continue}const t=o.target.offsetTop>=this._previousScrollData.visibleEntryTop;if(s&&t){if(i(o),!n)return}else s||t||i(o)}}_initializeTargetsAndObservables(){this._targetLinks=new Map,this._observableSections=new Map;const t=ye.find(bs,this._config.target);for(const e of t){if(!e.hash||Bt(e))continue;const t=ye.findOne(decodeURI(e.hash),this._element);Ht(t)&&(this._targetLinks.set(decodeURI(e.hash),e),this._observableSections.set(e.hash,t))}}_process(t){this._activeTarget!==t&&(this._clearActiveClass(this._config.target),this._activeTarget=t,t.classList.add(_s),this._activateParents(t),ue.trigger(this._element,ps,{relatedTarget:t}))}_activateParents(t){if(t.classList.contains("dropdown-item"))ye.findOne(".dropdown-toggle",t.closest(".dropdown")).classList.add(_s);else for(const e of ye.parents(t,".nav, .list-group"))for(const t of ye.prev(e,ys))t.classList.add(_s)}_clearActiveClass(t){t.classList.remove(_s);const e=ye.find(`${bs}.${_s}`,t);for(const t of e)t.classList.remove(_s)}static jQueryInterface(t){return this.each((function(){const e=As.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}))}}ue.on(window,gs,(()=>{for(const t of ye.find('[data-bs-spy="scroll"]'))As.getOrCreateInstance(t)})),Kt(As);const Ts=".bs.tab",Cs=`hide${Ts}`,Os=`hidden${Ts}`,xs=`show${Ts}`,ks=`shown${Ts}`,Ls=`click${Ts}`,Ss=`keydown${Ts}`,Ds=`load${Ts}`,$s="ArrowLeft",Is="ArrowRight",Ns="ArrowUp",Ps="ArrowDown",Ms="Home",js="End",Fs="active",Hs="fade",Bs="show",Ws=".dropdown-toggle",zs=`:not(${Ws})`,Rs='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',qs=`.nav-link${zs}, .list-group-item${zs}, [role="tab"]${zs}, ${Rs}`,Vs=`.${Fs}[data-bs-toggle="tab"], .${Fs}[data-bs-toggle="pill"], .${Fs}[data-bs-toggle="list"]`;class Ys extends be{constructor(t){super(t),this._parent=this._element.closest('.list-group, .nav, [role="tablist"]'),this._parent&&(this._setInitialAttributes(this._parent,this._getChildren()),ue.on(this._element,Ss,(t=>this._keydown(t))))}static get NAME(){return"tab"}show(){const t=this._element;if(this._elemIsActive(t))return;const e=this._getActiveElem(),i=e?ue.trigger(e,Cs,{relatedTarget:t}):null;ue.trigger(t,xs,{relatedTarget:e}).defaultPrevented||i&&i.defaultPrevented||(this._deactivate(e,t),this._activate(t,e))}_activate(t,e){t&&(t.classList.add(Fs),this._activate(ye.getElementFromSelector(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.removeAttribute("tabindex"),t.setAttribute("aria-selected",!0),this._toggleDropDown(t,!0),ue.trigger(t,ks,{relatedTarget:e})):t.classList.add(Bs)}),t,t.classList.contains(Hs)))}_deactivate(t,e){t&&(t.classList.remove(Fs),t.blur(),this._deactivate(ye.getElementFromSelector(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.setAttribute("aria-selected",!1),t.setAttribute("tabindex","-1"),this._toggleDropDown(t,!1),ue.trigger(t,Os,{relatedTarget:e})):t.classList.remove(Bs)}),t,t.classList.contains(Hs)))}_keydown(t){if(![$s,Is,Ns,Ps,Ms,js].includes(t.key))return;t.stopPropagation(),t.preventDefault();const e=this._getChildren().filter((t=>!Bt(t)));let i;if([Ms,js].includes(t.key))i=e[t.key===Ms?0:e.length-1];else{const n=[Is,Ps].includes(t.key);i=Ut(e,t.target,n,!0)}i&&(i.focus({preventScroll:!0}),Ys.getOrCreateInstance(i).show())}_getChildren(){return ye.find(qs,this._parent)}_getActiveElem(){return this._getChildren().find((t=>this._elemIsActive(t)))||null}_setInitialAttributes(t,e){this._setAttributeIfNotExists(t,"role","tablist");for(const t of e)this._setInitialAttributesOnChild(t)}_setInitialAttributesOnChild(t){t=this._getInnerElement(t);const e=this._elemIsActive(t),i=this._getOuterElement(t);t.setAttribute("aria-selected",e),i!==t&&this._setAttributeIfNotExists(i,"role","presentation"),e||t.setAttribute("tabindex","-1"),this._setAttributeIfNotExists(t,"role","tab"),this._setInitialAttributesOnTargetPanel(t)}_setInitialAttributesOnTargetPanel(t){const e=ye.getElementFromSelector(t);e&&(this._setAttributeIfNotExists(e,"role","tabpanel"),t.id&&this._setAttributeIfNotExists(e,"aria-labelledby",`${t.id}`))}_toggleDropDown(t,e){const i=this._getOuterElement(t);if(!i.classList.contains("dropdown"))return;const n=(t,n)=>{const s=ye.findOne(t,i);s&&s.classList.toggle(n,e)};n(Ws,Fs),n(".dropdown-menu",Bs),i.setAttribute("aria-expanded",e)}_setAttributeIfNotExists(t,e,i){t.hasAttribute(e)||t.setAttribute(e,i)}_elemIsActive(t){return t.classList.contains(Fs)}_getInnerElement(t){return t.matches(qs)?t:ye.findOne(qs,t)}_getOuterElement(t){return t.closest(".nav-item, .list-group-item")||t}static jQueryInterface(t){return this.each((function(){const e=Ys.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}))}}ue.on(document,Ls,Rs,(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),Bt(this)||Ys.getOrCreateInstance(this).show()})),ue.on(window,Ds,(()=>{for(const t of ye.find(Vs))Ys.getOrCreateInstance(t)})),Kt(Ys);const Ks=".bs.toast",Qs=`mouseover${Ks}`,Xs=`mouseout${Ks}`,Us=`focusin${Ks}`,Gs=`focusout${Ks}`,Js=`hide${Ks}`,Zs=`hidden${Ks}`,to=`show${Ks}`,eo=`shown${Ks}`,io="hide",no="show",so="showing",oo={animation:"boolean",autohide:"boolean",delay:"number"},ro={animation:!0,autohide:!0,delay:5e3};class ao extends be{constructor(t,e){super(t,e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get Default(){return ro}static get DefaultType(){return oo}static get NAME(){return"toast"}show(){ue.trigger(this._element,to).defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(io),Rt(this._element),this._element.classList.add(no,so),this._queueCallback((()=>{this._element.classList.remove(so),ue.trigger(this._element,eo),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this.isShown()&&(ue.trigger(this._element,Js).defaultPrevented||(this._element.classList.add(so),this._queueCallback((()=>{this._element.classList.add(io),this._element.classList.remove(so,no),ue.trigger(this._element,Zs)}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this.isShown()&&this._element.classList.remove(no),super.dispose()}isShown(){return this._element.classList.contains(no)}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout((()=>{this.hide()}),this._config.delay)))}_onInteraction(t,e){switch(t.type){case"mouseover":case"mouseout":this._hasMouseInteraction=e;break;case"focusin":case"focusout":this._hasKeyboardInteraction=e}if(e)return void this._clearTimeout();const i=t.relatedTarget;this._element===i||this._element.contains(i)||this._maybeScheduleHide()}_setListeners(){ue.on(this._element,Qs,(t=>this._onInteraction(t,!0))),ue.on(this._element,Xs,(t=>this._onInteraction(t,!1))),ue.on(this._element,Us,(t=>this._onInteraction(t,!0))),ue.on(this._element,Gs,(t=>this._onInteraction(t,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){const e=ao.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}function lo(t){"loading"!=document.readyState?t():document.addEventListener("DOMContentLoaded",t)}we(ao),Kt(ao),lo((function(){[].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]')).map((function(t){return new cs(t,{delay:{show:500,hide:100}})}))})),lo((function(){document.getElementById("pst-back-to-top").addEventListener("click",(function(){document.body.scrollTop=0,document.documentElement.scrollTop=0}))})),lo((function(){var t=document.getElementById("pst-back-to-top"),e=document.getElementsByClassName("bd-header")[0].getBoundingClientRect();window.addEventListener("scroll",(function(){this.oldScroll>this.scrollY&&this.scrollY>e.bottom?t.style.display="block":t.style.display="none",this.oldScroll=this.scrollY}))}))})(); +//# sourceMappingURL=bootstrap.js.map \ No newline at end of file diff --git a/_static/scripts/bootstrap.js.LICENSE.txt b/_static/scripts/bootstrap.js.LICENSE.txt new file mode 100644 index 0000000..10f979d --- /dev/null +++ b/_static/scripts/bootstrap.js.LICENSE.txt @@ -0,0 +1,5 @@ +/*! + * Bootstrap v5.3.2 (https://getbootstrap.com/) + * Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */ diff --git a/_static/scripts/bootstrap.js.map b/_static/scripts/bootstrap.js.map new file mode 100644 index 0000000..e5bc157 --- /dev/null +++ b/_static/scripts/bootstrap.js.map @@ -0,0 +1 @@ +{"version":3,"file":"scripts/bootstrap.js","mappings":"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","sources":["webpack://pydata_sphinx_theme/webpack/bootstrap","webpack://pydata_sphinx_theme/webpack/runtime/define property getters","webpack://pydata_sphinx_theme/webpack/runtime/hasOwnProperty shorthand","webpack://pydata_sphinx_theme/webpack/runtime/make namespace object","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/enums.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getWindow.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/applyStyles.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getBasePlacement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/math.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/userAgent.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/contains.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/within.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/expandToHashMap.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/arrow.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getVariation.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/computeStyles.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/eventListeners.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/rectToClientRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/computeOffsets.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/detectOverflow.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/flip.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/hide.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/offset.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getAltAxis.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/orderModifiers.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/createPopper.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/debounce.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/mergeByName.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/popper.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/popper-lite.js","webpack://pydata_sphinx_theme/./node_modules/bootstrap/dist/js/bootstrap.esm.js","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/scripts/mixin.js","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/scripts/bootstrap.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","export default function getUAString() {\n var uaData = navigator.userAgentData;\n\n if (uaData != null && uaData.brands && Array.isArray(uaData.brands)) {\n return uaData.brands.map(function (item) {\n return item.brand + \"/\" + item.version;\n }).join(' ');\n }\n\n return navigator.userAgent;\n}","import getUAString from \"../utils/userAgent.js\";\nexport default function isLayoutViewport() {\n return !/^((?!chrome|android).)*safari/i.test(getUAString());\n}","import { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport { round } from \"../utils/math.js\";\nimport getWindow from \"./getWindow.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getBoundingClientRect(element, includeScale, isFixedStrategy) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n\n var clientRect = element.getBoundingClientRect();\n var scaleX = 1;\n var scaleY = 1;\n\n if (includeScale && isHTMLElement(element)) {\n scaleX = element.offsetWidth > 0 ? round(clientRect.width) / element.offsetWidth || 1 : 1;\n scaleY = element.offsetHeight > 0 ? round(clientRect.height) / element.offsetHeight || 1 : 1;\n }\n\n var _ref = isElement(element) ? getWindow(element) : window,\n visualViewport = _ref.visualViewport;\n\n var addVisualOffsets = !isLayoutViewport() && isFixedStrategy;\n var x = (clientRect.left + (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) / scaleX;\n var y = (clientRect.top + (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) / scaleY;\n var width = clientRect.width / scaleX;\n var height = clientRect.height / scaleY;\n return {\n width: width,\n height: height,\n top: y,\n right: x + width,\n bottom: y + height,\n left: x,\n x: x,\n y: y\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement, isShadowRoot } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getUAString from \"../utils/userAgent.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = /firefox/i.test(getUAString());\n var isIE = /Trident/i.test(getUAString());\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n if (isShadowRoot(currentNode)) {\n currentNode = currentNode.host;\n }\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}\nexport function withinMaxClamp(min, value, max) {\n var v = within(min, value, max);\n return v > max ? max : v;\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport { within } from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import { top, left, right, bottom, end } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref, win) {\n var x = _ref.x,\n y = _ref.y;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(x * dpr) / dpr || 0,\n y: round(y * dpr) / dpr || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n variation = _ref2.variation,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets,\n isFixed = _ref2.isFixed;\n var _offsets$x = offsets.x,\n x = _offsets$x === void 0 ? 0 : _offsets$x,\n _offsets$y = offsets.y,\n y = _offsets$y === void 0 ? 0 : _offsets$y;\n\n var _ref3 = typeof roundOffsets === 'function' ? roundOffsets({\n x: x,\n y: y\n }) : {\n x: x,\n y: y\n };\n\n x = _ref3.x;\n y = _ref3.y;\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static' && position === 'absolute') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top || (placement === left || placement === right) && variation === end) {\n sideY = bottom;\n var offsetY = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.height : // $FlowFixMe[prop-missing]\n offsetParent[heightProp];\n y -= offsetY - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left || (placement === top || placement === bottom) && variation === end) {\n sideX = right;\n var offsetX = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.width : // $FlowFixMe[prop-missing]\n offsetParent[widthProp];\n x -= offsetX - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n var _ref4 = roundOffsets === true ? roundOffsetsByDPR({\n x: x,\n y: y\n }, getWindow(popper)) : {\n x: x,\n y: y\n };\n\n x = _ref4.x;\n y = _ref4.y;\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) <= 1 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref5) {\n var state = _ref5.state,\n options = _ref5.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n variation: getVariation(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration,\n isFixed: state.options.strategy === 'fixed'\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on \n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element, strategy) {\n var rect = getBoundingClientRect(element, false, strategy === 'fixed');\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent, strategy) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element, strategy)) : isElement(clippingParent) ? getInnerBoundingClientRect(clippingParent, strategy) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary, strategy) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent, strategy));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getViewportRect(element, strategy) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0;\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n var layoutViewport = isLayoutViewport();\n\n if (layoutViewport || !layoutViewport && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `` and `` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$strategy = _options.strategy,\n strategy = _options$strategy === void 0 ? state.strategy : _options$strategy,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary, strategy);\n var referenceClientRect = getBoundingClientRect(state.elements.reference);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport { within, withinMaxClamp } from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { min as mathMin, max as mathMax } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var normalizedTetherOffsetValue = typeof tetherOffsetValue === 'number' ? {\n mainAxis: tetherOffsetValue,\n altAxis: tetherOffsetValue\n } : Object.assign({\n mainAxis: 0,\n altAxis: 0\n }, tetherOffsetValue);\n var offsetModifierState = state.modifiersData.offset ? state.modifiersData.offset[state.placement] : null;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis) {\n var _offsetModifierState$;\n\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = offset + overflow[mainSide];\n var max = offset - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis : minLen - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis : maxLen + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = (_offsetModifierState$ = offsetModifierState == null ? void 0 : offsetModifierState[mainAxis]) != null ? _offsetModifierState$ : 0;\n var tetherMin = offset + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = offset + maxOffset - offsetModifierValue;\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _offsetModifierState$2;\n\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _len = altAxis === 'y' ? 'height' : 'width';\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var isOriginSide = [top, left].indexOf(basePlacement) !== -1;\n\n var _offsetModifierValue = (_offsetModifierState$2 = offsetModifierState == null ? void 0 : offsetModifierState[altAxis]) != null ? _offsetModifierState$2 : 0;\n\n var _tetherMin = isOriginSide ? _min : _offset - referenceRect[_len] - popperRect[_len] - _offsetModifierValue + normalizedTetherOffsetValue.altAxis;\n\n var _tetherMax = isOriginSide ? _offset + referenceRect[_len] + popperRect[_len] - _offsetModifierValue - normalizedTetherOffsetValue.altAxis : _max;\n\n var _preventedOffset = tether && isOriginSide ? withinMaxClamp(_tetherMin, _offset, _tetherMax) : within(tether ? _tetherMin : _min, _offset, tether ? _tetherMax : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport { round } from \"../utils/math.js\";\n\nfunction isElementScaled(element) {\n var rect = element.getBoundingClientRect();\n var scaleX = round(rect.width) / element.offsetWidth || 1;\n var scaleY = round(rect.height) / element.offsetHeight || 1;\n return scaleX !== 1 || scaleY !== 1;\n} // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled, isFixed);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent, true);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(setOptionsAction) {\n var options = typeof setOptionsAction === 'function' ? setOptionsAction(state.options) : setOptionsAction;\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n });\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref) {\n var name = _ref.name,\n _ref$options = _ref.options,\n options = _ref$options === void 0 ? {} : _ref$options,\n effect = _ref.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","/*!\n * Bootstrap v5.3.2 (https://getbootstrap.com/)\n * Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\nimport * as Popper from '@popperjs/core';\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * Constants\n */\n\nconst elementMap = new Map();\nconst Data = {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map());\n }\n const instanceMap = elementMap.get(element);\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`);\n return;\n }\n instanceMap.set(key, instance);\n },\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null;\n }\n return null;\n },\n remove(element, key) {\n if (!elementMap.has(element)) {\n return;\n }\n const instanceMap = elementMap.get(element);\n instanceMap.delete(key);\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element);\n }\n }\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000;\nconst MILLISECONDS_MULTIPLIER = 1000;\nconst TRANSITION_END = 'transitionend';\n\n/**\n * Properly escape IDs selectors to handle weird IDs\n * @param {string} selector\n * @returns {string}\n */\nconst parseSelector = selector => {\n if (selector && window.CSS && window.CSS.escape) {\n // document.querySelector needs escaping to handle IDs (html5+) containing for instance /\n selector = selector.replace(/#([^\\s\"#']+)/g, (match, id) => `#${CSS.escape(id)}`);\n }\n return selector;\n};\n\n// Shout-out Angus Croll (https://goo.gl/pxwQGp)\nconst toType = object => {\n if (object === null || object === undefined) {\n return `${object}`;\n }\n return Object.prototype.toString.call(object).match(/\\s([a-z]+)/i)[1].toLowerCase();\n};\n\n/**\n * Public Util API\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID);\n } while (document.getElementById(prefix));\n return prefix;\n};\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0;\n }\n\n // Get transition-duration of the element\n let {\n transitionDuration,\n transitionDelay\n } = window.getComputedStyle(element);\n const floatTransitionDuration = Number.parseFloat(transitionDuration);\n const floatTransitionDelay = Number.parseFloat(transitionDelay);\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0;\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0];\n transitionDelay = transitionDelay.split(',')[0];\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;\n};\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END));\n};\nconst isElement = object => {\n if (!object || typeof object !== 'object') {\n return false;\n }\n if (typeof object.jquery !== 'undefined') {\n object = object[0];\n }\n return typeof object.nodeType !== 'undefined';\n};\nconst getElement = object => {\n // it's a jQuery object or a node element\n if (isElement(object)) {\n return object.jquery ? object[0] : object;\n }\n if (typeof object === 'string' && object.length > 0) {\n return document.querySelector(parseSelector(object));\n }\n return null;\n};\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false;\n }\n const elementIsVisible = getComputedStyle(element).getPropertyValue('visibility') === 'visible';\n // Handle `details` element as its content may falsie appear visible when it is closed\n const closedDetails = element.closest('details:not([open])');\n if (!closedDetails) {\n return elementIsVisible;\n }\n if (closedDetails !== element) {\n const summary = element.closest('summary');\n if (summary && summary.parentNode !== closedDetails) {\n return false;\n }\n if (summary === null) {\n return false;\n }\n }\n return elementIsVisible;\n};\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true;\n }\n if (element.classList.contains('disabled')) {\n return true;\n }\n if (typeof element.disabled !== 'undefined') {\n return element.disabled;\n }\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false';\n};\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null;\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode();\n return root instanceof ShadowRoot ? root : null;\n }\n if (element instanceof ShadowRoot) {\n return element;\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null;\n }\n return findShadowRoot(element.parentNode);\n};\nconst noop = () => {};\n\n/**\n * Trick to restart an element's animation\n *\n * @param {HTMLElement} element\n * @return void\n *\n * @see https://www.charistheo.io/blog/2021/02/restart-a-css-animation-with-javascript/#restarting-a-css-animation\n */\nconst reflow = element => {\n element.offsetHeight; // eslint-disable-line no-unused-expressions\n};\n\nconst getjQuery = () => {\n if (window.jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return window.jQuery;\n }\n return null;\n};\nconst DOMContentLoadedCallbacks = [];\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n for (const callback of DOMContentLoadedCallbacks) {\n callback();\n }\n });\n }\n DOMContentLoadedCallbacks.push(callback);\n } else {\n callback();\n }\n};\nconst isRTL = () => document.documentElement.dir === 'rtl';\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery();\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME;\n const JQUERY_NO_CONFLICT = $.fn[name];\n $.fn[name] = plugin.jQueryInterface;\n $.fn[name].Constructor = plugin;\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT;\n return plugin.jQueryInterface;\n };\n }\n });\n};\nconst execute = (possibleCallback, args = [], defaultValue = possibleCallback) => {\n return typeof possibleCallback === 'function' ? possibleCallback(...args) : defaultValue;\n};\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback);\n return;\n }\n const durationPadding = 5;\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding;\n let called = false;\n const handler = ({\n target\n }) => {\n if (target !== transitionElement) {\n return;\n }\n called = true;\n transitionElement.removeEventListener(TRANSITION_END, handler);\n execute(callback);\n };\n transitionElement.addEventListener(TRANSITION_END, handler);\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement);\n }\n }, emulatedDuration);\n};\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n const listLength = list.length;\n let index = list.indexOf(activeElement);\n\n // if the element does not exist in the list return an element\n // depending on the direction and if cycle is allowed\n if (index === -1) {\n return !shouldGetNext && isCycleAllowed ? list[listLength - 1] : list[0];\n }\n index += shouldGetNext ? 1 : -1;\n if (isCycleAllowed) {\n index = (index + listLength) % listLength;\n }\n return list[Math.max(0, Math.min(index, listLength - 1))];\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/;\nconst stripNameRegex = /\\..*/;\nconst stripUidRegex = /::\\d+$/;\nconst eventRegistry = {}; // Events storage\nlet uidEvent = 1;\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n};\nconst nativeEvents = new Set(['click', 'dblclick', 'mouseup', 'mousedown', 'contextmenu', 'mousewheel', 'DOMMouseScroll', 'mouseover', 'mouseout', 'mousemove', 'selectstart', 'selectend', 'keydown', 'keypress', 'keyup', 'orientationchange', 'touchstart', 'touchmove', 'touchend', 'touchcancel', 'pointerdown', 'pointermove', 'pointerup', 'pointerleave', 'pointercancel', 'gesturestart', 'gesturechange', 'gestureend', 'focus', 'blur', 'change', 'reset', 'select', 'submit', 'focusin', 'focusout', 'load', 'unload', 'beforeunload', 'resize', 'move', 'DOMContentLoaded', 'readystatechange', 'error', 'abort', 'scroll']);\n\n/**\n * Private methods\n */\n\nfunction makeEventUid(element, uid) {\n return uid && `${uid}::${uidEvent++}` || element.uidEvent || uidEvent++;\n}\nfunction getElementEvents(element) {\n const uid = makeEventUid(element);\n element.uidEvent = uid;\n eventRegistry[uid] = eventRegistry[uid] || {};\n return eventRegistry[uid];\n}\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n hydrateObj(event, {\n delegateTarget: element\n });\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn);\n }\n return fn.apply(element, [event]);\n };\n}\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector);\n for (let {\n target\n } = event; target && target !== this; target = target.parentNode) {\n for (const domElement of domElements) {\n if (domElement !== target) {\n continue;\n }\n hydrateObj(event, {\n delegateTarget: target\n });\n if (handler.oneOff) {\n EventHandler.off(element, event.type, selector, fn);\n }\n return fn.apply(target, [event]);\n }\n }\n };\n}\nfunction findHandler(events, callable, delegationSelector = null) {\n return Object.values(events).find(event => event.callable === callable && event.delegationSelector === delegationSelector);\n}\nfunction normalizeParameters(originalTypeEvent, handler, delegationFunction) {\n const isDelegated = typeof handler === 'string';\n // TODO: tooltip passes `false` instead of selector, so we need to check\n const callable = isDelegated ? delegationFunction : handler || delegationFunction;\n let typeEvent = getTypeEvent(originalTypeEvent);\n if (!nativeEvents.has(typeEvent)) {\n typeEvent = originalTypeEvent;\n }\n return [isDelegated, callable, typeEvent];\n}\nfunction addHandler(element, originalTypeEvent, handler, delegationFunction, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return;\n }\n let [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction);\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (originalTypeEvent in customEvents) {\n const wrapFunction = fn => {\n return function (event) {\n if (!event.relatedTarget || event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget)) {\n return fn.call(this, event);\n }\n };\n };\n callable = wrapFunction(callable);\n }\n const events = getElementEvents(element);\n const handlers = events[typeEvent] || (events[typeEvent] = {});\n const previousFunction = findHandler(handlers, callable, isDelegated ? handler : null);\n if (previousFunction) {\n previousFunction.oneOff = previousFunction.oneOff && oneOff;\n return;\n }\n const uid = makeEventUid(callable, originalTypeEvent.replace(namespaceRegex, ''));\n const fn = isDelegated ? bootstrapDelegationHandler(element, handler, callable) : bootstrapHandler(element, callable);\n fn.delegationSelector = isDelegated ? handler : null;\n fn.callable = callable;\n fn.oneOff = oneOff;\n fn.uidEvent = uid;\n handlers[uid] = fn;\n element.addEventListener(typeEvent, fn, isDelegated);\n}\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector);\n if (!fn) {\n return;\n }\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector));\n delete events[typeEvent][fn.uidEvent];\n}\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {};\n for (const [handlerKey, event] of Object.entries(storeElementEvent)) {\n if (handlerKey.includes(namespace)) {\n removeHandler(element, events, typeEvent, event.callable, event.delegationSelector);\n }\n }\n}\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '');\n return customEvents[event] || event;\n}\nconst EventHandler = {\n on(element, event, handler, delegationFunction) {\n addHandler(element, event, handler, delegationFunction, false);\n },\n one(element, event, handler, delegationFunction) {\n addHandler(element, event, handler, delegationFunction, true);\n },\n off(element, originalTypeEvent, handler, delegationFunction) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return;\n }\n const [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction);\n const inNamespace = typeEvent !== originalTypeEvent;\n const events = getElementEvents(element);\n const storeElementEvent = events[typeEvent] || {};\n const isNamespace = originalTypeEvent.startsWith('.');\n if (typeof callable !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!Object.keys(storeElementEvent).length) {\n return;\n }\n removeHandler(element, events, typeEvent, callable, isDelegated ? handler : null);\n return;\n }\n if (isNamespace) {\n for (const elementEvent of Object.keys(events)) {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1));\n }\n }\n for (const [keyHandlers, event] of Object.entries(storeElementEvent)) {\n const handlerKey = keyHandlers.replace(stripUidRegex, '');\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n removeHandler(element, events, typeEvent, event.callable, event.delegationSelector);\n }\n }\n },\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null;\n }\n const $ = getjQuery();\n const typeEvent = getTypeEvent(event);\n const inNamespace = event !== typeEvent;\n let jQueryEvent = null;\n let bubbles = true;\n let nativeDispatch = true;\n let defaultPrevented = false;\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args);\n $(element).trigger(jQueryEvent);\n bubbles = !jQueryEvent.isPropagationStopped();\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped();\n defaultPrevented = jQueryEvent.isDefaultPrevented();\n }\n const evt = hydrateObj(new Event(event, {\n bubbles,\n cancelable: true\n }), args);\n if (defaultPrevented) {\n evt.preventDefault();\n }\n if (nativeDispatch) {\n element.dispatchEvent(evt);\n }\n if (evt.defaultPrevented && jQueryEvent) {\n jQueryEvent.preventDefault();\n }\n return evt;\n }\n};\nfunction hydrateObj(obj, meta = {}) {\n for (const [key, value] of Object.entries(meta)) {\n try {\n obj[key] = value;\n } catch (_unused) {\n Object.defineProperty(obj, key, {\n configurable: true,\n get() {\n return value;\n }\n });\n }\n }\n return obj;\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(value) {\n if (value === 'true') {\n return true;\n }\n if (value === 'false') {\n return false;\n }\n if (value === Number(value).toString()) {\n return Number(value);\n }\n if (value === '' || value === 'null') {\n return null;\n }\n if (typeof value !== 'string') {\n return value;\n }\n try {\n return JSON.parse(decodeURIComponent(value));\n } catch (_unused) {\n return value;\n }\n}\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`);\n}\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value);\n },\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`);\n },\n getDataAttributes(element) {\n if (!element) {\n return {};\n }\n const attributes = {};\n const bsKeys = Object.keys(element.dataset).filter(key => key.startsWith('bs') && !key.startsWith('bsConfig'));\n for (const key of bsKeys) {\n let pureKey = key.replace(/^bs/, '');\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length);\n attributes[pureKey] = normalizeData(element.dataset[key]);\n }\n return attributes;\n },\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`));\n }\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/config.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Class definition\n */\n\nclass Config {\n // Getters\n static get Default() {\n return {};\n }\n static get DefaultType() {\n return {};\n }\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!');\n }\n _getConfig(config) {\n config = this._mergeConfigObj(config);\n config = this._configAfterMerge(config);\n this._typeCheckConfig(config);\n return config;\n }\n _configAfterMerge(config) {\n return config;\n }\n _mergeConfigObj(config, element) {\n const jsonConfig = isElement(element) ? Manipulator.getDataAttribute(element, 'config') : {}; // try to parse\n\n return {\n ...this.constructor.Default,\n ...(typeof jsonConfig === 'object' ? jsonConfig : {}),\n ...(isElement(element) ? Manipulator.getDataAttributes(element) : {}),\n ...(typeof config === 'object' ? config : {})\n };\n }\n _typeCheckConfig(config, configTypes = this.constructor.DefaultType) {\n for (const [property, expectedTypes] of Object.entries(configTypes)) {\n const value = config[property];\n const valueType = isElement(value) ? 'element' : toType(value);\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`);\n }\n }\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst VERSION = '5.3.2';\n\n/**\n * Class definition\n */\n\nclass BaseComponent extends Config {\n constructor(element, config) {\n super();\n element = getElement(element);\n if (!element) {\n return;\n }\n this._element = element;\n this._config = this._getConfig(config);\n Data.set(this._element, this.constructor.DATA_KEY, this);\n }\n\n // Public\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY);\n EventHandler.off(this._element, this.constructor.EVENT_KEY);\n for (const propertyName of Object.getOwnPropertyNames(this)) {\n this[propertyName] = null;\n }\n }\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated);\n }\n _getConfig(config) {\n config = this._mergeConfigObj(config, this._element);\n config = this._configAfterMerge(config);\n this._typeCheckConfig(config);\n return config;\n }\n\n // Static\n static getInstance(element) {\n return Data.get(getElement(element), this.DATA_KEY);\n }\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null);\n }\n static get VERSION() {\n return VERSION;\n }\n static get DATA_KEY() {\n return `bs.${this.NAME}`;\n }\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`;\n }\n static eventName(name) {\n return `${name}${this.EVENT_KEY}`;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target');\n if (!selector || selector === '#') {\n let hrefAttribute = element.getAttribute('href');\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttribute || !hrefAttribute.includes('#') && !hrefAttribute.startsWith('.')) {\n return null;\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttribute.includes('#') && !hrefAttribute.startsWith('#')) {\n hrefAttribute = `#${hrefAttribute.split('#')[1]}`;\n }\n selector = hrefAttribute && hrefAttribute !== '#' ? parseSelector(hrefAttribute.trim()) : null;\n }\n return selector;\n};\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector));\n },\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector);\n },\n children(element, selector) {\n return [].concat(...element.children).filter(child => child.matches(selector));\n },\n parents(element, selector) {\n const parents = [];\n let ancestor = element.parentNode.closest(selector);\n while (ancestor) {\n parents.push(ancestor);\n ancestor = ancestor.parentNode.closest(selector);\n }\n return parents;\n },\n prev(element, selector) {\n let previous = element.previousElementSibling;\n while (previous) {\n if (previous.matches(selector)) {\n return [previous];\n }\n previous = previous.previousElementSibling;\n }\n return [];\n },\n // TODO: this is now unused; remove later along with prev()\n next(element, selector) {\n let next = element.nextElementSibling;\n while (next) {\n if (next.matches(selector)) {\n return [next];\n }\n next = next.nextElementSibling;\n }\n return [];\n },\n focusableChildren(element) {\n const focusables = ['a', 'button', 'input', 'textarea', 'select', 'details', '[tabindex]', '[contenteditable=\"true\"]'].map(selector => `${selector}:not([tabindex^=\"-\"])`).join(',');\n return this.find(focusables, element).filter(el => !isDisabled(el) && isVisible(el));\n },\n getSelectorFromElement(element) {\n const selector = getSelector(element);\n if (selector) {\n return SelectorEngine.findOne(selector) ? selector : null;\n }\n return null;\n },\n getElementFromSelector(element) {\n const selector = getSelector(element);\n return selector ? SelectorEngine.findOne(selector) : null;\n },\n getMultipleElementsFromSelector(element) {\n const selector = getSelector(element);\n return selector ? SelectorEngine.find(selector) : [];\n }\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/component-functions.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst enableDismissTrigger = (component, method = 'hide') => {\n const clickEvent = `click.dismiss${component.EVENT_KEY}`;\n const name = component.NAME;\n EventHandler.on(document, clickEvent, `[data-bs-dismiss=\"${name}\"]`, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault();\n }\n if (isDisabled(this)) {\n return;\n }\n const target = SelectorEngine.getElementFromSelector(this) || this.closest(`.${name}`);\n const instance = component.getOrCreateInstance(target);\n\n // Method argument is left, for Alert and only, as it doesn't implement the 'hide' method\n instance[method]();\n });\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$f = 'alert';\nconst DATA_KEY$a = 'bs.alert';\nconst EVENT_KEY$b = `.${DATA_KEY$a}`;\nconst EVENT_CLOSE = `close${EVENT_KEY$b}`;\nconst EVENT_CLOSED = `closed${EVENT_KEY$b}`;\nconst CLASS_NAME_FADE$5 = 'fade';\nconst CLASS_NAME_SHOW$8 = 'show';\n\n/**\n * Class definition\n */\n\nclass Alert extends BaseComponent {\n // Getters\n static get NAME() {\n return NAME$f;\n }\n\n // Public\n close() {\n const closeEvent = EventHandler.trigger(this._element, EVENT_CLOSE);\n if (closeEvent.defaultPrevented) {\n return;\n }\n this._element.classList.remove(CLASS_NAME_SHOW$8);\n const isAnimated = this._element.classList.contains(CLASS_NAME_FADE$5);\n this._queueCallback(() => this._destroyElement(), this._element, isAnimated);\n }\n\n // Private\n _destroyElement() {\n this._element.remove();\n EventHandler.trigger(this._element, EVENT_CLOSED);\n this.dispose();\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this);\n if (typeof config !== 'string') {\n return;\n }\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config](this);\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nenableDismissTrigger(Alert, 'close');\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Alert);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$e = 'button';\nconst DATA_KEY$9 = 'bs.button';\nconst EVENT_KEY$a = `.${DATA_KEY$9}`;\nconst DATA_API_KEY$6 = '.data-api';\nconst CLASS_NAME_ACTIVE$3 = 'active';\nconst SELECTOR_DATA_TOGGLE$5 = '[data-bs-toggle=\"button\"]';\nconst EVENT_CLICK_DATA_API$6 = `click${EVENT_KEY$a}${DATA_API_KEY$6}`;\n\n/**\n * Class definition\n */\n\nclass Button extends BaseComponent {\n // Getters\n static get NAME() {\n return NAME$e;\n }\n\n // Public\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE$3));\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this);\n if (config === 'toggle') {\n data[config]();\n }\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$6, SELECTOR_DATA_TOGGLE$5, event => {\n event.preventDefault();\n const button = event.target.closest(SELECTOR_DATA_TOGGLE$5);\n const data = Button.getOrCreateInstance(button);\n data.toggle();\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Button);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/swipe.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$d = 'swipe';\nconst EVENT_KEY$9 = '.bs.swipe';\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY$9}`;\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY$9}`;\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY$9}`;\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY$9}`;\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY$9}`;\nconst POINTER_TYPE_TOUCH = 'touch';\nconst POINTER_TYPE_PEN = 'pen';\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event';\nconst SWIPE_THRESHOLD = 40;\nconst Default$c = {\n endCallback: null,\n leftCallback: null,\n rightCallback: null\n};\nconst DefaultType$c = {\n endCallback: '(function|null)',\n leftCallback: '(function|null)',\n rightCallback: '(function|null)'\n};\n\n/**\n * Class definition\n */\n\nclass Swipe extends Config {\n constructor(element, config) {\n super();\n this._element = element;\n if (!element || !Swipe.isSupported()) {\n return;\n }\n this._config = this._getConfig(config);\n this._deltaX = 0;\n this._supportPointerEvents = Boolean(window.PointerEvent);\n this._initEvents();\n }\n\n // Getters\n static get Default() {\n return Default$c;\n }\n static get DefaultType() {\n return DefaultType$c;\n }\n static get NAME() {\n return NAME$d;\n }\n\n // Public\n dispose() {\n EventHandler.off(this._element, EVENT_KEY$9);\n }\n\n // Private\n _start(event) {\n if (!this._supportPointerEvents) {\n this._deltaX = event.touches[0].clientX;\n return;\n }\n if (this._eventIsPointerPenTouch(event)) {\n this._deltaX = event.clientX;\n }\n }\n _end(event) {\n if (this._eventIsPointerPenTouch(event)) {\n this._deltaX = event.clientX - this._deltaX;\n }\n this._handleSwipe();\n execute(this._config.endCallback);\n }\n _move(event) {\n this._deltaX = event.touches && event.touches.length > 1 ? 0 : event.touches[0].clientX - this._deltaX;\n }\n _handleSwipe() {\n const absDeltaX = Math.abs(this._deltaX);\n if (absDeltaX <= SWIPE_THRESHOLD) {\n return;\n }\n const direction = absDeltaX / this._deltaX;\n this._deltaX = 0;\n if (!direction) {\n return;\n }\n execute(direction > 0 ? this._config.rightCallback : this._config.leftCallback);\n }\n _initEvents() {\n if (this._supportPointerEvents) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => this._start(event));\n EventHandler.on(this._element, EVENT_POINTERUP, event => this._end(event));\n this._element.classList.add(CLASS_NAME_POINTER_EVENT);\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => this._start(event));\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => this._move(event));\n EventHandler.on(this._element, EVENT_TOUCHEND, event => this._end(event));\n }\n }\n _eventIsPointerPenTouch(event) {\n return this._supportPointerEvents && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH);\n }\n\n // Static\n static isSupported() {\n return 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$c = 'carousel';\nconst DATA_KEY$8 = 'bs.carousel';\nconst EVENT_KEY$8 = `.${DATA_KEY$8}`;\nconst DATA_API_KEY$5 = '.data-api';\nconst ARROW_LEFT_KEY$1 = 'ArrowLeft';\nconst ARROW_RIGHT_KEY$1 = 'ArrowRight';\nconst TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch\n\nconst ORDER_NEXT = 'next';\nconst ORDER_PREV = 'prev';\nconst DIRECTION_LEFT = 'left';\nconst DIRECTION_RIGHT = 'right';\nconst EVENT_SLIDE = `slide${EVENT_KEY$8}`;\nconst EVENT_SLID = `slid${EVENT_KEY$8}`;\nconst EVENT_KEYDOWN$1 = `keydown${EVENT_KEY$8}`;\nconst EVENT_MOUSEENTER$1 = `mouseenter${EVENT_KEY$8}`;\nconst EVENT_MOUSELEAVE$1 = `mouseleave${EVENT_KEY$8}`;\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY$8}`;\nconst EVENT_LOAD_DATA_API$3 = `load${EVENT_KEY$8}${DATA_API_KEY$5}`;\nconst EVENT_CLICK_DATA_API$5 = `click${EVENT_KEY$8}${DATA_API_KEY$5}`;\nconst CLASS_NAME_CAROUSEL = 'carousel';\nconst CLASS_NAME_ACTIVE$2 = 'active';\nconst CLASS_NAME_SLIDE = 'slide';\nconst CLASS_NAME_END = 'carousel-item-end';\nconst CLASS_NAME_START = 'carousel-item-start';\nconst CLASS_NAME_NEXT = 'carousel-item-next';\nconst CLASS_NAME_PREV = 'carousel-item-prev';\nconst SELECTOR_ACTIVE = '.active';\nconst SELECTOR_ITEM = '.carousel-item';\nconst SELECTOR_ACTIVE_ITEM = SELECTOR_ACTIVE + SELECTOR_ITEM;\nconst SELECTOR_ITEM_IMG = '.carousel-item img';\nconst SELECTOR_INDICATORS = '.carousel-indicators';\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]';\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]';\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY$1]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY$1]: DIRECTION_LEFT\n};\nconst Default$b = {\n interval: 5000,\n keyboard: true,\n pause: 'hover',\n ride: false,\n touch: true,\n wrap: true\n};\nconst DefaultType$b = {\n interval: '(number|boolean)',\n // TODO:v6 remove boolean support\n keyboard: 'boolean',\n pause: '(string|boolean)',\n ride: '(boolean|string)',\n touch: 'boolean',\n wrap: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._interval = null;\n this._activeElement = null;\n this._isSliding = false;\n this.touchTimeout = null;\n this._swipeHelper = null;\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element);\n this._addEventListeners();\n if (this._config.ride === CLASS_NAME_CAROUSEL) {\n this.cycle();\n }\n }\n\n // Getters\n static get Default() {\n return Default$b;\n }\n static get DefaultType() {\n return DefaultType$b;\n }\n static get NAME() {\n return NAME$c;\n }\n\n // Public\n next() {\n this._slide(ORDER_NEXT);\n }\n nextWhenVisible() {\n // FIXME TODO use `document.visibilityState`\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next();\n }\n }\n prev() {\n this._slide(ORDER_PREV);\n }\n pause() {\n if (this._isSliding) {\n triggerTransitionEnd(this._element);\n }\n this._clearInterval();\n }\n cycle() {\n this._clearInterval();\n this._updateInterval();\n this._interval = setInterval(() => this.nextWhenVisible(), this._config.interval);\n }\n _maybeEnableCycle() {\n if (!this._config.ride) {\n return;\n }\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.cycle());\n return;\n }\n this.cycle();\n }\n to(index) {\n const items = this._getItems();\n if (index > items.length - 1 || index < 0) {\n return;\n }\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index));\n return;\n }\n const activeIndex = this._getItemIndex(this._getActive());\n if (activeIndex === index) {\n return;\n }\n const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV;\n this._slide(order, items[index]);\n }\n dispose() {\n if (this._swipeHelper) {\n this._swipeHelper.dispose();\n }\n super.dispose();\n }\n\n // Private\n _configAfterMerge(config) {\n config.defaultInterval = config.interval;\n return config;\n }\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN$1, event => this._keydown(event));\n }\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER$1, () => this.pause());\n EventHandler.on(this._element, EVENT_MOUSELEAVE$1, () => this._maybeEnableCycle());\n }\n if (this._config.touch && Swipe.isSupported()) {\n this._addTouchEventListeners();\n }\n }\n _addTouchEventListeners() {\n for (const img of SelectorEngine.find(SELECTOR_ITEM_IMG, this._element)) {\n EventHandler.on(img, EVENT_DRAG_START, event => event.preventDefault());\n }\n const endCallBack = () => {\n if (this._config.pause !== 'hover') {\n return;\n }\n\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause();\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout);\n }\n this.touchTimeout = setTimeout(() => this._maybeEnableCycle(), TOUCHEVENT_COMPAT_WAIT + this._config.interval);\n };\n const swipeConfig = {\n leftCallback: () => this._slide(this._directionToOrder(DIRECTION_LEFT)),\n rightCallback: () => this._slide(this._directionToOrder(DIRECTION_RIGHT)),\n endCallback: endCallBack\n };\n this._swipeHelper = new Swipe(this._element, swipeConfig);\n }\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return;\n }\n const direction = KEY_TO_DIRECTION[event.key];\n if (direction) {\n event.preventDefault();\n this._slide(this._directionToOrder(direction));\n }\n }\n _getItemIndex(element) {\n return this._getItems().indexOf(element);\n }\n _setActiveIndicatorElement(index) {\n if (!this._indicatorsElement) {\n return;\n }\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement);\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE$2);\n activeIndicator.removeAttribute('aria-current');\n const newActiveIndicator = SelectorEngine.findOne(`[data-bs-slide-to=\"${index}\"]`, this._indicatorsElement);\n if (newActiveIndicator) {\n newActiveIndicator.classList.add(CLASS_NAME_ACTIVE$2);\n newActiveIndicator.setAttribute('aria-current', 'true');\n }\n }\n _updateInterval() {\n const element = this._activeElement || this._getActive();\n if (!element) {\n return;\n }\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10);\n this._config.interval = elementInterval || this._config.defaultInterval;\n }\n _slide(order, element = null) {\n if (this._isSliding) {\n return;\n }\n const activeElement = this._getActive();\n const isNext = order === ORDER_NEXT;\n const nextElement = element || getNextActiveElement(this._getItems(), activeElement, isNext, this._config.wrap);\n if (nextElement === activeElement) {\n return;\n }\n const nextElementIndex = this._getItemIndex(nextElement);\n const triggerEvent = eventName => {\n return EventHandler.trigger(this._element, eventName, {\n relatedTarget: nextElement,\n direction: this._orderToDirection(order),\n from: this._getItemIndex(activeElement),\n to: nextElementIndex\n });\n };\n const slideEvent = triggerEvent(EVENT_SLIDE);\n if (slideEvent.defaultPrevented) {\n return;\n }\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n // TODO: change tests that use empty divs to avoid this check\n return;\n }\n const isCycling = Boolean(this._interval);\n this.pause();\n this._isSliding = true;\n this._setActiveIndicatorElement(nextElementIndex);\n this._activeElement = nextElement;\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END;\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV;\n nextElement.classList.add(orderClassName);\n reflow(nextElement);\n activeElement.classList.add(directionalClassName);\n nextElement.classList.add(directionalClassName);\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName);\n nextElement.classList.add(CLASS_NAME_ACTIVE$2);\n activeElement.classList.remove(CLASS_NAME_ACTIVE$2, orderClassName, directionalClassName);\n this._isSliding = false;\n triggerEvent(EVENT_SLID);\n };\n this._queueCallback(completeCallBack, activeElement, this._isAnimated());\n if (isCycling) {\n this.cycle();\n }\n }\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_SLIDE);\n }\n _getActive() {\n return SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element);\n }\n _getItems() {\n return SelectorEngine.find(SELECTOR_ITEM, this._element);\n }\n _clearInterval() {\n if (this._interval) {\n clearInterval(this._interval);\n this._interval = null;\n }\n }\n _directionToOrder(direction) {\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT;\n }\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV;\n }\n _orderToDirection(order) {\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT;\n }\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT;\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Carousel.getOrCreateInstance(this, config);\n if (typeof config === 'number') {\n data.to(config);\n return;\n }\n if (typeof config === 'string') {\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n }\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$5, SELECTOR_DATA_SLIDE, function (event) {\n const target = SelectorEngine.getElementFromSelector(this);\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return;\n }\n event.preventDefault();\n const carousel = Carousel.getOrCreateInstance(target);\n const slideIndex = this.getAttribute('data-bs-slide-to');\n if (slideIndex) {\n carousel.to(slideIndex);\n carousel._maybeEnableCycle();\n return;\n }\n if (Manipulator.getDataAttribute(this, 'slide') === 'next') {\n carousel.next();\n carousel._maybeEnableCycle();\n return;\n }\n carousel.prev();\n carousel._maybeEnableCycle();\n});\nEventHandler.on(window, EVENT_LOAD_DATA_API$3, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE);\n for (const carousel of carousels) {\n Carousel.getOrCreateInstance(carousel);\n }\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Carousel);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$b = 'collapse';\nconst DATA_KEY$7 = 'bs.collapse';\nconst EVENT_KEY$7 = `.${DATA_KEY$7}`;\nconst DATA_API_KEY$4 = '.data-api';\nconst EVENT_SHOW$6 = `show${EVENT_KEY$7}`;\nconst EVENT_SHOWN$6 = `shown${EVENT_KEY$7}`;\nconst EVENT_HIDE$6 = `hide${EVENT_KEY$7}`;\nconst EVENT_HIDDEN$6 = `hidden${EVENT_KEY$7}`;\nconst EVENT_CLICK_DATA_API$4 = `click${EVENT_KEY$7}${DATA_API_KEY$4}`;\nconst CLASS_NAME_SHOW$7 = 'show';\nconst CLASS_NAME_COLLAPSE = 'collapse';\nconst CLASS_NAME_COLLAPSING = 'collapsing';\nconst CLASS_NAME_COLLAPSED = 'collapsed';\nconst CLASS_NAME_DEEPER_CHILDREN = `:scope .${CLASS_NAME_COLLAPSE} .${CLASS_NAME_COLLAPSE}`;\nconst CLASS_NAME_HORIZONTAL = 'collapse-horizontal';\nconst WIDTH = 'width';\nconst HEIGHT = 'height';\nconst SELECTOR_ACTIVES = '.collapse.show, .collapse.collapsing';\nconst SELECTOR_DATA_TOGGLE$4 = '[data-bs-toggle=\"collapse\"]';\nconst Default$a = {\n parent: null,\n toggle: true\n};\nconst DefaultType$a = {\n parent: '(null|element)',\n toggle: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._isTransitioning = false;\n this._triggerArray = [];\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE$4);\n for (const elem of toggleList) {\n const selector = SelectorEngine.getSelectorFromElement(elem);\n const filterElement = SelectorEngine.find(selector).filter(foundElement => foundElement === this._element);\n if (selector !== null && filterElement.length) {\n this._triggerArray.push(elem);\n }\n }\n this._initializeChildren();\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._triggerArray, this._isShown());\n }\n if (this._config.toggle) {\n this.toggle();\n }\n }\n\n // Getters\n static get Default() {\n return Default$a;\n }\n static get DefaultType() {\n return DefaultType$a;\n }\n static get NAME() {\n return NAME$b;\n }\n\n // Public\n toggle() {\n if (this._isShown()) {\n this.hide();\n } else {\n this.show();\n }\n }\n show() {\n if (this._isTransitioning || this._isShown()) {\n return;\n }\n let activeChildren = [];\n\n // find active children\n if (this._config.parent) {\n activeChildren = this._getFirstLevelChildren(SELECTOR_ACTIVES).filter(element => element !== this._element).map(element => Collapse.getOrCreateInstance(element, {\n toggle: false\n }));\n }\n if (activeChildren.length && activeChildren[0]._isTransitioning) {\n return;\n }\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW$6);\n if (startEvent.defaultPrevented) {\n return;\n }\n for (const activeInstance of activeChildren) {\n activeInstance.hide();\n }\n const dimension = this._getDimension();\n this._element.classList.remove(CLASS_NAME_COLLAPSE);\n this._element.classList.add(CLASS_NAME_COLLAPSING);\n this._element.style[dimension] = 0;\n this._addAriaAndCollapsedClass(this._triggerArray, true);\n this._isTransitioning = true;\n const complete = () => {\n this._isTransitioning = false;\n this._element.classList.remove(CLASS_NAME_COLLAPSING);\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$7);\n this._element.style[dimension] = '';\n EventHandler.trigger(this._element, EVENT_SHOWN$6);\n };\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);\n const scrollSize = `scroll${capitalizedDimension}`;\n this._queueCallback(complete, this._element, true);\n this._element.style[dimension] = `${this._element[scrollSize]}px`;\n }\n hide() {\n if (this._isTransitioning || !this._isShown()) {\n return;\n }\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE$6);\n if (startEvent.defaultPrevented) {\n return;\n }\n const dimension = this._getDimension();\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`;\n reflow(this._element);\n this._element.classList.add(CLASS_NAME_COLLAPSING);\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$7);\n for (const trigger of this._triggerArray) {\n const element = SelectorEngine.getElementFromSelector(trigger);\n if (element && !this._isShown(element)) {\n this._addAriaAndCollapsedClass([trigger], false);\n }\n }\n this._isTransitioning = true;\n const complete = () => {\n this._isTransitioning = false;\n this._element.classList.remove(CLASS_NAME_COLLAPSING);\n this._element.classList.add(CLASS_NAME_COLLAPSE);\n EventHandler.trigger(this._element, EVENT_HIDDEN$6);\n };\n this._element.style[dimension] = '';\n this._queueCallback(complete, this._element, true);\n }\n _isShown(element = this._element) {\n return element.classList.contains(CLASS_NAME_SHOW$7);\n }\n\n // Private\n _configAfterMerge(config) {\n config.toggle = Boolean(config.toggle); // Coerce string values\n config.parent = getElement(config.parent);\n return config;\n }\n _getDimension() {\n return this._element.classList.contains(CLASS_NAME_HORIZONTAL) ? WIDTH : HEIGHT;\n }\n _initializeChildren() {\n if (!this._config.parent) {\n return;\n }\n const children = this._getFirstLevelChildren(SELECTOR_DATA_TOGGLE$4);\n for (const element of children) {\n const selected = SelectorEngine.getElementFromSelector(element);\n if (selected) {\n this._addAriaAndCollapsedClass([element], this._isShown(selected));\n }\n }\n }\n _getFirstLevelChildren(selector) {\n const children = SelectorEngine.find(CLASS_NAME_DEEPER_CHILDREN, this._config.parent);\n // remove children if greater depth\n return SelectorEngine.find(selector, this._config.parent).filter(element => !children.includes(element));\n }\n _addAriaAndCollapsedClass(triggerArray, isOpen) {\n if (!triggerArray.length) {\n return;\n }\n for (const element of triggerArray) {\n element.classList.toggle(CLASS_NAME_COLLAPSED, !isOpen);\n element.setAttribute('aria-expanded', isOpen);\n }\n }\n\n // Static\n static jQueryInterface(config) {\n const _config = {};\n if (typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false;\n }\n return this.each(function () {\n const data = Collapse.getOrCreateInstance(this, _config);\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n }\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$4, SELECTOR_DATA_TOGGLE$4, function (event) {\n // preventDefault only for
elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || event.delegateTarget && event.delegateTarget.tagName === 'A') {\n event.preventDefault();\n }\n for (const element of SelectorEngine.getMultipleElementsFromSelector(this)) {\n Collapse.getOrCreateInstance(element, {\n toggle: false\n }).toggle();\n }\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Collapse);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$a = 'dropdown';\nconst DATA_KEY$6 = 'bs.dropdown';\nconst EVENT_KEY$6 = `.${DATA_KEY$6}`;\nconst DATA_API_KEY$3 = '.data-api';\nconst ESCAPE_KEY$2 = 'Escape';\nconst TAB_KEY$1 = 'Tab';\nconst ARROW_UP_KEY$1 = 'ArrowUp';\nconst ARROW_DOWN_KEY$1 = 'ArrowDown';\nconst RIGHT_MOUSE_BUTTON = 2; // MouseEvent.button value for the secondary button, usually the right button\n\nconst EVENT_HIDE$5 = `hide${EVENT_KEY$6}`;\nconst EVENT_HIDDEN$5 = `hidden${EVENT_KEY$6}`;\nconst EVENT_SHOW$5 = `show${EVENT_KEY$6}`;\nconst EVENT_SHOWN$5 = `shown${EVENT_KEY$6}`;\nconst EVENT_CLICK_DATA_API$3 = `click${EVENT_KEY$6}${DATA_API_KEY$3}`;\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY$6}${DATA_API_KEY$3}`;\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY$6}${DATA_API_KEY$3}`;\nconst CLASS_NAME_SHOW$6 = 'show';\nconst CLASS_NAME_DROPUP = 'dropup';\nconst CLASS_NAME_DROPEND = 'dropend';\nconst CLASS_NAME_DROPSTART = 'dropstart';\nconst CLASS_NAME_DROPUP_CENTER = 'dropup-center';\nconst CLASS_NAME_DROPDOWN_CENTER = 'dropdown-center';\nconst SELECTOR_DATA_TOGGLE$3 = '[data-bs-toggle=\"dropdown\"]:not(.disabled):not(:disabled)';\nconst SELECTOR_DATA_TOGGLE_SHOWN = `${SELECTOR_DATA_TOGGLE$3}.${CLASS_NAME_SHOW$6}`;\nconst SELECTOR_MENU = '.dropdown-menu';\nconst SELECTOR_NAVBAR = '.navbar';\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav';\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)';\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start';\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end';\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start';\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end';\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start';\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start';\nconst PLACEMENT_TOPCENTER = 'top';\nconst PLACEMENT_BOTTOMCENTER = 'bottom';\nconst Default$9 = {\n autoClose: true,\n boundary: 'clippingParents',\n display: 'dynamic',\n offset: [0, 2],\n popperConfig: null,\n reference: 'toggle'\n};\nconst DefaultType$9 = {\n autoClose: '(boolean|string)',\n boundary: '(string|element)',\n display: 'string',\n offset: '(array|string|function)',\n popperConfig: '(null|object|function)',\n reference: '(string|element|object)'\n};\n\n/**\n * Class definition\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._popper = null;\n this._parent = this._element.parentNode; // dropdown wrapper\n // TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/\n this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] || SelectorEngine.prev(this._element, SELECTOR_MENU)[0] || SelectorEngine.findOne(SELECTOR_MENU, this._parent);\n this._inNavbar = this._detectNavbar();\n }\n\n // Getters\n static get Default() {\n return Default$9;\n }\n static get DefaultType() {\n return DefaultType$9;\n }\n static get NAME() {\n return NAME$a;\n }\n\n // Public\n toggle() {\n return this._isShown() ? this.hide() : this.show();\n }\n show() {\n if (isDisabled(this._element) || this._isShown()) {\n return;\n }\n const relatedTarget = {\n relatedTarget: this._element\n };\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$5, relatedTarget);\n if (showEvent.defaultPrevented) {\n return;\n }\n this._createPopper();\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement && !this._parent.closest(SELECTOR_NAVBAR_NAV)) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.on(element, 'mouseover', noop);\n }\n }\n this._element.focus();\n this._element.setAttribute('aria-expanded', true);\n this._menu.classList.add(CLASS_NAME_SHOW$6);\n this._element.classList.add(CLASS_NAME_SHOW$6);\n EventHandler.trigger(this._element, EVENT_SHOWN$5, relatedTarget);\n }\n hide() {\n if (isDisabled(this._element) || !this._isShown()) {\n return;\n }\n const relatedTarget = {\n relatedTarget: this._element\n };\n this._completeHide(relatedTarget);\n }\n dispose() {\n if (this._popper) {\n this._popper.destroy();\n }\n super.dispose();\n }\n update() {\n this._inNavbar = this._detectNavbar();\n if (this._popper) {\n this._popper.update();\n }\n }\n\n // Private\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$5, relatedTarget);\n if (hideEvent.defaultPrevented) {\n return;\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.off(element, 'mouseover', noop);\n }\n }\n if (this._popper) {\n this._popper.destroy();\n }\n this._menu.classList.remove(CLASS_NAME_SHOW$6);\n this._element.classList.remove(CLASS_NAME_SHOW$6);\n this._element.setAttribute('aria-expanded', 'false');\n Manipulator.removeDataAttribute(this._menu, 'popper');\n EventHandler.trigger(this._element, EVENT_HIDDEN$5, relatedTarget);\n }\n _getConfig(config) {\n config = super._getConfig(config);\n if (typeof config.reference === 'object' && !isElement(config.reference) && typeof config.reference.getBoundingClientRect !== 'function') {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME$a.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`);\n }\n return config;\n }\n _createPopper() {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)');\n }\n let referenceElement = this._element;\n if (this._config.reference === 'parent') {\n referenceElement = this._parent;\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference);\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference;\n }\n const popperConfig = this._getPopperConfig();\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig);\n }\n _isShown() {\n return this._menu.classList.contains(CLASS_NAME_SHOW$6);\n }\n _getPlacement() {\n const parentDropdown = this._parent;\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT;\n }\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT;\n }\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP_CENTER)) {\n return PLACEMENT_TOPCENTER;\n }\n if (parentDropdown.classList.contains(CLASS_NAME_DROPDOWN_CENTER)) {\n return PLACEMENT_BOTTOMCENTER;\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end';\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP;\n }\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM;\n }\n _detectNavbar() {\n return this._element.closest(SELECTOR_NAVBAR) !== null;\n }\n _getOffset() {\n const {\n offset\n } = this._config;\n if (typeof offset === 'string') {\n return offset.split(',').map(value => Number.parseInt(value, 10));\n }\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element);\n }\n return offset;\n }\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n }, {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n };\n\n // Disable Popper if we have a static display or Dropdown is in Navbar\n if (this._inNavbar || this._config.display === 'static') {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static'); // TODO: v6 remove\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }];\n }\n return {\n ...defaultBsPopperConfig,\n ...execute(this._config.popperConfig, [defaultBsPopperConfig])\n };\n }\n _selectMenuItem({\n key,\n target\n }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(element => isVisible(element));\n if (!items.length) {\n return;\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY$1, !items.includes(target)).focus();\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Dropdown.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n });\n }\n static clearMenus(event) {\n if (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY$1) {\n return;\n }\n const openToggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE_SHOWN);\n for (const toggle of openToggles) {\n const context = Dropdown.getInstance(toggle);\n if (!context || context._config.autoClose === false) {\n continue;\n }\n const composedPath = event.composedPath();\n const isMenuTarget = composedPath.includes(context._menu);\n if (composedPath.includes(context._element) || context._config.autoClose === 'inside' && !isMenuTarget || context._config.autoClose === 'outside' && isMenuTarget) {\n continue;\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && (event.type === 'keyup' && event.key === TAB_KEY$1 || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue;\n }\n const relatedTarget = {\n relatedTarget: context._element\n };\n if (event.type === 'click') {\n relatedTarget.clickEvent = event;\n }\n context._completeHide(relatedTarget);\n }\n }\n static dataApiKeydownHandler(event) {\n // If not an UP | DOWN | ESCAPE key => not a dropdown command\n // If input/textarea && if key is other than ESCAPE => not a dropdown command\n\n const isInput = /input|textarea/i.test(event.target.tagName);\n const isEscapeEvent = event.key === ESCAPE_KEY$2;\n const isUpOrDownEvent = [ARROW_UP_KEY$1, ARROW_DOWN_KEY$1].includes(event.key);\n if (!isUpOrDownEvent && !isEscapeEvent) {\n return;\n }\n if (isInput && !isEscapeEvent) {\n return;\n }\n event.preventDefault();\n\n // TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/\n const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.next(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);\n const instance = Dropdown.getOrCreateInstance(getToggleButton);\n if (isUpOrDownEvent) {\n event.stopPropagation();\n instance.show();\n instance._selectMenuItem(event);\n return;\n }\n if (instance._isShown()) {\n // else is escape and we check if it is shown\n event.stopPropagation();\n instance.hide();\n getToggleButton.focus();\n }\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE$3, Dropdown.dataApiKeydownHandler);\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler);\nEventHandler.on(document, EVENT_CLICK_DATA_API$3, Dropdown.clearMenus);\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus);\nEventHandler.on(document, EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$3, function (event) {\n event.preventDefault();\n Dropdown.getOrCreateInstance(this).toggle();\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Dropdown);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$9 = 'backdrop';\nconst CLASS_NAME_FADE$4 = 'fade';\nconst CLASS_NAME_SHOW$5 = 'show';\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME$9}`;\nconst Default$8 = {\n className: 'modal-backdrop',\n clickCallback: null,\n isAnimated: false,\n isVisible: true,\n // if false, we use the backdrop helper without adding any element to the dom\n rootElement: 'body' // give the choice to place backdrop under different elements\n};\n\nconst DefaultType$8 = {\n className: 'string',\n clickCallback: '(function|null)',\n isAnimated: 'boolean',\n isVisible: 'boolean',\n rootElement: '(element|string)'\n};\n\n/**\n * Class definition\n */\n\nclass Backdrop extends Config {\n constructor(config) {\n super();\n this._config = this._getConfig(config);\n this._isAppended = false;\n this._element = null;\n }\n\n // Getters\n static get Default() {\n return Default$8;\n }\n static get DefaultType() {\n return DefaultType$8;\n }\n static get NAME() {\n return NAME$9;\n }\n\n // Public\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback);\n return;\n }\n this._append();\n const element = this._getElement();\n if (this._config.isAnimated) {\n reflow(element);\n }\n element.classList.add(CLASS_NAME_SHOW$5);\n this._emulateAnimation(() => {\n execute(callback);\n });\n }\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback);\n return;\n }\n this._getElement().classList.remove(CLASS_NAME_SHOW$5);\n this._emulateAnimation(() => {\n this.dispose();\n execute(callback);\n });\n }\n dispose() {\n if (!this._isAppended) {\n return;\n }\n EventHandler.off(this._element, EVENT_MOUSEDOWN);\n this._element.remove();\n this._isAppended = false;\n }\n\n // Private\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div');\n backdrop.className = this._config.className;\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE$4);\n }\n this._element = backdrop;\n }\n return this._element;\n }\n _configAfterMerge(config) {\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement);\n return config;\n }\n _append() {\n if (this._isAppended) {\n return;\n }\n const element = this._getElement();\n this._config.rootElement.append(element);\n EventHandler.on(element, EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback);\n });\n this._isAppended = true;\n }\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated);\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/focustrap.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$8 = 'focustrap';\nconst DATA_KEY$5 = 'bs.focustrap';\nconst EVENT_KEY$5 = `.${DATA_KEY$5}`;\nconst EVENT_FOCUSIN$2 = `focusin${EVENT_KEY$5}`;\nconst EVENT_KEYDOWN_TAB = `keydown.tab${EVENT_KEY$5}`;\nconst TAB_KEY = 'Tab';\nconst TAB_NAV_FORWARD = 'forward';\nconst TAB_NAV_BACKWARD = 'backward';\nconst Default$7 = {\n autofocus: true,\n trapElement: null // The element to trap focus inside of\n};\n\nconst DefaultType$7 = {\n autofocus: 'boolean',\n trapElement: 'element'\n};\n\n/**\n * Class definition\n */\n\nclass FocusTrap extends Config {\n constructor(config) {\n super();\n this._config = this._getConfig(config);\n this._isActive = false;\n this._lastTabNavDirection = null;\n }\n\n // Getters\n static get Default() {\n return Default$7;\n }\n static get DefaultType() {\n return DefaultType$7;\n }\n static get NAME() {\n return NAME$8;\n }\n\n // Public\n activate() {\n if (this._isActive) {\n return;\n }\n if (this._config.autofocus) {\n this._config.trapElement.focus();\n }\n EventHandler.off(document, EVENT_KEY$5); // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN$2, event => this._handleFocusin(event));\n EventHandler.on(document, EVENT_KEYDOWN_TAB, event => this._handleKeydown(event));\n this._isActive = true;\n }\n deactivate() {\n if (!this._isActive) {\n return;\n }\n this._isActive = false;\n EventHandler.off(document, EVENT_KEY$5);\n }\n\n // Private\n _handleFocusin(event) {\n const {\n trapElement\n } = this._config;\n if (event.target === document || event.target === trapElement || trapElement.contains(event.target)) {\n return;\n }\n const elements = SelectorEngine.focusableChildren(trapElement);\n if (elements.length === 0) {\n trapElement.focus();\n } else if (this._lastTabNavDirection === TAB_NAV_BACKWARD) {\n elements[elements.length - 1].focus();\n } else {\n elements[0].focus();\n }\n }\n _handleKeydown(event) {\n if (event.key !== TAB_KEY) {\n return;\n }\n this._lastTabNavDirection = event.shiftKey ? TAB_NAV_BACKWARD : TAB_NAV_FORWARD;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top';\nconst SELECTOR_STICKY_CONTENT = '.sticky-top';\nconst PROPERTY_PADDING = 'padding-right';\nconst PROPERTY_MARGIN = 'margin-right';\n\n/**\n * Class definition\n */\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body;\n }\n\n // Public\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth;\n return Math.abs(window.innerWidth - documentWidth);\n }\n hide() {\n const width = this.getWidth();\n this._disableOverFlow();\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width);\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width);\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width);\n }\n reset() {\n this._resetElementAttributes(this._element, 'overflow');\n this._resetElementAttributes(this._element, PROPERTY_PADDING);\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING);\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN);\n }\n isOverflowing() {\n return this.getWidth() > 0;\n }\n\n // Private\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow');\n this._element.style.overflow = 'hidden';\n }\n _setElementAttributes(selector, styleProperty, callback) {\n const scrollbarWidth = this.getWidth();\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return;\n }\n this._saveInitialAttribute(element, styleProperty);\n const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty);\n element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`);\n };\n this._applyManipulationCallback(selector, manipulationCallBack);\n }\n _saveInitialAttribute(element, styleProperty) {\n const actualValue = element.style.getPropertyValue(styleProperty);\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProperty, actualValue);\n }\n }\n _resetElementAttributes(selector, styleProperty) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProperty);\n // We only want to remove the property if the value is `null`; the value can also be zero\n if (value === null) {\n element.style.removeProperty(styleProperty);\n return;\n }\n Manipulator.removeDataAttribute(element, styleProperty);\n element.style.setProperty(styleProperty, value);\n };\n this._applyManipulationCallback(selector, manipulationCallBack);\n }\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector);\n return;\n }\n for (const sel of SelectorEngine.find(selector, this._element)) {\n callBack(sel);\n }\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$7 = 'modal';\nconst DATA_KEY$4 = 'bs.modal';\nconst EVENT_KEY$4 = `.${DATA_KEY$4}`;\nconst DATA_API_KEY$2 = '.data-api';\nconst ESCAPE_KEY$1 = 'Escape';\nconst EVENT_HIDE$4 = `hide${EVENT_KEY$4}`;\nconst EVENT_HIDE_PREVENTED$1 = `hidePrevented${EVENT_KEY$4}`;\nconst EVENT_HIDDEN$4 = `hidden${EVENT_KEY$4}`;\nconst EVENT_SHOW$4 = `show${EVENT_KEY$4}`;\nconst EVENT_SHOWN$4 = `shown${EVENT_KEY$4}`;\nconst EVENT_RESIZE$1 = `resize${EVENT_KEY$4}`;\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY$4}`;\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY$4}`;\nconst EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$4}`;\nconst EVENT_CLICK_DATA_API$2 = `click${EVENT_KEY$4}${DATA_API_KEY$2}`;\nconst CLASS_NAME_OPEN = 'modal-open';\nconst CLASS_NAME_FADE$3 = 'fade';\nconst CLASS_NAME_SHOW$4 = 'show';\nconst CLASS_NAME_STATIC = 'modal-static';\nconst OPEN_SELECTOR$1 = '.modal.show';\nconst SELECTOR_DIALOG = '.modal-dialog';\nconst SELECTOR_MODAL_BODY = '.modal-body';\nconst SELECTOR_DATA_TOGGLE$2 = '[data-bs-toggle=\"modal\"]';\nconst Default$6 = {\n backdrop: true,\n focus: true,\n keyboard: true\n};\nconst DefaultType$6 = {\n backdrop: '(boolean|string)',\n focus: 'boolean',\n keyboard: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element);\n this._backdrop = this._initializeBackDrop();\n this._focustrap = this._initializeFocusTrap();\n this._isShown = false;\n this._isTransitioning = false;\n this._scrollBar = new ScrollBarHelper();\n this._addEventListeners();\n }\n\n // Getters\n static get Default() {\n return Default$6;\n }\n static get DefaultType() {\n return DefaultType$6;\n }\n static get NAME() {\n return NAME$7;\n }\n\n // Public\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget);\n }\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return;\n }\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$4, {\n relatedTarget\n });\n if (showEvent.defaultPrevented) {\n return;\n }\n this._isShown = true;\n this._isTransitioning = true;\n this._scrollBar.hide();\n document.body.classList.add(CLASS_NAME_OPEN);\n this._adjustDialog();\n this._backdrop.show(() => this._showElement(relatedTarget));\n }\n hide() {\n if (!this._isShown || this._isTransitioning) {\n return;\n }\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$4);\n if (hideEvent.defaultPrevented) {\n return;\n }\n this._isShown = false;\n this._isTransitioning = true;\n this._focustrap.deactivate();\n this._element.classList.remove(CLASS_NAME_SHOW$4);\n this._queueCallback(() => this._hideModal(), this._element, this._isAnimated());\n }\n dispose() {\n EventHandler.off(window, EVENT_KEY$4);\n EventHandler.off(this._dialog, EVENT_KEY$4);\n this._backdrop.dispose();\n this._focustrap.deactivate();\n super.dispose();\n }\n handleUpdate() {\n this._adjustDialog();\n }\n\n // Private\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop),\n // 'static' option will be translated to true, and booleans will keep their value,\n isAnimated: this._isAnimated()\n });\n }\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n });\n }\n _showElement(relatedTarget) {\n // try to append dynamic modal\n if (!document.body.contains(this._element)) {\n document.body.append(this._element);\n }\n this._element.style.display = 'block';\n this._element.removeAttribute('aria-hidden');\n this._element.setAttribute('aria-modal', true);\n this._element.setAttribute('role', 'dialog');\n this._element.scrollTop = 0;\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog);\n if (modalBody) {\n modalBody.scrollTop = 0;\n }\n reflow(this._element);\n this._element.classList.add(CLASS_NAME_SHOW$4);\n const transitionComplete = () => {\n if (this._config.focus) {\n this._focustrap.activate();\n }\n this._isTransitioning = false;\n EventHandler.trigger(this._element, EVENT_SHOWN$4, {\n relatedTarget\n });\n };\n this._queueCallback(transitionComplete, this._dialog, this._isAnimated());\n }\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS$1, event => {\n if (event.key !== ESCAPE_KEY$1) {\n return;\n }\n if (this._config.keyboard) {\n this.hide();\n return;\n }\n this._triggerBackdropTransition();\n });\n EventHandler.on(window, EVENT_RESIZE$1, () => {\n if (this._isShown && !this._isTransitioning) {\n this._adjustDialog();\n }\n });\n EventHandler.on(this._element, EVENT_MOUSEDOWN_DISMISS, event => {\n // a bad trick to segregate clicks that may start inside dialog but end outside, and avoid listen to scrollbar clicks\n EventHandler.one(this._element, EVENT_CLICK_DISMISS, event2 => {\n if (this._element !== event.target || this._element !== event2.target) {\n return;\n }\n if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition();\n return;\n }\n if (this._config.backdrop) {\n this.hide();\n }\n });\n });\n }\n _hideModal() {\n this._element.style.display = 'none';\n this._element.setAttribute('aria-hidden', true);\n this._element.removeAttribute('aria-modal');\n this._element.removeAttribute('role');\n this._isTransitioning = false;\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN);\n this._resetAdjustments();\n this._scrollBar.reset();\n EventHandler.trigger(this._element, EVENT_HIDDEN$4);\n });\n }\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE$3);\n }\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED$1);\n if (hideEvent.defaultPrevented) {\n return;\n }\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;\n const initialOverflowY = this._element.style.overflowY;\n // return if the following background transition hasn't yet completed\n if (initialOverflowY === 'hidden' || this._element.classList.contains(CLASS_NAME_STATIC)) {\n return;\n }\n if (!isModalOverflowing) {\n this._element.style.overflowY = 'hidden';\n }\n this._element.classList.add(CLASS_NAME_STATIC);\n this._queueCallback(() => {\n this._element.classList.remove(CLASS_NAME_STATIC);\n this._queueCallback(() => {\n this._element.style.overflowY = initialOverflowY;\n }, this._dialog);\n }, this._dialog);\n this._element.focus();\n }\n\n /**\n * The following methods are used to handle overflowing modals\n */\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;\n const scrollbarWidth = this._scrollBar.getWidth();\n const isBodyOverflowing = scrollbarWidth > 0;\n if (isBodyOverflowing && !isModalOverflowing) {\n const property = isRTL() ? 'paddingLeft' : 'paddingRight';\n this._element.style[property] = `${scrollbarWidth}px`;\n }\n if (!isBodyOverflowing && isModalOverflowing) {\n const property = isRTL() ? 'paddingRight' : 'paddingLeft';\n this._element.style[property] = `${scrollbarWidth}px`;\n }\n }\n _resetAdjustments() {\n this._element.style.paddingLeft = '';\n this._element.style.paddingRight = '';\n }\n\n // Static\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config](relatedTarget);\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$2, SELECTOR_DATA_TOGGLE$2, function (event) {\n const target = SelectorEngine.getElementFromSelector(this);\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault();\n }\n EventHandler.one(target, EVENT_SHOW$4, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return;\n }\n EventHandler.one(target, EVENT_HIDDEN$4, () => {\n if (isVisible(this)) {\n this.focus();\n }\n });\n });\n\n // avoid conflict when clicking modal toggler while another one is open\n const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR$1);\n if (alreadyOpen) {\n Modal.getInstance(alreadyOpen).hide();\n }\n const data = Modal.getOrCreateInstance(target);\n data.toggle(this);\n});\nenableDismissTrigger(Modal);\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Modal);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$6 = 'offcanvas';\nconst DATA_KEY$3 = 'bs.offcanvas';\nconst EVENT_KEY$3 = `.${DATA_KEY$3}`;\nconst DATA_API_KEY$1 = '.data-api';\nconst EVENT_LOAD_DATA_API$2 = `load${EVENT_KEY$3}${DATA_API_KEY$1}`;\nconst ESCAPE_KEY = 'Escape';\nconst CLASS_NAME_SHOW$3 = 'show';\nconst CLASS_NAME_SHOWING$1 = 'showing';\nconst CLASS_NAME_HIDING = 'hiding';\nconst CLASS_NAME_BACKDROP = 'offcanvas-backdrop';\nconst OPEN_SELECTOR = '.offcanvas.show';\nconst EVENT_SHOW$3 = `show${EVENT_KEY$3}`;\nconst EVENT_SHOWN$3 = `shown${EVENT_KEY$3}`;\nconst EVENT_HIDE$3 = `hide${EVENT_KEY$3}`;\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY$3}`;\nconst EVENT_HIDDEN$3 = `hidden${EVENT_KEY$3}`;\nconst EVENT_RESIZE = `resize${EVENT_KEY$3}`;\nconst EVENT_CLICK_DATA_API$1 = `click${EVENT_KEY$3}${DATA_API_KEY$1}`;\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY$3}`;\nconst SELECTOR_DATA_TOGGLE$1 = '[data-bs-toggle=\"offcanvas\"]';\nconst Default$5 = {\n backdrop: true,\n keyboard: true,\n scroll: false\n};\nconst DefaultType$5 = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n scroll: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._isShown = false;\n this._backdrop = this._initializeBackDrop();\n this._focustrap = this._initializeFocusTrap();\n this._addEventListeners();\n }\n\n // Getters\n static get Default() {\n return Default$5;\n }\n static get DefaultType() {\n return DefaultType$5;\n }\n static get NAME() {\n return NAME$6;\n }\n\n // Public\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget);\n }\n show(relatedTarget) {\n if (this._isShown) {\n return;\n }\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$3, {\n relatedTarget\n });\n if (showEvent.defaultPrevented) {\n return;\n }\n this._isShown = true;\n this._backdrop.show();\n if (!this._config.scroll) {\n new ScrollBarHelper().hide();\n }\n this._element.setAttribute('aria-modal', true);\n this._element.setAttribute('role', 'dialog');\n this._element.classList.add(CLASS_NAME_SHOWING$1);\n const completeCallBack = () => {\n if (!this._config.scroll || this._config.backdrop) {\n this._focustrap.activate();\n }\n this._element.classList.add(CLASS_NAME_SHOW$3);\n this._element.classList.remove(CLASS_NAME_SHOWING$1);\n EventHandler.trigger(this._element, EVENT_SHOWN$3, {\n relatedTarget\n });\n };\n this._queueCallback(completeCallBack, this._element, true);\n }\n hide() {\n if (!this._isShown) {\n return;\n }\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$3);\n if (hideEvent.defaultPrevented) {\n return;\n }\n this._focustrap.deactivate();\n this._element.blur();\n this._isShown = false;\n this._element.classList.add(CLASS_NAME_HIDING);\n this._backdrop.hide();\n const completeCallback = () => {\n this._element.classList.remove(CLASS_NAME_SHOW$3, CLASS_NAME_HIDING);\n this._element.removeAttribute('aria-modal');\n this._element.removeAttribute('role');\n if (!this._config.scroll) {\n new ScrollBarHelper().reset();\n }\n EventHandler.trigger(this._element, EVENT_HIDDEN$3);\n };\n this._queueCallback(completeCallback, this._element, true);\n }\n dispose() {\n this._backdrop.dispose();\n this._focustrap.deactivate();\n super.dispose();\n }\n\n // Private\n _initializeBackDrop() {\n const clickCallback = () => {\n if (this._config.backdrop === 'static') {\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);\n return;\n }\n this.hide();\n };\n\n // 'static' option will be translated to true, and booleans will keep their value\n const isVisible = Boolean(this._config.backdrop);\n return new Backdrop({\n className: CLASS_NAME_BACKDROP,\n isVisible,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: isVisible ? clickCallback : null\n });\n }\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n });\n }\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (event.key !== ESCAPE_KEY) {\n return;\n }\n if (this._config.keyboard) {\n this.hide();\n return;\n }\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);\n });\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config](this);\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$1, SELECTOR_DATA_TOGGLE$1, function (event) {\n const target = SelectorEngine.getElementFromSelector(this);\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault();\n }\n if (isDisabled(this)) {\n return;\n }\n EventHandler.one(target, EVENT_HIDDEN$3, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus();\n }\n });\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR);\n if (alreadyOpen && alreadyOpen !== target) {\n Offcanvas.getInstance(alreadyOpen).hide();\n }\n const data = Offcanvas.getOrCreateInstance(target);\n data.toggle(this);\n});\nEventHandler.on(window, EVENT_LOAD_DATA_API$2, () => {\n for (const selector of SelectorEngine.find(OPEN_SELECTOR)) {\n Offcanvas.getOrCreateInstance(selector).show();\n }\n});\nEventHandler.on(window, EVENT_RESIZE, () => {\n for (const element of SelectorEngine.find('[aria-modal][class*=show][class*=offcanvas-]')) {\n if (getComputedStyle(element).position !== 'fixed') {\n Offcanvas.getOrCreateInstance(element).hide();\n }\n }\n});\nenableDismissTrigger(Offcanvas);\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Offcanvas);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n// js-docs-start allow-list\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i;\nconst DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n};\n// js-docs-end allow-list\n\nconst uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);\n\n/**\n * A pattern that recognizes URLs that are safe wrt. XSS in URL navigation\n * contexts.\n *\n * Shout-out to Angular https://github.com/angular/angular/blob/15.2.8/packages/core/src/sanitization/url_sanitizer.ts#L38\n */\n// eslint-disable-next-line unicorn/better-regex\nconst SAFE_URL_PATTERN = /^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i;\nconst allowedAttribute = (attribute, allowedAttributeList) => {\n const attributeName = attribute.nodeName.toLowerCase();\n if (allowedAttributeList.includes(attributeName)) {\n if (uriAttributes.has(attributeName)) {\n return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue));\n }\n return true;\n }\n\n // Check if a regular expression validates the attribute.\n return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));\n};\nfunction sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {\n if (!unsafeHtml.length) {\n return unsafeHtml;\n }\n if (sanitizeFunction && typeof sanitizeFunction === 'function') {\n return sanitizeFunction(unsafeHtml);\n }\n const domParser = new window.DOMParser();\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html');\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'));\n for (const element of elements) {\n const elementName = element.nodeName.toLowerCase();\n if (!Object.keys(allowList).includes(elementName)) {\n element.remove();\n continue;\n }\n const attributeList = [].concat(...element.attributes);\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elementName] || []);\n for (const attribute of attributeList) {\n if (!allowedAttribute(attribute, allowedAttributes)) {\n element.removeAttribute(attribute.nodeName);\n }\n }\n }\n return createdDocument.body.innerHTML;\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/template-factory.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$5 = 'TemplateFactory';\nconst Default$4 = {\n allowList: DefaultAllowlist,\n content: {},\n // { selector : text , selector2 : text2 , }\n extraClass: '',\n html: false,\n sanitize: true,\n sanitizeFn: null,\n template: '
'\n};\nconst DefaultType$4 = {\n allowList: 'object',\n content: 'object',\n extraClass: '(string|function)',\n html: 'boolean',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n template: 'string'\n};\nconst DefaultContentType = {\n entry: '(string|element|function|null)',\n selector: '(string|element)'\n};\n\n/**\n * Class definition\n */\n\nclass TemplateFactory extends Config {\n constructor(config) {\n super();\n this._config = this._getConfig(config);\n }\n\n // Getters\n static get Default() {\n return Default$4;\n }\n static get DefaultType() {\n return DefaultType$4;\n }\n static get NAME() {\n return NAME$5;\n }\n\n // Public\n getContent() {\n return Object.values(this._config.content).map(config => this._resolvePossibleFunction(config)).filter(Boolean);\n }\n hasContent() {\n return this.getContent().length > 0;\n }\n changeContent(content) {\n this._checkContent(content);\n this._config.content = {\n ...this._config.content,\n ...content\n };\n return this;\n }\n toHtml() {\n const templateWrapper = document.createElement('div');\n templateWrapper.innerHTML = this._maybeSanitize(this._config.template);\n for (const [selector, text] of Object.entries(this._config.content)) {\n this._setContent(templateWrapper, text, selector);\n }\n const template = templateWrapper.children[0];\n const extraClass = this._resolvePossibleFunction(this._config.extraClass);\n if (extraClass) {\n template.classList.add(...extraClass.split(' '));\n }\n return template;\n }\n\n // Private\n _typeCheckConfig(config) {\n super._typeCheckConfig(config);\n this._checkContent(config.content);\n }\n _checkContent(arg) {\n for (const [selector, content] of Object.entries(arg)) {\n super._typeCheckConfig({\n selector,\n entry: content\n }, DefaultContentType);\n }\n }\n _setContent(template, content, selector) {\n const templateElement = SelectorEngine.findOne(selector, template);\n if (!templateElement) {\n return;\n }\n content = this._resolvePossibleFunction(content);\n if (!content) {\n templateElement.remove();\n return;\n }\n if (isElement(content)) {\n this._putElementInTemplate(getElement(content), templateElement);\n return;\n }\n if (this._config.html) {\n templateElement.innerHTML = this._maybeSanitize(content);\n return;\n }\n templateElement.textContent = content;\n }\n _maybeSanitize(arg) {\n return this._config.sanitize ? sanitizeHtml(arg, this._config.allowList, this._config.sanitizeFn) : arg;\n }\n _resolvePossibleFunction(arg) {\n return execute(arg, [this]);\n }\n _putElementInTemplate(element, templateElement) {\n if (this._config.html) {\n templateElement.innerHTML = '';\n templateElement.append(element);\n return;\n }\n templateElement.textContent = element.textContent;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$4 = 'tooltip';\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn']);\nconst CLASS_NAME_FADE$2 = 'fade';\nconst CLASS_NAME_MODAL = 'modal';\nconst CLASS_NAME_SHOW$2 = 'show';\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner';\nconst SELECTOR_MODAL = `.${CLASS_NAME_MODAL}`;\nconst EVENT_MODAL_HIDE = 'hide.bs.modal';\nconst TRIGGER_HOVER = 'hover';\nconst TRIGGER_FOCUS = 'focus';\nconst TRIGGER_CLICK = 'click';\nconst TRIGGER_MANUAL = 'manual';\nconst EVENT_HIDE$2 = 'hide';\nconst EVENT_HIDDEN$2 = 'hidden';\nconst EVENT_SHOW$2 = 'show';\nconst EVENT_SHOWN$2 = 'shown';\nconst EVENT_INSERTED = 'inserted';\nconst EVENT_CLICK$1 = 'click';\nconst EVENT_FOCUSIN$1 = 'focusin';\nconst EVENT_FOCUSOUT$1 = 'focusout';\nconst EVENT_MOUSEENTER = 'mouseenter';\nconst EVENT_MOUSELEAVE = 'mouseleave';\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n};\nconst Default$3 = {\n allowList: DefaultAllowlist,\n animation: true,\n boundary: 'clippingParents',\n container: false,\n customClass: '',\n delay: 0,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n html: false,\n offset: [0, 6],\n placement: 'top',\n popperConfig: null,\n sanitize: true,\n sanitizeFn: null,\n selector: false,\n template: '
' + '
' + '
' + '
',\n title: '',\n trigger: 'hover focus'\n};\nconst DefaultType$3 = {\n allowList: 'object',\n animation: 'boolean',\n boundary: '(string|element)',\n container: '(string|element|boolean)',\n customClass: '(string|function)',\n delay: '(number|object)',\n fallbackPlacements: 'array',\n html: 'boolean',\n offset: '(array|string|function)',\n placement: '(string|function)',\n popperConfig: '(null|object|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n selector: '(string|boolean)',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string'\n};\n\n/**\n * Class definition\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)');\n }\n super(element, config);\n\n // Private\n this._isEnabled = true;\n this._timeout = 0;\n this._isHovered = null;\n this._activeTrigger = {};\n this._popper = null;\n this._templateFactory = null;\n this._newContent = null;\n\n // Protected\n this.tip = null;\n this._setListeners();\n if (!this._config.selector) {\n this._fixTitle();\n }\n }\n\n // Getters\n static get Default() {\n return Default$3;\n }\n static get DefaultType() {\n return DefaultType$3;\n }\n static get NAME() {\n return NAME$4;\n }\n\n // Public\n enable() {\n this._isEnabled = true;\n }\n disable() {\n this._isEnabled = false;\n }\n toggleEnabled() {\n this._isEnabled = !this._isEnabled;\n }\n toggle() {\n if (!this._isEnabled) {\n return;\n }\n this._activeTrigger.click = !this._activeTrigger.click;\n if (this._isShown()) {\n this._leave();\n return;\n }\n this._enter();\n }\n dispose() {\n clearTimeout(this._timeout);\n EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);\n if (this._element.getAttribute('data-bs-original-title')) {\n this._element.setAttribute('title', this._element.getAttribute('data-bs-original-title'));\n }\n this._disposePopper();\n super.dispose();\n }\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements');\n }\n if (!(this._isWithContent() && this._isEnabled)) {\n return;\n }\n const showEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOW$2));\n const shadowRoot = findShadowRoot(this._element);\n const isInTheDom = (shadowRoot || this._element.ownerDocument.documentElement).contains(this._element);\n if (showEvent.defaultPrevented || !isInTheDom) {\n return;\n }\n\n // TODO: v6 remove this or make it optional\n this._disposePopper();\n const tip = this._getTipElement();\n this._element.setAttribute('aria-describedby', tip.getAttribute('id'));\n const {\n container\n } = this._config;\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.append(tip);\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_INSERTED));\n }\n this._popper = this._createPopper(tip);\n tip.classList.add(CLASS_NAME_SHOW$2);\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.on(element, 'mouseover', noop);\n }\n }\n const complete = () => {\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOWN$2));\n if (this._isHovered === false) {\n this._leave();\n }\n this._isHovered = false;\n };\n this._queueCallback(complete, this.tip, this._isAnimated());\n }\n hide() {\n if (!this._isShown()) {\n return;\n }\n const hideEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDE$2));\n if (hideEvent.defaultPrevented) {\n return;\n }\n const tip = this._getTipElement();\n tip.classList.remove(CLASS_NAME_SHOW$2);\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.off(element, 'mouseover', noop);\n }\n }\n this._activeTrigger[TRIGGER_CLICK] = false;\n this._activeTrigger[TRIGGER_FOCUS] = false;\n this._activeTrigger[TRIGGER_HOVER] = false;\n this._isHovered = null; // it is a trick to support manual triggering\n\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return;\n }\n if (!this._isHovered) {\n this._disposePopper();\n }\n this._element.removeAttribute('aria-describedby');\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDDEN$2));\n };\n this._queueCallback(complete, this.tip, this._isAnimated());\n }\n update() {\n if (this._popper) {\n this._popper.update();\n }\n }\n\n // Protected\n _isWithContent() {\n return Boolean(this._getTitle());\n }\n _getTipElement() {\n if (!this.tip) {\n this.tip = this._createTipElement(this._newContent || this._getContentForTemplate());\n }\n return this.tip;\n }\n _createTipElement(content) {\n const tip = this._getTemplateFactory(content).toHtml();\n\n // TODO: remove this check in v6\n if (!tip) {\n return null;\n }\n tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2);\n // TODO: v6 the following can be achieved with CSS only\n tip.classList.add(`bs-${this.constructor.NAME}-auto`);\n const tipId = getUID(this.constructor.NAME).toString();\n tip.setAttribute('id', tipId);\n if (this._isAnimated()) {\n tip.classList.add(CLASS_NAME_FADE$2);\n }\n return tip;\n }\n setContent(content) {\n this._newContent = content;\n if (this._isShown()) {\n this._disposePopper();\n this.show();\n }\n }\n _getTemplateFactory(content) {\n if (this._templateFactory) {\n this._templateFactory.changeContent(content);\n } else {\n this._templateFactory = new TemplateFactory({\n ...this._config,\n // the `content` var has to be after `this._config`\n // to override config.content in case of popover\n content,\n extraClass: this._resolvePossibleFunction(this._config.customClass)\n });\n }\n return this._templateFactory;\n }\n _getContentForTemplate() {\n return {\n [SELECTOR_TOOLTIP_INNER]: this._getTitle()\n };\n }\n _getTitle() {\n return this._resolvePossibleFunction(this._config.title) || this._element.getAttribute('data-bs-original-title');\n }\n\n // Private\n _initializeOnDelegatedTarget(event) {\n return this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig());\n }\n _isAnimated() {\n return this._config.animation || this.tip && this.tip.classList.contains(CLASS_NAME_FADE$2);\n }\n _isShown() {\n return this.tip && this.tip.classList.contains(CLASS_NAME_SHOW$2);\n }\n _createPopper(tip) {\n const placement = execute(this._config.placement, [this, tip, this._element]);\n const attachment = AttachmentMap[placement.toUpperCase()];\n return Popper.createPopper(this._element, tip, this._getPopperConfig(attachment));\n }\n _getOffset() {\n const {\n offset\n } = this._config;\n if (typeof offset === 'string') {\n return offset.split(',').map(value => Number.parseInt(value, 10));\n }\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element);\n }\n return offset;\n }\n _resolvePossibleFunction(arg) {\n return execute(arg, [this._element]);\n }\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [{\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n }, {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }, {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n }, {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n }, {\n name: 'preSetPlacement',\n enabled: true,\n phase: 'beforeMain',\n fn: data => {\n // Pre-set Popper's placement attribute in order to read the arrow sizes properly.\n // Otherwise, Popper mixes up the width and height dimensions since the initial arrow style is for top placement\n this._getTipElement().setAttribute('data-popper-placement', data.state.placement);\n }\n }]\n };\n return {\n ...defaultBsPopperConfig,\n ...execute(this._config.popperConfig, [defaultBsPopperConfig])\n };\n }\n _setListeners() {\n const triggers = this._config.trigger.split(' ');\n for (const trigger of triggers) {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.eventName(EVENT_CLICK$1), this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context.toggle();\n });\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSEENTER) : this.constructor.eventName(EVENT_FOCUSIN$1);\n const eventOut = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSELEAVE) : this.constructor.eventName(EVENT_FOCUSOUT$1);\n EventHandler.on(this._element, eventIn, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true;\n context._enter();\n });\n EventHandler.on(this._element, eventOut, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = context._element.contains(event.relatedTarget);\n context._leave();\n });\n }\n }\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide();\n }\n };\n EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);\n }\n _fixTitle() {\n const title = this._element.getAttribute('title');\n if (!title) {\n return;\n }\n if (!this._element.getAttribute('aria-label') && !this._element.textContent.trim()) {\n this._element.setAttribute('aria-label', title);\n }\n this._element.setAttribute('data-bs-original-title', title); // DO NOT USE IT. Is only for backwards compatibility\n this._element.removeAttribute('title');\n }\n _enter() {\n if (this._isShown() || this._isHovered) {\n this._isHovered = true;\n return;\n }\n this._isHovered = true;\n this._setTimeout(() => {\n if (this._isHovered) {\n this.show();\n }\n }, this._config.delay.show);\n }\n _leave() {\n if (this._isWithActiveTrigger()) {\n return;\n }\n this._isHovered = false;\n this._setTimeout(() => {\n if (!this._isHovered) {\n this.hide();\n }\n }, this._config.delay.hide);\n }\n _setTimeout(handler, timeout) {\n clearTimeout(this._timeout);\n this._timeout = setTimeout(handler, timeout);\n }\n _isWithActiveTrigger() {\n return Object.values(this._activeTrigger).includes(true);\n }\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element);\n for (const dataAttribute of Object.keys(dataAttributes)) {\n if (DISALLOWED_ATTRIBUTES.has(dataAttribute)) {\n delete dataAttributes[dataAttribute];\n }\n }\n config = {\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n };\n config = this._mergeConfigObj(config);\n config = this._configAfterMerge(config);\n this._typeCheckConfig(config);\n return config;\n }\n _configAfterMerge(config) {\n config.container = config.container === false ? document.body : getElement(config.container);\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n };\n }\n if (typeof config.title === 'number') {\n config.title = config.title.toString();\n }\n if (typeof config.content === 'number') {\n config.content = config.content.toString();\n }\n return config;\n }\n _getDelegateConfig() {\n const config = {};\n for (const [key, value] of Object.entries(this._config)) {\n if (this.constructor.Default[key] !== value) {\n config[key] = value;\n }\n }\n config.selector = false;\n config.trigger = 'manual';\n\n // In the future can be replaced with:\n // const keysWithDifferentValues = Object.entries(this._config).filter(entry => this.constructor.Default[entry[0]] !== this._config[entry[0]])\n // `Object.fromEntries(keysWithDifferentValues)`\n return config;\n }\n _disposePopper() {\n if (this._popper) {\n this._popper.destroy();\n this._popper = null;\n }\n if (this.tip) {\n this.tip.remove();\n this.tip = null;\n }\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n });\n }\n}\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Tooltip);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$3 = 'popover';\nconst SELECTOR_TITLE = '.popover-header';\nconst SELECTOR_CONTENT = '.popover-body';\nconst Default$2 = {\n ...Tooltip.Default,\n content: '',\n offset: [0, 8],\n placement: 'right',\n template: '
' + '
' + '

' + '
' + '
',\n trigger: 'click'\n};\nconst DefaultType$2 = {\n ...Tooltip.DefaultType,\n content: '(null|string|element|function)'\n};\n\n/**\n * Class definition\n */\n\nclass Popover extends Tooltip {\n // Getters\n static get Default() {\n return Default$2;\n }\n static get DefaultType() {\n return DefaultType$2;\n }\n static get NAME() {\n return NAME$3;\n }\n\n // Overrides\n _isWithContent() {\n return this._getTitle() || this._getContent();\n }\n\n // Private\n _getContentForTemplate() {\n return {\n [SELECTOR_TITLE]: this._getTitle(),\n [SELECTOR_CONTENT]: this._getContent()\n };\n }\n _getContent() {\n return this._resolvePossibleFunction(this._config.content);\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n });\n }\n}\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Popover);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$2 = 'scrollspy';\nconst DATA_KEY$2 = 'bs.scrollspy';\nconst EVENT_KEY$2 = `.${DATA_KEY$2}`;\nconst DATA_API_KEY = '.data-api';\nconst EVENT_ACTIVATE = `activate${EVENT_KEY$2}`;\nconst EVENT_CLICK = `click${EVENT_KEY$2}`;\nconst EVENT_LOAD_DATA_API$1 = `load${EVENT_KEY$2}${DATA_API_KEY}`;\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item';\nconst CLASS_NAME_ACTIVE$1 = 'active';\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]';\nconst SELECTOR_TARGET_LINKS = '[href]';\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';\nconst SELECTOR_NAV_LINKS = '.nav-link';\nconst SELECTOR_NAV_ITEMS = '.nav-item';\nconst SELECTOR_LIST_ITEMS = '.list-group-item';\nconst SELECTOR_LINK_ITEMS = `${SELECTOR_NAV_LINKS}, ${SELECTOR_NAV_ITEMS} > ${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`;\nconst SELECTOR_DROPDOWN = '.dropdown';\nconst SELECTOR_DROPDOWN_TOGGLE$1 = '.dropdown-toggle';\nconst Default$1 = {\n offset: null,\n // TODO: v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: '0px 0px -25%',\n smoothScroll: false,\n target: null,\n threshold: [0.1, 0.5, 1]\n};\nconst DefaultType$1 = {\n offset: '(number|null)',\n // TODO v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: 'string',\n smoothScroll: 'boolean',\n target: 'element',\n threshold: 'array'\n};\n\n/**\n * Class definition\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n\n // this._element is the observablesContainer and config.target the menu links wrapper\n this._targetLinks = new Map();\n this._observableSections = new Map();\n this._rootElement = getComputedStyle(this._element).overflowY === 'visible' ? null : this._element;\n this._activeTarget = null;\n this._observer = null;\n this._previousScrollData = {\n visibleEntryTop: 0,\n parentScrollTop: 0\n };\n this.refresh(); // initialize\n }\n\n // Getters\n static get Default() {\n return Default$1;\n }\n static get DefaultType() {\n return DefaultType$1;\n }\n static get NAME() {\n return NAME$2;\n }\n\n // Public\n refresh() {\n this._initializeTargetsAndObservables();\n this._maybeEnableSmoothScroll();\n if (this._observer) {\n this._observer.disconnect();\n } else {\n this._observer = this._getNewObserver();\n }\n for (const section of this._observableSections.values()) {\n this._observer.observe(section);\n }\n }\n dispose() {\n this._observer.disconnect();\n super.dispose();\n }\n\n // Private\n _configAfterMerge(config) {\n // TODO: on v6 target should be given explicitly & remove the {target: 'ss-target'} case\n config.target = getElement(config.target) || document.body;\n\n // TODO: v6 Only for backwards compatibility reasons. Use rootMargin only\n config.rootMargin = config.offset ? `${config.offset}px 0px -30%` : config.rootMargin;\n if (typeof config.threshold === 'string') {\n config.threshold = config.threshold.split(',').map(value => Number.parseFloat(value));\n }\n return config;\n }\n _maybeEnableSmoothScroll() {\n if (!this._config.smoothScroll) {\n return;\n }\n\n // unregister any previous listeners\n EventHandler.off(this._config.target, EVENT_CLICK);\n EventHandler.on(this._config.target, EVENT_CLICK, SELECTOR_TARGET_LINKS, event => {\n const observableSection = this._observableSections.get(event.target.hash);\n if (observableSection) {\n event.preventDefault();\n const root = this._rootElement || window;\n const height = observableSection.offsetTop - this._element.offsetTop;\n if (root.scrollTo) {\n root.scrollTo({\n top: height,\n behavior: 'smooth'\n });\n return;\n }\n\n // Chrome 60 doesn't support `scrollTo`\n root.scrollTop = height;\n }\n });\n }\n _getNewObserver() {\n const options = {\n root: this._rootElement,\n threshold: this._config.threshold,\n rootMargin: this._config.rootMargin\n };\n return new IntersectionObserver(entries => this._observerCallback(entries), options);\n }\n\n // The logic of selection\n _observerCallback(entries) {\n const targetElement = entry => this._targetLinks.get(`#${entry.target.id}`);\n const activate = entry => {\n this._previousScrollData.visibleEntryTop = entry.target.offsetTop;\n this._process(targetElement(entry));\n };\n const parentScrollTop = (this._rootElement || document.documentElement).scrollTop;\n const userScrollsDown = parentScrollTop >= this._previousScrollData.parentScrollTop;\n this._previousScrollData.parentScrollTop = parentScrollTop;\n for (const entry of entries) {\n if (!entry.isIntersecting) {\n this._activeTarget = null;\n this._clearActiveClass(targetElement(entry));\n continue;\n }\n const entryIsLowerThanPrevious = entry.target.offsetTop >= this._previousScrollData.visibleEntryTop;\n // if we are scrolling down, pick the bigger offsetTop\n if (userScrollsDown && entryIsLowerThanPrevious) {\n activate(entry);\n // if parent isn't scrolled, let's keep the first visible item, breaking the iteration\n if (!parentScrollTop) {\n return;\n }\n continue;\n }\n\n // if we are scrolling up, pick the smallest offsetTop\n if (!userScrollsDown && !entryIsLowerThanPrevious) {\n activate(entry);\n }\n }\n }\n _initializeTargetsAndObservables() {\n this._targetLinks = new Map();\n this._observableSections = new Map();\n const targetLinks = SelectorEngine.find(SELECTOR_TARGET_LINKS, this._config.target);\n for (const anchor of targetLinks) {\n // ensure that the anchor has an id and is not disabled\n if (!anchor.hash || isDisabled(anchor)) {\n continue;\n }\n const observableSection = SelectorEngine.findOne(decodeURI(anchor.hash), this._element);\n\n // ensure that the observableSection exists & is visible\n if (isVisible(observableSection)) {\n this._targetLinks.set(decodeURI(anchor.hash), anchor);\n this._observableSections.set(anchor.hash, observableSection);\n }\n }\n }\n _process(target) {\n if (this._activeTarget === target) {\n return;\n }\n this._clearActiveClass(this._config.target);\n this._activeTarget = target;\n target.classList.add(CLASS_NAME_ACTIVE$1);\n this._activateParents(target);\n EventHandler.trigger(this._element, EVENT_ACTIVATE, {\n relatedTarget: target\n });\n }\n _activateParents(target) {\n // Activate dropdown parents\n if (target.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE$1, target.closest(SELECTOR_DROPDOWN)).classList.add(CLASS_NAME_ACTIVE$1);\n return;\n }\n for (const listGroup of SelectorEngine.parents(target, SELECTOR_NAV_LIST_GROUP)) {\n // Set triggered links parents as active\n // With both