From 7d101ccf93d08887b6ec61b2364523b0fd74c76d Mon Sep 17 00:00:00 2001 From: etiennedemontalivet Date: Wed, 3 Jan 2024 09:32:13 +0000 Subject: [PATCH] deploy: c5730400f7d48adf74c960ac6b5b2fd38f13e051 --- .buildinfo | 4 + .doctrees/_auto_examples/index.doctree | Bin 0 -> 9314 bytes .../_auto_examples/plot_read_trc.doctree | Bin 0 -> 387021 bytes .../_auto_examples/plot_trc_to_fif.doctree | Bin 0 -> 16610 bytes .../_auto_examples/sg_execution_times.doctree | Bin 0 -> 9525 bytes .../micromed_io.buffer.MicromedBuffer.doctree | Bin 0 -> 56809 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 -> 68345 bytes .../_autosummary/micromed_io.header.doctree | Bin 0 -> 6629 bytes .../micromed_io.in_out.MicromedIO.doctree | Bin 0 -> 39018 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 -> 22729 bytes .../_autosummary/micromed_io.to_mne.doctree | Bin 0 -> 5706 bytes .../micromed_io.trc.MicromedTRC.doctree | Bin 0 -> 56417 bytes .../_autosummary/micromed_io.trc.doctree | Bin 0 -> 5280 bytes .doctrees/api.doctree | Bin 0 -> 4334 bytes .doctrees/environment.pickle | Bin 0 -> 980096 bytes .doctrees/index.doctree | Bin 0 -> 26902 bytes .doctrees/sg_execution_times.doctree | Bin 0 -> 9554 bytes .nojekyll | 0 _auto_examples/index.html | 500 ++++++++++ _auto_examples/plot_read_trc.html | 897 +++++++++++++++++ _auto_examples/plot_trc_to_fif.html | 615 ++++++++++++ _auto_examples/sg_execution_times.html | 481 +++++++++ .../micromed_io.buffer.MicromedBuffer.html | 713 ++++++++++++++ _autosummary/micromed_io.buffer.html | 529 ++++++++++ ...icromed_io.header.ElectrodeReferences.html | 568 +++++++++++ .../micromed_io.header.MicromedHeader.html | 673 +++++++++++++ _autosummary/micromed_io.header.html | 533 ++++++++++ _autosummary/micromed_io.html | 540 ++++++++++ .../micromed_io.in_out.MicromedIO.html | 655 +++++++++++++ _autosummary/micromed_io.in_out.html | 529 ++++++++++ .../micromed_io.tcp.MicromedPacketType.html | 560 +++++++++++ ...romed_io.tcp.decode_tcp_header_packet.html | 556 +++++++++++ ...romed_io.tcp.decode_tcp_marker_packet.html | 557 +++++++++++ ...icromed_io.tcp.decode_tcp_note_packet.html | 557 +++++++++++ .../micromed_io.tcp.encode_marker_packet.html | 558 +++++++++++ .../micromed_io.tcp.encode_note_packet.html | 558 +++++++++++ .../micromed_io.tcp.get_tcp_header.html | 558 +++++++++++ _autosummary/micromed_io.tcp.html | 552 +++++++++++ ...ne.create_mne_from_micromed_recording.html | 581 +++++++++++ _autosummary/micromed_io.to_mne.html | 529 ++++++++++ _autosummary/micromed_io.trc.MicromedTRC.html | 691 +++++++++++++ _autosummary/micromed_io.trc.html | 529 ++++++++++ .../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 -> 118071 bytes _images/sphx_glr_plot_trc_to_fif_thumb.png | Bin 0 -> 50423 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 | 521 ++++++++++ genindex.html | 589 +++++++++++ index.html | 605 ++++++++++++ objects.inv | Bin 0 -> 2001 bytes py-modindex.html | 453 +++++++++ search.html | 432 ++++++++ searchindex.js | 1 + sg_execution_times.html | 481 +++++++++ 145 files changed, 22324 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..7f98005 --- /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: cbb4422980041bcc580999dc49b63597 +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..90999b77220229f04cce4b9b5278028a89399737 GIT binary patch literal 387021 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 literal 0 HcmV?d00001 diff --git a/.doctrees/_auto_examples/plot_trc_to_fif.doctree b/.doctrees/_auto_examples/plot_trc_to_fif.doctree new file mode 100644 index 0000000000000000000000000000000000000000..9281f9ce654ea651af8544b7c02abe29495ddd29 GIT binary patch literal 16610 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 HI6wV2yFaW7 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..c6bc3b1a0a72bc58102845dddc97f5c0bfe9a9bf GIT binary patch literal 9525 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 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..b5fd8780a97720b1ad7c61291b9af2652df50315 GIT binary patch literal 56809 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 z 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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..33fdea3868a377986dd7dfcb511222a7abdeaabc GIT binary patch literal 68345 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%0DynC{m~8+B$<{Sa1?Xnr%@ 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

ryX~3rW0(%noI$xS@z8agvW<)j6(T=mtAoX z{5jz+R8r!xBo=>JC>~#G!jy$gkEU(YUtoOz`e!V^QHRdPV7CT95!^ed?wR!k z&S__Z)n@Zl2e%;^<#Yo0g;a!L$_8-wu)bS>nk?o0O|u>@Dc=RSdZ&1m+*Q31BiBG9=3Q%RNay)jB1Z1s*Q!cGWnYm@_}z% z9|?YIT9&v1V;oRO#cAUKneZY#Y(-M%ae={W&Gn-EQSigtJGTKGT80b20=IgQ0KCJ9 oNfO0tqhc1rwRW>oZ&xvA77_R3RkPy2Cgu(Jup}TQT8oMVO7V=u1406%fP@er0nflY5)v2j2axy!@SW=JnV#|ZvJWJd#-6G= zbvfsJ=jt~r-~a1lQ}#zMC$aFuqiyDSVdU||=s7QP(;g3%dDlGiE%U%^>bhiyNt8;L z8$AUISNMS^d1ziWdWp!DA0*rP{#wFa9P3rvB=V05dx>4MQ$>4kLN6Q!u#YM{F z;(5c{jD9Rz+?uc^s!e5BDxMWvL$;gZ7K96p)u9X4kt`Oa=joST%yr!Oywz_bJAVFd z6e{M2Nh5*G8bF^b{g|-Rh}sP$_~31g3>S8~AM?iT3?b|PkCSs)fw|9SI?b44r;3+k zaR;h*F0T5LTz4|ow&VUT0RnmoJH%&+WMCDy_AeDOx6-b;QE$XjMMYoV*l5Huayh{4 zHCp{fnD*j6j&5vh6jD2rCgUIXyp*&~XIj^fdckfIGx7;@vE&Jt_qicie6e_=xG5mJ z{fd2SRi-WJyJc9^?&cWBt$YAQtybjqCq8sWMu!s@D&%ud?h&6Uo}*vbh0RB;?(V$_8fomE zbO75E=1K$4VlULw zao^}_+}{FAhL__H3G;W*#%~dSPZxg`&xUmv{lq!J&>$Zn(jG#G5r5J(j1;1R(KB?l zzKk(HiUZ&Em3e5F519zu+UZR-naAovUCy6I1!#ajv zBNV*94#7r+U!Emg(f~q~_!s;lg^*vINBka$eg@y7k%`>#HH}D~&K6#@17$qq@$8U<; zy4NmEO<7;@`;$}adTDg~&^vS=r+qg4os=qVia(z38@eCD8D|Mm7w$p)rELD)k7D1& zJ%IR|_`CQ=Q~XnJOt9!N21z9!j4^kwoFk3gp1YqU$y<}|u3TUXth&2s>CS-E)j|v> zqxrg?yf`q`?hEvwQ=u@yTE#c>_uqY__g~16&L;X1tPT0W=|p;#k`RNU3qbe|s2`34 zR9`D)Ta6$JJ6W>B#uJ7bIy2VilkwsxX$Z22# zm{*dQOY8H}+XX*#gVf_~KgdhNPn;8ZC&oOzecrADP+7WY_((n4>}qKKZPV<&WB+nJ z*JDQ>kCDiI;lKFNvz;JnAt2XWW{X37okv4rSkppq-8Tq$*Sp_12SvG@yI;5DW1=2H zVN>i469m-lTUn8Yv?edDhpVNsnH2>$X>uN#oXJcF_j2+SaGcc@|vU7)TD0bf%T^QS}SBM9o zED;bNB?z#xGUTtjW7rmmtaY=ccm#P@(wIFTbG zs(OiBl{1{u(>{Q;=%EMU48RA$+6f=HlOcnTZR%w^V_{9|A5O&yPrb-Nw*gcu$m>yo zI^~@fC9ZPr`-z`{bJ_9ygi2p9lE1Q67zGS$0n8*Y18ZS8bTKD$3P-5d=^HLVPs3Uv z59u@yD!&ZJ165^1Ky;NX3&?@z7r=iH6~~J!PwS?E^sRDBgp5lx?!`cogi{q7Gv~HSD-`aLh+fsLCRKy*nNOrz_INo z+a_`D2abWB$o0cEFi<##HF6b6+8U$tdj#GfVwp8k)AzstGrbn~V8VSoL2#6F$NHKJ zsso3kgbWZ5*%S zQGk|$XNB`dXeGz3*G6Wub~2`MT6-{{^p-l&n6J@f_PzT<*m(B`_?757O;epqM0Vjg z5gTav+I57oJ@j9zdBs||@Ii(!=ne0&B8C;w3jO2+Rk3+Uadd4OarAxfWu|(uj5;fZ zMU?MZ5QJ#58FDTKT_*4H3|WMo1xkA@wEIR#uZ~R)sOuwS_2O20(%Q)Rh!av#V7fMb zR=$G34A5aNq$)rY{es 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..59d44afcd1b57ad7f04cb3fe281680c93fb8179f GIT binary patch literal 39018 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 CbTeE4 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 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 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 zcmd5@>yO-472jmvlYQo~t!NS^(573pyGzqjm2K2QLn=X(p`fZ1)XMSLcjwyi*sdSR zE+x<+HFV)3foeeNA3%`+sesC>f>wNNE5SD;L?84c>F-PKoVfm{`|4E-|f#KMl?tGk2@X05lWj-y&10%3l z?v_|+8=B{|nf|z9IIDr?MkEW-u}9b@%^{N*NhO|*;(1NDDrONxd{Im*ooVw?F_Fx+ zA;v7jW>F(-s-mU_foC+s09KM!qlWI21(TYk`aT-*ecV>t@wX{GbhC@5s-5@P2FZkC zGEiG|E8_F~CO*Rt^HF|8Ji5kV#+nz}HuKglI^OxU)U*}DDSXFN{k3?CYl<2Mjvuz$ zs<+hD81%-*ocN5r^c>ufXUyV$M#gD{34gU>#U-&^o|D}HYy!{8gwkmf9l zF;_LbNZinN^w47W)zi79J{3#xot5qze4-IVYRGTrE19(oeiS~%DotYv)Rw2ZJU20M z@NBZE^+!%UT#ps6#tXYtax+;|4Ds>Uq45xEsd+S``{DO5RQG$%v^7N9s=KvLO93a@ zt-7<(;}f`kPinKYc2aZN1!(YbanrG5b=Pw=h8WW8&8@l}w%sl0tsgsA1pdFL)V&U<}p1SkWQztH^pVHDN zv*ARm`nvA~Z|f)ST|b$_xJB2P64L#t|nHoX!+X&ci z0TbVeD`{E^OOqOEYe&Hs^9rbRHXVJd??gvE=VIR*<5U59`|t4>xINPq9Z6N$MA6L8?3YP#pR|mCd8*ZWZ%N!(ra#J3)NAD_ z3Z+htD)zctk(h9|R$yMl@|BSs`#Y@6E7%s4FU17rj?58>!-HycgxwLzwN=B8_#0vp zSHYHxBt1&wiha0do33SOMi4zGZ(meBJK9F++**%IVRkx{#HIIxWhN;O8I0&p$5ud3k{2`{s^9Z5Wt43X*B= z_)R*zc?gwLW{X#Qn~F)IpeRcc<_AcF+?@B@OD^-*ho=bh2Iv^%Uy)`B{-=B*FmFb` z>bZcw#oy-dH2Av%;a#+o7VR3q+dMGDBMHLId&v8818pu;=mMOZvr=wA#NAp3_1HC? ztxk&d%JLnsn-9^nOM~V*z`J>BN8Y^RsQ*;I9Ybz6HxTnVxn9H@`xxzdg)W44Rmxpk zw7)>pzOK>!{T+GpilhB>2krfy{d%$9PpTK`za_U9k=|*-3!;8Xayb9}z(uQu^H+zs zwG8KPqTg-(*{8tsa5XxVcasyC)$LSrsK1d7u&N^k) z{hwsOb&dD;cjVVAj`vS=<2_e|O3|K^>Baiu-X5%XnwG@=1P3`4IixR9-_qr(hV%o_ zv6~%y9sPEL^beIFJ#XQ)!uk9VU!*ucL4J>MK2xC!;e1-k4Z!(r9h{RV2EF7=BUcxzc&BMe%oV%mP;CxeqH3sa z4RK;w{SMG?H>f_^jp{Dzt`(xSA$~{^eVKe7Bl=v0E`;bOq}%{RAF1%}eMtg# zn&M87%fFIX^!$!2s)VS)LO+OK>z50OF*-YlaB_>cG~a~ubKNCK9Lk*=)h)+v#b*?1 zcZ#}<-e2qPofqN?KS#qn4Z-9vnmj}2vtJeSxlxn=Z?n@w{mxMY;DGkPWBFtGVW)I6 zhOJql&Nd7yIbZ(hpqJ$3FR4Z4e#N(6;;yRW%&>0Ya6CV{q%Y0pmcSlzkQrhAr+O;-F>cn z6v6DJ!wm^e{$+lN@NhK_i|@Lp-(fL-CY`ESp~K&^2^->JdF1;DPKUC#bR$G(MhQjY z>uK-AP*J>I-qmShdK_sU9Hlkim5%g8GS%^7abi0;JIJ0hdY#j|6X})d-HqG>ySjEG zohCeI^s311NbaM)rNLQkM{=+9YlZW~u9Je(=(n34NzZde9}5Wv|IagmKH*PCfacvp zd_nWVQJML9@_W21xwAqS+Lf$IxdFS9L#ZG7AZtmK+|BY-i>6c>3i-O58Zna@q3_6u z^6dku#(|u9dj);iizIj~*VnxrF&FzNHeW-E?zjCgXZuL!J<(?eV#Z#Di?DXUKxgHn<9>Yo2A;NHyP+JsakWnEqv4{|(o&Mw;*ATf_Xj{QD0n1&^mi z@r7#Eb`{0U;A|O|`N`~LA0)sPuqVJoNO*eLt(1eOrqn%J{~ES)qj4m1qE>+fI4HR! zj7NTlI2d@U?OQ4pe+A667Pw+D<8eH20&p(QjEGt)!*pDRG~OODr-dHzDU}X;awctw zS(IYRXF&j72WX;;phm>J&kfJ91ModSws@2%K7MD9DJGmSaKj*K@OiKpS`5rcHE=wl zH0UaLm;u;9xY!pDs9==yxU40Yp=aT07Q0i0_?L7S#I={i{td?o}*YN_yViy=3 zw^!7-YIQEh#Uk4@;IBXpLO&H67vnl>hAj*?M^q2u!9Xul+i01F<26R}1{q||u;Cp= zZXqEBDoGe@tlYce8~A>>cvE4X=XeSSlgeTsa!$}xH4sAPV;|?Vj7u$%IMQ{eONIF^ z0$t3-db2sCy$=^}bafUBWCNni=WvlFS&6fjYPUkQ#o%!r1em>G2#W(A_-&r9V2g?v z!7xNfZHNiYu{U5QJYwjGQanj)Mtnld(esLuHHp0j0&7+Wr&8$z9~>(i48)yht9a0A zhqYjS-S>W%{TB%~HV#c_P5>ix zz!)DekO+g)*+fi9pN7N|eZwH&Xi5|^o3!az@_pEfW2xdxgy-bW!98HZMG{q5(gK?~3;bXkP%hHAPcnBWfwj`uWmU)r~wh=v!X4o5ufiyAfr&QsG z%`Q2kO~Gq9Dsk6nW|WT*GwmkR0pTr7fisY>w#6Y0Qs)&0)|aJ#J5MQAPJ1z7zavN z4$J(cnijCMT7jAFgUA*=M@97b81_$Bk(C{a*?hc72h4(N7neUcC2pa#lFG%N&bJU2 zWGmvc-2`d5AbPN?u_HZQ5Sva%m74Y!^rJ#}0hOdf-MW%HD9K2AniEn=18Wekk1WIn zq5!pa@>J6PJXY@6=yL!tX!l43_+JGdAsY|a$$f?9eVt|*b^DSRH;D2U{lkMKCZi~0 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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 Q-lD3%!Y|MY-fcGi7ndE2#{d8T 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..f3144ab306b4beb5ffd78db8e0fe41b6eaaefba2 GIT binary patch literal 5706 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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..d6b1818110c625f8a01e8f1a3b9473b7c70cabdc GIT binary patch literal 980096 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

724#CmddYy7*B3o6qLGsKhx2E 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

oj5` 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 PdL`CZ5#sRAcU1omUuot8 literal 0 HcmV?d00001 diff --git a/.doctrees/sg_execution_times.doctree b/.doctrees/sg_execution_times.doctree new file mode 100644 index 0000000000000000000000000000000000000000..71c7d130cdbc32984b1fda025ec238d6e136f584 GIT binary patch literal 9554 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 gdA4U4<=bZ+-|`ZhVyR7dxM + + + + + + + + + Examples Gallery — Micromed IO 0.4.1 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..cb28ef2 --- /dev/null +++ b/_auto_examples/plot_read_trc.html @@ -0,0 +1,897 @@ + + + + + + + + + + + Read TRC file data — Micromed IO 0.4.1 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-G2', 'x2-G2', 'x3-G2', 'x4-G2', 'x5-G2', 'x6-G2', 'x7-G2', 'x8-G2', 'x9-G2', 'x10-G2', 'MKR1+-MKR1-', 'MKR2+-MKR2-', 'MKR3+-MKR3-', 'MKR4+-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-G2', 'x2-G2', 'x3-G2', 'x4-G2', 'x5-G2', 'x6-G2', 'x7-G2', 'x8-G2', 'x9-G2', 'x10-G2', 'MKR1+-MKR1-', 'MKR2+-MKR2-', 'MKR3+-MKR3-', 'MKR4+-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.080 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..e8f6b4f --- /dev/null +++ b/_auto_examples/plot_trc_to_fif.html @@ -0,0 +1,615 @@ + + + + + + + + + + + Convert TRC file to mne format — Micromed IO 0.4.1 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. If no trigger received, then data are corrupted.
+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.127 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..a323651 --- /dev/null +++ b/_auto_examples/sg_execution_times.html @@ -0,0 +1,481 @@ + + + + + + + + + + + Computation times — Micromed IO 0.4.1 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+
+
+
+
+ + + +
+
+ +
+ + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

Computation times#

+

00:02.208 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.127

0.0

Read TRC file data (plot_read_trc.py)

00:00.080

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..f8d7cb3 --- /dev/null +++ b/_autosummary/micromed_io.buffer.MicromedBuffer.html @@ -0,0 +1,713 @@ + + + + + + + + + + + micromed_io.buffer.MicromedBuffer — Micromed IO 0.4.1 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, check_data: bool = True) 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.

+
+
check_data: bool, optional

Check if MKR channel(s) is close to 50mV. If not, return False. You can disable +for speed performances.

+
+
+
+
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

+

If a marker is sent through serial port, MKR channel(s) is not close to 50mV. The warning should +then be ignored.

+
+ +
+
+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..ec2e20f --- /dev/null +++ b/_autosummary/micromed_io.buffer.html @@ -0,0 +1,529 @@ + + + + + + + + + + + micromed_io.buffer — Micromed IO 0.4.1 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..7a2e3a8 --- /dev/null +++ b/_autosummary/micromed_io.header.ElectrodeReferences.html @@ -0,0 +1,568 @@ + + + + + + + + + + + micromed_io.header.ElectrodeReferences — Micromed IO 0.4.1 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..82b33a5 --- /dev/null +++ b/_autosummary/micromed_io.header.MicromedHeader.html @@ -0,0 +1,673 @@ + + + + + + + + + + + micromed_io.header.MicromedHeader — Micromed IO 0.4.1 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 in format “<ch name>-<ground>”.

+
+
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 in format “<ch name>-<ground>”.

+
+
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..aa985bf --- /dev/null +++ b/_autosummary/micromed_io.header.html @@ -0,0 +1,533 @@ + + + + + + + + + + + micromed_io.header — Micromed IO 0.4.1 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..737bc47 --- /dev/null +++ b/_autosummary/micromed_io.html @@ -0,0 +1,540 @@ + + + + + + + + + + + micromed_io — Micromed IO 0.4.1 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..2eebf9b --- /dev/null +++ b/_autosummary/micromed_io.in_out.MicromedIO.html @@ -0,0 +1,655 @@ + + + + + + + + + + + micromed_io.in_out.MicromedIO — Micromed IO 0.4.1 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, check_data: bool = True) 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.

+
+
check_data: bool, optional

Check if MKR channel(s) is close to 50mV. If not, return False. You can disable +for speed performances.

+
+
+
+
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

+

If a marker is sent through serial port, MKR channel(s) is not close to 50mV. The warning should +then be ignored.

+
+ +
+
+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..366d31f --- /dev/null +++ b/_autosummary/micromed_io.in_out.html @@ -0,0 +1,529 @@ + + + + + + + + + + + micromed_io.in_out — Micromed IO 0.4.1 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..71856b5 --- /dev/null +++ b/_autosummary/micromed_io.tcp.MicromedPacketType.html @@ -0,0 +1,560 @@ + + + + + + + + + + + micromed_io.tcp.MicromedPacketType — Micromed IO 0.4.1 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..24eaf66 --- /dev/null +++ b/_autosummary/micromed_io.tcp.decode_tcp_header_packet.html @@ -0,0 +1,556 @@ + + + + + + + + + + + micromed_io.tcp.decode_tcp_header_packet — Micromed IO 0.4.1 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..5f2214a --- /dev/null +++ b/_autosummary/micromed_io.tcp.decode_tcp_marker_packet.html @@ -0,0 +1,557 @@ + + + + + + + + + + + micromed_io.tcp.decode_tcp_marker_packet — Micromed IO 0.4.1 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..95bb1cf --- /dev/null +++ b/_autosummary/micromed_io.tcp.decode_tcp_note_packet.html @@ -0,0 +1,557 @@ + + + + + + + + + + + micromed_io.tcp.decode_tcp_note_packet — Micromed IO 0.4.1 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..4ad855c --- /dev/null +++ b/_autosummary/micromed_io.tcp.encode_marker_packet.html @@ -0,0 +1,558 @@ + + + + + + + + + + + micromed_io.tcp.encode_marker_packet — Micromed IO 0.4.1 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..e3dcdd3 --- /dev/null +++ b/_autosummary/micromed_io.tcp.encode_note_packet.html @@ -0,0 +1,558 @@ + + + + + + + + + + + micromed_io.tcp.encode_note_packet — Micromed IO 0.4.1 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..bca8f4e --- /dev/null +++ b/_autosummary/micromed_io.tcp.get_tcp_header.html @@ -0,0 +1,558 @@ + + + + + + + + + + + micromed_io.tcp.get_tcp_header — Micromed IO 0.4.1 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..402b1c0 --- /dev/null +++ b/_autosummary/micromed_io.tcp.html @@ -0,0 +1,552 @@ + + + + + + + + + + + micromed_io.tcp — Micromed IO 0.4.1 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..b198cb5 --- /dev/null +++ b/_autosummary/micromed_io.to_mne.create_mne_from_micromed_recording.html @@ -0,0 +1,581 @@ + + + + + + + + + + + micromed_io.to_mne.create_mne_from_micromed_recording — Micromed IO 0.4.1 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, start_time: float = 0.0, stop_time: float | 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.

+
+
start_timefloat, optional

The start time (in seconds) of the recording data to include in the mne Raw instance. +Defaults to 0.0.

+
+
stop_timefloat, optional

The stop time (in seconds) of the recording data to include in the mne Raw instance. +If None, all data until the end of the recording is included. Defaults to None.

+
+
ch_typesUnion[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", start_time=10.0, stop_time=20.0) 
+
+
+
+ +
+ + +
+ + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ 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..6fc0ce6 --- /dev/null +++ b/_autosummary/micromed_io.to_mne.html @@ -0,0 +1,529 @@ + + + + + + + + + + + micromed_io.to_mne — Micromed IO 0.4.1 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..94f010b --- /dev/null +++ b/_autosummary/micromed_io.trc.MicromedTRC.html @@ -0,0 +1,691 @@ + + + + + + + + + + + micromed_io.trc.MicromedTRC — Micromed IO 0.4.1 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, check_data: bool = True) 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.

+
+
check_data: bool, optional

Check if MKR channel(s) is close to 50mV. If not, return False. You can disable +for speed performances.

+
+
+
+
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

+

If a marker is sent through serial port, MKR channel(s) is not close to 50mV. The warning should +then be ignored.

+
+ +
+
+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, start: int = 0, stop: int | 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.

+
+
startint, optional

The starting index of the data to extract. The default is 0.

+
+
stopint, optional

The ending index of the data to extract. If None, extract until the end of the data. +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 lose 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..8e3156a --- /dev/null +++ b/_autosummary/micromed_io.trc.html @@ -0,0 +1,529 @@ + + + + + + + + + + + micromed_io.trc — Micromed IO 0.4.1 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..bcf87e2c71e388d51202782352ebdf905ee9ab0a GIT binary patch literal 6578 zcmeHMTW=gS6b>z|P@j+}61-WHmyOs=whcTqB8U=@TJ@q;sRU9tnm9AwU6UDmYJ0L- zqJ5~u3$IB00Hi+ipZF(y$DWzpY=TPFDk7ni%dYL?WBXjcY~SYCvI8_3`GSu z2brFzsM`z|!tsndj?v>;+iP`YQkoH%c}4@Z%67Cm6vnZqPj=W)=7KrR3MJT3n}WN6 z8mN212sRNcttmOfW&^DesWzF&*hIQ9SOHs&wBr7A3fEXm>*jliL`Q3t0dKxayY4~^1MC&qEzZ7NR&Fy zd5Nune8_Vv>Y=&Zbmhv*c`fX=%+3<#D!W^`u{K-mJ12#L2s6PRY2|n>4~1i2iqIWr z0&=K(zb=h-S`}R8F$DA#G(t*wC{v-V*ka#&|Lywb`cBRvt_v%fA#8#bwP_?$$1rp< zFFw9XO}IUV~o zcK6?Mlv)$9#6e!;5N{&lyOvFL#jFrrMtp>^Xeh__r}#9I=M>$PNGX0$)M^76H)5b_ zT?8E=l(l+V&>kDSq|5F9}fO60Z_DJ82q_C}esWzMGw`8E2Z{uFUlvCVm`&$${^ zeB?(I&nf@49f;FP6W892S^osU`6KE4 zcKySZ75e+A0XPWq8KInWhBr^J>>S%rVpxPUv?;)r)}LR2XJYn)U_4EQwI0%pF>f{{!0q8`r?5Ng@P6-Ufmx$WFK0+yu7g3sjzJHUf|> zv~>jEhgI$kyT&ds^Tr=2*QQ(%5!>5q@mv_*+q=+-u{2V-PC>eemre$hInE3;bmk~v zgr7Q4RC^5vQ6K42rn2O~A;*{)Q<|Br`>(b#zQs;Pq(HWx=wXtMIRHy;XRP_g22tSs z8FBA;+H~x*sGY4bj#a|O?9hnkvwJ^>s?F2!^m$S#>1Hu8S`&XRi1>_x*oET8Rc3Z_}k100&vH)S z7;X*pVR-6D3&I9}Zi_D}(!HGhg#aXd94f0GLxl}`Aip?{S?GKm`X0|NxR(b#AlfBf zB%Sl}hy`6V7{XT_|4JKS#K*6)b^Gc|6dZAO`@d4YYbDU2lTkOz>=YuZ3(3PG~j^sS8 zs$z-jK-*cHonK5Ns6zOgO39Gv8YGTV6$mY#5bD(Jk0-jVS`Y(<+}rPBa^^ +# +# 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..de430c4b3bd4b998ac0533443654c6af885b3b32 GIT binary patch literal 2455 zcmcgu;c6R45LWHD(EZhx{O=$Ukf?lCS_(x}rHNZeu@giZXu*W@`fg9R(cSKOch8Dy zR7fA7?@-8(K0#lruh5y@yNhBwb)nF+CEf1L&dh%EeX}<|+P!nPN7tR>!A~Fkdh**} zJG~x#KE}DK&@Of+iJgu!nMKvQ-|w^8KVIxms|#TqJbQWwnJff24W$y0X;X4{+iLbm z7y&B*N#lkCCJ-DMk!X{O6jsvZz~Qk>j4p9(*Vc)W0%4Y8a5*h6ORZQ43bjQmsX`ux zmtv*OGGerw0X(Q(uFVv_b5bZwG!^hzE5{3YAsl=q!gQ1hblA*(QyJ~FD!D8ojPx}d zpr2!z2xY|-9{%v{{^$FL1;?-qAKbggScaKG*(4lG9U-KIiYzOQU?oOyCuk-n%eb=) zdzNYuJXGA}g*t~!Z1@U|ZjUtd{zf73 z0er7A#Ff(T3L!02+z_T*A^J|64&I2&+i;Pjfd>F#wy@SUSRuwxaXS>PcelY?cpt%!0(g=LYd!UITrNzI0pcL+7#K;S1)cDsF(vYUYT&vA zP}mLs+gc-A|0B^$f^F832OVDF^D_+#)OD$?qrQ;Ug-4>HIO5XcM{G^FA|p6G?Gzav zpPsVHNacnl1&ppd9kDz$n8l3`n}rPU%KCHUnoMNHQ3;p0Dk3p&_WiA`jUU0=3()aj5yys`Z=^xZ^x7KxK`3_qCOin zZ41?(Ay-iE_>Wuyp>(~-sh5+O$6nEdQK9wH&#rO|LdYo*dIB*GF)k3oxPvYv(Tv*$ zfrSw-o#Bb2P{M|abPbUDw|C~x5p;JMI@|=N-X4V;MG=I_Ct>c%2I~}pVa;RjcKBv< zTM=7vc#{6Bm|?}$sA2X>+{XDpO)DUz6n+Z|L;%R3#v~gd&LtryY(qUBMf9P?M+% zz77Ow+XePU6l}33O-vazkdEZ!mL_nMK^R%zKesur@Jzh)-Np|#cpeQvV~3Ifg%xq1 zLfpq)HarfR)T&sAILP$-*JD*OS=!kN$)=_G$>jO-w^Q&-x6`1Bs7qyj^xn?h-FLqP v(aRBCuV2yk^;e?p^*5aow2H3RuRhsr)^D8|^P|1@>FEys{er){AJFJ;YB(Be literal 0 HcmV?d00001 diff --git a/_downloads/ff1e34b9bce10d357229e1b1a38d147d/plot_read_trc.ipynb b/_downloads/ff1e34b9bce10d357229e1b1a38d147d/plot_read_trc.ipynb new file mode 100644 index 0000000..ceaae17 --- /dev/null +++ b/_downloads/ff1e34b9bce10d357229e1b1a38d147d/plot_read_trc.ipynb @@ -0,0 +1,162 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Read TRC file data\n\nHere we read a trc file recorded with a Micromed system. We access the header, the notes, \nthe markers and the data.\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.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..e4cf8255c82a3ef074a3c2ceafc49975ddd13c5e GIT binary patch literal 118071 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%0A!x#iacLh0|Ejf6FPlx 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 jRFx#z=>`GmmKKq2iKUSSDPigEj_>S$zMWwP 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 R#ya>9uWO`JqJ2L2{{RV09*F<| 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..30a9029 --- /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-G2', 'x2-G2', 'x3-G2', 'x4-G2', 'x5-G2', 'x6-G2', 'x7-G2', 'x8-G2', 'x9-G2', 'x10-G2', 'MKR1+-MKR1-', 'MKR2+-MKR2-', 'MKR3+-MKR3-', 'MKR4+-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-G2', 'x2-G2', 'x3-G2', 'x4-G2', 'x5-G2', 'x6-G2', 'x7-G2', 'x8-G2', 'x9-G2', 'x10-G2', 'MKR1+-MKR1-', 'MKR2+-MKR2-', 'MKR3+-MKR3-', 'MKR4+-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..dbfd93c --- /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. If no trigger received, then data are corrupted. + 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.127 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..cab2103 --- /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.208** 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.127 + - 0.0 + * - :ref:`sphx_glr__auto_examples_plot_read_trc.py` (``plot_read_trc.py``) + - 00:00.080 + - 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..aa27e0a --- /dev/null +++ b/_sources/sg_execution_times.rst.txt @@ -0,0 +1,40 @@ + +:orphan: + +.. _sphx_glr_sg_execution_times: + + +Computation times +================= +**00:02.208** 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.127 + - 0.0 + * - :ref:`sphx_glr__auto_examples_plot_read_trc.py` (``../../examples/plot_read_trc.py``) + - 00:00.080 + - 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 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 + + + 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..0145a7a --- /dev/null +++ b/_static/documentation_options.js @@ -0,0 +1,13 @@ +const DOCUMENTATION_OPTIONS = { + VERSION: '0.4.1', + 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 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 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